rodecomp/Source/UI/Buttons/UITextButton.h
ragnarok-clanker 1d3b73372d Decompile 13 functions in Source/UI/Gauges/UIPlayerGage.cpp, Source/UI/UIBarGraph.cpp, ...
Batch #5221 by Yommy: 0 byte-identical, 13 confirmed by peer review.

- fn_11568 UIRechargeGage::SetValues: logic confirmed by peer review
- fn_11569 UIPlayerGage::SetFourthValues: logic confirmed by peer review
- fn_11578 UIPlayerGage::SetFirstValues: logic confirmed by peer review
- fn_11579 UIPlayerGage::SetThirdValues: logic confirmed by peer review
- fn_11580 UIMonsterGage::SetMode: logic confirmed by peer review
- fn_11587 UIPlayerGage::SetSecondValues: logic confirmed by peer review
- fn_11593 UIBarGraphHomun::SetValues: logic confirmed by peer review
- fn_11594 UIBarGraphPlayer::SetValues: logic confirmed by peer review
- fn_11570 UIBmpRadioBtn::SetBitmap: logic confirmed by peer review
- fn_11573 UITextButton::CenterIn: logic confirmed by peer review
- fn_11590 UITVTextButton::SetLabel: logic confirmed by peer review
- fn_11592 UIBmpRadioBtn::AddText: logic confirmed by peer review
- fn_11595 UIItemTagOnMail::SetLines: logic confirmed by peer review

Peer-reviewed-by: eAthena, alisonrag
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
Adds to the build: Source/UI/Gauges/UIPlayerGage.cpp
2026-10-30 09:33:02 +00:00

49 lines
1.4 KiB
C++

#ifndef RAGNAROK_SOURCE_UI_BUTTONS_UITEXTBUTTON_H
#define RAGNAROK_SOURCE_UI_BUTTONS_UITEXTBUTTON_H
#include "UI/Buttons/UIButton.h"
#include <cstddef>
#include <string>
#include <vector>
class UITextButton : public UIButton {
friend class UITextViewer;
friend class UIMessageBox;
public:
UITextButton(UIWindowContext& windows, UIButtonContext& buttons);
~UITextButton() override;
void Paint() override;
void Slot27(int x, int y) override;
void Slot28(int x, int y) override;
void Slot31(int x, int y) override;
void Slot32(int x, int y) override;
void Slot33(int x, int y) override;
void Slot35(int value) override;
void Configure(const char* text, std::uint32_t color, int family, int height, unsigned char outline, unsigned char underline);
void ResizeToText();
void CenterIn(int width, int height);
const std::string& GetLine(std::size_t index) const;
protected:
/* 00B4 */ std::uint32_t m_color;
/* 00B8 */ std::uint32_t m_normalColor;
/* 00BC */ std::uint32_t m_hoverColor;
/* 00C0 */ std::uint32_t m_outlineColor;
/* 00C4 */ unsigned char m_outline;
/* 00C5 */ unsigned char m_underline;
/* 00C8 */ int m_height;
/* 00CC */ int m_family;
/* 00D0 */ int m_value;
/* 00D4 */ std::string m_text;
/* 00EC */ std::vector<std::string> m_lines;
};
extern std::string g_emptyString;
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(UITextButton) == 256);
#endif
#endif