KDEUI
kcolorbutton.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KCOLORBUTTON_H
00021 #define KCOLORBUTTON_H
00022
00023 #include <kdeui_export.h>
00024
00025 #include <QtGui/QPushButton>
00026
00027 class KColorButtonPrivate;
00037 class KDEUI_EXPORT KColorButton : public QPushButton
00038 {
00039 Q_OBJECT
00040 Q_PROPERTY( QColor color READ color WRITE setColor USER true )
00041 Q_PROPERTY( QColor defaultColor READ defaultColor WRITE setDefaultColor )
00042
00043 public:
00047 explicit KColorButton( QWidget *parent = 0 );
00048
00052 explicit KColorButton( const QColor &c, QWidget *parent = 0 );
00053
00057 KColorButton( const QColor &c, const QColor &defaultColor, QWidget *parent = 0 );
00058
00059 virtual ~KColorButton();
00060
00064 QColor color() const;
00065
00069 void setColor( const QColor &c );
00070
00075 QColor defaultColor() const;
00076
00080 void setDefaultColor( const QColor &c );
00081
00082 QSize sizeHint() const;
00083 QSize minimumSizeHint() const;
00084
00085 Q_SIGNALS:
00090 void changed( const QColor &newColor );
00091
00092 protected:
00093 virtual void paintEvent( QPaintEvent *pe );
00094 virtual void dragEnterEvent( QDragEnterEvent *);
00095 virtual void dropEvent( QDropEvent *);
00096 virtual void mousePressEvent( QMouseEvent *e );
00097 virtual void mouseMoveEvent( QMouseEvent *e);
00098 virtual void keyPressEvent( QKeyEvent *e );
00099
00100 private:
00101 class KColorButtonPrivate;
00102 KColorButtonPrivate * const d;
00103
00104 Q_PRIVATE_SLOT( d, void _k_chooseColor() )
00105 };
00106
00107 #endif
00108