rodecomp/Source/UI/Menu/UIMenuIconWnd.cpp
ragnarok-clanker e910b8eb1c Decompile 3 functions in Source/UI/UIBartermarketWnd.cpp, Source/UI/UIBartermarketWnd.h, ...
Batch #5320 by eAthena: 0 byte-identical, 3 confirmed by peer review.

- fn_10599 UIExpandedBartermarketWnd::SendMsg: logic confirmed by peer review
- fn_10613 UIMenuIconWnd::HitTest: logic confirmed by peer review
- fn_10615 UIMenuIconWnd::Move: logic confirmed by peer review

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

63 lines
1.5 KiB
C++

#include "UI/Menu/UIMenuIconWnd.h"
#include "UI/Layout/WindowSnapping.h"
// GLOBAL: gl_24966
static bool s_menuIconExpanded;
// OFFSET: 0x0084A880
// FUNCTION: fn_10613
UIWindow* UIMenuIconWnd::HitTest(int x, int y) {
if (!this->CanHitTest() || this->geometry.visible == 0 || x < this->geometry.x) {
return nullptr;
}
if (!s_menuIconExpanded) {
if (x >= this->geometry.x + this->geometry.width || y < this->geometry.y || y >= this->geometry.y + this->unknown_00D0->geometry.height) {
return nullptr;
}
if (this->unknown_00C4.size() == 0) {
return this->unknown_00CC;
}
return this->unknown_00D0;
}
if (x >= this->geometry.x + this->geometry.width || y < this->geometry.y || y >= this->geometry.y + this->geometry.height) {
return nullptr;
}
for (auto child = this->m_children.rbegin(); child != this->m_children.rend(); ++child) {
UIWindow* hit = (*child)->HitTest((x - this->geometry.x), (y - this->geometry.y));
if (hit) {
return hit;
}
}
return this;
}
// OFFSET: 0x0084A960
// FUNCTION: fn_10614
bool UIMenuIconWnd::Slot08() {
return true;
}
// OFFSET: 0x0084A970
// FUNCTION: fn_10615
void UIMenuIconWnd::Move(int x, int y) {
this->geometry.x = x;
this->geometry.y = y - 4;
this->m_frameContext->snapping.Store(this);
}
// OFFSET: 0x0084BD20
// FUNCTION: fn_10618
void UIMenuIconWnd::Slot25(int x, int y) {}
// OFFSET: 0x0084BD30
// FUNCTION: fn_10619
void UIMenuIconWnd::Slot31(int x, int y) {}
// OFFSET: 0x0084C250
// FUNCTION: fn_10621
void UIMenuIconWnd::Slot27(int x, int y) {}