From b9188fb7478ae08e2248304c2da68fcca9ee38ed Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 1 Sep 2023 15:18:36 +0200 Subject: [PATCH] QmlJSEditor: Remove unneeded indirection via qmljsicontextpane.h Change-Id: I39989fdb697dc7078a01f9582b790ee91021e3ab Reviewed-by: Reviewed-by: David Schulz --- src/libs/qmljs/CMakeLists.txt | 1 - src/libs/qmljs/qmljs.qbs | 1 - src/libs/qmljs/qmljsicontextpane.h | 34 ------------------------ src/plugins/qmljseditor/qmljseditor.cpp | 2 +- src/plugins/qmljseditor/quicktoolbar.cpp | 9 +++---- src/plugins/qmljseditor/quicktoolbar.h | 24 +++++++++++------ 6 files changed, 21 insertions(+), 50 deletions(-) delete mode 100644 src/libs/qmljs/qmljsicontextpane.h diff --git a/src/libs/qmljs/CMakeLists.txt b/src/libs/qmljs/CMakeLists.txt index d166e666e74..4ca15cf7cc2 100644 --- a/src/libs/qmljs/CMakeLists.txt +++ b/src/libs/qmljs/CMakeLists.txt @@ -32,7 +32,6 @@ add_qtc_library(QmlJS qmljsevaluate.cpp qmljsevaluate.h qmljsfindexportedcpptypes.cpp qmljsfindexportedcpptypes.h qmljsicons.cpp qmljsicons.h - qmljsicontextpane.h qmljsimportdependencies.cpp qmljsimportdependencies.h qmljsindenter.cpp qmljsindenter.h qmljsinterpreter.cpp qmljsinterpreter.h diff --git a/src/libs/qmljs/qmljs.qbs b/src/libs/qmljs/qmljs.qbs index 59eecc55f4c..aa886a8ba2f 100644 --- a/src/libs/qmljs/qmljs.qbs +++ b/src/libs/qmljs/qmljs.qbs @@ -30,7 +30,6 @@ Project { "qmljsevaluate.cpp", "qmljsevaluate.h", "qmljsfindexportedcpptypes.cpp", "qmljsfindexportedcpptypes.h", "qmljsicons.cpp", "qmljsicons.h", - "qmljsicontextpane.h", "qmljsimportdependencies.cpp", "qmljsimportdependencies.h", "qmljsindenter.cpp", "qmljsindenter.h", "qmljsinterpreter.cpp", "qmljsinterpreter.h", diff --git a/src/libs/qmljs/qmljsicontextpane.h b/src/libs/qmljs/qmljsicontextpane.h deleted file mode 100644 index 4bbc33a7d73..00000000000 --- a/src/libs/qmljs/qmljsicontextpane.h +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 - -#pragma once - -#include - -#include "qmljs_global.h" - -#include -#include - -namespace TextEditor { class TextEditorWidget; } - -namespace QmlJS { - -class ScopeChain; - -class QMLJS_EXPORT IContextPane : public QObject -{ - Q_OBJECT - -public: - IContextPane(QObject *parent = nullptr) : QObject(parent) {} - virtual ~IContextPane() {} - virtual void apply(TextEditor::TextEditorWidget *editorWidget, Document::Ptr document, const ScopeChain *scopeChain, AST::Node *node, bool update, bool force = false) = 0; - virtual void setEnabled(bool) = 0; - virtual bool isAvailable(TextEditor::TextEditorWidget *editorWidget, Document::Ptr document, AST::Node *node) = 0; - virtual QWidget* widget() = 0; -signals: - void closed(); -}; - -} // namespace QmlJS diff --git a/src/plugins/qmljseditor/qmljseditor.cpp b/src/plugins/qmljseditor/qmljseditor.cpp index 765d8d4ad28..04c94d628a4 100644 --- a/src/plugins/qmljseditor/qmljseditor.cpp +++ b/src/plugins/qmljseditor/qmljseditor.cpp @@ -126,7 +126,7 @@ void QmlJSEditorWidget::finalizeInitialization() if (m_contextPane) { connect(this, &QmlJSEditorWidget::cursorPositionChanged, &m_contextPaneTimer, QOverload<>::of(&QTimer::start)); - connect(m_contextPane, &IContextPane::closed, this, &QmlJSEditorWidget::showTextMarker); + connect(m_contextPane, &QuickToolBar::closed, this, &QmlJSEditorWidget::showTextMarker); } connect(this->document(), &QTextDocument::modificationChanged, diff --git a/src/plugins/qmljseditor/quicktoolbar.cpp b/src/plugins/qmljseditor/quicktoolbar.cpp index 1487d44844e..911c4228603 100644 --- a/src/plugins/qmljseditor/quicktoolbar.cpp +++ b/src/plugins/qmljseditor/quicktoolbar.cpp @@ -337,13 +337,11 @@ void QuickToolBar::setEnabled(bool b) widget()->hide(); } - -QWidget* QuickToolBar::widget() +QWidget *QuickToolBar::widget() { return contextWidget(); } - void QuickToolBar::onPropertyChanged(const QString &name, const QVariant &value) { if (m_blockWriting) @@ -411,7 +409,7 @@ void QuickToolBar::indentLines(int startLine, int endLine) } } -ContextPaneWidget* QuickToolBar::contextWidget() +ContextPaneWidget *QuickToolBar::contextWidget() { if (m_widget.isNull()) { //lazily recreate widget m_widget = new ContextPaneWidget; @@ -425,7 +423,8 @@ ContextPaneWidget* QuickToolBar::contextWidget() this, &QuickToolBar::onEnabledChanged); connect(m_widget.data(), &ContextPaneWidget::pinnedChanged, this, &QuickToolBar::onPinnedChanged); - connect(m_widget.data(), &ContextPaneWidget::closed, this, &IContextPane::closed); + connect(m_widget.data(), &ContextPaneWidget::closed, + this, &QuickToolBar::closed); } return m_widget.data(); } diff --git a/src/plugins/qmljseditor/quicktoolbar.h b/src/plugins/qmljseditor/quicktoolbar.h index df6a2ca2665..09147809c4d 100644 --- a/src/plugins/qmljseditor/quicktoolbar.h +++ b/src/plugins/qmljseditor/quicktoolbar.h @@ -3,30 +3,35 @@ #pragma once -#include +#include +#include #include +namespace TextEditor { class TextEditorWidget; } + +namespace QmlJS { class ScopeChain; } + namespace QmlEditorWidgets { class ContextPaneWidget; } namespace QmlJSEditor { -class QuickToolBar : public QmlJS::IContextPane +class QuickToolBar : public QObject { Q_OBJECT QuickToolBar(); public: - ~QuickToolBar() override; + ~QuickToolBar(); static QuickToolBar *instance(); - void apply(TextEditor::TextEditorWidget *widget, QmlJS::Document::Ptr document, const QmlJS::ScopeChain *scopeChain, QmlJS::AST::Node *node, bool update, bool force = false) override; - bool isAvailable(TextEditor::TextEditorWidget *widget, QmlJS::Document::Ptr document, QmlJS::AST::Node *node) override; + void apply(TextEditor::TextEditorWidget *widget, QmlJS::Document::Ptr document, const QmlJS::ScopeChain *scopeChain, QmlJS::AST::Node *node, bool update, bool force = false); + bool isAvailable(TextEditor::TextEditorWidget *widget, QmlJS::Document::Ptr document, QmlJS::AST::Node *node); void setProperty(const QString &propertyName, const QVariant &value); void removeProperty(const QString &propertyName); - void setEnabled(bool) override; - QWidget* widget() override; + void setEnabled(bool); + QWidget *widget(); void onPropertyChanged(const QString &, const QVariant &); void onPropertyRemoved(const QString &); @@ -34,6 +39,9 @@ public: void onPinnedChanged(bool); void onEnabledChanged(bool); +signals: + void closed(); + private: void indentLines(int startLine, int endLine); @@ -48,4 +56,4 @@ private: QString m_oldType; }; -} //QmlDesigner +} // QmlJSEditor