X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fslider.cpp;h=52a4b4d3b97ccf11d4209b767619018aec3d8674;hb=ed9873ba7ee862ad76937f579fe371c1a27d5715;hp=e7f67c111016cd87b3eb348883e4788292b1bb97;hpb=c1f038acb91eb3bfaa34dfd4729d19ed3f871a42;p=libs%2Fgltk.git diff --git a/source/slider.cpp b/source/slider.cpp index e7f67c1..52a4b4d 100644 --- a/source/slider.cpp +++ b/source/slider.cpp @@ -1,3 +1,10 @@ +/* $Id$ + +This file is part of libmspgltk +Copyright © 2007 Mikko Rasa, Mikkosoft Productions +Distributed under the LGPL +*/ + #include "slider.h" namespace Msp { @@ -9,11 +16,12 @@ Slider::Slider(const Resources &r): max(1), value(0), step(0.1) -{ -} +{ } void Slider::set_value(double v) { + double old_value=value; + if(vmax) @@ -23,6 +31,22 @@ void Slider::set_value(double v) unsigned steps=static_cast((v-min)/step+0.5); value=min+steps*step; } + + if(value!=old_value) + signal_value_changed.emit(value); +} + +void Slider::set_range(double a, double b) +{ + min=a; + max=b; + set_value(value); +} + +void Slider::set_step(double s) +{ + step=s; + set_value(value); } } // namespace GLtk