From 6225c048ef53a7ce65b2b2d112f8b1189b7834f3 Mon Sep 17 00:00:00 2001 From: Bertrand Songis Date: Fri, 2 Sep 2016 18:50:55 +0200 Subject: [PATCH] [Taranis] Display problem in the Mixer screen --- radio/src/gui/212x64/gui.h | 24 +++------------- radio/src/gui/212x64/menu_model.cpp | 12 +------- radio/src/gui/212x64/model_mixes.cpp | 41 ++++++++++------------------ 3 files changed, 19 insertions(+), 58 deletions(-) diff --git a/radio/src/gui/212x64/gui.h b/radio/src/gui/212x64/gui.h index 12d58d627..c05d3d248 100644 --- a/radio/src/gui/212x64/gui.h +++ b/radio/src/gui/212x64/gui.h @@ -44,24 +44,13 @@ #define CURVE_CENTER_X (LCD_W-CURVE_SIDE_WIDTH-2) #define CURVE_CENTER_Y (LCD_H/2) -#if defined(TRANSLATIONS_FR) - #define MENU_COLUMNS 1 -#else - #define MENU_COLUMNS 2 -#endif - -#if MENU_COLUMNS == 1 - #define MIXES_2ND_COLUMN (18*FW) -#else - #define MIXES_2ND_COLUMN (9*FW) -#endif +#define MIXES_2ND_COLUMN (18*FW) #define MENUS_SCROLLBAR_WIDTH 2 -#define MENU_COLUMN2_X (8 + LCD_W / 2) inline void drawFieldLabel(coord_t x, coord_t y, const char * str) { - lcdDrawText((x > (LCD_W-10*FW-MENUS_SCROLLBAR_WIDTH)) ? MENU_COLUMN2_X : 0, y, str); + lcdDrawText(0, y, str); } extern uint8_t modelBitmap[MODEL_BITMAP_SIZE]; @@ -263,13 +252,8 @@ extern uint8_t editNameCursorPos; void editName(coord_t x, coord_t y, char * name, uint8_t size, event_t event, uint8_t active, uint8_t attr=ZCHAR); void editSingleName(coord_t x, coord_t y, const pm_char * label, char * name, uint8_t size, event_t event, uint8_t active); -#if MENU_COLUMNS > 1 -uint8_t editDelay(coord_t x, coord_t y, event_t event, uint8_t attr, const pm_char * str, uint8_t delay); -#define EDIT_DELAY(x, y, event, attr, str, delay) editDelay(x, y, event, attr, str, delay) -#else -uint8_t editDelay(const coord_t y, const event_t event, const uint8_t attr, const pm_char *str, uint8_t delay); -#define EDIT_DELAY(x, y, event, attr, str, delay) editDelay(y, event, attr, str, delay) -#endif +uint8_t editDelay(coord_t y, event_t event, uint8_t attr, const char * str, uint8_t delay); +#define EDIT_DELAY(y, event, attr, str, delay) editDelay(y, event, attr, str, delay) #define WARNING_TYPE_ASTERISK 0 #define WARNING_TYPE_CONFIRM 1 diff --git a/radio/src/gui/212x64/menu_model.cpp b/radio/src/gui/212x64/menu_model.cpp index 571d762c7..f9c04c05d 100644 --- a/radio/src/gui/212x64/menu_model.cpp +++ b/radio/src/gui/212x64/menu_model.cpp @@ -42,23 +42,13 @@ const MenuHandlerFunc menuTabModel[] = { menuModelDisplay }; -#if MENU_COLUMNS > 1 -uint8_t editDelay(coord_t x, coord_t y, event_t event, uint8_t attr, const pm_char * str, uint8_t delay) -{ - lcdDrawText(x, y, str); - lcdDrawNumber(x+MIXES_2ND_COLUMN, y, (10/DELAY_STEP)*delay, attr|PREC1|LEFT); - if (attr) CHECK_INCDEC_MODELVAR_ZERO(event, delay, DELAY_MAX); - return delay; -} -#else -uint8_t editDelay(coord_t y, event_t event, uint8_t attr, const pm_char * str, uint8_t delay) +uint8_t editDelay(coord_t y, event_t event, uint8_t attr, const char * str, uint8_t delay) { lcdDrawTextAlignedLeft(y, str); lcdDrawNumber(MIXES_2ND_COLUMN, y, (10/DELAY_STEP)*delay, attr|PREC1|LEFT); if (attr) CHECK_INCDEC_MODELVAR_ZERO(event, delay, DELAY_MAX); return delay; } -#endif #define COPY_MODE 1 #define MOVE_MODE 2 diff --git a/radio/src/gui/212x64/model_mixes.cpp b/radio/src/gui/212x64/model_mixes.cpp index 9cfb3c134..86981ba3e 100644 --- a/radio/src/gui/212x64/model_mixes.cpp +++ b/radio/src/gui/212x64/model_mixes.cpp @@ -208,27 +208,14 @@ void menuModelMixOne(event_t event) SUBMENU(STR_MIXER, MIX_FIELD_COUNT, {0, 0, 0, 0, 0, CASE_CURVES(1) CASE_FLIGHT_MODES((MAX_FLIGHT_MODES-1) | NAVIGATION_LINE_BY_LINE) 0, 0 /*, ...*/}); -#if MENU_COLUMNS > 1 - SET_SCROLLBAR_X(0); -#endif - int8_t sub = menuVerticalPosition; int8_t editMode = s_editMode; - for (int k=0; k= LCD_LINES-1) - y = 1 + (k-LCD_LINES+2)*FH; - else - y = 1 + (k+1)*FH; - int8_t i = k; - -#if MENU_COLUMNS < 2 - i = i + menuVerticalOffset; -#endif - - LcdFlags attr = (sub==i ? (editMode>0 ? BLINK|INVERS : INVERS) : 0); - switch(i) { + for (uint8_t k=0; k0 ? BLINK : 0) : 0); + switch (i) { case MIX_FIELD_NAME: editSingleName(MIXES_2ND_COLUMN, y, STR_MIXNAME, md2->name, sizeof(md2->name), event, attr); break; @@ -276,36 +263,36 @@ void menuModelMixOne(event_t event) #endif case MIX_FIELD_SWITCH: - md2->swtch = editSwitch(MENU_COLUMN2_X+MIXES_2ND_COLUMN, y, md2->swtch, attr, event); + md2->swtch = editSwitch(MIXES_2ND_COLUMN, y, md2->swtch, attr, event); break; case MIX_FIELD_WARNING: - drawFieldLabel(MENU_COLUMN2_X+MIXES_2ND_COLUMN, y, STR_MIXWARNING); + drawFieldLabel(MIXES_2ND_COLUMN, y, STR_MIXWARNING); if (md2->mixWarn) - lcdDrawNumber(MENU_COLUMN2_X+MIXES_2ND_COLUMN, y, md2->mixWarn, attr|LEFT); + lcdDrawNumber(MIXES_2ND_COLUMN, y, md2->mixWarn, attr|LEFT); else - lcdDrawText(MENU_COLUMN2_X+MIXES_2ND_COLUMN, y, STR_OFF, attr); + lcdDrawText(MIXES_2ND_COLUMN, y, STR_OFF, attr); if (attr) CHECK_INCDEC_MODELVAR_ZERO(event, md2->mixWarn, 3); break; case MIX_FIELD_MLTPX: - md2->mltpx = editChoice(MENU_COLUMN2_X+MIXES_2ND_COLUMN, y, STR_MULTPX, STR_VMLTPX, md2->mltpx, 0, 2, attr, event); + md2->mltpx = editChoice(MIXES_2ND_COLUMN, y, STR_MULTPX, STR_VMLTPX, md2->mltpx, 0, 2, attr, event); break; case MIX_FIELD_DELAY_UP: - md2->delayUp = EDIT_DELAY(MENU_COLUMN2_X, y, event, attr, STR_DELAYUP, md2->delayUp); + md2->delayUp = EDIT_DELAY(y, event, attr, STR_DELAYUP, md2->delayUp); break; case MIX_FIELD_DELAY_DOWN: - md2->delayDown = EDIT_DELAY(MENU_COLUMN2_X, y, event, attr, STR_DELAYDOWN, md2->delayDown); + md2->delayDown = EDIT_DELAY(y, event, attr, STR_DELAYDOWN, md2->delayDown); break; case MIX_FIELD_SLOW_UP: - md2->speedUp = EDIT_DELAY(MENU_COLUMN2_X, y, event, attr, STR_SLOWUP, md2->speedUp); + md2->speedUp = EDIT_DELAY(y, event, attr, STR_SLOWUP, md2->speedUp); break; case MIX_FIELD_SLOW_DOWN: - md2->speedDown = EDIT_DELAY(MENU_COLUMN2_X, y, event, attr, STR_SLOWDOWN, md2->speedDown); + md2->speedDown = EDIT_DELAY(y, event, attr, STR_SLOWDOWN, md2->speedDown); break; } }