rodecomp/Source/UI/Text/UIBalloonText.h
ragnarok-clanker 1e071d5028 Decompile 8 functions in Source/UI/Edit/UIEditVariants.cpp, Source/Contents/CashEmotionMgr.cpp, ...
Batch #5346 by eAthena: 0 byte-identical, 8 confirmed by peer review.

- fn_10943 UIEditCtrl4::SetPlaceholder: logic confirmed by peer review
- fn_10944 UIEditCtrl4::SetPlaceholderColor: logic confirmed by peer review
- fn_10945 UISpriteButton::SetPalette: logic confirmed by peer review
- fn_10949 UIBalloonText::WrapText: logic confirmed by peer review
- fn_10954 UIRadioBtn::SetText: logic confirmed by peer review
- fn_10956 UIWhisperEditCtrl::SetText: logic confirmed by peer review
- fn_10957 UITransBalloonText::SetLine: logic confirmed by peer review
- fn_10958 UIEditCtrl3::Trim: logic confirmed by peer review

Peer-reviewed-by: willerthal, tayoba
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-30 11:47:58 +00:00

52 lines
1.2 KiB
C++

#ifndef RAGNAROK_SOURCE_UI_TEXT_UIBALLOONTEXT_H
#define RAGNAROK_SOURCE_UI_TEXT_UIBALLOONTEXT_H
#include "UI/Window/UIWindow.h"
#include <string>
#include <vector>
class FontCache;
struct TextLocale;
struct ItemDescriptions;
struct BalloonTextContext {
FontCache& fonts;
const TextLocale& locale;
const unsigned short& codePage;
ItemDescriptions& items;
};
class UIBalloonText : public UIWindow {
public:
UIBalloonText(UIWindowContext& windows, BalloonTextContext& text);
~UIBalloonText() override;
bool CanHitTest() override;
void Slot19() override;
void Paint() override;
void SetText(const char* text, int width);
void WrapText(const char* text, int width);
void FitText();
void SetFontHeight(int height);
protected:
/* 007C */ unsigned char unknown_007C;
/* 0080 */ int m_fontHeight;
/* 0084 */ std::vector<std::string> m_lines;
/* 0090 */ std::uint32_t m_textColor;
/* 0094 */ std::uint32_t m_outlineColor;
/* 0098 */ std::uint16_t unknown_0098;
/* 009A */ std::uint16_t m_fontMode;
/* 009C */ unsigned char m_richText;
BalloonTextContext* m_textContext;
};
extern int g_nameBalloonFontHeight;
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(UIBalloonText) == 168);
#endif
#endif