diff --git a/Code/ApplicationEngine/otbWrapperEmptyParameter.h b/Code/ApplicationEngine/otbWrapperEmptyParameter.h index f8ce2128526e03fb4454abf2943cd87bb0c55ff2..49e73812f1180668ded6dd849cef17918e74c279 100644 --- a/Code/ApplicationEngine/otbWrapperEmptyParameter.h +++ b/Code/ApplicationEngine/otbWrapperEmptyParameter.h @@ -44,10 +44,35 @@ public: /** RTTI support */ itkTypeMacro(EmptyParameter, Parameter); + bool HasValue() const + { + return m_Value; + } + + virtual void ClearValue() + { + m_Value = false; + } + + /** Set the value */ + void SetValue( bool value) + { + // TODO check minimum/maximum + m_Value = value; + SetActive(true); + } + + /** + * Implement the reset method (replace value by default value = false) + */ + virtual void Reset() + { + m_Value = false; + } protected: /** Constructor */ - EmptyParameter() + EmptyParameter():m_Value(false) {} /** Destructor */ @@ -58,7 +83,10 @@ private: EmptyParameter(const EmptyParameter &); //purposely not implemented void operator =(const EmptyParameter&); //purposely not implemented -}; // End class Parameter + /** Value */ + bool m_Value; + +}; // End class EmptyParameter } // End namespace Wrapper } // End namespace otb diff --git a/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.cxx b/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.cxx index 22b2f0363f338a4575afbf3b6f1e822a4d1dda3a..6834692d89761b08b6ee0b8f0aea17f9d12eb61a 100644 --- a/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.cxx +++ b/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.cxx @@ -46,6 +46,7 @@ void QtWidgetEmptyParameter::DoCreateWidget() m_QCheckBox = new QCheckBox; m_QCheckBox->setToolTip(m_EmptyParam->GetDescription()); + connect(m_QCheckBox, SIGNAL(stateChanged(int)), this, SLOT(SetValue(int))); QString optionID(m_EmptyParam->GetName()); m_QHBoxLayout->addWidget(m_QCheckBox); @@ -54,5 +55,20 @@ void QtWidgetEmptyParameter::DoCreateWidget() this->setLayout(m_QHBoxLayout); } +void QtWidgetEmptyParameter::SetValue( int value ) +{ + switch(value) + { + case Qt::Unchecked: + m_EmptyParam->SetValue(false); + break; + case Qt::PartiallyChecked: + break; + case Qt::Checked: + m_EmptyParam->SetValue(true); + break; + } +} + } } diff --git a/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.h b/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.h index d733bc868f075ae26d25a3ecdb8e15185d41e2f4..18eee1c0c411933ebe63bf90cc83b1761490df9a 100644 --- a/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.h +++ b/Code/Wrappers/QtWidget/otbWrapperQtWidgetEmptyParameter.h @@ -38,6 +38,9 @@ public: QtWidgetEmptyParameter(EmptyParameter*, QtWidgetModel*); virtual ~QtWidgetEmptyParameter(); +protected slots: + void SetValue( int value ); + private: QtWidgetEmptyParameter(const QtWidgetEmptyParameter&); //purposely not implemented void operator=(const QtWidgetEmptyParameter&); //purposely not implemented