Files
Commonwealth-Online-Public/plugin/lib/commonlibf4/include/RE/M/MessageBoxMenu.h
T
2026-05-30 18:33:24 +12:00

37 lines
994 B
C++

#pragma once
#include "RE/B/BSTEvent.h"
#include "RE/G/GameMenuBase.h"
namespace RE
{
class MenuModeChangeEvent;
class MessageBoxData;
class __declspec(novtable) MessageBoxMenu :
public GameMenuBase, // 00
public BSTEventSink<MenuModeChangeEvent> // E0
{
public:
static constexpr auto RTTI{ RTTI::MessageBoxMenu };
static constexpr auto VTABLE{ VTABLE::MessageBoxMenu };
static constexpr auto MENU_NAME{ "MessageBoxMenu"sv };
// override
virtual void Call(const Params&) override; // 01
virtual void MapCodeObjectFunctions() override; // 02
virtual UI_MESSAGE_RESULTS ProcessMessage(UIMessage&) override; // 03
void ShowMessage()
{
using func_t = decltype(&MessageBoxMenu::ShowMessage);
static REL::Relocation<func_t> func{ ID::MessageBoxMenu::ShowMessage };
return func(this);
}
// members
MessageBoxData* currentMessage; // E8
};
static_assert(sizeof(MessageBoxMenu) == 0xF0);
}