aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmldesigner/components/materialbrowser/materialbrowsermodel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmldesigner/components/materialbrowser/materialbrowsermodel.h')
-rw-r--r--src/plugins/qmldesigner/components/materialbrowser/materialbrowsermodel.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/src/plugins/qmldesigner/components/materialbrowser/materialbrowsermodel.h b/src/plugins/qmldesigner/components/materialbrowser/materialbrowsermodel.h
index 64b58c9be9..8635c1f1b0 100644
--- a/src/plugins/qmldesigner/components/materialbrowser/materialbrowsermodel.h
+++ b/src/plugins/qmldesigner/components/materialbrowser/materialbrowsermodel.h
@@ -70,6 +70,15 @@ public:
Q_INVOKABLE void addNewMaterial();
Q_INVOKABLE void applyToSelected(qint64 internalId, bool add = false);
Q_INVOKABLE void openMaterialEditor();
+ Q_INVOKABLE bool isCopiedMaterialValid() const;
+
+ struct PropertyCopyData
+ {
+ PropertyName name;
+ QVariant value;
+ bool isBinding = false;
+ bool isValid = false;
+ };
signals:
void isEmptyChanged();
@@ -83,9 +92,10 @@ signals:
void applyToSelectedTriggered(const QmlDesigner::ModelNode &material, bool add = false);
void addNewMaterialTriggered();
void duplicateMaterialTriggered(const QmlDesigner::ModelNode &material);
- void pasteMaterialPropertiesTriggered(const QmlDesigner::ModelNode &material,
- const QList<QmlDesigner::AbstractProperty> &props,
- bool all);
+ void pasteMaterialPropertiesTriggered(
+ const QmlDesigner::ModelNode &material,
+ const QList<QmlDesigner::MaterialBrowserModel::PropertyCopyData> &props,
+ bool all);
private:
bool isMaterialVisible(int idx) const;
@@ -96,7 +106,8 @@ private:
QStringList m_defaultMaterialSections;
QStringList m_principledMaterialSections;
QStringList m_customMaterialSections;
- QList<AbstractProperty> m_copiedMaterialProps;
+ ModelNode m_copiedMaterial;
+ QList<PropertyCopyData> m_copiedMaterialProps;
QHash<qint32, int> m_materialIndexHash; // internalId -> index
QJsonObject m_propertyGroupsObj;