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();
92 void preferencesSlot();
93 void toggleFullScreenSlot();
95 void showControlPanelActionSlot();
96 void showSecondaryViewLayoutWindowActionSlot();
99 void onApplicationStateChangedSlot();
102 void onWorkflowStateChangedSlot();
103 void saveDesktopSlot();
104 void resetDesktopSlot();
107 void onShowContextSentitiveHelp();
109 void dockWidgetVisibilityChanged(
bool val);
110 void focusChanged(QWidget * old, QWidget * now);
117 void changeEvent(QEvent * event);
120 void focusInsideDockWidget(QObject* dockWidget);
122 void updateWindowTitle();
123 void createActions();
125 void createToolBars();
127 QToolBar *registerToolBar(QString name, QString groupname=
"Toolbars");
128 void setupGUIExtenders();
130 void closeEvent(QCloseEvent *event);
131 QDockWidget* addAsDockWidget(QWidget* widget, QString groupname);
135 QMenu* mWorkflowMenu;
138 QMenu* mNavigationMenu;
140 QAction* mHelpMenuAction;
143 QAction* mAboutAction;
144 QAction* mPreferencesAction;
145 QAction* mFullScreenAction;
146 QAction* mQuitAction;
148 QAction* mShowControlPanelAction;
149 QAction* mSecondaryViewLayoutWindowAction;
151 QActionGroup* mStandard3DViewActions;
153 QAction* mShowContextSensitiveHelpAction;
154 QActionGroup* mInteractorStyleActionGroup;
157 QAction* mSaveDesktopAction;
158 QAction* mResetDesktopAction;
161 QToolBar* mDataToolBar;
162 QToolBar* mToolToolBar;
163 QToolBar* mNavigationToolBar;
164 QToolBar* mInteractorStyleToolBar;
165 QToolBar* mWorkflowToolBar;
166 QToolBar* mDesktopToolBar;
167 QToolBar* mHelpToolBar;
168 QToolBar* mScreenshotToolBar;
170 boost::shared_ptr<ServiceTrackerListener<GUIExtenderService> > mServiceListener;
173 QPointer<class SecondaryMainWindow> mControlPanel;
174 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