X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolInputSelectorWidget.cxx;h=82110f06143f370f13a931f776790790da97173a;hb=8f42f40e826ecc4cc45e08ed41cc5596da74991c;hp=3db9b6773124f118060ea932a6975578181bfe7d;hpb=0083c3fb2c66812489631c7551709d121de51625;p=clitk.git diff --git a/vv/vvToolInputSelectorWidget.cxx b/vv/vvToolInputSelectorWidget.cxx index 3db9b67..82110f0 100644 --- a/vv/vvToolInputSelectorWidget.cxx +++ b/vv/vvToolInputSelectorWidget.cxx @@ -1,65 +1,82 @@ +/*========================================================================= + Program: vv http://www.creatis.insa-lyon.fr/rio/vv + + 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 + + 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. + + 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 "vvToolInputSelectorWidget.h" #include "vvSlicerManager.h" //------------------------------------------------------------------------------ vvToolInputSelectorWidget::vvToolInputSelectorWidget(QWidget * parent, Qt::WindowFlags f): - QWidget(parent, f) { - setupUi(this); + QWidget(parent, f) +{ + setupUi(this); setEnabled(true); mNumberOfAcceptedInputs = 0; } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -int vvToolInputSelectorWidget::GetNumberOfInput() { +int vvToolInputSelectorWidget::GetNumberOfInput() +{ return mListOfSimpleInputWidget.size(); } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvToolInputSelectorWidget::AddInputSelector(QString & s, - const std::vector & l, - int index, - bool allowSkip) { - // DD("ICICICICICICICIC AddInputSelector ADD layout"); - // DD(index); - //DD(l.size()); +void vvToolInputSelectorWidget::AddInputSelector(QString & s, + const std::vector & l, + int index, + bool allowSkip) +{ + // Create a input selector widget vvToolSimpleInputSelectorWidget * input = new vvToolSimpleInputSelectorWidget; mListOfSimpleInputWidget.push_back(input); mSkipInput.push_back(false); - input->SetText(s); input->EnableAllowSkip(allowSkip); - // copy list + // Copy the list of slicermanager std::vector * ll = new std::vector; for(unsigned int i=0; ipush_back(l[i]); - // add + // Add input->SetInputList(*ll, index); - // input->setObjectName(QString::fromUtf8("TOTO")); mVerticalLayout->addWidget(input); // Enable or disable if (GetNumberOfInput() == 1) input->setEnabled(true); else input->setEnabled(false); - //DD(GetNumberOfInput()); - // Connect signals & slots + // Connect signals & slots connect(input, SIGNAL(accepted()), this, SLOT(accept())); - connect(input, SIGNAL(rejected()), this, SLOT(reject())); - connect(input, SIGNAL(sigskip()), this, SLOT(skip())); + connect(input, SIGNAL(rejected()), this, SLOT(reject())); + connect(input, SIGNAL(sigskip()), this, SLOT(skip())); } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvToolInputSelectorWidget::Initialize() { +void vvToolInputSelectorWidget::Initialize() +{ for(unsigned int i=0; iInitialize(); } @@ -67,38 +84,27 @@ void vvToolInputSelectorWidget::Initialize() { //------------------------------------------------------------------------------ -void vvToolInputSelectorWidget::accept() { - // DD("vvToolInputSelectorWidget::accept"); - //DD(mNumberOfAcceptedInputs); +void vvToolInputSelectorWidget::accept() +{ mNumberOfAcceptedInputs++; if (mNumberOfAcceptedInputs == GetNumberOfInput()) { setEnabled(false); emit accepted(); - } - else { - //DD("accepted"); - // for(unsigned int i=mNumberOfAcceptedInputs; iInitialize(); + } else { mListOfSimpleInputWidget[mNumberOfAcceptedInputs]->setEnabled(true); - //} } } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -void vvToolInputSelectorWidget::reject() { - // DD("vvToolInputSelectorWidget::reject"); +void vvToolInputSelectorWidget::reject() +{ if (mNumberOfAcceptedInputs != 0) { - // for(unsigned int i=mNumberOfAcceptedInputs; iInitialize(); - // DD(mNumberOfAcceptedInputs); mListOfSimpleInputWidget[mNumberOfAcceptedInputs]->setEnabled(false); mListOfSimpleInputWidget[mNumberOfAcceptedInputs-1]->setEnabled(true); mNumberOfAcceptedInputs--; - //} - } - else { + } else { emit rejected(); } } @@ -106,16 +112,17 @@ void vvToolInputSelectorWidget::reject() { //------------------------------------------------------------------------------ -void vvToolInputSelectorWidget::skip() { - // DD("SKIP"); +void vvToolInputSelectorWidget::skip() +{ mSkipInput[mNumberOfAcceptedInputs] = true; - accept();//mNumberOfAcceptedInputs++; + accept(); } //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ -std::vector & vvToolInputSelectorWidget::GetSelectedInputs() { +std::vector & vvToolInputSelectorWidget::GetSelectedInputs() +{ std::vector * l = new std::vector; for(unsigned int i=0; i & vvToolInputSelectorWidget::GetSelectedInputs() { //------------------------------------------------------------------------------ -void vvToolInputSelectorWidget::AnImageIsBeingClosed(vvSlicerManager * m) { +void vvToolInputSelectorWidget::AnImageIsBeingClosed(vvSlicerManager * m) +{ // DD("TODO : verify that the image still exist !!"); // for(int i=0; i< }