From: vsr Date: Fri, 15 Nov 2013 09:49:33 +0000 (+0000) Subject: Fix error with wrong entity type when editing field created on a whole shape X-Git-Tag: BR_hydro_v_0_3_1~19 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=2a044ae940dce2216f2cc06b79ea90089eac8580;p=modules%2Fgeom.git Fix error with wrong entity type when editing field created on a whole shape --- diff --git a/src/EntityGUI/EntityGUI_FieldDlg.cxx b/src/EntityGUI/EntityGUI_FieldDlg.cxx index 1ab1d8c91..f8f129ebd 100644 --- a/src/EntityGUI/EntityGUI_FieldDlg.cxx +++ b/src/EntityGUI/EntityGUI_FieldDlg.cxx @@ -1181,7 +1181,7 @@ void EntityGUI_FieldDlg::SelectionIntoArgument() // re-fill myDimCombo //const int curDim = getDim(); - updateDims( -1 ); + updateDims( -100 ); // update table onDimChange(); @@ -1607,14 +1607,14 @@ void EntityGUI_FieldDlg::updateDims(int curDim) { exp.Init( aShape, getShapeType(&dim)); if ( exp.More() && !aShape.IsSame( exp.Current() )) - { myDimCombo->insertItem( dim, tr( subNames[dim] ), dim ); - if ( dim == curDim ) // restore current dim - myDimCombo->setCurrentIndex( myDimCombo->count()-1 ); - } } myDimCombo->insertItem( 4, tr("WHOLE"), -1 ); - if ( getDim() != curDim ) + + int idx = myDimCombo->findData( curDim ); + if ( idx != -1 ) + myDimCombo->setCurrentIndex( idx ); + else myDimCombo->setCurrentIndex( myDimCombo->count()-1-(myDimCombo->count()>1?1:0) ); } myDimCombo->blockSignals( false );