]> Creatis software - clitk.git/blobdiff - vv/vvToolWidgetBase.cxx
script to easily create new clitk tools. Does not do vv tools yet
[clitk.git] / vv / vvToolWidgetBase.cxx
index 28270dca5a13aa5a5d8a089ca2fe6e45a4eebf54..d5632dca6eaa71ed8099fd8e2e6daade568247a4 100644 (file)
@@ -1,29 +1,20 @@
 /*=========================================================================
+  Program:   vv                     http://www.creatis.insa-lyon.fr/rio/vv
 
-  Program:   vv
-  Module:    $RCSfile: vvToolWidgetBase.cxx,v $
-  Language:  C++
-  Date:      $Date: 2010/03/24 10:48:18 $
-  Version:   $Revision: 1.4 $
-  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://oncora1.lyon.fnclcc.fr
+  - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
 
-  Copyright (C) 2008
-  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
+======================================================================-====*/
 
 #include "vvToolWidgetBase.h"
 #include "vvMainWindowBase.h"
@@ -39,7 +30,7 @@ vvToolWidgetBase::vvToolWidgetBase(vvMainWindowBase * parent, Qt::WindowFlags f)
   // parent is set at construction
   mIsInitialized = false;
   mFilter = 0;
-  mMainWindowBase = parent;
+  mMainWindow = parent;
   setModal(false);
   setAttribute(Qt::WA_DeleteOnClose);
   mCurrentSlicerManager = 0;
@@ -48,7 +39,7 @@ vvToolWidgetBase::vvToolWidgetBase(vvMainWindowBase * parent, Qt::WindowFlags f)
   setupUi(this);
 
   // Connect signals & slots  
-  connect(mMainWindowBase, SIGNAL(AnImageIsBeingClosed(vvSlicerManager*)), 
+  connect(mMainWindow, SIGNAL(AnImageIsBeingClosed(vvSlicerManager*)), 
           this, SLOT(AnImageIsBeingClosed(vvSlicerManager*)));
   connect(mToolInputSelectionWidget, SIGNAL(accepted()), this, SLOT(InputIsSelected()));
   connect(mToolInputSelectionWidget, SIGNAL(rejected()), this, SLOT(close()));
@@ -84,20 +75,21 @@ void vvToolWidgetBase::AddInputSelector(QString s, clitk::ImageToImageGenericFil
   int j=0;
   mFilter = f;
   mSlicerManagersCompatible.clear();
-  //  mToolInputSelectionWidget->setToolTip(QString("%1").arg(mFilter->GetAvailableImageTypes().c_str()));
-  for(unsigned int i=0; i<mMainWindowBase->GetSlicerManagers().size(); i++) {
+  mToolInputSelectionWidget->setToolTip(QString("%1").arg(mFilter->GetAvailableImageTypes().c_str()));
+  for(unsigned int i=0; i<mMainWindow->GetSlicerManagers().size(); i++) {
     // DD(i);
-    vvImage * s = mMainWindowBase->GetSlicerManagers()[i]->GetImage();
+    vvImage * s = mMainWindow->GetSlicerManagers()[i]->GetImage();
+    // DD(s->GetScalarTypeAsString());
     if (mFilter->CheckImageType(s->GetNumberOfDimensions(), 
                                s->GetNumberOfScalarComponents(), 
                                s->GetScalarTypeAsString())) {
-      mSlicerManagersCompatible.push_back(mMainWindowBase->GetSlicerManagers()[i]);
-      if ((int)i == mMainWindowBase->GetSlicerManagerCurrentIndex()) mCurrentCompatibleIndex = j;
+      mSlicerManagersCompatible.push_back(mMainWindow->GetSlicerManagers()[i]);
+      if ((int)i == mMainWindow->GetSlicerManagerCurrentIndex()) mCurrentCompatibleIndex = j;
       j++;
     }
   }
   if (mSlicerManagersCompatible.size() == 0) {
-    QMessageBox::information(this, "No image","Sorry, could not perform operation. No compatible opened image type.");
+    QMessageBox::information(this, "No image","Sorry, could not perform operation. No (compatible) opened image type.");
     close();
     return;
   }
@@ -109,18 +101,18 @@ void vvToolWidgetBase::AddInputSelector(QString s, clitk::ImageToImageGenericFil
 //------------------------------------------------------------------------------
 void vvToolWidgetBase::AddInputSelector(QString s, bool allowSkip) {
   // DD("AddInput without filter");
-  //   DD(mMainWindowBase->GetSlicerManagers().size());
+  //   DD(mMainWindow->GetSlicerManagers().size());
   mSlicerManagersCompatible.clear();
-  for(unsigned int i=0; i<mMainWindowBase->GetSlicerManagers().size(); i++) {
-    mSlicerManagersCompatible.push_back(mMainWindowBase->GetSlicerManagers()[i]);
+  for(unsigned int i=0; i<mMainWindow->GetSlicerManagers().size(); i++) {
+    mSlicerManagersCompatible.push_back(mMainWindow->GetSlicerManagers()[i]);
   }
-  if (mMainWindowBase->GetSlicerManagers().size() == 0) {
+  if (mMainWindow->GetSlicerManagers().size() == 0) {
     QMessageBox::information(this, "No image","Sorry, could not perform operation. No opened image type.");
     close();
     return;
   }
-  mToolInputSelectionWidget->AddInputSelector(s, mMainWindowBase->GetSlicerManagers(),
-                                             mMainWindowBase->GetSlicerManagerCurrentIndex(), allowSkip);
+  mToolInputSelectionWidget->AddInputSelector(s, mMainWindow->GetSlicerManagers(),
+                                             mMainWindow->GetSlicerManagerCurrentIndex(), allowSkip);
 }
 //------------------------------------------------------------------------------
 
@@ -161,20 +153,20 @@ void vvToolWidgetBase::InitializeInputs() {
     if (mFilter) {
     int j=0;
     mToolInputSelectionWidget->setToolTip(QString("%1").arg(mFilter->GetAvailableImageTypes().c_str()));
-    for(unsigned int i=0; i<mMainWindowBase->GetSlicerManagers().size(); i++) {
-    vvImage * s = mMainWindowBase->GetSlicerManagers()[i]->GetImage();
+    for(unsigned int i=0; i<mMainWindow->GetSlicerManagers().size(); i++) {
+    vvImage * s = mMainWindow->GetSlicerManagers()[i]->GetImage();
     if (mFilter->CheckImageType(s->GetNumberOfDimensions(), 
     s->GetNumberOfScalarComponents(), 
     s->GetScalarTypeAsString())) {
-    mSlicerManagersCompatible.push_back(mMainWindowBase->GetSlicerManagers()[i]);
-    if ((int)i == mMainWindowBase->GetSlicerManagerCurrentIndex()) mCurrentCompatibleIndex = j;
+    mSlicerManagersCompatible.push_back(mMainWindow->GetSlicerManagers()[i]);
+    if ((int)i == mMainWindow->GetSlicerManagerCurrentIndex()) mCurrentCompatibleIndex = j;
     j++;
     }
     }
     }
     else {
-    mSlicerManagersCompatible = mMainWindowBase->GetSlicerManagers();
-    mCurrentCompatibleIndex = mMainWindowBase->GetSlicerManagerCurrentIndex();
+    mSlicerManagersCompatible = mMainWindow->GetSlicerManagers();
+    mCurrentCompatibleIndex = mMainWindow->GetSlicerManagerCurrentIndex();
     }
     mToolInputSelectionWidget->Initialize(mSlicerManagersCompatible, 
     mCurrentCompatibleIndex);