From 83da45adde46df9c7762dc0004c7b02154876548 Mon Sep 17 00:00:00 2001 From: Mahmoud Badri Date: Mon, 19 Oct 2020 12:03:46 +0300 Subject: QmlDesigner: Remove AnnotationTool Remove AnnotationTool from FormEditor's selected item's tools. Change-Id: I797ed4002d14c04956aaeb5d779f1cf3f326f849 Fixes: QDS-2970 Reviewed-by: Miikka Heikkinen Reviewed-by: Aleksei German Reviewed-by: Thomas Hartmann --- share/qtcreator/translations/qtcreator_ru.ts | 14 -- src/plugins/qmldesigner/CMakeLists.txt | 1 - .../annotationeditor/annotationeditor.pri | 2 - .../components/annotationeditor/annotationtool.cpp | 259 --------------------- .../components/annotationeditor/annotationtool.h | 93 -------- src/plugins/qmldesigner/qmldesignerplugin.cpp | 2 - src/plugins/qmldesigner/qmldesignerplugin.qbs | 2 - 7 files changed, 373 deletions(-) delete mode 100644 src/plugins/qmldesigner/components/annotationeditor/annotationtool.cpp delete mode 100644 src/plugins/qmldesigner/components/annotationeditor/annotationtool.h diff --git a/share/qtcreator/translations/qtcreator_ru.ts b/share/qtcreator/translations/qtcreator_ru.ts index 50a2531f9f..343f1c468e 100644 --- a/share/qtcreator/translations/qtcreator_ru.ts +++ b/share/qtcreator/translations/qtcreator_ru.ts @@ -2554,13 +2554,6 @@ To hide a sticky splash screen, invoke QtAndroid::hideSplashScreen(). Анимируемые свойства. - - AnnotationToolAction - - Edit Annotation - Изменить аннотацию - - Application @@ -39440,13 +39433,6 @@ Neither the path to the library nor the path to its includes is added to the .pr Аннотация - - QmlDesigner::AnnotationTool - - Annotation Tool - Аннотация - - QmlDesigner::AssetExportDialog diff --git a/src/plugins/qmldesigner/CMakeLists.txt b/src/plugins/qmldesigner/CMakeLists.txt index ca98f2c424..31d5b74dae 100644 --- a/src/plugins/qmldesigner/CMakeLists.txt +++ b/src/plugins/qmldesigner/CMakeLists.txt @@ -627,7 +627,6 @@ extend_qtc_plugin(QmlDesigner annotationeditordialog.cpp annotationeditordialog.h annotationeditordialog.ui globalannotationeditordialog.cpp globalannotationeditordialog.h globalannotationeditordialog.ui annotationeditor.cpp annotationeditor.h - annotationtool.cpp annotationtool.h globalannotationeditor.cpp globalannotationeditor.h ) diff --git a/src/plugins/qmldesigner/components/annotationeditor/annotationeditor.pri b/src/plugins/qmldesigner/components/annotationeditor/annotationeditor.pri index e597e6862c..b1773c2dcf 100644 --- a/src/plugins/qmldesigner/components/annotationeditor/annotationeditor.pri +++ b/src/plugins/qmldesigner/components/annotationeditor/annotationeditor.pri @@ -1,11 +1,9 @@ -HEADERS += $$PWD/annotationtool.h HEADERS += $$PWD/annotationcommenttab.h HEADERS += $$PWD/annotationeditordialog.h HEADERS += $$PWD/annotationeditor.h HEADERS += $$PWD/globalannotationeditor.h HEADERS += $$PWD/globalannotationeditordialog.h -SOURCES += $$PWD/annotationtool.cpp SOURCES += $$PWD/annotationcommenttab.cpp SOURCES += $$PWD/annotationeditordialog.cpp SOURCES += $$PWD/annotationeditor.cpp diff --git a/src/plugins/qmldesigner/components/annotationeditor/annotationtool.cpp b/src/plugins/qmldesigner/components/annotationeditor/annotationtool.cpp deleted file mode 100644 index 9db5d0d81c..0000000000 --- a/src/plugins/qmldesigner/components/annotationeditor/annotationtool.cpp +++ /dev/null @@ -1,259 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 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 "annotationtool.h" - -#include "formeditorscene.h" -#include "formeditorview.h" -#include "formeditorwidget.h" -#include "itemutilfunctions.h" -#include "formeditoritem.h" - -#include "nodemetainfo.h" -#include "qmlitemnode.h" -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -namespace QmlDesigner { - -class AnnotationToolAction : public AbstractAction -{ -public: - AnnotationToolAction() : AbstractAction(QCoreApplication::translate("AnnotationToolAction","Edit Annotation")) - { - } - - QByteArray category() const override - { - return QByteArray(); - } - - QByteArray menuId() const override - { - return "AnnotationTool"; - } - - int priority() const override - { - return CustomActionsPriority + 5; - } - - Type type() const override - { - return FormEditorAction; - } - -protected: - bool isVisible(const SelectionContext &selectionContext) const override - { - return selectionContext.singleNodeIsSelected(); - } - - bool isEnabled(const SelectionContext &selectionContext) const override - { - return isVisible(selectionContext); - } -}; - -AnnotationTool::AnnotationTool() -{ - auto annotationToolAction = new AnnotationToolAction; - QmlDesignerPlugin::instance()->designerActionManager().addDesignerAction(annotationToolAction); - connect(annotationToolAction->action(), &QAction::triggered, [=]() { - view()->changeCurrentToolTo(this); - }); -} - -AnnotationTool::~AnnotationTool() = default; - -void AnnotationTool::clear() -{ - if (m_annotationEditor) - m_annotationEditor->deleteLater(); - - AbstractFormEditorTool::clear(); -} - -void AnnotationTool::mousePressEvent(const QList &itemList, - QGraphicsSceneMouseEvent *event) -{ - AbstractFormEditorTool::mousePressEvent(itemList, event); -} - -void AnnotationTool::mouseMoveEvent(const QList & /*itemList*/, - QGraphicsSceneMouseEvent * /*event*/) -{ -} - -void AnnotationTool::hoverMoveEvent(const QList & /*itemList*/, - QGraphicsSceneMouseEvent * /*event*/) -{ -} - -void AnnotationTool::keyPressEvent(QKeyEvent * /*keyEvent*/) -{ -} - -void AnnotationTool::keyReleaseEvent(QKeyEvent * /*keyEvent*/) -{ -} - -void AnnotationTool::dragLeaveEvent(const QList &/*itemList*/, QGraphicsSceneDragDropEvent * /*event*/) -{ -} - -void AnnotationTool::dragMoveEvent(const QList &/*itemList*/, QGraphicsSceneDragDropEvent * /*event*/) -{ -} - -void AnnotationTool::mouseReleaseEvent(const QList &itemList, - QGraphicsSceneMouseEvent *event) -{ - AbstractFormEditorTool::mouseReleaseEvent(itemList, event); -} - - -void AnnotationTool::mouseDoubleClickEvent(const QList &itemList, QGraphicsSceneMouseEvent *event) -{ - AbstractFormEditorTool::mouseDoubleClickEvent(itemList, event); -} - -void AnnotationTool::itemsAboutToRemoved(const QList &removedItemList) -{ - if (m_annotationEditor.isNull()) - return; - - if (removedItemList.contains(m_formEditorItem)) - view()->changeToSelectionTool(); -} - -void AnnotationTool::selectedItemsChanged(const QList &itemList) -{ - if (!itemList.isEmpty()) { - m_formEditorItem = itemList.constFirst(); - - ModelNode itemModelNode = m_formEditorItem->qmlItemNode().modelNode(); - m_oldCustomId = itemModelNode.customId(); - m_oldAnnotation = itemModelNode.annotation(); - - if (m_annotationEditor.isNull()) { - m_annotationEditor = new AnnotationEditorDialog(view()->formEditorWidget()->parentWidget(), - itemModelNode.displayName(), - m_oldCustomId, m_oldAnnotation); - - connect(m_annotationEditor, &AnnotationEditorDialog::accepted, this, &AnnotationTool::annotationDialogAccepted); - connect(m_annotationEditor, &QDialog::rejected, this, &AnnotationTool::annotationDialogRejected); - - m_annotationEditor->show(); - m_annotationEditor->raise(); - } - } else { - view()->changeToSelectionTool(); - } -} - -void AnnotationTool::instancesCompleted(const QList & /*itemList*/) -{ -} - -void AnnotationTool::instancesParentChanged(const QList & /*itemList*/) -{ -} - -void AnnotationTool::instancePropertyChange(const QList > & /*propertyList*/) -{ -} - -void AnnotationTool::formEditorItemsChanged(const QList & /*itemList*/) -{ -} - -int AnnotationTool::wantHandleItem(const ModelNode & /*modelNode*/) const -{ - return 5; -} - -QString AnnotationTool::name() const -{ - return tr("Annotation Tool"); -} - -void AnnotationTool::annotationDialogAccepted() -{ - if (m_annotationEditor) { - saveNewCustomId(m_annotationEditor->customId()); - saveNewAnnotation(m_annotationEditor->annotation()); - - m_annotationEditor->close(); - m_annotationEditor->deleteLater(); - } - - m_annotationEditor = nullptr; - - view()->changeToSelectionTool(); -} - -void AnnotationTool::saveNewCustomId(const QString &customId) -{ - if (m_formEditorItem) { - m_oldCustomId = customId; - m_formEditorItem->qmlItemNode().modelNode().setCustomId(customId); - } -} - -void AnnotationTool::saveNewAnnotation(const Annotation &annotation) -{ - if (m_formEditorItem) { - if (annotation.comments().isEmpty()) - m_formEditorItem->qmlItemNode().modelNode().removeAnnotation(); - else - m_formEditorItem->qmlItemNode().modelNode().setAnnotation(annotation); - - m_oldAnnotation = annotation; - } -} - -void AnnotationTool::annotationDialogRejected() -{ - if (m_annotationEditor) { - m_annotationEditor->close(); - m_annotationEditor->deleteLater(); - } - - m_annotationEditor = nullptr; - - view()->changeToSelectionTool(); -} - -} diff --git a/src/plugins/qmldesigner/components/annotationeditor/annotationtool.h b/src/plugins/qmldesigner/components/annotationeditor/annotationtool.h deleted file mode 100644 index 0073286dd6..0000000000 --- a/src/plugins/qmldesigner/components/annotationeditor/annotationtool.h +++ /dev/null @@ -1,93 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2020 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 "annotation.h" -#include "annotationeditordialog.h" -#include "abstractcustomtool.h" -#include "selectionindicator.h" - -#include -#include -#include - -namespace QmlDesigner { - -class AnnotationTool : public QObject, public AbstractCustomTool -{ - Q_OBJECT -public: - AnnotationTool(); - ~AnnotationTool() override; - - void mousePressEvent(const QList &itemList, - QGraphicsSceneMouseEvent *event) override; - void mouseMoveEvent(const QList &itemList, - QGraphicsSceneMouseEvent *event) override; - void mouseReleaseEvent(const QList &itemList, - QGraphicsSceneMouseEvent *event) override; - void mouseDoubleClickEvent(const QList &itemList, - QGraphicsSceneMouseEvent *event) override; - void hoverMoveEvent(const QList &itemList, - QGraphicsSceneMouseEvent *event) override; - void keyPressEvent(QKeyEvent *event) override; - void keyReleaseEvent(QKeyEvent *keyEvent) override; - - void dragLeaveEvent(const QList &itemList, - QGraphicsSceneDragDropEvent * event) override; - void dragMoveEvent(const QList &itemList, - QGraphicsSceneDragDropEvent * event) override; - - void itemsAboutToRemoved(const QList &itemList) override; - - void selectedItemsChanged(const QList &itemList) override; //impl needed - - void instancesCompleted(const QList &itemList) override; - void instancesParentChanged(const QList &itemList) override; - void instancePropertyChange(const QList > &propertyList) override; - - void clear() override; - - void formEditorItemsChanged(const QList &itemList) override; - - int wantHandleItem(const ModelNode &modelNode) const override; - - QString name() const override; - -private: - void annotationDialogAccepted(); - void annotationDialogRejected(); - void saveNewCustomId(const QString &customId); - void saveNewAnnotation(const Annotation &annotation); - -private: - FormEditorItem *m_formEditorItem = nullptr; - QString m_oldCustomId; - Annotation m_oldAnnotation; - QPointer m_annotationEditor; -}; - -} diff --git a/src/plugins/qmldesigner/qmldesignerplugin.cpp b/src/plugins/qmldesigner/qmldesignerplugin.cpp index 3022bd80be..938a718d7c 100644 --- a/src/plugins/qmldesigner/qmldesignerplugin.cpp +++ b/src/plugins/qmldesigner/qmldesignerplugin.cpp @@ -37,7 +37,6 @@ #include #include #include -#include #include #include #include @@ -250,7 +249,6 @@ bool QmlDesignerPlugin::delayedInitialize() d->viewManager.registerFormEditorToolTakingOwnership(new QmlDesigner::SourceTool); d->viewManager.registerFormEditorToolTakingOwnership(new QmlDesigner::ColorTool); - d->viewManager.registerFormEditorToolTakingOwnership(new QmlDesigner::AnnotationTool); d->viewManager.registerFormEditorToolTakingOwnership(new QmlDesigner::TextTool); d->viewManager.registerFormEditorToolTakingOwnership(new QmlDesigner::PathTool); d->viewManager.registerFormEditorToolTakingOwnership(new QmlDesigner::TransitionTool); diff --git a/src/plugins/qmldesigner/qmldesignerplugin.qbs b/src/plugins/qmldesigner/qmldesignerplugin.qbs index 8dc0933903..c9b608ea39 100644 --- a/src/plugins/qmldesigner/qmldesignerplugin.qbs +++ b/src/plugins/qmldesigner/qmldesignerplugin.qbs @@ -712,8 +712,6 @@ Project { "annotationeditor/globalannotationeditordialog.cpp", "annotationeditor/globalannotationeditordialog.h", "annotationeditor/globalannotationeditordialog.ui", - "annotationeditor/annotationtool.cpp", - "annotationeditor/annotationtool.h", "bindingeditor/bindingeditor.cpp", "bindingeditor/bindingeditor.h", "bindingeditor/actioneditor.cpp", -- cgit v1.2.3