summaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2019-11-13 11:16:55 +0100
committerThomas Hartmann <thomas.hartmann@qt.io>2019-11-28 13:09:51 +0000
commit880ab11e76478f4702edcd1f27d789c44743b130 (patch)
tree90cc2b331733739f15c7d86ddb074f033f56e87f /share
parent93e201f1aba8bdba363678d0b3da93f33d838b30 (diff)
downloadqt-creator-880ab11e76478f4702edcd1f27d789c44743b130.tar.gz
QmlDesigner: Use proxy dialog for 3D edit view
To integrate the 3D edit view in the qml2puppet process, we create a dialog in the Qt Creator process. This dialog acts as a proxy that manages the actual window. For this I introduced a new command that allows showing, hiding, resizing and moving of the 3D edit view. The 3D edit view always follows the proxy dialog. During moving and resizing we hide the window to avoid artefacts. At this point in time the proxy widget is a dialog, but it could also be a dockwidget or any other QWidget in the future. Task-number: QDS-1179 Change-Id: I67ccab49eb2de9ba23098a67b2f9577f6c7fd3ac Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Diffstat (limited to 'share')
-rw-r--r--share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.cpp63
-rw-r--r--share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.h57
-rw-r--r--share/qtcreator/qml/qmlpuppet/commands/commands.pri2
-rw-r--r--share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp9
-rw-r--r--share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.h2
-rw-r--r--share/qtcreator/qml/qmlpuppet/interfaces/commondefines.h6
-rw-r--r--share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.cpp4
-rw-r--r--share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.h2
-rw-r--r--share/qtcreator/qml/qmlpuppet/mockfiles/EditView3D.qml11
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.cpp4
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.h1
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp84
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.h10
13 files changed, 251 insertions, 4 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.cpp b/share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.cpp
new file mode 100644
index 0000000000..ad4832d86b
--- /dev/null
+++ b/share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.cpp
@@ -0,0 +1,63 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 as published by the Free Software
+** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+****************************************************************************/
+
+#include "change3dviewcommand.h"
+
+#include <QDebug>
+
+namespace QmlDesigner {
+
+Change3DViewCommand::Change3DViewCommand() = default;
+
+Change3DViewCommand::Change3DViewCommand(const QVector<InformationContainer> &informationVector)
+ : m_informationVector(informationVector)
+{
+}
+
+QVector<InformationContainer> Change3DViewCommand::informationVector() const
+{
+ return m_informationVector;
+}
+
+QDataStream &operator<<(QDataStream &out, const Change3DViewCommand &command)
+{
+ out << command.informationVector();
+
+ return out;
+}
+
+QDataStream &operator>>(QDataStream &in, Change3DViewCommand &command)
+{
+ in >> command.m_informationVector;
+
+ return in;
+}
+
+QDebug operator <<(QDebug debug, const Change3DViewCommand &command)
+{
+ return debug.nospace() << "Change3DViewCommand(auxiliaryChanges: " << command.m_informationVector << ")";
+}
+
+} // namespace QmlDesigner
diff --git a/share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.h b/share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.h
new file mode 100644
index 0000000000..6b1b062da0
--- /dev/null
+++ b/share/qtcreator/qml/qmlpuppet/commands/change3dviewcommand.h
@@ -0,0 +1,57 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 as published by the Free Software
+** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+****************************************************************************/
+
+#pragma once
+
+#include <QMetaType>
+#include <QVector>
+
+#include "informationcontainer.h"
+
+namespace QmlDesigner {
+
+class Change3DViewCommand
+{
+ friend QDataStream &operator>>(QDataStream &in, Change3DViewCommand &command);
+ friend QDebug operator <<(QDebug debug, const Change3DViewCommand &command);
+
+public:
+ Change3DViewCommand();
+ explicit Change3DViewCommand(const QVector<InformationContainer> &auxiliaryChangeVector);
+
+ QVector<InformationContainer> informationVector() const;
+
+private:
+ QVector<InformationContainer> m_informationVector;
+};
+
+QDataStream &operator<<(QDataStream &out, const Change3DViewCommand &command);
+QDataStream &operator>>(QDataStream &in, Change3DViewCommand &command);
+
+QDebug operator <<(QDebug debug, const Change3DViewCommand &command);
+
+} // namespace QmlDesigner
+
+Q_DECLARE_METATYPE(QmlDesigner::Change3DViewCommand)
diff --git a/share/qtcreator/qml/qmlpuppet/commands/commands.pri b/share/qtcreator/qml/qmlpuppet/commands/commands.pri
index 8bca5ce88a..ffd1ce6dea 100644
--- a/share/qtcreator/qml/qmlpuppet/commands/commands.pri
+++ b/share/qtcreator/qml/qmlpuppet/commands/commands.pri
@@ -28,6 +28,7 @@ HEADERS += $$PWD/removesharedmemorycommand.h
HEADERS += $$PWD/puppetalivecommand.h
HEADERS += $$PWD/changeselectioncommand.h
HEADERS += $$PWD/drop3dlibraryitemcommand.h
+HEADERS += $$PWD/change3dviewcommand.h
SOURCES += $$PWD/synchronizecommand.cpp
SOURCES += $$PWD/debugoutputcommand.cpp
@@ -57,3 +58,4 @@ SOURCES += $$PWD/removesharedmemorycommand.cpp
SOURCES += $$PWD/puppetalivecommand.cpp
SOURCES += $$PWD/changeselectioncommand.cpp
SOURCES += $$PWD/drop3dlibraryitemcommand.cpp
+SOURCES += $$PWD/change3dviewcommand.cpp
diff --git a/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp
index 7d46fcbfc1..93520c2f7d 100644
--- a/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp
+++ b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.cpp
@@ -41,6 +41,7 @@
#include "instancecontainer.h"
#include "createinstancescommand.h"
#include "createscenecommand.h"
+#include "change3dviewcommand.h"
#include "changevaluescommand.h"
#include "changebindingscommand.h"
#include "changeauxiliarycommand.h"
@@ -360,6 +361,11 @@ void NodeInstanceClientProxy::createScene(const CreateSceneCommand &command)
nodeInstanceServer()->createScene(command);
}
+void NodeInstanceClientProxy::change3DView(const Change3DViewCommand &command)
+{
+ nodeInstanceServer()->change3DView(command);
+}
+
void NodeInstanceClientProxy::clearScene(const ClearSceneCommand &command)
{
nodeInstanceServer()->clearScene(command);
@@ -447,6 +453,7 @@ void NodeInstanceClientProxy::changeSelection(const ChangeSelectionCommand &comm
void NodeInstanceClientProxy::dispatchCommand(const QVariant &command)
{
static const int createInstancesCommandType = QMetaType::type("CreateInstancesCommand");
+ static const int change3DViewCommandType = QMetaType::type("Change3DViewCommand");
static const int changeFileUrlCommandType = QMetaType::type("ChangeFileUrlCommand");
static const int createSceneCommandType = QMetaType::type("CreateSceneCommand");
static const int clearSceneCommandType = QMetaType::type("ClearSceneCommand");
@@ -470,6 +477,8 @@ void NodeInstanceClientProxy::dispatchCommand(const QVariant &command)
if (commandType == createInstancesCommandType)
createInstances(command.value<CreateInstancesCommand>());
+ else if (commandType == change3DViewCommandType)
+ change3DView(command.value<Change3DViewCommand>());
else if (commandType == changeFileUrlCommandType)
changeFileUrl(command.value<ChangeFileUrlCommand>());
else if (commandType == createSceneCommandType)
diff --git a/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.h b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.h
index 2b41bf83cb..e9044b63ef 100644
--- a/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.h
+++ b/share/qtcreator/qml/qmlpuppet/instances/nodeinstanceclientproxy.h
@@ -45,6 +45,7 @@ class CreateSceneCommand;
class CreateInstancesCommand;
class ClearSceneCommand;
class ReparentInstancesCommand;
+class Change3DViewCommand;
class ChangeFileUrlCommand;
class ChangeValuesCommand;
class ChangeAuxiliaryCommand;
@@ -95,6 +96,7 @@ protected:
void changeFileUrl(const ChangeFileUrlCommand &command);
void createScene(const CreateSceneCommand &command);
void clearScene(const ClearSceneCommand &command);
+ void change3DView(const Change3DViewCommand &command);
void removeInstances(const RemoveInstancesCommand &command);
void removeProperties(const RemovePropertiesCommand &command);
void changePropertyBindings(const ChangeBindingsCommand &command);
diff --git a/share/qtcreator/qml/qmlpuppet/interfaces/commondefines.h b/share/qtcreator/qml/qmlpuppet/interfaces/commondefines.h
index 51010c9a53..eb1bd41051 100644
--- a/share/qtcreator/qml/qmlpuppet/interfaces/commondefines.h
+++ b/share/qtcreator/qml/qmlpuppet/interfaces/commondefines.h
@@ -52,7 +52,11 @@ enum InformationName
HasBindingForProperty,
ContentTransform,
ContentItemTransform,
- ContentItemBoundingRect
+ ContentItemBoundingRect,
+ MoveView,
+ ShowView,
+ ResizeView,
+ HideView
};
}
diff --git a/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.cpp b/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.cpp
index e58ef1011e..83c8c67ef7 100644
--- a/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.cpp
+++ b/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.cpp
@@ -32,6 +32,7 @@
#include "instancecontainer.h"
#include "createinstancescommand.h"
#include "createscenecommand.h"
+#include "change3dviewcommand.h"
#include "changevaluescommand.h"
#include "changebindingscommand.h"
#include "changeauxiliarycommand.h"
@@ -90,6 +91,9 @@ void NodeInstanceServerInterface::registerCommands()
qRegisterMetaType<CreateSceneCommand>("CreateSceneCommand");
qRegisterMetaTypeStreamOperators<CreateSceneCommand>("CreateSceneCommand");
+ qRegisterMetaType<Change3DViewCommand>("Change3DViewCommand");
+ qRegisterMetaTypeStreamOperators<Change3DViewCommand>("Change3DViewCommand");
+
qRegisterMetaType<ChangeBindingsCommand>("ChangeBindingsCommand");
qRegisterMetaTypeStreamOperators<ChangeBindingsCommand>("ChangeBindingsCommand");
diff --git a/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.h b/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.h
index b452c802be..3dc651ef2f 100644
--- a/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.h
+++ b/share/qtcreator/qml/qmlpuppet/interfaces/nodeinstanceserverinterface.h
@@ -33,6 +33,7 @@ class PropertyAbstractContainer;
class PropertyBindingContainer;
class PropertyValueContainer;
+class Change3DViewCommand;
class ChangeFileUrlCommand;
class ChangeValuesCommand;
class ChangeBindingsCommand;
@@ -66,6 +67,7 @@ public:
virtual void changeFileUrl(const ChangeFileUrlCommand &command) = 0;
virtual void createScene(const CreateSceneCommand &command) = 0;
virtual void clearScene(const ClearSceneCommand &command) = 0;
+ virtual void change3DView(const Change3DViewCommand &command) = 0;
virtual void removeInstances(const RemoveInstancesCommand &command) = 0;
virtual void removeProperties(const RemovePropertiesCommand &command) = 0;
virtual void changePropertyBindings(const ChangeBindingsCommand &command) = 0;
diff --git a/share/qtcreator/qml/qmlpuppet/mockfiles/EditView3D.qml b/share/qtcreator/qml/qmlpuppet/mockfiles/EditView3D.qml
index 2200048fa5..e97aeec19a 100644
--- a/share/qtcreator/qml/qmlpuppet/mockfiles/EditView3D.qml
+++ b/share/qtcreator/qml/qmlpuppet/mockfiles/EditView3D.qml
@@ -24,7 +24,7 @@
****************************************************************************/
import QtQuick 2.12
-import QtQuick.Window 2.0
+import QtQuick.Window 2.12
import QtQuick3D 1.0
import QtQuick.Controls 2.0
import QtGraphicalEffects 1.0
@@ -33,9 +33,14 @@ Window {
id: viewWindow
width: 1024
height: 768
- visible: true
+ visible: false
title: "3D"
- flags: Qt.WindowStaysOnTopHint | Qt.Window | Qt.WindowTitleHint | Qt.WindowCloseButtonHint
+ flags: Qt.Widget | Qt.SplashScreen
+
+ onActiveChanged: {
+ if (viewWindow.active)
+ cameraControl.forceActiveFocus()
+ }
property alias scene: editView.importScene
property alias showEditLight: btnEditViewLight.toggled
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.cpp
index e2e6564c89..d19c0faea4 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.cpp
@@ -332,6 +332,10 @@ void NodeInstanceServer::clearScene(const ClearSceneCommand &/*command*/)
m_fileUrl.clear();
}
+void NodeInstanceServer::change3DView(const Change3DViewCommand &/*command*/)
+{
+}
+
void NodeInstanceServer::changeSelection(const ChangeSelectionCommand & /*command*/)
{
}
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.h b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.h
index 9eab649af7..c369882b41 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.h
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/nodeinstanceserver.h
@@ -101,6 +101,7 @@ public:
void changeIds(const ChangeIdsCommand &command) override;
void createScene(const CreateSceneCommand &command) override;
void clearScene(const ClearSceneCommand &command) override;
+ void change3DView(const Change3DViewCommand &command) override;
void removeInstances(const RemoveInstancesCommand &command) override;
void removeProperties(const RemovePropertiesCommand &command) override;
void reparentInstances(const ReparentInstancesCommand &command) override;
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
index 95360eaa4f..54012f7e4a 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
@@ -40,6 +40,7 @@
#include "changefileurlcommand.h"
#include "clearscenecommand.h"
#include "reparentinstancescommand.h"
+#include "change3dviewcommand.h"
#include "changevaluescommand.h"
#include "changebindingscommand.h"
#include "changeidscommand.h"
@@ -129,6 +130,8 @@ QObject *Qt5InformationNodeInstanceServer::createEditView3D(QQmlEngine *engine)
this, SLOT(handleObjectPropertyCommit(QVariant, QVariant)));
QObject::connect(window, SIGNAL(changeObjectProperty(QVariant, QVariant)),
this, SLOT(handleObjectPropertyChange(QVariant, QVariant)));
+ QObject::connect(window, SIGNAL(activeChanged()),
+ this, SLOT(handleActiveChanged()));
QObject::connect(&m_propertyChangeTimer, &QTimer::timeout,
this, &Qt5InformationNodeInstanceServer::handleObjectPropertyChangeTimeout);
@@ -219,6 +222,65 @@ void Qt5InformationNodeInstanceServer::modifyVariantValue(
}
}
+void Qt5InformationNodeInstanceServer::showEditView(const QPoint &pos, const QSize &size)
+{
+ m_blockViewActivate = false;
+ auto window = qobject_cast<QWindow *>(m_editView3D);
+ if (window) {
+ activateEditView();
+ window->setPosition(pos);
+ window->resize(size);
+ }
+}
+
+void Qt5InformationNodeInstanceServer::hideEditView()
+{
+ m_blockViewActivate = true;
+ auto window = qobject_cast<QWindow *>(m_editView3D);
+ if (window)
+ window->hide();
+}
+
+void Qt5InformationNodeInstanceServer::activateEditView()
+{
+ auto window = qobject_cast<QWindow *>(m_editView3D);
+ if (window) {
+ Qt::WindowFlags flags = window->flags();
+
+#ifdef Q_OS_MACOS
+ window->setFlags(Qt::Popup);
+ window->show();
+ window->setFlags(flags);
+#else
+ window->raise();
+ window->setFlags(flags | Qt::WindowStaysOnTopHint);
+ window->show();
+
+ window->requestActivate();
+ window->raise();
+ window->setFlags(flags);
+#endif
+ }
+}
+
+void Qt5InformationNodeInstanceServer::moveEditView(const QPoint &pos)
+{
+ auto window = qobject_cast<QWindow*>(m_editView3D);
+ if (window) {
+ activateEditView();
+ window->setPosition(pos);
+ }
+}
+
+void Qt5InformationNodeInstanceServer::resizeEditView(const QSize &size)
+{
+ auto window = qobject_cast<QWindow *>(m_editView3D);
+ if (window) {
+ activateEditView();
+ window->resize(size);
+ }
+}
+
void Qt5InformationNodeInstanceServer::handleObjectPropertyCommit(const QVariant &object,
const QVariant &propName)
{
@@ -253,6 +315,14 @@ void Qt5InformationNodeInstanceServer::updateViewPortRect()
viewPortProperty.write(viewPortrect);
}
+void Qt5InformationNodeInstanceServer::handleActiveChanged()
+{
+ if (m_blockViewActivate)
+ return;
+
+ activateEditView();
+}
+
Qt5InformationNodeInstanceServer::Qt5InformationNodeInstanceServer(NodeInstanceClientInterface *nodeInstanceClient) :
Qt5NodeInstanceServer(nodeInstanceClient)
{
@@ -641,4 +711,18 @@ void Qt5InformationNodeInstanceServer::changePropertyValues(const ChangeValuesCo
startRenderTimer();
}
+void Qt5InformationNodeInstanceServer::change3DView(const Change3DViewCommand &command)
+{
+ for (const InformationContainer &container : command.informationVector()) {
+ if (container.name() == InformationName::ShowView)
+ showEditView(container.information().toPoint(), container.secondInformation().toSize());
+ else if (container.name() == InformationName::HideView)
+ hideEditView();
+ else if (container.name() == InformationName::MoveView)
+ moveEditView(container.information().toPoint());
+ else if (container.name() == InformationName::ResizeView)
+ resizeEditView(container.secondInformation().toSize());
+ }
+}
+
} // namespace QmlDesigner
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.h b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.h
index 0597947024..439e4da0c7 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.h
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.h
@@ -42,6 +42,7 @@ public:
void reparentInstances(const ReparentInstancesCommand &command) override;
void clearScene(const ClearSceneCommand &command) override;
+ void change3DView(const Change3DViewCommand &command) override;
void createScene(const CreateSceneCommand &command) override;
void completeComponent(const CompleteComponentCommand &command) override;
void token(const TokenCommand &command) override;
@@ -54,6 +55,7 @@ private slots:
void handleObjectPropertyCommit(const QVariant &object, const QVariant &propName);
void handleObjectPropertyChange(const QVariant &object, const QVariant &propName);
void updateViewPortRect();
+ void handleActiveChanged();
protected:
void collectItemChangesAndSendChangeCommands() override;
@@ -80,6 +82,12 @@ private:
const PropertyName &propertyName,
ValuesModifiedCommand::TransactionOption option);
+ void showEditView(const QPoint &pos, const QSize &size);
+ void hideEditView();
+ void activateEditView();
+ void moveEditView(const QPoint &pos);
+ void resizeEditView(const QSize &size);
+
QObject *m_editView3D = nullptr;
QSet<ServerNodeInstance> m_parentChangedSet;
QList<ServerNodeInstance> m_completedComponentList;
@@ -88,6 +96,8 @@ private:
QVariant m_changedNode;
PropertyName m_changedProperty;
ServerNodeInstance m_viewPortInstance;
+
+ bool m_blockViewActivate = false;
};
} // namespace QmlDesigner