16 class MenuModeChangeEvent;
17 class MenuOpenCloseEvent;
21 template <
class,
class =
void>
29 std::void_t<decltype(T::MENU_NAME)>> :
110 UIImpl::is_menu_ptr_v<T*>,
137 static_assert(
sizeof(
UI) == 0x1C8);
142 GetEventSource<T>()->AddEventSink(a_sink);
154 GetEventSource<T>()->RemoveEventSink(a_sink);
Definition: BSAtomic.h:92
Definition: BSTArray.h:378
Definition: BSTEvent.h:143
Definition: BSTEvent.h:19
Definition: BSTHashMap.h:21
std::uint32_t numPausesGame
Definition: UI.h:121
bool IsCursorHiddenWhenTopmost() const
std::uint16_t pad17E
Definition: UI.h:130
std::uint32_t pad1C4
Definition: UI.h:135
bool IsApplicationMenuOpen() const
bool IsMenuOpen(const std::string_view &a_menuName)
bool IsSavingAllowed() const
std::uint32_t numApplicationMenus
Definition: UI.h:127
BSTArray< GPtr< IMenu > > menuStack
Definition: UI.h:118
IMenu *() Create_t
Definition: UI.h:60
bool IsModalMenuOpen() const
bool closingAllMenus
Definition: UI.h:133
void RemoveEventSink(BSTEventSink< T > *a_sink)
Definition: UI.h:152
bool modal
Definition: UI.h:128
BSTHashMap< BSFixedString, UIMenuEntry > menuMap
Definition: UI.h:119
GPtr< T > GetMenu(const std::string_view &a_menuName)
Definition: UI.h:112
bool IsShowingMenus() const
std::uint32_t numCustomRendering
Definition: UI.h:126
std::uint32_t numAllowSaving
Definition: UI.h:124
std::uint32_t numDontHideCursorWhenTopmost
Definition: UI.h:125
bool IsPauseMenuDisabled() const
bool IsItemMenuOpen() const
bool menuSystemVisible
Definition: UI.h:132
static UI * GetSingleton()
BSTimer uiTimer
Definition: UI.h:131
void Register(const std::string_view &a_menuName, Create_t *a_creator)
GPtr< T > GetMenu()
Definition: UI.h:102
std::uint32_t numItemMenus
Definition: UI.h:122
std::uint16_t pad1C2
Definition: UI.h:134
GPtr< IMenu > GetMenu(const std::string_view &a_menuName)
std::uint32_t numDisablePauseMenu
Definition: UI.h:123
bool IsUsingCustomRendering() const
BSTEventSource< T > * GetEventSource()
Definition: UI.h:146
void ShowMenus(bool a_show)
GPtr< GFxMovieView > GetMovieView(const std::string_view &a_menuName)
std::uint8_t pad17D
Definition: UI.h:129
BSSpinLock processMessagesLock
Definition: UI.h:120
void AddEventSink(BSTEventSink< T > *a_sink)
Definition: UI.h:140
constexpr bool has_menu_name_v
Definition: UI.h:40
constexpr bool is_menu_ptr_v
Definition: UI.h:50
Definition: AbsorbEffect.h:6
Definition: EffectArchetypes.h:65
Definition: BSTSingleton.h:50