File indexing completed on 2024-05-19 04:28:52

0001 /*
0002  *  SPDX-FileCopyrightText: 2007 Cyrille Berger <cberger@cberger.net>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef _KIS_BOOKMARKED_CONFIGURATIONS_EDITOR_H_
0008 #define _KIS_BOOKMARKED_CONFIGURATIONS_EDITOR_H_
0009 
0010 #include <QDialog>
0011 #include <kritaui_export.h>
0012 
0013 #include <kis_serializable_configuration.h>
0014 
0015 class KisBookmarkedConfigurationsModel;
0016 class QItemSelection;
0017 
0018 /**
0019  * This dialog is used to edit the content of a bookmark manager
0020  */
0021 class KRITAUI_EXPORT KisBookmarkedConfigurationsEditor : public QDialog
0022 {
0023     Q_OBJECT
0024 public:
0025     /**
0026      * @param parent
0027      * @param manager the model representing the bookmark manager
0028      * @param currentConfig is used if the user choose to create a new configuration
0029      *                      entry or to replace an existing entry
0030      */
0031     KisBookmarkedConfigurationsEditor(QWidget* parent, KisBookmarkedConfigurationsModel* manager, const KisSerializableConfigurationSP currentConfig);
0032     ~KisBookmarkedConfigurationsEditor() override;
0033 private Q_SLOTS:
0034     void currentConfigChanged(const QItemSelection& selected, const QItemSelection&);
0035     void addCurrentConfiguration();
0036     void deleteConfiguration();
0037 private:
0038     struct Private;
0039     Private* const d;
0040 };
0041 
0042 #endif