From 2e5805d4b03dc01291fa9128ee539288c6ae856c Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 1 Sep 2023 17:19:37 +0200 Subject: [PATCH] TextEditor: Hide part of OutlineFactory implementation Change-Id: Ifb1c743ba53e2e55605b78336b57c993c12ead3e Reviewed-by: David Schulz --- src/plugins/texteditor/outlinefactory.cpp | 35 ++++++++++++++++ src/plugins/texteditor/outlinefactory.h | 44 ++------------------- src/plugins/texteditor/texteditorplugin.cpp | 2 + 3 files changed, 40 insertions(+), 41 deletions(-) diff --git a/src/plugins/texteditor/outlinefactory.cpp b/src/plugins/texteditor/outlinefactory.cpp index abec3a3ca66..2b2cc5e73af 100644 --- a/src/plugins/texteditor/outlinefactory.cpp +++ b/src/plugins/texteditor/outlinefactory.cpp @@ -4,6 +4,7 @@ #include "outlinefactory.h" #include "texteditortr.h" +#include "ioutlinewidget.h" #include #include @@ -16,6 +17,7 @@ #include #include +#include #include #include @@ -42,6 +44,37 @@ void IOutlineWidgetFactory::updateOutline() namespace Internal { +class OutlineWidgetStack : public QStackedWidget +{ + Q_OBJECT + +public: + OutlineWidgetStack(OutlineFactory *factory); + ~OutlineWidgetStack() override; + + QList toolButtons(); + + void saveSettings(QSettings *settings, int position); + void restoreSettings(QSettings *settings, int position); + +private: + bool isCursorSynchronized() const; + QWidget *dummyWidget() const; + void updateFilterMenu(); + void toggleCursorSynchronization(); + void toggleSort(); + void updateEditor(Core::IEditor *editor); + void updateCurrentEditor(); + + QToolButton *m_toggleSync; + QToolButton *m_filterButton; + QToolButton *m_toggleSort; + QMenu *m_filterMenu; + QVariantMap m_widgetSettings; + bool m_syncWithEditor; + bool m_sorted; +}; + OutlineWidgetStack::OutlineWidgetStack(OutlineFactory *factory) : m_syncWithEditor(true), m_sorted(false) @@ -233,3 +266,5 @@ void OutlineFactory::restoreSettings(Utils::QtcSettings *settings, int position, } // namespace Internal } // namespace TextEditor + +#include "outlinefactory.moc" diff --git a/src/plugins/texteditor/outlinefactory.h b/src/plugins/texteditor/outlinefactory.h index 99a0334a500..eae3efb7fcc 100644 --- a/src/plugins/texteditor/outlinefactory.h +++ b/src/plugins/texteditor/outlinefactory.h @@ -3,51 +3,14 @@ #pragma once -#include #include -#include -#include -namespace Core { class IEditor; } - -namespace TextEditor { -namespace Internal { - -class OutlineFactory; - -class OutlineWidgetStack : public QStackedWidget -{ - Q_OBJECT -public: - OutlineWidgetStack(OutlineFactory *factory); - ~OutlineWidgetStack() override; - - QList toolButtons(); - - void saveSettings(QSettings *settings, int position); - void restoreSettings(QSettings *settings, int position); - -private: - bool isCursorSynchronized() const; - QWidget *dummyWidget() const; - void updateFilterMenu(); - void toggleCursorSynchronization(); - void toggleSort(); - void updateEditor(Core::IEditor *editor); - void updateCurrentEditor(); - - QToolButton *m_toggleSync; - QToolButton *m_filterButton; - QToolButton *m_toggleSort; - QMenu *m_filterMenu; - QVariantMap m_widgetSettings; - bool m_syncWithEditor; - bool m_sorted; -}; +namespace TextEditor::Internal { class OutlineFactory : public Core::INavigationWidgetFactory { Q_OBJECT + public: OutlineFactory(); @@ -60,5 +23,4 @@ signals: void updateOutline(); }; -} // namespace Internal -} // namespace TextEditor +} // TextEditor::Internal diff --git a/src/plugins/texteditor/texteditorplugin.cpp b/src/plugins/texteditor/texteditorplugin.cpp index 67c621bcc36..d0df98fb8af 100644 --- a/src/plugins/texteditor/texteditorplugin.cpp +++ b/src/plugins/texteditor/texteditorplugin.cpp @@ -43,6 +43,8 @@ #include #include +#include + using namespace Core; using namespace Utils;