rodecomp/Source/UI/Window/WindowDialogs.h
ragnarok-clanker e9b6837e97 Decompile 2 functions in Source/UI/Buttons/UIBasicButton.cpp, Source/UI/Buttons/UIBitmapButton.cpp, ...
Batch #1102 by ragnarok-clanker: 2 byte-identical, 0 confirmed by peer review.

- fn_16953 UIWindow::Root: byte-identical
- fn_16983 UIWindow::Invalidate: byte-identical (already on main)

Merged automatically: every function is byte-identical to the original.
2026-10-27 18:04:02 +00:00

46 lines
1 KiB
C++

#ifndef RAGNAROK_SOURCE_UI_WINDOW_WINDOWDIALOGS_H
#define RAGNAROK_SOURCE_UI_WINDOW_WINDOWDIALOGS_H
#include <deque>
#include <map>
#include <set>
class UIWindow;
class UIMessageBox;
struct UIWindowContext;
struct UIFrameContext;
struct UIMessageBoxContext;
class ModalFramePump {
public:
virtual void Frame() = 0;
protected:
~ModalFramePump() = default;
};
struct WindowDialogs {
UIWindowContext& windows;
UIFrameContext& frames;
UIMessageBoxContext& dialog;
int& result;
std::set<UIWindow*>& suspendedRoots;
UIWindow*& capture;
UIWindow*& input;
std::deque<UIWindow*>& modal;
int& alternateResult;
UIMessageBox*& latest;
ModalFramePump*& mode;
const bool& suppressed;
const int& immediate;
const std::map<int, int>& frameOptions;
UIWindow* Top() const;
void RestoreInput();
int Confirm(const char* text, int type, bool defaultAccept, bool replace, int timeout, const char* caption, int width, int height, unsigned char protect);
};
extern int g_dialogKeyboardEnabled;
extern int g_dialogKeyboardBlocked;
#endif