cleanup of all number edit display handlers.
This commit is contained in:
committed by
Raphael Coeffic
parent
702a89d952
commit
751d1a0887
@@ -122,24 +122,16 @@ class LogicalSwitchEditPage: public Page
|
||||
edit2->invalidate();
|
||||
});
|
||||
edit1->setDisplayHandler([](int32_t value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, lswTimerValue(value), PREC1);
|
||||
return std::string(s);
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, lswTimerValue(value), flags | PREC1);
|
||||
return formatNumberAsString(lswTimerValue(value), PREC1);
|
||||
});
|
||||
edit2->setDisplayHandler([cs](int32_t value) {
|
||||
if (value < 0)
|
||||
return std::string("<<");
|
||||
//dc->drawText(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, "<<", flags);
|
||||
else if (value == 0)
|
||||
return std::string("--");
|
||||
// dc->drawText(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, "--", flags);
|
||||
else {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, lswTimerValue(value), PREC1);
|
||||
return std::string(s);
|
||||
return formatNumberAsString(lswTimerValue(cs->v2 + value), PREC1);
|
||||
}
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, lswTimerValue(cs->v2 + value), flags | PREC1);
|
||||
});
|
||||
grid.nextLine();
|
||||
}
|
||||
@@ -167,7 +159,6 @@ class LogicalSwitchEditPage: public Page
|
||||
timer = new NumberEdit(logicalSwitchOneWindow, grid.getFieldSlot(), -128, 122, GET_SET_DEFAULT(cs->v2));
|
||||
timer->setDisplayHandler([](int32_t value) {
|
||||
return std::to_string(lswTimerValue(value));
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, lswTimerValue(value), flags | PREC1);
|
||||
});
|
||||
grid.nextLine();
|
||||
}
|
||||
|
||||
@@ -171,7 +171,7 @@ class OutputEditWindow : public Page
|
||||
+MAX_CURVES, GET_SET_DEFAULT(output->curve));
|
||||
edit->setDisplayHandler(
|
||||
[](int32_t value) {
|
||||
return getCurveString(value);
|
||||
return std::string(getCurveString(value));
|
||||
});
|
||||
grid.nextLine();
|
||||
|
||||
|
||||
@@ -231,7 +231,6 @@ class SensorEditWindow : public Page {
|
||||
std::stringstream stream;
|
||||
stream << std::hex << value;
|
||||
return stream.str();
|
||||
// drawHexNumber(dc, FIELD_PADDING_LEFT, FIELD_PADDING_TOP, value, flags);
|
||||
});
|
||||
new NumberEdit(sensorParametersWindow, grid.getFieldSlot(2, 1), 0, 0xff, GET_SET_DEFAULT(sensor->instance));
|
||||
grid.nextLine();
|
||||
@@ -469,7 +468,6 @@ void ModelTelemetryPage::build(FormWindow * window, int8_t focusSensorIndex)
|
||||
auto edit = new NumberEdit(window, grid.getFieldSlot(), -30, 30, GET_SET_DEFAULT(g_model.rssiAlarms.warning));
|
||||
edit->setDisplayHandler([](int32_t value) {
|
||||
return std::to_string(g_model.rssiAlarms.getWarningRssi());
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, g_model.rssiAlarms.getWarningRssi(), flags);
|
||||
});
|
||||
// window->setFirstField(edit);
|
||||
grid.nextLine();
|
||||
@@ -478,7 +476,6 @@ void ModelTelemetryPage::build(FormWindow * window, int8_t focusSensorIndex)
|
||||
edit = new NumberEdit(window, grid.getFieldSlot(), -30, 30, GET_SET_DEFAULT(g_model.rssiAlarms.critical));
|
||||
edit->setDisplayHandler([](int32_t value) {
|
||||
return std::to_string(g_model.rssiAlarms.getCriticalRssi());
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, g_model.rssiAlarms.getCriticalRssi(), flags);
|
||||
});
|
||||
grid.nextLine();
|
||||
|
||||
|
||||
@@ -449,10 +449,7 @@ void RadioHardwarePage::build(FormWindow * window)
|
||||
new StaticText(window, grid.getLabelSlot(), STR_BATT_CALIB, 0, COLOR_THEME_PRIMARY1);
|
||||
auto batCal = new NumberEdit(window, grid.getFieldSlot(1,0), -127, 127, GET_SET_DEFAULT(g_eeGeneral.txVoltageCalibration));
|
||||
batCal->setDisplayHandler([](int32_t value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, getBatteryVoltage(), PREC2, 0, nullptr, "V");
|
||||
return std::string(s);
|
||||
//dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, getBatteryVoltage(), flags | PREC2, 0, nullptr, "V");
|
||||
return formatNumberAsString(getBatteryVoltage(), PREC2, 0, nullptr, "V");
|
||||
});
|
||||
batCal->setWindowFlags(REFRESH_ALWAYS);
|
||||
grid.nextLine();
|
||||
|
||||
@@ -79,10 +79,7 @@ class DateTimeWindow : public FormGroup {
|
||||
SET_LOAD_DATETIME(&t);
|
||||
});
|
||||
month->setDisplayHandler([](int32_t value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, value, LEADING0);
|
||||
return std::string(s);
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, value, flags | LEADING0, 2);
|
||||
return formatNumberAsString(value, LEADING0);
|
||||
});
|
||||
|
||||
/* TODO dynamic max instead of 31 ...
|
||||
@@ -104,10 +101,7 @@ class DateTimeWindow : public FormGroup {
|
||||
SET_LOAD_DATETIME(&t);
|
||||
});
|
||||
day->setDisplayHandler([](int32_t value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, value, LEADING0, 2);
|
||||
return std::string(s);
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, value, flags | LEADING0, 2);
|
||||
return formatNumberAsString(value, LEADING0, 2);
|
||||
});
|
||||
grid.nextLine();
|
||||
|
||||
@@ -145,10 +139,7 @@ class DateTimeWindow : public FormGroup {
|
||||
SET_LOAD_DATETIME(&t);
|
||||
});
|
||||
minutes->setDisplayHandler([](int32_t value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, value, LEADING0, 2);
|
||||
return std::string(s);
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, value, flags | LEADING0, 2);
|
||||
return formatNumberAsString(value, LEADING0, 2);
|
||||
});
|
||||
|
||||
auto seconds = new NumberEdit(this, grid.getFieldSlot(3, 2), 0, 59,
|
||||
|
||||
@@ -83,10 +83,7 @@ void RadioTrainerPage::build(FormWindow * window)
|
||||
new StaticText(window, grid.getLabelSlot(), STR_MULTIPLIER, 0, COLOR_THEME_PRIMARY1);
|
||||
auto multiplier = new NumberEdit(window, grid.getFieldSlot(3, 0), -10, 40, GET_SET_DEFAULT(g_eeGeneral.PPM_Multiplier));
|
||||
multiplier->setDisplayHandler([](int32_t value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, value+10, PREC1);
|
||||
return std::string(s);
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, value+10, flags | PREC1, 0);
|
||||
return formatNumberAsString(value+10, PREC1);
|
||||
});
|
||||
grid.nextLine();
|
||||
grid.nextLine();
|
||||
|
||||
@@ -236,11 +236,7 @@ class SpecialFunctionEditPage : public Page
|
||||
255, GET_SET_DEFAULT(CFN_PARAM(cfn)));
|
||||
edit->setDisplayHandler(
|
||||
[=](int32_t value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, CFN_PARAM(cfn), PREC1, sizeof(CFN_PARAM(cfn)), nullptr, "s");
|
||||
return (std::string(s));
|
||||
// dc->drawNumber(2, 2, CFN_PARAM(cfn), PREC1,
|
||||
// sizeof(CFN_PARAM(cfn)), nullptr, "s");
|
||||
return formatNumberAsString(CFN_PARAM(cfn), PREC1, sizeof(CFN_PARAM(cfn)), nullptr, "s");
|
||||
});
|
||||
break;
|
||||
}
|
||||
@@ -322,11 +318,7 @@ class SpecialFunctionEditPage : public Page
|
||||
GET_SET_DEFAULT(CFN_PARAM(cfn)));
|
||||
numedit->setDisplayHandler(
|
||||
[](int value) {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, abs(value), 0, 0, value >= 0 ? "+=" : "--", nullptr);
|
||||
return std::string(s);
|
||||
// dc->drawNumber(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, abs(value),
|
||||
// flags, 0, value >= 0 ? "+= " : "-= ", nullptr);
|
||||
return formatNumberAsString(abs(value), 0, 0, value >= 0 ? "+=" : "--", nullptr);
|
||||
});
|
||||
break;
|
||||
}
|
||||
@@ -350,13 +342,11 @@ class SpecialFunctionEditPage : public Page
|
||||
repeat->setDisplayHandler(
|
||||
[](int32_t value) {
|
||||
if (value == 0)
|
||||
return "1x";
|
||||
return std::string("1x");
|
||||
else if (value == (int8_t)CFN_PLAY_REPEAT_NOSTART)
|
||||
return "!1x";
|
||||
return std::string("!1x");
|
||||
else {
|
||||
char s[50];
|
||||
BitmapBuffer::formatNumberAsString(s, 49, value * CFN_PLAY_REPEAT_MUL, 0, 0, nullptr, "s");
|
||||
return (const char *)s;
|
||||
return formatNumberAsString(value * CFN_PLAY_REPEAT_MUL, 0, 0, nullptr, "s");
|
||||
}
|
||||
});
|
||||
grid.nextLine();
|
||||
|
||||
@@ -755,6 +755,15 @@ char *strAppendFilename(char *dest, const char *filename, const int size)
|
||||
return dest;
|
||||
}
|
||||
|
||||
std::string formatNumberAsString(int32_t val, LcdFlags flags, uint8_t len, const char * prefix, const char * suffix)
|
||||
{
|
||||
char s[100];
|
||||
BitmapBuffer::formatNumberAsString(s, 99, val, flags, len, prefix, suffix);
|
||||
return std::string(s);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#if defined(RTCLOCK)
|
||||
#include "rtc.h"
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
|
||||
#include "definitions.h"
|
||||
#include "opentx_types.h"
|
||||
#include <string>
|
||||
|
||||
#include <string>
|
||||
#include <cstring>
|
||||
@@ -64,6 +65,7 @@ char *strAppendSigned(char *dest, int32_t value, uint8_t digits = 0,
|
||||
char *strSetCursor(char *dest, int position);
|
||||
char *strAppendDate(char *str, bool time = false);
|
||||
char *strAppendFilename(char *dest, const char *filename, const int size);
|
||||
std::string formatNumberAsString(int32_t val, LcdFlags flags = 0, uint8_t len = 0, const char * prefix = nullptr, const char * suffix = nullptr);
|
||||
|
||||
#if !defined(BOOT)
|
||||
char *getStringAtIndex(char *dest, const char *s, int idx);
|
||||
|
||||
Vendored
+1
-1
Submodule radio/src/thirdparty/libopenui updated: e6dc11ee06...c70784cbd0
Reference in New Issue
Block a user