File indexing completed on 2024-04-14 03:53:59

0001 /*
0002     This file is part of the proxy model test suite.
0003 
0004     SPDX-FileCopyrightText: 2009 Stephen Kelly <steveire@gmail.com>
0005 
0006     SPDX-License-Identifier: LGPL-2.1-or-later
0007 */
0008 
0009 #ifndef DESCENDANTPM_WIDGET_H
0010 #define DESCENDANTPM_WIDGET_H
0011 
0012 #include <QWidget>
0013 
0014 class DynamicTreeModel;
0015 class QTreeView;
0016 class QLineEdit;
0017 class QItemSelectionModel;
0018 
0019 class KDescendantsProxyModel;
0020 class KSelectionProxyModel;
0021 
0022 class ModelEventLogger;
0023 
0024 class DescendantProxyModelWidget : public QWidget
0025 {
0026     Q_OBJECT
0027 public:
0028     DescendantProxyModelWidget(QWidget *parent = nullptr);
0029     ~DescendantProxyModelWidget() override;
0030 
0031 protected Q_SLOTS:
0032     void doMatch(const QString &matchData);
0033     void refreshMatch();
0034 
0035 private:
0036     DynamicTreeModel *m_rootModel;
0037     ModelEventLogger *m_eventLogger;
0038     KDescendantsProxyModel *m_descProxyModel;
0039     KSelectionProxyModel *m_selectionProxyModel;
0040     QItemSelectionModel *m_itemSelectionModel;
0041     QTreeView *m_descView;
0042     QLineEdit *m_lineEdit;
0043 };
0044 
0045 #endif