FLTK 1.3.0
|
00001 // 00002 // "$Id$" 00003 // 00004 // Slider header file for the Fast Light Tool Kit (FLTK). 00005 // 00006 // Copyright 1998-2010 by Bill Spitzak and others. 00007 // 00008 // This library is free software; you can redistribute it and/or 00009 // modify it under the terms of the GNU Library General Public 00010 // License as published by the Free Software Foundation; either 00011 // version 2 of the License, or (at your option) any later version. 00012 // 00013 // This library is distributed in the hope that it will be useful, 00014 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00016 // Library General Public License for more details. 00017 // 00018 // You should have received a copy of the GNU Library General Public 00019 // License along with this library; if not, write to the Free Software 00020 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 00021 // USA. 00022 // 00023 // Please report all bugs and problems on the following page: 00024 // 00025 // http://www.fltk.org/str.php 00026 // 00027 00028 /* \file 00029 Fl_Slider widget . */ 00030 00031 #ifndef Fl_Slider_H 00032 #define Fl_Slider_H 00033 00034 #ifndef Fl_Valuator_H 00035 #include "Fl_Valuator.H" 00036 #endif 00037 00038 // values for type(), lowest bit indicate horizontal: 00039 #define FL_VERT_SLIDER 0 00040 #define FL_HOR_SLIDER 1 00041 #define FL_VERT_FILL_SLIDER 2 00042 #define FL_HOR_FILL_SLIDER 3 00043 #define FL_VERT_NICE_SLIDER 4 00044 #define FL_HOR_NICE_SLIDER 5 00045 00070 class FL_EXPORT Fl_Slider : public Fl_Valuator { 00071 00072 float slider_size_; 00073 uchar slider_; 00074 void _Fl_Slider(); 00075 void draw_bg(int, int, int, int); 00076 00077 protected: 00078 00079 // these allow subclasses to put the slider in a smaller area: 00080 void draw(int, int, int, int); 00081 int handle(int, int, int, int, int); 00082 void draw(); 00083 00084 public: 00085 00086 int handle(int); 00087 Fl_Slider(int X,int Y,int W,int H, const char *L = 0); 00088 Fl_Slider(uchar t,int X,int Y,int W,int H, const char *L); 00089 00090 int scrollvalue(int pos,int size,int first,int total); 00091 void bounds(double a, double b); 00092 00096 float slider_size() const {return slider_size_;} 00097 00107 void slider_size(double v); 00108 00110 Fl_Boxtype slider() const {return (Fl_Boxtype)slider_;} 00111 00113 void slider(Fl_Boxtype c) {slider_ = c;} 00114 }; 00115 00116 #endif 00117 00118 // 00119 // End of "$Id$". 00120 //