diff options
Diffstat (limited to 'examples/demo/qasteroids/ledmeter.h')
-rw-r--r-- | examples/demo/qasteroids/ledmeter.h | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/examples/demo/qasteroids/ledmeter.h b/examples/demo/qasteroids/ledmeter.h new file mode 100644 index 0000000..d0f2091 --- /dev/null +++ b/examples/demo/qasteroids/ledmeter.h @@ -0,0 +1,53 @@ +/* + * KAsteroids - Copyright (c) Martin R. Jones 1997 + * + * Part of the KDE project + */ + +#ifndef __LEDMETER_H__ +#define __LEDMETER_H__ + +#include <qframe.h> +#include <qptrlist.h> + + +class KALedMeter : public QFrame +{ + Q_OBJECT +public: + KALedMeter( QWidget *parent ); + + int range() const { return mRange; } + void setRange( int r ); + + int count() const { return mCount; } + void setCount( int c ); + + int value () const { return mValue; } + + void addColorRange( int pc, const QColor &c ); + +public slots: + void setValue( int v ); + +protected: + virtual void resizeEvent( QResizeEvent * ); + virtual void drawContents( QPainter * ); + void calcColorRanges(); + +protected: + struct ColorRange + { + int mPc; + int mValue; + QColor mColor; + }; + + int mRange; + int mCount; + int mCurrentCount; + int mValue; + QPtrList<ColorRange> mCRanges; +}; + +#endif |