(XMB) Add XMB menu layout - ability to switch between PS3 (Console)

and PSP (Handheld) layouts
This commit is contained in:
twinaphex 2018-04-24 07:38:53 +02:00
parent af351932bd
commit 265ae728dd
27 changed files with 154 additions and 7 deletions

View File

@ -305,6 +305,7 @@ static unsigned xmb_alpha_factor = 75;
static unsigned menu_font_color_red = 255;
static unsigned menu_font_color_green = 255;
static unsigned menu_font_color_blue = 255;
static unsigned xmb_layout = 0;
static unsigned xmb_icon_theme = XMB_ICON_THEME_MONOCHROME;
static unsigned xmb_theme = XMB_THEME_ELECTRIC_BLUE;
#if defined(HAVE_LAKKA) || defined(__arm__) || defined(__PPC64__) || defined(__ppc64__) || defined(__powerpc64__) || defined(__powerpc__) || defined(__ppc__) || defined(__POWERPC__)

View File

@ -1474,6 +1474,7 @@ static struct config_uint_setting *populate_settings_uint(settings_t *settings,
SETTING_UINT("menu_left_thumbnails", &settings->uints.menu_left_thumbnails, true, menu_left_thumbnails_default, false);
SETTING_UINT("xmb_alpha_factor", &settings->uints.menu_xmb_alpha_factor, true, xmb_alpha_factor, false);
SETTING_UINT("xmb_scale_factor", &settings->uints.menu_xmb_scale_factor, true, xmb_scale_factor, false);
SETTING_UINT("xmb_layout", &settings->uints.menu_xmb_layout, true, xmb_layout, false);
SETTING_UINT("xmb_theme", &settings->uints.menu_xmb_theme, true, xmb_icon_theme, false);
SETTING_UINT("xmb_menu_color_theme", &settings->uints.menu_xmb_color_theme, true, xmb_theme, false);
SETTING_UINT("menu_font_color_red", &settings->uints.menu_font_color_red, true, menu_font_color_red, false);

View File

@ -359,6 +359,7 @@ typedef struct settings
unsigned menu_entry_normal_color;
unsigned menu_entry_hover_color;
unsigned menu_title_color;
unsigned menu_xmb_layout;
unsigned menu_xmb_shader_pipeline;
unsigned menu_xmb_scale_factor;
unsigned menu_xmb_alpha_factor;

View File

@ -1893,6 +1893,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Show Video Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Show Netplay Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Menu Icon Theme")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -3053,6 +3055,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1758,6 +1758,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_SETTINGS,
"显示设置页")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"显示视频页")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"菜单图标主题")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2881,6 +2883,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1750,6 +1750,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_SETTINGS,
"顯示設定頁")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"顯示視訊頁")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"選單圖標主題")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2873,6 +2875,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1811,6 +1811,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Zeige Tab 'Video'")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Zeige Tab 'Netplay'")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Menü-Design")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2963,6 +2965,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Wähle ein Datenträger-Abbild, das eingelegt werden soll.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Stelle sicher, dass die Bildwiederholrate im Menü begrenzt wird.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Wähle ein anderes Thema für das Menü aus. Änderungen werden übernommen, nachdem Du das Programm neu gestartet hast.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1654,6 +1654,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_SETTINGS,
"Display Settings Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Display Video Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Menu Icon Theme")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2744,6 +2746,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -3233,6 +3233,8 @@ MSG_HASH(
MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Mostrar pestaña juego en red"
)
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(
MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Tema de iconos del menú"
@ -5125,6 +5127,8 @@ MSG_HASH(
MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Limita los FPS en el menú"
)
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(
MENU_ENUM_SUBLABEL_XMB_THEME,
"Seleccionar un tema de iconos diferente. Los cambios tendrán efecto al reiniciar"

View File

@ -1775,6 +1775,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_SETTINGS,
"Afficher l'onglet Paramètres")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Afficher l'onglet Vidéo")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Thème XMB")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2911,6 +2913,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1809,6 +1809,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Visualizza colonna Video")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Visualizza colonna Stanze Netplay ")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Icone del Menu")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2961,6 +2963,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Seleziona un'immagine disco da inserire")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Assicura che i fotogrammi siano attivi all'interno del menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Seleziona un tema diverso per l'icona. Le modifiche avranno effetto dopo il riavvio del programma.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1877,6 +1877,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"ビデオタブを表示")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"ネットプレイタブを表示")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"メニューのアイコンテーマ")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2985,6 +2987,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"ディスクイメージを追加する。")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1755,6 +1755,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"비디오 탭 보이기")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"넷플레이 탭 보이기")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"메뉴 아이콘 테마")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2875,6 +2877,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"삽입할 디스크 이미지를 선택하십시오.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"메뉴상에 있을 시에는 프레임 제한을 설정.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"다른 아이콘 테마 선택. 변경 내용은 프로그램을 다시 시작 후 적용됩니다.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1269,6 +1269,8 @@ MSG_HASH(MENU_ENUM_LABEL_CONTENT_SHOW_VIDEO,
"content_show_video")
MSG_HASH(MENU_ENUM_LABEL_CONTENT_SHOW_NETPLAY,
"content_show_netplay")
MSG_HASH(MENU_ENUM_LABEL_XMB_LAYOUT,
"xmb_layout")
MSG_HASH(MENU_ENUM_LABEL_XMB_THEME,
"xmb_theme")
MSG_HASH(MSG_BRINGING_UP_COMMAND_INTERFACE_ON_PORT,

View File

@ -1652,6 +1652,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_SETTINGS,
"Instellingentab weergeven")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Videotab weergeven")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Menu Icon Theme")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2748,6 +2750,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1897,6 +1897,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Pokaż kartę Wideo")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Pokaż kartę Gry Online")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Motyw ikon menu")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -3063,6 +3065,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Wybierz obraz dysku, który chcesz wstawić.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Upewnia się, że liczba klatek na sekundę jest ograniczona w menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Wybierz inny motyw dla ikony. Zmiany zaczną obowiązywać po ponownym uruchomieniu programu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -2395,6 +2395,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Exibir Aba de Netplay"
)
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Tema de Ícones do Menu"
)
@ -3822,6 +3824,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Certifica-se de que a taxa de quadros é controlada enquanto estiver dentro do menu."
)
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Selecionar um tema diferente para os ícones. As alterações terão efeito após reiniciar o programa."
)

