mirror of
https://github.com/CTCaer/RetroArch.git
synced 2025-02-24 13:40:35 +00:00
Don't pass menu_handle_t * state around
This commit is contained in:
parent
55844f06d7
commit
31b272f25a
@ -644,10 +644,7 @@ static int action_ok_shader_preset_load(const char *path,
|
||||
static int action_ok_cheat(const char *path,
|
||||
const char *label, unsigned type, size_t idx)
|
||||
{
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return -1;
|
||||
menu_input_key_start_line(menu, "Input Cheat",
|
||||
menu_input_key_start_line("Input Cheat",
|
||||
label, type, idx, menu_input_st_cheat_callback);
|
||||
return 0;
|
||||
}
|
||||
@ -655,10 +652,7 @@ static int action_ok_cheat(const char *path,
|
||||
static int action_ok_shader_preset_save_as(const char *path,
|
||||
const char *label, unsigned type, size_t idx)
|
||||
{
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return -1;
|
||||
menu_input_key_start_line(menu, "Preset Filename",
|
||||
menu_input_key_start_line("Preset Filename",
|
||||
label, type, idx, menu_input_st_string_callback);
|
||||
return 0;
|
||||
}
|
||||
@ -666,10 +660,7 @@ static int action_ok_shader_preset_save_as(const char *path,
|
||||
static int action_ok_cheat_file_save_as(const char *path,
|
||||
const char *label, unsigned type, size_t idx)
|
||||
{
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return -1;
|
||||
menu_input_key_start_line(menu, "Cheat Filename",
|
||||
menu_input_key_start_line("Cheat Filename",
|
||||
label, type, idx, menu_input_st_string_callback);
|
||||
return 0;
|
||||
}
|
||||
@ -677,10 +668,7 @@ static int action_ok_cheat_file_save_as(const char *path,
|
||||
static int action_ok_remap_file_save_as(const char *path,
|
||||
const char *label, unsigned type, size_t idx)
|
||||
{
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return -1;
|
||||
menu_input_key_start_line(menu, "Remapping Filename",
|
||||
menu_input_key_start_line("Remapping Filename",
|
||||
label, type, idx, menu_input_st_string_callback);
|
||||
return 0;
|
||||
}
|
||||
@ -4320,7 +4308,7 @@ static int action_iterate_custom_bind(const char *label, unsigned action)
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return -1;
|
||||
if (menu_input_bind_iterate(menu))
|
||||
if (menu_input_bind_iterate())
|
||||
menu_list_pop_stack(menu->menu_list);
|
||||
return 0;
|
||||
}
|
||||
@ -4330,7 +4318,7 @@ static int action_iterate_custom_bind_keyboard(const char *label, unsigned actio
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return -1;
|
||||
if (menu_input_bind_iterate_keyboard(menu))
|
||||
if (menu_input_bind_iterate_keyboard())
|
||||
menu_list_pop_stack(menu->menu_list);
|
||||
return 0;
|
||||
}
|
||||
|
@ -33,10 +33,11 @@
|
||||
#include "../input/input_joypad.h"
|
||||
#include "../input/input_remapping.h"
|
||||
|
||||
void menu_input_key_start_line(menu_handle_t *menu, const char *label,
|
||||
void menu_input_key_start_line(const char *label,
|
||||
const char *label_setting, unsigned type, unsigned idx,
|
||||
input_keyboard_line_complete_t cb)
|
||||
{
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return;
|
||||
|
||||
@ -48,8 +49,9 @@ void menu_input_key_start_line(menu_handle_t *menu, const char *label,
|
||||
menu->keyboard.buffer = input_keyboard_start_line(menu, cb);
|
||||
}
|
||||
|
||||
static void menu_input_key_end_line(menu_handle_t *menu)
|
||||
static void menu_input_key_end_line(void)
|
||||
{
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return;
|
||||
|
||||
@ -64,7 +66,7 @@ static void menu_input_key_end_line(menu_handle_t *menu)
|
||||
static void menu_input_search_callback(void *userdata, const char *str)
|
||||
{
|
||||
size_t idx;
|
||||
menu_handle_t *menu = (menu_handle_t*)userdata;
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
|
||||
if (!menu)
|
||||
return;
|
||||
@ -72,12 +74,12 @@ static void menu_input_search_callback(void *userdata, const char *str)
|
||||
if (str && *str && file_list_search(menu->menu_list->selection_buf, str, &idx))
|
||||
menu_navigation_set(idx, true);
|
||||
|
||||
menu_input_key_end_line(menu);
|
||||
menu_input_key_end_line();
|
||||
}
|
||||
|
||||
void menu_input_st_uint_callback(void *userdata, const char *str)
|
||||
{
|
||||
menu_handle_t *menu = (menu_handle_t*)userdata;
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
|
||||
if (!menu)
|
||||
return;
|
||||
@ -91,13 +93,13 @@ void menu_input_st_uint_callback(void *userdata, const char *str)
|
||||
*current_setting->value.unsigned_integer = strtoul(str, NULL, 0);
|
||||
}
|
||||
|
||||
menu_input_key_end_line(menu);
|
||||
menu_input_key_end_line();
|
||||
}
|
||||
|
||||
|
||||
void menu_input_st_string_callback(void *userdata, const char *str)
|
||||
{
|
||||
menu_handle_t *menu = (menu_handle_t*)userdata;
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
|
||||
if (!menu)
|
||||
return;
|
||||
@ -121,7 +123,7 @@ void menu_input_st_string_callback(void *userdata, const char *str)
|
||||
}
|
||||
}
|
||||
|
||||
menu_input_key_end_line(menu);
|
||||
menu_input_key_end_line();
|
||||
}
|
||||
|
||||
void menu_input_st_cheat_callback(void *userdata, const char *str)
|
||||
@ -141,26 +143,24 @@ void menu_input_st_cheat_callback(void *userdata, const char *str)
|
||||
cheat->cheats[cheat_index].state = true;
|
||||
}
|
||||
|
||||
menu_input_key_end_line(menu);
|
||||
menu_input_key_end_line();
|
||||
}
|
||||
|
||||
void menu_input_search_start(void)
|
||||
{
|
||||
if (!driver.menu)
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
if (!menu)
|
||||
return;
|
||||
|
||||
driver.menu->keyboard.display = true;
|
||||
driver.menu->keyboard.label = "Search: ";
|
||||
driver.menu->keyboard.buffer =
|
||||
menu->keyboard.display = true;
|
||||
menu->keyboard.label = "Search: ";
|
||||
menu->keyboard.buffer =
|
||||
input_keyboard_start_line(driver.menu, menu_input_search_callback);
|
||||
}
|
||||
|
||||
void menu_input_key_event(bool down, unsigned keycode,
|
||||
uint32_t character, uint16_t mod)
|
||||
{
|
||||
if (!driver.menu)
|
||||
return;
|
||||
|
||||
(void)down;
|
||||
(void)keycode;
|
||||
(void)mod;
|
||||
@ -347,10 +347,11 @@ bool menu_input_custom_bind_keyboard_cb(void *data, unsigned code)
|
||||
return (menu->binds.begin <= menu->binds.last);
|
||||
}
|
||||
|
||||
int menu_input_bind_iterate(menu_handle_t *menu)
|
||||
int menu_input_bind_iterate(void)
|
||||
{
|
||||
char msg[PATH_MAX_LENGTH];
|
||||
struct menu_bind_state binds;
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
|
||||
if (!menu)
|
||||
return 1;
|
||||
@ -392,12 +393,16 @@ int menu_input_bind_iterate(menu_handle_t *menu)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int menu_input_bind_iterate_keyboard(menu_handle_t *menu)
|
||||
int menu_input_bind_iterate_keyboard(void)
|
||||
{
|
||||
char msg[PATH_MAX_LENGTH];
|
||||
int64_t current;
|
||||
int timeout = 0;
|
||||
bool timed_out = false;
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
|
||||
if (!menu)
|
||||
return -1;
|
||||
|
||||
if (driver.video_data && driver.menu_ctx &&
|
||||
driver.menu_ctx->render)
|
||||
@ -454,6 +459,10 @@ unsigned menu_input_frame(retro_input_t input, retro_input_t trigger_input)
|
||||
| (1ULL << RETRO_DEVICE_ID_JOYPAD_RIGHT)
|
||||
| (1ULL << RETRO_DEVICE_ID_JOYPAD_L)
|
||||
| (1ULL << RETRO_DEVICE_ID_JOYPAD_R);
|
||||
menu_handle_t *menu = menu_driver_resolve();
|
||||
|
||||
if (!menu)
|
||||
return 0;
|
||||
|
||||
driver.retro_ctx.poll_cb();
|
||||
|
||||
@ -465,16 +474,16 @@ unsigned menu_input_frame(retro_input_t input, retro_input_t trigger_input)
|
||||
if (!first_held)
|
||||
{
|
||||
first_held = true;
|
||||
driver.menu->delay.timer = initial_held ? 12 : 6;
|
||||
driver.menu->delay.count = 0;
|
||||
menu->delay.timer = initial_held ? 12 : 6;
|
||||
menu->delay.count = 0;
|
||||
}
|
||||
|
||||
if (driver.menu->delay.count >= driver.menu->delay.timer)
|
||||
if (menu->delay.count >= menu->delay.timer)
|
||||
{
|
||||
first_held = false;
|
||||
trigger_input |= input & input_repeat;
|
||||
driver.menu->scroll.acceleration =
|
||||
min(driver.menu->scroll.acceleration + 1, 64);
|
||||
menu->scroll.acceleration =
|
||||
min(menu->scroll.acceleration + 1, 64);
|
||||
}
|
||||
|
||||
initial_held = false;
|
||||
@ -483,12 +492,12 @@ unsigned menu_input_frame(retro_input_t input, retro_input_t trigger_input)
|
||||
{
|
||||
first_held = false;
|
||||
initial_held = true;
|
||||
driver.menu->scroll.acceleration = 0;
|
||||
menu->scroll.acceleration = 0;
|
||||
}
|
||||
|
||||
driver.menu->mouse.enable = g_settings.menu.mouse_enable;
|
||||
menu->mouse.enable = g_settings.menu.mouse_enable;
|
||||
|
||||
driver.menu->delay.count++;
|
||||
menu->delay.count++;
|
||||
|
||||
if (driver.block_input)
|
||||
trigger_input = 0;
|
||||
|
@ -47,7 +47,7 @@ typedef enum
|
||||
void menu_input_key_event(bool down, unsigned keycode, uint32_t character,
|
||||
uint16_t key_modifiers);
|
||||
|
||||
void menu_input_key_start_line(menu_handle_t *menu, const char *label,
|
||||
void menu_input_key_start_line(const char *label,
|
||||
const char *label_setting, unsigned type, unsigned idx,
|
||||
input_keyboard_line_complete_t cb);
|
||||
|
||||
@ -66,9 +66,9 @@ bool menu_input_poll_find_trigger(struct menu_bind_state *state,
|
||||
|
||||
bool menu_input_custom_bind_keyboard_cb(void *data, unsigned code);
|
||||
|
||||
int menu_input_bind_iterate(menu_handle_t *menu);
|
||||
int menu_input_bind_iterate(void);
|
||||
|
||||
int menu_input_bind_iterate_keyboard(menu_handle_t *menu);
|
||||
int menu_input_bind_iterate_keyboard(void);
|
||||
|
||||
unsigned menu_input_frame(retro_input_t input, retro_input_t trigger_state);
|
||||
|
||||
|
@ -978,7 +978,7 @@ static int setting_data_uint_action_ok_linefeed(void *data, unsigned action)
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
menu_input_key_start_line(driver.menu, setting->short_description,
|
||||
menu_input_key_start_line(setting->short_description,
|
||||
setting->name, 0, 0, menu_input_st_uint_callback);
|
||||
|
||||
return 0;
|
||||
@ -1046,10 +1046,10 @@ static int setting_data_string_action_ok_allow_input(void *data,
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
|
||||
if (!setting || !driver.menu)
|
||||
if (!setting)
|
||||
return -1;
|
||||
|
||||
menu_input_key_start_line(driver.menu, setting->short_description,
|
||||
menu_input_key_start_line(setting->short_description,
|
||||
setting->name, 0, 0, menu_input_st_string_callback);
|
||||
|
||||
return 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user