(Menu) Add a setting to hide the shutdown option

This commit is contained in:
Jean-André Santoni 2018-06-23 12:01:13 +07:00
parent ab3d8979ea
commit 2a2e732a79
27 changed files with 116 additions and 7 deletions

View File

@ -277,6 +277,7 @@ static bool menu_show_configurations = true;
static bool menu_show_help = true;
static bool menu_show_quit_retroarch = true;
static bool menu_show_reboot = true;
static bool menu_show_shutdown = true;
#if defined(HAVE_LAKKA) || defined(VITA) || defined(_3DS)
static bool menu_show_core_updater = false;
#else

View File

@ -1366,6 +1366,7 @@ static struct config_bool_setting *populate_settings_bool(settings_t *settings,
SETTING_BOOL("menu_show_help", &settings->bools.menu_show_help, true, menu_show_help, false);
SETTING_BOOL("menu_show_quit_retroarch", &settings->bools.menu_show_quit_retroarch, true, menu_show_quit_retroarch, false);
SETTING_BOOL("menu_show_reboot", &settings->bools.menu_show_reboot, true, menu_show_reboot, false);
SETTING_BOOL("menu_show_shutdown", &settings->bools.menu_show_shutdown, true, menu_show_shutdown, false);
SETTING_BOOL("menu_show_online_updater", &settings->bools.menu_show_online_updater, true, menu_show_online_updater, false);
SETTING_BOOL("menu_show_core_updater", &settings->bools.menu_show_core_updater, true, menu_show_core_updater, false);
SETTING_BOOL("filter_by_current_core", &settings->bools.filter_by_current_core, false, false /* TODO */, false);

View File

@ -149,6 +149,7 @@ typedef struct settings
bool menu_show_help;
bool menu_show_quit_retroarch;
bool menu_show_reboot;
bool menu_show_shutdown;
bool menu_show_latency;
bool menu_show_rewind;
bool menu_show_overlays;

View File

@ -3329,6 +3329,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Show Reboot")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"القائمة السريعة")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3145,6 +3145,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Show Reboot")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Quick Menu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3137,6 +3137,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Show Reboot")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Quick Menu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3233,6 +3233,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Zeige 'Neu starten'")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Zeige/verstecke die Option 'Neu starten'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Spielmenü")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3010,6 +3010,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Show Reboot")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Quick Menu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -5758,6 +5758,14 @@ MSG_HASH(
MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Mostrar/ocultar la opción de 'Reiniciar'"
)
MSG_HASH(
MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown"
)
MSG_HASH(
MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option."
)
MSG_HASH(
MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Menú rápido"

View File

@ -3175,6 +3175,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Afficher Redémarrer")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Afficher/cacher l'option 'Redémarrer'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Afficher Éteindre")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Afficher/cacher l'option 'Éteindre'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Menu rapide")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3233,6 +3233,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Visualizza Riavvia")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Mostra/Nasconde l'opzione 'Riavvia'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Menu rapido")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3241,6 +3241,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"「再起動」を表示")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"クイックメニュー")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3136,6 +3136,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Show Reboot")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Quick Menu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -1437,6 +1437,8 @@ MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_QUIT_RETROARCH,
"menu_show_quit_retroarch")
MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_REBOOT,
"menu_show_reboot")
MSG_HASH(MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN,
"menu_show_shutdown")
MSG_HASH(MENU_ENUM_LABEL_QUICK_MENU_SHOW_TAKE_SCREENSHOT,
"quick_menu_show_take_screenshot")
MSG_HASH(MENU_ENUM_LABEL_QUICK_MENU_SHOW_SAVE_LOAD_STATE,

View File

@ -3012,6 +3012,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Toon Herstart")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Toon/verberg de 'Herstart' optie.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Snelmenu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3382,6 +3382,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Pokaż restart")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Pokaż/ukryj opcję 'Restart'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Szybkie menu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3404,6 +3404,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Exibir Reiniciar")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Exibir/ocultar a opção 'Reiniciar'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Menu Rápido")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3110,6 +3110,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Mostrar 'Reiniciar'")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Mostrar/esconder a opção 'Reiniciar'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Menu rápido")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3184,6 +3184,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Показать Перезагрузить")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Показать/скрыть настройку 'Перезагрузить'.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Быстрое меню")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3416,6 +3416,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Show Reboot")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Quick Menu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -3167,6 +3167,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_REBOOT,
"Show Reboot")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT,
"Show/hide the 'Reboot' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
"Show Shutdown")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN,
"Show/hide the 'Shutdown' option.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_QUICK_MENU_VIEWS_SETTINGS,
"Quick Menu")
MSG_HASH(MENU_ENUM_SUBLABEL_QUICK_MENU_VIEWS_SETTINGS,

View File

@ -361,6 +361,7 @@ default_sublabel_macro(action_bind_sublabel_menu_show_configurations,
default_sublabel_macro(action_bind_sublabel_menu_show_help, MENU_ENUM_SUBLABEL_MENU_SHOW_HELP)
default_sublabel_macro(action_bind_sublabel_menu_show_quit_retroarch, MENU_ENUM_SUBLABEL_MENU_SHOW_QUIT_RETROARCH)
default_sublabel_macro(action_bind_sublabel_menu_show_reboot, MENU_ENUM_SUBLABEL_MENU_SHOW_REBOOT)
default_sublabel_macro(action_bind_sublabel_menu_show_shutdown, MENU_ENUM_SUBLABEL_MENU_SHOW_SHUTDOWN)
default_sublabel_macro(action_bind_sublabel_menu_show_online_updater, MENU_ENUM_SUBLABEL_MENU_SHOW_ONLINE_UPDATER)
default_sublabel_macro(action_bind_sublabel_menu_show_core_updater, MENU_ENUM_SUBLABEL_MENU_SHOW_CORE_UPDATER)
default_sublabel_macro(action_bind_sublabel_menu_music_tab, MENU_ENUM_SUBLABEL_CONTENT_SHOW_MUSIC)
@ -934,6 +935,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_MENU_SHOW_REBOOT:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_reboot);
break;
case MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_shutdown);
break;
case MENU_ENUM_LABEL_MENU_SHOW_ONLINE_UPDATER:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_menu_show_online_updater);
break;

View File

@ -2153,8 +2153,11 @@ static int materialui_list_push(void *data, void *userdata,
menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry);
}
entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN;
menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry);
if (settings->bools.menu_show_shutdown)
{
entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN;
menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry);
}
#endif
info->need_push = true;
ret = 0;

View File

@ -5102,8 +5102,12 @@ static int xmb_list_push(void *data, void *userdata,
menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry);
}
entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN;
menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry);
if (settings->bools.menu_show_shutdown)
{
entry.enum_idx = MENU_ENUM_LABEL_SHUTDOWN;
menu_displaylist_ctl(DISPLAYLIST_SETTING_ENUM, &entry);
}
info->need_push = true;
ret = 0;
}

View File

@ -5268,6 +5268,10 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
MENU_ENUM_LABEL_MENU_SHOW_REBOOT,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_CONTENT_SHOW_SETTINGS,
PARSE_ONLY_BOOL, false);
@ -6821,9 +6825,10 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_REBOOT,
PARSE_ACTION, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_SHUTDOWN,
PARSE_ACTION, false);
if (settings->bools.menu_show_shutdown)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_SHUTDOWN,
PARSE_ACTION, false);
info->need_push = true;
}
break;

View File

@ -5937,6 +5937,21 @@ static bool setting_append_list(
general_write_handler,
general_read_handler,
SD_FLAG_NONE);
CONFIG_BOOL(
list, list_info,
&settings->bools.menu_show_shutdown,
MENU_ENUM_LABEL_MENU_SHOW_SHUTDOWN,
MENU_ENUM_LABEL_VALUE_MENU_SHOW_SHUTDOWN,
menu_show_shutdown,
MENU_ENUM_LABEL_VALUE_OFF,
MENU_ENUM_LABEL_VALUE_ON,
&group_info,
&subgroup_info,
parent_group,
general_write_handler,
general_read_handler,
SD_FLAG_NONE);
#endif
#ifdef HAVE_XMB

View File

@ -753,6 +753,7 @@ enum msg_hash_enums
MENU_LABEL(MENU_SHOW_HELP),
MENU_LABEL(MENU_SHOW_QUIT_RETROARCH),
MENU_LABEL(MENU_SHOW_REBOOT),
MENU_LABEL(MENU_SHOW_SHUTDOWN),
MENU_LABEL(MENU_SHOW_ONLINE_UPDATER),
MENU_LABEL(MENU_SHOW_CORE_UPDATER),
MENU_LABEL(MENU_ENABLE_KIOSK_MODE),