Merge pull request #461 from eshifri/eshifri/timer
Fix timer edit and time display in logical switch edit
This commit is contained in:
@@ -416,6 +416,12 @@ void drawSensorCustomValue(BitmapBuffer * dc, coord_t x, coord_t y, uint8_t sens
|
||||
}
|
||||
}
|
||||
|
||||
// libopemui defines TIMOUR as zero
|
||||
#if !TIMHOUR
|
||||
#undef TIMEHOUR
|
||||
#define TIMEHOUR 0x2000
|
||||
#endif
|
||||
|
||||
void drawTimer(BitmapBuffer * dc, coord_t x, coord_t y, int32_t tme, LcdFlags flags)
|
||||
{
|
||||
char str[LEN_TIMER_STRING];
|
||||
@@ -437,7 +443,9 @@ void drawSourceCustomValue(BitmapBuffer * dc, coord_t x, coord_t y, source_t sou
|
||||
}
|
||||
else if (source >= MIXSRC_FIRST_TIMER || source == MIXSRC_TX_TIME) {
|
||||
// TODO if (value < 0) flags |= BLINK|INVERS;
|
||||
// TODO drawTimer(dc, x, y, value, flags);
|
||||
if (source == MIXSRC_TX_TIME) flags |= TIMEHOUR;
|
||||
drawTimer(dc, x, y, value, flags);
|
||||
//dc->drawNumber(x, y, lswTimerValue(value), flags | PREC1);
|
||||
}
|
||||
else if (source == MIXSRC_TX_VOLTAGE) {
|
||||
dc->drawNumber(x, y, value, flags|PREC1);
|
||||
|
||||
@@ -144,14 +144,16 @@ class LogicalSwitchEditPage: public Page
|
||||
new StaticText(logicalSwitchOneWindow, grid.getLabelSlot(), STR_V1);
|
||||
auto timer = new NumberEdit(logicalSwitchOneWindow, grid.getFieldSlot(), -128, 122, GET_SET_DEFAULT(cs->v1));
|
||||
timer->setDisplayHandler([](BitmapBuffer * dc, LcdFlags flags, int32_t value) {
|
||||
dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, lswTimerValue(value), flags | PREC1);
|
||||
//dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, lswTimerValue(value), flags | PREC1);
|
||||
drawTimer(dc, FIELD_PADDING_LEFT, FIELD_PADDING_TOP, value, flags);
|
||||
});
|
||||
grid.nextLine();
|
||||
|
||||
new StaticText(logicalSwitchOneWindow, grid.getLabelSlot(), STR_V2);
|
||||
timer = new NumberEdit(logicalSwitchOneWindow, grid.getFieldSlot(), -128, 122, GET_SET_DEFAULT(cs->v2));
|
||||
timer->setDisplayHandler([](BitmapBuffer * dc, LcdFlags flags, int32_t value) {
|
||||
dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, lswTimerValue(value), flags | PREC1);
|
||||
//dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, lswTimerValue(value), flags | PREC1);
|
||||
drawTimer(dc, FIELD_PADDING_LEFT, FIELD_PADDING_TOP, value, flags);
|
||||
});
|
||||
grid.nextLine();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user