forked from qt-creator/qt-creator
QmlDesigner: Create arbitrary type for effects to identify them in qds
Using arbitrary type name because at this time we don't have effect maker specific type Task-number: QDS-8729 Change-Id: I3f70e241a03e0ce14512af1cafa066ef0a6c90d5 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
#include "qmldesignericons.h"
|
#include "qmldesignericons.h"
|
||||||
#include "qmldesignerplugin.h"
|
#include "qmldesignerplugin.h"
|
||||||
#include "assetslibrarywidget.h"
|
#include "assetslibrarywidget.h"
|
||||||
|
#include "commontypecache.h"
|
||||||
|
|
||||||
#include "nameitemdelegate.h"
|
#include "nameitemdelegate.h"
|
||||||
#include "iconcheckboxitemdelegate.h"
|
#include "iconcheckboxitemdelegate.h"
|
||||||
@@ -273,10 +274,9 @@ void NavigatorView::dragStarted(QMimeData *mimeData)
|
|||||||
auto assetTypeAndData = AssetsLibraryWidget::getAssetTypeAndData(assetsPaths[0]);
|
auto assetTypeAndData = AssetsLibraryWidget::getAssetTypeAndData(assetsPaths[0]);
|
||||||
QString assetType = assetTypeAndData.first;
|
QString assetType = assetTypeAndData.first;
|
||||||
if (assetType == Constants::MIME_TYPE_ASSET_EFFECT) {
|
if (assetType == Constants::MIME_TYPE_ASSET_EFFECT) {
|
||||||
qint32 internalId = mimeData->data(Constants::MIME_TYPE_ASSET_EFFECT).toInt();
|
// We use arbitrary type name because at this time we don't have effect maker
|
||||||
ModelNode effectNode = modelNodeForInternalId(internalId);
|
// specific type
|
||||||
|
m_widget->setDragType(Storage::Info::EffectMaker);
|
||||||
m_widget->setDragType(effectNode.metaInfo().typeName());
|
|
||||||
m_widget->update();
|
m_widget->update();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -2537,12 +2537,9 @@ bool NodeMetaInfo::isColor() const
|
|||||||
|
|
||||||
bool NodeMetaInfo::isEffectMaker() const
|
bool NodeMetaInfo::isEffectMaker() const
|
||||||
{
|
{
|
||||||
if constexpr (useProjectStorage()) {
|
// We use arbitrary type name because at this time we don't have effect maker
|
||||||
using namespace Storage::Info;
|
// specific type
|
||||||
return isBasedOnCommonType<Effect, Item>(m_projectStorage, m_typeId);
|
return typeName() == QString::fromUtf8(Storage::Info::EffectMaker);
|
||||||
} else {
|
|
||||||
return isValid() && m_privateData->properties().contains("layer.effect");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool NodeMetaInfo::isBool() const
|
bool NodeMetaInfo::isBool() const
|
||||||
|
@@ -35,6 +35,7 @@ inline constexpr char DefaultMaterial[] = "DefaultMaterial";
|
|||||||
inline constexpr char Dialog[] = "Dialog";
|
inline constexpr char Dialog[] = "Dialog";
|
||||||
inline constexpr char DoubleType[] = "double";
|
inline constexpr char DoubleType[] = "double";
|
||||||
inline constexpr char Effect[] = "Effect";
|
inline constexpr char Effect[] = "Effect";
|
||||||
|
inline constexpr char EffectMaker[] = "EffectMaker";
|
||||||
inline constexpr char FloatType[] = "float";
|
inline constexpr char FloatType[] = "float";
|
||||||
inline constexpr char FlowActionArea[] = "FlowActionArea";
|
inline constexpr char FlowActionArea[] = "FlowActionArea";
|
||||||
inline constexpr char FlowDecision[] = "FlowDecision";
|
inline constexpr char FlowDecision[] = "FlowDecision";
|
||||||
|
Reference in New Issue
Block a user