mirror of
https://github.com/CTCaer/RetroArch.git
synced 2025-02-08 12:50:07 +00:00
(Menu) Start moving settings descriptions to settings_data.c
This commit is contained in:
parent
1c105faa8c
commit
f211b3a466
@ -580,9 +580,11 @@ static void menu_common_entries_init(void *data, unsigned menu_type)
|
|||||||
|
|
||||||
static int menu_info_screen_iterate(unsigned action)
|
static int menu_info_screen_iterate(unsigned action)
|
||||||
{
|
{
|
||||||
char msg[1024];
|
char msg[PATH_MAX];
|
||||||
|
rarch_setting_t *current_setting;
|
||||||
|
rarch_setting_t *setting_data = (rarch_setting_t *)setting_data_get_list();
|
||||||
|
|
||||||
if (!driver.menu)
|
if (!driver.menu || !setting_data)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (driver.video_data && driver.menu_ctx && driver.menu_ctx->render)
|
if (driver.video_data && driver.menu_ctx && driver.menu_ctx->render)
|
||||||
@ -591,77 +593,32 @@ static int menu_info_screen_iterate(unsigned action)
|
|||||||
switch (driver.menu->info_selection)
|
switch (driver.menu->info_selection)
|
||||||
{
|
{
|
||||||
case MENU_SETTINGS_WINDOW_COMPOSITING_ENABLE:
|
case MENU_SETTINGS_WINDOW_COMPOSITING_ENABLE:
|
||||||
snprintf(msg, sizeof(msg),
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "video_disable_composition")))
|
||||||
"-- Forcibly disable composition.\n"
|
setting_data_get_description(current_setting, msg, sizeof(msg));
|
||||||
"Only valid on Windows Vista/7 for now.");
|
|
||||||
break;
|
break;
|
||||||
case MENU_SETTINGS_LIBRETRO_LOG_LEVEL:
|
case MENU_SETTINGS_LIBRETRO_LOG_LEVEL:
|
||||||
snprintf(msg, sizeof(msg),
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "libretro_log_level")))
|
||||||
"-- Sets log level for libretro cores \n"
|
setting_data_get_description(current_setting, msg, sizeof(msg));
|
||||||
"(GET_LOG_INTERFACE). \n"
|
|
||||||
" \n"
|
|
||||||
" If a log level issued by a libretro \n"
|
|
||||||
" core is below libretro_log level, it \n"
|
|
||||||
" is ignored.\n"
|
|
||||||
" \n"
|
|
||||||
" DEBUG logs are always ignored unless \n"
|
|
||||||
" verbose mode is activated (--verbose).\n"
|
|
||||||
" \n"
|
|
||||||
" DEBUG = 0\n"
|
|
||||||
" INFO = 1\n"
|
|
||||||
" WARN = 2\n"
|
|
||||||
" ERROR = 3"
|
|
||||||
);
|
|
||||||
break;
|
break;
|
||||||
case MENU_SETTINGS_LOGGING_VERBOSITY:
|
case MENU_SETTINGS_LOGGING_VERBOSITY:
|
||||||
snprintf(msg, sizeof(msg),
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "log_verbosity")))
|
||||||
"-- Enable or disable verbosity level \n"
|
setting_data_get_description(current_setting, msg, sizeof(msg));
|
||||||
"of frontend.");
|
|
||||||
break;
|
break;
|
||||||
case MENU_SETTINGS_PERFORMANCE_COUNTERS_ENABLE:
|
case MENU_SETTINGS_PERFORMANCE_COUNTERS_ENABLE:
|
||||||
snprintf(msg, sizeof(msg),
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "perfcnt_enable")))
|
||||||
"-- Enable or disable frontend \n"
|
setting_data_get_description(current_setting, msg, sizeof(msg));
|
||||||
"performance counters.");
|
|
||||||
break;
|
break;
|
||||||
case MENU_SYSTEM_DIR_PATH:
|
case MENU_SYSTEM_DIR_PATH:
|
||||||
snprintf(msg, sizeof(msg),
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "system_directory")))
|
||||||
"-- System Directory. \n"
|
setting_data_get_description(current_setting, msg, sizeof(msg));
|
||||||
" \n"
|
|
||||||
"Sets the 'system' directory.\n"
|
|
||||||
"Implementations can query for this\n"
|
|
||||||
"directory to load BIOSes, \n"
|
|
||||||
"system-specific configs, etc.");
|
|
||||||
break;
|
break;
|
||||||
case MENU_START_SCREEN:
|
case MENU_START_SCREEN:
|
||||||
snprintf(msg, sizeof(msg),
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "rgui_show_start_screen")))
|
||||||
" -- Show startup screen in menu.\n"
|
setting_data_get_description(current_setting, msg, sizeof(msg));
|
||||||
"Is automatically set to false when seen\n"
|
|
||||||
"for the first time.\n"
|
|
||||||
" \n"
|
|
||||||
"This is only updated in config if\n"
|
|
||||||
"'Config Save On Exit' is set to true.\n");
|
|
||||||
break;
|
break;
|
||||||
case MENU_SETTINGS_CONFIG_SAVE_ON_EXIT:
|
case MENU_SETTINGS_CONFIG_SAVE_ON_EXIT:
|
||||||
snprintf(msg, sizeof(msg),
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "config_save_on_exit")))
|
||||||
" -- Flushes config to disk on exit.\n"
|
setting_data_get_description(current_setting, msg, sizeof(msg));
|
||||||
"Useful for menu as settings can be\n"
|
|
||||||
"modified. Overwrites the config.\n"
|
|
||||||
" \n"
|
|
||||||
"#include's and comments are not \n"
|
|
||||||
"preserved. \n"
|
|
||||||
" \n"
|
|
||||||
"By design, the config file is \n"
|
|
||||||
"considered immutable as it is \n"
|
|
||||||
"likely maintained by the user, \n"
|
|
||||||
"and should not be overwritten \n"
|
|
||||||
"behind the user's back."
|
|
||||||
#if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE)
|
|
||||||
"\nThis is not not the case on \n"
|
|
||||||
"consoles however, where \n"
|
|
||||||
"looking at the config file \n"
|
|
||||||
"manually isn't really an option."
|
|
||||||
#endif
|
|
||||||
);
|
|
||||||
break;
|
break;
|
||||||
case MENU_SETTINGS_OPEN_FILEBROWSER:
|
case MENU_SETTINGS_OPEN_FILEBROWSER:
|
||||||
snprintf(msg, sizeof(msg),
|
snprintf(msg, sizeof(msg),
|
||||||
@ -1481,7 +1438,10 @@ static int menu_info_screen_iterate(unsigned action)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (driver.video_data && driver.menu_ctx && driver.menu_ctx->render_messagebox)
|
if (driver.video_data && driver.menu_ctx && driver.menu_ctx->render_messagebox)
|
||||||
driver.menu_ctx->render_messagebox(msg);
|
{
|
||||||
|
if (*msg && msg[0] != '\0')
|
||||||
|
driver.menu_ctx->render_messagebox(msg);
|
||||||
|
}
|
||||||
|
|
||||||
if (action == MENU_ACTION_OK)
|
if (action == MENU_ACTION_OK)
|
||||||
file_list_pop(driver.menu->menu_stack, &driver.menu->selection_ptr);
|
file_list_pop(driver.menu->menu_stack, &driver.menu->selection_ptr);
|
||||||
|
@ -347,9 +347,9 @@ rarch_setting_t setting_data_group_setting(enum setting_type type, const char* n
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
rarch_setting_t setting_data_float_setting(const char* name, const char* description, float* target, float default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
rarch_setting_t setting_data_float_setting(const char* name, const char* short_description, float* target, float default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
||||||
{
|
{
|
||||||
rarch_setting_t result = { ST_FLOAT, name, sizeof(float), description, group, subgroup };
|
rarch_setting_t result = { ST_FLOAT, name, sizeof(float), short_description, group, subgroup };
|
||||||
result.change_handler = change_handler;
|
result.change_handler = change_handler;
|
||||||
result.read_handler = read_handler;
|
result.read_handler = read_handler;
|
||||||
result.value.fraction = target;
|
result.value.fraction = target;
|
||||||
@ -357,9 +357,9 @@ rarch_setting_t setting_data_float_setting(const char* name, const char* descrip
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
rarch_setting_t setting_data_bool_setting(const char* name, const char* description, bool* target, bool default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
rarch_setting_t setting_data_bool_setting(const char* name, const char* short_description, bool* target, bool default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
||||||
{
|
{
|
||||||
rarch_setting_t result = { ST_BOOL, name, sizeof(bool), description, group, subgroup };
|
rarch_setting_t result = { ST_BOOL, name, sizeof(bool), short_description, group, subgroup };
|
||||||
result.change_handler = change_handler;
|
result.change_handler = change_handler;
|
||||||
result.read_handler = read_handler;
|
result.read_handler = read_handler;
|
||||||
result.value.boolean = target;
|
result.value.boolean = target;
|
||||||
@ -367,9 +367,9 @@ rarch_setting_t setting_data_bool_setting(const char* name, const char* descript
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
rarch_setting_t setting_data_int_setting(const char* name, const char* description, int* target, int default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
rarch_setting_t setting_data_int_setting(const char* name, const char* short_description, int* target, int default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
||||||
{
|
{
|
||||||
rarch_setting_t result = { ST_INT, name, sizeof(int), description, group, subgroup };
|
rarch_setting_t result = { ST_INT, name, sizeof(int), short_description, group, subgroup };
|
||||||
result.change_handler = change_handler;
|
result.change_handler = change_handler;
|
||||||
result.read_handler = read_handler;
|
result.read_handler = read_handler;
|
||||||
result.value.integer = target;
|
result.value.integer = target;
|
||||||
@ -377,9 +377,9 @@ rarch_setting_t setting_data_int_setting(const char* name, const char* descripti
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
rarch_setting_t setting_data_uint_setting(const char* name, const char* description, unsigned int* target, unsigned int default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
rarch_setting_t setting_data_uint_setting(const char* name, const char* short_description, unsigned int* target, unsigned int default_value, const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
||||||
{
|
{
|
||||||
rarch_setting_t result = { ST_UINT, name, sizeof(unsigned int), description, group, subgroup };
|
rarch_setting_t result = { ST_UINT, name, sizeof(unsigned int), short_description, group, subgroup };
|
||||||
result.change_handler = change_handler;
|
result.change_handler = change_handler;
|
||||||
result.read_handler = read_handler;
|
result.read_handler = read_handler;
|
||||||
result.value.unsigned_integer = target;
|
result.value.unsigned_integer = target;
|
||||||
@ -388,11 +388,11 @@ rarch_setting_t setting_data_uint_setting(const char* name, const char* descript
|
|||||||
}
|
}
|
||||||
|
|
||||||
rarch_setting_t setting_data_string_setting(enum setting_type type,
|
rarch_setting_t setting_data_string_setting(enum setting_type type,
|
||||||
const char* name, const char* description, char* target,
|
const char* name, const char* short_description, char* target,
|
||||||
unsigned size, const char* default_value,
|
unsigned size, const char* default_value,
|
||||||
const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
const char *group, const char *subgroup, change_handler_t change_handler, change_handler_t read_handler)
|
||||||
{
|
{
|
||||||
rarch_setting_t result = { type, name, size, description, group, subgroup };
|
rarch_setting_t result = { type, name, size, short_description, group, subgroup };
|
||||||
|
|
||||||
result.change_handler = change_handler;
|
result.change_handler = change_handler;
|
||||||
result.read_handler = read_handler;
|
result.read_handler = read_handler;
|
||||||
@ -402,11 +402,11 @@ rarch_setting_t setting_data_string_setting(enum setting_type type,
|
|||||||
}
|
}
|
||||||
|
|
||||||
rarch_setting_t setting_data_bind_setting(const char* name,
|
rarch_setting_t setting_data_bind_setting(const char* name,
|
||||||
const char* description, struct retro_keybind* target,
|
const char* short_description, struct retro_keybind* target,
|
||||||
uint32_t index, const struct retro_keybind* default_value,
|
uint32_t index, const struct retro_keybind* default_value,
|
||||||
const char *group, const char *subgroup)
|
const char *group, const char *subgroup)
|
||||||
{
|
{
|
||||||
rarch_setting_t result = { ST_BIND, name, 0, description, group, subgroup };
|
rarch_setting_t result = { ST_BIND, name, 0, short_description, group, subgroup };
|
||||||
|
|
||||||
result.value.keybind = target;
|
result.value.keybind = target;
|
||||||
result.default_value.keybind = default_value;
|
result.default_value.keybind = default_value;
|
||||||
@ -414,6 +414,81 @@ rarch_setting_t setting_data_bind_setting(const char* name,
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void setting_data_get_description(const void *data, char *msg, size_t sizeof_msg)
|
||||||
|
{
|
||||||
|
const rarch_setting_t *setting = (const rarch_setting_t*)data;
|
||||||
|
|
||||||
|
if (!setting)
|
||||||
|
return;
|
||||||
|
|
||||||
|
if (!strcmp(setting->name, "video_disable_composition"))
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
"-- Forcibly disable composition.\n"
|
||||||
|
"Only valid on Windows Vista/7 for now.");
|
||||||
|
else if (!strcmp(setting->name, "libretro_log_level"))
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
"-- Sets log level for libretro cores \n"
|
||||||
|
"(GET_LOG_INTERFACE). \n"
|
||||||
|
" \n"
|
||||||
|
" If a log level issued by a libretro \n"
|
||||||
|
" core is below libretro_log level, it \n"
|
||||||
|
" is ignored.\n"
|
||||||
|
" \n"
|
||||||
|
" DEBUG logs are always ignored unless \n"
|
||||||
|
" verbose mode is activated (--verbose).\n"
|
||||||
|
" \n"
|
||||||
|
" DEBUG = 0\n"
|
||||||
|
" INFO = 1\n"
|
||||||
|
" WARN = 2\n"
|
||||||
|
" ERROR = 3"
|
||||||
|
);
|
||||||
|
else if (!strcmp(setting->name, "log_verbosity"))
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
"-- Enable or disable verbosity level \n"
|
||||||
|
"of frontend.");
|
||||||
|
else if (!strcmp(setting->name, "perfcnt_enable"))
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
"-- Enable or disable frontend \n"
|
||||||
|
"performance counters.");
|
||||||
|
else if (!strcmp(setting->name, "system_directory"))
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
"-- System Directory. \n"
|
||||||
|
" \n"
|
||||||
|
"Sets the 'system' directory.\n"
|
||||||
|
"Implementations can query for this\n"
|
||||||
|
"directory to load BIOSes, \n"
|
||||||
|
"system-specific configs, etc.");
|
||||||
|
else if (!strcmp(setting->name, "rgui_show_start_screen"))
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Show startup screen in menu.\n"
|
||||||
|
"Is automatically set to false when seen\n"
|
||||||
|
"for the first time.\n"
|
||||||
|
" \n"
|
||||||
|
"This is only updated in config if\n"
|
||||||
|
"'Config Save On Exit' is set to true.\n");
|
||||||
|
else if (!strcmp(setting->name, "config_save_on_exit"))
|
||||||
|
snprintf(msg, sizeof_msg,
|
||||||
|
" -- Flushes config to disk on exit.\n"
|
||||||
|
"Useful for menu as settings can be\n"
|
||||||
|
"modified. Overwrites the config.\n"
|
||||||
|
" \n"
|
||||||
|
"#include's and comments are not \n"
|
||||||
|
"preserved. \n"
|
||||||
|
" \n"
|
||||||
|
"By design, the config file is \n"
|
||||||
|
"considered immutable as it is \n"
|
||||||
|
"likely maintained by the user, \n"
|
||||||
|
"and should not be overwritten \n"
|
||||||
|
"behind the user's back."
|
||||||
|
#if defined(RARCH_CONSOLE) || defined(RARCH_MOBILE)
|
||||||
|
"\nThis is not not the case on \n"
|
||||||
|
"consoles however, where \n"
|
||||||
|
"looking at the config file \n"
|
||||||
|
"manually isn't really an option."
|
||||||
|
#endif
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
static void general_read_handler(const void *data)
|
static void general_read_handler(const void *data)
|
||||||
{
|
{
|
||||||
const rarch_setting_t *setting = (const rarch_setting_t*)data;
|
const rarch_setting_t *setting = (const rarch_setting_t*)data;
|
||||||
|
@ -116,6 +116,8 @@ rarch_setting_t setting_data_string_setting(enum setting_type type, const char*
|
|||||||
rarch_setting_t setting_data_bind_setting(const char* name, const char* description, struct retro_keybind* target, uint32_t index,
|
rarch_setting_t setting_data_bind_setting(const char* name, const char* description, struct retro_keybind* target, uint32_t index,
|
||||||
const struct retro_keybind* default_value, const char *group, const char *subgroup);
|
const struct retro_keybind* default_value, const char *group, const char *subgroup);
|
||||||
|
|
||||||
|
void setting_data_get_description(const void *data, char *msg, size_t msg_sizeof);
|
||||||
|
|
||||||
|
|
||||||
// These functions operate only on RetroArch's main settings list
|
// These functions operate only on RetroArch's main settings list
|
||||||
rarch_setting_t* setting_data_get_list(void);
|
rarch_setting_t* setting_data_get_list(void);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user