diff options
author | Marco Bubke <marco.bubke@digia.com> | 2014-07-21 18:07:02 +0200 |
---|---|---|
committer | Marco Bubke <marco.bubke@digia.com> | 2014-07-22 13:12:42 +0200 |
commit | ac7f17c28a87dd28a483d1e930f7d9b535415e48 (patch) | |
tree | 2b87d83d7836ee531e554509e7cf1142859b9eb0 | |
parent | 1c15b4f34cba3846189c7ea53db05e1b92e6a403 (diff) | |
download | qt-creator-ac7f17c28a87dd28a483d1e930f7d9b535415e48.tar.gz |
QmlDesigner: Don't use a timer anymore in the drag tool
Change-Id: I5f8b8436815c871e462c888e9963c8ee754bbc72
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
5 files changed, 10 insertions, 26 deletions
diff --git a/src/plugins/qmldesigner/components/formeditor/dragtool.cpp b/src/plugins/qmldesigner/components/formeditor/dragtool.cpp index f2c28ebd98..ae6892cf3f 100644 --- a/src/plugins/qmldesigner/components/formeditor/dragtool.cpp +++ b/src/plugins/qmldesigner/components/formeditor/dragtool.cpp @@ -42,19 +42,11 @@ namespace QmlDesigner { -namespace Internal { -void TimerHandler::clearMoveDelay() -{ - m_dragTool->clearMoveDelay(); -} - -} DragTool::DragTool(FormEditorView *editorView) : AbstractFormEditorTool(editorView), m_moveManipulator(editorView->scene()->manipulatorLayerItem(), editorView), m_selectionIndicator(editorView->scene()->manipulatorLayerItem()), - m_timerHandler(new Internal::TimerHandler(this)), m_blockMove(false), m_isAborted(false) { @@ -327,7 +319,6 @@ void DragTool::createDragNode(const QMimeData *mimeData, const QPointF &scenePos m_blockMove = true; m_startPoint = scenePosition; - QTimer::singleShot(10000, m_timerHandler.data(), SLOT(clearMoveDelay())); } } } diff --git a/src/plugins/qmldesigner/components/formeditor/dragtool.h b/src/plugins/qmldesigner/components/formeditor/dragtool.h index eeadda6a91..11ef56f04a 100644 --- a/src/plugins/qmldesigner/components/formeditor/dragtool.h +++ b/src/plugins/qmldesigner/components/formeditor/dragtool.h @@ -42,22 +42,6 @@ namespace QmlDesigner { class DragTool; -namespace Internal { - -class TimerHandler : public QObject -{ - Q_OBJECT - -public: - TimerHandler(DragTool *tool) : QObject(), m_dragTool(tool) {} -public slots: - void clearMoveDelay(); - -private: - DragTool *m_dragTool; -}; -} - class DragTool : public AbstractFormEditorTool { public: @@ -116,7 +100,6 @@ private: QPointer<FormEditorItem> m_movingItem; RewriterTransaction m_rewriterTransaction; QmlItemNode m_dragNode; - QScopedPointer<Internal::TimerHandler> m_timerHandler; bool m_blockMove; QPointF m_startPoint; bool m_isAborted; diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp index ef1fe84c97..3780005779 100644 --- a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp +++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp @@ -299,6 +299,12 @@ void FormEditorView::propertiesRemoved(const QList<AbstractProperty> &/*property { } +void FormEditorView::customNotification(const AbstractView */*view*/, const QString &identifier, const QList<ModelNode> &/*nodeList*/, const QList<QVariant> &/*data*/) +{ + if (identifier == QStringLiteral("puppet crashed")) + m_dragTool->clearMoveDelay(); +} + AbstractFormEditorTool* FormEditorView::currentTool() const { return m_currentTool; diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.h b/src/plugins/qmldesigner/components/formeditor/formeditorview.h index 6333d71bda..fc0d9c9f78 100644 --- a/src/plugins/qmldesigner/components/formeditor/formeditorview.h +++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.h @@ -84,6 +84,8 @@ public: void scriptFunctionsChanged(const ModelNode &node, const QStringList &scriptFunctionList) QTC_OVERRIDE; void propertiesRemoved(const QList<AbstractProperty> &propertyList) QTC_OVERRIDE; + void customNotification(const AbstractView *view, const QString &identifier, const QList<ModelNode> &nodeList, const QList<QVariant> &data) QTC_OVERRIDE; + // FormEditorView WidgetInfo widgetInfo() QTC_OVERRIDE; diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp index 0f08975031..845de2ac87 100644 --- a/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp +++ b/src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp @@ -188,6 +188,8 @@ void NodeInstanceView::handleChrash() restartProcess(); else emit qmlPuppetCrashed(); + + emitCustomNotification(QStringLiteral("puppet crashed")); } |