X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fslider.h;h=6c95526f13f2699f14c89049fe5f252510383a2e;hb=ef4660c4bdf38e126e13b426649fc2f997027b65;hp=8eb373667405dbb17cc25bb22fc5f9167b985eb9;hpb=c2635c5a3dca6a6cea5562fd387beb0662b18cf0;p=libs%2Fgltk.git diff --git a/source/slider.h b/source/slider.h index 8eb3736..6c95526 100644 --- a/source/slider.h +++ b/source/slider.h @@ -16,16 +16,29 @@ namespace GLtk { /** Sliders are used to adjust numeric values visually. This class provides the -common interface for sliders - see classes HSlider and VSlider (NYI) for -concrete variations. +common interface for sliders - see classes HSlider and VSlider for concrete +variations. */ class Slider: public Widget { +public: + class Loader: public Widget::Loader + { + public: + Loader(Slider &); + Slider &get_object() const; + }; + protected: double min, max; double value; double step; + bool dragging; + double drag_start_pos; + double drag_start_value; + unsigned drag_area_size; + public: sigc::signal signal_value_changed; @@ -36,6 +49,10 @@ public: void set_range(double, double); void set_step(double); double get_value() const { return value; } +protected: + void start_drag(int); + void drag(int); + void end_drag(); }; } // namespace GLtk