15GX_CORE_NAMESPACE_BEGIN()
20class GxGuiButtonHandle : public GxGuiButton
27 GX_RTTI_CLASS(GxGuiButtonHandle, GxGuiButton)
39 GxGuiButtonHandle(
void);
48 b32 initialize(
void )
override;
51 void update(
void )
override;
54 void cleanup(
void )
override;
58 void onMouseDown(
const GxPoint2& position, u32 button)
override;
61 GX_FORCE_INLINE
void eventHandleOn(
void) { setOnHandle(); }
70 constexpr void setPosition(
GxVector3* pPosition ){ _pPosition = pPosition; }
73 constexpr void setQuaternion(
GxQuaternion* pQuaternion){ _pQuaternion = pQuaternion; }
76 constexpr void setScale(
GxVector3* pScale ){ _pScale = pScale; }
79 constexpr void setParentMatrix(
const GxMatrix44* pMatrix ){ _pParentMatrix44 = pMatrix; }
82 constexpr void setParentMatrix(
const GxMatrixAffine* pMatrix ){ _pParentMatrixAffine = pMatrix; }
86 constexpr GxHandle* getHandle(
void )
const {
return _pHandle; }
89 b32 isControlHandle(
void )
const;
92 void setOnHandle(
void );
95 GX_FORCE_INLINE
void setUseControl(
b32 useControl ){ _useControl = useControl; }
98 GX_FORCE_INLINE
void set2D(
void ) { _is2D =
true; }
100 GX_FORCE_INLINE
void setDisableHandleTypeTranslate(
void) { _isEnableHandleTypeTranslate =
false; }
102 GX_FORCE_INLINE
void setDisableHandleTypeRotate(
void ) { _isEnableHandleTypeRotate =
false; }
104 GX_FORCE_INLINE
void setDisableHandleTypeScale(
void ) { _isEnableHandleTypeScale =
false; }
113 GxHandle::HANDLE_RESULT _handleResult;
127 b32 _isEnableHandleTypeTranslate;
128 b32 _isEnableHandleTypeRotate;
129 b32 _isEnableHandleTypeScale;
134GX_CORE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
4×4行列(行優先)
Definition GxMatrix.h:607
アフィン変換行列(行優先)
Definition GxMatrix.h:330
座標
Definition GxStruct.h:867
クォータニオン
Definition GxQuaternion.h:19
3次元ベクトル
Definition GxVector.h:245
32bitブーリアン
Definition GxDefine.h:173