 |
RSeries astromech firmware
|
|
Go to the documentation of this file. 1 #ifndef CommandScreenTouchHandler_h
2 #define CommandScreenTouchHandler_h
13 template <
typename COMMAND_DISPLAY>
68 int16_t *x1, int16_t *y1, uint16_t *w, uint16_t *h)
70 fDisplay.getTextBounds(
string, x, y, x1, y1, w, h);
103 fString += String(
"\n") + String(val);
111 fString += String(
"\n") + text;
138 fDisplay.getTextBounds(text, 0, 0, &x1, &y1, &w, &h);
139 fDisplay.setCursor(SCREEN_WIDTH / 2 - w / 2, 0);
150 fNewDialValue = newValue;
158 fButtonPressed = pressed;
159 fButtonRepeat = repeat;
167 fRemoteActive =
true;
178 fRemoteActive =
false;
182 if (currentScr !=
nullptr)
185 if (
fDialValue != fNewDialValue || fButtonID != 0)
198 if (fButtonID == 1 && fButtonPressed)
200 if (fButtonID == 2 && fButtonPressed)
202 if (fButtonID == 3 && fButtonPressed)
204 if (fButtonID == 4 && fButtonPressed)
206 if (fButtonID == 5 && fButtonPressed)
210 if (fButtonID == 1 && !fButtonPressed)
212 if (fButtonID == 2 && !fButtonPressed)
214 if (fButtonID == 3 && !fButtonPressed)
216 if (fButtonID == 4 && !fButtonPressed)
218 if (fButtonID == 5 && !fButtonPressed)
225 if (fButtonID == 1 && fButtonPressed && fButtonRepeat)
229 else if (fButtonID == 2 && fButtonPressed && fButtonRepeat)
233 else if (fButtonID == 3 && fButtonPressed && fButtonRepeat)
237 else if (fButtonID == 4 && fButtonPressed && fButtonRepeat)
241 else if (fButtonID == 5 && fButtonPressed && fButtonRepeat)
250 fButtonPressed =
false;
251 fButtonRepeat =
false;
264 long fNewDialValue = 0;
265 uint8_t fButtonID = 0;
266 bool fRemoteActive =
false;
267 bool fButtonPressed =
false;
268 bool fButtonRepeat =
false;
281 fClearDisplay =
false;
Definition: CommandScreen.h:273
virtual void buttonLeftPressed(bool repeat=false)
Definition: CommandScreen.h:328
void println(String text)
Definition: CommandScreenTouchDisplay.h:108
void clearDisplay()
Definition: CommandScreenTouchDisplay.h:51
void println(unsigned val)
Definition: CommandScreenTouchDisplay.h:100
void switchToScreen(ScreenID id, bool popStack=true)
Definition: CommandScreen.h:175
CommandScreen * current()
Definition: CommandScreen.h:154
void setTextSize(int siz)
Definition: CommandScreenTouchDisplay.h:59
virtual void buttonInReleased()
Definition: CommandScreen.h:336
ScreenID fLastScreenID
Definition: CommandScreenTouchDisplay.h:261
virtual void sleepDevice() override
Definition: CommandScreenTouchDisplay.h:34
void display()
Definition: CommandScreenTouchDisplay.h:116
void drawTextCentered(String text)
Definition: CommandScreenTouchDisplay.h:134
Definition: CommandScreenTouchDisplay.h:14
virtual void wakeDevice() override
Definition: CommandScreenTouchDisplay.h:29
uint32_t fLastKeyEvent
Definition: CommandScreenTouchDisplay.h:260
Definition: CommandScreen.h:147
COMMAND_DISPLAY & fDisplay
Definition: CommandScreenTouchDisplay.h:257
void setEnabled(bool enabled)
Definition: CommandScreen.h:236
void remoteButtonEvent(uint8_t id, bool pressed, bool repeat)
Definition: CommandScreenTouchDisplay.h:154
void resetDisplay()
Definition: CommandScreenTouchDisplay.h:277
virtual void buttonRightPressed(bool repeat=false)
Definition: CommandScreen.h:330
virtual void buttonLeftReleased()
Definition: CommandScreen.h:333
bool fSkipButtonReleased
Definition: CommandScreenTouchDisplay.h:262
ScreenID ID() const
Definition: CommandScreen.h:286
void getTextBounds(const char *string, int16_t x, int16_t y, int16_t *x1, int16_t *y1, uint16_t *w, uint16_t *h)
Definition: CommandScreenTouchDisplay.h:67
CommandScreenTouchDisplay(COMMAND_DISPLAY &display, bool(*init)(void)=nullptr)
Definition: CommandScreenTouchDisplay.h:17
void remoteActive()
Definition: CommandScreenTouchDisplay.h:163
virtual void buttonDial(long newValue, long oldValue=0)
Definition: CommandScreen.h:337
virtual void buttonUpPressed(bool repeat=false)
Definition: CommandScreen.h:327
void setCursor(uint8_t x, uint8_t y)
Definition: CommandScreenTouchDisplay.h:83
bool(* fInitProc)(void)
Definition: CommandScreenTouchDisplay.h:258
bool begin()
Definition: CommandScreenTouchDisplay.h:24
virtual bool handleEvent() override
Definition: CommandScreenTouchDisplay.h:171
void print(String text)
Definition: CommandScreenTouchDisplay.h:92
long fDialValue
Definition: CommandScreenTouchDisplay.h:259
virtual void buttonDownReleased()
Definition: CommandScreen.h:334
virtual void buttonUpReleased()
Definition: CommandScreen.h:332
virtual void buttonRightReleased()
Definition: CommandScreen.h:335
void invertDisplay(bool invert)
Definition: CommandScreenTouchDisplay.h:43
void setTextColor(uint16_t c)
Definition: CommandScreenTouchDisplay.h:78
virtual void buttonInPressed(bool repeat=false)
Definition: CommandScreen.h:331
virtual void buttonDownPressed(bool repeat=false)
Definition: CommandScreen.h:329
void setRotation(uint8_t r)
Definition: CommandScreenTouchDisplay.h:73
void remoteDialEvent(long newValue, long oldValue)
Definition: CommandScreenTouchDisplay.h:147