]> Creatis software - clitk.git/blob - vv/vvMainWindowBase.h
removed headers
[clitk.git] / vv / vvMainWindowBase.h
1 #ifndef VVMAINWINDOWBASE_H
2 #define VVMAINWINDOWBASE_H
3 #include "clitkCommon.h"
4 #include "vvImage.h"
5 #include <qmainwindow.h>
6
7 class vvSlicerManager;
8 class QMenu;
9
10 //------------------------------------------------------------------------------
11 class vvMainWindowBase : public QMainWindow
12 {
13    Q_OBJECT
14
15 public:
16   vvMainWindowBase() { mSlicerManagerCurrentIndex = -1; }
17   ~vvMainWindowBase() { }
18
19   virtual void AddImage(vvImage::Pointer image,std::string filename) = 0;
20   virtual void UpdateCurrentSlicer() = 0;
21   const std::vector<vvSlicerManager*> & GetSlicerManagers() const { return mSlicerManagers; }
22   QMenu * GetToolMenu() const { return mMenuTools; }
23   QMenu * GetExperimentalToolMenu() const { return mMenuExperimentalTools; }
24   int GetSlicerManagerCurrentIndex() const { return mSlicerManagerCurrentIndex; }
25   QWidget * GetMainWidget() { return mMainWidget; }
26
27 signals:
28   void AnImageIsBeingClosed(vvSlicerManager *);
29
30 protected:
31   std::vector<vvSlicerManager*> mSlicerManagers;
32   QMenu * mMenuTools;
33   QMenu * mMenuExperimentalTools;
34   int mSlicerManagerCurrentIndex;
35   QWidget* mMainWidget;
36 };
37 //------------------------------------------------------------------------------
38
39 #endif