File indexing completed on 2024-06-23 05:07:19
0001 /* 0002 SPDX-FileCopyrightText: 2010 Klarälvdalens Datakonsult AB, 0003 a KDAB Group company, info@kdab.net 0004 SPDX-FileContributor: Stephen Kelly <stephen@kdab.com> 0005 0006 SPDX-License-Identifier: LGPL-2.0-or-later 0007 */ 0008 0009 #pragma once 0010 0011 #include <KConfigViewStateSaver> 0012 0013 // AkonadiCore 0014 #include "akonadi/collection.h" 0015 #include "akonadi/item.h" 0016 0017 #include "akonadiwidgets_export.h" 0018 0019 namespace Akonadi 0020 { 0021 class AKONADIWIDGETS_EXPORT ETMViewStateSaver : public KConfigViewStateSaver // krazy:exclude=dpointer 0022 { 0023 Q_OBJECT 0024 public: 0025 explicit ETMViewStateSaver(QObject *parent = nullptr); 0026 0027 void selectCollections(const Akonadi::Collection::List &list); 0028 void selectCollections(const QList<Akonadi::Collection::Id> &list); 0029 void selectItems(const Akonadi::Item::List &list); 0030 void selectItems(const QList<Akonadi::Item::Id> &list); 0031 0032 void setCurrentItem(const Akonadi::Item &item); 0033 void setCurrentCollection(const Akonadi::Collection &collection); 0034 0035 protected: 0036 /* reimp */ 0037 QModelIndex indexFromConfigString(const QAbstractItemModel *model, const QString &key) const override; 0038 QString indexToConfigString(const QModelIndex &index) const override; 0039 }; 0040 0041 }