OROCHI
 
Loading...
Searching...
No Matches
GxGuiPropertyComboBox.h
Go to the documentation of this file.
1//===========================================================================
9//===========================================================================
10#pragma once
11
12#if GX_DEVELOP
13
14GX_CORE_NAMESPACE_BEGIN()
15
16class GxGuiMenu;
17class GxGuiButton;
18
19//===========================================================================
21//===========================================================================
22class GxGuiPropertyComboBox : public GxGuiProperty
23{
24 //-----------------------------------------------------------
26 //-----------------------------------------------------------
28public:
29 GX_RTTI_ABSTRACT_CLASS(GxGuiPropertyComboBox, GxGuiProperty)
30 // ClassBaseReference継承クラス用禁止宣言
31 GX_PROHIBIT_CLASS_BASE_REFERENCE(GxGuiPropertyComboBox)
32
33
34 //-----------------------------------------------------------
36 //-----------------------------------------------------------
38public:
40 GxGuiPropertyComboBox(void);
41
43 GxGuiPropertyComboBox(const GxProperty& property, GxTypedObject* pOwner, const GxRtti& rtti, u32 index = 0, NAME_TYPE nameType = NAME_TYPE::LEFT);
44
46 b32 initialize( void ) override;
48 void cleanup(void) override;
49
51 //-----------------------------------------------------------
53 //-----------------------------------------------------------
55public:
57 void update( void ) override;
58
59protected:
61 void onDestroy( void ) override;
63 void onDraw( void ) override;
65 void onRemoveGui( GxGuiBase* pGui ) override;
67 void onSize( const GxSize& size ) override;
69 void onKeyDown( GxKeyboard::KEY key ) override;
71 void onMouseDown( const GxPoint2& position, u32 button ) override;
72
73protected:
75 void openComboBoxMenu(void);
77 constexpr void closeComboBoxMenu(void) {};
78
80 virtual GX_CSTR getCurrentComboBoxPropertyVirtualName(void) = 0;
81
83 //-----------------------------------------------------------
85 //-----------------------------------------------------------
87protected:
88 GxGuiButton* _pGuiButton;
89 GxPropertyTable _propertyTable;
90 GxGuiMenu* _pGuiMenu;
91 GxArrayClassBase _listData;
92
94};
95
96GX_CORE_NAMESPACE_END()
97
98#endif // GX_DEVELOP
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
void GxTypedObject
その他
Definition GxDefine.h:213
配列クラス
Definition GxArrayClassBase.h:18
プロパティクラス
Definition GxProperty.h:48
プロパティテーブルクラス
Definition GxProperty.h:1641
実行時型情報クラス
Definition GxRtti.h:154
座標
Definition GxStruct.h:867
サイズ
Definition GxStruct.h:730
32bitブーリアン
Definition GxDefine.h:173