X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FStdMeshersGUI%2FStdMeshersGUI_CartesianParamCreator.cxx;h=7273b404b437db940b40fd2d276659fa2336f32d;hb=e330934ca6f8bb1f67b5367bb65a861868998aeb;hp=88ad6ddc365c25c9465b4933239af2a301aef088;hpb=5d68554076bbca0e1e95fb0db215a6c2b84b6c54;p=modules%2Fsmesh.git diff --git a/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx b/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx index 88ad6ddc3..7273b404b 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_CartesianParamCreator.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -40,7 +40,6 @@ #include #include #include -#include #include #include #include @@ -58,6 +57,7 @@ #include #include #include +#include #include #include #include @@ -177,7 +177,7 @@ namespace StdMeshersGUI myStepSpin->SetStep( 1. ); myStepSpin->SetValue( myStep = 1. ); - // 3) Coodrinates/Spacing group + // 3) Coordinates/Spacing group QFrame* csFrame = new QFrame( this ); QVBoxLayout* scLay = new QVBoxLayout( csFrame ); scLay->setMargin( 0 ); @@ -319,10 +319,10 @@ namespace StdMeshersGUI void GridAxisTab::onMode(int isSpacing) { - mySpacingTreeWdg->setShown( isSpacing ); - myCoordList->setShown( !isSpacing ); - myStepSpin->setShown( !isSpacing ); - myStepLabel->setShown( !isSpacing ); + mySpacingTreeWdg->setVisible( isSpacing ); + myCoordList->setVisible( !isSpacing ); + myStepSpin->setVisible( !isSpacing ); + myStepLabel->setVisible( !isSpacing ); if ( isSpacing ) { if ( mySpacingTreeWdg->topLevelItemCount() == 0 ) @@ -430,7 +430,7 @@ namespace StdMeshersGUI //================================================================================ /*! - * \brief Checks grid definintion mode + * \brief Checks grid definition mode */ //================================================================================ @@ -677,6 +677,22 @@ namespace dirs[( iOk+2 ) % 3] = dirs[ iOk ] ^ dirs[ ( iOk+1 ) % 3 ]; dirs[( iOk+1 ) % 3] = dirs[ ( iOk+2 ) % 3 ] ^ dirs[ iOk ]; } + + //================================================================================ + /*! + * \brief Returns a minimal width of a SpinBox depending on a precision type + */ + //================================================================================ + + int getMinWidth( const char* precisionType ) + { + int nb = SMESHGUI::resourceMgr()->integerValue( "SMESH", precisionType, -3 ); + QString s; + s.fill('0', qAbs(nb)+7 ); + QLineEdit le; + QFontMetrics metrics( le.font() ); + return metrics.width( s ); + } } //================================================================================ @@ -858,7 +874,9 @@ QFrame* StdMeshersGUI_CartesianParamCreator::buildFrame() axisLbl[2] = new QLabel( tr( "AXIS_Z"), axesDirGrp ); QLabel* dLbl[3]; myAxisBtnGrp = new QButtonGroup( axesDirGrp ); - SMESHGUI_SpinBox** spins[3] = { &myXDirSpin[0], &myYDirSpin[0], &myZDirSpin[0] }; + // get spin width + const char * const precisionType = "len_tol_precision"; + int minWidth = getMinWidth( precisionType ); for ( int i = 0; i < 3; ++i ) { QPushButton* axisBtn = new QPushButton( QIcon(aPix), "", axesDirGrp ); @@ -867,9 +885,12 @@ QFrame* StdMeshersGUI_CartesianParamCreator::buildFrame() myXDirSpin[i] = new SMESHGUI_SpinBox( axesDirGrp ); myYDirSpin[i] = new SMESHGUI_SpinBox( axesDirGrp ); myZDirSpin[i] = new SMESHGUI_SpinBox( axesDirGrp ); - myXDirSpin[i]->RangeStepAndValidator( -1, 1, 0.1, "len_tol_precision" ); - myYDirSpin[i]->RangeStepAndValidator( -1, 1, 0.1, "len_tol_precision" ); - myZDirSpin[i]->RangeStepAndValidator( -1, 1, 0.1, "len_tol_precision" ); + myXDirSpin[i]->RangeStepAndValidator( -1, 1, 0.1, precisionType ); + myYDirSpin[i]->RangeStepAndValidator( -1, 1, 0.1, precisionType ); + myZDirSpin[i]->RangeStepAndValidator( -1, 1, 0.1, precisionType ); + myXDirSpin[i]->setMinimumWidth( minWidth ); + myYDirSpin[i]->setMinimumWidth( minWidth ); + myZDirSpin[i]->setMinimumWidth( minWidth ); dLbl[0] = new QLabel( tr("SMESH_DX"), axesDirGrp ); dLbl[1] = new QLabel( tr("SMESH_DY"), axesDirGrp ); dLbl[2] = new QLabel( tr("SMESH_DZ"), axesDirGrp ); @@ -959,7 +980,7 @@ QFrame* StdMeshersGUI_CartesianParamCreator::buildFrame() //================================================================================ /*! - * \brief Tranfer parameters from hypothesis to widgets + * \brief Transfer parameters from hypothesis to widgets */ //================================================================================ @@ -1047,7 +1068,7 @@ void StdMeshersGUI_CartesianParamCreator::retrieveParams() const //================================================================================ /*! - * \brief Tranfer parameters from widgets to hypothesis + * \brief Transfer parameters from widgets to hypothesis */ //================================================================================ @@ -1059,7 +1080,7 @@ QString StdMeshersGUI_CartesianParamCreator::storeParams() const try { if( isCreation() ) - SMESH::SetName( SMESH::FindSObject( h ), myName->text().toLatin1().constData() ); + SMESH::SetName( SMESH::FindSObject( h ), myName->text().toUtf8().constData() ); // threshold h->SetVarParameter( myThreshold->text().toLatin1().constData(), "SetSizeThreshold" ); @@ -1088,7 +1109,7 @@ QString StdMeshersGUI_CartesianParamCreator::storeParams() const params << myPointSpin[0]->text(); params << myPointSpin[1]->text(); params << myPointSpin[2]->text(); - h->SetVarParameter( params.join(":").toLatin1().constData(), "SetFixedPoint" ); + h->SetVarParameter( params.join(":").toUtf8().constData(), "SetFixedPoint" ); params.clear(); SMESH::PointStruct ps; @@ -1105,7 +1126,7 @@ QString StdMeshersGUI_CartesianParamCreator::storeParams() const params << spins[ax][1]->text(); params << spins[ax][2]->text(); } - h->SetVarParameter( params.join(":").toLatin1().constData(), "SetAxesDirs" ); + h->SetVarParameter( params.join(":").toUtf8().constData(), "SetAxesDirs" ); SMESH::DirStruct axDir[3]; for ( int ax = 0; ax < 3; ++ax ) @@ -1132,7 +1153,7 @@ QString StdMeshersGUI_CartesianParamCreator::storeParams() const QString StdMeshersGUI_CartesianParamCreator::helpPage() const { - return "cartesian_algo_page.html#cartesian_hyp_anchor"; + return "cartesian_algo.html#cartesian-hyp-anchor"; } //================================================================================ @@ -1407,7 +1428,7 @@ void StdMeshersGUI_CartesianParamCreator::onResetAxes(bool) //================================================================================ /*! - * \brief SLOT called when the grid definintion mode changes + * \brief SLOT called when the grid definition mode changes */ //================================================================================