X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolSimpleInputSelectorWidget.cxx;h=02d02775d7025e97d8180d9e65646c7eaac17dc2;hb=163fa80ef3873595f3e3cf75fb03e53536d1a6ee;hp=70700fc93c975d83da9255197820e95fa123a157;hpb=61d57d331b0459560f6714c0c6bb8298868a662e;p=clitk.git diff --git a/vv/vvToolSimpleInputSelectorWidget.cxx b/vv/vvToolSimpleInputSelectorWidget.cxx index 70700fc..02d0277 100644 --- a/vv/vvToolSimpleInputSelectorWidget.cxx +++ b/vv/vvToolSimpleInputSelectorWidget.cxx @@ -1,35 +1,25 @@ /*========================================================================= + Program: vv http://www.creatis.insa-lyon.fr/rio/vv - Program: vv - Module: $RCSfile: vvToolSimpleInputSelectorWidget.cxx,v $ - Language: C++ - Date: $Date: 2010/03/17 11:23:46 $ - Version: $Revision: 1.1 $ - 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) 2010 - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr - CREATIS 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. - - 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 . - - =========================================================================*/ + It is distributed under dual licence + - BSD See included LICENSE.txt file + - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +======================================================================-====*/ #ifndef VVTOOLINPUTSELECTORWIDGET_CXX #define VVTOOLINPUTSELECTORWIDGET_CXX - #include "vvToolSimpleInputSelectorWidget.h" #include "vvSlicerManager.h" +#include //------------------------------------------------------------------------------ vvToolSimpleInputSelectorWidget::vvToolSimpleInputSelectorWidget(QWidget * parent, Qt::WindowFlags f): @@ -47,20 +37,43 @@ void vvToolSimpleInputSelectorWidget::Initialize() { connect(mInputSelectionButtonBox, SIGNAL(accepted()), this, SLOT(accept())); connect(mInputSelectionButtonBox, SIGNAL(rejected()), this, SLOT(reject())); connect(mInputSequenceBox, SIGNAL(currentIndexChanged(int)), this, SLOT(changeInput(int))); - DD("vvToolSimpleInputSelectorWidget::Initialize"); - DD(mSlicerManagerList.size()); if (mSlicerManagerList.size() == 1) { - DD("Initialize::accept"); - accept(); + if (!mAllowSkip) accept(); + } + if (mSlicerManagerList.size() == 0) { + reject(); } } //------------------------------------------------------------------------------ +//------------------------------------------------------------------------------ +void vvToolSimpleInputSelectorWidget::SetText(QString & s) { + mGroupBox->setTitle(s); +} +//------------------------------------------------------------------------------ + + +//------------------------------------------------------------------------------ +void vvToolSimpleInputSelectorWidget::EnableAllowSkip(bool b) { + mAllowSkip = b; + if (mAllowSkip) { + mInputSelectionButtonBox->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::Ok|QDialogButtonBox::Discard); + connect(mInputSelectionButtonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(skip(QAbstractButton*))); + } + else + mInputSelectionButtonBox->setStandardButtons(QDialogButtonBox::Cancel|QDialogButtonBox::Ok); +} +//------------------------------------------------------------------------------ + + //------------------------------------------------------------------------------ void vvToolSimpleInputSelectorWidget::SetInputList(const std::vector & l, int index) { - DD("vvToolSimpleInputSelectorWidget::SetInputList"); - DD(index); + if (l.size() == 0) { + // TODO !!! + DD("no input > error message"); + reject(); + } mInputSequenceBox->clear(); for(unsigned int i=0; iaddItem(mSlicerManagerList[i]->GetFileName().c_str()); } mInputSequenceBox->setCurrentIndex(mCurrentIndex); - if (mSlicerManagerList.size() == 0) { - // TODO !!! - DD("no input > error message"); - reject(); - } + changeInput(mCurrentIndex); } //------------------------------------------------------------------------------ @@ -96,18 +105,23 @@ void vvToolSimpleInputSelectorWidget::accept() { //------------------------------------------------------------------------------ + //------------------------------------------------------------------------------ void vvToolSimpleInputSelectorWidget::reject() { - DD("vvToolSimpleInputSelectorWidget::reject()"); emit rejected(); } //------------------------------------------------------------------------------ +//------------------------------------------------------------------------------ +void vvToolSimpleInputSelectorWidget::skip(QAbstractButton* b) { + if (b->text() == "Discard") emit sigskip(); +} +//------------------------------------------------------------------------------ + + //------------------------------------------------------------------------------ void vvToolSimpleInputSelectorWidget::changeInput(int index) { - DD("changeInput"); - DD(index); if (index<0) return; mCurrentIndex = index; vvImage * mCurrentImage = mSlicerManagerList[index]->GetImage();