FLTK 1.3.0
|
00001 // 00002 // "$Id$" 00003 // 00004 // Counter 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_Counter widget . */ 00030 00031 // A numerical value with up/down step buttons. From Forms. 00032 00033 #ifndef Fl_Counter_H 00034 #define Fl_Counter_H 00035 00036 #ifndef Fl_Valuator_H 00037 #include "Fl_Valuator.H" 00038 #endif 00039 00040 // values for type(): 00041 #define FL_NORMAL_COUNTER 0 00042 #define FL_SIMPLE_COUNTER 1 00057 class FL_EXPORT Fl_Counter : public Fl_Valuator { 00058 00059 Fl_Font textfont_; 00060 Fl_Fontsize textsize_; 00061 Fl_Color textcolor_; 00062 double lstep_; 00063 uchar mouseobj; 00064 static void repeat_callback(void *); 00065 int calc_mouseobj(); 00066 void increment_cb(); 00067 00068 protected: 00069 00070 void draw(); 00071 00072 public: 00073 00074 int handle(int); 00075 00076 Fl_Counter(int X, int Y, int W, int H, const char* L = 0); 00077 ~Fl_Counter(); 00078 00084 void lstep(double a) {lstep_ = a;} 00085 00090 void step(double a,double b) {Fl_Valuator::step(a); lstep_ = b;} 00091 00096 void step(double a) {Fl_Valuator::step(a);} 00097 00101 double step() const {return Fl_Valuator::step();} 00102 00104 Fl_Font textfont() const {return textfont_;} 00106 void textfont(Fl_Font s) {textfont_ = s;} 00107 00109 Fl_Fontsize textsize() const {return textsize_;} 00111 void textsize(Fl_Fontsize s) {textsize_ = s;} 00112 00114 Fl_Color textcolor() const {return textcolor_;} 00116 void textcolor(Fl_Color s) {textcolor_ = s;} 00117 00118 }; 00119 00120 #endif 00121 00122 // 00123 // End of "$Id$". 00124 //