mirror of
https://github.com/libretro/RetroArch.git
synced 2025-02-20 09:34:09 +00:00
(Menu) Refactor fastforward_ratio setting
This commit is contained in:
parent
dd55520b59
commit
eb374cbcec
@ -182,8 +182,11 @@ static void menu_common_entries_init(void *data, unsigned menu_type)
|
||||
*current_setting->value.boolean = g_settings.fps_show;
|
||||
file_list_push(menu->selection_buf, current_setting->short_description, MENU_SETTINGS_DEBUG_TEXT, 0);
|
||||
}
|
||||
file_list_push(menu->selection_buf, "Maximum Run Speed", MENU_SETTINGS_FASTFORWARD_RATIO, 0);
|
||||
|
||||
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "fastforward_ratio")))
|
||||
{
|
||||
*current_setting->value.fraction = g_settings.fastforward_ratio;
|
||||
file_list_push(menu->selection_buf, current_setting->short_description, MENU_SETTINGS_FASTFORWARD_RATIO, 0);
|
||||
}
|
||||
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "slowmotion_ratio")))
|
||||
{
|
||||
*current_setting->value.fraction = g_settings.slowmotion_ratio;
|
||||
@ -3885,27 +3888,8 @@ static int menu_common_setting_set(unsigned setting, unsigned action)
|
||||
}
|
||||
break;
|
||||
case MENU_SETTINGS_FASTFORWARD_RATIO:
|
||||
{
|
||||
bool clamp_value = false;
|
||||
if (action == MENU_ACTION_START)
|
||||
g_settings.fastforward_ratio = fastforward_ratio;
|
||||
else if (action == MENU_ACTION_LEFT)
|
||||
{
|
||||
g_settings.fastforward_ratio -= 0.1f;
|
||||
if (g_settings.fastforward_ratio < 0.95f) // Avoid potential rounding errors when going from 1.1 to 1.0.
|
||||
g_settings.fastforward_ratio = fastforward_ratio;
|
||||
else
|
||||
clamp_value = true;
|
||||
}
|
||||
else if (action == MENU_ACTION_RIGHT)
|
||||
{
|
||||
g_settings.fastforward_ratio += 0.1f;
|
||||
clamp_value = true;
|
||||
}
|
||||
|
||||
if (clamp_value)
|
||||
g_settings.fastforward_ratio = max(min(g_settings.fastforward_ratio, 10.0f), 1.0f);
|
||||
}
|
||||
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "fastforward_ratio")))
|
||||
menu_common_setting_set_current_fraction(current_setting, 0.1f, action, true, true);
|
||||
break;
|
||||
case MENU_SETTINGS_SLOWMOTION_RATIO:
|
||||
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "slowmotion_ratio")))
|
||||
@ -5109,7 +5093,7 @@ static void menu_common_setting_set_label(char *type_str, size_t type_str_size,
|
||||
if (g_settings.fastforward_ratio > 0.0f)
|
||||
snprintf(type_str, type_str_size, "%.1fx", g_settings.fastforward_ratio);
|
||||
else
|
||||
strlcpy(type_str, "No Limit", type_str_size);
|
||||
snprintf(type_str, type_str_size, "%.1fx (No Limit)", g_settings.fastforward_ratio);
|
||||
break;
|
||||
case MENU_SETTINGS_SLOWMOTION_RATIO:
|
||||
snprintf(type_str, type_str_size, "%.1fx", g_settings.slowmotion_ratio);
|
||||
|
@ -568,12 +568,7 @@ static void general_change_handler(const void *data)
|
||||
else if (!strcmp(setting->name, "slowmotion_ratio"))
|
||||
g_settings.slowmotion_ratio = max(min(*setting->value.fraction, 10.0f), 1.0f);
|
||||
else if (!strcmp(setting->name, "fastforward_ratio"))
|
||||
{
|
||||
if (*setting->value.fraction < 0.95f)
|
||||
g_settings.fastforward_ratio = fastforward_ratio;
|
||||
else
|
||||
g_settings.fastforward_ratio = max(min(*setting->value.fraction, 10.0f), 1.0f);
|
||||
}
|
||||
g_settings.fastforward_ratio = *setting->value.fraction;
|
||||
else if (!strcmp(setting->name, "autosave_interval"))
|
||||
{
|
||||
#ifdef HAVE_THREADS
|
||||
@ -857,7 +852,7 @@ rarch_setting_t* setting_data_get_list(void)
|
||||
#endif
|
||||
CONFIG_BOOL(g_settings.video.disable_composition, "video_disable_composition", "Window Compositing", disable_composition, GROUP_NAME, SUBGROUP_NAME, general_change_handler)
|
||||
CONFIG_BOOL(g_settings.pause_nonactive, "pause_nonactive", "Window Unfocus Pause", pause_nonactive, GROUP_NAME, SUBGROUP_NAME, general_change_handler)
|
||||
CONFIG_FLOAT(g_settings.fastforward_ratio, "fastforward_ratio", "Maximum Run Speed", fastforward_ratio, GROUP_NAME, SUBGROUP_NAME, general_change_handler)
|
||||
CONFIG_FLOAT(g_settings.fastforward_ratio, "fastforward_ratio", "Maximum Run Speed", fastforward_ratio, GROUP_NAME, SUBGROUP_NAME, general_change_handler) WITH_RANGE(-1, 10)
|
||||
CONFIG_FLOAT(g_settings.slowmotion_ratio, "slowmotion_ratio", "Slow-Motion Ratio", slowmotion_ratio, GROUP_NAME, SUBGROUP_NAME, general_change_handler) WITH_RANGE(0, 1)
|
||||
CONFIG_BOOL(g_settings.savestate_auto_index, "savestate_auto_index", "Save State Auto Index", savestate_auto_index, GROUP_NAME, SUBGROUP_NAME, general_change_handler)
|
||||
CONFIG_BOOL(g_settings.savestate_auto_save, "savestate_auto_save", "Auto Save State", savestate_auto_save, GROUP_NAME, SUBGROUP_NAME, general_change_handler)
|
||||
|
Loading…
x
Reference in New Issue
Block a user