File indexing completed on 2024-04-28 05:27:04
0001 /* This file is part of the KDE project 0002 SPDX-FileCopyrightText: 2022 Marco Rebhan <me@dblsaiko.net> 0003 0004 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only 0005 */ 0006 0007 #ifndef MULTIAPPLYDIALOG_H 0008 #define MULTIAPPLYDIALOG_H 0009 0010 #include <QDialog> 0011 #include <QList> 0012 0013 class TypesListItem; 0014 class TypesListProxyItem; 0015 class QTreeWidget; 0016 class QTreeWidgetItem; 0017 0018 class MultiApplyDialog : public QDialog 0019 { 0020 Q_OBJECT 0021 0022 public: 0023 explicit MultiApplyDialog(const TypesListItem *source, const QList<TypesListItem *> &sourceItemList, QWidget *parent = nullptr); 0024 ~MultiApplyDialog() override; 0025 0026 const QList<TypesListItem *> selected() const; 0027 0028 private: 0029 void load(const TypesListItem *source, const QList<TypesListItem *> &sourceItemList); 0030 0031 private Q_SLOTS: 0032 void onItemChanged(QTreeWidgetItem *, int column); 0033 0034 private: 0035 QTreeWidget *m_mimeTree; 0036 QList<TypesListProxyItem *> m_itemList; 0037 QList<TypesListItem *> m_selected; 0038 TypesListProxyItem *m_source = nullptr; 0039 }; 0040 0041 #endif