OROCHI
 
Loading...
Searching...
No Matches
GxGuiFormTexture.h
Go to the documentation of this file.
1//===========================================================================
10//===========================================================================
11#pragma once
12
13#if GX_DEVELOP
14
15GX_CORE_NAMESPACE_BEGIN()
16
17//===========================================================================
19//===========================================================================
20class GxGuiFormTexture : public GxGuiForm
21{
22 //-----------------------------------------------------------
24 //-----------------------------------------------------------
26public:
27 GX_RTTI_CLASS(GxGuiFormTexture, GxGuiForm)
28 // ClassBaseReference継承クラス用禁止宣言
29 GX_PROHIBIT_CLASS_BASE_REFERENCE(GxGuiFormTexture)
30
31
32 //-----------------------------------------------------------
34 //-----------------------------------------------------------
36public:
38 GxGuiFormTexture(void);
40 void cleanup(void) override;
41
43 //-----------------------------------------------------------
45 //-----------------------------------------------------------
47public:
49 void update( void ) override;
50
52 void onDraw( void ) override;
53
54protected:
56 void onDoubleClick(const GxPoint2& position, u32 button) override;
57
59 void onMouseWheel(const GxPoint2& position, s32 rotate) override;
60
62 void onMouseMove(const GxPoint2& position) override;
63
65 void onMouseDown(const GxPoint2& position, u32 button) override;
66
68 void onMouseHover(const GxPoint2& position) override;
69private:
71 void eventInitSize(void);
72
74 //-----------------------------------------------------------
76 //-----------------------------------------------------------
78public:
80 constexpr GxRenderTexture* getRenderTexture(void) const { return _pRenderTexture; }
82 virtual void setRenderTexture( GxRenderTexture* pRenderTexture );
83
85 virtual void setZoom( const GxVector2& zoom );
86
89 GX_FORCE_INLINE const GxVector2& getZoom( void ) const { return _zoom; }
90
92 GX_FORCE_INLINE void setControl(b32 enable) { _isControl = enable; }
93
95 //-----------------------------------------------------------
97 //-----------------------------------------------------------
99protected:
100 GxRenderTexture* _pRenderTexture;
101
102 GxVector2 _zoom;
103
104 GxPoint2 _mouseDownPosition;
105 b32 _controlOffset;
106 b32 _isControl;
107
109};
110
111GX_CORE_NAMESPACE_END()
112
113#endif // GX_DEVELOP
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
テクスチャクラス
Definition GxRenderTexture.h:19
座標
Definition GxStruct.h:867
2次元ベクトル
Definition GxVector.h:34
32bitブーリアン
Definition GxDefine.h:173