mirror of
https://github.com/libretro/RetroArch
synced 2025-02-11 06:40:48 +00:00
(Menu) Refactor Netplay TCP/UDP Port setting
This commit is contained in:
parent
c07dcb2dc2
commit
c45a063b99
@ -519,6 +519,9 @@ static const bool menu_show_start_screen = true;
|
|||||||
// Log level for libretro cores (GET_LOG_INTERFACE).
|
// Log level for libretro cores (GET_LOG_INTERFACE).
|
||||||
static const unsigned libretro_log_level = 0;
|
static const unsigned libretro_log_level = 0;
|
||||||
|
|
||||||
|
#ifndef RARCH_DEFAULT_PORT
|
||||||
|
#define RARCH_DEFAULT_PORT 55435
|
||||||
|
#endif
|
||||||
|
|
||||||
////////////////////
|
////////////////////
|
||||||
// Keybinds, Joypad
|
// Keybinds, Joypad
|
||||||
|
@ -336,8 +336,9 @@ static void menu_common_entries_init(menu_handle_t *menu, unsigned menu_type)
|
|||||||
file_list_push(menu->selection_buf, "", "netplay_spectator_mode_enable", MENU_SETTINGS_NETPLAY_SPECTATOR_MODE_ENABLE, 0);
|
file_list_push(menu->selection_buf, "", "netplay_spectator_mode_enable", MENU_SETTINGS_NETPLAY_SPECTATOR_MODE_ENABLE, 0);
|
||||||
#ifdef HAVE_NETPLAY
|
#ifdef HAVE_NETPLAY
|
||||||
file_list_push(menu->selection_buf, "Host IP Address", "", MENU_SETTINGS_NETPLAY_HOST_IP_ADDRESS, 0);
|
file_list_push(menu->selection_buf, "Host IP Address", "", MENU_SETTINGS_NETPLAY_HOST_IP_ADDRESS, 0);
|
||||||
file_list_push(menu->selection_buf, "TCP/UDP Port", "", MENU_SETTINGS_NETPLAY_TCP_UDP_PORT, 0);
|
|
||||||
#endif
|
#endif
|
||||||
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "netplay_tcp_udp_port")))
|
||||||
|
file_list_push(menu->selection_buf, "", "netplay_tcp_udp_port", MENU_SETTINGS_NETPLAY_TCP_UDP_PORT, 0);
|
||||||
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "netplay_delay_frames")))
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "netplay_delay_frames")))
|
||||||
file_list_push(menu->selection_buf, "", "netplay_delay_frames", MENU_SETTINGS_NETPLAY_DELAY_FRAMES, 0);
|
file_list_push(menu->selection_buf, "", "netplay_delay_frames", MENU_SETTINGS_NETPLAY_DELAY_FRAMES, 0);
|
||||||
break;
|
break;
|
||||||
@ -1972,35 +1973,44 @@ static void menu_common_setting_set_current_fraction(rarch_setting_t *setting, u
|
|||||||
|
|
||||||
static void menu_common_setting_set_current_unsigned_integer(rarch_setting_t *setting, unsigned action)
|
static void menu_common_setting_set_current_unsigned_integer(rarch_setting_t *setting, unsigned action)
|
||||||
{
|
{
|
||||||
switch (action)
|
if (!strcmp(setting->name, "netplay_tcp_udp_port"))
|
||||||
{
|
{
|
||||||
case MENU_ACTION_LEFT:
|
if (action == MENU_ACTION_OK)
|
||||||
if (*setting->value.unsigned_integer != setting->min)
|
menu_key_start_line(driver.menu, "TCP/UDP Port: ", netplay_port_callback);
|
||||||
*setting->value.unsigned_integer = *setting->value.unsigned_integer - setting->step;
|
else if (action == MENU_ACTION_START)
|
||||||
|
|
||||||
if (setting->enforce_minrange)
|
|
||||||
{
|
|
||||||
if (*setting->value.unsigned_integer < setting->min)
|
|
||||||
*setting->value.unsigned_integer = setting->min;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MENU_ACTION_RIGHT:
|
|
||||||
case MENU_ACTION_OK:
|
|
||||||
*setting->value.unsigned_integer = *setting->value.unsigned_integer + setting->step;
|
|
||||||
|
|
||||||
if (setting->enforce_maxrange)
|
|
||||||
{
|
|
||||||
if (*setting->value.unsigned_integer > setting->max)
|
|
||||||
*setting->value.unsigned_integer = setting->max;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MENU_ACTION_START:
|
|
||||||
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
switch (action)
|
||||||
|
{
|
||||||
|
case MENU_ACTION_LEFT:
|
||||||
|
if (*setting->value.unsigned_integer != setting->min)
|
||||||
|
*setting->value.unsigned_integer = *setting->value.unsigned_integer - setting->step;
|
||||||
|
|
||||||
|
if (setting->enforce_minrange)
|
||||||
|
{
|
||||||
|
if (*setting->value.unsigned_integer < setting->min)
|
||||||
|
*setting->value.unsigned_integer = setting->min;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_ACTION_RIGHT:
|
||||||
|
case MENU_ACTION_OK:
|
||||||
|
*setting->value.unsigned_integer = *setting->value.unsigned_integer + setting->step;
|
||||||
|
|
||||||
|
if (setting->enforce_maxrange)
|
||||||
|
{
|
||||||
|
if (*setting->value.unsigned_integer > setting->max)
|
||||||
|
*setting->value.unsigned_integer = setting->max;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_ACTION_START:
|
||||||
|
*setting->value.unsigned_integer = setting->default_value.unsigned_integer;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (setting->change_handler)
|
if (setting->change_handler)
|
||||||
setting->change_handler(setting);
|
setting->change_handler(setting);
|
||||||
}
|
}
|
||||||
@ -3000,11 +3010,6 @@ static unsigned menu_gx_resolutions[GX_RESOLUTIONS_LAST][2] = {
|
|||||||
static unsigned menu_current_gx_resolution = GX_RESOLUTIONS_640_480;
|
static unsigned menu_current_gx_resolution = GX_RESOLUTIONS_640_480;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef RARCH_DEFAULT_PORT
|
|
||||||
#define RARCH_DEFAULT_PORT 55435
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
static int menu_common_setting_set(unsigned id, unsigned action, rarch_setting_t *setting)
|
static int menu_common_setting_set(unsigned id, unsigned action, rarch_setting_t *setting)
|
||||||
{
|
{
|
||||||
struct retro_perf_counter **counters;
|
struct retro_perf_counter **counters;
|
||||||
@ -3672,12 +3677,6 @@ static int menu_common_setting_set(unsigned id, unsigned action, rarch_setting_t
|
|||||||
else if (action == MENU_ACTION_START)
|
else if (action == MENU_ACTION_START)
|
||||||
*g_extern.netplay_server = '\0';
|
*g_extern.netplay_server = '\0';
|
||||||
break;
|
break;
|
||||||
case MENU_SETTINGS_NETPLAY_TCP_UDP_PORT:
|
|
||||||
if (action == MENU_ACTION_OK)
|
|
||||||
menu_key_start_line(driver.menu, "TCP/UDP Port: ", netplay_port_callback);
|
|
||||||
else if (action == MENU_ACTION_START)
|
|
||||||
g_extern.netplay_port = RARCH_DEFAULT_PORT;
|
|
||||||
break;
|
|
||||||
#endif
|
#endif
|
||||||
case MENU_SETTINGS_NETPLAY_NICKNAME:
|
case MENU_SETTINGS_NETPLAY_NICKNAME:
|
||||||
if (action == MENU_ACTION_OK)
|
if (action == MENU_ACTION_OK)
|
||||||
@ -4098,9 +4097,6 @@ static void menu_common_setting_set_label(char *type_str,
|
|||||||
case MENU_SETTINGS_NETPLAY_HOST_IP_ADDRESS:
|
case MENU_SETTINGS_NETPLAY_HOST_IP_ADDRESS:
|
||||||
strlcpy(type_str, g_extern.netplay_server, type_str_size);
|
strlcpy(type_str, g_extern.netplay_server, type_str_size);
|
||||||
break;
|
break;
|
||||||
case MENU_SETTINGS_NETPLAY_TCP_UDP_PORT:
|
|
||||||
snprintf(type_str, type_str_size, "%d", g_extern.netplay_port ? g_extern.netplay_port : RARCH_DEFAULT_PORT);
|
|
||||||
break;
|
|
||||||
#endif
|
#endif
|
||||||
default:
|
default:
|
||||||
*type_str = '\0';
|
*type_str = '\0';
|
||||||
|
@ -73,9 +73,14 @@ static void menu_search_callback(void *userdata, const char *str)
|
|||||||
void netplay_port_callback(void *userdata, const char *str)
|
void netplay_port_callback(void *userdata, const char *str)
|
||||||
{
|
{
|
||||||
menu_handle_t *menu = (menu_handle_t*)userdata;
|
menu_handle_t *menu = (menu_handle_t*)userdata;
|
||||||
|
rarch_setting_t *current_setting = NULL;
|
||||||
|
rarch_setting_t *setting_data = (rarch_setting_t *)setting_data_get_list();
|
||||||
|
|
||||||
if (str && *str)
|
if (str && *str && setting_data)
|
||||||
g_extern.netplay_port = strtoul(str, NULL, 0);
|
{
|
||||||
|
if ((current_setting = (rarch_setting_t*)setting_data_find_setting(setting_data, "netplay_tcp_udp_port")))
|
||||||
|
*current_setting->value.unsigned_integer = strtoul(str, NULL, 0);
|
||||||
|
}
|
||||||
menu_key_end_line(menu);
|
menu_key_end_line(menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,7 +98,7 @@ void netplay_ipaddress_callback(void *userdata, const char *str)
|
|||||||
void netplay_nickname_callback(void *userdata, const char *str)
|
void netplay_nickname_callback(void *userdata, const char *str)
|
||||||
{
|
{
|
||||||
menu_handle_t *menu = (menu_handle_t*)userdata;
|
menu_handle_t *menu = (menu_handle_t*)userdata;
|
||||||
rarch_setting_t *current_setting;
|
rarch_setting_t *current_setting = NULL;
|
||||||
rarch_setting_t *setting_data = (rarch_setting_t *)setting_data_get_list();
|
rarch_setting_t *setting_data = (rarch_setting_t *)setting_data_get_list();
|
||||||
|
|
||||||
if (str && *str && setting_data)
|
if (str && *str && setting_data)
|
||||||
|
@ -626,7 +626,7 @@ struct global
|
|||||||
bool netplay_is_client;
|
bool netplay_is_client;
|
||||||
bool netplay_is_spectate;
|
bool netplay_is_spectate;
|
||||||
unsigned netplay_sync_frames;
|
unsigned netplay_sync_frames;
|
||||||
uint16_t netplay_port;
|
unsigned netplay_port;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Recording.
|
// Recording.
|
||||||
|
@ -1075,6 +1075,8 @@ static void general_read_handler(const void *data)
|
|||||||
#ifdef HAVE_NETPLAY
|
#ifdef HAVE_NETPLAY
|
||||||
else if (!strcmp(setting->name, "netplay_client_swap_input"))
|
else if (!strcmp(setting->name, "netplay_client_swap_input"))
|
||||||
*setting->value.boolean = g_settings.input.netplay_client_swap_input;
|
*setting->value.boolean = g_settings.input.netplay_client_swap_input;
|
||||||
|
else if (!strcmp(setting->name, "netplay_tcp_udp_port"))
|
||||||
|
*setting->value.unsigned_integer = g_extern.netplay_port;
|
||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_OVERLAY
|
#ifdef HAVE_OVERLAY
|
||||||
else if (!strcmp(setting->name, "input_overlay"))
|
else if (!strcmp(setting->name, "input_overlay"))
|
||||||
@ -1195,6 +1197,8 @@ static void general_read_handler(const void *data)
|
|||||||
*setting->value.boolean = g_extern.netplay_is_spectate;
|
*setting->value.boolean = g_extern.netplay_is_spectate;
|
||||||
else if (!strcmp(setting->name, "netplay_delay_frames"))
|
else if (!strcmp(setting->name, "netplay_delay_frames"))
|
||||||
*setting->value.unsigned_integer = g_extern.netplay_sync_frames;
|
*setting->value.unsigned_integer = g_extern.netplay_sync_frames;
|
||||||
|
else if (!strcmp(setting->name, "netplay_tcp_udp_port"))
|
||||||
|
*setting->value.unsigned_integer = g_extern.netplay_port;
|
||||||
#endif
|
#endif
|
||||||
else if (!strcmp(setting->name, "log_verbosity"))
|
else if (!strcmp(setting->name, "log_verbosity"))
|
||||||
*setting->value.boolean = g_extern.verbosity;
|
*setting->value.boolean = g_extern.verbosity;
|
||||||
@ -1858,6 +1862,7 @@ rarch_setting_t* setting_data_get_list(void)
|
|||||||
CONFIG_BOOL(g_extern.netplay_is_client, "netplay_mode", "Netplay Client Enable", false, GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler)
|
CONFIG_BOOL(g_extern.netplay_is_client, "netplay_mode", "Netplay Client Enable", false, GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler)
|
||||||
CONFIG_BOOL(g_extern.netplay_is_spectate, "netplay_spectator_mode_enable", "Netplay Spectator Enable", false, GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler)
|
CONFIG_BOOL(g_extern.netplay_is_spectate, "netplay_spectator_mode_enable", "Netplay Spectator Enable", false, GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler)
|
||||||
CONFIG_UINT(g_extern.netplay_sync_frames, "netplay_delay_frames", "Netplay Delay Frames", 0, GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler) WITH_RANGE(0, 10, 1, true, false)
|
CONFIG_UINT(g_extern.netplay_sync_frames, "netplay_delay_frames", "Netplay Delay Frames", 0, GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler) WITH_RANGE(0, 10, 1, true, false)
|
||||||
|
CONFIG_UINT(g_extern.netplay_port, "netplay_tcp_udp_port", "Netplay TCP/UDP Port", RARCH_DEFAULT_PORT, GROUP_NAME, SUBGROUP_NAME, general_write_handler, general_read_handler) WITH_RANGE(1, 99999, 1, true, true)
|
||||||
END_SUB_GROUP()
|
END_SUB_GROUP()
|
||||||
END_GROUP()
|
END_GROUP()
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user