X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolSimpleInputSelectorWidget.cxx;h=4f7d55e9fd08c6f84847275a7fa16b91129f059c;hb=ec98e4a8aed11c9daa9bd7e2439d1ac489c933c7;hp=70700fc93c975d83da9255197820e95fa123a157;hpb=61d57d331b0459560f6714c0c6bb8298868a662e;p=clitk.git diff --git a/vv/vvToolSimpleInputSelectorWidget.cxx b/vv/vvToolSimpleInputSelectorWidget.cxx index 70700fc..4f7d55e 100644 --- a/vv/vvToolSimpleInputSelectorWidget.cxx +++ b/vv/vvToolSimpleInputSelectorWidget.cxx @@ -3,8 +3,8 @@ Program: vv Module: $RCSfile: vvToolSimpleInputSelectorWidget.cxx,v $ Language: C++ - Date: $Date: 2010/03/17 11:23:46 $ - Version: $Revision: 1.1 $ + Date: $Date: 2010/03/24 20:35:13 $ + Version: $Revision: 1.3 $ Author : David Sarrut (david.sarrut@creatis.insa-lyon.fr) Copyright (C) 2010 @@ -30,6 +30,7 @@ #include "vvToolSimpleInputSelectorWidget.h" #include "vvSlicerManager.h" +#include //------------------------------------------------------------------------------ vvToolSimpleInputSelectorWidget::vvToolSimpleInputSelectorWidget(QWidget * parent, Qt::WindowFlags f): @@ -47,20 +48,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 +116,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();