File indexing completed on 2024-05-05 16:46:04
0001 /* 0002 SPDX-FileCopyrightText: 2010, 2015 Alex Richardson <alex.richardson@gmx.de> 0003 0004 SPDX-License-Identifier: LGPL-2.1-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <QWidget> 0010 0011 class QSortFilterProxyModel; 0012 class QModelIndex; 0013 class QAction; 0014 class QTreeView; 0015 class QLineEdit; 0016 class OutlineModel; 0017 class OutlineViewPlugin; 0018 0019 class OutlineWidget : public QWidget 0020 { 0021 Q_OBJECT 0022 0023 public: 0024 OutlineWidget(QWidget* parent, OutlineViewPlugin* plugin); 0025 ~OutlineWidget() override; 0026 0027 private: 0028 OutlineViewPlugin* m_plugin; 0029 OutlineModel* m_model; 0030 QTreeView* m_tree; 0031 QSortFilterProxyModel* m_proxy; 0032 QLineEdit* m_filter; 0033 QAction* m_sortAlphabeticallyAction; 0034 0035 Q_DISABLE_COPY(OutlineWidget) 0036 public Q_SLOTS: 0037 void activated(const QModelIndex& index); 0038 void expandFirstLevel(); 0039 };