View File

@ -1745,6 +1745,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_SETTINGS,
"Mostrar separador de definições")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Mostrar separador de vídeo")
MSG_HASH(MENU_ENUM_LABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Ícone do tema do menu")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2852,6 +2854,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Selecione uma imagem de disco para inserir.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Certifique-se de que a taxa de fotogramas atingida enquanto estiver dentro do menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Selecionar um tema diferente para este ícone. As alterações terão efeito após o reinício do programa.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1788,6 +1788,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Показать вкладку Видео")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Показать вкладку Сетевая игра")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Тема значка меню")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2926,6 +2928,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Выберите образ диска для загрузки.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Убедитесь, что частота кадров ограничена внутри меню.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Выберите другую тему для значка. Изменения заработают после перезагрузки.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1911,6 +1911,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Show Video Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Show Netplay Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Menu Icon Theme")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -3098,6 +3100,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -1773,6 +1773,8 @@ MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_VIDEO,
"Display Video Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_CONTENT_SHOW_NETPLAY,
"Display Netplay Tab")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
"Menu Layout")
MSG_HASH(MENU_ENUM_LABEL_VALUE_XMB_THEME,
"Menu Icon Theme")
MSG_HASH(MENU_ENUM_LABEL_VALUE_YES,
@ -2909,6 +2911,8 @@ MSG_HASH(MENU_ENUM_SUBLABEL_DISK_IMAGE_APPEND,
"Select a disk image to insert.")
MSG_HASH(MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE,
"Makes sure the framerate is capped while inside the menu.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_LAYOUT,
"Select a different layout for the XMB interface.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_THEME,
"Select a different theme for the icon. Changes will take effect after you restart the program.")
MSG_HASH(MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE,

View File

@ -922,6 +922,37 @@ static void menu_action_setting_disp_set_label_wifi_is_online(
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_ONLINE), len);
}
static void menu_action_setting_disp_set_label_xmb_layout(
file_list_t* list,
unsigned *w, unsigned type, unsigned i,
const char *label,
char *s, size_t len,
const char *entry_label,
const char *path,
char *s2, size_t len2)
{
settings_t *settings = config_get_ptr();
strlcpy(s2, path, len2);
*w = 19;
if (!settings)
return;
switch (settings->uints.menu_xmb_layout)
{
case 0:
strlcpy(s, "Auto", len);
break;
case 1:
strlcpy(s, "Console", len);
break;
case 2:
strlcpy(s, "Handheld", len);
break;
}
}
static void menu_action_setting_disp_set_label_xmb_menu_color_theme(
file_list_t* list,
unsigned *w, unsigned type, unsigned i,
@ -1915,6 +1946,10 @@ static int menu_cbs_init_bind_get_string_representation_compare_label(
BIND_ACTION_GET_VALUE(cbs,
menu_action_setting_disp_set_label_poll_type_behavior);
break;
case MENU_ENUM_LABEL_XMB_LAYOUT:
BIND_ACTION_GET_VALUE(cbs,
menu_action_setting_disp_set_label_xmb_layout);
break;
case MENU_ENUM_LABEL_XMB_THEME:
BIND_ACTION_GET_VALUE(cbs,
menu_action_setting_disp_set_label_xmb_theme);

View File

@ -298,6 +298,7 @@ default_sublabel_macro(action_bind_sublabel_disk_image_append,
default_sublabel_macro(action_bind_sublabel_disk_index, MENU_ENUM_SUBLABEL_DISK_INDEX)
default_sublabel_macro(action_bind_sublabel_disk_options, MENU_ENUM_SUBLABEL_DISK_OPTIONS)
default_sublabel_macro(action_bind_sublabel_menu_throttle_framerate, MENU_ENUM_SUBLABEL_MENU_ENUM_THROTTLE_FRAMERATE)
default_sublabel_macro(action_bind_sublabel_xmb_layout, MENU_ENUM_SUBLABEL_XMB_LAYOUT)
default_sublabel_macro(action_bind_sublabel_xmb_icon_theme, MENU_ENUM_SUBLABEL_XMB_THEME)
default_sublabel_macro(action_bind_sublabel_xmb_shadows_enable, MENU_ENUM_SUBLABEL_XMB_SHADOWS_ENABLE)
default_sublabel_macro(action_bind_sublabel_xmb_vertical_thumbnails, MENU_ENUM_SUBLABEL_XMB_VERTICAL_THUMBNAILS)
@ -833,6 +834,9 @@ int menu_cbs_init_bind_sublabel(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_XMB_VERTICAL_THUMBNAILS:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_xmb_vertical_thumbnails);
break;
case MENU_ENUM_LABEL_XMB_LAYOUT:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_xmb_layout);
break;
case MENU_ENUM_LABEL_XMB_THEME:
BIND_ACTION_SUBLABEL(cbs, action_bind_sublabel_xmb_icon_theme);
break;

View File

@ -3771,19 +3771,36 @@ static void xmb_layout_psp(xmb_handle_t *xmb, int width)
static void xmb_layout(xmb_handle_t *xmb)
{
unsigned width, height, i, current, end;
settings_t *settings = config_get_ptr();
file_list_t *selection_buf = menu_entries_get_selection_buf_ptr(0);
size_t selection = menu_navigation_get_selection();
bool use_ps3_layout = false;
video_driver_get_size(&width, &height);
use_ps3_layout = width > 320 && height > 240;
switch (settings->uints.menu_xmb_layout)
{
/* Automatic */
case 0:
{
bool use_ps3_layout = false;
use_ps3_layout = width > 320 && height > 240;
/* Mimic the layout of the PSP instead of the PS3 on tiny screens */
if (use_ps3_layout)
xmb_layout_ps3(xmb, width);
else
xmb_layout_psp(xmb, width);
/* Mimic the layout of the PSP instead of the PS3 on tiny screens */
if (use_ps3_layout)
xmb_layout_ps3(xmb, width);
else
xmb_layout_psp(xmb, width);
}
break;
/* PS3 */
case 1:
xmb_layout_ps3(xmb, width);
break;
/* PSP */
case 2:
xmb_layout_psp(xmb, width);
break;
}
#ifdef XMB_DEBUG
RARCH_LOG("[XMB] margin screen left: %.2f\n", xmb->margins_screen_left);

View File

@ -5356,6 +5356,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_MENU_FONT_COLOR_BLUE,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_XMB_LAYOUT,
PARSE_ONLY_UINT, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_XMB_THEME,
PARSE_ONLY_UINT, false);

View File

@ -5457,6 +5457,20 @@ static bool setting_append_list(
menu_settings_list_current_add_range(list, list_info, 0, 255, 1, true, true);
settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED);
CONFIG_UINT(
list, list_info,
&settings->uints.menu_xmb_layout,
MENU_ENUM_LABEL_XMB_LAYOUT,
MENU_ENUM_LABEL_VALUE_XMB_LAYOUT,
xmb_layout,
&group_info,
&subgroup_info,
parent_group,
general_write_handler,
general_read_handler);
menu_settings_list_current_add_range(list, list_info, 0, 2, 1, true, true);
menu_settings_list_current_add_cmd(list, list_info, CMD_EVENT_REINIT);
CONFIG_UINT(
list, list_info,
&settings->uints.menu_xmb_theme,

View File

@ -761,6 +761,7 @@ enum msg_hash_enums
MENU_LABEL(MENU_FONT_COLOR_GREEN),
MENU_LABEL(MENU_FONT_COLOR_BLUE),
MENU_LABEL(XMB_FONT),
MENU_LABEL(XMB_LAYOUT),
MENU_LABEL(XMB_THEME),
MENU_LABEL(XMB_MAIN_MENU_ENABLE_SETTINGS),
MENU_LABEL(XMB_MENU_COLOR_THEME),