// // 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 #include #include #include "glmesh.h" #include "mesh.h" class QMultiLineEdit; class QToolBar; class QPopupMenu; class QSlider; class QLabel; class MView: public QMainWindow { Q_OBJECT public: MView(int argc, char **argv); ~MView(); public slots: void displayTexture(); void closePick(); void closeText(); private slots: void loadModel(); void loadFeatures(); void saveAs(int item); void takeShot(int item); void negateNormals(); void setBackgroundColor(); void togglePick(bool pick_state); void toggleTextureMapping(bool text_state); void resetView(); void setView(); void saveView(); void clearViews(); void loadView(int id); void about(); protected: void timerEvent(QTimerEvent *e); private: void createActions(); void createMenus(); void createToolBars(); void createStatusBar(); void setStatus(); void setMviewDefaults(); int loadModelFile(const char *fileName, Mesh **mesh); void setOption(QAction *a, bool b); GLMesh *glmesh; GLMesh_Settings *settings; QString name; QSlider *clipping; QPopupMenu *save, *screenshot, *viewpoint; QMap viewpoints; 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 *displayActs; QLabel *label_mesh, *label_features, *label_fps; }; #endif