20#ifndef COLORWHEELITEM_H
21#define COLORWHEELITEM_H
23#include <QQuickPaintedItem>
26class ColorWheelItem :
public QQuickPaintedItem
29 Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged)
30 Q_PROPERTY(
int red READ red WRITE setRed)
31 Q_PROPERTY(
int green READ green WRITE setGreen)
32 Q_PROPERTY(
int blue READ blue WRITE setBlue)
33 Q_PROPERTY(qreal redF READ redF WRITE setRedF)
34 Q_PROPERTY(qreal greenF READ greenF WRITE setGreenF)
35 Q_PROPERTY(qreal blueF READ blueF WRITE setBlueF)
36 Q_PROPERTY(qreal step READ step WRITE setStep)
38 explicit ColorWheelItem(QQuickItem *parent = 0);
40 void setColor(
const QColor &color);
44 void setGreen(
int green);
46 void setBlue(
int blue);
48 void setRedF(qreal red);
50 void setGreenF(qreal green);
52 void setBlueF(qreal blue);
54 void setStep(qreal blue);
58 void colorChanged(
const QColor &color);
61 void mousePressEvent(QMouseEvent *event);
62 void mouseMoveEvent(QMouseEvent *event);
63 void mouseReleaseEvent(QMouseEvent *event);
64 void hoverMoveEvent(QHoverEvent *event);
65 void wheelEvent(QWheelEvent *event);
66 void paint(QPainter *painter);
74 QRegion m_wheelRegion;
75 QRegion m_sliderRegion;
81 int wheelSize()
const;
82 QColor colorForPoint(
const QPoint &point);
84 void drawWheelDot(QPainter &painter);
85 void drawSliderBar(QPainter &painter);
87 void updateCursor(
const QPoint &pos);