// // File: mview.h // // (C) 2000-2006 Helmut Cantzler // // Licensed under the terms of the Lesser General Public License. // #ifndef _MVIEW_H #define _MVIEW_H #include #include "glmesh.h" #include "viewpointdialog.h" class QLabel; class QSlider; class QAction; class QActionGroup; class Mesh; class MView: public QMainWindow { Q_OBJECT public: MView(int argc, char **argv); ~MView(); public slots: void displayTexture(void); void closePick(void); void closeText(void); private slots: void loadModel(); void loadFeatures(); void saveAs(QAction *a); void takeShot(QAction *a); void negateNormals(); void togglePick(bool pick_state); void toggleTextMap(bool text_state); void setBackgroundColor(); void resetView(); void setView(); void clearViews(); void saveView(); void loadView(QAction *a); void about(); protected: void timerEvent(QTimerEvent *e); private: void createActions(); void createMenus(); void createToolBars(); void createStatusBar(); void setStatus(); int loadModelFile(const char *fileName, Mesh **mesh); void setDefaultConfig(); void setOption(QAction *a, bool b); GLMesh *glmesh; GLMesh_Settings *settings; QString name; QSlider *clipping; QLabel *label_mesh, *label_features, *label_fps; QAction *openAct, *openFeatAct, *exitAct; QAction *negNormAct; QAction *dTextAct, *dSolidAct, *dFrontAct, *dWireAct, *dPointAct; QAction *dFeatAct, *pickAct, *textAct; QAction *lightAct, *shapeAct, *normAct, *cutAct; QAction *filtAct, *featAct, *keepAct, *backAct; QAction *vSetAct, *vResAct, *vSaveAct, *vCleaAct; QAction *abouAct, *abqtAct; QActionGroup *screenshotActs, *saveActs, *displayActs; QMenu *viewpointMenu; QActionGroup *viewActs; QMap viewpoints; }; #endif