00001 #ifndef QMAIN_H_ 00002 #define QMAIN_H_ 00003 00004 #include "glew.h" 00005 #include <QtOpenGL/QtOpenGL> 00006 00007 #include "./Ui_QMain.h" 00008 #include <Qt/qtimer.h> 00009 00013 class QMain : public QMainWindow, protected Ui_QMain 00014 { 00015 Q_OBJECT 00016 public: 00017 00023 QMain(QWidget* parent = 0, Qt::WFlags flags = 0); 00024 00028 virtual ~QMain(); 00029 00030 public slots: 00031 00035 void watch(); 00036 00040 void redraw(); 00041 00045 void load_data_file(); 00046 00050 void load_single_file(); 00051 00055 void save_data_file(); 00056 00060 void load_tf_file(); 00061 00065 void save_tf_file(); 00066 00071 void save_image(); 00072 00077 void save_big_image(); 00078 00082 void loadStreamLines(); 00083 00087 void saveStreamLines(); 00088 00093 void tf_vertscroll_valuechanged(int val); 00094 00095 00100 void tf_horizscroll_valuechanged(int val); 00101 00106 void slider_timestep_valuechanged(int val); 00107 00112 void slider_colprop_valuechanged(int val); 00113 00118 void slider_arrowalpha_valuechanged(int val); 00119 00124 void slider_salpha_valuechanged(int val); 00125 00130 void slider_arrowscale_valuechanged(int val); 00131 00136 void slider_iconscale_valuechanged(int val); 00137 00142 void slider_icontail_valuechanged(int val); 00143 00148 void slider_arrowspacing_valuechanged(int val); 00149 00154 void slider_dsep_valuechanged(int val); 00155 00160 void slider_dtest_valuechanged(int val); 00161 00166 void slider_steps_valuechanged(int val); 00167 00172 void slider_dt_valuechanged(int val); 00173 00178 void slider_licalpha_valuechanged(int val); 00179 00184 void slider_licsteps_valuechanged(int val); 00185 00190 void slider_licstepsize_valuechanged(int val); 00191 00196 void rb_arrowscale_norm_clicked( bool val ); 00197 00202 void rb_euler_clicked( bool val ); 00203 00208 void rb_arrowcol_tf( bool val ); 00209 00214 void rb_strcol_tf( bool val ); 00215 00216 00221 void button_computecpu_clicked( bool val ); 00222 00227 void combo_seedsplacing_switched( int val ); 00228 00233 void combo_choose_arrow( int val ); 00234 00239 void activate_arrows( bool state ); 00240 00245 void activateLIC( bool state ); 00246 00251 void enableIcons( bool state ); 00252 00253 00258 void activateTapering( bool state ); 00259 00264 void activateStrGlyphes( bool state ); 00265 00270 void slider_tapering_scale( int val ); 00271 00276 void enableArrowTF( bool state ); 00277 00282 void enableStreamLineTF( bool state ); 00283 00288 void enableLicTF( bool state ); 00289 00294 void animateLic( bool state ); 00295 00300 void activate_streamlines( bool state ); 00301 00306 void interactivate( bool state ); 00307 00308 private: 00309 00310 QTimer *pTimer; 00311 QTimer *pTimer_redraw; 00313 VVector m_ArrowsColor; 00314 VVector m_StreamlinesColor; 00316 int w_sizex; 00317 int w_sizey; 00319 int pixoffsetx_rcanvas; 00320 int pixoffsety_rcanvas; 00322 int pixposx_rcanvas; 00323 int pixposy_rcanvas; 00327 // members relevant to GUI states 00328 bool m_streamlinesinteractive; 00329 int comboseeds_active; 00330 00331 //bool arrows_activated; 00332 00333 int activeTF; 00334 bool arrowTFactivated; 00335 bool streamLineTFactivated; 00336 bool licTFactivated; 00338 }; 00339 #endif