00001 00002 // application.h // 00003 // ------------------- // 00004 // begin : Dec 12 2004 // 00005 // copyright : (C) 2004 by cbaudry (CEA/DSM/SPP) // 00006 // email : cedric.baudry@tremplin-utc.fr // 00008 00010 // // 00011 // This program is free software; you can redistribute it and/or modify // 00012 // it under the terms of the GNU General Public License as published by // 00013 // the Free Software Foundation, version 2 of the License // 00014 // // 00016 00017 #pragma once 00018 00019 #include <qmainwindow.h> 00020 00021 class QWorkspace; 00022 class QPopupMenu; 00023 class FileDialog; 00024 class FieldDialog; 00025 class GraphicOptions; 00026 class MDIWindow; 00027 00028 00029 00031 00042 class ApplicationWindow:public QMainWindow 00043 { 00044 Q_OBJECT 00045 00046 public: 00047 00048 ApplicationWindow (); 00049 ~ApplicationWindow (); 00050 00051 QWorkspace *ws; 00052 00053 QSize sizeHint () 00054 { 00055 return QSize (800, 600); 00056 } 00057 QSize minimumSizeHint () 00058 { 00059 return QSize (200, 200); 00060 } 00061 00062 public slots:MDIWindow * newGLWindow (); 00063 MDIWindow *newMultiviewWindow (); 00064 00065 private slots: 00066 00067 void load (); 00068 00069 void showGraphicOptions (); 00070 00071 void closeWindow (); 00072 void tileHorizontal (); 00073 void tileVertical (); 00074 00075 void about (); 00076 void aboutQt (); 00077 00078 void windowsMenuActivated (int id); 00079 void windowsMenuAboutToShow (); 00080 00081 void takeScreenshot (); 00082 void setViewAllLines (); 00083 void setViewLines (); 00084 void setViewPoly (); 00085 void setViewPolyEdges (); 00086 void setViewPersp (); 00087 void setViewOrtho1 (); 00088 void setViewOrtho2 (); 00089 void setViewOrtho3 (); 00090 00091 private: 00092 00093 QPopupMenu * windowsMenu; 00094 FileDialog *fd; 00095 FieldDialog *mf; 00096 GraphicOptions *go; 00097 00098 void closeEvent (QCloseEvent *); 00099 00100 };