15GX_CORE_NAMESPACE_BEGIN()
19class GxGuiSplitterCross;
54class GxToolTextureManager : public GxToolBase
66 class GxGuiFormTexturePanel;
67 class GxGuiFormTextureList;
68 class GxGuiFormUnitList;
72 static const GxRect TEXTURE_RECT;
74 static const u32 TEXTURE_NAME_HEIGHT;
76 static constexpr u32 BAR_WIDTH = 1;
79 static constexpr u32 FORM_WIDTH = 900;
81 static constexpr u32 FORM_HEIGHT = 500;
83 static constexpr u32 FORM_TEXTURE_LIST_MASK_HEIGHT = 84;
85 static constexpr u32 FORM_TEXTURE_LIST_WIDTH = 300;
87 static constexpr u32 FORM_TEXTURE_VIEW_WIDTH = 380;
89 static constexpr u32 FORM_TEXTURE_PARAM1_HEIGHT = 244;
91 static constexpr u32 FORM_TEXTURE_PARAM2_HEIGHT = 374;
100 GxToolTextureManager(
void );
103 b32 initialize(
void )
override;
106 void cleanup(
void)
override;
115 void update(
void )
override;
122 void arrangeTexturePanel(
void);
125 void updateTextureFormSize(
void);
128 void onViewMaxExpand(
void)
override;
131 virtual void onViewMiddleExpand(
void);
134 void onViewMinExpand(
void)
override;
143 constexpr GxToolTextureProperty::GxGuiFormTextureParam* getFormTexture(
void)
const {
return _pFormTexture; }
145 constexpr GxToolTextureManager::GxGuiFormUnitList* getUnitListForm(
void)
const {
return _pUnitListForm; }
155 u32 _textureNonMipSize;
160 GxGuiForm* _pTextureForm;
161 GxGuiFormTextureList* _pCross;
163 b32 _renderGrepAttributeFlag;
164 b32 _renderGrepFormatFlag;
166 u32 _renderAttributeFlag;
168 b32 _renderFormatUNKNOWNFlag;
169 b32 _renderFormatR8G8B8A8Flag;
170 b32 _renderFormatR8G8B8X8Flag;
171 b32 _renderFormatR8Flag;
172 b32 _renderFormatA8Flag;
173#if defined(_PS4) || defined(_PS5)
174 b32 _renderFormatR32_UINTFlag;
176 b32 _renderFormatR32FFlag;
177 b32 _renderFormatR32G32B32A32FFlag;
178 b32 _renderFormatR16G16FFlag;
179 b32 _renderFormatR16G16B16A16FFlag;
180 b32 _renderFormatR11G11B10FFlag;
181 b32 _renderFormatDXT1Flag;
182 b32 _renderFormatDXT3Flag;
183 b32 _renderFormatDXT5Flag;
184 b32 _renderFormatBC6HFlag;
185 b32 _renderFormatBC7Flag;
186 b32 _renderFormatD16Flag;
187 b32 _renderFormatD24S8Flag;
188 b32 _renderFormatR8G8B8A8_SRGBFlag;
189 b32 _renderFormatDXT1_SRGBFlag;
190 b32 _renderFormatDXT3_SRGBFlag;
191 b32 _renderFormatDXT5_SRGBFlag;
192 b32 _renderFormatBC7_SRGBFlag;
194 GxGuiSplitter* _pSplitterMain;
195 GxGuiSplitter* _pSplitterRight;
196 GxToolTextureProperty::GxGuiFormTextureParam* _pFormTexture;
197 GxGuiFormUnitList* _pUnitListForm;
199 b32 _toggleViewMiddleExpand;
207class GxToolTextureManager::GxGuiFormTexturePanel :
public GxGuiForm
215 GX_RTTI_CLASS( GxToolTextureManager::GxGuiFormTexturePanel, GxGuiForm )
226 GxGuiFormTexturePanel(
void );
229 GxGuiFormTexturePanel( GxToolTextureManager* pTool );
247 void onDraw(
void )
override;
250 void onClick(
const GxPoint2& position, u32 button )
override;
260 GxToolTextureManager* _pTool;
268class GxToolTextureManager::GxGuiFormTextureList :
public GxGuiSplitterCross
276 GX_RTTI_CLASS(GxToolTextureManager::GxGuiFormTextureList, GxGuiSplitterCross)
287 GxGuiFormTextureList(
void);
296 void clearTextureGuiList(
void);
299 void setTextureGui(GxGuiBase* pGui, u32 column, u32 row);
307class GxToolTextureManager::GxGuiFormUnitList :
public GxGuiForm
315 GX_RTTI_CLASS( GxToolTextureManager::GxGuiFormUnitList, GxGuiForm )
326 GxGuiFormUnitList( GxToolTextureManager* pTool );
329 b32 initialize(
void )
override;
332 void cleanup(
void)
override;
336 GxGuiFormUnitList(
void ) : _pListGuiUnit(nullptr), _ppSelectedUnit(nullptr), _pTool(nullptr){}
345 void update(
void )
override;
351 void clearUnitList(
void);
358 void onDraw(
void)
override;
367 constexpr u32 getUnitCount(
void)
const {
return _pListGuiUnit->getCount(); }
370 constexpr GxToolTextureManager* getTool(
void )
const {
return _pTool; }
373 constexpr void setSelectTexture(
GxRenderTexture* texture ) { _pSelectTexture = texture; }
386 GxToolTextureManager* _pTool;
395class GxToolTextureManager::GxGuiUnitBoard :
public GxGuiBase
403 GX_RTTI_CLASS( GxToolTextureManager::GxGuiUnitBoard, GxGuiBase )
414 GxGuiUnitBoard(
void );
423 void drawNamePlate(
const GxPoint2& position,
const GxColor& frameColor,
const GxToolColor& plateColor,
const GxColor& nameColor );
426 GX_FORCE_INLINE
void killUnit(
void) {
if (_pUnit) _pUnit->kill(); _pUnit =
nullptr; }
429 GX_FORCE_INLINE
void setUnitAttribute(
const GxUnitBase::ATTRIBUTE attribute,
const b32 isOn) {
if (_pUnit) _pUnit->setAttribute(attribute, isOn); }
432 GX_FORCE_INLINE
void toggleUnitAttribute(
const GxUnitBase::ATTRIBUTE attribute) {
if (_pUnit) _pUnit->setAttribute(attribute, !_pUnit->isAttribute(attribute)); }
436 GX_FORCE_INLINE
void update(
void)
override
440 if (_pUnit && !_pUnit->isEnable())
447 void onMouseDown(
const GxPoint2& position, u32 button)
override;
450 void onDoubleClick(
const GxPoint2& position, u32 button)
override;
453 void onDraw(
void)
override;
457 void toggleIsSelected(
void);
460 void createToolUnitProperty(
void);
473 constexpr GxUnitBase* getUnit(
void ) {
return _pUnit; }
477 constexpr void setUnitName( GX_CSTR unitName ) { _unitName = unitName; }
494GX_CORE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
配列クラス
Definition GxArrayClassBase.h:18
テクスチャクラス
Definition GxRenderTexture.h:19
ユニット基礎クラス
Definition GxUnitBase.h:45
ATTRIBUTE
属性
Definition GxUnitBase.h:71
@ ATTRIBUTE_SELECTED
選択されているか
Definition GxUnitBase.h:73
座標
Definition GxStruct.h:867
矩形
Definition GxStruct.h:951
文字列型クラス
Definition GxString.h:18
32bitブーリアン
Definition GxDefine.h:173