File indexing completed on 2023-09-24 04:09:50
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