#include <QtCore>
#include <QWidget>
+#include <QFrame>
-class QSpinBox;
class QFrame;
#ifdef Q_WS_X11
#include <X11/Xlib.h>
-class KCDPickerFilter;
#endif
+
+class MyFrame : public QFrame
+{
+ Q_OBJECT
+public:
+ explicit MyFrame(QWidget* parent = 0);
+
+protected:
+ void hideEvent ( QHideEvent * event );
+
+signals:
+ void getColor();
+};
+
/**
* @class ColorPickerWidget
* @brief A widget to pick a color anywhere on the screen.
public:
/** @brief Sets up the widget. */
- ColorPickerWidget(QWidget *parent = 0);
+ explicit ColorPickerWidget(QWidget *parent = 0);
/** @brief Makes sure the event filter is removed. */
virtual ~ColorPickerWidget();
protected:
- virtual void mousePressEvent(QMouseEvent *event);
- virtual void mouseReleaseEvent(QMouseEvent *event);
- virtual void mouseMoveEvent(QMouseEvent *event);
- virtual void keyPressEvent(QKeyEvent *event);
+ void mousePressEvent(QMouseEvent *event);
+ void mouseReleaseEvent(QMouseEvent *event);
+ void mouseMoveEvent(QMouseEvent *event);
+ bool eventFilter(QObject *object, QEvent *event);
private:
/** @brief Closes the event filter and makes mouse and keyboard work again on other widgets/windows. */
QFrame *m_grabRectFrame;
#ifdef Q_WS_X11
XImage *m_image;
- KCDPickerFilter *m_filter;
#else
QImage m_image;
#endif
-
+
private slots:
/** @brief Sets up an event filter for picking a color. */
void slotSetupEventFilter();
void slotGetAverageColor();
signals:
- void colorPicked(QColor);
+ void colorPicked(const QColor&);
void displayMessage(const QString&, int);
+ /** @brief When user wants to pick a color, it's better to disable filter so we get proper color values. */
+ void disableCurrentFilter(bool);
};
#endif