feat(bw): add 'Set Screen' special function to B&W radios (#5589)
This commit is contained in:
@@ -53,7 +53,7 @@ void menuViewTelemetry(event_t event)
|
||||
{
|
||||
enum NavigationDirection direction = NAVIGATION_DIRECTION_NONE;
|
||||
|
||||
if (event == EVT_KEY_BREAK(KEY_EXIT) && TELEMETRY_SCREEN_TYPE(s_frsky_view) != TELEMETRY_SCREEN_TYPE_SCRIPT) {
|
||||
if (event == EVT_KEY_BREAK(KEY_EXIT) && TELEMETRY_SCREEN_TYPE(selectedTelemView) != TELEMETRY_SCREEN_TYPE_SCRIPT) {
|
||||
chainMenu(menuMainView);
|
||||
}
|
||||
#if defined(LUA)
|
||||
@@ -75,12 +75,12 @@ void menuViewTelemetry(event_t event)
|
||||
|
||||
for (int i=0; i<=TELEMETRY_SCREEN_TYPE_MAX; i++) {
|
||||
if (direction == NAVIGATION_DIRECTION_UP) {
|
||||
if (s_frsky_view-- == 0)
|
||||
s_frsky_view = TELEMETRY_VIEW_MAX;
|
||||
if (selectedTelemView-- == 0)
|
||||
selectedTelemView = TELEMETRY_VIEW_MAX;
|
||||
}
|
||||
else if (direction == NAVIGATION_DIRECTION_DOWN) {
|
||||
if (s_frsky_view++ == TELEMETRY_VIEW_MAX)
|
||||
s_frsky_view = 0;
|
||||
if (selectedTelemView++ == TELEMETRY_VIEW_MAX)
|
||||
selectedTelemView = 0;
|
||||
}
|
||||
else {
|
||||
direction = NAVIGATION_DIRECTION_DOWN;
|
||||
@@ -95,5 +95,20 @@ void menuViewTelemetry(event_t event)
|
||||
displayRssiLine();
|
||||
}
|
||||
|
||||
void showTelemScreen(uint8_t index)
|
||||
{
|
||||
if (menuHandlers[menuLevel] == menuViewTelemetry || menuHandlers[menuLevel] == menuMainView) {
|
||||
if (index == 0) {
|
||||
chainMenu(menuMainView);
|
||||
} else {
|
||||
index -= 1;
|
||||
if ((index >= 0 && index <= TELEMETRY_SCREEN_TYPE_MAX) && (TELEMETRY_SCREEN_TYPE(index) != TELEMETRY_SCREEN_TYPE_NONE)) {
|
||||
selectedTelemView = index;
|
||||
chainMenu(menuViewTelemetry);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#undef EVT_KEY_PREVIOUS_VIEW
|
||||
#undef EVT_KEY_NEXT_VIEW
|
||||
|
||||
Reference in New Issue
Block a user