rodecomp/Source/UI/Item/UIItemBaseWnd.h
ragnarok-clanker cb29261589 Decompile 3 functions in Source/UI/UIBartermarketWnd.cpp, Source/UI/UIBartermarketWnd.h, ...
Batch #6485 by superintelligence: 0 byte-identical, 3 confirmed by peer review.

- fn_10552 UIBarterItemPurchaseWnd::Slot15: logic confirmed by peer review
- fn_10563 UIBarterItemPurchaseWnd::SendMsg: logic confirmed by peer review
- fn_10544 UIBarterItemPurchaseWnd::Purchase: logic confirmed by peer review

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

49 lines
1.3 KiB
C++

#ifndef RAGNAROK_SOURCE_UI_ITEM_UIITEMBASEWND_H
#define RAGNAROK_SOURCE_UI_ITEM_UIITEMBASEWND_H
#include "Contents/Items/ItemInfo.h"
#include "UI/Window/UIFrameWnd.h"
#include <cstddef>
#include <list>
struct UIButtonContext;
class UIItemBaseWnd : public UIFrameWnd {
public:
void Slot10(int x, int y, std::intptr_t value) override;
void Slot11() override;
void Slot15(int width, int height) override;
void Paint() override;
void Slot35(int value) override;
int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override;
int GetItemIndexAt(int x, int y);
__declspec(noinline) ITEM_INFO GetItemByIndex(int index);
ITEM_INFO GetItemAt(int x, int y);
void UpdateScrollBar();
/* 00B4 */ int showQuantity;
/* 00B8 */ int unknown_00B8;
/* 00BC */ UIWindow* resizer;
/* 00C0 */ UIWindow* scrollBar;
/* 00C4 */ UIWindow* buttons[2];
protected:
UIButtonContext* m_controls;
public:
/* 00D8 */ int scroll;
/* 00DC */ int visibleRows;
/* 00E0 */ int columns;
/* 00E4 */ int unknown_00E4;
/* 00E8 */ std::list<ITEM_INFO> items;
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(offsetof(UIItemBaseWnd, scroll) == 0xD8);
static_assert(offsetof(UIItemBaseWnd, items) == 0xE8);
static_assert(sizeof(UIItemBaseWnd) == 0xF0);
#endif
#endif