7#include "cdc_image/MonoBitmap.h"
31 void init(
const char* title,
const uint8_t* data,
size_t len);
33 void render(
bool partial)
override;
36 const char*
getName()
const override {
return "ImageView"; }
43 enum class Mode : uint8_t { Fit, Actual };
44 static constexpr uint16_t MAX_TITLE_LEN = 64;
45 static constexpr int PAN_STEP = 24;
47 char titleBuf_[MAX_TITLE_LEN];
48 const char* errorKey_ =
nullptr;
51 cdc::image::MonoBitmap fitBmp_;
52 cdc::image::MonoBitmap fullBmp_;
53 Mode mode_ = Mode::Fit;
67ImageView*
showImage(
const char* title,
const uint8_t* data,
size_t len);
Shared RAII wrappers for firmware resources.
Full-screen viewer for a decoded PNG/JPEG, dithered to the e-paper.
static constexpr uint32_t MAX_PIXELS
~1 megapixel cap.
void init(const char *title, const uint8_t *data, size_t len)
Decodes and lays out an image.
const char * getFooterHint() const override
const char * getName() const override
hal::RefreshMode preferredEnterRefresh() const override
Dithered images ghost badly over prior content; demand a clean base.
InputResult onKey(char key) override
std::unique_ptr< T[], CapsFreeDeleter > PsramUniquePtr
Centralized key-code constants for cdc_views.
ImageView * showImage(const char *title, const uint8_t *data, size_t len)
Decodes and shows an image on the view stack.