15GX_CORE_NAMESPACE_BEGIN()
20class GxGuiPropertySlider : public GxGuiPropertyParameter
27 GX_RTTI_CLASS(GxGuiPropertySlider, GxGuiPropertyParameter)
41 static constexpr u32 MARGIN_LEFT = 8;
43 static constexpr u32 MARGIN_RIGHT = 8;
52 GxGuiPropertySlider(
void);
63 b32 initialize(
void )
override;
66 void update(
void )
override;
69 void onNoClientDraw(
void )
override;
72 GX_FORCE_INLINE
virtual void setPlayButtonOn(
b32 state) {
if (_pGuiButton) { _isPlay = state; _pGuiButton->setOn(state); } }
75 GxSize getUseRegionSize(
void)
const override;
79 GxRect calculateClientRect(
const GxRect& clientRect)
const override;
82 void onSize(
const GxSize& size)
override;
85 void onNoClientMouseDown(
const GxPoint2& position, u32 button)
override;
88 void onKeyDown(GxKeyboard::KEY key)
override;
91 void onKeyPress(GxKeyboard::KEY key)
override;
94 GX_FORCE_INLINE
void eventPlay(
void) { _isPlay =
true; }
97 GX_FORCE_INLINE
void eventPause(
void) { _isPlay =
false; }
100 GxRect getSliderRect(
void);
103 GxRect getSliderHandleRect(
void);
113 constexpr void setSliderWidthRatio( f32 ratio ){ _sliderWidthRatio = ratio; }
117 GX_FORCE_INLINE
b32 isControl(
void )
const override {
return _controlBar || Super::isControl(); }
119 GX_FORCE_INLINE
virtual b32 isValueChanged(
void )
const {
return _valueChanged; }
122 GX_FORCE_INLINE
void setMultiRow(
b32 on ){ _isMultiRow = on; }
126 GX_FORCE_INLINE
b32 isMultiRow(
void )
const {
return _isMultiRow; }
129 GX_FORCE_INLINE
void setLoop(
b32 state ){ _isLoop = state; }
131 GX_FORCE_INLINE
b32 isLoop(
void )
const {
return _isLoop; }
134 constexpr void setPlayTimeMode( PLAY_TIME mode ){ _playTimeMode = mode; }
136 constexpr PLAY_TIME getPlayTimeMode(
void )
const {
return _playTimeMode; }
140 GX_FORCE_INLINE
void setSliderStep(f64 step) { _sliderStep =
GxMath::getAbs(step); }
151 f32 _sliderWidthRatio;
157 PLAY_TIME _playTimeMode;
168class GxGuiPropertySliderColor :
public GxGuiPropertySlider
175 GX_RTTI_CLASS(GxGuiPropertySliderColor, GxGuiPropertySlider)
186 GxGuiPropertySliderColor(
void);
197 void cleanup(
void )
override;
200 b32 initialize(
void )
override;
203 void onNoClientDraw(
void )
override;
212 void setSliderColor( u32 index,
const GxColor& color );
215 void createSliderColor( u32 count );
218 GxColor* getSliderColor( u32 count );
221 void clearSliderColor(
void );
234GX_CORE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
void GxTypedObject
その他
Definition GxDefine.h:213
配列クラス
Definition GxArray.h:18
static GX_FORCE_INLINE T getAbs(const T value)
絶対値
Definition GxMath.h:168
プロパティクラス
Definition GxProperty.h:48
実行時型情報クラス
Definition GxRtti.h:154
座標
Definition GxStruct.h:867
矩形
Definition GxStruct.h:951
サイズ
Definition GxStruct.h:730
32bitブーリアン
Definition GxDefine.h:173