Moka Ihm Qt
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
floatSpinBox.qt.hh
Go to the documentation of this file.
1 /*
2  * Moka : Un modeleur de 3-G-cartes.
3  * Copyright (C) 2004, Moka Team, Université de Poitiers, Laboratoire SIC
4  * http://www.sic.sp2mi.univ-poitiers.fr/
5  * Copyright (C) 2009, Guillaume Damiand, CNRS, LIRIS,
6  * guillaume.damiand@liris.cnrs.fr, http://liris.cnrs.fr/
7  *
8  * This file is part of Moka
9  *
10  * This program is free software: you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation, either version 3 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
24 #ifndef FLOATSPINBOX_QT_HH
25 #define FLOATSPINBOX_QT_HH
26 
27 //----------------- Include std ------------------
28 #include <iostream>
29 using namespace std ;
30 
31 #include <cstdlib>
32 #include <string.h>
33 
34 //------------- Include QT --------------
35 #include <QtGui/QSpinBox>
36 #include <QtGui/QValidator>
37 #include <QtGui/QLineEdit>
38 #include <QtCore/QString>
39 
40 class FloatSpinBox : public QDoubleSpinBox
41 {
42  Q_OBJECT
43 
44 public:
45 
46  FloatSpinBox( double step = 1, double bottom = -1000, double top = 1000,
47  int decimals = 3, float iv = 0.1) ;
48 
49  ~FloatSpinBox ( ) ;
50 
51  float valuef() ;
52 
53  void setValuef(float v) ;
54 
55 private:
56 
57  QString mapValueToText( int j ) ;
58  int mapTextToValue( bool* ok ) ;
59  float sc; //scale of the value
60  char format[3]; //text format
61 } ;
62 
63 #endif