File indexing completed on 2024-05-26 04:33:02
0001 /* 0002 * SPDX-FileCopyrightText: 2017 Wolthera van Hövell tot Westerflier <griffinvalley@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #ifndef KIS_WDG_ASCCDL_H 0007 #define KIS_WDG_ASCCDL_H 0008 #include <kis_config_widget.h> 0009 #include <QWidget> 0010 #include "ui_wdg_asccdl.h" 0011 #include <KisVisualRectangleSelectorShape.h> 0012 #include <KisVisualEllipticalSelectorShape.h> 0013 0014 class Ui_WdgASCCDL; 0015 0016 /** 0017 * @brief The KisASCCDLConfigWidget class 0018 * this handles the configuration widget for the slope offset power filter. 0019 * 0020 * Future improvements: 0021 * 1. Have the cs that the widgets gets when being created be actually the image cs. 0022 * 2. Have the shape be force to a HSV wheel with a slider. 0023 * 3. Make it easier to select power higher than 1.0 (it is possible, but cumbersome) 0024 * 4. make it easier to access ocio from filters. 0025 * 5. Implement saturation whenever we can figure out what the formula is for that. 0026 * 6. Implement a way to retrieve and store xml data according to the asc-cdl spec... 0027 * 0028 * The main problem for 5 and 6 is that I am unable to find the actual asc-cdl spec. 0029 */ 0030 0031 class KisASCCDLConfigWidget : public KisConfigWidget 0032 { 0033 0034 Q_OBJECT 0035 0036 public: 0037 KisASCCDLConfigWidget(QWidget * parent, const KoColorSpace *cs); 0038 ~KisASCCDLConfigWidget() override; 0039 0040 KisPropertiesConfigurationSP configuration() const override; 0041 void setConfiguration(const KisPropertiesConfigurationSP config) override; 0042 Ui_WdgASCCDL *m_page; 0043 const KoColorSpace *m_cs; 0044 public Q_SLOTS: 0045 void slopeColorChanged(const KoColor &c); 0046 void offsetColorChanged(const KoColor &c); 0047 void powerColorChanged(const KoColor &c); 0048 }; 0049 0050 #endif //KIS_WDG_ASCCDL_H