rodecomp/Source/UI/Window/WindowDialogs.h
ragnarok-clanker bb8dcc6fcd Decompile fn_17151 (WindowDialogs::RunEmailAddress)
Batch #9006 by KWDev: 0 byte-identical, 1 confirmed by peer review.

- fn_17151 WindowDialogs::RunEmailAddress: logic confirmed by peer review

Peer-reviewed-by: eAthena, System4z, pedrao
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-31 23:53:44 +00:00

51 lines
1.3 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);
void AddMessageBox(
const char* text, int type, bool defaultAccept, int unused, int timeout, const char* caption, int width, int height, const char* icon, bool track
);
int RunModal(UIWindow* window);
int RunEmailAddress();
};
extern int g_dialogKeyboardEnabled;
extern int g_dialogKeyboardBlocked;
#endif