File indexing completed on 2024-12-22 04:15:18

0001 /*
0002  *  SPDX-FileCopyrightText: 2009 Cyrille Berger <cberger@cberger.net>
0003  *
0004  *  SPDX-License-Identifier: LGPL-2.0-or-later
0005  */
0006 #ifndef DODGE_BURN_H
0007 #define DODGE_BURN_H
0008 
0009 #include "filter/kis_color_transformation_filter.h"
0010 
0011 #include "kis_config_widget.h"
0012 
0013 
0014 class KisFilterDodgeBurn : public KisColorTransformationFilter
0015 {
0016 public:
0017     enum Type {
0018       SHADOWS,
0019       MIDTONES,
0020       HIGHLIGHTS
0021     };
0022 public:
0023     KisFilterDodgeBurn(const QString& id, const QString& prefix, const QString& name );
0024 public:
0025 
0026     KoColorTransformation* createTransformation(const KoColorSpace* cs, const KisFilterConfigurationSP config) const override;
0027     KisConfigWidget * createConfigurationWidget(QWidget* parent, const KisPaintDeviceSP dev, bool useForMasks) const override;
0028     KisFilterConfigurationSP defaultConfiguration(KisResourcesInterfaceSP resourcesInterface) const override;
0029 private:
0030     QString m_prefix;
0031 };
0032 
0033 class Ui_DodgeBurnConfigurationBaseWidget;
0034 
0035 class KisDodgeBurnConfigWidget : public KisConfigWidget
0036 {
0037 
0038 public:
0039     KisDodgeBurnConfigWidget(QWidget * parent, const QString& id);
0040     ~KisDodgeBurnConfigWidget() override;
0041 
0042     KisPropertiesConfigurationSP  configuration() const override;
0043     void setConfiguration(const KisPropertiesConfigurationSP config) override;
0044     QString m_id;
0045     Ui_DodgeBurnConfigurationBaseWidget * m_page;
0046 };
0047 
0048 #endif