Add fullscreen resolution settings to the menu

This commit is contained in:
Monroe88 2017-05-01 19:19:33 -05:00
parent 08c7f63074
commit 0dee5b889d
6 changed files with 56 additions and 0 deletions

View File

@ -1093,6 +1093,10 @@ MSG_HASH(MENU_ENUM_LABEL_VIDEO_WINDOW_WIDTH,
"video_window_width")
MSG_HASH(MENU_ENUM_LABEL_VIDEO_WINDOW_HEIGHT,
"video_window_height")
MSG_HASH(MENU_ENUM_LABEL_VIDEO_FULLSCREEN_X,
"video_fullscreen_x")
MSG_HASH(MENU_ENUM_LABEL_VIDEO_FULLSCREEN_Y,
"video_fullscreen_y")
MSG_HASH(MENU_ENUM_LABEL_WIFI_DRIVER,
"wifi_driver")
MSG_HASH(MENU_ENUM_LABEL_WIFI_SETTINGS,

View File

@ -1659,6 +1659,10 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_WINDOW_WIDTH,
"Window Width")
MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_WINDOW_HEIGHT,
"Window Height")
MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_FULLSCREEN_X,
"Fullscreen Width")
MSG_HASH(MENU_ENUM_LABEL_VALUE_VIDEO_FULLSCREEN_Y,
"Fullscreen Height")
MSG_HASH(MENU_ENUM_LABEL_VALUE_WIFI_DRIVER,
"Wi-Fi Driver")
MSG_HASH(MENU_ENUM_LABEL_VALUE_WIFI_SETTINGS,
@ -2462,6 +2466,10 @@ MSG_HASH(MENU_ENUM_SUBLABEL_VIDEO_WINDOW_WIDTH,
"Set the custom width size for the display window. Leaving it at 0 will attempt to scale the window as large as possible.")
MSG_HASH(MENU_ENUM_SUBLABEL_VIDEO_WINDOW_HEIGHT,
"Set the custom height size for the display window. Leaving it at 0 will attempt to scale the window as large as possible.")
MSG_HASH(MENU_ENUM_SUBLABEL_VIDEO_FULLSCREEN_X,
"Set the custom width size for the non-windowed fullscreen mode. Leaving it at 0 will use the desktop resolution.")
MSG_HASH(MENU_ENUM_SUBLABEL_VIDEO_FULLSCREEN_Y,
"Set the custom height size for the non-windowed fullscreen mode. Leaving it at 0 will use the desktop resolution")
MSG_HASH(MENU_ENUM_SUBLABEL_VIDEO_MESSAGE_POS_X,
"Specify custom X axis position for onscreen text.")
MSG_HASH(MENU_ENUM_SUBLABEL_VIDEO_MESSAGE_POS_Y,

View File

@ -136,6 +136,8 @@ default_sublabel_macro(action_bind_sublabel_system_information, MENU_
default_sublabel_macro(action_bind_sublabel_quit_retroarch, MENU_ENUM_SUBLABEL_QUIT_RETROARCH)
default_sublabel_macro(action_bind_sublabel_video_window_width, MENU_ENUM_SUBLABEL_VIDEO_WINDOW_WIDTH)
default_sublabel_macro(action_bind_sublabel_video_window_height, MENU_ENUM_SUBLABEL_VIDEO_WINDOW_HEIGHT)
default_sublabel_macro(action_bind_sublabel_video_fullscreen_x, MENU_ENUM_SUBLABEL_VIDEO_FULLSCREEN_X)
default_sublabel_macro(action_bind_sublabel_video_fullscreen_y, MENU_ENUM_SUBLABEL_VIDEO_FULLSCREEN_Y)
default_sublabel_macro(action_bind_sublabel_video_message_pos_x, MENU_ENUM_SUBLABEL_VIDEO_MESSAGE_POS_X)
default_sublabel_macro(action_bind_sublabel_video_message_pos_y, MENU_ENUM_SUBLABEL_VIDEO_MESSAGE_POS_Y)
default_sublabel_macro(action_bind_sublabel_video_font_size, MENU_ENUM_SUBLABEL_VIDEO_FONT_SIZE)
@ -940,6 +942,12 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_VIDEO_WINDOW_HEIGHT:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_video_window_height);
break;
case MENU_ENUM_LABEL_VIDEO_FULLSCREEN_X:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_video_fullscreen_x);
break;
case MENU_ENUM_LABEL_VIDEO_FULLSCREEN_Y:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_video_fullscreen_y);
break;
case MENU_ENUM_LABEL_QUIT_RETROARCH:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_quit_retroarch);
break;

View File

@ -5160,6 +5160,12 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_WINDOWED_FULLSCREEN,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_FULLSCREEN_X,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_FULLSCREEN_Y,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_REFRESH_RATE,
PARSE_ONLY_FLOAT, false);

View File

@ -3191,6 +3191,34 @@ static bool setting_append_list(
general_read_handler,
SD_FLAG_NONE);
settings_data_list_current_add_flags(list, list_info, SD_FLAG_LAKKA_ADVANCED);
CONFIG_UINT(
list, list_info,
&settings->uints.video_fullscreen_x,
MENU_ENUM_LABEL_VIDEO_FULLSCREEN_X,
MENU_ENUM_LABEL_VALUE_VIDEO_FULLSCREEN_X,
fullscreen_x,
&group_info,
&subgroup_info,
parent_group,
general_write_handler,
general_read_handler);
menu_settings_list_current_add_range(list, list_info, 0, 7680, 8, true, true);
settings_data_list_current_add_flags(list, list_info, SD_FLAG_LAKKA_ADVANCED);
CONFIG_UINT(
list, list_info,
&settings->uints.video_fullscreen_y,
MENU_ENUM_LABEL_VIDEO_FULLSCREEN_Y,
MENU_ENUM_LABEL_VALUE_VIDEO_FULLSCREEN_Y,
fullscreen_y,
&group_info,
&subgroup_info,
parent_group,
general_write_handler,
general_read_handler);
menu_settings_list_current_add_range(list, list_info, 0, 4320, 8, true, true);
settings_data_list_current_add_flags(list, list_info, SD_FLAG_LAKKA_ADVANCED);
}
CONFIG_FLOAT(
list, list_info,

View File

@ -606,6 +606,8 @@ enum msg_hash_enums
MENU_LABEL(VIDEO_WINDOWED_FULLSCREEN),
MENU_LABEL(VIDEO_WINDOW_WIDTH),
MENU_LABEL(VIDEO_WINDOW_HEIGHT),
MENU_LABEL(VIDEO_FULLSCREEN_X),
MENU_LABEL(VIDEO_FULLSCREEN_Y),
MENU_LABEL(VIDEO_FORCE_SRGB_DISABLE),
MENU_LABEL(VIDEO_ROTATION),
MENU_LABEL(VIDEO_SCALE),