From 5ccb7d953a13da1b9d33d7d8d427f086c79223dc Mon Sep 17 00:00:00 2001 From: eap Date: Wed, 7 Mar 2012 15:10:28 +0000 Subject: [PATCH] 0021308: Remove hard-coded dependency of the external mesh plugins from the SMESH module Call h->SetVarParameter() instead of h->SetParameters() --- .../StdMeshersGUI_CartesianParamCreator.cxx | 7 +- ...tdMeshersGUI_LayerDistributionParamWdg.cxx | 1 - .../StdMeshersGUI_NbSegmentsCreator.cxx | 18 +-- .../StdMeshersGUI_StdHypothesisCreator.cxx | 139 ++++++++---------- .../StdMeshersGUI_StdHypothesisCreator.h | 2 +- 5 files changed, 74 insertions(+), 93 deletions(-) diff --git a/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx b/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx index e161c9ae2..23b29070d 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx @@ -632,7 +632,11 @@ void StdMeshersGUI_CartesianParamCreator::retrieveParams() const if( myName ) myName->setText( hypName() ); - myThreshold->setValue( h->GetSizeThreshold() ); + QString varName = getVariableName( "SetSizeThreshold" ); + if ( !varName.isEmpty() ) + myThreshold->setValue( h->GetSizeThreshold() ); + else + myThreshold->setText( varName ); for ( int ax = 0; ax < 3; ++ax ) { @@ -663,6 +667,7 @@ QString StdMeshersGUI_CartesianParamCreator::storeParams() const if( isCreation() ) SMESH::SetName( SMESH::FindSObject( h ), myName->text().toLatin1().constData() ); + h->SetVarParameter( myThreshold->text().toLatin1().constData(), "SetSizeThreshold" ); h->SetSizeThreshold( myThreshold->text().toDouble() ); for ( int ax = 0; ax < 3; ++ax ) diff --git a/src/StdMeshersGUI/StdMeshersGUI_LayerDistributionParamWdg.cxx b/src/StdMeshersGUI/StdMeshersGUI_LayerDistributionParamWdg.cxx index 5cad8187e..4c46d8193 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_LayerDistributionParamWdg.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_LayerDistributionParamWdg.cxx @@ -200,7 +200,6 @@ void StdMeshersGUI_LayerDistributionParamWdg::onEdit() CORBA::String_var hypType = myHyp->GetName(); // BUG 0020378 - //SMESHGUI_GenericHypothesisCreator* editor = SMESH::GetHypothesisCreator(hypType.in()); SMESHGUI_GenericHypothesisCreator* editor = SMESH::GetHypothesisCreator(hypType.in()); if ( !editor ) return; diff --git a/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx b/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx index e0e226390..e24950cf9 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx @@ -317,17 +317,17 @@ bool StdMeshersGUI_NbSegmentsCreator::readParamsFromHypo( NbSegmentsHypothesisDa h_data.myName = hypName(); h_data.myNbSeg = (int) h->GetNumberOfSegments(); - - SMESH::ListOfParameters_var aParameters = h->GetLastParameters(); - h_data.myNbSegVarName = (aParameters->length() > 0) ? QString(aParameters[0].in()) : QString(""); + CORBA::String_var aVaribaleName = h->GetVarParameter( "SetNumberOfSegments" ); + h_data.myNbSegVarName = aVaribaleName.in(); int distr = (int) h->GetDistrType(); h_data.myDistrType = distr; h_data.myScale = distr==1 ? h->GetScaleFactor() : 1.0; - if(distr==1){ - h_data.myScaleVarName = (aParameters->length() > 1) ? QString(aParameters[1].in()) : QString(""); + if(distr==1) { + aVaribaleName = h->GetVarParameter( "SetScaleFactor" ); + h_data.myScaleVarName = aVaribaleName.in(); } else h_data.myScaleVarName = QString(""); @@ -364,16 +364,14 @@ bool StdMeshersGUI_NbSegmentsCreator::storeParamsToHypo( const NbSegmentsHypothe if( isCreation() ) SMESH::SetName( SMESH::FindSObject( h ), h_data.myName.toLatin1().data() ); - QStringList aVariablesList; - aVariablesList.append(h_data.myNbSegVarName); - + h->SetVarParameter( h_data.myNbSegVarName.toLatin1().constData(), "SetNumberOfSegments" ); h->SetNumberOfSegments( h_data.myNbSeg ); int distr = h_data.myDistrType; h->SetDistrType( distr ); if( distr==1 ) { + h->SetVarParameter( h_data.myScaleVarName.toLatin1().constData(), "SetScaleFactor" ); h->SetScaleFactor( h_data.myScale ); - aVariablesList.append(h_data.myScaleVarName); } if( distr==2 || distr==3 ) h->SetConversionMode( h_data.myConv ); @@ -391,8 +389,6 @@ bool StdMeshersGUI_NbSegmentsCreator::storeParamsToHypo( const NbSegmentsHypothe //setting of function must follow after setConversionMode, because otherwise //the function will be checked with old conversion mode, so that it may occurs //unexpected errors for user - - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); } catch(const SALOME::SALOME_Exception& ex) { diff --git a/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.cxx b/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.cxx index b807d2d23..9fc33b4d0 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.cxx @@ -466,7 +466,7 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const } QString valueStr = stdParamValues( params ); - QStringList aVariablesList = getVariablesFromDlg(); + //QStringList aVariablesList = getVariablesFromDlg(); if( res && !params.isEmpty() ) { @@ -475,18 +475,18 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshers::StdMeshers_LocalLength_var h = StdMeshers::StdMeshers_LocalLength::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetLength" ); h->SetLength( params[0].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); + h->SetVarParameter( params[1].text(), "SetPrecision" ); h->SetPrecision( params[1].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); } else if( hypType()=="MaxLength" ) { StdMeshers::StdMeshers_MaxLength_var h = StdMeshers::StdMeshers_MaxLength::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetLength" ); h->SetLength( params[0].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); h->SetUsePreestimatedLength( widget< QCheckBox >( 1 )->isChecked() ); if ( !h->HavePreestimatedLength() && !h->_is_equivalent( initParamsHypothesis() )) { StdMeshers::StdMeshers_MaxLength_var hInit = @@ -499,8 +499,8 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshers::StdMeshers_SegmentLengthAroundVertex_var h = StdMeshers::StdMeshers_SegmentLengthAroundVertex::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetLength" ); h->SetLength( params[0].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); } else if( hypType()=="Arithmetic1D" ) { @@ -510,10 +510,10 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshersGUI_SubShapeSelectorWdg* w = widget< StdMeshersGUI_SubShapeSelectorWdg >( 2 ); + h->SetVarParameter( params[0].text(), "SetStartLength" ); h->SetStartLength( params[0].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); + h->SetVarParameter( params[1].text(), "SetEndLength" ); h->SetEndLength( params[1].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); if (w) { h->SetReversedEdges( w->GetListOfIDs() ); h->SetObjectEntry( w->GetMainShapeEntry() ); @@ -531,7 +531,6 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const widget< StdMeshersGUI_SubShapeSelectorWdg >( 1 ); if (w1) { - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); h->SetPoints( w1->GetListOfPoints() ); h->SetNbSegments( w1->GetListOfSegments() ); } @@ -544,7 +543,7 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const { StdMeshers::StdMeshers_MaxElementArea_var h = StdMeshers::StdMeshers_MaxElementArea::_narrow( hypothesis() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); + h->SetVarParameter( params[0].text(), "SetMaxElementArea" ); h->SetMaxElementArea( params[0].myValue.toDouble() ); } else if( hypType()=="MaxElementVolume" ) @@ -552,8 +551,8 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshers::StdMeshers_MaxElementVolume_var h = StdMeshers::StdMeshers_MaxElementVolume::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetMaxElementVolume" ); h->SetMaxElementVolume( params[0].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); } else if( hypType()=="StartEndLength" ) { @@ -563,10 +562,10 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshersGUI_SubShapeSelectorWdg* w = widget< StdMeshersGUI_SubShapeSelectorWdg >( 2 ); + h->SetVarParameter( params[0].text(), "SetStartLength" ); h->SetStartLength( params[0].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); + h->SetVarParameter( params[1].text(), "SetEndLength" ); h->SetEndLength( params[1].myValue.toDouble() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); if (w) { h->SetReversedEdges( w->GetListOfIDs() ); h->SetObjectEntry( w->GetMainShapeEntry() ); @@ -576,7 +575,7 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const { StdMeshers::StdMeshers_Deflection1D_var h = StdMeshers::StdMeshers_Deflection1D::_narrow( hypothesis() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); + h->SetVarParameter( params[0].text(), "SetDeflection" ); h->SetDeflection( params[0].myValue.toDouble() ); } else if( hypType()=="AutomaticLength" ) @@ -584,6 +583,7 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshers::StdMeshers_AutomaticLength_var h = StdMeshers::StdMeshers_AutomaticLength::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetFineness" ); h->SetFineness( params[0].myValue.toDouble() ); } else if( hypType()=="NumberOfLayers" ) @@ -591,8 +591,8 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshers::StdMeshers_NumberOfLayers_var h = StdMeshers::StdMeshers_NumberOfLayers::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetNumberOfLayers" ); h->SetNumberOfLayers( params[0].myValue.toInt() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); } else if( hypType()=="LayerDistribution" ) { @@ -602,16 +602,14 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const widget< StdMeshersGUI_LayerDistributionParamWdg >( 0 ); h->SetLayerDistribution( w->GetHypothesis() ); - h->SetParameters(w->GetHypothesis()->GetParameters()); - w->GetHypothesis()->ClearParameters(); } else if( hypType()=="NumberOfLayers2D" ) { StdMeshers::StdMeshers_NumberOfLayers2D_var h = StdMeshers::StdMeshers_NumberOfLayers2D::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetNumberOfLayers" ); h->SetNumberOfLayers( params[0].myValue.toInt() ); - h->SetParameters(aVariablesList.join(":").toLatin1().constData()); } else if( hypType()=="LayerDistribution2D" ) { @@ -621,8 +619,6 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const widget< StdMeshersGUI_LayerDistributionParamWdg >( 0 ); h->SetLayerDistribution( w->GetHypothesis() ); - h->SetParameters(w->GetHypothesis()->GetParameters()); - w->GetHypothesis()->ClearParameters(); } else if( hypType()=="ProjectionSource1D" ) { @@ -685,18 +681,17 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const StdMeshers::StdMeshers_ViscousLayers_var h = StdMeshers::StdMeshers_ViscousLayers::_narrow( hypothesis() ); + h->SetVarParameter( params[0].text(), "SetTotalThickness" ); h->SetTotalThickness( params[0].myValue.toDouble() ); - /* */ h->SetParameters(aVariablesList.join(":").toLatin1().constData()); + h->SetVarParameter( params[1].text(), "SetNumberLayers" ); h->SetNumberLayers ( params[1].myValue.toInt() ); - /* */ h->SetParameters(aVariablesList.join(":").toLatin1().constData()); + h->SetVarParameter( params[2].text(), "SetStretchFactor" ); h->SetStretchFactor ( params[2].myValue.toDouble() ); - /* */ h->SetParameters(aVariablesList.join(":").toLatin1().constData()); - + if ( StdMeshersGUI_SubShapeSelectorWdg* idsWg = widget< StdMeshersGUI_SubShapeSelectorWdg >( 3 )) { h->SetIgnoreFaces( idsWg->GetListOfIDs() ); - //h->SetObjectEntry( idsWg->GetMainShapeEntry() ); } } else if( hypType()=="QuadrangleParams" ) @@ -723,15 +718,15 @@ QString StdMeshersGUI_StdHypothesisCreator::storeParams() const //================================================================================ /*! * \brief Return parameter values as SMESHGUI_GenericHypothesisCreator::StdParam - * \param p - list of parameters - * \retval bool - success flag - * - * Is called from SMESHGUI_GenericHypothesisCreator::buildStdFrame(). - * Parameters will be shown using "standard" controls: - * Int by QtxIntSpinBox - * Double by SMESHGUI_SpinBox - * String by QLineEdit - * getCustomWidget() allows to redefine control for a parameter + * \param p - list of parameters + * \retval bool - success flag + * + * Is called from SMESHGUI_GenericHypothesisCreator::buildStdFrame(). + * Parameters will be shown using "standard" controls: + * Int by QtxIntSpinBox + * Double by SMESHGUI_SpinBox + * String by QLineEdit + * getCustomWidget() allows to redefine control for a parameter */ //================================================================================ @@ -750,7 +745,7 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const p.append( item ); customWidgets()->append(0); } - + SMESH::SMESH_Hypothesis_var hyp = initParamsHypothesis(); SMESH::ListOfParameters_var aParameters = hyp->GetLastParameters(); @@ -758,17 +753,16 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const { StdMeshers::StdMeshers_LocalLength_var h = StdMeshers::StdMeshers_LocalLength::_narrow( hyp ); - + item.myName = tr("SMESH_LOCAL_LENGTH_PARAM"); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetLength")) item.myValue = h->GetLength(); p.append( item ); - + item.myName = tr("SMESH_LOCAL_LENGTH_PRECISION"); - if(!initVariableName(aParameters,item,1)) + if(!initVariableName( hyp, item, "SetPrecision")) item.myValue = h->GetPrecision(); p.append( item ); - } else if( hypType()=="MaxLength" ) { @@ -786,7 +780,7 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const } item.myName = tr("SMESH_LOCAL_LENGTH_PARAM"); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetLength")) item.myValue = h->GetLength(); p.append( item ); customWidgets()->append(0); @@ -810,7 +804,7 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const StdMeshers::StdMeshers_SegmentLengthAroundVertex::_narrow( hyp ); item.myName = tr("SMESH_LOCAL_LENGTH_PARAM"); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetLength")) item.myValue = h->GetLength(); p.append( item ); @@ -821,14 +815,14 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const StdMeshers::StdMeshers_Arithmetic1D::_narrow( hyp ); item.myName = tr( "SMESH_START_LENGTH_PARAM" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetStartLength" )) item.myValue = h->GetLength( true ); p.append( item ); customWidgets()->append (0); item.myName = tr( "SMESH_END_LENGTH_PARAM" ); - if(!initVariableName(aParameters,item,1)) + if(!initVariableName( hyp, item, "SetEndLength" )) item.myValue = h->GetLength( false ); p.append( item ); @@ -892,7 +886,7 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const StdMeshers::StdMeshers_MaxElementArea::_narrow( hyp ); item.myName = tr( "SMESH_MAX_ELEMENT_AREA_PARAM" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetMaxElementArea" )) item.myValue = h->GetMaxElementArea(); p.append( item ); @@ -903,7 +897,7 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const StdMeshers::StdMeshers_MaxElementVolume::_narrow( hyp ); item.myName = tr( "SMESH_MAX_ELEMENT_VOLUME_PARAM" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetMaxElementVolume" )) item.myValue = h->GetMaxElementVolume(); p.append( item ); } @@ -914,13 +908,13 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const item.myName = tr( "SMESH_START_LENGTH_PARAM" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetStartLength" )) item.myValue = h->GetLength( true ); p.append( item ); customWidgets()->append(0); item.myName = tr( "SMESH_END_LENGTH_PARAM" ); - if(!initVariableName(aParameters,item,1)) + if(!initVariableName( hyp, item, "SetEndLength" )) item.myValue = h->GetLength( false ); p.append( item ); customWidgets()->append(0); @@ -946,7 +940,7 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const StdMeshers::StdMeshers_Deflection1D::_narrow( hyp ); item.myName = tr( "SMESH_DEFLECTION1D_PARAM" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetDeflection" )) item.myValue = h->GetDeflection(); p.append( item ); } @@ -969,50 +963,37 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const StdMeshers::StdMeshers_NumberOfLayers::_narrow( hyp ); item.myName = tr( "SMESH_NUMBER_OF_LAYERS" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetNumberOfLayers" )) item.myValue = (int) h->GetNumberOfLayers(); p.append( item ); } - else if( hypType()=="LayerDistribution" ) { + else if( hypType()=="LayerDistribution" ) + { StdMeshers::StdMeshers_LayerDistribution_var h = StdMeshers::StdMeshers_LayerDistribution::_narrow( hyp ); item.myName = tr( "SMESH_LAYERS_DISTRIBUTION" ); p.append( item ); - - //Set into not published hypo last variables - QStringList aLastVarsList; - for(int i = 0;ilength();i++) - aLastVarsList.append(QString(aParameters[i].in())); - - if(!aLastVarsList.isEmpty()) - h->GetLayerDistribution()->SetLastParameters(aLastVarsList.join(":").toLatin1().constData()); - + initVariableName( hyp, item, "SetLayerDistribution" ); customWidgets()->append ( new StdMeshersGUI_LayerDistributionParamWdg( h->GetLayerDistribution(), hypName(), dlg())); } - else if( hypType()=="NumberOfLayers2D" ) { + else if( hypType()=="NumberOfLayers2D" ) + { StdMeshers::StdMeshers_NumberOfLayers2D_var h = StdMeshers::StdMeshers_NumberOfLayers2D::_narrow( hyp ); item.myName = tr( "SMESH_NUMBER_OF_LAYERS" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetNumberOfLayers" )) item.myValue = (int) h->GetNumberOfLayers(); p.append( item ); } - else if( hypType()=="LayerDistribution2D" ) { + else if( hypType()=="LayerDistribution2D" ) + { StdMeshers::StdMeshers_LayerDistribution2D_var h = StdMeshers::StdMeshers_LayerDistribution2D::_narrow( hyp ); item.myName = tr( "SMESH_LAYERS_DISTRIBUTION" ); p.append( item ); - - //Set into not published hypo last variables - QStringList aLastVarsList; - for(int i = 0;ilength();i++) - aLastVarsList.append(QString(aParameters[i].in())); - - if(!aLastVarsList.isEmpty()) - h->GetLayerDistribution()->SetLastParameters(aLastVarsList.join(":").toLatin1().constData()); - + initVariableName( hyp, item, "SetLayerDistribution" ); customWidgets()->append ( new StdMeshersGUI_LayerDistributionParamWdg( h->GetLayerDistribution(), hypName(), dlg())); } @@ -1138,19 +1119,19 @@ bool StdMeshersGUI_StdHypothesisCreator::stdParams( ListOfStdParams& p ) const StdMeshers::StdMeshers_ViscousLayers::_narrow( hyp ); item.myName = tr( "SMESH_TOTAL_THICKNESS" ); - if(!initVariableName(aParameters,item,0)) + if(!initVariableName( hyp, item, "SetTotalThickness" )) item.myValue = h->GetTotalThickness(); p.append( item ); customWidgets()->append (0); item.myName = tr( "SMESH_NUMBER_OF_LAYERS" ); - if(!initVariableName(aParameters,item,1)) + if(!initVariableName( hyp, item, "SetNumberLayers" )) item.myValue = h->GetNumberLayers(); p.append( item ); customWidgets()->append (0); item.myName = tr( "SMESH_STRETCH_FACTOR" ); - if(!initVariableName(aParameters,item,2)) + if(!initVariableName( hyp, item, "SetStretchFactor" )) item.myValue = h->GetStretchFactor(); p.append( item ); customWidgets()->append (0); @@ -1512,13 +1493,13 @@ void StdMeshersGUI_StdHypothesisCreator::valueChanged( QWidget* paramWidget) */ //================================================================================ -bool StdMeshersGUI_StdHypothesisCreator::initVariableName(SMESH::ListOfParameters_var theParameters, - StdParam &theParams, - int order) const +bool StdMeshersGUI_StdHypothesisCreator::initVariableName(SMESH::SMESH_Hypothesis_var theHyp, + StdParam & theParams, + const char* theMethod) const { - QString aVaribaleName = (theParameters->length() > order) ? QString(theParameters[order].in()) : QString(""); + QString aVaribaleName = getVariableName( theMethod ); theParams.isVariable = !aVaribaleName.isEmpty(); - if(theParams.isVariable) + if (theParams.isVariable) theParams.myValue = aVaribaleName; return theParams.isVariable; diff --git a/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.h b/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.h index 9925eba46..4daeaaf58 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.h +++ b/src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.h @@ -60,7 +60,7 @@ protected: virtual QWidget* getWidgetForParam( int paramIndex ) const; virtual ListOfWidgets* customWidgets() const; virtual void onReject(); - virtual bool initVariableName(SMESH::ListOfParameters_var theParameters, StdParam& theParams, int order) const; + bool initVariableName(SMESH::SMESH_Hypothesis_var theHyp, StdParam& theParams, const char* theMethod) const; virtual void valueChanged( QWidget* ); -- 2.39.2