Administrative source import: native x86 compilation passed for 423 authored units. Source placement and submission states are migrated separately; this commit does not imply peer acceptance.
Previous head: 35d2a8cb36
Payload SHA256: 592f016d2730c5593bb653aa054c1e5f76a6df72c8f5a09e66f74876e2e33dee
50 lines
1.4 KiB
C++
50 lines
1.4 KiB
C++
#ifndef RAGNAROK_SOURCE_UI_LISTS_UICOMBOBOXEX_H
|
|
#define RAGNAROK_SOURCE_UI_LISTS_UICOMBOBOXEX_H
|
|
|
|
#include "UI/Lists/UIListBoxEx.h"
|
|
|
|
struct UIComboBoxContext {
|
|
UIListBoxContext& list;
|
|
|
|
UIWindow* const& popup;
|
|
};
|
|
|
|
class UIComboBoxEx : public UIListBoxEx {
|
|
public:
|
|
UIComboBoxEx(UIWindowContext& windows, UIComboBoxContext& combo);
|
|
~UIComboBoxEx() override;
|
|
void Resize(int width, int height) override;
|
|
void Slot15(int width, int height) override;
|
|
void Paint() override;
|
|
void Slot25(int x, int y) override;
|
|
void Slot26(int x, int y) override;
|
|
void Slot27(int x, int y) override;
|
|
void Slot31(int x, int y) 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 Configure(int x, int y, int width, int height, unsigned char transparent) override;
|
|
void Refresh() override;
|
|
|
|
/* 00C0 */ int targetId;
|
|
|
|
protected:
|
|
UIComboBoxContext* m_combo;
|
|
void DrawRows(bool centered);
|
|
};
|
|
|
|
class UIComboBoxEx2 : public UIComboBoxEx {
|
|
public:
|
|
UIComboBoxEx2(UIWindowContext& windows, UIComboBoxContext& combo);
|
|
~UIComboBoxEx2() override;
|
|
void Resize(int width, int height) override;
|
|
void Slot15(int width, int height) override;
|
|
void Paint() override;
|
|
|
|
/* 00C4 */ int alignment;
|
|
};
|
|
|
|
#if defined(_WIN32) && !defined(_WIN64)
|
|
static_assert(sizeof(UIComboBoxEx) == 208);
|
|
static_assert(sizeof(UIComboBoxEx2) == 212);
|
|
#endif
|
|
|
|
#endif
|