File indexing completed on 2024-05-12 15:59:07
0001 /* 0002 * SPDX-FileCopyrightText: 2017 Boudewijn Rempt <boud@valdyas.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 #ifndef PRESETCHOOSER_H 0007 #define PRESETCHOOSER_H 0008 0009 #include <QObject> 0010 #include <QWidget> 0011 0012 #include <kis_preset_chooser.h> 0013 0014 #include "kritalibkis_export.h" 0015 #include "libkis.h" 0016 0017 class Resource; 0018 0019 /** 0020 * @brief The PresetChooser widget wraps the KisPresetChooser widget. 0021 * The widget provides for selecting brush presets. It has a tagging 0022 * bar and a filter field. It is not automatically synchronized with 0023 * the currently selected preset in the current Windows. 0024 */ 0025 class KRITALIBKIS_EXPORT PresetChooser : public KisPresetChooser 0026 { 0027 Q_OBJECT 0028 public: 0029 PresetChooser(QWidget *parent = 0); 0030 ~PresetChooser() override {} 0031 0032 public Q_SLOTS: 0033 0034 /** 0035 * Make the given preset active. 0036 */ 0037 void setCurrentPreset(Resource *resource); 0038 0039 /** 0040 * @return a Resource wrapper around the currently selected 0041 * preset. 0042 */ 0043 Resource *currentPreset() const; 0044 0045 Q_SIGNALS: 0046 0047 /** 0048 * Emitted whenever a user selects the given preset. 0049 */ 0050 void presetSelected(Resource resource); 0051 0052 /** 0053 * Emitted whenever a user clicks on the given preset. 0054 */ 0055 void presetClicked(Resource resource); 0056 0057 private Q_SLOTS: 0058 0059 void slotResourceSelected(KoResourceSP resource); 0060 void slotResourceClicked(KoResourceSP resource); 0061 }; 0062 0063 #endif // PRESETCHOOSER_H