17 class MenuModeChangeEvent;
18 class MenuOpenCloseEvent;
22 template <
class,
class =
void>
30 std::void_t<decltype(T::MENU_NAME)>> :
118 UIImpl::is_menu_ptr_v<T*>,
145 static_assert(
sizeof(
UI) == 0x1C8);
150 GetEventSource<T>()->AddEventSink(a_sink);
162 GetEventSource<T>()->RemoveEventSink(a_sink);
Definition: BSAtomic.h:51
Definition: BSTArray.h:377
Definition: BSTEvent.h:143
Definition: BSTEvent.h:19
Definition: BSTHashMap.h:21
std::uint32_t numPausesGame
Definition: UI.h:129
bool IsCursorHiddenWhenTopmost() const
std::uint16_t pad17E
Definition: UI.h:138
std::uint32_t pad1C4
Definition: UI.h:143
bool IsApplicationMenuOpen() const
bool IsMenuOpen(const std::string_view &a_menuName)
bool IsSavingAllowed() const
std::uint32_t numApplicationMenus
Definition: UI.h:135
BSTArray< GPtr< IMenu > > menuStack
Definition: UI.h:126
IMenu *() Create_t
Definition: UI.h:61
bool IsModalMenuOpen() const
bool closingAllMenus
Definition: UI.h:141
void RemoveEventSink(BSTEventSink< T > *a_sink)
Definition: UI.h:160
bool modal
Definition: UI.h:136
BSTHashMap< BSFixedString, UIMenuEntry > menuMap
Definition: UI.h:127
GPtr< T > GetMenu(const std::string_view &a_menuName)
Definition: UI.h:120
bool IsShowingMenus() const
std::uint32_t numCustomRendering
Definition: UI.h:134
std::uint32_t numAllowSaving
Definition: UI.h:132
std::uint32_t numDontHideCursorWhenTopmost
Definition: UI.h:133
bool IsPauseMenuDisabled() const
bool IsItemMenuOpen() const
bool menuSystemVisible
Definition: UI.h:140
static UI * GetSingleton()
void Register(std::string_view a_menuName, Create_t *a_creator)
BSTimer uiTimer
Definition: UI.h:139
GPtr< T > GetMenu()
Definition: UI.h:110
std::uint32_t numItemMenus
Definition: UI.h:130
std::uint16_t pad1C2
Definition: UI.h:142
GPtr< IMenu > GetMenu(const std::string_view &a_menuName)
std::uint32_t numDisablePauseMenu
Definition: UI.h:131
bool IsUsingCustomRendering() const
BSTEventSource< T > * GetEventSource()
Definition: UI.h:154
void ShowMenus(bool a_show)
GPtr< GFxMovieView > GetMovieView(const std::string_view &a_menuName)
std::uint8_t pad17D
Definition: UI.h:137
BSSpinLock processMessagesLock
Definition: UI.h:128
void AddEventSink(BSTEventSink< T > *a_sink)
Definition: UI.h:148
constexpr bool has_menu_name_v
Definition: UI.h:41
constexpr bool is_menu_ptr_v
Definition: UI.h:51
Definition: AbsorbEffect.h:6
Definition: ActorValueList.h:28
Definition: BSTSingleton.h:50