diff --git a/Source/Contents/CashEmotionMgr.cpp b/Source/Contents/CashEmotionMgr.cpp index 49491613..219ed33e 100644 --- a/Source/Contents/CashEmotionMgr.cpp +++ b/Source/Contents/CashEmotionMgr.cpp @@ -308,7 +308,6 @@ protected: /* 00E4 */ UIBitmapButton* unknown_00E4; /* 00E8 */ UICashEmotionListChildWnd_Abstract* m_currentList; /* 00EC */ UIStaticText* m_period; - void* unknown_controls; }; class UICashEmotionMiniWnd : public UIWindow { diff --git a/Source/Contents/Messenger/MessengerMember.cpp b/Source/Contents/Messenger/MessengerMember.cpp index 2baeca23..77542710 100644 --- a/Source/Contents/Messenger/MessengerMember.cpp +++ b/Source/Contents/Messenger/MessengerMember.cpp @@ -167,7 +167,6 @@ public: /* 0278 */ UIButton* iconModeButtons[2]; /* 0280 */ unsigned char hiddenButtons[11]; /* 028C */ int mode; - void* unknown_controls; }; // GLOBAL: gl_24961 @@ -2023,7 +2022,7 @@ int UIMessengerGroupWnd::SendMsg(UIWindow* sender, int message, std::intptr_t a, // OFFSET: 0x0089CFD0 // FUNCTION: fn_11596 void UIGage::SetColor(std::uint32_t color) { - this->colors[0] = color; + this->colors[1] = color; } // OFFSET: 0x0073FD90 diff --git a/Source/Contents/SignBoard/SignBoard.h b/Source/Contents/SignBoard/SignBoard.h index a775c624..45a597a8 100644 --- a/Source/Contents/SignBoard/SignBoard.h +++ b/Source/Contents/SignBoard/SignBoard.h @@ -32,9 +32,6 @@ public: /* 0080 */ std::string unknown_0080; /* 0098 */ std::string iconPath; /* 00B0 */ std::string unknown_00B0; - -protected: - void* unknown_controls; }; class CIcon : public CRenderObject { diff --git a/Source/UI/Acceptance/UIChooseSellBuyWnd.cpp b/Source/UI/Acceptance/UIChooseSellBuyWnd.cpp index 55281ab6..4290f422 100644 --- a/Source/UI/Acceptance/UIChooseSellBuyWnd.cpp +++ b/Source/UI/Acceptance/UIChooseSellBuyWnd.cpp @@ -6212,8 +6212,10 @@ UIStorePasswordInputWnd::UIStorePasswordInputWnd() // OFFSET: 0x008C8D40 // FUNCTION: fn_11972 UISecondPasswordInputWnd::UISecondPasswordInputWnd() - : UIStorePasswordInputWnd(), unknown_010C(4), unknown_011C(0), unknown_0120(0), unknown_0124(), unknown_014C(0), - unknown_0150(0), unknown_0154(0), unknown_0158(0), unknown_0164(0) { + : UIStorePasswordInputWnd(), unknown_010C(4), unknown_011C(0), unknown_0120(0), unknown_0124(), unknown_0164(nullptr) { + this->unknown_0150[0] = nullptr; + this->unknown_0150[1] = nullptr; + this->unknown_0150[2] = nullptr; } // OFFSET: 0x008C8F80 diff --git a/Source/UI/Acceptance/UIJoinPartyAcceptWnd.h b/Source/UI/Acceptance/UIJoinPartyAcceptWnd.h index 1449b947..f30e93cd 100644 --- a/Source/UI/Acceptance/UIJoinPartyAcceptWnd.h +++ b/Source/UI/Acceptance/UIJoinPartyAcceptWnd.h @@ -114,9 +114,9 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIChooseSellBuyWnd) == 196); -static_assert(sizeof(UIExchangeAcceptWnd) == 200); -static_assert(sizeof(UIJoinPartyAcceptWnd) == 200); +static_assert(sizeof(UIChooseSellBuyWnd) == 0xBC); +static_assert(sizeof(UIExchangeAcceptWnd) == 0xC0); +static_assert(sizeof(UIJoinPartyAcceptWnd) == 0xC0); #endif #endif diff --git a/Source/UI/AdventureGuide/UIAdventureGuide.h b/Source/UI/AdventureGuide/UIAdventureGuide.h index 38338bf6..7d734172 100644 --- a/Source/UI/AdventureGuide/UIAdventureGuide.h +++ b/Source/UI/AdventureGuide/UIAdventureGuide.h @@ -54,23 +54,23 @@ class CUICharacterInfo : public CUIControl { public: // OFFSET: 0x009D8F50 // FUNCTION: fn_14273 - explicit CUICharacterInfo() : CUIControl(), level(nullptr), jobLevel(nullptr), name(nullptr), jobIcon(nullptr) { + explicit CUICharacterInfo() : CUIControl(), jobIcon(nullptr), level(nullptr), jobLevel(nullptr), name(nullptr) { } void Slot15(int width, int height) override; void Slot16() override; + /* 0080 */ CUIStaticImage* jobIcon; /* 0084 */ CUIStaticText* level; /* 0088 */ CUIStaticText* jobLevel; /* 008C */ CUIStaticText* name; - /* 0080 */ CUIStaticImage* jobIcon; }; class CUIIntro : public CUIPage { public: // OFFSET: 0x009D8FE0 // FUNCTION: fn_14274 - explicit CUIIntro() : CUIPage(), image(nullptr), contents(nullptr), banner(nullptr) { + explicit CUIIntro() : CUIPage(), banner(nullptr), image(nullptr), contents(nullptr) { } void Slot15(int width, int height) override; @@ -81,9 +81,9 @@ public: void OnSelectContents(CUITabInfo* item, const Guide_Intro::Contents& contents); void BindContents(CUITabInfo* item, const Guide_Intro::Contents& contents); + /* 0080 */ CUIStaticImage* banner; /* 0084 */ CUIStaticImage* image; /* 0088 */ CUIListBoxEx* contents; - /* 0080 */ CUIStaticImage* banner; }; class CUIItem : public CUIPage { @@ -91,7 +91,7 @@ public: // OFFSET: 0x009D9080 // FUNCTION: fn_14275 explicit CUIItem() - : CUIPage(), unknown_0084(nullptr), unknown_0088(nullptr), unknown_008C(), location(-1), itemList(nullptr) { + : CUIPage(), itemList(nullptr), unknown_0084(nullptr), unknown_0088(nullptr), unknown_008C(), location(-1) { } void Slot15(int width, int height) override; @@ -103,18 +103,18 @@ public: void RequestNavigation(); void SearchNavigation(); + /* 0080 */ CUIListBoxEx* itemList; /* 0084 */ CUIImageButton* unknown_0084; /* 0088 */ CUIImageButton* unknown_0088; /* 008C */ std::string unknown_008C; /* 00A4 */ int location; - /* 0080 */ CUIListBoxEx* itemList; }; class CUIMonster : public CUIPage { public: // OFFSET: 0x009D9220 // FUNCTION: fn_14277 - explicit CUIMonster() : CUIPage(), unknown_0084(nullptr), unknown_0088(), monsterList(nullptr) { + explicit CUIMonster() : CUIPage(), monsterList(nullptr), unknown_0084(nullptr), unknown_0088() { } void Slot15(int width, int height) override; @@ -126,16 +126,16 @@ public: void BindMonster(CUIMonsterInfo* item, const CMonsterData& data); void SearchNavigation(); + /* 0080 */ CUIListBoxEx* monsterList; /* 0084 */ CUIImageButton* unknown_0084; /* 0088 */ std::string unknown_0088; - /* 0080 */ CUIListBoxEx* monsterList; }; class CUIQuest : public CUIPage { public: // OFFSET: 0x009D9360 // FUNCTION: fn_14279 - explicit CUIQuest() : CUIPage(), unknown_0084(nullptr), unknown_0088(nullptr), unknown_008C(), questList(nullptr) { + explicit CUIQuest() : CUIPage(), questList(nullptr), unknown_0084(nullptr), unknown_0088(nullptr), unknown_008C() { } void Slot15(int width, int height) override; @@ -147,18 +147,18 @@ public: void RequestNavigation(); void SearchNavigation(); + /* 0080 */ CUIListBoxEx* questList; /* 0084 */ CUIImageButton* unknown_0084; /* 0088 */ CUIImageButton* unknown_0088; /* 008C */ std::string unknown_008C; - /* 0080 */ CUIListBoxEx* questList; }; } #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(AdventureGuide::CUIIntro) == 0x90); -static_assert(sizeof(AdventureGuide::CUIMonster) == 0xA4); -static_assert(sizeof(AdventureGuide::CUIQuest) == 0xA8); +static_assert(sizeof(AdventureGuide::CUIIntro) == 0x8C); +static_assert(sizeof(AdventureGuide::CUIMonster) == 0xA0); +static_assert(sizeof(AdventureGuide::CUIQuest) == 0xA4); #endif #endif diff --git a/Source/UI/Buttons/UIBasicButton.h b/Source/UI/Buttons/UIBasicButton.h index 6d57e939..651d3d5d 100644 --- a/Source/UI/Buttons/UIBasicButton.h +++ b/Source/UI/Buttons/UIBasicButton.h @@ -16,7 +16,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIBasicButton) == 216); +static_assert(sizeof(UIBasicButton) == 0xD0); #endif #endif diff --git a/Source/UI/Buttons/UIBitmapButton.h b/Source/UI/Buttons/UIBitmapButton.h index 3ebb4798..bc6ed663 100644 --- a/Source/UI/Buttons/UIBitmapButton.h +++ b/Source/UI/Buttons/UIBitmapButton.h @@ -29,7 +29,7 @@ protected: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIBitmapButton) == 296); +static_assert(sizeof(UIBitmapButton) == 0x120); #endif #endif diff --git a/Source/UI/Buttons/UIBmpRadioBtn.cpp b/Source/UI/Buttons/UIBmpRadioBtn.cpp index 8d221f79..4f43bd2f 100644 --- a/Source/UI/Buttons/UIBmpRadioBtn.cpp +++ b/Source/UI/Buttons/UIBmpRadioBtn.cpp @@ -24,5 +24,4 @@ UICaptchaImage::~UICaptchaImage() { // OFFSET: 0x008704D0 // FUNCTION: fn_11101 UIChatHisBox::~UIChatHisBox() { - this->ItemTags().~list(); } diff --git a/Source/UI/Buttons/UIBmpRadioBtn.h b/Source/UI/Buttons/UIBmpRadioBtn.h index d2c717db..32cb9c96 100644 --- a/Source/UI/Buttons/UIBmpRadioBtn.h +++ b/Source/UI/Buttons/UIBmpRadioBtn.h @@ -8,7 +8,6 @@ #include #include - struct UIBmpRadioBtnText { /* 0000 */ int id; /* 0004 */ int x; @@ -38,11 +37,10 @@ protected: /* 00DC */ bool m_hovered; /* 00DD */ unsigned char unknown_00DD[3]; /* 00E0 */ std::string m_tooltip; - void* unknown_controls; + /* 00F8 */ bool m_disabled; /* 00FC */ int m_value; /* 0100 */ std::vector m_texts; /* 010C */ std::string m_label; - bool m_disabled; }; class UIBmpRadioBtn2 : public UIBmpRadioBtn { @@ -66,7 +64,6 @@ public: protected: /* 01A0 */ std::string m_tooltip; - void* unknown_controls; }; #endif diff --git a/Source/UI/Buttons/UIBmpTextButton.h b/Source/UI/Buttons/UIBmpTextButton.h index 3a4a13f1..0b03dd23 100644 --- a/Source/UI/Buttons/UIBmpTextButton.h +++ b/Source/UI/Buttons/UIBmpTextButton.h @@ -36,7 +36,7 @@ static_assert(offsetof(BitmapButtonTextStyle, height) == 0x000C); static_assert(offsetof(BitmapButtonTextStyle, bold) == 0x0010); static_assert(offsetof(BitmapButtonTextStyle, color) == 0x0014); static_assert(offsetof(BitmapButtonTextStyle, shadow) == 0x0018); -static_assert(sizeof(UIBmpTextButton) == 332); +static_assert(sizeof(UIBmpTextButton) == 0x144); #endif #endif diff --git a/Source/UI/Buttons/UIButton.h b/Source/UI/Buttons/UIButton.h index 441f051d..55b07505 100644 --- a/Source/UI/Buttons/UIButton.h +++ b/Source/UI/Buttons/UIButton.h @@ -64,11 +64,10 @@ protected: /* 00AC */ unsigned char m_disabled; /* 00AD */ unsigned char m_drawLabel; /* 00B0 */ int m_argument; - void* unknown_buttonContext; }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIButton) == 188); +static_assert(sizeof(UIButton) == 0xB4); #endif #endif diff --git a/Source/UI/Buttons/UICheckBox.h b/Source/UI/Buttons/UICheckBox.h index 6c604ab3..947d385b 100644 --- a/Source/UI/Buttons/UICheckBox.h +++ b/Source/UI/Buttons/UICheckBox.h @@ -39,14 +39,13 @@ protected: /* 00EC */ int m_message; /* 00F0 */ int m_notify; /* 00F4 */ std::string m_uncheckedTooltip; - void* unknown_controls; private: void Notify(); }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UICheckBox) == 276); +static_assert(sizeof(UICheckBox) == 0x10C); #endif #endif diff --git a/Source/UI/Buttons/UIItemTagButton.h b/Source/UI/Buttons/UIItemTagButton.h index 24ff1be7..6b7bbaa3 100644 --- a/Source/UI/Buttons/UIItemTagButton.h +++ b/Source/UI/Buttons/UIItemTagButton.h @@ -17,6 +17,7 @@ public: void Slot28(int x, int y) override; /* 00F8 */ unsigned char unknown_00F8[0xF0]; + /* 01E8 */ unsigned char unknown_01E8[0x8]; /* 01F0 */ int column; /* 01F4 */ int line; /* 01F8 */ int unknown_01F8; diff --git a/Source/UI/Buttons/UIJobSlotButton.h b/Source/UI/Buttons/UIJobSlotButton.h index 2c2f0ac1..667303a0 100644 --- a/Source/UI/Buttons/UIJobSlotButton.h +++ b/Source/UI/Buttons/UIJobSlotButton.h @@ -16,7 +16,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIJobSlotButton) == 348); +static_assert(sizeof(UIJobSlotButton) == 0x154); #endif #endif diff --git a/Source/UI/Buttons/UINaviLinkButton.h b/Source/UI/Buttons/UINaviLinkButton.h index 79875e0c..d6cbe86d 100644 --- a/Source/UI/Buttons/UINaviLinkButton.h +++ b/Source/UI/Buttons/UINaviLinkButton.h @@ -12,12 +12,10 @@ public: /* 00F8 */ std::string link; /* 0110 */ int column; /* 0114 */ int line; - - void* unknown_0118; }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UINaviLinkButton) == 292); +static_assert(sizeof(UINaviLinkButton) == 0x118); #endif #endif diff --git a/Source/UI/Buttons/UIRadioBtn.h b/Source/UI/Buttons/UIRadioBtn.h index cc110f74..391179e9 100644 --- a/Source/UI/Buttons/UIRadioBtn.h +++ b/Source/UI/Buttons/UIRadioBtn.h @@ -6,7 +6,6 @@ #include #include - class UIRadioBtn : public UIWindow { public: UIRadioBtn(); @@ -26,9 +25,6 @@ public: /* 00D0 */ std::string uncheckedBitmap; /* 00E8 */ int fontHeight; /* 00EC */ std::uint32_t textColor; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Buttons/UITextButton.cpp b/Source/UI/Buttons/UITextButton.cpp index 2064930e..ab9e6256 100644 --- a/Source/UI/Buttons/UITextButton.cpp +++ b/Source/UI/Buttons/UITextButton.cpp @@ -1146,7 +1146,7 @@ void UISlotBmpButton::Slot19() { // FUNCTION: fn_11479 void UIBasicItemCtrl::Slot32(int, int) { if (std::atoi(this->m_item.itemId.c_str()) > 0) { - this->m_windows->EnsureWindow(12)->SendMsg(nullptr, 24, reinterpret_cast(&this->m_item), 0, 0, 0); + g_windowMgr.EnsureWindow(12)->SendMsg(nullptr, 24, reinterpret_cast(&this->m_item), 0, 0, 0); } } @@ -1180,7 +1180,7 @@ void UISlotBmpButton::Slot32(int, int) { // OFFSET: 0x00892AB0 // FUNCTION: fn_11484 void UIStaticItem::Slot32(int, int) { - this->m_windows->EnsureWindow(12)->SendMsg(nullptr, 24, reinterpret_cast(&this->m_item), 0, 0, 0); + g_windowMgr.EnsureWindow(12)->SendMsg(nullptr, 24, reinterpret_cast(&this->m_item), 0, 0, 0); } // OFFSET: 0x00892AE0 diff --git a/Source/UI/Buttons/UITextButton.h b/Source/UI/Buttons/UITextButton.h index a564e0d2..3defe81b 100644 --- a/Source/UI/Buttons/UITextButton.h +++ b/Source/UI/Buttons/UITextButton.h @@ -63,7 +63,7 @@ protected: extern std::string g_emptyString; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UITextButton) == 256); +static_assert(sizeof(UITextButton) == 0xF8); #endif #endif diff --git a/Source/UI/Buttons/UITextureButton.h b/Source/UI/Buttons/UITextureButton.h index afbfc5ff..793e794f 100644 --- a/Source/UI/Buttons/UITextureButton.h +++ b/Source/UI/Buttons/UITextureButton.h @@ -12,6 +12,9 @@ public: void Slot31(int x, int y) override; void VisitChildren() override; + /* 00B4 */ int unknown_00B4; + /* 00B8 */ int unknown_00B8; + /* 00BC */ std::string normalTexture; /* 00D4 */ std::string hoverTexture; /* 00EC */ std::string pressedTexture; diff --git a/Source/UI/CashShop/UICashShopWnd.h b/Source/UI/CashShop/UICashShopWnd.h index aa55ca1f..00e31a68 100644 --- a/Source/UI/CashShop/UICashShopWnd.h +++ b/Source/UI/CashShop/UICashShopWnd.h @@ -35,7 +35,6 @@ public: /* 0088 */ std::vector m_buttons; /* 0094 */ unsigned int m_index; /* 0098 */ std::uint32_t m_lastTick; - void* unknown_controls; void CreateButtons(); }; @@ -55,7 +54,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; /* 0080 */ ITEM_INFO m_item; - void* unknown_controls; }; class UICashShopWnd_Cart : public UIWindow { @@ -73,7 +71,6 @@ public: /* 0094 */ UIScrollBar_Custom* m_scrollBar; /* 0098 */ int m_visibleCount; /* 009C */ unsigned int m_scrollIndex; - void* unknown_controls; }; class UICashShopWnd_Item : public UIWindow { @@ -95,7 +92,6 @@ public: /* 0080 */ ITEM_INFO m_item; /* 0178 */ bool m_largeLayout; /* 017C */ UIStaticBitmap* m_soldOut; - void* unknown_controls; }; class UICashShopWnd : public UIFrameWnd { @@ -127,7 +123,6 @@ public: /* 00F4 */ UIEditCtrl_Custom* unknown_00F4; /* 00F8 */ std::vector m_itemWindows; /* 0104 */ UICashShopWnd_Cart* m_cart; - void* unknown_controls; }; void FormatMessageBuffer(char* buffer, const char* format, ...); diff --git a/Source/UI/Chat/UIChatRoomTitle.h b/Source/UI/Chat/UIChatRoomTitle.h index a8618bf3..4341b123 100644 --- a/Source/UI/Chat/UIChatRoomTitle.h +++ b/Source/UI/Chat/UIChatRoomTitle.h @@ -6,7 +6,6 @@ #include class UIStaticText; -class ForbiddenWords; struct ChatRoomTitleInfo { /* 0000 */ std::string title; @@ -39,8 +38,6 @@ public: protected: /* 00BC */ int roomId; /* 00C0 */ short unknown_00C0; - void* unknown_controls; - ForbiddenWords* m_forbiddenWords; }; #endif diff --git a/Source/UI/Chat/UINewChatWnd.h b/Source/UI/Chat/UINewChatWnd.h index edf9d9f8..aa3ebf30 100644 --- a/Source/UI/Chat/UINewChatWnd.h +++ b/Source/UI/Chat/UINewChatWnd.h @@ -39,6 +39,8 @@ public: void ResizeRows(int count); void ToggleInput(); + /* 00B4 */ UIEditCtrl* m_inputEdit; + /* 00B8 */ UIWindow* unknown_00B8; /* 00BC */ UIEditCtrl* m_chatEdit; /* 00C0 */ UIWindow* unknown_00C0; /* 00C4 */ int m_inputX; @@ -66,8 +68,6 @@ public: /* 0130 */ unsigned char unknown_0130[0x8]; /* 0138 */ UITabControl* m_tabControl; /* 013C */ UIWindow* m_suggestions; - UIEditCtrl* m_inputEdit; - UIWindow* unknown_00B8; }; // INLINED diff --git a/Source/UI/Chat/UISubChatHisWnd.h b/Source/UI/Chat/UISubChatHisWnd.h index 018a1a6d..54cf16ad 100644 --- a/Source/UI/Chat/UISubChatHisWnd.h +++ b/Source/UI/Chat/UISubChatHisWnd.h @@ -59,8 +59,6 @@ private: /* 0111 */ unsigned char unknown_0111[3]; /* 0114 */ std::string m_name; /* 012C */ UIEditCtrl* m_edit; - void* unknown_controls; - void* unknown_listContext; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Chat/UIWhisperWnd.h b/Source/UI/Chat/UIWhisperWnd.h index c7c6b3bb..4276e112 100644 --- a/Source/UI/Chat/UIWhisperWnd.h +++ b/Source/UI/Chat/UIWhisperWnd.h @@ -42,9 +42,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; void SaveChatLog(); - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Clan/UIClanWnd.h b/Source/UI/Clan/UIClanWnd.h index 0ba10fbc..651e01e9 100644 --- a/Source/UI/Clan/UIClanWnd.h +++ b/Source/UI/Clan/UIClanWnd.h @@ -18,7 +18,6 @@ public: virtual int Slot53() = 0; protected: - void* unknown_controls; /* 00B4 */ ClanWndInfo* m_saved; /* 00B8 */ UIStaticText* m_title; }; diff --git a/Source/UI/Dialogs/UIChooseWarpWnd.h b/Source/UI/Dialogs/UIChooseWarpWnd.h index 11b67671..987ac38e 100644 --- a/Source/UI/Dialogs/UIChooseWarpWnd.h +++ b/Source/UI/Dialogs/UIChooseWarpWnd.h @@ -19,10 +19,6 @@ public: /* 00B4 */ UIListBox* m_list; /* 00B8 */ int unknown_00B8; /* 00BC */ std::vector m_choices; - -protected: - void* unknown_controls; - void* unknown_listContext; }; #endif diff --git a/Source/UI/Dialogs/UIChooseWnd.h b/Source/UI/Dialogs/UIChooseWnd.h index ad223e5c..8367a1af 100644 --- a/Source/UI/Dialogs/UIChooseWnd.h +++ b/Source/UI/Dialogs/UIChooseWnd.h @@ -26,10 +26,6 @@ public: /* 00CC */ ChooseWndInfo* m_placement; /* 00D0 */ UIBitmapButton* m_okButton; /* 00D4 */ UIBitmapButton* m_cancelButton; - -protected: - void* unknown_controls; - void* unknown_listContext; }; class UIChoose3Wnd : public UIChooseWnd { diff --git a/Source/UI/Dialogs/UIDisconnectedServerMsgWnd.h b/Source/UI/Dialogs/UIDisconnectedServerMsgWnd.h index 671d22a4..87cb7ed0 100644 --- a/Source/UI/Dialogs/UIDisconnectedServerMsgWnd.h +++ b/Source/UI/Dialogs/UIDisconnectedServerMsgWnd.h @@ -13,9 +13,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; /* 00B4 */ UITextViewer* m_viewer; - -protected: - void* unknown_textContext; }; #endif diff --git a/Source/UI/Dialogs/UIEditctrlWnd.h b/Source/UI/Dialogs/UIEditctrlWnd.h index 367d02a6..7e145f18 100644 --- a/Source/UI/Dialogs/UIEditctrlWnd.h +++ b/Source/UI/Dialogs/UIEditctrlWnd.h @@ -13,9 +13,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; /* 00B4 */ UIEditCtrl* edit; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UIEmailAddressWnd.h b/Source/UI/Dialogs/UIEmailAddressWnd.h index 5199ed5d..e4bff34a 100644 --- a/Source/UI/Dialogs/UIEmailAddressWnd.h +++ b/Source/UI/Dialogs/UIEmailAddressWnd.h @@ -13,12 +13,9 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; protected: - void* unknown_controls; public: /* 00B4 */ UIEditCtrl* m_edit; - -protected: }; #endif diff --git a/Source/UI/Dialogs/UIGraffiStrboxWnd.h b/Source/UI/Dialogs/UIGraffiStrboxWnd.h index a7fb4de2..35f94498 100644 --- a/Source/UI/Dialogs/UIGraffiStrboxWnd.h +++ b/Source/UI/Dialogs/UIGraffiStrboxWnd.h @@ -13,13 +13,10 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; protected: - void* unknown_controls; public: int area[4]; UIEditCtrl* edit; - -protected: }; #endif diff --git a/Source/UI/Dialogs/UIMemorialDunWnd.h b/Source/UI/Dialogs/UIMemorialDunWnd.h index 1dacea62..123088a9 100644 --- a/Source/UI/Dialogs/UIMemorialDunWnd.h +++ b/Source/UI/Dialogs/UIMemorialDunWnd.h @@ -22,7 +22,6 @@ public: private: /* 00B4 */ UIBitmapButton* m_actionButton; /* 00B8 */ UIBasicButton* m_partyButton; - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UIMenuWnd.h b/Source/UI/Dialogs/UIMenuWnd.h index c889babf..ac8ac1af 100644 --- a/Source/UI/Dialogs/UIMenuWnd.h +++ b/Source/UI/Dialogs/UIMenuWnd.h @@ -28,9 +28,6 @@ public: void AddItem(const char* text, const std::uint32_t& color); int ItemAt(int x, int y); - -protected: - void* unknown_controls; }; extern const char* g_menuSeparator; diff --git a/Source/UI/Dialogs/UIMiniMapWnd.h b/Source/UI/Dialogs/UIMiniMapWnd.h index 1ca017ff..a9314a9c 100644 --- a/Source/UI/Dialogs/UIMiniMapWnd.h +++ b/Source/UI/Dialogs/UIMiniMapWnd.h @@ -49,9 +49,6 @@ public: /* 0148 */ std::vector partyMarks; /* 0154 */ std::vector guildMarks; /* 0160 */ std::vector warpMarks; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UIMinimapZoomWnd.h b/Source/UI/Dialogs/UIMinimapZoomWnd.h index 09be0168..afceae85 100644 --- a/Source/UI/Dialogs/UIMinimapZoomWnd.h +++ b/Source/UI/Dialogs/UIMinimapZoomWnd.h @@ -21,9 +21,6 @@ public: /* 00BC */ int unknown_00BC; /* 00C0 */ int unknown_00C0; /* 00C4 */ int unknown_00C4; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UINoticeConfirmWnd.h b/Source/UI/Dialogs/UINoticeConfirmWnd.h index d03d283b..031201b1 100644 --- a/Source/UI/Dialogs/UINoticeConfirmWnd.h +++ b/Source/UI/Dialogs/UINoticeConfirmWnd.h @@ -14,9 +14,6 @@ public: 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 Slot15(int width, int height) override; - -protected: - void* unknown_textContext; }; #endif diff --git a/Source/UI/Dialogs/UINotifyLevelUpWnd.h b/Source/UI/Dialogs/UINotifyLevelUpWnd.h index cfd79e21..f98eae06 100644 --- a/Source/UI/Dialogs/UINotifyLevelUpWnd.h +++ b/Source/UI/Dialogs/UINotifyLevelUpWnd.h @@ -3,16 +3,12 @@ #include "UI/Window/UIFrameWnd.h" - class UINotifyLevelUpWnd : public UIFrameWnd { public: UINotifyLevelUpWnd(); 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 Slot15(int width, int height) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UINotifyQuestWnd.h b/Source/UI/Dialogs/UINotifyQuestWnd.h index a88d84d0..8949070a 100644 --- a/Source/UI/Dialogs/UINotifyQuestWnd.h +++ b/Source/UI/Dialogs/UINotifyQuestWnd.h @@ -3,16 +3,12 @@ #include "UI/Window/UIFrameWnd.h" - class UINotifyQuestWnd : public UIFrameWnd { public: UINotifyQuestWnd(); 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 Slot15(int width, int height) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UINpcEditDialogWnd.h b/Source/UI/Dialogs/UINpcEditDialogWnd.h index 2da1fe4d..26a2d689 100644 --- a/Source/UI/Dialogs/UINpcEditDialogWnd.h +++ b/Source/UI/Dialogs/UINpcEditDialogWnd.h @@ -7,7 +7,6 @@ class UIEditCtrl; class UIItemTagOnMegaPhone; struct ITEM_INFO; - class UINpcEditDialogWnd : public UIFrameWnd { public: UINpcEditDialogWnd(); @@ -16,13 +15,10 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; protected: - void* unknown_controls; public: /* 00B4 */ UIEditCtrl* edit; /* 00B8 */ int unknown_00B8; - -protected: }; class UINpcTextEditDialogWnd : public UINpcEditDialogWnd { diff --git a/Source/UI/Dialogs/UIPasswordWnd.cpp b/Source/UI/Dialogs/UIPasswordWnd.cpp index ebce3c90..ad788e56 100644 --- a/Source/UI/Dialogs/UIPasswordWnd.cpp +++ b/Source/UI/Dialogs/UIPasswordWnd.cpp @@ -18,7 +18,7 @@ UIPasswordWnd::UIPasswordWnd() : UIItemDropCntWnd() {} // OFFSET: 0x0090C970 // FUNCTION: fn_12451 -void UIPasswordWnd::sub_90C970(int value) { +void UISecondPasswordInputWnd::sub_90C970(int value) { this->unknown_011C = value; if (value == 0) { this->unknown_0164->SetText(LookupMessage(0xa06), 0); @@ -31,7 +31,7 @@ void UIPasswordWnd::sub_90C9B0(int) {} // OFFSET: 0x0090C9C0 // FUNCTION: fn_12453 -void UIPasswordWnd::CreateKeypad(unsigned int seed) { +void UISecondPasswordInputWnd::CreateKeypad(unsigned int seed) { this->unknown_00F8 = 91; this->unknown_00FC = 91; this->unknown_0100 = 130; @@ -129,7 +129,7 @@ void UIPasswordWnd::CreateKeypad(unsigned int seed) { // OFFSET: 0x0090DE10 // FUNCTION: fn_12454 -void UIPasswordWnd::sub_90DE10() { +void UISecondPasswordInputWnd::sub_90DE10() { UIButton** slot = this->unknown_0124; for (int remaining = 11; remaining != 0; --remaining) { UIButton* button = *slot; diff --git a/Source/UI/Dialogs/UIPasswordWnd.h b/Source/UI/Dialogs/UIPasswordWnd.h index 490abce4..802f1f6d 100644 --- a/Source/UI/Dialogs/UIPasswordWnd.h +++ b/Source/UI/Dialogs/UIPasswordWnd.h @@ -24,31 +24,12 @@ public: UIPasswordWnd(); /* 00BC */ int unknown_00BC; - /* 00C0 */ unsigned char unknown_00C0[0x38]; - /* 00F8 */ int unknown_00F8; - /* 00FC */ int unknown_00FC; - /* 0100 */ int unknown_0100; - /* 0104 */ int unknown_0104; - /* 0108 */ unsigned char unknown_0108[8]; - /* 0110 */ unsigned char m_digits[10]; - /* 011A */ unsigned char unknown_011A[2]; - /* 011C */ int unknown_011C; - /* 0120 */ unsigned char unknown_0120[4]; - /* 0124 */ UIButton* unknown_0124[11]; - /* 0150 */ UIButton* unknown_0150[5]; - /* 0164 */ UIStaticText* unknown_0164; void Show(int visible) 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 sub_90C970(int value); void sub_90C9B0(int); - void CreateKeypad(unsigned int seed); - void sub_90DE10(); void Slot15(int width, int height) override; - -protected: - void* unknown_controls; }; class UIStorePasswordInputWnd : public UIFrameWnd { @@ -79,20 +60,26 @@ public: UISecondPasswordInputWnd(); void Paint() override; void ShuffleKeypad(); + void sub_90C970(int value); + void CreateKeypad(unsigned int seed); + void sub_90DE10(); /* 010C */ int unknown_010C; - /* 0110 */ unsigned char unknown_0110[0xC]; + /* 0110 */ unsigned char m_digits[10]; /* 011C */ int unknown_011C; /* 0120 */ int unknown_0120; - /* 0124 */ UIButton* unknown_0124[10]; - /* 014C */ int unknown_014C; - /* 0150 */ int unknown_0150; - /* 0154 */ int unknown_0154; - /* 0158 */ int unknown_0158; - /* 015C */ unsigned char unknown_015C[0x8]; - /* 0164 */ int unknown_0164; + /* 0124 */ UIButton* unknown_0124[11]; + /* 0150 */ UIButton* unknown_0150[5]; + /* 0164 */ UIStaticText* unknown_0164; }; +#if defined(_WIN32) && !defined(_WIN64) +static_assert(sizeof(UIPasswordWnd) == 0xC0); +static_assert(offsetof(UISecondPasswordInputWnd, unknown_0124) == 0x124); +static_assert(offsetof(UISecondPasswordInputWnd, unknown_0164) == 0x164); +static_assert(sizeof(UISecondPasswordInputWnd) == 0x168); +#endif + extern int g_passwordWndMode; #endif diff --git a/Source/UI/Dialogs/UIProhibitListWnd.h b/Source/UI/Dialogs/UIProhibitListWnd.h index 2d0b32d1..c96d46f9 100644 --- a/Source/UI/Dialogs/UIProhibitListWnd.h +++ b/Source/UI/Dialogs/UIProhibitListWnd.h @@ -3,7 +3,6 @@ #include "UI/Window/UIFrameWnd.h" - class UIProhibitListWnd : public UIFrameWnd { public: UIProhibitListWnd(); @@ -14,9 +13,6 @@ public: void Paint() override; void Slot19() override; int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UIQuitWnd.h b/Source/UI/Dialogs/UIQuitWnd.h index 9f997a6c..3d5bfbde 100644 --- a/Source/UI/Dialogs/UIQuitWnd.h +++ b/Source/UI/Dialogs/UIQuitWnd.h @@ -3,16 +3,12 @@ #include "UI/Window/UIFrameWnd.h" - class UIQuitWnd : public UIFrameWnd { public: UIQuitWnd(); void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; void Slot15(int width, int height) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UIRestartWnd.h b/Source/UI/Dialogs/UIRestartWnd.h index 1834ab18..bbf5c7ef 100644 --- a/Source/UI/Dialogs/UIRestartWnd.h +++ b/Source/UI/Dialogs/UIRestartWnd.h @@ -3,7 +3,6 @@ #include "UI/Window/UIFrameWnd.h" - class UIRestartWnd : public UIFrameWnd { public: UIRestartWnd(); @@ -11,8 +10,7 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; void Slot15(int width, int height) override; -protected: - void* unknown_controls; + /* 00B4 */ unsigned char unknown_00B4[4]; }; #endif diff --git a/Source/UI/Dialogs/UISelectCartWnd.h b/Source/UI/Dialogs/UISelectCartWnd.h index 39f19e25..1059cb44 100644 --- a/Source/UI/Dialogs/UISelectCartWnd.h +++ b/Source/UI/Dialogs/UISelectCartWnd.h @@ -3,7 +3,6 @@ #include "UI/Window/UIFrameWnd.h" - class UISelectCartWnd : public UIFrameWnd { public: UISelectCartWnd(); @@ -14,7 +13,6 @@ public: void AddCart(int index, int type); protected: - void* unknown_controls; public: /* 00B4 */ int unknown_00B4; diff --git a/Source/UI/Dialogs/UITipOfTheDayWnd.h b/Source/UI/Dialogs/UITipOfTheDayWnd.h index 5f104127..225a1523 100644 --- a/Source/UI/Dialogs/UITipOfTheDayWnd.h +++ b/Source/UI/Dialogs/UITipOfTheDayWnd.h @@ -17,9 +17,6 @@ public: /* 00B4 */ UITextViewer* m_textViewer; /* 00B8 */ int m_tipIndex; /* 00BC */ int m_showTipsAtStartup; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Dialogs/UITipboxWnd.h b/Source/UI/Dialogs/UITipboxWnd.h index afd501c0..05a76113 100644 --- a/Source/UI/Dialogs/UITipboxWnd.h +++ b/Source/UI/Dialogs/UITipboxWnd.h @@ -66,9 +66,6 @@ public: /* 00F8 */ std::uint32_t m_frameTime; /* 00FC */ bool unknown_00FC; /* 0100 */ int unknown_0100; - -protected: - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Dialogs/UIWaitWnd.h b/Source/UI/Dialogs/UIWaitWnd.h index 747de571..85fcfcdd 100644 --- a/Source/UI/Dialogs/UIWaitWnd.h +++ b/Source/UI/Dialogs/UIWaitWnd.h @@ -17,9 +17,6 @@ public: void SetMessage(const char* text, int, int); void Slot15(int width, int height) override; - -protected: - void* unknown_textContext; }; #endif diff --git a/Source/UI/Edit/UICandidateWnd.h b/Source/UI/Edit/UICandidateWnd.h index 21c41f20..1d5d5d2e 100644 --- a/Source/UI/Edit/UICandidateWnd.h +++ b/Source/UI/Edit/UICandidateWnd.h @@ -5,7 +5,6 @@ #include - class UICandidateWnd : public UIFrameWnd { public: UICandidateWnd(); @@ -19,7 +18,6 @@ protected: /* 0190 */ int m_page; /* 0194 */ int m_lastPage; /* 0198 */ int m_count; - void* unknown_controls; }; class UICompositionWnd : public UIFrameWnd { @@ -31,7 +29,6 @@ public: protected: /* 00B4 */ std::string m_text; - void* unknown_controls; }; class UIKeyStrokeWnd : public UIFrameWnd { diff --git a/Source/UI/Edit/UIEditCtrl.cpp b/Source/UI/Edit/UIEditCtrl.cpp index 8fce9000..835713f5 100644 --- a/Source/UI/Edit/UIEditCtrl.cpp +++ b/Source/UI/Edit/UIEditCtrl.cpp @@ -126,9 +126,6 @@ static const std::string g_editNaviTagBegin = ""; // GLOBAL: gl_24648 static const std::string g_editNaviTagEnd = ""; - - - namespace { #pragma pack(push, 1) struct PACKET_CZ_INVENTORY_TAB { @@ -215,8 +212,7 @@ UIEditCtrl::UIEditCtrl(const UIEditCtrl& other) // FUNCTION: fn_10663 UIEditCtrl::UIEditCtrl() : UIWindow(0), anchor(0), cursor(0), mask(0), maximum(255), flat(1), red(255), green(255), blue(255), borderRed(0), borderGreen(0), borderBlue(0), - textColor(0), secondColor(0xFFFFFFFF), firstVisible(0), textY(0), invalidatesParent(0), disabled(0), unknown_00F0(0), topPadding(0), preserveInput(0), - unknown_011C(nullptr) { + textColor(0), secondColor(0xFFFFFFFF), firstVisible(0), textY(0), invalidatesParent(0), disabled(0), unknown_00F0(0), topPadding(0), preserveInput(0) { this->text.reserve(255); } @@ -356,16 +352,12 @@ void UIEditCtrl::SetText(const char* value) { } } - // OFFSET: 0x00856980 // FUNCTION: fn_10755 void UIEditCtrl::PaintText() { this->PaintTextWithPolicy(nullptr, 0, false); } - - - // OFFSET: 0x00858D50 // FUNCTION: fn_10768 int UIEditCtrl::Length() const { @@ -1897,7 +1889,6 @@ void UIMerchantShopMakeWnd::Slot19() { edit->SetCursor(edit->Length()); } - // OFFSET: 0x00988C20 // FUNCTION: fn_13390 void UINoticeMessageBox_LockSellItem::Slot19() { @@ -6153,6 +6144,9 @@ UIItemBaseWnd::UIItemBaseWnd() this->unknown_00B8 = 0; this->buttons[0] = nullptr; this->buttons[1] = nullptr; + this->buttons[2] = nullptr; + this->buttons[3] = nullptr; + this->buttons[4] = nullptr; this->scroll = 0; } diff --git a/Source/UI/Edit/UIEditCtrl.h b/Source/UI/Edit/UIEditCtrl.h index ae4c8761..963cadf6 100644 --- a/Source/UI/Edit/UIEditCtrl.h +++ b/Source/UI/Edit/UIEditCtrl.h @@ -80,7 +80,6 @@ public: /* 0104 */ std::string linkedText; protected: - void* unknown_011C; void PaintTextWithPolicy(const std::string* placeholder, std::uint32_t placeholderColor, bool placeholderEnabled); bool RemoveInvalidLink(std::list::iterator& entry); void SnapLinkSelection(std::size_t prefix, std::size_t bytes); @@ -260,7 +259,6 @@ public: /* 007C */ UIEditCtrlVarId* fields[2]; protected: - void* unknown_slot; public: /* 0084 */ int unknown_0084; @@ -268,11 +266,11 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIEditCtrl) == 292); -static_assert(sizeof(UIEditCtrlWheel) == 292); -static_assert(sizeof(UIEditCtrl2) == 292); -static_assert(sizeof(UIEditCtrl4) == 324); -static_assert(sizeof(UIEditCtrl5) == 324); +static_assert(sizeof(UIEditCtrl) == 0x11C); +static_assert(sizeof(UIEditCtrlWheel) == 0x11C); +static_assert(sizeof(UIEditCtrl2) == 0x11C); +static_assert(sizeof(UIEditCtrl4) == 0x13C); +static_assert(sizeof(UIEditCtrl5) == 0x13C); #endif extern bool g_inputSuggestionsEnabled; diff --git a/Source/UI/EntryQueue/UIEntryQueueWnd.cpp b/Source/UI/EntryQueue/UIEntryQueueWnd.cpp index c71d2933..d590f3fc 100644 --- a/Source/UI/EntryQueue/UIEntryQueueWnd.cpp +++ b/Source/UI/EntryQueue/UIEntryQueueWnd.cpp @@ -327,7 +327,7 @@ void UIEntryQueueStandByWnd::SetInfo(const char* queueName, int waiting, int ran // OFFSET: 0x00BA6000 // FUNCTION: fn_19704 UIEntryQueueWnd::UIEntryQueueWnd() - : UIFrameWnd(0), unknown_00BC(), m_labels(), m_values(), m_list(nullptr), saved(nullptr), m_applyButtons(), m_helpButton(nullptr) { + : UIFrameWnd(0), m_applyButtons(), m_helpButton(nullptr), m_labels(), m_values(), m_list(nullptr), saved(nullptr) { } // OFFSET: 0x00BA6110 diff --git a/Source/UI/EntryQueue/UIEntryQueueWnd.h b/Source/UI/EntryQueue/UIEntryQueueWnd.h index 126d253a..5f819856 100644 --- a/Source/UI/EntryQueue/UIEntryQueueWnd.h +++ b/Source/UI/EntryQueue/UIEntryQueueWnd.h @@ -25,7 +25,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; protected: - void* unknown_entryQueue; public: /* 00B4 */ UITextViewer* m_viewer; @@ -54,7 +53,6 @@ public: bool Create(); protected: - void* unknown_entryQueue; public: /* 00B4 */ UITextViewer* m_viewer; @@ -79,7 +77,6 @@ public: void SetInfo(const char* queueName, int waiting, int ranking); protected: - void* unknown_entryQueue; public: /* 00B4 */ std::string m_queueName; @@ -105,24 +102,21 @@ public: void SelectQueue(EntryQueueInfo* info); bool ConfirmApply(const char* type); - /* 00BC */ unsigned char unknown_00BC[0x8]; + /* 00B4 */ UIBitmapButton* m_applyButtons[3]; + /* 00C0 */ UIBitmapButton* m_helpButton; /* 00C4 */ UIStaticText* m_labels[7]; /* 00E0 */ UIStaticText* m_values[7]; /* 00FC */ UIEntryQueueListBox* m_list; /* 0100 */ EntryQueueWndInfo* saved; - -protected: - void* unknown_entryQueue; - void* unknown_listContext; - UIBitmapButton* m_applyButtons[3]; - UIBitmapButton* m_helpButton; }; #if defined(_WIN32) && !defined(_WIN64) +static_assert(offsetof(UIEntryQueueWnd, m_helpButton) == 0xC0); static_assert(offsetof(UIEntryQueueWnd, m_labels) == 0xC4); static_assert(offsetof(UIEntryQueueWnd, m_values) == 0xE0); static_assert(offsetof(UIEntryQueueWnd, m_list) == 0xFC); static_assert(offsetof(UIEntryQueueWnd, saved) == 0x100); +static_assert(sizeof(UIEntryQueueWnd) == 0x104); #endif #endif diff --git a/Source/UI/GameSettings/GameSettingsUI.cpp b/Source/UI/GameSettings/GameSettingsUI.cpp index 9d41d4f6..b91f463f 100644 --- a/Source/UI/GameSettings/GameSettingsUI.cpp +++ b/Source/UI/GameSettings/GameSettingsUI.cpp @@ -296,7 +296,7 @@ template void CUIComboBox::Create(int width, int itemHe this->itemHeight = itemHeight; this->SetSize(width + 2, itemHeight + 2); - T*& display = *reinterpret_cast(reinterpret_cast(this) + 0x80); + T*& display = this->display; display = new T(); display->SetSize(this->width, this->itemHeight); display->Move(1, 1); @@ -1830,6 +1830,26 @@ void CUIPage::Refresh() { } } +// OFFSET: 0x00A3C4A0 +// FUNCTION: fn_15888 +CUIGameSettingsUI::CUIGameSettingsUI() + : CUIFrameWnd(), m_titleBar(nullptr), m_currentPage(nullptr), m_graphicsPage(nullptr), m_pages(), m_tab(nullptr), m_pageContainer(nullptr), + m_applyButton(nullptr), m_closeButton(nullptr) { +} + +// OFFSET: 0x00A1EE20 +// FUNCTION: fn_15383 +void CUIGameSettingsUI::Slot53() { + this->unknown_00B4 = 1; + this->m_resolveSkin = true; + this->Resize(400, 350); + this->Move(0, 0); + this->Slot15(this->geometry.width, this->geometry.height); + this->Slot16(); + this->SetSkinColors(0, 0, 3, 1); + this->m_buttonBarStyle = 3; +} + // OFFSET: 0x00A41DE0 // FUNCTION: fn_16002 void CUIGameSettingsUI::Slot25(int x, int y) { diff --git a/Source/UI/GameSettings/GameSettingsUI.h b/Source/UI/GameSettings/GameSettingsUI.h index f437780a..0253eadb 100644 --- a/Source/UI/GameSettings/GameSettingsUI.h +++ b/Source/UI/GameSettings/GameSettingsUI.h @@ -4,6 +4,7 @@ #include "Render/DisplayMode.h" #include "Render/RenderAdapter.h" #include "Render/RenderBackends.h" +#include "UI/FrameSkin.h" #include "UI/Lists/UIListBoxTemplate.h" #include "UI/Window/UIControl.h" #include "UI/Window/UIFrameWnd.h" @@ -33,7 +34,7 @@ extern std::map g_optionHotkeys; template class CUIComboBox : public CUIControl { public: explicit CUIComboBox() - : CUIControl(), button(), unknown_0088(), listBox(nullptr), width(), itemHeight(0), visibleItems(1), onSelect(), onChange() { + : CUIControl(), display(), button(), unknown_0088(), listBox(nullptr), width(), itemHeight(0), visibleItems(1), onSelect(), onChange() { } void Paint() override; @@ -43,6 +44,7 @@ public: void Create(int width, int itemHeight, int visibleItems); void SetButton(const std::string& normal, const std::string& hover, const std::string& pressed, const std::string& disabled); + /* 0080 */ T* display; /* 0084 */ CUIButton* button; /* 0088 */ CUIImageButton* unknown_0088; /* 008C */ CUIListBoxEx* listBox; @@ -341,13 +343,14 @@ public: std::string GetHotkeyText(int tab, int index); } -class CUIGameSettingsUI : public UIFrameWnd { +class CUIGameSettingsUI : public CUIFrameWnd { public: - CUIGameSettingsUI(); + __declspec(noinline) CUIGameSettingsUI(); void Slot15(int width, int height) override; void Slot16() override; void Slot25(int x, int y) override; + void Slot53() override; void OnApply(); void OnCloseButton(); @@ -367,7 +370,6 @@ public: void sub_A43C70(); void ResetToDefaults(); - /* 00B8 */ unsigned char unknown_00B8[0x1C]; /* 00D8 */ CUITitleBar* m_titleBar; /* 00DC */ GameSettingsUI::CUIPage* m_currentPage; /* 00E0 */ GameSettingsUI::CUIGraphicsPage* m_graphicsPage; diff --git a/Source/UI/Gauges/UIPcGage.h b/Source/UI/Gauges/UIPcGage.h index 3ff11b21..cc3dba9e 100644 --- a/Source/UI/Gauges/UIPcGage.h +++ b/Source/UI/Gauges/UIPcGage.h @@ -13,7 +13,7 @@ public: bool CanHitTest() override; __declspec(noinline) void SetColor(std::uint32_t color); - /* 0080 */ std::uint32_t colors[7]; + /* 007C */ std::uint32_t colors[8]; }; class UIPcGage : public UIGage { @@ -70,7 +70,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(offsetof(UIGage, colors) == 0x80); +static_assert(offsetof(UIGage, colors) == 0x7C); static_assert(offsetof(UIPcGage, current) == 0xA0); static_assert(sizeof(UIPcGage) == 0xB0); #endif diff --git a/Source/UI/Gauges/UIPlayerGage.cpp b/Source/UI/Gauges/UIPlayerGage.cpp index 79cc1924..f3b01839 100644 --- a/Source/UI/Gauges/UIPlayerGage.cpp +++ b/Source/UI/Gauges/UIPlayerGage.cpp @@ -3,14 +3,14 @@ // OFFSET: 0x0086D2D0 // FUNCTION: fn_11044 UIGage::UIGage() : UIWindow(0) { - this->unknown_007C = 0x009B1914; - this->colors[0] = 0x00444444; - this->colors[1] = 0x0025EA16; - this->colors[2] = 0x00DB651D; - this->colors[3] = 0x001616EA; - this->colors[4] = 0x00E1E4FF; - this->colors[5] = 0x001616EA; - this->colors[6] = 0x0060C0FF; + this->colors[0] = 0x009B1914; + this->colors[1] = 0x00444444; + this->colors[2] = 0x0025EA16; + this->colors[3] = 0x00DB651D; + this->colors[4] = 0x001616EA; + this->colors[5] = 0x00E1E4FF; + this->colors[6] = 0x001616EA; + this->colors[7] = 0x0060C0FF; } // OFFSET: 0x0086E120 @@ -31,10 +31,10 @@ UIPlayerGage::UIPlayerGage() : unknown_009C(0) { // OFFSET: 0x0086DE90 // FUNCTION: fn_11061 UIMonsterGage::UIMonsterGage() : m_threshold(0x19) { - this->unknown_007C = 0x009C1810; - this->colors[0] = 0x00424142; - this->colors[1] = 0x00E700FF; - this->colors[3] = 0x0000FFFF; + this->colors[0] = 0x009C1810; + this->colors[1] = 0x00424142; + this->colors[2] = 0x00E700FF; + this->colors[4] = 0x0000FFFF; this->unknown_009C = 1; } diff --git a/Source/UI/Guild/UIAgitWnd.h b/Source/UI/Guild/UIAgitWnd.h index 68f0fee5..609128c8 100644 --- a/Source/UI/Guild/UIAgitWnd.h +++ b/Source/UI/Guild/UIAgitWnd.h @@ -6,7 +6,6 @@ #include - class UIAgitMessageBox : public UIFrameWnd { public: UIAgitMessageBox(); @@ -16,7 +15,6 @@ public: void sub_956130(const char* text, int width, int height); /* 00B4 */ std::uint16_t m_agitId; - void* unknown_dialog; }; class UIListBoxAgit : public UIListBox { diff --git a/Source/UI/Guild/UIGuildHelperWnd.h b/Source/UI/Guild/UIGuildHelperWnd.h index d1432b9c..a170e84c 100644 --- a/Source/UI/Guild/UIGuildHelperWnd.h +++ b/Source/UI/Guild/UIGuildHelperWnd.h @@ -27,7 +27,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; protected: - void* unknown_controls; /* 00B4 */ UIBitmapButton* m_button; /* 00B8 */ GuildHelperWndInfo* m_saved; }; @@ -56,7 +55,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; protected: - void* unknown_controls; /* 00B4 */ UITextViewer* m_textViewer; /* 00B8 */ UIBitmapButton* m_closeButton; }; diff --git a/Source/UI/Guild/UIGuildWnd.h b/Source/UI/Guild/UIGuildWnd.h index 90567c36..e42ecabd 100644 --- a/Source/UI/Guild/UIGuildWnd.h +++ b/Source/UI/Guild/UIGuildWnd.h @@ -76,7 +76,6 @@ protected: /* 00B4 */ GuildWndInfo* m_saved; /* 00B8 */ UIStaticText* m_tabs[6]; - void* unknown_controls; }; class UIGuildBanishedMemberWnd : public UIGuildWnd { @@ -99,7 +98,6 @@ protected: /* 0134 */ int m_columns; /* 0138 */ int m_visibleRows; /* 013C */ int m_scrollable; - ForbiddenWords* m_forbiddenWords; }; class UIGuildInfoManageWnd : public UIGuildWnd { @@ -129,7 +127,6 @@ protected: /* 00FC */ int m_hostileRow; /* 0100 */ UIListBoxAgit* m_agitList; /* 0104 */ UIListBoxAgitMenu* m_agitMenu; - void* unknown_listContext; }; class UIGuildMemberManageWnd : public UIGuildWnd { diff --git a/Source/UI/Guild/UIGuild_Storage_Log.h b/Source/UI/Guild/UIGuild_Storage_Log.h index b6a8cf12..4d406ee3 100644 --- a/Source/UI/Guild/UIGuild_Storage_Log.h +++ b/Source/UI/Guild/UIGuild_Storage_Log.h @@ -50,7 +50,6 @@ protected: /* 0184 */ std::uint32_t* unknown_0184; /* 0188 */ std::uint32_t* unknown_0188; /* 018C */ std::uint32_t* unknown_018C; - void* unknown_controls; void FillRows(); }; diff --git a/Source/UI/Item/UIItemBaseWnd.h b/Source/UI/Item/UIItemBaseWnd.h index ebf432d1..be51fc16 100644 --- a/Source/UI/Item/UIItemBaseWnd.h +++ b/Source/UI/Item/UIItemBaseWnd.h @@ -7,7 +7,6 @@ #include #include - class UIItemBaseWnd : public UIFrameWnd { public: UIItemBaseWnd(); @@ -27,12 +26,7 @@ public: /* 00B8 */ int unknown_00B8; /* 00BC */ UIWindow* resizer; /* 00C0 */ UIWindow* scrollBar; - /* 00C4 */ UIWindow* buttons[2]; - -protected: - void* unknown_controls; - -public: + /* 00C4 */ UIWindow* buttons[5]; /* 00D8 */ int scroll; /* 00DC */ int visibleRows; /* 00E0 */ int columns; diff --git a/Source/UI/Item/UIItemStoreSubWnd.h b/Source/UI/Item/UIItemStoreSubWnd.h index d877be72..e3914173 100644 --- a/Source/UI/Item/UIItemStoreSubWnd.h +++ b/Source/UI/Item/UIItemStoreSubWnd.h @@ -48,6 +48,8 @@ public: /* 0138 */ std::string unknown_0138; /* 0150 */ WindowPlacement* saved; /* 0154 */ int tabIndex; + /* 0158 */ unsigned char unknown_0158; + /* 0159 */ unsigned char unknown_0159[7]; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Item/UIParaItemShopWnd.h b/Source/UI/Item/UIParaItemShopWnd.h index a0bfb453..fd628955 100644 --- a/Source/UI/Item/UIParaItemShopWnd.h +++ b/Source/UI/Item/UIParaItemShopWnd.h @@ -49,9 +49,6 @@ public: /* 00F8 */ int unknown_00F8; /* 00FC */ int unknown_00FC; /* 0100 */ int unknown_0100; - -protected: - void* unknown_recorder; }; #endif diff --git a/Source/UI/Items/MergeItemWnd.h b/Source/UI/Items/MergeItemWnd.h index 71e7111f..6574fd3e 100644 --- a/Source/UI/Items/MergeItemWnd.h +++ b/Source/UI/Items/MergeItemWnd.h @@ -54,9 +54,6 @@ public: /* 010C */ int m_visibleCount; /* 0110 */ int m_scrollRow; /* 0114 */ int m_scrollable; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Items/UICardItemIllustWnd.h b/Source/UI/Items/UICardItemIllustWnd.h index bf234b25..92240708 100644 --- a/Source/UI/Items/UICardItemIllustWnd.h +++ b/Source/UI/Items/UICardItemIllustWnd.h @@ -5,7 +5,6 @@ #include - class UICardItemIllustWnd : public UIFrameWnd { public: UICardItemIllustWnd(); @@ -16,9 +15,6 @@ public: /* 00B4 */ std::string m_bitmapPath; /* 00CC */ std::string m_name; /* 00E4 */ unsigned char unknown_00E4; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Items/UIIllustWnd.h b/Source/UI/Items/UIIllustWnd.h index 81a02e4b..5c0a0165 100644 --- a/Source/UI/Items/UIIllustWnd.h +++ b/Source/UI/Items/UIIllustWnd.h @@ -5,7 +5,6 @@ #include - class UIIllustWnd : public UIFrameWnd { public: UIIllustWnd(); @@ -20,7 +19,6 @@ protected: /* 00B4 */ int m_titled; /* 00B8 */ int m_closable; /* 00BC */ std::string m_bitmapName; - void* unknown_controls; }; class UIMultiIllustWnd : public UIFrameWnd { @@ -39,7 +37,6 @@ protected: /* 00B8 */ int m_closable; /* 00BC */ std::string m_bitmapName; /* 00D4 */ int m_state; - void* unknown_controls; }; #endif diff --git a/Source/UI/Items/UIItemParamChangeDisplayWnd.h b/Source/UI/Items/UIItemParamChangeDisplayWnd.h index abe6d537..6c34ca78 100644 --- a/Source/UI/Items/UIItemParamChangeDisplayWnd.h +++ b/Source/UI/Items/UIItemParamChangeDisplayWnd.h @@ -32,9 +32,6 @@ public: ITEM_INFO FindEquippedItem(int location); void SumEquippedStats(); - -protected: - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Items/UIItemRepairWnd.h b/Source/UI/Items/UIItemRepairWnd.h index e7683116..4799e04c 100644 --- a/Source/UI/Items/UIItemRepairWnd.h +++ b/Source/UI/Items/UIItemRepairWnd.h @@ -29,17 +29,12 @@ public: std::vector BuildReplayRecords(); protected: - void* unknown_controls; - void* unknown_listContext; public: /* 00B4 */ UIListBox* m_list; /* 00B8 */ std::vector itemIds; /* 00C4 */ std::vector indices; /* 00D0 */ std::list entries; - -protected: - void* unknown_recorder; }; #endif diff --git a/Source/UI/Items/UIMakeTargetListWnd.h b/Source/UI/Items/UIMakeTargetListWnd.h index 5c536d53..12180547 100644 --- a/Source/UI/Items/UIMakeTargetListWnd.h +++ b/Source/UI/Items/UIMakeTargetListWnd.h @@ -18,14 +18,9 @@ public: /* 00B4 */ UIListBox* m_list; protected: - void* unknown_controls; - void* unknown_listContext; public: /* 00B8 */ std::vector itemIds; - -protected: - void* unknown_recorder; }; #endif diff --git a/Source/UI/Items/UIMakeTargetProcessWnd.h b/Source/UI/Items/UIMakeTargetProcessWnd.h index 489cb36c..2b94519f 100644 --- a/Source/UI/Items/UIMakeTargetProcessWnd.h +++ b/Source/UI/Items/UIMakeTargetProcessWnd.h @@ -6,7 +6,6 @@ #include - class UIMakeTargetProcessWnd : public UIFrameWnd { public: UIMakeTargetProcessWnd(); @@ -20,10 +19,6 @@ public: /* 00B4 */ int makeType; /* 00B8 */ ITEM_INFO materials[3]; - -protected: - void* unknown_controls; - void* unknown_recorder; }; #endif diff --git a/Source/UI/Items/UIMakeTargetResultWnd.h b/Source/UI/Items/UIMakeTargetResultWnd.h index 80f8b1f2..50b12e48 100644 --- a/Source/UI/Items/UIMakeTargetResultWnd.h +++ b/Source/UI/Items/UIMakeTargetResultWnd.h @@ -3,7 +3,6 @@ #include "UI/Window/UIFrameWnd.h" - class UIMakeTargetResultWnd : public UIFrameWnd { public: UIMakeTargetResultWnd(); @@ -12,7 +11,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; protected: - void* unknown_controls; public: /* 00B4 */ int makeType; diff --git a/Source/UI/Items/UISpellListWnd.h b/Source/UI/Items/UISpellListWnd.h index a2996e3b..f56981ef 100644 --- a/Source/UI/Items/UISpellListWnd.h +++ b/Source/UI/Items/UISpellListWnd.h @@ -6,7 +6,6 @@ #include #include - class UISpellListWnd : public UIItemIdentifyWnd { public: UISpellListWnd(); @@ -16,9 +15,6 @@ public: void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Items/UISwapEquipmentWnd.h b/Source/UI/Items/UISwapEquipmentWnd.h index 0fc86886..30ffe6af 100644 --- a/Source/UI/Items/UISwapEquipmentWnd.h +++ b/Source/UI/Items/UISwapEquipmentWnd.h @@ -48,7 +48,6 @@ protected: /* 00D4 */ int unknown_00D4; /* 00D8 */ int unknown_00D8; /* 00DC */ int unknown_00DC; - void* unknown_controls; }; #endif diff --git a/Source/UI/Items/UIWeaponRefineWnd.h b/Source/UI/Items/UIWeaponRefineWnd.h index 29b3353c..b8588df0 100644 --- a/Source/UI/Items/UIWeaponRefineWnd.h +++ b/Source/UI/Items/UIWeaponRefineWnd.h @@ -18,15 +18,10 @@ public: /* 00B4 */ UIListBox* m_list; protected: - void* unknown_controls; - void* unknown_listContext; public: /* 00B8 */ std::vector itemIds; /* 00C4 */ std::vector indices; - -protected: - void* unknown_recorder; }; #endif diff --git a/Source/UI/Lists/UIChatHisBox.cpp b/Source/UI/Lists/UIChatHisBox.cpp index e19cf334..5bbe4f34 100644 --- a/Source/UI/Lists/UIChatHisBox.cpp +++ b/Source/UI/Lists/UIChatHisBox.cpp @@ -21,7 +21,7 @@ std::string UIChatHisBox::ResolvePlayerTags(const char* name) { std::string result = ""; - for (std::vector& row : this->ItemTags()) { + for (std::vector& row : this->itemTags) { const int count = static_cast(row.size()); int position = 0; @@ -87,7 +87,6 @@ void UIChatHisBox::sub_89C080() { // OFFSET: 0x0086C8D0 // FUNCTION: fn_11032 UIChatHisBox::UIChatHisBox() : UIListBox() { - new (&this->ItemTags()) std::list>(); this->maxLines = 240; this->lineHeight = 14; this->lines.reserve(240); diff --git a/Source/UI/Lists/UIChatHisBox.h b/Source/UI/Lists/UIChatHisBox.h index 9effbada..a2e16388 100644 --- a/Source/UI/Lists/UIChatHisBox.h +++ b/Source/UI/Lists/UIChatHisBox.h @@ -52,10 +52,7 @@ public: std::string Convert(const std::string& text); std::string BracketName(const std::string& name); - // INLINED - std::list>& ItemTags() { - return *reinterpret_cast>*>(reinterpret_cast(this) + 0xD4); - } + /* 00D4 */ std::list> itemTags; /* 00DC */ std::list> naviLinks; /* 00E4 */ std::vector unknown_00E4; diff --git a/Source/UI/Lists/UIComboBox.h b/Source/UI/Lists/UIComboBox.h index 280dbdf3..de21e993 100644 --- a/Source/UI/Lists/UIComboBox.h +++ b/Source/UI/Lists/UIComboBox.h @@ -19,7 +19,7 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; void Refresh() override; - /* 00DC */ int targetId; + /* 00D4 */ int targetId; }; extern int g_closeChatAfterGroups; diff --git a/Source/UI/Lists/UIComboBoxDefWnd.h b/Source/UI/Lists/UIComboBoxDefWnd.h index f9cbe471..8afdf861 100644 --- a/Source/UI/Lists/UIComboBoxDefWnd.h +++ b/Source/UI/Lists/UIComboBoxDefWnd.h @@ -46,7 +46,6 @@ public: /* 0080 */ UIStaticText* label; protected: - void* unknown_buttons; public: /* 0084 */ unsigned char borderless; @@ -84,8 +83,8 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIComboBoxDefWnd) == 172); -static_assert(sizeof(UIComboBoxDef2Wnd) == 188); +static_assert(sizeof(UIComboBoxDefWnd) == 0xA8); +static_assert(sizeof(UIComboBoxDef2Wnd) == 0xB8); #endif #endif diff --git a/Source/UI/Lists/UIComboBoxEx.h b/Source/UI/Lists/UIComboBoxEx.h index dfd26d48..21405952 100644 --- a/Source/UI/Lists/UIComboBoxEx.h +++ b/Source/UI/Lists/UIComboBoxEx.h @@ -36,8 +36,8 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIComboBoxEx) == 204); -static_assert(sizeof(UIComboBoxEx2) == 208); +static_assert(sizeof(UIComboBoxEx) == 0xC4); +static_assert(sizeof(UIComboBoxEx2) == 0xC8); #endif #endif diff --git a/Source/UI/Lists/UIDropDownBox.h b/Source/UI/Lists/UIDropDownBox.h index ebfb4eec..016a494c 100644 --- a/Source/UI/Lists/UIDropDownBox.h +++ b/Source/UI/Lists/UIDropDownBox.h @@ -18,7 +18,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(CUIDropDownBox) == 136); +static_assert(sizeof(CUIDropDownBox) == 0x84); #endif #endif diff --git a/Source/UI/Lists/UIImgMenu.h b/Source/UI/Lists/UIImgMenu.h index e3c9a975..52531327 100644 --- a/Source/UI/Lists/UIImgMenu.h +++ b/Source/UI/Lists/UIImgMenu.h @@ -16,6 +16,8 @@ public: void Slot31(int x, int y) override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; + + /* 007C */ int hovered; /* 0080 */ int count; /* 0084 */ int itemWidth; /* 0088 */ int itemHeight; @@ -25,7 +27,6 @@ public: /* 0098 */ std::string bitmapName; /* 00B0 */ std::string baseName; /* 00C8 */ int unknown_00C8; - /* 007C */ int hovered; }; #endif diff --git a/Source/UI/Lists/UIListBox.cpp b/Source/UI/Lists/UIListBox.cpp index 06697fdf..3f417d79 100644 --- a/Source/UI/Lists/UIListBox.cpp +++ b/Source/UI/Lists/UIListBox.cpp @@ -39,7 +39,8 @@ UIListBox::UIListBox() // OFFSET: 0x0086E750 // FUNCTION: fn_11076 UIServerListBox::UIServerListBox() : UIListBox() { - *reinterpret_cast(reinterpret_cast(this) + 0xD8) = 0; + this->unknown_00D4 = 0; + this->unknown_00D8 = 0; this->unknown_00DC = 0; this->unknown_00E0 = 0; } diff --git a/Source/UI/Lists/UIListBox.h b/Source/UI/Lists/UIListBox.h index 7a5c9e75..105016fa 100644 --- a/Source/UI/Lists/UIListBox.h +++ b/Source/UI/Lists/UIListBox.h @@ -53,15 +53,14 @@ public: /* 00C8 */ std::uint32_t textColor; /* 00CC */ unsigned char centerVertically; /* 00D0 */ int textInset; - -protected: - void* unknown_listContext; }; class UIServerListBox : public UIListBox { public: UIServerListBox(); + /* 00D4 */ int unknown_00D4; + /* 00D8 */ int unknown_00D8; /* 00DC */ int unknown_00DC; /* 00E0 */ int unknown_00E0; }; @@ -78,7 +77,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIListBox) == 220); +static_assert(sizeof(UIListBox) == 0xD4); static_assert(offsetof(UIServerListBox, unknown_00DC) == 0xDC); static_assert(offsetof(UIServerListBox, unknown_00E0) == 0xE0); #endif diff --git a/Source/UI/Lists/UIListBoxEx.h b/Source/UI/Lists/UIListBoxEx.h index 640f8bf9..0ddd7c8e 100644 --- a/Source/UI/Lists/UIListBoxEx.h +++ b/Source/UI/Lists/UIListBoxEx.h @@ -48,13 +48,12 @@ public: /* 00BC */ std::uint32_t selectionColor; protected: - void* unknown_listContext; int LineAt(int x, int y) const; }; #if defined(_WIN32) && !defined(_WIN64) static_assert(sizeof(ExtendedListLine) == 28); -static_assert(sizeof(UIListBoxEx) == 200); +static_assert(sizeof(UIListBoxEx) == 0xC0); #endif #endif diff --git a/Source/UI/Lists/UIListBoxID.h b/Source/UI/Lists/UIListBoxID.h index bbc177ba..42617f50 100644 --- a/Source/UI/Lists/UIListBoxID.h +++ b/Source/UI/Lists/UIListBoxID.h @@ -44,6 +44,7 @@ public: /* 00AC */ UIScrollBar* horizontalBar; /* 00B0 */ int transparent; /* 00B4 */ int lineHeight; + /* 00B8 */ unsigned char unknown_00B8[0x4]; /* 00BC */ std::uint32_t selectionColor; }; diff --git a/Source/UI/Lists/UIListBoxTemplate.h b/Source/UI/Lists/UIListBoxTemplate.h index 9231fe0e..1b194ee3 100644 --- a/Source/UI/Lists/UIListBoxTemplate.h +++ b/Source/UI/Lists/UIListBoxTemplate.h @@ -28,11 +28,7 @@ public: virtual void SetFrozen(bool frozen); __declspec(noinline) void SetImageResources(CBitmapRes* normal, CBitmapRes* hover, CBitmapRes* pressed, CBitmapRes* disabled); - std::map& Images() { - return *reinterpret_cast*>(&this->hitEnabled); - } - - /* 0084 */ unsigned char unknown_0084[0x04]; + /* 0080 */ std::map images; /* 0088 */ int selected; /* 008C */ CBitmapRes* disabledImage; /* 0090 */ unsigned char frozen; @@ -269,9 +265,10 @@ public: } CResPtr& NormalImage() { - return *reinterpret_cast*>(&this->hitEnabled); + return this->unknown_0080; } + /* 0080 */ CResPtr unknown_0080; /* 0084 */ CResPtr unknown_0084; /* 0088 */ CResPtr unknown_0088; /* 008C */ CResPtr unknown_008C; @@ -469,9 +466,10 @@ public: } CResPtr& NormalImage() { - return *reinterpret_cast*>(&this->hitEnabled); + return this->unknown_0080; } + /* 0080 */ CResPtr unknown_0080; /* 0084 */ CResPtr unknown_0084; /* 0088 */ CResPtr unknown_0088; /* 008C */ CResPtr unknown_008C; diff --git a/Source/UI/Lists/UIMemberListBox.h b/Source/UI/Lists/UIMemberListBox.h index 8b66e645..4dfeb2f8 100644 --- a/Source/UI/Lists/UIMemberListBox.h +++ b/Source/UI/Lists/UIMemberListBox.h @@ -3,7 +3,6 @@ #include "UI/Lists/UIChatHisBox.h" - class UIChatHisBox2 : public UIChatHisBox { public: UIChatHisBox2(); @@ -38,9 +37,6 @@ public: void Slot28(int x, int y) override; void Slot32(int x, int y) override; void Slot33(int x, int y) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Lists/UIScrollBar.cpp b/Source/UI/Lists/UIScrollBar.cpp index 127ad9d8..e930ae6d 100644 --- a/Source/UI/Lists/UIScrollBar.cpp +++ b/Source/UI/Lists/UIScrollBar.cpp @@ -1163,8 +1163,8 @@ void UIChatHisBox::DropOldestRecords() { // FUNCTION: fn_11258 void UIChatHisBox::ShiftItemTags() { const unsigned int half = static_cast(this->lines.size()) / 2; - std::list>::iterator row = this->ItemTags().begin(); - while (row != this->ItemTags().end()) { + std::list>::iterator row = this->itemTags.begin(); + while (row != this->itemTags.end()) { bool removed = false; for (unsigned int index = 0; index < row->size(); ++index) { (*row)[index]->line -= half; @@ -1181,7 +1181,7 @@ void UIChatHisBox::ShiftItemTags() { std::vector buttons; buttons.swap(*row); - row = this->ItemTags().erase(row); + row = this->itemTags.erase(row); } } @@ -1327,7 +1327,7 @@ void UIChatHisBox::PlaceItemTags(int line) { end = static_cast(this->lines.size()); } - for (std::vector& row : this->ItemTags()) { + for (std::vector& row : this->itemTags) { for (unsigned int index = 0; index < row.size(); ++index) { UIItemTagButton* button = row[index]; const int buttonLine = button->line; @@ -1897,7 +1897,7 @@ std::string UIChatHisBox::RenderItemLinks(const char* lineText, std::string& sou } source = source.substr(previous); - this->ItemTags().push_back(buttons); + this->itemTags.push_back(buttons); return result; } diff --git a/Source/UI/Lists/UITabControl.h b/Source/UI/Lists/UITabControl.h index cfa3280b..a378445f 100644 --- a/Source/UI/Lists/UITabControl.h +++ b/Source/UI/Lists/UITabControl.h @@ -39,6 +39,7 @@ public: void Slot28(int x, int y) override; void Slot31(int x, int y) override; + /* 007C */ int unknown_007C; /* 0080 */ int layout; /* 0084 */ int tabHeight; /* 0088 */ int tabPadding; @@ -59,12 +60,8 @@ public: /* 00CC */ std::vector widths; /* 00D8 */ UIEditCtrl* edit; /* 00DC */ std::vector tooltips; - /* 007C */ int unknown_007C; /* 00E8 */ int unknown_00E8; /* 00EC */ std::vector flags; - -private: - void* unknown_controls; }; #endif diff --git a/Source/UI/Lists/UIThumb.h b/Source/UI/Lists/UIThumb.h index 0cc8fdcc..ee81303f 100644 --- a/Source/UI/Lists/UIThumb.h +++ b/Source/UI/Lists/UIThumb.h @@ -18,12 +18,13 @@ public: __declspec(noinline) void SetImages(const std::string& top, const std::string& middle, const std::string& bottom); void SetImage(const std::string& name); + + /* 0080 */ unsigned char resizable; /* 0084 */ CResPtr top; /* 0088 */ CResPtr middle; /* 008C */ CResPtr bottom; /* 0090 */ int dragOrigin; /* 0094 */ unsigned char transparent; - /* 0080 */ unsigned char resizable; /* 0098 */ std::string tooltip; /* 00B0 */ std::string topName; /* 00C8 */ std::string middleName; diff --git a/Source/UI/Lists/UITreeView.h b/Source/UI/Lists/UITreeView.h index e9619e2b..e8f67d09 100644 --- a/Source/UI/Lists/UITreeView.h +++ b/Source/UI/Lists/UITreeView.h @@ -69,7 +69,6 @@ protected: /* 00A8 */ int unknown_00A8; /* 00AC */ unsigned char unknown_00AC; - void* unknown_controls; /* 00B0 */ int unknown_00B0; }; diff --git a/Source/UI/Lists/UIVScrollBar.h b/Source/UI/Lists/UIVScrollBar.h index b5efffe6..c5de4bc0 100644 --- a/Source/UI/Lists/UIVScrollBar.h +++ b/Source/UI/Lists/UIVScrollBar.h @@ -37,6 +37,8 @@ public: __declspec(noinline) void SetBackground(const std::string& name); void SetOnChange(std::function handler); + + /* 0080 */ CUIImageButton* upButton; /* 0084 */ CUIImageButton* downButton; /* 0088 */ CUIThumb* thumb; /* 008C */ CResPtr background; @@ -52,7 +54,6 @@ public: /* 00AC */ std::string backgroundName; /* 00C4 */ int unknown_00C4; /* 00C8 */ std::function onChange; - /* 0080 */ CUIImageButton* upButton; }; class CUIHScrollBar : public CUIVScrollBar { diff --git a/Source/UI/Navigation/UINavigationV4Wnd.h b/Source/UI/Navigation/UINavigationV4Wnd.h index f5269bfa..19010588 100644 --- a/Source/UI/Navigation/UINavigationV4Wnd.h +++ b/Source/UI/Navigation/UINavigationV4Wnd.h @@ -73,8 +73,7 @@ public: /* 0114 */ int unknown_0114; /* 0118 */ int unknown_0118; /* 011C */ int unknown_011C; - void* unknown_controls; - void* unknown_listContext; + /* 0120 */ unsigned char unknown_0120[4]; }; class UIStaticBitmap; @@ -88,9 +87,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; /* 00B4 */ UIStaticBitmap* icon; - -protected: - void* unknown_controls; }; class UINavigationRuideWnd : public UIFrameWnd { @@ -102,13 +98,9 @@ public: void RefreshRoute(); protected: - void* unknown_controls; public: /* 00B4 */ UIListBox_NaviSearch* routeList; - -protected: - void* unknown_listContext; }; extern int g_navigationTab; diff --git a/Source/UI/Party/UIAdvenPartyBoardWnd.h b/Source/UI/Party/UIAdvenPartyBoardWnd.h index c3df5c86..44197695 100644 --- a/Source/UI/Party/UIAdvenPartyBoardWnd.h +++ b/Source/UI/Party/UIAdvenPartyBoardWnd.h @@ -72,7 +72,7 @@ private: static_assert(offsetof(PartyBoardPlacement, y) == 0x04); static_assert(offsetof(PartyBoardPlacement, width) == 0x08); static_assert(offsetof(PartyBoardPlacement, height) == 0x0C); -static_assert(sizeof(UIAdvenPartyBoardWnd) == 348); +static_assert(sizeof(UIAdvenPartyBoardWnd) == 0x154); #endif #endif diff --git a/Source/UI/Party/UIApplyForPartyWnd.h b/Source/UI/Party/UIApplyForPartyWnd.h index d639bbaf..30b225e6 100644 --- a/Source/UI/Party/UIApplyForPartyWnd.h +++ b/Source/UI/Party/UIApplyForPartyWnd.h @@ -20,7 +20,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIApplyForPartyWnd) == 268); +static_assert(sizeof(UIApplyForPartyWnd) == 0x104); #endif #endif diff --git a/Source/UI/Party/UIPartyInfoWnd.h b/Source/UI/Party/UIPartyInfoWnd.h index c8819b11..26d69916 100644 --- a/Source/UI/Party/UIPartyInfoWnd.h +++ b/Source/UI/Party/UIPartyInfoWnd.h @@ -28,7 +28,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIPartyInfoWnd) == 464); +static_assert(sizeof(UIPartyInfoWnd) == 0x1C8); #endif #endif diff --git a/Source/UI/Party/UIPartySettingWnd.h b/Source/UI/Party/UIPartySettingWnd.h index 06b41e58..196aa112 100644 --- a/Source/UI/Party/UIPartySettingWnd.h +++ b/Source/UI/Party/UIPartySettingWnd.h @@ -25,14 +25,6 @@ public: void Slot15(int width, int height) override; void Paint() override; void Slot25(int x, int y) override; - -protected: - void* unknown_controls; - -public: - /* 00E0 */ UIEditCtrl* m_edit; - -protected: }; class UIPartyInvitationToWnd : public UIPartySettingWnd { @@ -42,6 +34,8 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; void Slot15(int width, int height) override; + + /* 00E0 */ UIEditCtrl* m_edit; }; #endif diff --git a/Source/UI/Party/UIRegisterPartyWnd.h b/Source/UI/Party/UIRegisterPartyWnd.h index 96d79ac8..6110e424 100644 --- a/Source/UI/Party/UIRegisterPartyWnd.h +++ b/Source/UI/Party/UIRegisterPartyWnd.h @@ -37,7 +37,7 @@ private: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIRegisterPartyWnd) == 240); +static_assert(sizeof(UIRegisterPartyWnd) == 0xE8); #endif #endif diff --git a/Source/UI/Party/UIRequestJoinPartyWnd.h b/Source/UI/Party/UIRequestJoinPartyWnd.h index b8dd6dde..d5bb3f73 100644 --- a/Source/UI/Party/UIRequestJoinPartyWnd.h +++ b/Source/UI/Party/UIRequestJoinPartyWnd.h @@ -38,7 +38,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIRequestJoinPartyWnd) == 244); +static_assert(sizeof(UIRequestJoinPartyWnd) == 0xEC); #endif #endif diff --git a/Source/UI/Quest/UIOngoingQuestInfo.cpp b/Source/UI/Quest/UIOngoingQuestInfo.cpp index a0effc26..913e9922 100644 --- a/Source/UI/Quest/UIOngoingQuestInfo.cpp +++ b/Source/UI/Quest/UIOngoingQuestInfo.cpp @@ -675,7 +675,7 @@ void CUIScrollWindow::Slot15(int width, int height) { namespace OngoingQuestInfo { // OFFSET: 0x00A54D00 // FUNCTION: fn_16289 -CUIContents::CUIContents() : CUIControl(), title(nullptr), textViewer(nullptr), icon(nullptr) { +CUIContents::CUIContents() : CUIControl(), icon(nullptr), title(nullptr), textViewer(nullptr) { } } @@ -689,14 +689,14 @@ namespace OngoingQuestInfo { // OFFSET: 0x00A54F20 // FUNCTION: fn_16292 CUIRewards::CUIRewards() - : CUIControl(), title(nullptr), firstLabel(nullptr), firstText(nullptr), secondLabel(nullptr), secondText(nullptr), thirdLabel(nullptr), - rewardList(nullptr), npcSprite(nullptr), icon(nullptr) { + : CUIControl(), icon(nullptr), title(nullptr), firstLabel(nullptr), firstText(nullptr), secondLabel(nullptr), secondText(nullptr), thirdLabel(nullptr), + rewardList(nullptr), npcSprite(nullptr) { } // OFFSET: 0x00A54FF0 // FUNCTION: fn_16293 CUIScrollWindow::CUIScrollWindow() - : CUIControl(), firstLine(nullptr), secondContents(nullptr), secondLine(nullptr), rewards(nullptr), scrollBar(nullptr), firstContents(nullptr) { + : CUIControl(), firstContents(nullptr), firstLine(nullptr), secondContents(nullptr), secondLine(nullptr), rewards(nullptr), scrollBar(nullptr) { } } diff --git a/Source/UI/Quest/UIOngoingQuestInfo.h b/Source/UI/Quest/UIOngoingQuestInfo.h index c89e498f..c5eb544f 100644 --- a/Source/UI/Quest/UIOngoingQuestInfo.h +++ b/Source/UI/Quest/UIOngoingQuestInfo.h @@ -63,9 +63,9 @@ public: this->m_clip = 1; } + /* 0080 */ CUIStaticImage* icon; /* 0084 */ CUIStaticText* title; /* 0088 */ CUITextViewer* textViewer; - /* 0080 */ CUIStaticImage* icon; }; class CUIRewardItem : public CUIListItem { @@ -98,6 +98,7 @@ public: this->m_clip = 1; } + /* 0080 */ CUIStaticImage* icon; /* 0084 */ CUIStaticText* title; /* 0088 */ CUIStaticText* firstLabel; /* 008C */ CUIStaticText* firstText; @@ -106,7 +107,6 @@ public: /* 0098 */ CUIStaticText* thirdLabel; /* 009C */ CUIListBoxEx* rewardList; /* 00A0 */ UINpcSprWnd* npcSprite; - /* 0080 */ CUIStaticImage* icon; }; class CUIScrollWindow : public CUIControl { @@ -132,20 +132,20 @@ public: return total; } + /* 0080 */ CUIContents* firstContents; /* 0084 */ CUIStaticImage* firstLine; /* 0088 */ CUIContents* secondContents; /* 008C */ CUIStaticImage* secondLine; /* 0090 */ CUIRewards* rewards; /* 0094 */ CUIVScrollBar* scrollBar; - /* 0080 */ CUIContents* firstContents; }; } #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(OngoingQuestInfo::CUIContents) == 0x90); -static_assert(sizeof(OngoingQuestInfo::CUIRewards) == 0xA8); -static_assert(sizeof(OngoingQuestInfo::CUIScrollWindow) == 0x9C); +static_assert(sizeof(OngoingQuestInfo::CUIContents) == 0x8C); +static_assert(sizeof(OngoingQuestInfo::CUIRewards) == 0xA4); +static_assert(sizeof(OngoingQuestInfo::CUIScrollWindow) == 0x98); static_assert(offsetof(OngoingQuestInfo::CUIRewardItem, gameItem) == 0xEC); #endif diff --git a/Source/UI/Quest/UIQuestDisplay.h b/Source/UI/Quest/UIQuestDisplay.h index e4c7da5f..d22b84a0 100644 --- a/Source/UI/Quest/UIQuestDisplay.h +++ b/Source/UI/Quest/UIQuestDisplay.h @@ -23,6 +23,7 @@ public: void Create(int width, int height); protected: + /* 007C */ unsigned int unknown_007C; /* 0080 */ int m_selectedIndex; /* 0084 */ std::vector m_menuItems; /* 0090 */ int* m_visibleSetting; diff --git a/Source/UI/Quest/UIRenewQuestUI.h b/Source/UI/Quest/UIRenewQuestUI.h index 3b364552..73d5c172 100644 --- a/Source/UI/Quest/UIRenewQuestUI.h +++ b/Source/UI/Quest/UIRenewQuestUI.h @@ -82,6 +82,9 @@ public: void sub_A67290(unsigned int flags); void sub_A66FF0(unsigned int questId); + + /* 00D8 */ CUITitleBar* titleBar; + /* 00DC */ CUIStaticImage* background; /* 00E0 */ CUITab* tab; /* 00E4 */ CUICheckBox* checkBox; /* 00E8 */ CUIStaticText* filterLabel; @@ -93,8 +96,6 @@ public: /* 0108 */ CUIImageButton* searchButton; /* 010C */ int filter; /* 0110 */ std::string searchText; - /* 00D8 */ CUITitleBar* titleBar; - /* 00DC */ CUIStaticImage* background; }; template <> @@ -106,7 +107,7 @@ void CUIListBoxEx::Slot53(int resolve #if defined(_WIN32) && !defined(_WIN64) static_assert(sizeof(RenewQuestUI::CUIQuestItem) == 0x110); -static_assert(sizeof(CUIRenewQuestUI) == 0x130); +static_assert(sizeof(CUIRenewQuestUI) == 0x128); #endif #endif diff --git a/Source/UI/Quest/UIRenewQuestWnd.h b/Source/UI/Quest/UIRenewQuestWnd.h index 4ad0457a..1c05258a 100644 --- a/Source/UI/Quest/UIRenewQuestWnd.h +++ b/Source/UI/Quest/UIRenewQuestWnd.h @@ -93,9 +93,6 @@ public: /* 00C4 */ std::string m_timeText; /* 00DC */ std::string m_imageName; /* 00F4 */ bool m_recommended; - -protected: - void* unknown_controls; }; class UIRenewQuestScrollBar : public UIScrollBar { @@ -135,9 +132,6 @@ public: /* 013C */ bool m_scrollable; /* 0140 */ int m_pressed; /* 0144 */ std::vector m_questIds[4]; - -protected: - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Rodex/UIRodexComposeWnd.h b/Source/UI/Rodex/UIRodexComposeWnd.h index a4d099ba..d6c13bf0 100644 --- a/Source/UI/Rodex/UIRodexComposeWnd.h +++ b/Source/UI/Rodex/UIRodexComposeWnd.h @@ -70,7 +70,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIRodexComposeWnd) == 272); +static_assert(sizeof(UIRodexComposeWnd) == 0x108); #endif #endif diff --git a/Source/UI/Shop/UIMerchantItemPurchaseMSGWnd.h b/Source/UI/Shop/UIMerchantItemPurchaseMSGWnd.h index 67537328..d8cfcdf1 100644 --- a/Source/UI/Shop/UIMerchantItemPurchaseMSGWnd.h +++ b/Source/UI/Shop/UIMerchantItemPurchaseMSGWnd.h @@ -22,9 +22,6 @@ public: /* 00C8 */ UIBitmapButton* cancelButton; /* 00CC */ int purchaseIndex; /* 00D0 */ int unknown_00D0; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Shop/UIMerchantShopMakeWnd.h b/Source/UI/Shop/UIMerchantShopMakeWnd.h index a55a1bf9..f8d319db 100644 --- a/Source/UI/Shop/UIMerchantShopMakeWnd.h +++ b/Source/UI/Shop/UIMerchantShopMakeWnd.h @@ -38,7 +38,7 @@ public: void Slot32(int x, int y) override; void Paint() override; - /* 00BC */ unsigned char unknown_00BC[0x10]; + /* 00B4 */ std::string unknown_00B4; /* 00CC */ UIEditCtrl* unknown_00CC; /* 00D0 */ unsigned char unknown_00D0[0x8]; /* 00D8 */ int editIndex; @@ -66,9 +66,6 @@ public: /* 0189 */ unsigned char suspended; /* 018A */ short unknown_018A; /* 018C */ short unknown_018C; - -protected: - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Shop/UIMerchantShopTitle.cpp b/Source/UI/Shop/UIMerchantShopTitle.cpp index f73be350..f56248ee 100644 --- a/Source/UI/Shop/UIMerchantShopTitle.cpp +++ b/Source/UI/Shop/UIMerchantShopTitle.cpp @@ -90,8 +90,7 @@ void UIMerchantShopTitle::Slot32(int, int) { // OFFSET: 0x0084FE60 // FUNCTION: fn_10667 -UIMerchantShopTitle::UIMerchantShopTitle(ForbiddenWords& forbiddenWords, int buyingShop) - : UIWindow(0), buyingShop(buyingShop), m_forbiddenWords(&forbiddenWords) { +UIMerchantShopTitle::UIMerchantShopTitle(int buyingShop) : UIWindow(0), buyingShop(buyingShop) { this->geometry.id = 189; } @@ -110,9 +109,9 @@ int UIMerchantShopTitle::SendMsg(UIWindow* sender, int message, std::intptr_t a, } char* text = reinterpret_cast(a); - if (this->m_forbiddenWords->Contains(text) == true) { + if (g_forbiddenWords.Contains(text) == true) { std::string masked; - this->m_forbiddenWords->Mask(text, &masked); + g_forbiddenWords.Mask(text, &masked); } std::string title(text); diff --git a/Source/UI/Shop/UIMerchantShopTitle.h b/Source/UI/Shop/UIMerchantShopTitle.h index 02b9f997..11ac3780 100644 --- a/Source/UI/Shop/UIMerchantShopTitle.h +++ b/Source/UI/Shop/UIMerchantShopTitle.h @@ -6,11 +6,10 @@ #include class UIStaticText; -struct ForbiddenWords; class UIMerchantShopTitle : public UIWindow { public: - UIMerchantShopTitle(ForbiddenWords& forbiddenWords, int buyingShop); + explicit UIMerchantShopTitle(int buyingShop); void Slot15(int width, int height) override; void Paint() override; void Slot25(int x, int y) override; @@ -25,9 +24,6 @@ public: /* 0086 */ unsigned char unknown_0086[2]; /* 0088 */ int buyingShop; -protected: - void* unknown_controls; - ForbiddenWords* m_forbiddenWords; }; #endif diff --git a/Source/UI/Shop/UINoticeMessageBox_LockSellItem.h b/Source/UI/Shop/UINoticeMessageBox_LockSellItem.h index 2ce7b959..3c527469 100644 --- a/Source/UI/Shop/UINoticeMessageBox_LockSellItem.h +++ b/Source/UI/Shop/UINoticeMessageBox_LockSellItem.h @@ -5,7 +5,6 @@ #include - class UINoticeMessageBox_LockSellItem : public UIFrameWnd { public: UINoticeMessageBox_LockSellItem(); @@ -16,9 +15,6 @@ public: /* 00B4 */ std::uint32_t startTick; /* 00B8 */ std::uint32_t duration; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Shortcuts/UIQuickSlotWnd.h b/Source/UI/Shortcuts/UIQuickSlotWnd.h index c21dd024..726c4cbd 100644 --- a/Source/UI/Shortcuts/UIQuickSlotWnd.h +++ b/Source/UI/Shortcuts/UIQuickSlotWnd.h @@ -40,7 +40,6 @@ protected: /* 00B4 */ int m_selected; /* 00B8 */ QuickSlotWndInfo* m_saved; /* 00BC */ QuickSlotEntry m_entries[2]; - void* unknown_painting; }; static_assert(sizeof(QuickSlotEntry) == 7); diff --git a/Source/UI/Shortcuts/UIShortCutWnd.h b/Source/UI/Shortcuts/UIShortCutWnd.h index 675de339..6845c89f 100644 --- a/Source/UI/Shortcuts/UIShortCutWnd.h +++ b/Source/UI/Shortcuts/UIShortCutWnd.h @@ -51,7 +51,7 @@ private: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIShortCutWnd) == 0x18C + 8); +static_assert(sizeof(UIShortCutWnd) == 0x18C); #endif #endif diff --git a/Source/UI/Skill/UISkillListWnd.h b/Source/UI/Skill/UISkillListWnd.h index fc6fdd15..6ad45a65 100644 --- a/Source/UI/Skill/UISkillListWnd.h +++ b/Source/UI/Skill/UISkillListWnd.h @@ -30,6 +30,8 @@ public: void UpdateScrollBar(); void UpdateRowButtons(); + /* 00B4 */ unsigned char unknown_00B4[0x8]; + /* 00BC */ UIWindow* scrollBar; /* 00C0 */ int unknown_00C0; /* 00C4 */ UIWindow* upgradeButtons[7]; diff --git a/Source/UI/Skill/UISkillNameChangeWnd.h b/Source/UI/Skill/UISkillNameChangeWnd.h index 6e8ce312..d419c239 100644 --- a/Source/UI/Skill/UISkillNameChangeWnd.h +++ b/Source/UI/Skill/UISkillNameChangeWnd.h @@ -17,9 +17,6 @@ public: void Slot15(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; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Status/UIStatusWnd.h b/Source/UI/Status/UIStatusWnd.h index a8fd7089..e65fecac 100644 --- a/Source/UI/Status/UIStatusWnd.h +++ b/Source/UI/Status/UIStatusWnd.h @@ -30,9 +30,6 @@ public: void Slot26(int x, int y) override; void Slot28(int x, int y) override; void ValidatePlacement(); - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/StylingShop/UIStylingShopWnd.cpp b/Source/UI/StylingShop/UIStylingShopWnd.cpp index 542ec1f0..a1f5b363 100644 --- a/Source/UI/StylingShop/UIStylingShopWnd.cpp +++ b/Source/UI/StylingShop/UIStylingShopWnd.cpp @@ -104,8 +104,7 @@ void UIShowInfoWnd::ResetCheckBoxes() { "유저인터페이스\\styleshop\\check_able.bmp", "유저인터페이스\\styleshop\\Notcheck.bmp"); } - *reinterpret_cast(this->unknown_00AD) = 0; - this->unknown_00B1 = 0; + std::memset(this->m_changed, 0, sizeof(this->m_changed)); this->unknown_00BC = 0; this->m_list.clear(); } @@ -721,18 +720,16 @@ void UIShowInfoWnd::CheckColoringGoods(bool* coloring) { g_session.m_hotkeyScript->Call("StylingShop_GetIsColoring_by_goods", "d>b", this->m_display->unknown_008C, coloring); } - const unsigned char* flags = this->unknown_00AD; - const unsigned char wingFlag = reinterpret_cast(&this->unknown_00B1)[0]; - const unsigned char accessoryFlag = reinterpret_cast(&this->unknown_00B1)[1]; + const bool* flags = this->m_changed; const UIDisplayCharacter* display = this->m_display; if (*coloring) { - if (flags[0] == 1 && display->unknown_0094 == g_session.m_headPalette) { - } else if (flags[1] == 1 && display->unknown_008C == g_session.m_head) { + if (flags[0] && display->unknown_0094 == g_session.m_headPalette) { + } else if (flags[1] && display->unknown_008C == g_session.m_head) { } else if (this->unknown_00BC == 1 && display->job == g_session.m_bodyCostume) { - } else if (flags[2] == 1 && display->unknown_0098 == g_session.m_bodyStyle) { - } else if (flags[3] == 1 && (display->unknown_009C == *reinterpret_cast(&g_session.unknown_0EF4[4]) || display->unknown_009C == 0)) { - } else if (wingFlag == 1 && (display->unknown_00A0 == *reinterpret_cast(&g_session.unknown_0EF4[8]) || display->unknown_00A0 == 0)) { - } else if (accessoryFlag == 1 && (display->unknown_00A4 == *reinterpret_cast(&g_session.unknown_0EF4[0]) || display->unknown_00A0 == 0)) { + } else if (flags[2] && display->unknown_0098 == g_session.m_bodyStyle) { + } else if (flags[3] && (display->unknown_009C == *reinterpret_cast(&g_session.unknown_0EF4[4]) || display->unknown_009C == 0)) { + } else if (flags[4] && (display->unknown_00A0 == *reinterpret_cast(&g_session.unknown_0EF4[8]) || display->unknown_00A0 == 0)) { + } else if (flags[5] && (display->unknown_00A4 == *reinterpret_cast(&g_session.unknown_0EF4[0]) || display->unknown_00A0 == 0)) { } else { return; } @@ -743,8 +740,7 @@ void UIShowInfoWnd::CheckColoringGoods(bool* coloring) { this->m_checks[i]->SetChecked(0); } this->m_list.clear(); - *reinterpret_cast(this->unknown_00AD) = 0; - this->unknown_00B1 = 0; + std::memset(this->m_changed, 0, sizeof(this->m_changed)); this->unknown_00BC = 0; } @@ -1032,48 +1028,47 @@ void UIShowInfoWnd::GetPayment(const int& type, int* zeny, int* itemId, int* cos void UIShowInfoWnd::UpdateChangedStyles() { bool coloring = true; this->CheckColoringGoods(&coloring); - if (!this->unknown_00AD[0] && this->m_display->unknown_0094 != g_session.m_headPalette && coloring == true) { + if (!this->m_changed[0] && this->m_display->unknown_0094 != g_session.m_headPalette && coloring == true) { this->m_checks[this->m_list.size()]->SetChecked(1); this->m_list.push_back(1); - this->unknown_00AD[0] = 1; + this->m_changed[0] = 1; } - if (!this->unknown_00AD[1] && this->m_display->unknown_008C != g_session.m_head) { + if (!this->m_changed[1] && this->m_display->unknown_008C != g_session.m_head) { this->m_checks[this->m_list.size()]->SetChecked(1); this->m_list.push_back(2); - this->unknown_00AD[1] = 1; + this->m_changed[1] = 1; } - if (!this->unknown_00AD[2] && this->m_display->unknown_0098 != g_session.m_bodyStyle) { + if (!this->m_changed[2] && this->m_display->unknown_0098 != g_session.m_bodyStyle) { this->m_checks[this->m_list.size()]->SetChecked(1); this->m_list.push_back(3); - this->unknown_00AD[2] = 1; + this->m_changed[2] = 1; } int sequence = 0; g_session.m_hotkeyScript->Call("StylingShop_GetSeqnumber_by_goods", "sd>d", "TopAccessory", this->m_display->unknown_00BC, &sequence); - if (!this->unknown_00AD[3] && this->m_display->unknown_009C != *reinterpret_cast(&g_session.unknown_0EF4[4]) && this->m_display->unknown_009C != 0 && + if (!this->m_changed[3] && this->m_display->unknown_009C != *reinterpret_cast(&g_session.unknown_0EF4[4]) && this->m_display->unknown_009C != 0 && sequence != 0) { this->m_checks[this->m_list.size()]->SetChecked(1); this->m_list.push_back(4); - this->unknown_00AD[3] = 1; + this->m_changed[3] = 1; } - unsigned char* accessoryChanged = reinterpret_cast(&this->unknown_00B1); g_session.m_hotkeyScript->Call("StylingShop_GetSeqnumber_by_goods", "sd>d", "MidAccessory", this->m_display->unknown_00C0, &sequence); - if (!accessoryChanged[0] && this->m_display->unknown_00A0 != *reinterpret_cast(&g_session.unknown_0EF4[8]) && this->m_display->unknown_00A0 != 0 && + if (!this->m_changed[4] && this->m_display->unknown_00A0 != *reinterpret_cast(&g_session.unknown_0EF4[8]) && this->m_display->unknown_00A0 != 0 && sequence != 0) { this->m_checks[this->m_list.size()]->SetChecked(1); this->m_list.push_back(5); - accessoryChanged[0] = 1; + this->m_changed[4] = 1; } g_session.m_hotkeyScript->Call("StylingShop_GetSeqnumber_by_goods", "sd>d", "BottomAccessory", this->m_display->unknown_00C4, &sequence); - if (!accessoryChanged[1] && this->m_display->unknown_00A4 != *reinterpret_cast(&g_session.unknown_0EF4[0]) && this->m_display->unknown_00A4 != 0 && + if (!this->m_changed[5] && this->m_display->unknown_00A4 != *reinterpret_cast(&g_session.unknown_0EF4[0]) && this->m_display->unknown_00A4 != 0 && sequence != 0) { this->m_checks[this->m_list.size()]->SetChecked(1); this->m_list.push_back(6); - accessoryChanged[1] = 1; + this->m_changed[5] = 1; } if (!this->unknown_00BC && this->m_display->job != g_session.m_bodyCostume) { @@ -1311,8 +1306,8 @@ UIMyStyleWnd::UIMyStyleWnd() : UIStylingshopTabParentWnd(), m_selectedSlot(0), m // OFFSET: 0x00823210 // FUNCTION: fn_10291 UIShowInfoWnd::UIShowInfoWnd() - : UIWindow(0), m_display(nullptr), unknown_00A0(0), unknown_00A1(0), unknown_00A2(0), m_checkTop(5), unknown_00A8(12), unknown_00AD{}, - unknown_00B1(0), unknown_00BC(0), unknown_00C0(0), unknown_00C4(0), unknown_00C8(0), unknown_00CC(0), m_offBitmap(nullptr) { + : UIWindow(0), m_display(nullptr), unknown_00A0(0), unknown_00A1(0), unknown_00A2(0), m_checkTop(5), unknown_00A8(12), m_changed{}, + unknown_00BC(0), unknown_00C0(0), unknown_00C4(0), unknown_00C8(0), unknown_00CC(0), m_offBitmap(nullptr) { } // OFFSET: 0x008232F0 @@ -2318,8 +2313,7 @@ void UIShowInfoWnd::Slot15(int, int) { this->m_checks[i]->SetBitmaps("유저인터페이스\\styleshop\\check_able.bmp", "유저인터페이스\\styleshop\\Notcheck.bmp"); } - *reinterpret_cast(this->unknown_00AD) = 0; - this->unknown_00B1 = 0; + std::memset(this->m_changed, 0, sizeof(this->m_changed)); this->unknown_00BC = 0; for (unsigned int i = 0; i < this->m_list.size(); ++i) { this->m_list.clear(); diff --git a/Source/UI/StylingShop/UIStylingShopWnd.h b/Source/UI/StylingShop/UIStylingShopWnd.h index ca73d16f..de99e6bc 100644 --- a/Source/UI/StylingShop/UIStylingShopWnd.h +++ b/Source/UI/StylingShop/UIStylingShopWnd.h @@ -74,9 +74,7 @@ public: /* 00A4 */ int m_checkTop; /* 00A8 */ int unknown_00A8; /* 00AC */ bool m_buyable; - /* 00AD */ unsigned char unknown_00AD[4]; - /* 00B1 */ unsigned short unknown_00B1; - /* 00B3 */ unsigned char unknown_00B3; + /* 00AD */ bool m_changed[6]; /* 00B4 */ std::list m_list; /* 00BC */ unsigned char unknown_00BC; /* 00C0 */ int unknown_00C0; @@ -124,7 +122,6 @@ public: /* 00B4 */ UIStylingShopButton* m_buyButton; /* 00B8 */ UIDisplayCharacter* m_preview; /* 00BC */ std::map m_tabs; - void* unknown_controls; void Slot15(int width, int height) override; void Slot19() override; diff --git a/Source/UI/Text/NavigationLink.cpp b/Source/UI/Text/NavigationLink.cpp index c4bf6358..7a2a24a3 100644 --- a/Source/UI/Text/NavigationLink.cpp +++ b/Source/UI/Text/NavigationLink.cpp @@ -75,6 +75,7 @@ namespace LineCutter { /* 0080 */ int m_fontHeight; /* 0084 */ unsigned char m_bold; /* 0085 */ unsigned char m_italic; + /* 0086 */ unsigned char unknown_0086[2]; /* 0088 */ unsigned char m_outlined; /* 008C */ std::uint32_t m_outlineColor; /* 0090 */ unsigned char m_shadowed; diff --git a/Source/UI/Text/UIAchWnd.cpp b/Source/UI/Text/UIAchWnd.cpp index 88a86dde..2fabd312 100644 --- a/Source/UI/Text/UIAchWnd.cpp +++ b/Source/UI/Text/UIAchWnd.cpp @@ -680,7 +680,7 @@ void UIToolTipBitmapWnd::Slot32(int x, int y) { ITEM_INFO item; item.SetItemId(this->itemId); item.identified = 1; - this->m_windows->EnsureWindow(12)->SendMsg(nullptr, 24, reinterpret_cast(&item), 0, 0, 0); + g_windowMgr.EnsureWindow(12)->SendMsg(nullptr, 24, reinterpret_cast(&item), 0, 0, 0); } } @@ -1518,6 +1518,6 @@ UICustomGageBar::UICustomGageBar() // OFFSET: 0x007B25B0 // FUNCTION: fn_09188 -UIToolTipBitmapWnd::UIToolTipBitmapWnd(WindowManagerWindows& managed) - : UIWindow(0), bitmap(nullptr), itemId(0), unknown_00B4(0), unknown_00B8(0), m_windows(&managed) { +UIToolTipBitmapWnd::UIToolTipBitmapWnd(WindowManagerWindows&) + : UIWindow(0), bitmap(nullptr), itemId(0), unknown_00B4(0), unknown_00B8(0) { } diff --git a/Source/UI/Text/UIAchWnd.h b/Source/UI/Text/UIAchWnd.h index 616c99e3..94575421 100644 --- a/Source/UI/Text/UIAchWnd.h +++ b/Source/UI/Text/UIAchWnd.h @@ -54,6 +54,7 @@ public: UIAchListWnd(); ~UIAchListWnd() override; + /* 007C */ UIAchScrollBar* scrollBar; /* 0080 */ UIButton** buttons; /* 0084 */ int unknown_0084; /* 0088 */ int rowCount; @@ -64,7 +65,6 @@ public: /* 009C */ int unknown_009C; /* 00A0 */ std::vector ids; /* 00AC */ UIAchListInfo* unknown_00AC; - /* 007C */ UIAchScrollBar* scrollBar; void Create(int width, int height, int rows); void sub_7B37F0(int index); @@ -76,9 +76,6 @@ public: void Slot31(int x, int y) override; void Slot35(int delta) override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -private: - void* unknown_controls; }; struct UIAchTabGroup { @@ -130,9 +127,6 @@ public: void Slot31(int x, int y) override; void Slot35(int delta) override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -private: - void* unknown_controls; }; class UIAchTV : public UITextViewer { @@ -168,8 +162,6 @@ public: void Set(const char* name, const char* text, int item); -private: - WindowManagerWindows* m_windows; }; class UIAchViewWnd : public UIWindow { @@ -189,9 +181,6 @@ public: void Slot15(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -private: - void* unknown_controls; }; class UIAchUpperWnd : public UIWindow { @@ -211,9 +200,6 @@ public: void Slot15(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -private: - void* unknown_controls; }; class UIAchSummaryWnd : public UIWindow { @@ -231,9 +217,6 @@ public: void Slot15(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -private: - void* unknown_controls; }; class UIAchievementWnd : public UIFrameWnd { @@ -257,12 +240,8 @@ public: void CreateTab(); void SelectAchievement(int id); void SelectTab(int group, int sub); - -private: - void* unknown_controls; }; - struct AchTracingCondition { /* 0000 */ std::string text; /* 0018 */ unsigned char completed; @@ -290,9 +269,6 @@ public: void Slot15(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -private: - void* unknown_controls; }; extern std::vector g_achievementTracking; diff --git a/Source/UI/Text/UIBalloonText.h b/Source/UI/Text/UIBalloonText.h index 2e09ce89..c020d129 100644 --- a/Source/UI/Text/UIBalloonText.h +++ b/Source/UI/Text/UIBalloonText.h @@ -38,13 +38,12 @@ protected: /* 0098 */ std::uint16_t unknown_0098; /* 009A */ std::uint16_t m_fontMode; /* 009C */ unsigned char m_richText; - void* unknown_00A0; }; extern int g_nameBalloonFontHeight; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIBalloonText) == 168); +static_assert(sizeof(UIBalloonText) == 0xA0); #endif #endif diff --git a/Source/UI/Text/UIStaticText.h b/Source/UI/Text/UIStaticText.h index 90bc4e52..f9f756fe 100644 --- a/Source/UI/Text/UIStaticText.h +++ b/Source/UI/Text/UIStaticText.h @@ -5,7 +5,6 @@ #include - class UIStaticText : public UIWindow { public: UIStaticText(); @@ -44,9 +43,6 @@ public: /* 00A4 */ int tooltipEnabled; /* 00A8 */ std::string text; /* 00C0 */ std::string tooltip; - -protected: - void* unknown_controls; }; class UIStaticText2 : public UIStaticText { @@ -63,7 +59,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIStaticText) == 224); +static_assert(sizeof(UIStaticText) == 0xD8); #endif #endif diff --git a/Source/UI/Text/UIStaticTextControl.h b/Source/UI/Text/UIStaticTextControl.h index 83ebd7b3..516fab61 100644 --- a/Source/UI/Text/UIStaticTextControl.h +++ b/Source/UI/Text/UIStaticTextControl.h @@ -31,7 +31,8 @@ public: return *reinterpret_cast(this->unknown_00B0); } - /* 0084 */ unsigned char unknown_0084[0x14]; + + /* 0080 */ std::string text; /* 0098 */ std::string unknown_0098; /* 00B0 */ unsigned char unknown_00B0[0x10]; /* 00C0 */ CUIVScrollBar* scrollBar; @@ -49,11 +50,10 @@ public: /* 00F0 */ std::uint32_t outlineColor; /* 00F4 */ int textX; /* 00F8 */ int textY; - /* 0080 */ std::string text; }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(CUIStaticText) == 0x114); +static_assert(sizeof(CUIStaticText) == 0xFC); static_assert(offsetof(CUIStaticText, unknown_0098) == 0x98); static_assert(offsetof(CUIStaticText, scrollBar) == 0xC0); static_assert(offsetof(CUIStaticText, color) == 0xE0); diff --git a/Source/UI/Text/UITextViewer.h b/Source/UI/Text/UITextViewer.h index 12937b08..629b94c0 100644 --- a/Source/UI/Text/UITextViewer.h +++ b/Source/UI/Text/UITextViewer.h @@ -33,8 +33,6 @@ public: /* 00E9 */ unsigned char outline; /* 00EA */ unsigned char bold; - /* 00EC */ void* unknown_00EC; - private: std::pair LinkPosition(unsigned position, unsigned addedLines); void AddLinks(const char* text, unsigned addedLines, int kind); @@ -64,7 +62,7 @@ public: }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UITextViewer) == 248); +static_assert(sizeof(UITextViewer) == 0xEC); #endif #endif diff --git a/Source/UI/Text/UITransBalloonText.h b/Source/UI/Text/UITransBalloonText.h index 2e4b94ed..e3369edf 100644 --- a/Source/UI/Text/UITransBalloonText.h +++ b/Source/UI/Text/UITransBalloonText.h @@ -71,7 +71,7 @@ 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); +static_assert(sizeof(UITransBalloonText) == 0xCC); #endif #endif diff --git a/Source/UI/UIBarGraph.h b/Source/UI/UIBarGraph.h index 609dc4f4..fd1c3ae8 100644 --- a/Source/UI/UIBarGraph.h +++ b/Source/UI/UIBarGraph.h @@ -6,7 +6,6 @@ #include #include - class UIBarGraph : public UIWindow { public: explicit UIBarGraph() : UIWindow(0), m_value(0) { @@ -55,9 +54,6 @@ public: void SetValues(const int* current, const int* maximum); /* 0084 */ bool m_plainColor; - -protected: - void* unknown_controls; }; class UIINT64BarGraph : public UIWindow { @@ -75,7 +71,6 @@ public: protected: /* 0080 */ std::int64_t m_current; /* 0088 */ std::int64_t m_maximum; - void* unknown_controls; }; class UIPetInfoBarGraph : public UIWindow { diff --git a/Source/UI/UIBasicCtrl.cpp b/Source/UI/UIBasicCtrl.cpp index 97496d0b..d7893059 100644 --- a/Source/UI/UIBasicCtrl.cpp +++ b/Source/UI/UIBasicCtrl.cpp @@ -2,8 +2,8 @@ // OFFSET: 0x0086C410 // FUNCTION: fn_11026 -UIBasicItemCtrl::UIBasicItemCtrl(WindowManagerWindows& windowList) - : UIWindow(0), m_itemType(-1), m_itemMask(-1), m_identified(0), m_tooltip(""), m_item(0), m_windows(&windowList) { +UIBasicItemCtrl::UIBasicItemCtrl(WindowManagerWindows&) + : UIWindow(0), m_itemType(-1), m_itemMask(-1), m_identified(0), m_tooltip(""), m_item(0) { } // OFFSET: 0x0086C4C0 diff --git a/Source/UI/UIBasicCtrl.h b/Source/UI/UIBasicCtrl.h index 39ae14a2..e8e3c2bb 100644 --- a/Source/UI/UIBasicCtrl.h +++ b/Source/UI/UIBasicCtrl.h @@ -24,9 +24,6 @@ protected: /* 0084 */ unsigned char m_identified; /* 0088 */ std::string m_tooltip; /* 00A0 */ ITEM_INFO m_item; - void* unknown_naming; - void* unknown_controls; - WindowManagerWindows* m_windows; }; class UIBasicSkillCtrl : public UIWindow { diff --git a/Source/UI/UIBroadcastBalloon.h b/Source/UI/UIBroadcastBalloon.h index 6e197877..cf92070e 100644 --- a/Source/UI/UIBroadcastBalloon.h +++ b/Source/UI/UIBroadcastBalloon.h @@ -10,7 +10,6 @@ #include #include - struct BroadcastBalloonLine { /* 0000 */ std::string text; /* 0018 */ std::uint32_t color; @@ -44,7 +43,6 @@ public: protected: /* 007C */ std::map> m_messages; - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/UICaptchaPreviewWnd.h b/Source/UI/UICaptchaPreviewWnd.h index f16866d7..cb8b3c8c 100644 --- a/Source/UI/UICaptchaPreviewWnd.h +++ b/Source/UI/UICaptchaPreviewWnd.h @@ -21,7 +21,6 @@ public: /* 00BC */ unsigned char* m_imageData; /* 00C0 */ int m_imageSize; /* 00C4 */ int m_imageReceived; - void* unknown_controls; }; #endif diff --git a/Source/UI/UICaptchaRegisterWnd.h b/Source/UI/UICaptchaRegisterWnd.h index 17185b63..1e4f0d1e 100644 --- a/Source/UI/UICaptchaRegisterWnd.h +++ b/Source/UI/UICaptchaRegisterWnd.h @@ -30,9 +30,6 @@ public: /* 00C8 */ std::string m_selectedFile; /* 00E0 */ void* m_decompressedData; /* 00E4 */ unsigned int m_decompressedSize; - -protected: - /* 00E8 */ void* unknown_controls; }; #endif diff --git a/Source/UI/UIChangeMaterialWnd.cpp b/Source/UI/UIChangeMaterialWnd.cpp index c760843f..3a86bddf 100644 --- a/Source/UI/UIChangeMaterialWnd.cpp +++ b/Source/UI/UIChangeMaterialWnd.cpp @@ -39,19 +39,15 @@ // OFFSET: 0x005E03B0 // FUNCTION: fn_03861 UIChangeMaterialWnd::UIChangeMaterialWnd() - : UIFrameWnd(0), m_sortBox(nullptr), m_button(nullptr), m_resultX(168), m_resultY(131), m_resultItem(), + : UIFrameWnd(0), unknown_00B4(nullptr), unknown_00B8(nullptr), m_sortBox(nullptr), m_button(nullptr), m_resultX(168), m_resultY(131), m_resultItem(), m_materialPos{{90, 86}, {246, 86}, {168, 222}, {168, 40}, {90, 176}, {246, 176}}, m_materials(), m_resultAmount(0), m_resultText() { - *reinterpret_cast(reinterpret_cast(this) + 0xB4) = 0; - *reinterpret_cast(reinterpret_cast(this) + 0xB8) = 0; } // OFFSET: 0x005E0560 // FUNCTION: fn_03862 UIChangeMaterialWnd_List::UIChangeMaterialWnd_List() - : UIFrameWnd(0), m_selectedIndex(0), m_hoverIndex(0), m_scrollOffset(0), m_previousScrollOffset(0), m_scrollBar(nullptr), m_items(), + : UIFrameWnd(0), unknown_00B4(27), unknown_00B8(16), m_selectedIndex(0), m_hoverIndex(0), m_scrollOffset(0), m_previousScrollOffset(0), m_scrollBar(nullptr), m_items(), m_entries() { - *reinterpret_cast(reinterpret_cast(this) + 0xB4) = 27; - *reinterpret_cast(reinterpret_cast(this) + 0xB8) = 16; } // OFFSET: 0x005E0650 @@ -66,10 +62,10 @@ void UIChangeMaterialWnd_List::CreateScrollBar(int width, int height) { auto* bar = new UIChangeMaterialWnd_ScrollBar(); *reinterpret_cast(reinterpret_cast(bar) + 0xA4) = 0x10; this->m_scrollBar = bar; - bar->Configure(width - *reinterpret_cast(reinterpret_cast(this) + 0xB8), 0, 1, height); + bar->Configure(width - this->unknown_00B8, 0, 1, height); bar->Show(0); this->AddChild(bar); - this->m_pageSize = height / *reinterpret_cast(reinterpret_cast(this) + 0xB4); + this->m_pageSize = height / this->unknown_00B4; this->sub_5E2A70(); } @@ -132,7 +128,7 @@ void UIChangeMaterialWnd_List::Move(int x, int y) { // OFFSET: 0x005E2590 // FUNCTION: fn_03883 void UIChangeMaterialWnd_List::sub_5E2590(int, int position) { - const int rowHeight = *reinterpret_cast(reinterpret_cast(this) + 0xB4); + const int rowHeight = this->unknown_00B4; unsigned int index = static_cast(position / rowHeight + this->m_scrollOffset); const unsigned int last = static_cast(this->m_items.size() - 1); if (last < index) { @@ -163,7 +159,7 @@ void UIChangeMaterialWnd_List::Slot27(int x, int y) { // OFFSET: 0x005E2850 // FUNCTION: fn_03887 void UIChangeMaterialWnd::UpdateSearchPlaceholder() { - auto* edit = *reinterpret_cast(reinterpret_cast(this) + 0xB8); + auto* edit = this->unknown_00B8; const std::string text = edit->Text(); const char* placeholder = LookupMessage(0xec0); if (text != placeholder) { @@ -224,7 +220,7 @@ void UIChangeMaterialWnd_List::sub_5E2A70() { // OFFSET: 0x005E2B20 // FUNCTION: fn_03891 void UIChangeMaterialWnd_List::ApplyFilter(std::string text) { - const int rowHeight = *reinterpret_cast(reinterpret_cast(this) + 0xB4); + const int rowHeight = this->unknown_00B4; this->m_pageSize = this->geometry.height / rowHeight; this->m_selectedIndex = 0; this->m_scrollOffset = 0; @@ -353,8 +349,8 @@ void UIChangeMaterialWnd_List::sub_5E3B80(int index) { int UIChangeMaterialWnd::SendMsg( UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4 ) { - auto* list = *reinterpret_cast(reinterpret_cast(this) + 0xB4); - auto* edit = *reinterpret_cast(reinterpret_cast(this) + 0xB8); + auto* list = this->unknown_00B4; + auto* edit = this->unknown_00B8; switch (message) { case 0: @@ -578,7 +574,7 @@ void UIChangeMaterialWnd_List::Paint() { } } - const int rowHeight = *reinterpret_cast(reinterpret_cast(this) + 0xB4); + const int rowHeight = this->unknown_00B4; if (!entry) { CRes* disabled = ResourceMgr::Instance().Load(Resolve("유저인터페이스\\ChangeMaterial\\btn_material_disable.bmp")); this->DrawBitmap(0, rowHeight * row, reinterpret_cast(disabled), true); @@ -661,7 +657,7 @@ void UIChangeMaterialWnd_ScrollBar::Paint() { // OFFSET: 0x005E26B0 // FUNCTION: fn_03885 void UIChangeMaterialWnd_List::Slot28(int x, int y) { - const int rowHeight = *reinterpret_cast(reinterpret_cast(this) + 0xB4); + const int rowHeight = this->unknown_00B4; const int index = y / rowHeight + this->m_scrollOffset; if (static_cast(index) >= this->m_items.size()) { return; @@ -702,7 +698,7 @@ void UIChangeMaterialWnd::Slot15(int width, int height) { this->AddChild(close); UIEditCtrl* edit = new UIEditCtrl(); - *reinterpret_cast(reinterpret_cast(this) + 0xB8) = edit; + this->unknown_00B8 = edit; edit->SetSize(118, 13); edit->Move(313, 262); edit->maximum = 20; @@ -763,7 +759,7 @@ void UIChangeMaterialWnd::Slot15(int width, int height) { this->AddChild(cancel); UIChangeMaterialWnd_List* list = new UIChangeMaterialWnd_List(); - *reinterpret_cast(reinterpret_cast(this) + 0xB4) = list; + this->unknown_00B4 = list; list->SetSize(186, 216); list->Move(310, 41); this->AddChild(list); diff --git a/Source/UI/UIChangeMaterialWnd.h b/Source/UI/UIChangeMaterialWnd.h index c3c44465..1b8e86c7 100644 --- a/Source/UI/UIChangeMaterialWnd.h +++ b/Source/UI/UIChangeMaterialWnd.h @@ -11,6 +11,8 @@ #include class UIButton; +class UIEditCtrl; +class UIChangeMaterialWnd_List; struct MaterialSlotPos { /* 0000 */ int x; @@ -72,6 +74,8 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; + /* 00B4 */ UIChangeMaterialWnd_List* unknown_00B4; + /* 00B8 */ UIEditCtrl* unknown_00B8; /* 00BC */ UIChangeMaterialWnd_CheckBox* m_sortBox; /* 00C0 */ UIButton* m_button; /* 00C4 */ int m_resultX; @@ -81,9 +85,6 @@ public: /* 01F8 */ std::vector m_materials; /* 0204 */ int m_resultAmount; /* 0208 */ std::string m_resultText; - -protected: - void* unknown_controls; }; class UIChangeMaterialWnd_List : public UIFrameWnd { @@ -108,6 +109,9 @@ public: void ShiftSelectedIndex(int value); void CreateScrollBar(int width, int height); + /* 00B4 */ int unknown_00B4; + /* 00B8 */ int unknown_00B8; + /* 00BC */ int m_pageSize; /* 00C0 */ int64_t m_selectedIndex; /* 00C8 */ int64_t m_hoverIndex; diff --git a/Source/UI/UICheckAttendanceWnd.h b/Source/UI/UICheckAttendanceWnd.h index 49062fa4..329ee80d 100644 --- a/Source/UI/UICheckAttendanceWnd.h +++ b/Source/UI/UICheckAttendanceWnd.h @@ -32,9 +32,6 @@ public: /* 0088 */ std::vector m_buttons; /* 0094 */ unsigned int m_current; /* 0098 */ std::uint32_t m_lastSwitch; - -protected: - void* unknown_controls; }; class UICheckAttendanceWnd : public UIFrameWnd { @@ -64,9 +61,6 @@ public: /* 00C4 */ int m_highlight; /* 00C8 */ UICheckAttendanceWnd_Banner* m_banner; /* 00CC */ UIBmpTextButton* m_notice; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/UIGradeEnchantWnd.h b/Source/UI/UIGradeEnchantWnd.h index b1f57c26..d6996c91 100644 --- a/Source/UI/UIGradeEnchantWnd.h +++ b/Source/UI/UIGradeEnchantWnd.h @@ -78,7 +78,9 @@ public: ); void SetResult(int state, int result); + /* 00B4 */ UIGradeEnchant_BtnStart* startButton; /* 00B8 */ UIGradeEnchant_BtnEnhancedUp* enhancedUpButton; + /* 00BC */ UIGradeEnchant_BtnEnhancedDown* enhancedDownButton; /* 00C0 */ int state; /* 00C4 */ int result; /* 00C8 */ std::uint32_t unknown_00C8; @@ -100,11 +102,6 @@ public: /* 011C */ std::vector unknown_011C; /* 0128 */ ITEM_INFO item; /* 0220 */ unsigned char unknown_0220; - /* 00B4 */ UIGradeEnchant_BtnStart* startButton; - /* 00BC */ UIGradeEnchant_BtnEnhancedDown* enhancedDownButton; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/UIHotkeyGuideWnd.h b/Source/UI/UIHotkeyGuideWnd.h index e5bc9aa2..b376841c 100644 --- a/Source/UI/UIHotkeyGuideWnd.h +++ b/Source/UI/UIHotkeyGuideWnd.h @@ -7,7 +7,6 @@ #include #include - struct HotkeyGuideEntry { /* 0000 */ int id; /* 0004 */ int firstKey; @@ -59,7 +58,6 @@ protected: /* 00C8 */ std::vector m_tabs; /* 00D4 */ int m_current; /* 00D8 */ std::vector m_keys; - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/UIItemReformWnd.h b/Source/UI/UIItemReformWnd.h index f8eb525b..6792a597 100644 --- a/Source/UI/UIItemReformWnd.h +++ b/Source/UI/UIItemReformWnd.h @@ -89,7 +89,6 @@ public: /* 02D0 */ std::vector materials; /* 02DC */ std::string information; /* 02F4 */ std::string warning; - void* unknown_controls; }; #endif diff --git a/Source/UI/UILapineScrollBar.h b/Source/UI/UILapineScrollBar.h index 1dd759c0..b0172849 100644 --- a/Source/UI/UILapineScrollBar.h +++ b/Source/UI/UILapineScrollBar.h @@ -117,9 +117,6 @@ public: /* 0120 */ std::uint32_t noticeTick; /* 0124 */ std::uint32_t noticeDuration; /* 0128 */ unsigned char waiting; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/UILapineUpgradeBoxWnd.h b/Source/UI/UILapineUpgradeBoxWnd.h index 667feba4..4170feb4 100644 --- a/Source/UI/UILapineUpgradeBoxWnd.h +++ b/Source/UI/UILapineUpgradeBoxWnd.h @@ -29,9 +29,6 @@ public: /* 01B0 */ unsigned char selected; /* 01B4 */ std::string tooltip; /* 01CC */ int quantity; - -protected: - void* unknown_controls; }; class UILapineUpgradeBoxWnd : public UIFrameWnd { @@ -68,9 +65,6 @@ public: /* 020C */ std::uint32_t noticeTick; /* 0210 */ std::uint32_t noticeDuration; /* 0214 */ unsigned char waiting; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/UIMacroBlackListCheckWnd.h b/Source/UI/UIMacroBlackListCheckWnd.h index 990f990d..7ba62e0e 100644 --- a/Source/UI/UIMacroBlackListCheckWnd.h +++ b/Source/UI/UIMacroBlackListCheckWnd.h @@ -35,9 +35,6 @@ public: /* 0150 */ int codeLength; /* 0154 */ int duration; /* 0158 */ std::uint32_t startTick; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/UIMacroDetectorWnd.h b/Source/UI/UIMacroDetectorWnd.h index f402d9d4..bf507e93 100644 --- a/Source/UI/UIMacroDetectorWnd.h +++ b/Source/UI/UIMacroDetectorWnd.h @@ -29,6 +29,9 @@ public: void SetCountdown(unsigned char count, std::uint32_t duration); void InitImageData(unsigned short size); + + /* 00B4 */ UICaptchaImage* m_image; + /* 00B8 */ UIEditCtrl* m_editCtrl; /* 00BC */ UIBitmapButton* m_button; /* 00C0 */ char m_captchaKey[4]; /* 00C4 */ unsigned char* m_imageData; @@ -44,8 +47,6 @@ public: /* 0110 */ std::uint32_t unknown_0110; /* 0114 */ std::uint32_t messageTick; - /* 00B4 */ UICaptchaImage* m_image; - /* 00B8 */ UIEditCtrl* m_editCtrl; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/UIMacroUserInfoWnd.h b/Source/UI/UIMacroUserInfoWnd.h index 743968b8..864ba70c 100644 --- a/Source/UI/UIMacroUserInfoWnd.h +++ b/Source/UI/UIMacroUserInfoWnd.h @@ -22,7 +22,6 @@ public: /* 00B4 */ std::string m_name; /* 00CC */ std::string m_message; - void* unknown_controls; }; struct MacroReporterEntry { @@ -89,7 +88,6 @@ public: /* 024C */ bool m_namesValid; /* 024D */ bool m_targetValid; /* 0250 */ int m_nameCount; - void* unknown_controls; }; #endif diff --git a/Source/UI/UIPreviewEquipWnd.h b/Source/UI/UIPreviewEquipWnd.h index 015545ca..453e2b9a 100644 --- a/Source/UI/UIPreviewEquipWnd.h +++ b/Source/UI/UIPreviewEquipWnd.h @@ -26,9 +26,6 @@ public: /* 00BC */ UIBitmapButton* m_leftButton; /* 00C0 */ UIBitmapButton* m_rightButton; /* 00C4 */ UIBasicButton* unknown_00C4; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/UIRefiningWnd.h b/Source/UI/UIRefiningWnd.h index 4ca242f0..d48b5b3d 100644 --- a/Source/UI/UIRefiningWnd.h +++ b/Source/UI/UIRefiningWnd.h @@ -109,9 +109,6 @@ public: /* 01F4 */ std::vector nextMaterials; /* 0200 */ int nextCatalystCount; /* 0208 */ ITEM_INFO nextItem; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/UIReputeWnd.h b/Source/UI/UIReputeWnd.h index 14ead884..a46ed290 100644 --- a/Source/UI/UIReputeWnd.h +++ b/Source/UI/UIReputeWnd.h @@ -34,9 +34,6 @@ public: bool m_groupSelected; std::int64_t m_totalPoints; std::vector m_reputes; - -protected: - void* unknown_controls; }; #include "Contents/ReputeMgrLoad.inl" diff --git a/Source/UI/UIRoundBoxTooltipWnd.h b/Source/UI/UIRoundBoxTooltipWnd.h index d545239d..3991204c 100644 --- a/Source/UI/UIRoundBoxTooltipWnd.h +++ b/Source/UI/UIRoundBoxTooltipWnd.h @@ -23,9 +23,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; /* 00B4 */ UIColoringTextViewer* viewer; - -protected: - void* unknown_listContext; }; #endif diff --git a/Source/UI/UIScrollWnd.cpp b/Source/UI/UIScrollWnd.cpp index 12c22726..8f12f233 100644 --- a/Source/UI/UIScrollWnd.cpp +++ b/Source/UI/UIScrollWnd.cpp @@ -15,7 +15,7 @@ // OFFSET: 0x009AC040 // FUNCTION: fn_13770 UIScrollWnd::UIScrollWnd(int width, int height, unsigned char cached) - : UIWindow(cached), viewHeight(0), contentWidth(0), contentHeight(0), horizontalBar(nullptr), scrollBar(nullptr), + : UIWindow(cached), viewWidth(0), viewHeight(0), contentWidth(0), contentHeight(0), horizontalBar(nullptr), scrollBar(nullptr), scrollBarWidth(13), scrollBarHeight(13), unknown_009C(0), scrollPosition(0), unknown_00A4(0), wheelScroll(0) { this->UIWindow::Resize(width, height); this->Slot15(width, height); @@ -313,7 +313,7 @@ void UIScrollWnd::Slot53() { this->unknown_00A4 = 0; this->wheelScroll = 0; - this->ViewWidth() = this->geometry.width; + this->viewWidth = this->geometry.width; this->viewHeight = this->geometry.height; int visibleHeight; @@ -329,7 +329,7 @@ void UIScrollWnd::Slot53() { if (bottom > this->geometry.height) { visibleWidth = this->geometry.width - this->scrollBarWidth; this->wheelScroll = 1; - this->ViewWidth() = visibleWidth; + this->viewWidth = visibleWidth; } else { visibleWidth = this->geometry.width; } @@ -343,7 +343,7 @@ void UIScrollWnd::Slot53() { if (this->wheelScroll == 0 && bottom > visibleHeight) { visibleWidth = this->geometry.width - this->scrollBarWidth; this->wheelScroll = 1; - this->ViewWidth() = visibleWidth; + this->viewWidth = visibleWidth; } if (right < visibleWidth) { @@ -357,8 +357,8 @@ void UIScrollWnd::Slot53() { if (this->unknown_00A4 == 1) { this->horizontalBar->Resize(visibleWidth, this->scrollBarHeight); - this->horizontalBar->SetRange(this->contentWidth - this->ViewWidth(), this->ViewWidth(), this->contentWidth); - const int maximum = this->contentWidth - this->ViewWidth(); + this->horizontalBar->SetRange(this->contentWidth - this->viewWidth, this->viewWidth, this->contentWidth); + const int maximum = this->contentWidth - this->viewWidth; int position = this->unknown_009C; if (position > maximum) { this->unknown_009C = maximum; @@ -472,8 +472,8 @@ int UIScrollWnd::SendMsg(UIWindow* sender, int message, std::intptr_t argument1, if (this->unknown_009C < 0) { this->unknown_009C = 0; } - if (this->unknown_009C > this->contentWidth - this->ViewWidth()) { - this->unknown_009C = this->contentWidth - this->ViewWidth(); + if (this->unknown_009C > this->contentWidth - this->viewWidth) { + this->unknown_009C = this->contentWidth - this->viewWidth; } this->horizontalBar->SetPosition(this->unknown_009C); this->horizontalBar->Invalidate(); diff --git a/Source/UI/UIScrollWnd.h b/Source/UI/UIScrollWnd.h index 93a607a3..3a65299e 100644 --- a/Source/UI/UIScrollWnd.h +++ b/Source/UI/UIScrollWnd.h @@ -26,15 +26,11 @@ public: void AddScrollChild(UIWindow* child); void MoveScrollChild(UIWindow* child, int x, int y); - // INLINED - int& ViewWidth() { - return reinterpret_cast(this->unknown_007C); - } - bool Update(int redraw) override; bool UpdateCached(int redraw); bool UpdateChild(UIWindow* child, int redraw); + /* 007C */ int viewWidth; /* 0080 */ int viewHeight; /* 0084 */ int contentWidth; /* 0088 */ int contentHeight; diff --git a/Source/UI/UIStaticBitmap.h b/Source/UI/UIStaticBitmap.h index 7fd03e1b..7f25bd22 100644 --- a/Source/UI/UIStaticBitmap.h +++ b/Source/UI/UIStaticBitmap.h @@ -5,7 +5,6 @@ #include - class UIStaticBitmap : public UIWindow { public: UIStaticBitmap(); @@ -28,13 +27,10 @@ public: /* 00AC */ int tooltipX; /* 00B0 */ int tooltipY; /* 00B4 */ int forwardHover; - -protected: - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIStaticBitmap) == 192); +static_assert(sizeof(UIStaticBitmap) == 0xB8); #endif #endif diff --git a/Source/UI/UIStaticItem.cpp b/Source/UI/UIStaticItem.cpp index f9df1419..eb7db638 100644 --- a/Source/UI/UIStaticItem.cpp +++ b/Source/UI/UIStaticItem.cpp @@ -2,8 +2,8 @@ // OFFSET: 0x0086E970 // FUNCTION: fn_11079 -UIStaticItem::UIStaticItem(WindowManagerWindows& windowList) - : UIWindow(0), m_item(), m_windows(&windowList) { +UIStaticItem::UIStaticItem(WindowManagerWindows&) + : UIWindow(0), m_item() { } // OFFSET: 0x00871A00 diff --git a/Source/UI/UIStaticItem.h b/Source/UI/UIStaticItem.h index f9b84579..fd696e48 100644 --- a/Source/UI/UIStaticItem.h +++ b/Source/UI/UIStaticItem.h @@ -16,9 +16,6 @@ public: protected: /* 0080 */ ITEM_INFO m_item; - void* unknown_descriptions; - void* unknown_controls; - WindowManagerWindows* m_windows; }; class UIStaticItem_Illust : public UIStaticItem { diff --git a/Source/UI/Window/UIAccountLimitedToolWnd.h b/Source/UI/Window/UIAccountLimitedToolWnd.h index b323df91..36b73c46 100644 --- a/Source/UI/Window/UIAccountLimitedToolWnd.h +++ b/Source/UI/Window/UIAccountLimitedToolWnd.h @@ -22,10 +22,6 @@ public: /* 00BC */ UIEditCtrl* m_edits[15]; /* 00F8 */ UIBitmapButton* m_buttons[3]; /* 0104 */ std::string unknown_0104; - -protected: - void* unknown_controls; - void* unknown_textContext; }; #endif diff --git a/Source/UI/Window/UIBalloonOpenBtn.h b/Source/UI/Window/UIBalloonOpenBtn.h index 60c708cd..ae572768 100644 --- a/Source/UI/Window/UIBalloonOpenBtn.h +++ b/Source/UI/Window/UIBalloonOpenBtn.h @@ -23,7 +23,6 @@ protected: /* 00C8 */ int m_balloonId; /* 00CC */ UITransBalloonText* m_balloon; /* 00D0 */ UIBitmapButton* m_button; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIBank_NewWnd.h b/Source/UI/Window/UIBank_NewWnd.h index 731b3f70..35dcfbcd 100644 --- a/Source/UI/Window/UIBank_NewWnd.h +++ b/Source/UI/Window/UIBank_NewWnd.h @@ -15,14 +15,10 @@ public: 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; bool IsNumeric(std::string text); - void AnimateLoading(); protected: /* 00B4 */ UIEditCtrl* m_amountEdit; /* 00B8 */ std::string m_status; - /* 00D0 */ int unknown_00D0; - /* 00D4 */ UIWindow* m_loading[4]; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIBasicInfoWnd.h b/Source/UI/Window/UIBasicInfoWnd.h index 7a00aabc..2f800091 100644 --- a/Source/UI/Window/UIBasicInfoWnd.h +++ b/Source/UI/Window/UIBasicInfoWnd.h @@ -44,9 +44,6 @@ public: /* 010C */ int extendedOffset; /* 0110 */ int extendedCollapsedHeight; /* 0114 */ int extendedExpandedHeight; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIBattleMsgOptionWnd.h b/Source/UI/Window/UIBattleMsgOptionWnd.h index ab3c1cf0..c67a61de 100644 --- a/Source/UI/Window/UIBattleMsgOptionWnd.h +++ b/Source/UI/Window/UIBattleMsgOptionWnd.h @@ -35,9 +35,6 @@ public: /* 0110 */ unsigned char unknown_0110; /* 0111 */ unsigned char unknown_0111[0x3]; /* 0114 */ UICheckBox* m_allCheckBox; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIChangeNameWnd.h b/Source/UI/Window/UIChangeNameWnd.h index 9795196e..3a5445f0 100644 --- a/Source/UI/Window/UIChangeNameWnd.h +++ b/Source/UI/Window/UIChangeNameWnd.h @@ -18,7 +18,6 @@ public: int IsNameWithinLimit(std::string name, int limit); protected: - void* unknown_controls; public: /* 00B4 */ UIBitmapButton* m_okButton; diff --git a/Source/UI/Window/UIChatRoomWnd.h b/Source/UI/Window/UIChatRoomWnd.h index ab3e3dac..a5c63382 100644 --- a/Source/UI/Window/UIChatRoomWnd.h +++ b/Source/UI/Window/UIChatRoomWnd.h @@ -47,10 +47,6 @@ public: /* 010C */ std::map unknown_010C; /* 0114 */ std::vector> unknown_0114; /* 0120 */ ChatRoomWndInfo* saved; - -protected: - void* unknown_controls; - void* unknown_listContext; }; #endif diff --git a/Source/UI/Window/UICntWnd.h b/Source/UI/Window/UICntWnd.h index b0dd602f..a18127bf 100644 --- a/Source/UI/Window/UICntWnd.h +++ b/Source/UI/Window/UICntWnd.h @@ -19,7 +19,6 @@ protected: /* 00B4 */ int m_event; /* 00B8 */ UIEditCtrl* m_edit; /* 00BC */ UIStaticText* m_text; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIControl.cpp b/Source/UI/Window/UIControl.cpp index 8bbd09a9..1c643572 100644 --- a/Source/UI/Window/UIControl.cpp +++ b/Source/UI/Window/UIControl.cpp @@ -2757,14 +2757,12 @@ CUIListBoxEx::CUIListBoxEx() // FUNCTION: fn_13949 template <> CUIListBox::~CUIListBox() { - this->NormalImage().~CResPtr(); } // OFFSET: 0x009BE750 // FUNCTION: fn_13950 template <> CUIListBox::~CUIListBox() { - this->NormalImage().~CResPtr(); } // OFFSET: 0x009BE8B0 @@ -3611,7 +3609,7 @@ void CUIVScrollBar::Slot15(int, int) { // OFFSET: 0x009BE1A0 // FUNCTION: fn_13946 CUIStaticText::CUIStaticText() - : CUIControl(), unknown_0084(), unknown_0098(), unknown_00B0(), scrollBar(nullptr), unknown_00C4(), fitText(false), horizontalAlign(0), + : CUIControl(), unknown_0098(), unknown_00B0(), scrollBar(nullptr), unknown_00C4(), fitText(false), horizontalAlign(0), verticalAlign(0), fontIndex(0), fontHeight(12), bold(0), color(0), shadow(false), shadowColor(0xFFFFFF), outline(false), outlineColor(0xFFFFFF), textX(0), textY(0), text() { new (&this->Tooltip()) std::string(); @@ -3620,17 +3618,14 @@ CUIStaticText::CUIStaticText() // OFFSET: 0x009DA310 // FUNCTION: fn_14285 CUIListItem::~CUIListItem() { - using ImageMap = std::map; - this->Images().~ImageMap(); } // OFFSET: 0x009EFC30 // FUNCTION: fn_14653 -CUIListItem::CUIListItem() : CUIControl(), unknown_0084(), selected(0), disabledImage(nullptr), frozen(0), index(-1), onHover(), onPress() { - new (&this->Images()) std::map(); - this->Images()[0] = nullptr; - this->Images()[1] = nullptr; - this->Images()[2] = nullptr; +CUIListItem::CUIListItem() : CUIControl(), images(), selected(0), disabledImage(nullptr), frozen(0), index(-1), onHover(), onPress() { + this->images[0] = nullptr; + this->images[1] = nullptr; + this->images[2] = nullptr; this->m_clip = 1; } @@ -3639,14 +3634,14 @@ CUIListItem::CUIListItem() : CUIControl(), unknown_0084(), selected(0), disabled void CUIListItem::Paint() { this->ClearSurface(0xFFFF00FF); if (!this->frozen) { - if (!this->Images()[this->selected]) { + if (!this->images[this->selected]) { if (this->selected == 1) { this->ClearSurface(0xFFDECE); } else if (this->selected == 2) { this->ClearSurface(0xEF9C73); } } else { - this->DrawBitmap(0, 0, &this->Images()[this->selected]->image, false); + this->DrawBitmap(0, 0, &this->images[this->selected]->image, false); } } else if (this->disabledImage) { this->DrawBitmap(0, 0, &this->disabledImage->image, false); @@ -3656,10 +3651,10 @@ void CUIListItem::Paint() { // OFFSET: 0x009F02E0 // FUNCTION: fn_14663 void CUIListItem::SetImageResources(CBitmapRes* normal, CBitmapRes* hover, CBitmapRes* pressed, CBitmapRes* disabled) { - this->Images().clear(); - this->Images()[0] = normal; - this->Images()[1] = hover; - this->Images()[2] = pressed; + this->images.clear(); + this->images[0] = normal; + this->images[1] = hover; + this->images[2] = pressed; this->disabledImage = disabled; this->Invalidate(); } diff --git a/Source/UI/Window/UIControl.h b/Source/UI/Window/UIControl.h index 89fe212b..ac84cf19 100644 --- a/Source/UI/Window/UIControl.h +++ b/Source/UI/Window/UIControl.h @@ -231,6 +231,7 @@ public: /* 01D4 */ SkinPaletteCell normalCell; /* 01DC */ SkinPaletteCell selectedCell; /* 01E4 */ SkinPaletteCell borderCell; + /* 01EC */ unsigned char unknown_01EC[4]; }; class CUIImageButton : public CUIButton { @@ -353,6 +354,8 @@ public: this->onResize = handler; } + + /* 0080 */ CResPtr image; /* 0084 */ int minWidth; /* 0088 */ int minHeight; /* 008C */ int maxWidth; @@ -368,11 +371,10 @@ public: /* 00B4 */ std::string imageName; /* 00CC */ unsigned char unknown_00CC[0x04]; /* 00D0 */ std::function onResize; - /* 0080 */ CResPtr image; }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(CUIControl) == 132); +static_assert(sizeof(CUIControl) == 0x80); static_assert(offsetof(CUIResizer, minWidth) == 0x84); static_assert(offsetof(CUIResizer, imageName) == 0xB4); static_assert(offsetof(CUIResizer, onResize) == 0xD0); diff --git a/Source/UI/Window/UIDebuffRemoveWnd.h b/Source/UI/Window/UIDebuffRemoveWnd.h index 01850abd..3a9c924f 100644 --- a/Source/UI/Window/UIDebuffRemoveWnd.h +++ b/Source/UI/Window/UIDebuffRemoveWnd.h @@ -17,7 +17,6 @@ public: protected: /* 00B4 */ UIBasicButton* m_button; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIEscOptionWnd.h b/Source/UI/Window/UIEscOptionWnd.h index 1785edf9..3cc398a9 100644 --- a/Source/UI/Window/UIEscOptionWnd.h +++ b/Source/UI/Window/UIEscOptionWnd.h @@ -19,9 +19,6 @@ public: /* 00B4 */ UIButton* m_buttons[7]; /* 00D0 */ int m_mode; /* 00D4 */ int m_titleHeight; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIFrameWnd.h b/Source/UI/Window/UIFrameWnd.h index bbe23b17..d4a6c265 100644 --- a/Source/UI/Window/UIFrameWnd.h +++ b/Source/UI/Window/UIFrameWnd.h @@ -62,11 +62,10 @@ protected: /* 008C */ int m_message0; /* 0090 */ int m_message1; /* 0094 */ FrameTextCache m_textCache; - unsigned char unknown_00B8[4]; }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIFrameWnd) == 188); +static_assert(sizeof(UIFrameWnd) == 0xB4); #endif #endif diff --git a/Source/UI/Window/UIHomunInfoWnd.h b/Source/UI/Window/UIHomunInfoWnd.h index 07e272ff..9e91fbaf 100644 --- a/Source/UI/Window/UIHomunInfoWnd.h +++ b/Source/UI/Window/UIHomunInfoWnd.h @@ -11,7 +11,6 @@ class UICheckBox; class UIEditCtrl2; class UIINT64BarGraph; class UINormalMB; -class ForbiddenWords; class UIHomunInfoWnd : public UIFrameWnd { public: @@ -31,10 +30,6 @@ public: /* 00D0 */ UINormalMB* unknown_00D0; /* 00D4 */ UICheckBox* unknown_00D4; -protected: - void* unknown_controls; - void* unknown_recorder; - ForbiddenWords* m_forbiddenWords; }; #endif diff --git a/Source/UI/Window/UIJobListWnd.h b/Source/UI/Window/UIJobListWnd.h index ac476a6f..4d9b9df6 100644 --- a/Source/UI/Window/UIJobListWnd.h +++ b/Source/UI/Window/UIJobListWnd.h @@ -28,7 +28,6 @@ protected: /* 00D4 */ unsigned char unknown_00D4[0x14]; /* 00E8 */ int unknown_00E8; /* 00EC */ JobListWndInfo* m_saved; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UILoginOTPWnd.h b/Source/UI/Window/UILoginOTPWnd.h index a9f376e0..3dc2ea71 100644 --- a/Source/UI/Window/UILoginOTPWnd.h +++ b/Source/UI/Window/UILoginOTPWnd.h @@ -19,9 +19,6 @@ public: /* 00B8 */ int unknown_00B8; /* 00BC */ UIStaticText* timerText; /* 00C0 */ int unknown_00C0; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIMakeCharWnd.h b/Source/UI/Window/UIMakeCharWnd.h index 6c73ca03..1d513194 100644 --- a/Source/UI/Window/UIMakeCharWnd.h +++ b/Source/UI/Window/UIMakeCharWnd.h @@ -30,9 +30,6 @@ public: /* 02D0 */ UIScrollBar* unknown_02D0; /* 02D4 */ int unknown_02D4; /* 02D8 */ int unknown_02D8; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIMerInfoWnd.h b/Source/UI/Window/UIMerInfoWnd.h index 347a5d02..b3877503 100644 --- a/Source/UI/Window/UIMerInfoWnd.h +++ b/Source/UI/Window/UIMerInfoWnd.h @@ -21,10 +21,6 @@ public: /* 00BC */ UIBarGraphPlayer* hpBar; /* 00C0 */ UIBarGraphPlayer* spBar; /* 00C4 */ MerInfoWndInfo* saved; - -protected: - void* unknown_controls; - void* unknown_recorder; }; #endif diff --git a/Source/UI/Window/UIMessageBox.cpp b/Source/UI/Window/UIMessageBox.cpp index 6fc1c0af..d8a882bb 100644 --- a/Source/UI/Window/UIMessageBox.cpp +++ b/Source/UI/Window/UIMessageBox.cpp @@ -1006,12 +1006,12 @@ void UIReplayRECControlWnd::Slot11() { // OFFSET: 0x008A6DC0 // FUNCTION: fn_11711 -void UIBank_NewWnd::AnimateLoading() { +void UIReplayRECControlWnd::AnimateLoading() { for (int index = 0; index < 4; ++index) { - this->m_loading[index]->Move(-100, -100); + this->tabs[index]->Move(-100, -100); } - this->m_loading[static_cast(timeGetTime() % 1000) / 250]->Move(6, 5); + this->tabs[static_cast(timeGetTime() % 1000) / 250]->Move(6, 5); } // OFFSET: 0x008AE8A0 diff --git a/Source/UI/Window/UIMessageBox.h b/Source/UI/Window/UIMessageBox.h index ec154538..8d4b1a83 100644 --- a/Source/UI/Window/UIMessageBox.h +++ b/Source/UI/Window/UIMessageBox.h @@ -8,7 +8,6 @@ class UITextViewer; class UIWindowMgr; - class UIMessageBox : public UIFrameWnd { public: UIMessageBox(); @@ -33,13 +32,12 @@ public: /* 011C */ unsigned char protectedMessage; private: - void* unknown_dialog; void AddButton(const char* name, int id, int x, int y); void FormatCountdown(); }; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIMessageBox) == 300); +static_assert(sizeof(UIMessageBox) == 0x120); #endif #endif diff --git a/Source/UI/Window/UIMileageWnd.h b/Source/UI/Window/UIMileageWnd.h index a651c5f8..178c0850 100644 --- a/Source/UI/Window/UIMileageWnd.h +++ b/Source/UI/Window/UIMileageWnd.h @@ -6,7 +6,6 @@ #include #include - class UIMileageWnd : public UIFrameWnd { public: UIMileageWnd(); @@ -25,7 +24,6 @@ protected: /* 00BC */ int m_remaining; /* 00C0 */ int m_bonus; /* 00C4 */ std::string m_tooltip; - void* unknown_controls; }; extern int g_mileageWndActive; diff --git a/Source/UI/Window/UIMonsterDisplayWnd.h b/Source/UI/Window/UIMonsterDisplayWnd.h index 2bf9aa05..1e332aa6 100644 --- a/Source/UI/Window/UIMonsterDisplayWnd.h +++ b/Source/UI/Window/UIMonsterDisplayWnd.h @@ -5,7 +5,6 @@ #include - class UIMonsterDisplayWnd : public UIFrameWnd { public: UIMonsterDisplayWnd(); @@ -17,9 +16,6 @@ public: void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIMonsterInfoWnd.h b/Source/UI/Window/UIMonsterInfoWnd.h index 24056c08..768fb9c6 100644 --- a/Source/UI/Window/UIMonsterInfoWnd.h +++ b/Source/UI/Window/UIMonsterInfoWnd.h @@ -6,7 +6,6 @@ #include #include - struct MonsterInfo { /* 0000 */ short unknown_0000; /* 0002 */ short job; @@ -34,9 +33,6 @@ public: /* 00B4 */ MonsterInfo info; /* 00D4 */ int unknown_00D4; /* 00D8 */ std::string name; - -protected: - void* unknown_controls; }; extern std::uint32_t g_monsterInfoActorId; diff --git a/Source/UI/Window/UINavigationHelpWnd.h b/Source/UI/Window/UINavigationHelpWnd.h index fa4f70fe..eecec7c3 100644 --- a/Source/UI/Window/UINavigationHelpWnd.h +++ b/Source/UI/Window/UINavigationHelpWnd.h @@ -13,8 +13,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; protected: - void* unknown_controls; - void* unknown_text; /* 00B4 */ UITextViewer* m_viewer; /* 00B8 */ int unknown_00B8; }; diff --git a/Source/UI/Window/UINavigationWnd.h b/Source/UI/Window/UINavigationWnd.h index 452ee407..65fee8b4 100644 --- a/Source/UI/Window/UINavigationWnd.h +++ b/Source/UI/Window/UINavigationWnd.h @@ -88,10 +88,6 @@ protected: /* 0128 */ UIResizer* unknown_0128; /* 012C */ std::vector m_history; - void* unknown_controls; - void* unknown_listContext; - void* unknown_recorder; - void* unknown_dialogs; }; #endif diff --git a/Source/UI/Window/UINewMakeCharWnd.h b/Source/UI/Window/UINewMakeCharWnd.h index b6995bb6..bb0b812d 100644 --- a/Source/UI/Window/UINewMakeCharWnd.h +++ b/Source/UI/Window/UINewMakeCharWnd.h @@ -84,6 +84,7 @@ public: /* 01FC */ int unknown_01FC; /* 0200 */ int m_action; /* 0204 */ int m_frame; + /* 0208 */ unsigned char unknown_0208[0x8]; /* 0210 */ unsigned char unknown_0210[0x04]; /* 0214 */ MakeCharacterStatus m_status; /* 0264 */ short m_job; @@ -129,7 +130,6 @@ public: /* 0360 */ unsigned long m_startTime; /* 0364 */ int unknown_0364; /* 0368 */ int unknown_0368; - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Window/UINewSelectCharWnd.h b/Source/UI/Window/UINewSelectCharWnd.h index 0a826fa0..b0559e5e 100644 --- a/Source/UI/Window/UINewSelectCharWnd.h +++ b/Source/UI/Window/UINewSelectCharWnd.h @@ -87,7 +87,6 @@ protected: /* 0134 */ int m_maxCharacters; /* 0138 */ int m_unknown138; /* 013C */ bool m_unknown13C; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UINewSkillListWnd.h b/Source/UI/Window/UINewSkillListWnd.h index ceb56670..f5c3f756 100644 --- a/Source/UI/Window/UINewSkillListWnd.h +++ b/Source/UI/Window/UINewSkillListWnd.h @@ -88,9 +88,6 @@ public: /* 02A8 */ bool m_showDetail; /* 02A9 */ unsigned char unknown_02A9[3]; /* 02AC */ int m_detailId; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UINormalMB.h b/Source/UI/Window/UINormalMB.h index 23d829d7..474acb53 100644 --- a/Source/UI/Window/UINormalMB.h +++ b/Source/UI/Window/UINormalMB.h @@ -27,7 +27,6 @@ protected: /* 00F0 */ std::map m_actions; private: - void* unknown_textContext; void AddButton(const char* normal, const char* hover, const char* pressed, int x, int y, int id); }; diff --git a/Source/UI/Window/UINoteWnd.h b/Source/UI/Window/UINoteWnd.h index 571292f5..a89703bc 100644 --- a/Source/UI/Window/UINoteWnd.h +++ b/Source/UI/Window/UINoteWnd.h @@ -29,7 +29,6 @@ public: protected: /* 00B4 */ UINoteWnd_Scroll* m_scroll; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UINoticeWnd.h b/Source/UI/Window/UINoticeWnd.h index 12a54799..e914a8bc 100644 --- a/Source/UI/Window/UINoticeWnd.h +++ b/Source/UI/Window/UINoticeWnd.h @@ -26,9 +26,6 @@ public: /* 0144 */ int m_bottomPositions[10]; /* 016C */ int m_scroll; /* 0170 */ UIWindow* m_scrollBar; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIOpenMailBoxWnd.h b/Source/UI/Window/UIOpenMailBoxWnd.h index 7869bd10..22dd3e1c 100644 --- a/Source/UI/Window/UIOpenMailBoxWnd.h +++ b/Source/UI/Window/UIOpenMailBoxWnd.h @@ -3,7 +3,6 @@ #include "UI/Window/UIFrameWnd.h" - class UIOpenMailBoxWnd : public UIFrameWnd { public: UIOpenMailBoxWnd(); @@ -11,9 +10,6 @@ public: 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; virtual void Slot53(); - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIOpenRoulletteWnd.h b/Source/UI/Window/UIOpenRoulletteWnd.h index 181a57df..448f5204 100644 --- a/Source/UI/Window/UIOpenRoulletteWnd.h +++ b/Source/UI/Window/UIOpenRoulletteWnd.h @@ -3,7 +3,6 @@ #include "UI/Window/UIFrameWnd.h" - class UIOpenRoulletteWnd : public UIFrameWnd { public: UIOpenRoulletteWnd(); @@ -11,9 +10,6 @@ public: void Slot15(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; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIPartyBookingHelpWnd.h b/Source/UI/Window/UIPartyBookingHelpWnd.h index 2d61028d..a769e9cc 100644 --- a/Source/UI/Window/UIPartyBookingHelpWnd.h +++ b/Source/UI/Window/UIPartyBookingHelpWnd.h @@ -13,8 +13,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; protected: - void* unknown_controls; - void* unknown_text; /* 00B4 */ UITextViewer* m_viewer; }; diff --git a/Source/UI/Window/UIPayConfirmWnd.h b/Source/UI/Window/UIPayConfirmWnd.h index f877d66a..8df67b30 100644 --- a/Source/UI/Window/UIPayConfirmWnd.h +++ b/Source/UI/Window/UIPayConfirmWnd.h @@ -24,9 +24,6 @@ public: __declspec(property(get = Title)) std::string& m_title; /* 0120 */ const BitmapImage* m_image; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIPetEvolutionWnd.h b/Source/UI/Window/UIPetEvolutionWnd.h index 20613410..81d47c61 100644 --- a/Source/UI/Window/UIPetEvolutionWnd.h +++ b/Source/UI/Window/UIPetEvolutionWnd.h @@ -21,9 +21,6 @@ public: /* 00C0 */ int m_petEggId; /* 00C4 */ int m_evolvedEggId; /* 00C8 */ std::vector> m_materials; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIPetInfoWnd.h b/Source/UI/Window/UIPetInfoWnd.h index bcfc6bf4..3c1403bb 100644 --- a/Source/UI/Window/UIPetInfoWnd.h +++ b/Source/UI/Window/UIPetInfoWnd.h @@ -10,7 +10,6 @@ class UIBitmapButton; class UICheckBox; class UIEditCtrl; class UINormalMB; -class ForbiddenWords; class UINoneVisibleButton; class UIPetInfoBarGraph; @@ -35,10 +34,6 @@ public: /* 00E4 */ unsigned char unknown_00E4; /* 00E8 */ UICheckBox* unknown_00E8; -protected: - void* unknown_controls; - void* unknown_recorder; - ForbiddenWords* m_forbiddenWords; }; #endif diff --git a/Source/UI/Window/UIRebirthWnd.h b/Source/UI/Window/UIRebirthWnd.h index 26e1160d..2a7506ac 100644 --- a/Source/UI/Window/UIRebirthWnd.h +++ b/Source/UI/Window/UIRebirthWnd.h @@ -3,16 +3,12 @@ #include "UI/Window/UIFrameWnd.h" - class UIRebirthWnd : public UIFrameWnd { public: UIRebirthWnd(); void Slot15(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIReplayControlWnd.h b/Source/UI/Window/UIReplayControlWnd.h index 93e921e1..643bc7be 100644 --- a/Source/UI/Window/UIReplayControlWnd.h +++ b/Source/UI/Window/UIReplayControlWnd.h @@ -24,9 +24,6 @@ public: /* 00C0 */ UIWindow* m_buttons[4]; /* 00D0 */ UIBarGraph4* m_progress; /* 00D4 */ UIStaticText* m_texts[4]; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIReplayRECControlWnd.h b/Source/UI/Window/UIReplayRECControlWnd.h index 3276d5f2..c632082b 100644 --- a/Source/UI/Window/UIReplayRECControlWnd.h +++ b/Source/UI/Window/UIReplayRECControlWnd.h @@ -25,6 +25,7 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; void ApplyMode(); void UpdateRecordTime(); + void AnimateLoading(); /* 00B4 */ int mode; /* 00B8 */ int unknown_00B8; @@ -63,10 +64,6 @@ public: /* 0132 */ unsigned char unknown_0132[2]; /* 0134 */ UIWindow* window_0134; /* 0138 */ ReplayRECControlWndInfo* saved; - -protected: - void* unknown_focus; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIRodexContentsWnd.h b/Source/UI/Window/UIRodexContentsWnd.h index 7a893a7a..dde9e3e2 100644 --- a/Source/UI/Window/UIRodexContentsWnd.h +++ b/Source/UI/Window/UIRodexContentsWnd.h @@ -42,9 +42,6 @@ public: /* 0104 */ UIBasicButton* unknown_0104; /* 0108 */ UIBasicButton* unknown_0108; /* 010C */ bool unknown_010C; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIRoulletteWnd.h b/Source/UI/Window/UIRoulletteWnd.h index 82d7243d..3ac3e271 100644 --- a/Source/UI/Window/UIRoulletteWnd.h +++ b/Source/UI/Window/UIRoulletteWnd.h @@ -27,11 +27,13 @@ public: ITEM_INFO ItemAt(int x, int y); void UpdateButtons(); + + /* 00B4 */ UIBitmapButton* m_startButton; + /* 00B8 */ UISpriteButton* m_startSprite; /* 00BC */ UIBitmapButton* m_prizeButton; /* 00C0 */ UISpriteButton* m_prizeSprite; /* 00C4 */ UISpriteButton* m_stageArrow; /* 00C8 */ unsigned char m_enabled; - /* 00B4 */ UIBitmapButton* m_startButton; /* 00D0 */ ITEM_INFO m_item; /* 01C8 */ std::list m_items; /* 01D0 */ int m_column; @@ -39,7 +41,6 @@ public: /* 01D8 */ UIStaticText* m_goldText; /* 01DC */ UIStaticText* m_silverText; /* 01E0 */ UIStaticText* m_bronzeText; - /* 00B8 */ UISpriteButton* m_startSprite; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Window/UISecondCostumeWnd.h b/Source/UI/Window/UISecondCostumeWnd.h index d84489f3..c7d778aa 100644 --- a/Source/UI/Window/UISecondCostumeWnd.h +++ b/Source/UI/Window/UISecondCostumeWnd.h @@ -37,8 +37,6 @@ protected: /* 00D0 */ std::vector m_entries[4]; /* 0100 */ std::uint32_t unknown_0100; /* 0104 */ int m_page; - void* unknown_controls; - void* unknown_listContext; /* 0108 */ std::string unknown_0108[7]; /* 01B0 */ std::string unknown_01B0[7]; }; diff --git a/Source/UI/Window/UISeekPartyListWnd.cpp b/Source/UI/Window/UISeekPartyListWnd.cpp index c5525590..1afc004d 100644 --- a/Source/UI/Window/UISeekPartyListWnd.cpp +++ b/Source/UI/Window/UISeekPartyListWnd.cpp @@ -706,7 +706,7 @@ void UISeekPartyListWnd::SelectJobCategory(int category) { UISeekPartyListWnd::UISeekPartyListWnd() : UIFrameWnd(0), m_title(nullptr), m_levelLabel(nullptr), m_mapLabel(nullptr), m_jobLabel(nullptr), m_filterLabel0(nullptr), m_filterLabel1(nullptr), m_filterLabel2(nullptr), m_filterLabel3(nullptr), - m_searchEdit(nullptr), m_regionCombo(nullptr), m_mapCombo(nullptr), m_jobCategoryCombo(nullptr), m_jobCombo(nullptr), m_alarmCheck(nullptr), + unknown_00D4(nullptr), m_footerText(nullptr), m_searchEdit(nullptr), m_regionCombo(nullptr), m_mapCombo(nullptr), m_jobCategoryCombo(nullptr), m_jobCombo(nullptr), m_alarmCheck(nullptr), m_findButton(nullptr), m_okButton(nullptr), m_chatButton(nullptr), m_scrollBar(nullptr), m_regionMaps(), m_jobOptions(), m_region(0), m_jobCategory(0), m_jobCategoryChanged(0), m_restoreHeight(0), m_minimized(0), m_filterLevel(-5), m_filterMap(-5), m_filterJob(-5) { std::memset(this->unknown_010C, 0, sizeof(this->unknown_010C)); diff --git a/Source/UI/Window/UISeekPartyListWnd.h b/Source/UI/Window/UISeekPartyListWnd.h index b23c0c2c..a90a090d 100644 --- a/Source/UI/Window/UISeekPartyListWnd.h +++ b/Source/UI/Window/UISeekPartyListWnd.h @@ -54,6 +54,8 @@ protected: /* 00C8 */ UIStaticText* m_filterLabel1; /* 00CC */ UIStaticText* m_filterLabel2; /* 00D0 */ UIStaticText* m_filterLabel3; + /* 00D4 */ UIWindow* unknown_00D4; + /* 00D8 */ UIStaticText* m_footerText; /* 00DC */ UIEditCtrl* m_searchEdit; /* 00E0 */ UIComboBoxDefWnd* m_regionCombo; /* 00E4 */ UIComboBoxDefWnd* m_mapCombo; @@ -88,8 +90,6 @@ protected: /* 01C8 */ short m_filterJob; /* 01CA */ unsigned char unknown_01CA[6]; /* 01D0 */ SeekPartyListWndInfo* m_saved; - UIStaticText* m_footerText; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UISeekPartyMBWnd.cpp b/Source/UI/Window/UISeekPartyMBWnd.cpp index 498cec3c..dd734645 100644 --- a/Source/UI/Window/UISeekPartyMBWnd.cpp +++ b/Source/UI/Window/UISeekPartyMBWnd.cpp @@ -253,8 +253,8 @@ void UISeekPartyMBWnd::ShowJobCategory(int category) { // OFFSET: 0x00911EE0 // FUNCTION: fn_12524 UISeekPartyMBWnd::UISeekPartyMBWnd() - : UIFrameWnd(0), unknown_00BC(nullptr), unknown_00C0(nullptr), m_levelEdit(nullptr), m_typeCombo(nullptr), m_subTypeCombo(nullptr), m_jobCategoryCombo(nullptr), - m_jobChecks(), m_subTypes(), unknown_0154(nullptr), unknown_0158(nullptr), m_jobCategory(-1), m_subType(0), m_restoreHeight(0), m_minimized(0), m_titleText(nullptr), m_levelText(nullptr) { + : UIFrameWnd(0), m_titleText(nullptr), m_levelText(nullptr), unknown_00BC(nullptr), unknown_00C0(nullptr), m_levelEdit(nullptr), m_typeCombo(nullptr), m_subTypeCombo(nullptr), m_jobCategoryCombo(nullptr), + m_jobChecks(), m_subTypes(), unknown_0154(nullptr), unknown_0158(nullptr), m_jobCategory(-1), m_subType(0), m_restoreHeight(0), m_minimized(0) { } // OFFSET: 0x009146D0 diff --git a/Source/UI/Window/UISeekPartyMBWnd.h b/Source/UI/Window/UISeekPartyMBWnd.h index f15df342..eafc624f 100644 --- a/Source/UI/Window/UISeekPartyMBWnd.h +++ b/Source/UI/Window/UISeekPartyMBWnd.h @@ -36,6 +36,8 @@ public: void ShowJobCategory(int category); protected: + /* 00B4 */ UIStaticText* m_titleText; + /* 00B8 */ UIStaticText* m_levelText; /* 00BC */ UIStaticText* unknown_00BC; /* 00C0 */ UIStaticText* unknown_00C0; /* 00C4 */ UIEditCtrl* m_levelEdit; @@ -55,9 +57,6 @@ protected: /* 0169 */ SeekPartyRegistration m_registration; /* 0179 */ unsigned char unknown_0179[3]; /* 017C */ SeekPartyMBWndInfo* m_saved; - void* unknown_controls; - UIStaticText* m_titleText; - UIStaticText* m_levelText; }; #endif diff --git a/Source/UI/Window/UISeekPartyWnd.h b/Source/UI/Window/UISeekPartyWnd.h index a6777e9e..602e5dc8 100644 --- a/Source/UI/Window/UISeekPartyWnd.h +++ b/Source/UI/Window/UISeekPartyWnd.h @@ -38,7 +38,6 @@ protected: /* 01E4 */ unsigned char m_minimized; /* 01E5 */ unsigned char unknown_01E5[3]; /* 01E8 */ SeekPartyWndInfo* m_saved; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UISelectReplayDataWnd.h b/Source/UI/Window/UISelectReplayDataWnd.h index 89cac28f..9f28d540 100644 --- a/Source/UI/Window/UISelectReplayDataWnd.h +++ b/Source/UI/Window/UISelectReplayDataWnd.h @@ -20,10 +20,6 @@ public: /* 00B4 */ UIReplayListBox* m_list; /* 00B8 */ UIBitmapButton* m_serverButton; /* 00BC */ UIStaticText* m_texts[5]; - -protected: - void* unknown_controls; - void* unknown_listContext; }; #endif diff --git a/Source/UI/Window/UISelectServerWnd.h b/Source/UI/Window/UISelectServerWnd.h index f2f6990b..254c7dfb 100644 --- a/Source/UI/Window/UISelectServerWnd.h +++ b/Source/UI/Window/UISelectServerWnd.h @@ -20,9 +20,6 @@ public: /* 00BC */ std::string m_valueName; /* 00D4 */ int m_selectedServer; /* 00D8 */ int m_event; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UISerachStoreInfoWnd.h b/Source/UI/Window/UISerachStoreInfoWnd.h index de1a2c88..de3d55c3 100644 --- a/Source/UI/Window/UISerachStoreInfoWnd.h +++ b/Source/UI/Window/UISerachStoreInfoWnd.h @@ -36,7 +36,6 @@ protected: /* 00ED */ unsigned char unknown_00ED; /* 00F0 */ std::string unknown_00F0; - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIShowWarpWnd.h b/Source/UI/Window/UIShowWarpWnd.h index 4d957e8b..e46d2e61 100644 --- a/Source/UI/Window/UIShowWarpWnd.h +++ b/Source/UI/Window/UIShowWarpWnd.h @@ -13,11 +13,6 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; /* 00B4 */ UIListBox* m_list; - -protected: - void* unknown_controls; - void* unknown_listContext; - void* unknown_recorder; }; #endif diff --git a/Source/UI/Window/UITalkboxTrapInputWnd.h b/Source/UI/Window/UITalkboxTrapInputWnd.h index 073824f8..79481867 100644 --- a/Source/UI/Window/UITalkboxTrapInputWnd.h +++ b/Source/UI/Window/UITalkboxTrapInputWnd.h @@ -27,9 +27,6 @@ public: /* 00B4 */ TalkboxTrapTarget target; /* 00C4 */ UIEditCtrl* edit; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UITransMenuWnd.h b/Source/UI/Window/UITransMenuWnd.h index 494b0d01..baf285a3 100644 --- a/Source/UI/Window/UITransMenuWnd.h +++ b/Source/UI/Window/UITransMenuWnd.h @@ -5,7 +5,6 @@ #include - struct TransMenuItem { /* 0000 */ char text[24]; /* 0018 */ int command; @@ -37,7 +36,6 @@ protected: /* 00DC */ int m_lineHeight; /* 00E0 */ int m_margin; /* 00E4 */ int m_selected; - void* unknown_controls; }; #if defined(_WIN32) && !defined(_WIN64) diff --git a/Source/UI/Window/UIViewCameraInfoWnd.h b/Source/UI/Window/UIViewCameraInfoWnd.h index 9aa1a94c..ac5f0ea5 100644 --- a/Source/UI/Window/UIViewCameraInfoWnd.h +++ b/Source/UI/Window/UIViewCameraInfoWnd.h @@ -5,7 +5,6 @@ #include - class UIViewCameraInfoWnd : public UIFrameWnd { public: UIViewCameraInfoWnd(); @@ -13,9 +12,6 @@ public: void Slot15(int width, int height) override; void Paint() override; int SendMsg(UIWindow* sender, int message, std::intptr_t argument1, std::intptr_t argument2, std::intptr_t argument3, std::intptr_t argument4) override; - -protected: - void* unknown_controls; }; #endif diff --git a/Source/UI/Window/UIWindow.h b/Source/UI/Window/UIWindow.h index b96461b1..033b874a 100644 --- a/Source/UI/Window/UIWindow.h +++ b/Source/UI/Window/UIWindow.h @@ -230,8 +230,6 @@ protected: /* 0078 */ unsigned char m_cached; /* 0079 */ unsigned char m_clip; - /* 007C */ std::uint32_t unknown_007C; - private: UIWindow* Parent() const; UIWindow(const UIWindow&) = delete; @@ -241,7 +239,7 @@ private: extern std::uint32_t g_windowUid; #if defined(_WIN32) && !defined(_WIN64) -static_assert(sizeof(UIWindow) == 128); +static_assert(sizeof(UIWindow) == 0x7C); static_assert(offsetof(UIWindow, parent) == 0x10); #endif