diff --git a/Source/UI/Edit/UIEditCtrl.h b/Source/UI/Edit/UIEditCtrl.h index 0bc84ff3..f1c2ecfd 100644 --- a/Source/UI/Edit/UIEditCtrl.h +++ b/Source/UI/Edit/UIEditCtrl.h @@ -3,7 +3,9 @@ #include "UI/Window/UIWindow.h" +#include #include +#include struct InputFocus; struct TextInputBuffer; @@ -111,6 +113,43 @@ public: int SendMsg(UIWindow* sender, int message, std::intptr_t a, std::intptr_t b, std::intptr_t c, std::intptr_t d) override; }; +struct UIEditCtrl3Entry { + /* 0000 */ int unknown_0000; + /* 0004 */ int unknown_0004; + /* 0008 */ int unknown_0008; +}; + +struct UIEditCtrl3Table { + /* 0000 */ std::vector items; + /* 000C */ int count = 0; +}; + +class UIEditCtrl3 : public UIEditCtrl2 { +public: + UIEditCtrl3(UIWindowContext& windows, UIEditContext& edit); + + /* 011C */ std::list entries; + /* 0124 */ std::vector unknown_0124; + /* 0130 */ int unknown_0130; + /* 0134 */ unsigned char unknown_0134; + /* 0138 */ int unknown_0138; + /* 013C */ int unknown_013C; + /* 0140 */ int unknown_0140; + /* 0144 */ int unknown_0144; + /* 0148 */ int unknown_0148; + /* 014C */ int unknown_014C; + /* 0150 */ int unknown_0150; + /* 0154 */ int unknown_0154; + /* 0158 */ int unknown_0158; + /* 015C */ short unknown_015C; + /* 015E */ unsigned char unknown_015E; + /* 0160 */ int unknown_0160; + /* 0164 */ int unknown_0164; + /* 0168 */ std::vector unknown_0168; + /* 0174 */ UIEditCtrl3Table unknown_0174; + /* 0184 */ short unknown_0184; +}; + class UIEditCtrl4 : public UIEditCtrl { public: UIEditCtrl4(UIWindowContext& windows, UIEditContext& edit); diff --git a/Source/UI/Edit/UIEditVariants.cpp b/Source/UI/Edit/UIEditVariants.cpp index fbca8192..c752d302 100644 --- a/Source/UI/Edit/UIEditVariants.cpp +++ b/Source/UI/Edit/UIEditVariants.cpp @@ -29,6 +29,27 @@ int UIEditCtrl2::SendMsg(UIWindow* sender, int message, std::intptr_t a, std::in return 0; } +// OFFSET: 0x0084F570 +// FUNCTION: fn_10659 +UIEditCtrl3::UIEditCtrl3(UIWindowContext& windows, UIEditContext& edit) : UIEditCtrl2(windows, edit) { + this->unknown_0130 = 0; + this->unknown_0134 = 0; + this->unknown_0138 = 14; + this->unknown_013C = 0; + this->unknown_0140 = 0; + this->unknown_0144 = 0; + this->unknown_0148 = 0; + this->unknown_014C = 0; + this->unknown_0150 = 0; + this->unknown_0154 = 0; + this->unknown_0158 = 0; + this->unknown_015C = 0; + this->unknown_015E = 0; + this->unknown_0184 = 0; + this->unknown_0160 = 0; + this->unknown_0164 = 0; +} + // OFFSET: 0x0084F7B0 // FUNCTION: fn_10660 UIEditCtrl4::UIEditCtrl4(UIWindowContext& windows, UIEditContext& edit) : UIEditCtrl(windows, edit), placeholderColor(0xFFFFFFFFu), placeholderEnabled(0) {