mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-11 22:54:34 +00:00
gui image asset refactor
bitmap button popup ctrl ex
This commit is contained in:
parent
f519cff6ff
commit
4d893f51cf
6 changed files with 95 additions and 75 deletions
|
|
@ -860,11 +860,7 @@ void GuiInspectorTypeImageAssetPtr::updatePreviewImage()
|
|||
{
|
||||
if (AssetDatabase.isDeclaredAsset(previewImage))
|
||||
{
|
||||
ImageAsset* imgAsset = AssetDatabase.acquireAsset<ImageAsset>(previewImage);
|
||||
if (imgAsset && imgAsset->isAssetValid())
|
||||
{
|
||||
mPreviewImage->_setBitmap(imgAsset->getAssetId());
|
||||
}
|
||||
mPreviewImage->_setBitmap(previewImage);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -892,11 +888,7 @@ void GuiInspectorTypeImageAssetPtr::setPreviewImage(StringTableEntry assetId)
|
|||
{
|
||||
if (AssetDatabase.isDeclaredAsset(assetId))
|
||||
{
|
||||
ImageAsset* imgAsset = AssetDatabase.acquireAsset<ImageAsset>(assetId);
|
||||
if (imgAsset && imgAsset->isAssetValid())
|
||||
{
|
||||
mPreviewImage->_setBitmap(imgAsset->getAssetId());
|
||||
}
|
||||
mPreviewImage->_setBitmap(assetId);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -652,4 +652,39 @@ public:
|
|||
#define INITPERSISTFIELD_IMAGEASSET_REFACTOR(name, consoleClass, docs) \
|
||||
addProtectedField(assetText(name, Asset), TypeImageAssetPtrRefactor, Offset(m##name##Asset, consoleClass), _set##name##Data, &defaultProtectedGetFn, assetDoc(name, asset docs.));
|
||||
|
||||
|
||||
#define DECLARE_IMAGEASSET_ARRAY_REFACTOR(className, name, profile, max) \
|
||||
private: \
|
||||
AssetPtr<ImageAsset> m##name##Asset[max]; \
|
||||
public: \
|
||||
void _set##name(StringTableEntry _in, const U32& index){ \
|
||||
if(m##name##Asset[index].getAssetId() == _in) \
|
||||
return; \
|
||||
\
|
||||
if(!AssetDatabase.isDeclaredAsset(_in)) \
|
||||
{ \
|
||||
StringTableEntry imageAssetId = ImageAsset::smNoImageAssetFallback; \
|
||||
AssetQuery query; \
|
||||
S32 foundAssetcount = AssetDatabase.findAssetLooseFile(&query, _in); \
|
||||
if (foundAssetcount != 0) \
|
||||
{ \
|
||||
imageAssetId = query.mAssetList[0]; \
|
||||
} \
|
||||
m##name##Asset[index] = imageAssetId; \
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
m##name##Asset[index] = _in; \
|
||||
} \
|
||||
}; \
|
||||
\
|
||||
inline StringTableEntry _get##name(const U32& index) const { return m##name##Asset[index].getAssetId(); } \
|
||||
GFXTexHandle get##name(const U32& index) { return m##name##Asset[index].notNull() ? m##name##Asset[index]->getTexture(&profile) : NULL; } \
|
||||
AssetPtr<ImageAsset> get##name##Asset(const U32& index) { return m##name##Asset[index]; } \
|
||||
static bool _set##name##Data(void* obj, const char* index, const char* data) { static_cast<className*>(obj)->_set##name(_getStringTable()->insert(data), dAtoi(index)); return false;}
|
||||
|
||||
#define INITPERSISTFIELD_IMAGEASSET_ARRAY_REFACTOR(name, arraySize, consoleClass, docs) \
|
||||
addProtectedField(assetText(name, Asset), TypeImageAssetPtrRefactor, Offset(m##name##Asset, consoleClass), _set##name##Data, &defaultProtectedGetFn, arraySize, assetDoc(name, asset docs.));
|
||||
|
||||
|
||||
#pragma endregion
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue