diff options
Diffstat (limited to 'tutorial/t8/lcdrange.cpp')
-rw-r--r-- | tutorial/t8/lcdrange.cpp | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/tutorial/t8/lcdrange.cpp b/tutorial/t8/lcdrange.cpp new file mode 100644 index 0000000..b62cfbb --- /dev/null +++ b/tutorial/t8/lcdrange.cpp @@ -0,0 +1,47 @@ +/**************************************************************** +** +** Implementation of LCDRange class, Qt tutorial 8 +** +****************************************************************/ + +#include "lcdrange.h" + +#include <qslider.h> +#include <qlcdnumber.h> + +LCDRange::LCDRange( QWidget *parent, const char *name ) + : QVBox( parent, name ) +{ + QLCDNumber *lcd = new QLCDNumber( 2, this, "lcd" ); + slider = new QSlider( Horizontal, this, "slider" ); + slider->setRange( 0, 99 ); + slider->setValue( 0 ); + connect( slider, SIGNAL(valueChanged(int)), + lcd, SLOT(display(int)) ); + connect( slider, SIGNAL(valueChanged(int)), + SIGNAL(valueChanged(int)) ); + + setFocusProxy( slider ); +} + +int LCDRange::value() const +{ + return slider->value(); +} + +void LCDRange::setValue( int value ) +{ + slider->setValue( value ); +} + +void LCDRange::setRange( int minVal, int maxVal ) +{ + if ( minVal < 0 || maxVal > 99 || minVal > maxVal ) { + qWarning( "LCDRange::setRange(%d,%d)\n" + "\tRange must be 0..99\n" + "\tand minVal must not be greater than maxVal", + minVal, maxVal ); + return; + } + slider->setRange( minVal, maxVal ); +} |