File indexing completed on 2024-05-26 04:30:03
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_DLG_FILTER_H_ 0008 #define _KIS_DLG_FILTER_H_ 0009 0010 #include <QDialog> 0011 0012 #include <kis_types.h> 0013 0014 class KisViewManager; 0015 class KisFilterManager; 0016 0017 class KisDlgFilter : public QDialog 0018 { 0019 0020 Q_OBJECT 0021 0022 public: 0023 0024 KisDlgFilter(KisViewManager *view, KisNodeSP node, KisFilterManager *filterManager, QWidget *parent = 0); 0025 0026 ~KisDlgFilter() override; 0027 0028 void setFilter(KisFilterSP f, KisFilterConfigurationSP overrideDefaultConfig); 0029 0030 protected Q_SLOTS: 0031 0032 void slotOnAccept(); 0033 void slotOnReject(); 0034 0035 void createMask(); 0036 0037 void enablePreviewToggled(bool checked); 0038 0039 void filterSelectionChanged(); 0040 0041 public Q_SLOTS: 0042 void adjustSize(); 0043 0044 private: 0045 void startApplyingFilter(KisFilterConfigurationSP config); 0046 void setDialogTitle(KisFilterSP f); 0047 0048 0049 private Q_SLOTS: 0050 void slotFilterWidgetSizeChanged(); 0051 void updatePreview(); 0052 0053 private: 0054 struct Private; 0055 KisDlgFilter::Private* const d; 0056 }; 0057 0058 #endif