OROCHI
 
Loading...
Searching...
No Matches
GxGuiPropertyAngle.h
Go to the documentation of this file.
1//===========================================================================
10//===========================================================================
11#pragma once
12
13#if GX_DEVELOP
14
15GX_CORE_NAMESPACE_BEGIN()
16class GxGuiPropertyParameter;
17//===========================================================================
19// 角度などで有効なDegree<>Radian表示切替機能を持った値表示GUI
20//===========================================================================
21class GxGuiPropertyAngle : public GxGuiProperty
22{
23 //-----------------------------------------------------------
25 //-----------------------------------------------------------
27public:
28 GX_RTTI_CLASS(GxGuiPropertyAngle, GxGuiProperty)
29 // ClassBaseReference継承クラス用禁止宣言
30 GX_PROHIBIT_CLASS_BASE_REFERENCE(GxGuiPropertyAngle)
31
32
33 enum class TYPE
34 {
35 RADIAN = 0,
36 DEGREE
37 };
38
40 //-----------------------------------------------------------
42 //-----------------------------------------------------------
44public:
46 GxGuiPropertyAngle(void);
48 GxGuiPropertyAngle(const GxProperty& property, GxTypedObject* pOwner, const GxRtti& rtti, u32 index = 0 );
49
51 //-----------------------------------------------------------
53 //-----------------------------------------------------------
55public:
57 b32 initialize( void ) override;
58
59protected:
61 void onSize(const GxSize& size) override;
62
64 void eventButtonClick(void);
65
67 //-----------------------------------------------------------
69 //-----------------------------------------------------------
71public:
73 void setType( TYPE type );
74
76 constexpr void setBaseType( TYPE type ){ _baseType = type; }
77
79 GxSize getUseRegionSize(void) const override;
80
81protected:
83 void setAngleValue( const void* const pValue );
85 void getAngleValue( void* const pValue );
86
88 //-----------------------------------------------------------
90 //-----------------------------------------------------------
92protected:
93 TYPE _baseType;
94 TYPE _type;
95 GxGuiButton* _pGuiButton;
96 GxGuiPropertyParameter* _pGuiParameter;
97
98 f32 _valueF32;
99 f64 _valueF64;
100
102};
103
104GX_CORE_NAMESPACE_END()
105
106#endif // GX_DEVELOP
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
void GxTypedObject
その他
Definition GxDefine.h:213
プロパティクラス
Definition GxProperty.h:48
実行時型情報クラス
Definition GxRtti.h:154
サイズ
Definition GxStruct.h:730
32bitブーリアン
Definition GxDefine.h:173