rodecomp/Source/Client/Input/TextInputBuffer.h
ragnarok-clanker 1166cbf0fd Decompile fn_17774 (SubACDD10)
Batch #1239 by ragnarok-clanker: 1 byte-identical, 0 confirmed by peer review.

- fn_17774 SubACDD10: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-27 22:51:21 +00:00

62 lines
1.5 KiB
C++

#ifndef RAGNAROK_SOURCE_CLIENT_INPUT_TEXTINPUTBUFFER_H
#define RAGNAROK_SOURCE_CLIENT_INPUT_TEXTINPUTBUFFER_H
#include <string>
#include <windows.h>
class UIWindow;
class WindowManagerWindows;
class TextInputSuggestions {
public:
virtual void Update(const char* text) = 0;
protected:
~TextInputSuggestions() = default;
};
struct TextInputBuffer {
std::string& text;
int& cursor;
int& anchor;
std::string& composition;
std::string& candidate;
int& compositionState;
HWND& window;
const bool& suggestionsEnabled;
UIWindow* const& focused;
UIWindow* const& chatInput;
const bool& chatOpen;
TextInputSuggestions& suggestions;
void CancelComposition();
void DeleteSelection();
void Insert(const char* value);
void Select(int anchor, int cursor);
void CopyDisplayText(std::string& output) const;
void Selection(int& anchor, int& cursor) const;
void SelectionRange(int& begin, int& end) const;
void RefreshComposition(unsigned codePage);
void CopySelection(bool password);
void Paste(UIWindow* blockedFocus, WindowManagerWindows& windows);
void MoveBack(unsigned codePage);
void MoveForward(unsigned codePage);
void SetFlag8C(unsigned char value);
void AdvanceCursor(int delta);
void RetreatCursor(int delta);
void Character(unsigned value, LPARAM unused, unsigned codePage);
void KeyDown(
unsigned key, LPARAM unused, unsigned codePage, bool password, UIWindow* blockedPasteFocus, WindowManagerWindows& windows, UIWindow* const& chatArrows
);
};
void __stdcall SubACDD10();
#endif