File indexing completed on 2024-06-16 04:16:01

0001 /*
0002  *  SPDX-FileCopyrightText: 2010 Adam Celarek <kdedev at xibo dot at>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 
0007 #ifndef KIS_COLOR_SELECTOR_SIMPLE_H
0008 #define KIS_COLOR_SELECTOR_SIMPLE_H
0009 
0010 typedef unsigned int QRgb;
0011 
0012 #include <QColor>
0013 #include <QImage>
0014 
0015 #include "KoColor.h"
0016 #include "kis_color_selector_component.h"
0017 
0018 namespace Acs {
0019     class PixelCacheRenderer;
0020 }
0021 
0022 
0023 class KisColorSelectorSimple : public KisColorSelectorComponent
0024 {
0025 Q_OBJECT
0026 public:
0027     explicit KisColorSelectorSimple(KisColorSelector *parent);
0028     void setColor(const KoColor &color) override;
0029 
0030 protected:
0031     void paint(QPainter*) override;
0032     KoColor selectColor(int x, int y) override;
0033 
0034 private:
0035     friend class Acs::PixelCacheRenderer;
0036     KoColor colorAt(float x, float y);
0037 
0038 private:
0039     QPointF m_lastClickPos;
0040     QImage m_pixelCache;
0041     qreal R {0.0};
0042     qreal G {0.0};
0043     qreal B {0.0};
0044     qreal Gamma {0.0};
0045 };
0046 
0047 #endif