rodecomp/Source/UI/Text/UITransBalloonText.h
ragnarok-clanker 2800d0fdc0 Maintenance: Add mandatory field offset markers /* XXXX */ and assertions to UI headers
Batch #1065 by ragnarok-clanker: no function's compiled code changes; checked with 92 compiled unit(s), including every includer of Source/UI/Buttons/UIBmpTextButton.h, Source/UI/Chat/ChatNotifications.h, Source/UI/Cooldowns/CooldownDrawing.h, Source/UI/Cooldowns/CooldownState.h, Source/UI/Edit/ItemTagRetirement.h, Source/UI/Layout/SnapRectangle.h, Source/UI/Lists/UIListBoxEx.h, Source/UI/MiniPartyGrid.h, Source/UI/Party/UIAdvenPartyBoardWnd.h, Source/UI/Party/UIRequestJoinPartyMgr.h, Source/UI/Shop/PriceColor.h, Source/UI/Shortcuts/ShortcutCooldowns.h, Source/UI/Shortcuts/ShortcutGrid.h, Source/UI/Text/TextMarkup.h, Source/UI/Text/UITransBalloonText.h, Source/UI/Window/FrameTextCache.h, Source/UI/Window/UIWindow.h, Source/UI/Window/WindowAncestry.h, Source/UI/Window/WindowRegistration.h.
2026-10-27 13:55:58 +00:00

54 lines
1.7 KiB
C++

#ifndef RAGNAROK_SOURCE_UI_TEXT_UITRANSBALLOONTEXT_H
#define RAGNAROK_SOURCE_UI_TEXT_UITRANSBALLOONTEXT_H
#include "UI/Text/UIBalloonText.h"
#include <cstddef>
struct BalloonRectangle {
/* 00A0 */ int x;
/* 00A4 */ int y;
/* 00A8 */ int width;
/* 00AC */ int height;
/* 00B0 */ std::uint32_t unknown_00B0;
/* 00B4 */ std::uint32_t color;
/* 00B8 */ std::uint32_t unknown_00B8;
};
class UITransBalloonText : public UIBalloonText {
public:
UITransBalloonText(UIWindowContext& windows, BalloonTextContext& text);
~UITransBalloonText() override;
void Resize(int width, int height) override;
void Move(int x, int y) override;
bool Slot07(void* output) override;
void Slot15(int width, int height) override;
void Paint() override;
// INLINED
void SetRichText(unsigned char value) {
this->m_richText = value;
}
void SetColors(std::uint32_t text, std::uint32_t outline);
void SetBackground(std::uint32_t color);
private:
/* 00A0 */ BalloonRectangle m_rectangle;
/* 00BC */ std::vector<std::uint32_t> m_lineColors;
/* 00C8 */ std::uint32_t m_borderColor;
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(BalloonRectangle) == 0x1C);
static_assert(offsetof(BalloonRectangle, x) + 0xA0 == 0xA0);
static_assert(offsetof(BalloonRectangle, y) + 0xA0 == 0xA4);
static_assert(offsetof(BalloonRectangle, width) + 0xA0 == 0xA8);
static_assert(offsetof(BalloonRectangle, height) + 0xA0 == 0xAC);
static_assert(offsetof(BalloonRectangle, unknown_00B0) + 0xA0 == 0xB0);
static_assert(offsetof(BalloonRectangle, color) + 0xA0 == 0xB4);
static_assert(offsetof(BalloonRectangle, unknown_00B8) + 0xA0 == 0xB8);
static_assert(sizeof(UITransBalloonText) == 212);
#endif
#endif