kopia lustrzana https://github.com/OpenRTX/OpenRTX
Module17: removed backlight timer
rodzic
fdd08d4bcb
commit
6c8eaf7073
|
@ -108,8 +108,7 @@ enum backupRestoreItems
|
||||||
|
|
||||||
enum displayItems
|
enum displayItems
|
||||||
{
|
{
|
||||||
D_BRIGHTNESS = 0,
|
D_BRIGHTNESS = 0
|
||||||
D_TIMER
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_GPS
|
#ifdef CONFIG_GPS
|
||||||
|
|
|
@ -89,7 +89,6 @@ const char *settings_items[] =
|
||||||
const char *display_items[] =
|
const char *display_items[] =
|
||||||
{
|
{
|
||||||
"Brightness",
|
"Brightness",
|
||||||
"Timer"
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const char *m17_items[] =
|
const char *m17_items[] =
|
||||||
|
@ -187,10 +186,6 @@ layout_t layout;
|
||||||
state_t last_state;
|
state_t last_state;
|
||||||
static ui_state_t ui_state;
|
static ui_state_t ui_state;
|
||||||
static bool layout_ready = false;
|
static bool layout_ready = false;
|
||||||
static bool redraw_needed = true;
|
|
||||||
|
|
||||||
static bool standby = false;
|
|
||||||
static long long last_event_tick = 0;
|
|
||||||
|
|
||||||
// UI event queue
|
// UI event queue
|
||||||
static uint8_t evQueue_rdPos;
|
static uint8_t evQueue_rdPos;
|
||||||
|
@ -302,8 +297,6 @@ layout_t _ui_calculateLayout()
|
||||||
|
|
||||||
void ui_init()
|
void ui_init()
|
||||||
{
|
{
|
||||||
last_event_tick = getTick();
|
|
||||||
redraw_needed = true;
|
|
||||||
layout = _ui_calculateLayout();
|
layout = _ui_calculateLayout();
|
||||||
layout_ready = true;
|
layout_ready = true;
|
||||||
// Initialize struct ui_state to all zeroes
|
// Initialize struct ui_state to all zeroes
|
||||||
|
@ -514,79 +507,6 @@ static void _ui_changeBrightness(int variation)
|
||||||
display_setBacklightLevel(state.settings.brightness);
|
display_setBacklightLevel(state.settings.brightness);
|
||||||
}
|
}
|
||||||
|
|
||||||
void _ui_changeTimer(int variation)
|
|
||||||
{
|
|
||||||
if ((state.settings.display_timer == TIMER_OFF && variation < 0) ||
|
|
||||||
(state.settings.display_timer == TIMER_1H && variation > 0))
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
state.settings.display_timer += variation;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool _ui_checkStandby(long long time_since_last_event)
|
|
||||||
{
|
|
||||||
if (standby)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (state.settings.display_timer)
|
|
||||||
{
|
|
||||||
case TIMER_OFF:
|
|
||||||
return false;
|
|
||||||
case TIMER_5S:
|
|
||||||
case TIMER_10S:
|
|
||||||
case TIMER_15S:
|
|
||||||
case TIMER_20S:
|
|
||||||
case TIMER_25S:
|
|
||||||
case TIMER_30S:
|
|
||||||
return time_since_last_event >=
|
|
||||||
(5000 * state.settings.display_timer);
|
|
||||||
case TIMER_1M:
|
|
||||||
case TIMER_2M:
|
|
||||||
case TIMER_3M:
|
|
||||||
case TIMER_4M:
|
|
||||||
case TIMER_5M:
|
|
||||||
return time_since_last_event >=
|
|
||||||
(60000 * (state.settings.display_timer - (TIMER_1M - 1)));
|
|
||||||
case TIMER_15M:
|
|
||||||
case TIMER_30M:
|
|
||||||
case TIMER_45M:
|
|
||||||
return time_since_last_event >=
|
|
||||||
(60000 * 15 * (state.settings.display_timer - (TIMER_15M - 1)));
|
|
||||||
case TIMER_1H:
|
|
||||||
return time_since_last_event >= 60 * 60 * 1000;
|
|
||||||
}
|
|
||||||
|
|
||||||
// unreachable code
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void _ui_enterStandby()
|
|
||||||
{
|
|
||||||
if(standby)
|
|
||||||
return;
|
|
||||||
|
|
||||||
standby = true;
|
|
||||||
redraw_needed = false;
|
|
||||||
display_setBacklightLevel(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool _ui_exitStandby(long long now)
|
|
||||||
{
|
|
||||||
last_event_tick = now;
|
|
||||||
|
|
||||||
if(!standby)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
standby = false;
|
|
||||||
redraw_needed = true;
|
|
||||||
display_setBacklightLevel(state.settings.brightness);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
void _ui_changeCAN(int variation)
|
void _ui_changeCAN(int variation)
|
||||||
{
|
{
|
||||||
// M17 CAN ranges from 0 to 15
|
// M17 CAN ranges from 0 to 15
|
||||||
|
@ -796,23 +716,12 @@ void ui_updateFSM(bool *sync_rtx)
|
||||||
event_t event = evQueue[evQueue_rdPos];
|
event_t event = evQueue[evQueue_rdPos];
|
||||||
evQueue_rdPos = newTail;
|
evQueue_rdPos = newTail;
|
||||||
|
|
||||||
// There is some event to process, we need an UI redraw.
|
|
||||||
// UI redraw request is cancelled if we're in standby mode.
|
|
||||||
redraw_needed = true;
|
|
||||||
if(standby) redraw_needed = false;
|
|
||||||
|
|
||||||
long long now = getTick();
|
|
||||||
// Process pressed keys
|
// Process pressed keys
|
||||||
if(event.type == EVENT_KBD)
|
if(event.type == EVENT_KBD)
|
||||||
{
|
{
|
||||||
kbd_msg_t msg;
|
kbd_msg_t msg;
|
||||||
msg.value = event.payload;
|
msg.value = event.payload;
|
||||||
|
|
||||||
// If we get out of standby, we ignore the kdb event
|
|
||||||
// unless is the MONI key for the MACRO functions
|
|
||||||
if (_ui_exitStandby(now) && !(msg.keys & KEY_MONI))
|
|
||||||
return;
|
|
||||||
|
|
||||||
switch(state.ui_screen)
|
switch(state.ui_screen)
|
||||||
{
|
{
|
||||||
// VFO screen
|
// VFO screen
|
||||||
|
@ -933,9 +842,6 @@ void ui_updateFSM(bool *sync_rtx)
|
||||||
case D_BRIGHTNESS:
|
case D_BRIGHTNESS:
|
||||||
_ui_changeBrightness(-5);
|
_ui_changeBrightness(-5);
|
||||||
break;
|
break;
|
||||||
case D_TIMER:
|
|
||||||
_ui_changeTimer(-1);
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
state.ui_screen = SETTINGS_DISPLAY;
|
state.ui_screen = SETTINGS_DISPLAY;
|
||||||
}
|
}
|
||||||
|
@ -947,9 +853,6 @@ void ui_updateFSM(bool *sync_rtx)
|
||||||
case D_BRIGHTNESS:
|
case D_BRIGHTNESS:
|
||||||
_ui_changeBrightness(+5);
|
_ui_changeBrightness(+5);
|
||||||
break;
|
break;
|
||||||
case D_TIMER:
|
|
||||||
_ui_changeTimer(+1);
|
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
state.ui_screen = SETTINGS_DISPLAY;
|
state.ui_screen = SETTINGS_DISPLAY;
|
||||||
}
|
}
|
||||||
|
@ -1136,26 +1039,10 @@ void ui_updateFSM(bool *sync_rtx)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(event.type == EVENT_STATUS)
|
|
||||||
{
|
|
||||||
if (platform_getPttStatus() || rtx_rxSquelchOpen())
|
|
||||||
{
|
|
||||||
_ui_exitStandby(now);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_ui_checkStandby(now - last_event_tick))
|
|
||||||
{
|
|
||||||
_ui_enterStandby();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ui_updateGUI()
|
bool ui_updateGUI()
|
||||||
{
|
{
|
||||||
if(redraw_needed == false)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
if(!layout_ready)
|
if(!layout_ready)
|
||||||
{
|
{
|
||||||
layout = _ui_calculateLayout();
|
layout = _ui_calculateLayout();
|
||||||
|
@ -1202,7 +1089,6 @@ bool ui_updateGUI()
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
redraw_needed = false;
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -180,10 +180,6 @@ int _ui_getDisplayValueName(char *buf, uint8_t max_len, uint8_t index)
|
||||||
case D_BRIGHTNESS:
|
case D_BRIGHTNESS:
|
||||||
value = last_state.settings.brightness;
|
value = last_state.settings.brightness;
|
||||||
break;
|
break;
|
||||||
case D_TIMER:
|
|
||||||
snprintf(buf, max_len, "%s",
|
|
||||||
display_timer_values[last_state.settings.display_timer]);
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
snprintf(buf, max_len, "%d", value);
|
snprintf(buf, max_len, "%d", value);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Ładowanie…
Reference in New Issue