?? fl_valuator.h
字號:
//// "$Id: Fl_Valuator.H,v 1.2 2002/12/01 15:38:37 neurosurg Exp $"//// Valuator header file for the Fast Light Tool Kit (FLTK).//// Copyright 1998-2002 by Bill Spitzak and others.//// This library is free software; you can redistribute it and/or// modify it under the terms of the GNU Library General Public// License as published by the Free Software Foundation; either// version 2 of the License, or (at your option) any later version.//// This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU// Library General Public License for more details.//// You should have received a copy of the GNU Library General Public// License along with this library; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307// USA.//// Please report all bugs and problems to "fltk-bugs@fltk.org".//#ifndef Fl_Valuator_H#define Fl_Valuator_H#ifndef Fl_Widget_H#include "Fl_Widget.H"#endif// shared type() values for classes that work in both directions:#define FL_VERTICAL 0#define FL_HORIZONTAL 1class FL_EXPORT Fl_Valuator : public Fl_Widget { double value_; double previous_value_; double min, max; // truncates to this range *after* rounding double A; int B; // rounds to multiples of A/B, or no rounding if A is zeroprotected: int horizontal() const {return type()&1;} Fl_Valuator(int X, int Y, int W, int H, const char* L); double previous_value() const {return previous_value_;} void handle_push() {previous_value_ = value_;} double softclamp(double); void handle_drag(double newvalue); void handle_release(); // use drag() value virtual void value_damage(); // cause damage() due to value() changing void set_value(double v) {value_ = v;}public: void bounds(double a, double b) {min=a; max=b;} double minimum() const {return min;} void minimum(double a) {min = a;} double maximum() const {return max;} void maximum(double a) {max = a;} void range(double a, double b) {min = a; max = b;} void step(int a) {A = a; B = 1;} void step(double a, int b) {A = a; B = b;} void step(double s); double step() const {return A/B;} void precision(int); double value() const {return value_;} int value(double); virtual int format(char*); double round(double); // round to nearest multiple of step double clamp(double); // keep in range double increment(double, int); // add n*step to value};#endif//// End of "$Id: Fl_Valuator.H,v 1.2 2002/12/01 15:38:37 neurosurg Exp $".//
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -