File indexing completed on 2025-01-05 05:23:47

0001 /*
0002  This file is part of the Okteta Kasten Framework, made within the KDE community.
0003 
0004  SPDX-FileCopyrightText: 2009 Friedrich W. H. Kossebau <kossebau@kde.org>
0005  SPDX-FileCopyrightText: 2009, 2012 Alex Richardson <alex.richardson@gmx.de>
0006 
0007  SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
0008  */
0009 
0010 #ifndef KASTEN_STRUCTURESSELECTIONDIALOG_HPP
0011 #define KASTEN_STRUCTURESSELECTIONDIALOG_HPP
0012 
0013 // Qt
0014 #include <QDialog>
0015 #include <QMap>
0016 
0017 namespace Kasten {
0018 class StructureDefinitionFile;
0019 }
0020 class StructureAddRemoveWidget;
0021 class StructureEnabledList;
0022 class QStringList;
0023 
0024 class StructuresSelectionDialog : public QDialog
0025 {
0026     Q_OBJECT
0027 
0028 public:
0029     explicit StructuresSelectionDialog(const QMap<QString, Kasten::StructureDefinitionFile*>& structureDefs,
0030                                        const StructureEnabledList& enabledList,
0031                                        QWidget* parent = nullptr);
0032 
0033 Q_SIGNALS:
0034     void structuresAccepted(const QStringList& structures);
0035 
0036 private Q_SLOTS:
0037     void onFinished(int result);
0038 
0039 private:
0040     StructureAddRemoveWidget* m_structureAddRemoveWidget;
0041 };
0042 
0043 #endif
0044