00001 /* 00002 * Moka : Un modeleur de 3-G-cartes. 00003 * Copyright (C) 2004, Moka Team, Université de Poitiers, Laboratoire SIC 00004 * http://www.sic.sp2mi.univ-poitiers.fr/ 00005 * Copyright (C) 2009, Guillaume Damiand, CNRS, LIRIS, 00006 * guillaume.damiand@liris.cnrs.fr, http://liris.cnrs.fr/ 00007 * 00008 * This file is part of Moka 00009 * 00010 * This program is free software: you can redistribute it and/or modify 00011 * it under the terms of the GNU General Public License as published by 00012 * the Free Software Foundation, either version 3 of the License, or 00013 * (at your option) any later version. 00014 * 00015 * This program is distributed in the hope that it will be useful, 00016 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00017 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00018 * GNU General Public License for more details. 00019 * 00020 * You should have received a copy of the GNU General Public License 00021 * along with this program. If not, see <http://www.gnu.org/licenses/>. 00022 */ 00023 00024 #ifndef OPTIONSFRAME_QT_HH 00025 #define OPTIONSFRAME_QT_HH 00026 00027 //--------- Include autres classes developees ---------- 00028 #include "controler-gmap.hh" 00029 #include "options-vue.qt.hh" 00030 #include "options-ponderation.qt.hh" 00031 #include "options-extrusion.qt.hh" 00032 #include "options-interpolation.qt.hh" 00033 #include "options-affichage.qt.hh" 00034 #include "options-divers.qt.hh" 00035 00036 00037 //--------------------- Include QT -------------------- 00038 #include <QtGui/QDialog> 00039 #include <QtGui/QPushButton> 00040 #include <QtGui/QTabWidget> 00041 00042 00043 00044 class Window ; 00045 00049 class OptionsFrame : public QDialog 00050 { 00051 Q_OBJECT 00052 00053 public : 00054 00059 OptionsFrame ( Window * parent ) ; 00060 00064 ~OptionsFrame ( ) ; 00065 00066 void update ( ) ; 00067 00071 void setOption ( int indice ) ; 00072 00073 00077 void applyValues() ; 00078 00079 void setFVisible ( bool b ) ; 00080 00081 OptionsAffichage * getOptionsAffichage() const; 00082 00083 OptionsVue * getOptionsVue() const; 00084 00085 public slots: 00086 00087 void callbackShowVue ( ) ; 00088 void callbackShowCouture ( ) ; 00089 void callbackShowPonderation ( ) ; 00090 void callbackShowExtrusion ( ) ; 00091 void callbackShowInterpolation ( ) ; 00092 void callbackShowAffichage ( ) ; 00093 void callbackShowDivers ( ) ; 00094 // Pour afficher les coutures 00095 void callbackToggleSews ( ) ; 00096 // Pour afficher les normales 00097 void callbackToggleNormal (); 00098 // Pour afficher les sommets 00099 void callbackToggleVertices (); 00100 // Pour afficher les faces 00101 void callbackToggleFaces (); 00102 00103 void callbackTournerButton( ); 00104 00105 void callbackToggleGrille ( ) ; 00106 00107 void callbackButtonOkPressed ( ) ; 00108 00109 void updateTab(int num_tab); 00110 00111 private : 00112 00113 bool FVisible ; 00114 00115 QPushButton * valid_btn; 00116 QTabWidget * main_tab; 00117 00118 // Les differentes options presentes 00119 00120 OptionsPonderation * FPonderation ; 00121 OptionsInterpolation * FInterpolation ; 00122 OptionsExtrusion * FExtrusion ; 00123 OptionsVue * FVue ; 00124 OptionsDivers * FDivers ; 00125 OptionsAffichage * FAffichage ; 00126 } ; 00127 00128 #endif