diff --git a/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_components.h b/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_components.h index c7336d3bad..ac6a991552 100644 --- a/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_components.h +++ b/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_components.h @@ -12,6 +12,14 @@ namespace rsx static constexpr u16 available_side_width = (overlay::virtual_width - 6 * menu_entry_margin) / 2; static constexpr u16 element_height = 25; + enum class page_navigation + { + stay, + back, + next, + exit + }; + struct home_menu_entry : horizontal_layout { public: diff --git a/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_main_menu.cpp b/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_main_menu.cpp index 797bdaaea2..78407b5bc0 100644 --- a/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_main_menu.cpp +++ b/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_main_menu.cpp @@ -15,6 +15,9 @@ namespace rsx { is_current_page = true; + m_message_box = std::make_shared(x, y, width, height); + m_config_changed = std::make_shared(g_backup_cfg.to_string() != g_cfg.to_string()); + std::unique_ptr resume = std::make_unique(get_localized_string(localized_string_id::HOME_MENU_RESUME)); add_item(resume, [](pad_button btn) -> page_navigation { diff --git a/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_message_box.cpp b/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_message_box.cpp new file mode 100644 index 0000000000..c840015618 --- /dev/null +++ b/rpcs3/Emu/RSX/Overlays/HomeMenu/overlay_home_menu_message_box.cpp @@ -0,0 +1,108 @@ +#include "stdafx.h" +#include "overlay_home_menu_message_box.h" +#include "Emu/System.h" +#include "Emu/system_config.h" + +namespace rsx +{ + namespace overlays + { + home_menu_message_box::home_menu_message_box(u16 x, u16 y, u16 width, u16 height) + : overlay_element() + { + back_color = {0.15f, 0.15f, 0.15f, 0.95f}; + + set_size(width, height); + set_pos(x, y); + + m_label = std::make_unique