From dab82dcd7d331dae59812d0cf8f59e432ecabcf7 Mon Sep 17 00:00:00 2001 From: NightlyFox Date: Fri, 28 Sep 2018 19:58:46 -0500 Subject: [PATCH] added code for + and - button, using - button for theme menu now, corrected code spacing --- common/language.c | 2 +- common/menu-list.c | 4 +--- common/menu.c | 15 +++++++++------ common/theme.c | 12 +++++++++++- common/theme.h | 4 ++-- 5 files changed, 24 insertions(+), 13 deletions(-) diff --git a/common/language.c b/common/language.c index c08cd50..3eb57d4 100644 --- a/common/language.c +++ b/common/language.c @@ -331,7 +331,7 @@ const char* const g_strings[StrId_Max][16] = [StrId_ThemeNotApplied] = { STR_EN("Theme cannot be applied because an error occurred."), - STR_ES("El temático no se puede aplicar porque se ha producido un error."), + STR_ES("El tema no se pudo aplicar porque se ha producido un error."), STR_JP("エラーが発生したため、テーマを適用できませんでした。"), STR_KO("오류가 발생 했기 때문에 테마를 적용할 수 없습니다."), STR_TW("由于发生错误, 无法应用主题。"), diff --git a/common/menu-list.c b/common/menu-list.c index 8c748c2..1babf0e 100644 --- a/common/menu-list.c +++ b/common/menu-list.c @@ -208,10 +208,8 @@ int themeMenuScan(const char* target) { menuSort(); menuEntry_s* me = menuCreateEntry(ENTRY_TYPE_THEME); - strncpy(me->path, "", sizeof(me->path)-1); - me->path[sizeof(me->path)-1] = 0; - if(me){ + if(me) { if(menuEntryLoad(me, "Default Theme", false));//Create Default theme Menu Entry menuAddEntryToFront(me); } diff --git a/common/menu.c b/common/menu.c index b8dd635..8401c5f 100644 --- a/common/menu.c +++ b/common/menu.c @@ -477,22 +477,25 @@ void menuLoop() { drawEntry(me, entry_start_x + menu->xPos, is_active); } + if(hbmenu_state == HBMENU_THEME_MENU) { + int getX = GetTextXCoordinate(interuiregular18, 1180, textGetString(StrId_ThemeMenu), 'r'); + DrawText(interuiregular18, getX, 0 + 47, themeCurrent.textColor, textGetString(StrId_ThemeMenu)); + } else { + int getX = GetTextXCoordinate(interuiregular18, 1180, textGetString(StrId_ThemeMenu), 'r'); + DrawText(interuiregular18, getX, 0 + 47, themeCurrent.textColor, textGetString(StrId_ThemeMenu)); + DrawText(fontscale7, getX - 40, 0 + 47, themeCurrent.textColor, themeCurrent.buttonMText); + } + if(active_entry != NULL) { if (active_entry->type == ENTRY_TYPE_THEME) { - int getX = GetTextXCoordinate(interuiregular18, 1180, textGetString(StrId_ThemeMenu), 'r'); - DrawText(interuiregular18, getX, 0 + 47, themeCurrent.textColor, textGetString(StrId_ThemeMenu)); DrawText(fontscale7, 1280 - 126 - 30 - 32, 720 - 47 + 24, themeCurrent.textColor, themeCurrent.buttonAText); DrawText(interuiregular18, 1280 - 90 - 30 - 32, 720 - 47 + 24, themeCurrent.textColor, textGetString(StrId_Actions_Apply)); } else if (active_entry->type != ENTRY_TYPE_FOLDER) { - //TODO: add minus button for theme menu - //drawImage(1280 - 126 - 30 - 32, 720 - 48, 32, 32, themeCurrent.buttonAImage, IMAGE_MODE_RGBA32); DrawText(fontscale7, 1280 - 126 - 30 - 32, 720 - 47 + 24, themeCurrent.textColor, themeCurrent.buttonAText);//Display the 'A' button from SharedFont. DrawText(interuiregular18, 1280 - 90 - 30 - 32, 720 - 47 + 24, themeCurrent.textColor, textGetString(StrId_Actions_Launch)); } else { - //TODO: add minus button for theme menu - //drawImage(1280 - 126 - 30 - 32, 720 - 48, 32, 32, themeCurrent.buttonAImage, IMAGE_MODE_RGBA32); DrawText(fontscale7, 1280 - 126 - 30 - 32, 720 - 47 + 24, themeCurrent.textColor, themeCurrent.buttonAText); DrawText(interuiregular18, 1280 - 90 - 30 - 32, 720 - 47 + 24, themeCurrent.textColor, textGetString(StrId_Actions_Open)); } diff --git a/common/theme.c b/common/theme.c index 5772153..e785d48 100644 --- a/common/theme.c +++ b/common/theme.c @@ -31,6 +31,8 @@ void themeStartup(ThemePreset preset) { .enableWaveBlending = 0, .buttonAText = "\uE0E0", .buttonBText = "\uE0E1", + .buttonPText = "\uE0F3", + .buttonMText = "\uE0F4", .hbmenuLogoImage = hbmenu_logo_light_bin }; @@ -47,6 +49,8 @@ void themeStartup(ThemePreset preset) { .enableWaveBlending = 0, .buttonAText = "\uE0A0", .buttonBText = "\uE0A1", + .buttonPText = "\uE0B3", + .buttonMText = "\uE0B4", .hbmenuLogoImage = hbmenu_logo_dark_bin }; @@ -59,7 +63,7 @@ void themeStartup(ThemePreset preset) { config_setting_t *theme = NULL; color_t text, frontWave, middleWave, backWave, background, highlight, separator, borderColor, borderTextColor; int waveBlending; - const char *AText, *BText; + const char *AText, *BText, *PText, *MText; bool good_cfg = false; if(themePath[0]!=0) @@ -106,6 +110,10 @@ void themeStartup(ThemePreset preset) { AText = themeDefault->buttonAText; if (!config_setting_lookup_string(theme, "buttonBText", &BText)) BText = themeDefault->buttonBText; + if (!config_setting_lookup_string(theme, "buttonPText", &PText)) + PText = themeDefault->buttonPText; + if (!config_setting_lookup_string(theme, "buttonMText", &MText)) + MText = themeDefault->buttonMText; themeCurrent = (theme_t) { .textColor = text, .frontWaveColor = frontWave, @@ -121,6 +129,8 @@ void themeStartup(ThemePreset preset) { }; strncpy(themeCurrent.buttonAText, AText, sizeof(themeCurrent.buttonAText)-1); strncpy(themeCurrent.buttonBText, BText, sizeof(themeCurrent.buttonBText)-1); + strncpy(themeCurrent.buttonPText, PText, sizeof(themeCurrent.buttonPText)-1); + strncpy(themeCurrent.buttonMText, MText, sizeof(themeCurrent.buttonMText)-1); } else { themeCurrent = *themeDefault; } diff --git a/common/theme.h b/common/theme.h index 2ab164b..5f6ec7e 100644 --- a/common/theme.h +++ b/common/theme.h @@ -17,8 +17,8 @@ typedef struct bool enableWaveBlending; char buttonAText[32]; char buttonBText[32]; - //const uint8_t *buttonAImage; - //const uint8_t *buttonBImage; + char buttonPText[32]; + char buttonMText[32]; const uint8_t *hbmenuLogoImage; } theme_t;