Improve power meter GUI
This commit is contained in:
@@ -26,6 +26,7 @@ extern uint8_t g_moduleIdx;
|
||||
enum PowerMeterFields {
|
||||
POWER_METER_FREQ_RANGE,
|
||||
POWER_METER_ATTENUATOR,
|
||||
POWER_METER_MAX,
|
||||
POWER_METER_POWER,
|
||||
POWER_METER_PEAK,
|
||||
POWER_METER_FIELDS_MAX
|
||||
@@ -34,7 +35,7 @@ enum PowerMeterFields {
|
||||
|
||||
void menuRadioPowerMeter(event_t event)
|
||||
{
|
||||
SUBMENU(STR_MENU_POWER_METER, POWER_METER_FIELDS_MAX-1, {0, 0, READONLY_ROW, READONLY_ROW});
|
||||
SUBMENU(STR_MENU_POWER_METER, POWER_METER_FIELDS_MAX-1, {0, 0, READONLY_ROW, READONLY_ROW, READONLY_ROW});
|
||||
|
||||
if (TELEMETRY_STREAMING()) {
|
||||
lcdDrawCenteredText(LCD_H/2, STR_TURN_OFF_RECEIVER);
|
||||
@@ -58,24 +59,17 @@ void menuRadioPowerMeter(event_t event)
|
||||
if (moduleSettings[g_moduleIdx].mode != MODULE_MODE_POWER_METER) {
|
||||
memclear(&reusableBuffer.powerMeter, sizeof(reusableBuffer.powerMeter));
|
||||
reusableBuffer.powerMeter.freq = 2400000000;
|
||||
#if defined(FRSKY_RELEASE)
|
||||
reusableBuffer.powerMeter.attn = 4;
|
||||
#endif
|
||||
moduleSettings[g_moduleIdx].mode = MODULE_MODE_POWER_METER;
|
||||
}
|
||||
|
||||
// The warning
|
||||
lcdDrawText(3 * FW, FH + 3, STR_MAX, BOLD);
|
||||
lcdDrawText(lcdLastRightPos, FH + 3, ": ", BOLD);
|
||||
lcdDrawNumber(lcdLastRightPos, FH + 3, -10 + 10 * reusableBuffer.powerMeter.attn, BOLD);
|
||||
lcdDrawText(lcdLastRightPos, FH + 3, "dBm ", BOLD);
|
||||
lcdDrawText(lcdLastRightPos, FH + 3, "(", BOLD);
|
||||
drawPower(lcdLastRightPos, FH + 3, -10 + 10 * reusableBuffer.powerMeter.attn, BOLD);
|
||||
lcdDrawText(lcdLastRightPos, FH + 3, ")", BOLD);
|
||||
if (reusableBuffer.powerMeter.attn != 0)
|
||||
lcdDrawCenteredText(FH+2, STR_POWERMETER_ATTN_NEEDED, BOLD);
|
||||
|
||||
for (uint8_t i=0; i<POWER_METER_FIELDS_MAX; i++) {
|
||||
LcdFlags attr = (menuVerticalPosition == i ? (s_editMode > 0 ? INVERS | BLINK : INVERS) : 0);
|
||||
coord_t y = MENU_HEADER_HEIGHT + 2 * FH + i * FH;
|
||||
coord_t y = MENU_HEADER_HEIGHT + 12 + i * FH;
|
||||
|
||||
switch (i) {
|
||||
case POWER_METER_FREQ_RANGE:
|
||||
@@ -100,6 +94,16 @@ void menuRadioPowerMeter(event_t event)
|
||||
}
|
||||
break;
|
||||
|
||||
case POWER_METER_MAX:
|
||||
lcdDrawText(0, y, STR_MAX);
|
||||
lcdDrawNumber(8 * FW, y, -10 + 10 * reusableBuffer.powerMeter.attn);
|
||||
lcdDrawText(lcdLastRightPos, y, "dBm/ ");
|
||||
drawPower(lcdLastRightPos, y, -10 + 10 * reusableBuffer.powerMeter.attn, 0);
|
||||
if (attr) {
|
||||
reusableBuffer.powerMeter.attn = checkIncDec(event, reusableBuffer.powerMeter.attn, 0, 5, 0);
|
||||
}
|
||||
break;
|
||||
|
||||
case POWER_METER_POWER:
|
||||
lcdDrawText(0, y, STR_POWERMETER_POWER);
|
||||
if (reusableBuffer.powerMeter.power) {
|
||||
|
||||
@@ -595,6 +595,7 @@ const char STR_BLCOLOR[] = TR_BLCOLOR;
|
||||
|
||||
const char STR_TRAINER[] = TR_TRAINER;
|
||||
const char STR_MODULE_BIND[] = TR_MODULE_BIND;
|
||||
const char STR_POWERMETER_ATTN_NEEDED[] = TR_POWERMETER_ATTN_NEEDED;
|
||||
const char STR_PXX2_SELECT_RX[] = TR_PXX2_SELECT_RX;
|
||||
const char STR_PXX2_DEFAULT[] = TR_PXX2_DEFAULT;
|
||||
const char STR_BT_SELECT_DEVICE[] = TR_BT_SELECT_DEVICE;
|
||||
|
||||
@@ -861,6 +861,7 @@ extern const char STR_EXPONAME[];
|
||||
|
||||
extern const char STR_TRAINER[];
|
||||
extern const char STR_MODULE_BIND[];
|
||||
extern const char STR_POWERMETER_ATTN_NEEDED[];
|
||||
extern const char STR_PXX2_SELECT_RX[];
|
||||
extern const char STR_PXX2_DEFAULT[];
|
||||
extern const char STR_BT_SELECT_DEVICE[];
|
||||
|
||||
@@ -980,6 +980,7 @@
|
||||
#define TR_BUZZER INDENT"Pípák"
|
||||
#define TR_BYTES "[B]"
|
||||
#define TR_MODULE_BIND BUTTON(TR("Bnd", "Bind"))
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -985,6 +985,7 @@
|
||||
#define TR_BUZZER INDENT "Summer"
|
||||
#define TR_BYTES "Bytes"
|
||||
#define TR_MODULE_BIND BUTTON(TR("Bnd","Bind")) //9XR-Pro
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -996,6 +996,7 @@
|
||||
#define TR_BUZZER INDENT "Buzzer"
|
||||
#define TR_BYTES "bytes"
|
||||
#define TR_MODULE_BIND BUTTON(TR("Bnd", "Bind"))
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -991,6 +991,7 @@
|
||||
#define TR_BUZZER INDENT"Zumbador"
|
||||
#define TR_BYTES "bytes"
|
||||
#define TR_MODULE_BIND "[Enlace]"
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -983,6 +983,7 @@
|
||||
#define TR_BUZZER INDENT"Buzzer"
|
||||
#define TR_BYTES "bytes"
|
||||
#define TR_MODULE_BIND "[Bind]"
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -995,6 +995,7 @@
|
||||
#define TR_BUZZER INDENT "Bipeur"
|
||||
#define TR_BYTES "bytes"
|
||||
#define TR_MODULE_BIND BUTTON(TR("Bnd", "Bind"))
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -985,6 +985,7 @@
|
||||
#define TR_BUZZER INDENT"Buzzer"
|
||||
#define TR_BYTES "Bytes"
|
||||
#define TR_MODULE_BIND "[Bind]"
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -986,6 +986,7 @@
|
||||
#define TR_BUZZER INDENT "Zoemer"
|
||||
#define TR_BYTES "bytes"
|
||||
#define TR_MODULE_BIND TR("[Bnd]", "[Bind]")
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -986,6 +986,7 @@
|
||||
#define TR_BUZZER INDENT"Brzęczyk"
|
||||
#define TR_BYTES "bajty"
|
||||
#define TR_MODULE_BIND TR("[BND]","[Bind]")
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -990,6 +990,7 @@
|
||||
#define TR_BUZZER INDENT"Buzzer"
|
||||
#define TR_BYTES "bytes"
|
||||
#define TR_MODULE_BIND "[Bind]"
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
@@ -999,6 +999,7 @@
|
||||
#define TR_BUZZER INDENT"Summer"
|
||||
#define TR_BYTES "byte"
|
||||
#define TR_MODULE_BIND TR("[Bnd]", "[Bind]")
|
||||
#define TR_POWERMETER_ATTN_NEEDED "Attenuator needed"
|
||||
#define TR_PXX2_SELECT_RX "Select RX..."
|
||||
#define TR_PXX2_DEFAULT "<default>"
|
||||
#define TR_BT_SELECT_DEVICE "Select device..."
|
||||
|
||||
Reference in New Issue
Block a user