diff options
author | Tim Jenssen <tim.jenssen@qt.io> | 2020-07-01 09:38:13 +0200 |
---|---|---|
committer | Tim Jenssen <tim.jenssen@qt.io> | 2020-07-01 09:40:01 +0200 |
commit | 0c6231d7ecc55ae988ab6a1b23fe1925027af113 (patch) | |
tree | f6c598ce11ef9273c2b94065c9defbacdfc88318 /src/plugins/qmldesigner/designercore | |
parent | 6d9ccbdf69d8e57269a945cf19a54a00ad540bfb (diff) | |
parent | a8819d0efde54d6196b292e874a1441fd2c25c27 (diff) |
Merge remote-tracking branch 'origin/qds-1.59' into 4.13
Conflicts:
src/tools/clangpchmanagerbackend/source/pchtaskqueue.h
Change-Id: Ibe8ac2fa0eafcbcc86ac445f0be035839e06ff40
Diffstat (limited to 'src/plugins/qmldesigner/designercore')
6 files changed, 57 insertions, 8 deletions
diff --git a/src/plugins/qmldesigner/designercore/exceptions/exception.cpp b/src/plugins/qmldesigner/designercore/exceptions/exception.cpp index 486e5bec2b..6610638748 100644 --- a/src/plugins/qmldesigner/designercore/exceptions/exception.cpp +++ b/src/plugins/qmldesigner/designercore/exceptions/exception.cpp @@ -34,8 +34,8 @@ #include <QCoreApplication> -#include <coreplugin/messagebox.h> #ifndef QMLDESIGNER_TEST +#include <coreplugin/messagebox.h> #include <qmldesignerplugin.h> #endif @@ -160,8 +160,12 @@ QString Exception::description() const */ void Exception::showException(const QString &title) const { - QString composedTitle = title.isEmpty() ? QCoreApplication::translate("QmlDesigner", "Error") : title; + Q_UNUSED(title) +#ifndef QMLDESIGNER_TEST + QString composedTitle = title.isEmpty() ? QCoreApplication::translate("QmlDesigner", "Error") + : title; Core::AsynchronousMessageBox::warning(composedTitle, description()); +#endif } /*! diff --git a/src/plugins/qmldesigner/designercore/exceptions/exceptions.pri b/src/plugins/qmldesigner/designercore/exceptions/exceptions.pri index 848d7808fc..6fbafdee3c 100644 --- a/src/plugins/qmldesigner/designercore/exceptions/exceptions.pri +++ b/src/plugins/qmldesigner/designercore/exceptions/exceptions.pri @@ -1,2 +1,14 @@ -SOURCES += $$PWD/exception.cpp -SOURCES += $$PWD/invalidnodeinstanceexception.cpp +SOURCES += $$PWD/exception.cpp \ + $$PWD/invalidargumentexception.cpp \ + $$PWD/invalididexception.cpp \ + $$PWD/invalidmetainfoexception.cpp \ + $$PWD/invalidmodelnodeexception.cpp \ + $$PWD/invalidmodelstateexception.cpp \ + $$PWD/invalidpropertyexception.cpp \ + $$PWD/invalidqmlsourceexception.cpp \ + $$PWD/invalidreparentingexception.cpp \ + $$PWD/invalidslideindexexception.cpp \ + $$PWD/notimplementedexception.cpp \ + $$PWD/removebasestateexception.cpp \ + $$PWD/rewritingexception.cpp + diff --git a/src/plugins/qmldesigner/designercore/include/modelnode.h b/src/plugins/qmldesigner/designercore/include/modelnode.h index 6f3d5eb6df..3197e746ab 100644 --- a/src/plugins/qmldesigner/designercore/include/modelnode.h +++ b/src/plugins/qmldesigner/designercore/include/modelnode.h @@ -91,9 +91,12 @@ public: ModelNode(const Internal::InternalNodePointer &internalNode, Model *model, const AbstractView *view); ModelNode(const ModelNode &modelNode, AbstractView *view); ModelNode(const ModelNode &other); + ModelNode(ModelNode &&other); ~ModelNode(); - ModelNode& operator=(const ModelNode &other); + ModelNode &operator=(const ModelNode &other); + ModelNode &operator=(ModelNode &&other); + TypeName type() const; QString simplifiedTypeName() const; QString displayName() const; @@ -226,6 +229,15 @@ public: bool isSubclassOf(const TypeName &typeName, int majorVersion = -1, int minorVersion = -1) const; QIcon typeIcon() const; + friend void swap(ModelNode &first, ModelNode &second) + { + using std::swap; + + swap(first.m_internalNode, second.m_internalNode); + swap(first.m_model, second.m_model); + swap(first.m_view, second.m_view); + } + private: // functions Internal::InternalNodePointer internalNode() const; diff --git a/src/plugins/qmldesigner/designercore/include/qmldesignercorelib_global.h b/src/plugins/qmldesigner/designercore/include/qmldesignercorelib_global.h index 0872c547c8..552095a8d6 100644 --- a/src/plugins/qmldesigner/designercore/include/qmldesignercorelib_global.h +++ b/src/plugins/qmldesigner/designercore/include/qmldesignercorelib_global.h @@ -31,10 +31,13 @@ // Unnecessary since core isn't a dll any more. #if defined(DESIGNER_CORE_LIBRARY) -# define QMLDESIGNERCORE_EXPORT Q_DECL_EXPORT +#define QMLDESIGNERCORE_EXPORT Q_DECL_EXPORT +#elif defined(DESIGNER_STATIC_CORE_LIBRARY) +#define QMLDESIGNERCORE_EXPORT #else -# define QMLDESIGNERCORE_EXPORT Q_DECL_IMPORT +#define QMLDESIGNERCORE_EXPORT Q_DECL_IMPORT #endif + namespace QmlDesigner { using PropertyName = QByteArray; using PropertyNameList = QList<PropertyName>; diff --git a/src/plugins/qmldesigner/designercore/model/abstractview.cpp b/src/plugins/qmldesigner/designercore/model/abstractview.cpp index 03ac27a5b0..3be64be127 100644 --- a/src/plugins/qmldesigner/designercore/model/abstractview.cpp +++ b/src/plugins/qmldesigner/designercore/model/abstractview.cpp @@ -42,6 +42,7 @@ #include <utils/algorithm.h> #include <QRegExp> +#include <QWidget> #include <QtGui/qimage.h> namespace QmlDesigner { diff --git a/src/plugins/qmldesigner/designercore/model/modelnode.cpp b/src/plugins/qmldesigner/designercore/model/modelnode.cpp index b4c21564c7..eb2d285997 100644 --- a/src/plugins/qmldesigner/designercore/model/modelnode.cpp +++ b/src/plugins/qmldesigner/designercore/model/modelnode.cpp @@ -93,7 +93,25 @@ ModelNode::ModelNode(const ModelNode &modelNode, AbstractView *view) m_model(modelNode.model()), m_view(view) { +} + +ModelNode::ModelNode(ModelNode &&other) + : m_internalNode(std::move(other.m_internalNode)) + , m_model(std::move(other.m_model)) + , m_view(std::move(other.m_view)) +{ + other.m_model = {}; + other.m_view = {}; +} +ModelNode &ModelNode::operator=(ModelNode &&other) +{ + ModelNode newNode; + + swap(other, newNode); + swap(*this, newNode); + + return *this; } /*! \brief contructs a invalid model node @@ -103,7 +121,6 @@ ModelNode::ModelNode(const ModelNode &modelNode, AbstractView *view) ModelNode::ModelNode(): m_internalNode(new InternalNode) { - } ModelNode::ModelNode(const ModelNode &other) = default; |