diff options
author | hjk <hjk@qt.io> | 2023-09-01 17:29:09 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2023-09-04 09:36:16 +0000 |
commit | fbd243e82e6f743a969556baa2fb8f77bd5dbf9e (patch) | |
tree | 8fa69559cd4b4ddcde8786068c8518eec2879d70 /src/plugins/cppeditor/cpptypehierarchy.h | |
parent | 68cdbd9cd0fa8156ff97a59437e0ff221cbdbc32 (diff) |
CppEditor: Hide part of CppTypeHierarchy implementation
Change-Id: I5635f320e7d746702e6e86bd5f4e8cc749c804f5
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/plugins/cppeditor/cpptypehierarchy.h')
-rw-r--r-- | src/plugins/cppeditor/cpptypehierarchy.h | 89 |
1 files changed, 2 insertions, 87 deletions
diff --git a/src/plugins/cppeditor/cpptypehierarchy.h b/src/plugins/cppeditor/cpptypehierarchy.h index 4e78224222..37eaec2a78 100644 --- a/src/plugins/cppeditor/cpptypehierarchy.h +++ b/src/plugins/cppeditor/cpptypehierarchy.h @@ -4,100 +4,15 @@ #pragma once #include <coreplugin/inavigationwidgetfactory.h> -#include <utils/futuresynchronizer.h> -#include <QFuture> -#include <QFutureWatcher> -#include <QList> -#include <QSharedPointer> -#include <QStackedWidget> -#include <QStandardItemModel> -#include <QString> -#include <QWidget> - -QT_BEGIN_NAMESPACE -class QLabel; -class QModelIndex; -class QStackedLayout; -class QStandardItem; -QT_END_NAMESPACE - -namespace TextEditor { class TextEditorLinkLabel; } - -namespace Utils { -class AnnotatedItemDelegate; -class NavigationTreeView; -class ProgressIndicator; -} - -namespace CppEditor { -class CppEditorWidget; - -namespace Internal { -class CppClass; -class CppElement; - -class CppTypeHierarchyModel : public QStandardItemModel -{ - Q_OBJECT - -public: - CppTypeHierarchyModel(QObject *parent); - - Qt::DropActions supportedDragActions() const override; - QStringList mimeTypes() const override; - QMimeData *mimeData(const QModelIndexList &indexes) const override; -}; - -class CppTypeHierarchyWidget : public QWidget -{ - Q_OBJECT -public: - CppTypeHierarchyWidget(); - - void perform(); - -private slots: - void displayHierarchy(); - -private: - typedef QList<CppClass> CppClass::*HierarchyMember; - void performFromExpression(const QString &expression, const Utils::FilePath &filePath); - QStandardItem *buildHierarchy(const CppClass &cppClass, QStandardItem *parent, - bool isRoot, HierarchyMember member); - void showNoTypeHierarchyLabel(); - void showTypeHierarchy(); - void showProgress(); - void hideProgress(); - void clearTypeHierarchy(); - void onItemActivated(const QModelIndex &index); - void onItemDoubleClicked(const QModelIndex &index); - - CppEditorWidget *m_cppEditor = nullptr; - Utils::NavigationTreeView *m_treeView = nullptr; - QWidget *m_hierarchyWidget = nullptr; - QStackedLayout *m_stackLayout = nullptr; - QStandardItemModel *m_model = nullptr; - Utils::AnnotatedItemDelegate *m_delegate = nullptr; - TextEditor::TextEditorLinkLabel *m_inspectedClass = nullptr; - QLabel *m_infoLabel = nullptr; - QFuture<QSharedPointer<CppElement>> m_future; - QFutureWatcher<void> m_futureWatcher; - Utils::FutureSynchronizer m_synchronizer; - Utils::ProgressIndicator *m_progressIndicator = nullptr; - QString m_oldClass; - bool m_showOldClass = false; -}; +namespace CppEditor::Internal { class CppTypeHierarchyFactory : public Core::INavigationWidgetFactory { - Q_OBJECT - public: CppTypeHierarchyFactory(); Core::NavigationView createWidget() override; }; -} // namespace Internal -} // namespace CppEditor +} // CppEditor::Internal |