12GX_CORE_NAMESPACE_BEGIN()
13class GxGuiPropertyComboBoxEnum;
14class GxGuiPropertyComboBoxRtti;
35 GX_ENUM_TABLE_MAX(RTTI_TYPE)
37 static const GxRtti* RTTI_TABLE[
static_cast<u32
>(RTTI_TYPE::MAX)];
40 static const GxRtti* MOD_RTTI_TABLE[static_cast<u32>(RTTI_TYPE::MAX)];
78 GX_FORCE_INLINE
void setName(GX_CSTR name) { _name = name; }
82 GX_FORCE_INLINE
void setArgumentName(u32 index, GX_CSTR name) { _argumentNames[index] = name; }
89 constexpr GxString& getHelp(
void) {
return _help; }
91 GX_FORCE_INLINE
void setHelp(GX_CSTR help) { _help = help; }
93 constexpr GxString& getArgumentHelp(u32 index) {
return _argumentHelps[index]; }
95 GX_FORCE_INLINE
void setArgumentHelp(u32 index, GX_CSTR help) { _argumentHelps[index] = help; }
157 GX_FORCE_INLINE
void setName(GX_CSTR name) { _name = name; }
171 GX_FORCE_INLINE
void setUsing(
b32 isUsing) { _isUsing = isUsing; }
197 void cleanup(
void )
override;
199 void initialize(
void);
204 void initializeStaticData(
void);
207 void initializeEventBlocks(
void);
212 void initializeDynamicData(void);
214 void terminateDynamicData(
void);
216 void replaceData(
void);
226 void updateSize(
void);
233 GX_FORCE_INLINE
b32 save(
GxStream& out) {
return saveBinary(out, GxResScript::GX_RTTI); }
240 void getToolRtti(
GxArray& arrayTool )
const override;
243 static GxGuiBase* createGui(GxProperty& property, GxTypedObject* pOwner, const GxRtti& rtti, u32 index);
245 void removeFunction(u32 index);
247 void removeVariable(u32 index);
249 void addFunction(GxDynamicFunction* pDynamicFunction);
251 void addVariable(GxDynamicProperty* pDynamicProperty);
254 void getPropertyRttiType(
void*
const pValue);
256 void setPropertyRttiType(
const void*
const pValue);
258 void setPropertyComboBoxRtti(
const void*
const pValue);
260 void getPropertyComboBoxRtti(
void*
const pValue);
270 GxScript* getScript(GX_CSTR name)
const;
273 constexpr GxScript* getScript(u32 index)
const {
return static_cast<GxScript*
>(_scripts[index]); }
275 GX_FORCE_INLINE s32 getScriptIndex(
GxScript* pScript)
const {
return _scripts.findIndex(pScript); }
277 constexpr u32 getScriptCount(
void)
const {
return _scripts.getCount(); }
281 void removeScript(u32 index);
284 GxFunction* getFunction(u32 scriptInex);
298 GxFunction* getDynamicFunction(GX_CSTR name)
const;
330 GxGuiPropertyComboBoxEnum* _pComboBoxRttiType;
331 GxGuiPropertyComboBoxRtti* _pComboBoxRtti;
360 GxResScriptXml(
void ) {}
369 GX_FORCE_INLINE
b32 load(
GxStream& stream, u32 ) {
return GxResBase::loadXml(stream); }
371 GX_FORCE_INLINE
b32 save(
GxStream& stream) {
return GxResBase::saveXml(stream, GxResScriptXml::GX_RTTI,
true); }
377GX_CORE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE_REFERENCE(__CLASS__)
GxClassBaseReference継承の禁止宣言(new以外の生成禁止 + コピー禁止)
Definition GxBase.h:244
void GxTypedObject
その他
Definition GxDefine.h:213
#define GX_RTTI_RESOURCE(__THIS__, __BASE__)
リソースクラス型情報宣言
Definition GxRttiResource.h:102
配列クラス
Definition GxArrayClassBase.h:18
配列クラス
Definition GxArray.h:18
オブジェクト基底クラス
Definition GxBase.h:88
型情報
Definition GxFunction.h:48
関数型情報
Definition GxFunction.h:18
static const u32 ARGUMENT_MAX
引数の最大数
Definition GxFunction.h:234
プロパティクラス
Definition GxProperty.h:48
リソース基底クラス
Definition GxResBase.h:23
動的関数クラス
Definition GxResScript.h:49
constexpr GxFunction * getFunction(void) const
関数型を取得
Definition GxResScript.h:84
constexpr void setFunction(GxFunction *pFunction)
関数型を設定
Definition GxResScript.h:86
GX_FORCE_INLINE void setName(GX_CSTR name)
関数名を設定
Definition GxResScript.h:78
constexpr GxString & getName(void)
関数名を取得
Definition GxResScript.h:76
constexpr GxString & getArgumentName(u32 index)
引数名を取得
Definition GxResScript.h:80
GX_FORCE_INLINE void setArgumentName(u32 index, GX_CSTR name)
引数名を設定
Definition GxResScript.h:82
動的プロパティクラス
Definition GxResScript.h:117
GX_FORCE_INLINE void setUsing(b32 isUsing)
使用中設定
Definition GxResScript.h:171
constexpr GxString & getName(void)
名前を取得
Definition GxResScript.h:155
constexpr u32 getPropertyId(void) const
プロパティIDを取得
Definition GxResScript.h:167
GX_FORCE_INLINE b32 isUsing(void) const
使用中判定
Definition GxResScript.h:169
constexpr GxProperty * getProperty(void) const
プロパティを取得
Definition GxResScript.h:163
GX_FORCE_INLINE void setType(GxFunction::GxType type)
型を設定
Definition GxResScript.h:161
GX_FORCE_INLINE void setName(GX_CSTR name)
名前を設定
Definition GxResScript.h:157
GX_FORCE_INLINE GxFunction::GxType getType(void) const
型を設定
Definition GxResScript.h:159
スクリプトリソース
Definition GxResScript.h:19
constexpr u32 getDynamicPropertyCount(void) const
動的プロパティの数を取得
Definition GxResScript.h:306
constexpr u32 getStaticPropertyCount(void) const
組み込みプロパティの数を取得
Definition GxResScript.h:296
GX_FORCE_INLINE b32 load(GxStream &in, u32)
リソースのロード
Definition GxResScript.h:230
GxArrayClassBase _scripts
スクリプトリスト
Definition GxResScript.h:320
RTTI_TYPE
RTTIの種類定義
Definition GxResScript.h:27
constexpr u32 getStaticFunctionCount(void) const
静的関数の数を取得
Definition GxResScript.h:288
GX_FORCE_INLINE void replaceData(GxScript &script) const
指定スクリプトの関数型とプロパティを置き換える
Definition GxResScript.h:201
constexpr GxDynamicProperty * getDynamicProperty(u32 index) const
動的プロパティを取得
Definition GxResScript.h:304
constexpr u32 getDynamicFunctionCount(void) const
動的関数の数を取得
Definition GxResScript.h:302
constexpr GxProperty * getStaticProperty(u32 index) const
組み込みプロパティを取得
Definition GxResScript.h:294
constexpr GxFunction * getStaticFunction(u32 index) const
静的関数を取得
Definition GxResScript.h:286
constexpr u32 getEventFunctionCount(void) const
イベント関数の数を取得
Definition GxResScript.h:292
constexpr GxDynamicFunction * getDynamicFunction(u32 index) const
動的関数を取得
Definition GxResScript.h:300
constexpr GxFunction * getEventFunction(u32 index) const
イベント関数を取得
Definition GxResScript.h:290
GX_FORCE_INLINE b32 isInitialized(void) const
初期化済み判定
Definition GxResScript.h:308
実行時型情報クラス
Definition GxRtti.h:154
スクリプトクラス
Definition GxScript.h:19
void replaceData(const GxArrayClassBase &staticFunctions, const GxArrayClassBase &eventFunctions, const GxArrayClassBase &dynamicProperties)
関数型とプロパティを置き換える
Definition GxScript.cpp:48
ストリーム基礎クラス
Definition GxStream.h:20
座標
Definition GxStruct.h:867
文字列型クラス
Definition GxString.h:18
32bitブーリアン
Definition GxDefine.h:173