KDEUI
kled.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 KLED_H
00021 #define KLED_H
00022
00023 #include <kdeui_export.h>
00024
00025 #include <QtGui/QWidget>
00026
00027 class QColor;
00028
00044 class KDEUI_EXPORT KLed : public QWidget
00045 {
00046 Q_OBJECT
00047 Q_ENUMS( State Shape Look )
00048 Q_PROPERTY( State state READ state WRITE setState )
00049 Q_PROPERTY( Shape shape READ shape WRITE setShape )
00050 Q_PROPERTY( Look look READ look WRITE setLook )
00051 Q_PROPERTY( QColor color READ color WRITE setColor )
00052 Q_PROPERTY( int darkFactor READ darkFactor WRITE setDarkFactor )
00053
00054 public:
00055
00060 enum State { Off, On };
00061
00066 enum Shape { Rectangular, Circular };
00067
00088 enum Look { Flat, Raised, Sunken };
00089
00096 explicit KLed( QWidget *parent = 0 );
00097
00106 explicit KLed( const QColor &color, QWidget *parent = 0 );
00107
00120 KLed( const QColor& color, KLed::State state, KLed::Look look, KLed::Shape shape,
00121 QWidget *parent = 0 );
00122
00127 ~KLed();
00128
00135 QColor color() const;
00136
00143 State state() const;
00144
00151 Look look() const;
00152
00159 Shape shape() const;
00160
00167 int darkFactor() const;
00168
00184 void setColor( const QColor& color );
00185
00195 void setState( State state );
00196
00210 void setLook( Look look );
00211
00218 void setShape( Shape shape );
00219
00233 void setDarkFactor( int darkFactor );
00234
00235 virtual QSize sizeHint() const;
00236 virtual QSize minimumSizeHint() const;
00237
00238 public Q_SLOTS:
00239
00245 void toggle();
00246
00253 void on();
00254
00261 void off();
00262
00263 protected:
00267 virtual int ledWidth() const;
00268
00272 virtual void paintFlat();
00273
00277 virtual void paintRaised();
00278
00282 virtual void paintSunken();
00283
00287 virtual void paintRect();
00288
00293 virtual void paintRectFrame( bool raised );
00294
00295 void paintEvent( QPaintEvent* );
00296
00301 bool paintCachedPixmap();
00302
00303 private:
00304 class Private;
00305 Private * const d;
00306 };
00307
00308 #endif