1
0
Fork 0
mirror of https://github.com/opentx/opentx.git synced 2025-07-25 17:25:13 +03:00

[Taranis] Now the Modelsel screen comes quickly, eeCheck() is not any

more called when entering, but only when really needed ...
This commit is contained in:
bsongis 2015-06-12 21:21:01 +02:00
parent 74b43c478b
commit 390781de7c
2 changed files with 9 additions and 5 deletions

View file

@ -71,9 +71,11 @@ void onModelSelectMenu(const char *result)
} }
else { else {
// The user choosed a file on SD to restore // The user choosed a file on SD to restore
eeCheck(true);
POPUP_WARNING(eeRestoreModel(sub, (char *)result)); POPUP_WARNING(eeRestoreModel(sub, (char *)result));
if (!s_warning && g_eeGeneral.currModel == sub) if (!s_warning && g_eeGeneral.currModel == sub) {
eeLoadModel(sub); eeLoadModel(sub);
}
} }
} }
@ -81,6 +83,7 @@ void menuModelSelect(uint8_t event)
{ {
if (s_warning_result) { if (s_warning_result) {
s_warning_result = 0; s_warning_result = 0;
eeCheck(true);
eeDeleteModel(m_posVert); // delete file eeDeleteModel(m_posVert); // delete file
s_copyMode = 0; s_copyMode = 0;
event = EVT_ENTRY_UP; event = EVT_ENTRY_UP;
@ -88,8 +91,9 @@ void menuModelSelect(uint8_t event)
uint8_t _event_ = (IS_ROTARY_BREAK(event) || IS_ROTARY_LONG(event) ? 0 : event); uint8_t _event_ = (IS_ROTARY_BREAK(event) || IS_ROTARY_LONG(event) ? 0 : event);
if ((s_copyMode && EVT_KEY_MASK(event) == KEY_EXIT) || event == EVT_KEY_BREAK(KEY_EXIT)) if ((s_copyMode && EVT_KEY_MASK(event) == KEY_EXIT) || event == EVT_KEY_BREAK(KEY_EXIT)) {
_event_ -= KEY_EXIT; _event_ -= KEY_EXIT;
}
int8_t oldSub = m_posVert; int8_t oldSub = m_posVert;
@ -106,7 +110,6 @@ void menuModelSelect(uint8_t event)
if (sub >= NUM_BODY_LINES) s_pgOfs = sub-(NUM_BODY_LINES-1); if (sub >= NUM_BODY_LINES) s_pgOfs = sub-(NUM_BODY_LINES-1);
s_copyMode = 0; s_copyMode = 0;
s_editMode = EDIT_MODE_INIT; s_editMode = EDIT_MODE_INIT;
eeCheck(true);
break; break;
case EVT_KEY_LONG(KEY_EXIT): case EVT_KEY_LONG(KEY_EXIT):
@ -234,8 +237,7 @@ void menuModelSelect(uint8_t event)
} }
lcd_puts(27*FW-(LEN_FREE-4)*FW, 0, STR_FREE); lcd_puts(27*FW-(LEN_FREE-4)*FW, 0, STR_FREE);
if (event) reusableBuffer.modelsel.eepromfree = EeFsGetFree(); lcd_outdezAtt(20*FW, 0, EeFsGetFree(), 0);
lcd_outdezAtt(20*FW, 0, reusableBuffer.modelsel.eepromfree, 0);
lcd_puts(21*FW, 0, STR_BYTES); lcd_puts(21*FW, 0, STR_BYTES);
displayScreenIndex(e_ModelSelect, DIM(menuTabModel), 0); displayScreenIndex(e_ModelSelect, DIM(menuTabModel), 0);

View file

@ -1505,7 +1505,9 @@ union ReusableBuffer
struct struct
{ {
char listnames[LCD_LINES-1][LEN_MODEL_NAME]; char listnames[LCD_LINES-1][LEN_MODEL_NAME];
#if !defined(CPUARM)
uint16_t eepromfree; uint16_t eepromfree;
#endif
#if defined(SDCARD) #if defined(SDCARD)
char menu_bss[MENU_MAX_LINES][MENU_LINE_LENGTH]; char menu_bss[MENU_MAX_LINES][MENU_LINE_LENGTH];
char mainname[45]; // because reused for SD backup / restore, max backup filename 44 chars: "/MODELS/MODEL0134353-2014-06-19-04-51-27.bin" char mainname[45]; // because reused for SD backup / restore, max backup filename 44 chars: "/MODELS/MODEL0134353-2014-06-19-04-51-27.bin"