38 void init(uint8_t r, uint8_t g, uint8_t b);
47 void currentColor(uint8_t& r, uint8_t& g, uint8_t& b)
const;
50 void render(
bool partial)
override;
52 void onTick(uint32_t nowMs)
override;
53 const char*
getName()
const override {
return "ColorPickerView"; }
64 uint32_t repeatStartMs_ = 0;
65 uint32_t lastRepeatMs_ = 0;
67 void barycentric(int16_t px, int16_t py,
68 int32_t& aR, int32_t& aG, int32_t& aB)
const;
69 void clampInsideTriangle();
70 void setFromRGB(uint8_t r, uint8_t g, uint8_t b);
71 void moveCursor(int16_t dx, int16_t dy);
72 void adjustValue(int8_t delta);
73 void rawColor(uint8_t& r, uint8_t& g, uint8_t& b)
const;
74 void drawDitheredBox(Gdey029T94* gfx, int16_t x, int16_t y, int16_t w, int16_t h,
75 uint8_t luminance)
const;
76 void drawTriangle(Gdey029T94* gfx, int16_t ox, int16_t oy)
const;