OROCHI
 
Loading...
Searching...
No Matches
GxGuiPropertyRect.h
Go to the documentation of this file.
1//===========================================================================
10//===========================================================================
11#pragma once
12
13#if GX_DEVELOP
14
15GX_CORE_NAMESPACE_BEGIN()
16
17class GxGuiColorEditButton;
18//===========================================================================
20//===========================================================================
21class GxGuiPropertyRect : public GxGuiPropertyClass
22{
23 //-----------------------------------------------------------
25 //-----------------------------------------------------------
27public:
28 GX_RTTI_CLASS(GxGuiPropertyRect, GxGuiPropertyClass)
29 // ClassBaseReference継承クラス用禁止宣言
30 GX_PROHIBIT_CLASS_BASE_REFERENCE(GxGuiPropertyRect)
31
32
33 enum class CONTROL
34 {
35 NONE = 0,
36 LEFT,
37 TOP,
38 RIGHT,
39 BOTTOM,
40 ALL
41 };
42
44 //-----------------------------------------------------------
46 //-----------------------------------------------------------
48public:
50 GxGuiPropertyRect(void);
52 GxGuiPropertyRect(const GxProperty& property, GxTypedObject* pOwner, u32 index = 0 );
53
55 //-----------------------------------------------------------
57 //-----------------------------------------------------------
59public:
61 b32 initialize( void ) override;
62
64 void screenRender( void ) override;
65
67 void update( void ) override;
68
69protected:
70 // スクリーン座標取得
71 void callBackFunctionGetScreenRectDefault(void* pSource, void* pArgument);
72
73 // スクリーンから値設定
74 void callBackFunctionSetScreenRectDefault(void* pSource, void* pArgument);
75
76 // スクリーン矩形から値設定
77 void setScreenRect(const GxRect& screenRect);
78
79 // スクリーン矩形取得
80 GxRect getScreenRect(void);
81
82 // 面表示イベント
83 GX_FORCE_INLINE void eventSolidDisplayOn(void) { _isSolidDisplay = true; }
84
85 // 面非表示イベント
86 GX_FORCE_INLINE void eventSolidDisplayOff(void) { _isSolidDisplay = false; }
87
88 // 枠表示イベント
89 GX_FORCE_INLINE void eventFrameDisplayOn(void) { _isFrameDisplay = true; }
90
91 // 枠非表示イベント
92 GX_FORCE_INLINE void eventFrameDisplayOff(void) { _isFrameDisplay = false; }
93
95 //-----------------------------------------------------------
97 //-----------------------------------------------------------
99public:
101 GX_FORCE_INLINE void setCallBackGetScreenRect( const GxCallback::GxHandlerBase& handle ){ _handleGetScreenRect = handle; }
103 GX_FORCE_INLINE void setCallBackSetScreenRect( const GxCallback::GxHandlerBase& handle ){ _handleSetScreenRect = handle; }
104
106 //-----------------------------------------------------------
108 //-----------------------------------------------------------
110protected:
111 CONTROL _controlMode;
112 GxGuiBase* _pControlGui;
113
114 b32 _isSolidDisplay;
115 b32 _isFrameDisplay;
116 GxGuiColorEditButton* _pGuiColorEditButton;
117
118 GxCallback::GxHandlerBase _handleGetScreenRect;
119 GxCallback::GxHandlerBase _handleSetScreenRect;
120
122};
123
124GX_CORE_NAMESPACE_END()
125
126#endif // GX_DEVELOP
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
void GxTypedObject
その他
Definition GxDefine.h:213
@ NONE
何もしない
ハンドラ基本クラス
Definition GxCallback.h:27
プロパティクラス
Definition GxProperty.h:48
矩形
Definition GxStruct.h:951
32bitブーリアン
Definition GxDefine.h:173