33 #ifndef CXMAINWINDOW_H_
34 #define CXMAINWINDOW_H_
36 #include "cxGuiExport.h"
38 #include <QMainWindow>
41 #include "boost/shared_ptr.hpp"
55 class GUIExtenderService;
57 class DynamicMainWindowWidgets;
85 virtual QMenu* createPopupMenu();
88 void patientChangedSlot();
93 void preferencesSlot();
94 void toggleFullScreenSlot();
96 void showControlPanelActionSlot();
97 void showSecondaryViewLayoutWindowActionSlot();
100 void onApplicationStateChangedSlot();
103 void onWorkflowStateChangedSlot();
104 void saveDesktopSlot();
105 void resetDesktopSlot();
108 void onShowContextSentitiveHelp();
110 void dockWidgetVisibilityChanged(
bool val);
111 void focusChanged(QWidget * old, QWidget * now);
118 void changeEvent(QEvent * event);
121 void focusInsideDockWidget(QObject* dockWidget);
123 void updateWindowTitle();
124 void createActions();
126 void createToolBars();
128 QToolBar *registerToolBar(QString name, QString groupname=
"Toolbars");
129 void setupGUIExtenders();
131 void closeEvent(QCloseEvent *event);
132 QDockWidget* addAsDockWidget(QWidget* widget, QString groupname);
136 QMenu* mWorkflowMenu;
139 QMenu* mNavigationMenu;
141 QAction* mHelpMenuAction;
144 QAction* mAboutAction;
145 QAction* mPreferencesAction;
146 QAction* mFullScreenAction;
147 QAction* mQuitAction;
149 QAction* mShowControlPanelAction;
150 QAction* mSecondaryViewLayoutWindowAction;
152 QActionGroup* mStandard3DViewActions;
154 QAction* mShowContextSensitiveHelpAction;
155 QActionGroup* mInteractorStyleActionGroup;
158 QAction* mSaveDesktopAction;
159 QAction* mResetDesktopAction;
162 QToolBar* mDataToolBar;
163 QToolBar* mToolToolBar;
164 QToolBar* mNavigationToolBar;
165 QToolBar* mInteractorStyleToolBar;
166 QToolBar* mWorkflowToolBar;
167 QToolBar* mDesktopToolBar;
168 QToolBar* mHelpToolBar;
169 QToolBar* mScreenshotToolBar;
171 boost::shared_ptr<ServiceTrackerListener<GUIExtenderService> > mServiceListener;
174 QPointer<class SecondaryMainWindow> mControlPanel;
175 QPointer<class SecondaryViewLayoutWindow> mSecondaryViewLayoutWindow;
boost::shared_ptr< class VisServices > VisServicesPtr
This is the main gui class which controls the workflow.
boost::shared_ptr< class LayoutInteractor > LayoutInteractorPtr
boost::shared_ptr< class ProcessWrapper > ProcessWrapperPtr
boost::shared_ptr< class CameraControl > CameraControlPtr