mirror of
https://github.com/libretro/RetroArch
synced 2025-03-28 19:20:35 +00:00
Group all action_start functions together
This commit is contained in:
parent
2ba0bbda38
commit
61f89e683e
367
settings_data.c
367
settings_data.c
@ -522,6 +522,193 @@ static int setting_data_bool_action_start_savestates(void *data)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_action_start_bind_device(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
g_settings.input.joypad_map[setting->index_offset] = setting->index_offset;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_bool_action_start_default(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.boolean = setting->default_value.boolean;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_string_dir_action_start_default(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.string = '\0';
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_analog_dpad_mode(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_default(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_libretro_device_type(void *data)
|
||||
{
|
||||
unsigned current_device, i, devices[128];
|
||||
const struct retro_controller_info *desc;
|
||||
unsigned types = 0;
|
||||
unsigned port = 0;
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||
|
||||
port = setting->index_offset;
|
||||
|
||||
devices[types++] = RETRO_DEVICE_NONE;
|
||||
devices[types++] = RETRO_DEVICE_JOYPAD;
|
||||
|
||||
/* Only push RETRO_DEVICE_ANALOG as default if we use an
|
||||
* older core which doesn't use SET_CONTROLLER_INFO. */
|
||||
if (!g_extern.system.num_ports)
|
||||
devices[types++] = RETRO_DEVICE_ANALOG;
|
||||
|
||||
desc = port < g_extern.system.num_ports ?
|
||||
&g_extern.system.ports[port] : NULL;
|
||||
if (desc)
|
||||
{
|
||||
for (i = 0; i < desc->num_types; i++)
|
||||
{
|
||||
unsigned id = desc->types[i].id;
|
||||
if (types < ARRAY_SIZE(devices) &&
|
||||
id != RETRO_DEVICE_NONE &&
|
||||
id != RETRO_DEVICE_JOYPAD)
|
||||
devices[types++] = id;
|
||||
}
|
||||
}
|
||||
|
||||
current_device = g_settings.input.libretro_device[port];
|
||||
|
||||
current_device = RETRO_DEVICE_JOYPAD;
|
||||
|
||||
g_settings.input.libretro_device[port] = current_device;
|
||||
pretro_set_controller_port_device(port, current_device);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_fraction_action_start_video_refresh_rate_auto(
|
||||
void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
g_extern.measure_data.frame_time_samples_count = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_fraction_action_start_default(
|
||||
void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.fraction = setting->default_value.fraction;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_linefeed(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_string_action_start_allow_input(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting || !driver.menu)
|
||||
return -1;
|
||||
|
||||
*setting->value.string = '\0';
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_bind_action_start(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting || !driver.menu)
|
||||
return -1;
|
||||
|
||||
struct retro_keybind *def_binds = (struct retro_keybind *)retro_keybinds_1;
|
||||
struct retro_keybind *keybind = (struct retro_keybind*)setting->value.keybind;
|
||||
|
||||
if (!keybind)
|
||||
return -1;
|
||||
|
||||
if (!g_extern.menu.bind_mode_keyboard)
|
||||
{
|
||||
keybind->joykey = NO_BTN;
|
||||
keybind->joyaxis = AXIS_NONE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (setting->index_offset)
|
||||
def_binds = (struct retro_keybind*)retro_keybinds_rest;
|
||||
|
||||
if (!def_binds)
|
||||
return -1;
|
||||
|
||||
keybind->key = def_binds[setting->bind_type - MENU_SETTINGS_BIND_BEGIN].key;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* setting_data_uint_action_toggle_analog_dpad_mode
|
||||
* @data : pointer to setting
|
||||
@ -887,16 +1074,6 @@ int load_content_action_toggle(void *data, unsigned action)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_action_start_bind_device(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
g_settings.input.joypad_map[setting->index_offset] = setting->index_offset;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int setting_data_action_ok_bind_all(void *data, unsigned action)
|
||||
@ -988,29 +1165,6 @@ static int setting_data_bool_action_ok_exit(void *data, unsigned action)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_bool_action_start_default(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.boolean = setting->default_value.boolean;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_string_dir_action_start_default(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.string = '\0';
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int setting_data_bool_action_ok_default(void *data, unsigned action)
|
||||
@ -1026,76 +1180,6 @@ static int setting_data_bool_action_ok_default(void *data, unsigned action)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_analog_dpad_mode(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_default(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_libretro_device_type(void *data)
|
||||
{
|
||||
unsigned current_device, i, devices[128];
|
||||
const struct retro_controller_info *desc;
|
||||
unsigned types = 0;
|
||||
unsigned port = 0;
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||
|
||||
port = setting->index_offset;
|
||||
|
||||
devices[types++] = RETRO_DEVICE_NONE;
|
||||
devices[types++] = RETRO_DEVICE_JOYPAD;
|
||||
|
||||
/* Only push RETRO_DEVICE_ANALOG as default if we use an
|
||||
* older core which doesn't use SET_CONTROLLER_INFO. */
|
||||
if (!g_extern.system.num_ports)
|
||||
devices[types++] = RETRO_DEVICE_ANALOG;
|
||||
|
||||
desc = port < g_extern.system.num_ports ?
|
||||
&g_extern.system.ports[port] : NULL;
|
||||
if (desc)
|
||||
{
|
||||
for (i = 0; i < desc->num_types; i++)
|
||||
{
|
||||
unsigned id = desc->types[i].id;
|
||||
if (types < ARRAY_SIZE(devices) &&
|
||||
id != RETRO_DEVICE_NONE &&
|
||||
id != RETRO_DEVICE_JOYPAD)
|
||||
devices[types++] = id;
|
||||
}
|
||||
}
|
||||
|
||||
current_device = g_settings.input.libretro_device[port];
|
||||
|
||||
current_device = RETRO_DEVICE_JOYPAD;
|
||||
|
||||
g_settings.input.libretro_device[port] = current_device;
|
||||
pretro_set_controller_port_device(port, current_device);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static int setting_data_uint_action_ok_default(void *data, unsigned action)
|
||||
@ -1111,18 +1195,6 @@ static int setting_data_uint_action_ok_default(void *data, unsigned action)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_fraction_action_start_video_refresh_rate_auto(
|
||||
void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
g_extern.measure_data.frame_time_samples_count = 0;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_fraction_action_ok_video_refresh_rate_auto(
|
||||
void *data, unsigned action)
|
||||
@ -1149,19 +1221,6 @@ static int setting_data_fraction_action_ok_video_refresh_rate_auto(
|
||||
}
|
||||
|
||||
|
||||
static int setting_data_fraction_action_start_default(
|
||||
void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.fraction = setting->default_value.fraction;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_fraction_action_ok_default(
|
||||
void *data, unsigned action)
|
||||
{
|
||||
@ -1176,17 +1235,6 @@ static int setting_data_fraction_action_ok_default(
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_start_linefeed(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_uint_action_ok_linefeed(void *data, unsigned action)
|
||||
{
|
||||
@ -1376,36 +1424,6 @@ rarch_setting_t setting_data_string_setting_options
|
||||
return result;
|
||||
}
|
||||
|
||||
static int setting_data_bind_action_start(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting || !driver.menu)
|
||||
return -1;
|
||||
|
||||
struct retro_keybind *def_binds = (struct retro_keybind *)retro_keybinds_1;
|
||||
struct retro_keybind *keybind = (struct retro_keybind*)setting->value.keybind;
|
||||
|
||||
if (!keybind)
|
||||
return -1;
|
||||
|
||||
if (!g_extern.menu.bind_mode_keyboard)
|
||||
{
|
||||
keybind->joykey = NO_BTN;
|
||||
keybind->joyaxis = AXIS_NONE;
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (setting->index_offset)
|
||||
def_binds = (struct retro_keybind*)retro_keybinds_rest;
|
||||
|
||||
if (!def_binds)
|
||||
return -1;
|
||||
|
||||
keybind->key = def_binds[setting->bind_type - MENU_SETTINGS_BIND_BEGIN].key;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_bind_action_ok(void *data, unsigned action)
|
||||
{
|
||||
@ -2950,17 +2968,6 @@ static void general_write_handler(void *data)
|
||||
#endif
|
||||
|
||||
|
||||
static int setting_data_string_action_start_allow_input(void *data)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting || !driver.menu)
|
||||
return -1;
|
||||
|
||||
*setting->value.string = '\0';
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int setting_data_string_action_ok_allow_input(void *data,
|
||||
unsigned action)
|
||||
|
Loading…
x
Reference in New Issue
Block a user