![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: exampleEmbeddedSlaveMainWindow.h,v $ $Revision: 1.4 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00009 #ifndef exampleEmbeddedSlaveMainWindow_H 00010 #define exampleEmbeddedSlaveMainWindow_H 00011 00012 // Include this header before any Qt header. 00013 #include <vrvUtil/signalslib.h> 00014 00015 #include <vrvCore/DtDe.h> 00016 #include <vrvCore/DtVrvApplication.h> 00017 #include <vrvCore/DtPluginManager.h> 00018 #include <vrvOsgQt/DtOsgAdapterQtWidget.h> 00019 #include <vrvOsgQt/DtSceneGraphTreeWidget.h> 00020 #include <vrvCore/DtWindow.h> 00021 #include <vrvUtil/DtWindowConfiguration.h> 00022 00023 #include <QtGui/QMainWindow> 00024 #include <osg/Group> 00025 #include <osg/Node> 00026 00027 class QAction; 00028 class QMenu; 00029 class QTreeWidget; 00030 class QTreeWidgetItem; 00031 00032 00034 class ExampleEmbeddedSlaveMainWindow : public QMainWindow 00035 { 00036 00037 Q_OBJECT 00038 00039 public: 00040 00042 ExampleEmbeddedSlaveMainWindow(); 00043 00045 virtual ~ExampleEmbeddedSlaveMainWindow(); 00046 00047 00048 // The adapter widgets. These will become owned and 00049 // deleted by MainWindow. 00050 makVrv::DtOsgAdapterQtWidget* myMainOSGWidget; 00051 00052 public slots: 00053 00054 protected: 00055 00057 void createDisplayEngine(); 00058 void buildGui(); 00059 void preDisplayEngineInitialize(); 00060 void initializeDisplayEngine(); 00061 void postDisplayEngineInitialize(); 00062 00063 virtual void closeEvent(QCloseEvent *event); 00064 00065 void createActions(); 00066 void createMenus(); 00067 void createToolBars(); 00068 void createStatusBar(); 00069 00070 protected: 00071 00072 makVrv::DtDe* myDe; 00073 makVrv::DtPluginManager* myPluginManager; 00074 00075 QMenu* myFileMenu; 00076 QToolBar* myFileToolBar; 00077 QAction* myExitAction; 00078 }; 00079 00080 class ExampleEmbeddedSlaveMainWindowCreator : public makVrv::DtWindowCreator 00081 { 00082 public: 00083 ExampleEmbeddedSlaveMainWindowCreator(ExampleEmbeddedSlaveMainWindow* window) 00084 { 00085 myWindow = window; 00086 } 00087 00089 virtual makVrv::DtWindow* create(makVrv::DtDe&, makVrv::DtWindowConfiguration&); 00090 00091 protected: 00092 ExampleEmbeddedSlaveMainWindow* myWindow; 00093 }; 00094 00095 #endif