Moka Ihm Qt
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
options-affichage.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 OPTIONSAFFICHAGE_QT_HH
25 #define OPTIONSAFFICHAGE_QT_HH
26 
27 //--------- Include autres classes developees ----------
28 #include "controler-gmap.hh"
29 #include "options-vue.qt.hh"
30 
31 //--------------------- Include QT --------------------
32 #include <QtGui/QSpinBox>
33 #include <QtGui/QCheckBox>
34 #include <QtGui/QLabel>
35 #include <QtGui/QRadioButton>
36 #include <QtGui/QTabWidget>
37 #include <QtGui/QGroupBox>
38 
39 class Window ;
40 
44 class OptionsAffichage : public QWidget
45 {
46  Q_OBJECT
47 
48 public :
49 
56  OptionsAffichage ( Window * parent ,
57  QTabWidget * parentTab ) ;
58 
63  ~OptionsAffichage ( ) ;
64 
68  void update ( ) ;
69 
70 
71  void applyValues ( ) ;
72 
73 
74  // Accesseurs en lecture
75 
76  // Partie elements
77  bool getVerticesDisplay ( ) const ;
78  bool getSewsDisplay ( ) const ;
79  bool getNormalDisplay ( ) const ;
80  bool getFacesDisplay ( ) const ;
81  bool getFacesCoulAlea ( ) const ;
82  bool getVolumesCoulAlea ( ) const;
83  bool getCoulFacesGlobale() const;
84  bool getCoulTopologie ( ) const;
85 
86 #ifdef MODULE_ARCHITECTURE
87  bool getCoulSemantique( ) const;
88  void hideSemantiqueColoration ( );
89 #endif
90 
91  bool getCoulGeometry ( ) const;
92  int getDartWidth ( ) const ;
93 
94  // Partie grille
95  bool getGridDisplay ( ) const ;
96  bool getAxisDisplay() const ;
97  int getSize ( ) const ;
98  bool getXy ( ) const ;
99  bool getXz ( ) const ;
100  bool getYz ( ) const ;
101  bool getPx ( ) const ;
102  bool getPy ( ) const ;
103  bool getPz ( ) const ;
104 
105 
106  // Accesseurs en ecriture
107 
112  void setFMain ( ) ;
113 
114  // Partie Elements
115  void setVerticesDisplay ( bool ) ;
116  void setSewsDisplay ( bool ) ;
117  void setNormalDisplay ( bool ) ;
118  void setFacesDisplay ( bool ) ;
119  void setFacesCoulAlea ();
120  void setVolumesCoulAlea ();
121  void setCoulFacesGlobale();
122  void setCoulTopologie();
123 #ifdef MODULE_ARCHITECTURE
124  void setCoulSemantique();
125 #endif
126  void setCoulGeometry();
127  void setDartWidth ( int ) ;
128 
129  // Partie grille
130  void setGridDisplay ( bool ) ;
131  void setAxisDisplay ( bool ) ;
132  void setSize ( int ) ;
133  void setXy ( bool ) ;
134  void setXz ( bool ) ;
135  void setYz ( bool ) ;
136  void setPx ( bool ) ;
137  void setPy ( bool ) ;
138  void setPz ( bool ) ;
139 
140  // Partie Placages
141  void setOrientation(bool);
142  void setScale (bool);
143  void setPosition (bool);
144 
145 public slots:
146 
147  // Partie Elements
148  void callbackToggleNormal ( ) ;
149  void callbackToggleVertices ( ) ;
150  void callbackToggleSews ( ) ;
151  void callbackToggleFaces ( ) ;
152  void callbackFacesCoulAlea( );
153  void callbackVolumesCoulAlea( );
154  void callbackCoulFacesGlobale( );
155  void callbackCoulTopologie( );
156  void callbackCoulGeometry( );
157 #ifdef MODULE_ARCHITECTURE
158  void callbackCoulSemantique( );
159  #endif
160  // Partie grille
161  void callbackToggleGrid ( ) ;
162  void callbackToggleAxis ( ) ;
163  void callbackSize ( ) ;
164  void callbackToggleXy ( ) ;
165  void callbackToggleXz ( ) ;
166  void callbackToggleYz ( ) ;
167  void callbackTogglePx ( ) ;
168  void callbackTogglePy ( ) ;
169  void callbackTogglePz ( ) ;
170 
171  // Partie Placages
173  void callbackToggleScale ();
174  void callbackTogglePosition ();
175 
176 private:
177 
178  // La fenetre principale
179  Window * FParent ;
180 
181  bool FUpdate ;
182 
183  // Indique si la methode a ete appelee depuis une autre classe
184  bool FMain ;
185 
186  /* --- Elements --- */
187  QGroupBox * FElements ;
188  QCheckBox * FENormale , * FECoutures , * FESommets , * FEFacesPleines ;
189  QRadioButton * FECouleursAleatoire , * FECoulVolumesAleatoire , * FECoulGlobale , * FECoulTopologie,* FECoulGeometry;
190 #ifdef MODULE_ARCHITECTURE
191  QRadioButton * FECoulSemantique;
192 #endif
193  QGroupBox * bgroup ,* bgroup2;
194 
195  /* --- Grille --- */
196  QGroupBox * FGrille ;
197  QCheckBox * FAffAxes , * FPlanXY , * FPlanXZ , * FPlanYZ ,
198  * FValOx , * FValOy , * FValOz ;
199 
200  /* --- Placage --- */
201  QGroupBox * FPlacage ;
202  QCheckBox * FOrientation , * FTaille , *FPosition ;
203 
204  QSpinBox * FSaisieTaille ;
205 } ;
206 
207 #endif