From c47e142bee7fd3c31c3155bfff2759eddfc1e37f Mon Sep 17 00:00:00 2001 From: ragnarok-clanker Date: Thu, 29 Oct 2026 22:48:37 +0000 Subject: [PATCH] Decompile 3 functions in Source/UI/Window/UIControl.cpp, Source/UI/Window/UIControl.h Batch #3569 by superintelligence: 0 byte-identical, 3 confirmed by peer review. - fn_14585 CUIEditBox::SetBackgroundColor: logic confirmed by peer review - fn_14587 CUIEditBox::SetBorderColor: logic confirmed by peer review - fn_14588 CUIEditBox::SetBorderWidth: logic confirmed by peer review Peer-reviewed-by: ragnarok-clanker, eAthena, alisonrag Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes). --- Source/UI/Window/UIControl.cpp | 21 +++++++++++++++++++++ Source/UI/Window/UIControl.h | 3 +++ 2 files changed, 24 insertions(+) diff --git a/Source/UI/Window/UIControl.cpp b/Source/UI/Window/UIControl.cpp index 8b05d022..7cc1656d 100644 --- a/Source/UI/Window/UIControl.cpp +++ b/Source/UI/Window/UIControl.cpp @@ -586,6 +586,27 @@ int CUIEditBox::SendMsg(UIWindow* sender, int message, std::intptr_t a, std::int return UIWindow::SendMsg(sender, message, a, b, c, d); } +// OFFSET: 0x009ED790 +// FUNCTION: fn_14585 +void CUIEditBox::SetBackgroundColor(std::uint32_t color) { + this->backgroundColor = color; + this->Invalidate(); +} + +// OFFSET: 0x009ED800 +// FUNCTION: fn_14587 +void CUIEditBox::SetBorderColor(std::uint32_t color) { + this->borderColor = color; + this->Invalidate(); +} + +// OFFSET: 0x009ED820 +// FUNCTION: fn_14588 +void CUIEditBox::SetBorderWidth(int width) { + this->borderWidth = width; + this->Invalidate(); +} + // OFFSET: 0x009EF860 // FUNCTION: fn_14649 void CUIImageButton::Paint() { diff --git a/Source/UI/Window/UIControl.h b/Source/UI/Window/UIControl.h index 4e3ff456..a82f7418 100644 --- a/Source/UI/Window/UIControl.h +++ b/Source/UI/Window/UIControl.h @@ -161,6 +161,9 @@ public: void Resize(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; + void SetBackgroundColor(std::uint32_t color); + void SetBorderColor(std::uint32_t color); + void SetBorderWidth(int width); /* 0080 */ std::uint32_t backgroundColor; /* 0084 */ std::uint32_t borderColor;