]> Creatis software - clitk.git/blobdiff - vv/vvMainWindowBase.h
Debug RTStruct conversion with empty struc
[clitk.git] / vv / vvMainWindowBase.h
index 1c10d5efd015158400cf3bcbdbc00210d640bbd5..3b99565378d3604704b25c072aec0dfe850aa1ce 100644 (file)
@@ -1,27 +1,20 @@
 /*=========================================================================
+  Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
 
- Program:   vv
-  Module:   $RCSfile: vvMainWindowBase.h,v $
- Language:  C++
- Author :   David Sarrut (david.sarrut@creatis.insa-lyon.fr)
+  Authors belong to: 
+  - University of LYON              http://www.universite-lyon.fr/
+  - Léon Bérard cancer center       http://www.centreleonberard.fr
+  - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
 
-Copyright (C) 2010
-Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
-CREATIS-LRMN http://www.creatis.insa-lyon.fr
+  This software is distributed WITHOUT ANY WARRANTY; without even
+  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+  PURPOSE.  See the copyright notices for more information.
 
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, version 3 of the License.
+  It is distributed under dual licence
 
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-  =========================================================================*/
+  - BSD        See included LICENSE.txt file
+  - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+===========================================================================**/
 
 #ifndef VVMAINWINDOWBASE_H
 #define VVMAINWINDOWBASE_H
@@ -32,6 +25,7 @@ GNU General Public License for more details.
 
 class vvSlicerManager;
 class QMenu;
+class QTabWidget;
 
 //------------------------------------------------------------------------------
 class vvMainWindowBase : public QMainWindow
@@ -42,21 +36,32 @@ public:
   vvMainWindowBase() { mSlicerManagerCurrentIndex = -1; }
   ~vvMainWindowBase() { }
 
-  virtual void AddImage(vvImage::Pointer image,std::string filename) = 0;
+  virtual vvSlicerManager * AddImage(vvImage::Pointer image,std::string filename) = 0;
   virtual void UpdateCurrentSlicer() = 0;
+  virtual QTabWidget * GetTab() = 0;
   const std::vector<vvSlicerManager*> & GetSlicerManagers() const { return mSlicerManagers; }
-  QMenu * GetMenu() const { return mMenuTools; }
+  QMenu * GetToolMenu() const { return mMenuTools; }
+  QMenu * GetMenu(std::string menuName) const;// { return mMenuTools; }
+  QMenu * GetContextMenu() const { return mContextMenu; }
+  QMenu * GetExperimentalToolMenu() const { return mMenuExperimentalTools; }
   int GetSlicerManagerCurrentIndex() const { return mSlicerManagerCurrentIndex; }
   QWidget * GetMainWidget() { return mMainWidget; }
+  const QString & GetInputPathName() { return mInputPathName; }
 
 signals:
   void AnImageIsBeingClosed(vvSlicerManager *);
+  void SelectedImageHasChanged(vvSlicerManager *);
 
 protected:
   std::vector<vvSlicerManager*> mSlicerManagers;
   QMenu * mMenuTools;
+  QMenu * mMenuSegmentation;
+  QMenu * mContextMenu;
+  QMenu * mMenuExperimentalTools;
   int mSlicerManagerCurrentIndex;
   QWidget* mMainWidget;
+  QString mInputPathName;
+
 };
 //------------------------------------------------------------------------------