OROCHI
 
Loading...
Searching...
No Matches
GxUnitHudScrollView.h
Go to the documentation of this file.
1//===========================================================================
9//===========================================================================
10#pragma once
11
12GX_HUD_NAMESPACE_BEGIN()
13
17
18//===========================================================================
20//===========================================================================
22{
23 //-------------------------------------------------------------
25 //-------------------------------------------------------------
27public:
28 // RTTI定義
29 GX_RTTI_CLASS_NAME(GxUnitHudScrollView, GxUnit2DBase, "HUDスクロールビュー")
30 // ClassBaseReference継承クラス用禁止宣言
32
33
34 static const GxSize DEFAULT_VIEWPORT_SIZE;
36 static const GxSize DEFAULT_CONTENT_SIZE;
38 static constexpr s32 DEFAILT_SCROLL_BAR_WIDTH = 16;
40 static constexpr u32 UNIT_CRATE_COUNT_MAX = 6;
41
43 enum class LAYOUT_AXIS
44 {
45 HORIZONTAL = 0,
46 VERTICAL,
47 MAX
48 };
49#if GX_DEVELOP
51 GX_ENUM_TABLE_MAX(LAYOUT_AXIS)
52#endif // GX_DEVELOP
53
55 //-------------------------------------------------------------
57 //-------------------------------------------------------------
59public:
61 GxUnitHudScrollView( void );
62
64 b32 setup( void ) override;
65
67 //-------------------------------------------------------------
69 //-------------------------------------------------------------
71protected:
73 void asyncUpdate( void ) override;
75 void forceAsyncUpdate( void ) override;
76
77public:
79 b32 createScrollbarHorizontal( void );
81 b32 createScrollbarVertical( void );
82
84 void forceAdjustScrollbarHundle( const GxSize& size, const GxVector2& position );
85
86private:
88 void killScrollbar( void );
89
91 //-------------------------------------------------------------
93 //-------------------------------------------------------------
95public:
97 constexpr GxUnitHudScrollViewport* getUnitViewport( void ) const { return _pUnitViewport; }
98
99#if defined(_WINDOWS)
101 constexpr f32 getWheelScrollSensitivity( void ) const { return _wheelScrollSensitivity; }
103 constexpr void setWheelScrollSensitivity( f32 sensitivity ) { _wheelScrollSensitivity = sensitivity; }
104#endif // _WINDOWS
105
107 constexpr f32 getScrollProcessTime( void ) const { return _scrollProcessTime; }
109 constexpr void setScrollProcessTime( f32 time ) { _scrollProcessTime = time; }
110
112 GX_FORCE_INLINE b32 isEnableScrollbarHorizontal( void ) const { return _isEnableScrollbarHorizontal; }
114 GX_FORCE_INLINE void setEnableScrollbarHorizontal( b32 enable ) { _isEnableScrollbarHorizontal = enable; }
116 GX_FORCE_INLINE b32 isEnableScrollbarVertical( void ) const { return _isEnableScrollbarVertical; }
118 GX_FORCE_INLINE void setEnableScrollbarVertical( b32 enable ) { _isEnableScrollbarVertical = enable; }
119
121 const GxSize& getSizeScrollbarHorizontal( void ) const;
123 const GxSize& getSizeScrollbarVertical( void ) const;
124
126 b32 isExistUnitContent( void ) const;
128 GxUnitHudScrollContent* getUnitContent( void ) const;
129
131 //-------------------------------------------------------------
133 //-------------------------------------------------------------
135protected:
139
140#if defined(_WINDOWS)
141 f32 _wheelScrollSensitivity;
142#endif // _WINDOWS
144
147
149};
150
151GX_HUD_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
@ MAX
定義数
2D基礎ユニットクラス
Definition GxUnit2DBase.h:24
HUDスクロールコンテンツユニットクラス
Definition GxUnitHudScrollContent.h:18
HUDスクロールビューユニットクラス
Definition GxUnitHudScrollView.h:22
GX_FORCE_INLINE void setEnableScrollbarVertical(b32 enable)
垂直スクロールバー有効を設定
Definition GxUnitHudScrollView.h:118
GX_FORCE_INLINE b32 isEnableScrollbarHorizontal(void) const
水平スクロールバー有効を判定
Definition GxUnitHudScrollView.h:112
f32 _scrollProcessTime
スクロール処理時間
Definition GxUnitHudScrollView.h:143
GxUnitHudScrollbar * _pUnitScrollbarVertical
垂直スクロールバーユニット
Definition GxUnitHudScrollView.h:138
LAYOUT_AXIS
レイアウト軸
Definition GxUnitHudScrollView.h:44
constexpr f32 getScrollProcessTime(void) const
スクロール処理時間を取得
Definition GxUnitHudScrollView.h:107
GxUnitHudScrollViewport * _pUnitViewport
ビューポートユニット
Definition GxUnitHudScrollView.h:136
constexpr void setScrollProcessTime(f32 time)
スクロール処理時間を設定
Definition GxUnitHudScrollView.h:109
GxUnitHudScrollbar * _pUnitScrollbarHorizontal
水平スクロールバーユニット
Definition GxUnitHudScrollView.h:137
GX_FORCE_INLINE b32 isEnableScrollbarVertical(void) const
垂直スクロールバー有効を判定
Definition GxUnitHudScrollView.h:116
b32 _isEnableScrollbarHorizontal
水平スクロールバー有効判定
Definition GxUnitHudScrollView.h:145
GX_FORCE_INLINE void setEnableScrollbarHorizontal(b32 enable)
水平スクロールバー有効を設定
Definition GxUnitHudScrollView.h:114
constexpr GxUnitHudScrollViewport * getUnitViewport(void) const
ビューポートユニットを取得
Definition GxUnitHudScrollView.h:97
b32 _isEnableScrollbarVertical
垂直スクロールバー有効判定
Definition GxUnitHudScrollView.h:146
HUDスクロールビューポートユニットクラス
Definition GxUnitHudScrollViewport.h:18
HUDスクロールバーユニットクラス
Definition GxUnitHudScrollbar.h:21
サイズ
Definition GxStruct.h:730
2次元ベクトル
Definition GxVector.h:34
32bitブーリアン
Definition GxDefine.h:173