File indexing completed on 2024-04-14 03:54:00

0001 /*
0002     SPDX-FileCopyrightText: 2010 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.net>
0003     SPDX-FileContributor: Stephen Kelly <stephen@kdab.com>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007 
0008 #ifndef STATESAVERWIDGET_H
0009 #define STATESAVERWIDGET_H
0010 
0011 #include <QWidget>
0012 
0013 #include <KViewStateSaver>
0014 
0015 class QTreeView;
0016 
0017 class DynamicTreeWidget;
0018 
0019 class DynamicTreeStateSaver : public KViewStateSaver
0020 {
0021     Q_OBJECT
0022 public:
0023     DynamicTreeStateSaver(QObject *parent = nullptr);
0024 
0025 protected:
0026     /* reimp */ QModelIndex indexFromConfigString(const QAbstractItemModel *model, const QString &key) const;
0027     /* reimp */ QString indexToConfigString(const QModelIndex &index) const;
0028 };
0029 
0030 class StateSaverWidget : public QWidget
0031 {
0032     Q_OBJECT
0033 public:
0034     StateSaverWidget(QWidget *parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags());
0035     ~StateSaverWidget();
0036 
0037 private Q_SLOTS:
0038     void saveState();
0039     void restoreState();
0040 
0041 private:
0042     DynamicTreeWidget *m_dynamicTreeWidget;
0043     QTreeView *m_view;
0044 };
0045 
0046 #endif