19#ifndef COLORWHEELITEM_H
20#define COLORWHEELITEM_H
23#include <QQuickPaintedItem>
25class ColorWheelItem :
public QQuickPaintedItem
28 Q_PROPERTY(QColor color READ color WRITE setColor NOTIFY colorChanged)
29 Q_PROPERTY(
int red READ red WRITE setRed)
30 Q_PROPERTY(
int green READ green WRITE setGreen)
31 Q_PROPERTY(
int blue READ blue WRITE setBlue)
32 Q_PROPERTY(qreal redF READ redF WRITE setRedF)
33 Q_PROPERTY(qreal greenF READ greenF WRITE setGreenF)
34 Q_PROPERTY(qreal blueF READ blueF WRITE setBlueF)
35 Q_PROPERTY(qreal step READ step WRITE setStep)
37 explicit ColorWheelItem(QQuickItem *parent = 0);
39 void setColor(
const QColor &color);
43 void setGreen(
int green);
45 void setBlue(
int blue);
47 void setRedF(qreal red);
49 void setGreenF(qreal green);
51 void setBlueF(qreal blue);
53 void setStep(qreal blue);
56 void colorChanged(
const QColor &color);
59 void mousePressEvent(QMouseEvent *event);
60 void mouseMoveEvent(QMouseEvent *event);
61 void mouseReleaseEvent(QMouseEvent *event);
62 void hoverMoveEvent(QHoverEvent *event);
63 void wheelEvent(QWheelEvent *event);
64 void paint(QPainter *painter);
72 QRegion m_wheelRegion;
73 QRegion m_sliderRegion;
79 int wheelSize()
const;
80 QColor colorForPoint(
const QPoint &point);
82 void drawWheelDot(QPainter &painter);
83 void drawSliderBar(QPainter &painter);
85 void updateCursor(
const QPoint &pos);