rodecomp/Source/UI/Text/UIStaticTextControl.h
ragnarok-clanker 749f9073f1 Decompile 4 functions in Source/UI/AdventureGuide/UIAdventureGuide.cpp, Source/UI/Text/UIStaticTextControl.h
Batch #11860 by Yommy: 4 byte-identical, 0 confirmed by peer review.

- fn_14316 AdventureGuide::CUIIntro::BindContents: byte-identical
- fn_14317 CUIAdventureGuide::OnSelectTab: byte-identical
- fn_14353 AdventureGuide::CUITab::SetSelected: byte-identical
- fn_14360 AdventureGuide::CUIMonsterInfo::SetMonster: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-11-05 05:06:06 +00:00

68 lines
2 KiB
C++

#ifndef RAGNAROK_SOURCE_UI_TEXT_UISTATICTEXTCONTROL_H
#define RAGNAROK_SOURCE_UI_TEXT_UISTATICTEXTCONTROL_H
#include "UI/Window/UIControl.h"
#include <cstddef>
#include <cstdint>
#include <string>
#include <string_view>
class CUIVScrollBar;
class CUIStaticText : public CUIControl {
public:
CUIStaticText();
void Slot28(int x, int y) override;
void Paint() override;
void UpdateText();
void SetAlign(int horizontal, int vertical);
void SetFitText(bool enabled);
void SetBold(unsigned char enabled);
void SetColor(std::uint32_t color);
void SetFontHeight(int height);
void SetFont(const std::string& name);
void SetOutline(bool enabled, std::uint32_t color);
void SetShadow(bool enabled, std::uint32_t color);
__declspec(noinline) void SetText(const char* value, std::size_t length);
// INLINED
void SetText(std::string_view value) {
this->SetText(value.data(), value.size());
}
void SetTooltip(const char* value, std::size_t length);
std::string& Tooltip() {
return *reinterpret_cast<std::string*>(this->unknown_00B0);
}
/* 0080 */ std::string text;
/* 0098 */ std::string unknown_0098;
/* 00B0 */ unsigned char unknown_00B0[0x10];
/* 00C0 */ CUIVScrollBar* scrollBar;
/* 00C4 */ unsigned char unknown_00C4[0x04];
/* 00C8 */ bool fitText;
/* 00CC */ int horizontalAlign;
/* 00D0 */ int verticalAlign;
/* 00D4 */ int fontIndex;
/* 00D8 */ int fontHeight;
/* 00DC */ unsigned char bold;
/* 00E0 */ std::uint32_t color;
/* 00E4 */ bool shadow;
/* 00E8 */ std::uint32_t shadowColor;
/* 00EC */ bool outline;
/* 00F0 */ std::uint32_t outlineColor;
/* 00F4 */ int textX;
/* 00F8 */ int textY;
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(CUIStaticText) == 0xFC);
static_assert(offsetof(CUIStaticText, unknown_0098) == 0x98);
static_assert(offsetof(CUIStaticText, scrollBar) == 0xC0);
static_assert(offsetof(CUIStaticText, color) == 0xE0);
static_assert(offsetof(CUIStaticText, outlineColor) == 0xF0);
#endif
#endif