CommonLibVR
CursorMenu.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/I/IMenu.h"
5 
6 namespace RE
7 {
8  // menuDepth = 13
9  // flags = kAllowSaving | kCustomRendering
10  // context = kNone
11  class CursorMenu :
12  public IMenu, // 00
13  public MenuEventHandler // 30
14  {
15  public:
16  inline static constexpr auto RTTI = RTTI_CursorMenu;
17  constexpr static std::string_view MENU_NAME = "Cursor Menu";
18 
19  ~CursorMenu() override; // 00
20 
21  // override (IMenu)
22  UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 04
23 
24  // override (MenuEventHandler)
25  bool CanProcess(InputEvent* a_event) override; // 01
26  bool ProcessThumbstick(ThumbstickEvent* a_event) override; // 03
27  bool ProcessMouseMove(MouseMoveEvent* a_event) override; // 04
28  private:
29  KEEP_FOR_RE()
30  };
31 #ifndef SKYRIMVR
32  static_assert(sizeof(CursorMenu) == 0x40);
33 #else
34  static_assert(sizeof(CursorMenu) == 0x50);
35 #endif
36 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: CursorMenu.h:14
bool ProcessThumbstick(ThumbstickEvent *a_event) override
bool ProcessMouseMove(MouseMoveEvent *a_event) override
static constexpr auto RTTI
Definition: CursorMenu.h:16
constexpr static std::string_view MENU_NAME
Definition: CursorMenu.h:17
UI_MESSAGE_RESULTS ProcessMessage(UIMessage &a_message) override
bool CanProcess(InputEvent *a_event) override
~CursorMenu() override
Definition: IMenu.h:64
Definition: InputEvent.h:25
Definition: MenuEventHandler.h:14
Definition: MouseMoveEvent.h:8
Definition: ThumbstickEvent.h:8
Definition: UIMessage.h:28
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_CursorMenu(static_cast< std::uint64_t >(688828))
UI_MESSAGE_RESULTS
Definition: IMenu.h:49