X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FStdMeshersGUI%2FStdMeshersGUI_NbSegmentsCreator.cxx;h=0d095e26bb96313ad2fddfc5a4d3d6e9c320a5a6;hp=cfb80164e4dc55852e8e69ba36b74a7640fc2745;hb=189e207e8943efaec894dbd9a338f77a13df44bd;hpb=b0a962d83d6318f800df0cf9a21fdda9baed80ad diff --git a/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx b/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx index cfb80164e..0d095e26b 100644 --- a/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx +++ b/src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 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 @@ -25,7 +25,9 @@ // SMESH includes // #include "StdMeshersGUI_NbSegmentsCreator.h" -#include "StdMeshersGUI_DistrPreview.h" +#ifndef DISABLE_PLOT2DVIEWER + #include "StdMeshersGUI_DistrPreview.h" +#endif #include "StdMeshersGUI_DistrTable.h" #include "StdMeshersGUI_PropagationHelperWdg.h" #include "StdMeshersGUI_SubShapeSelectorWdg.h" @@ -64,7 +66,9 @@ StdMeshersGUI_NbSegmentsCreator::StdMeshersGUI_NbSegmentsCreator() myDistr( 0 ), myScale( 0 ), myTable( 0 ), +#ifndef DISABLE_PLOT2DVIEWER myPreview( 0 ), +#endif myExpr( 0 ), myConvBox( 0 ), myConv( 0 ), @@ -90,9 +94,10 @@ bool StdMeshersGUI_NbSegmentsCreator::checkParams( QString& msg ) const readParamsFromHypo( data_old ); readParamsFromWidgets( data_new ); bool res = storeParamsToHypo( data_new ); - storeParamsToHypo( data_old ); res = myNbSeg->isValid( msg, true ) && res; res = myScale->isValid( msg, true ) && res; + if ( !res ) + storeParamsToHypo( data_old ); return res; } @@ -179,12 +184,14 @@ QFrame* StdMeshersGUI_NbSegmentsCreator::buildFrame() // c) table myTable = new StdMeshersGUI_DistrTableFrame( GroupC1 ); + myTable->setMinimumHeight(220); myDistLayout->addWidget( myTable, 1, 0, 2, 1 ); +#ifndef DISABLE_PLOT2DVIEWER // d) preview myPreview = new StdMeshersGUI_DistrPreview( GroupC1, h.in() ); - myPreview->setMinimumHeight(220); myDistLayout->addWidget( myPreview, 1, 1, 2, 1 ); +#endif // 5) conversion (radiogroup) myConvBox = new QGroupBox( tr( "SMESH_CONV_MODE" ), GroupC1 ); @@ -223,6 +230,7 @@ QFrame* StdMeshersGUI_NbSegmentsCreator::buildFrame() lay->setStretchFactor( GroupC1, 1); lay->setStretchFactor( myReversedEdgesBox, 1); + myReversedEdgesHelper = 0; if ( !aGeomEntry.isEmpty() || !aMainEntry.isEmpty() ) { myReversedEdgesHelper = new StdMeshersGUI_PropagationHelperWdg( myDirectionWidget, fr, false ); @@ -287,13 +295,13 @@ QString StdMeshersGUI_NbSegmentsCreator::storeParams() const case Regular : valStr += tr("SMESH_DISTR_REGULAR"); break; - case Scale : - valStr += tr("SMESH_NB_SEGMENTS_SCALE_PARAM") + " = " + QString::number( data.myScale );\ + case Scale : + valStr += tr("SMESH_NB_SEGMENTS_SCALE_PARAM") + " = " + QString::number( data.myScale ); break; case TabFunc : { //valStr += tr("SMESH_TAB_FUNC"); bool param = true; - for( int i=0; i < data.myTable.length(); i++, param = !param ) { + for( CORBA::ULong i = 0; i < data.myTable.length(); i++, param = !param ) { if ( param ) valStr += "["; valStr += QString::number( data.myTable[ i ]); @@ -375,9 +383,10 @@ bool StdMeshersGUI_NbSegmentsCreator::storeParamsToHypo( const NbSegmentsHypothe h->SetVarParameter( h_data.myNbSegVarName.toLatin1().constData(), "SetNumberOfSegments" ); h->SetNumberOfSegments( h_data.myNbSeg ); - int distr = h_data.myDistrType; - h->SetDistrType( distr ); + int distr = h_data.myDistrType; + if ( distr == 0 ) + h->SetDistrType( distr ); // this is actually needed at non-uniform -> uniform switch if( distr==1 ) { h->SetVarParameter( h_data.myScaleVarName.toLatin1().constData(), "SetScaleFactor" ); h->SetScaleFactor( h_data.myScale ); @@ -438,24 +447,27 @@ void StdMeshersGUI_NbSegmentsCreator::onValueChanged() myTable->setData( arr ); //update data in table } - myScale->setShown( distr==1 ); - myLScale->setShown( distr==1 ); - myReversedEdgesBox->setShown( distr!=0 ); + myScale->setVisible( distr==1 ); + myLScale->setVisible( distr==1 ); + myReversedEdgesBox->setVisible( distr!=0 ); if ( myReversedEdgesHelper ) { myReversedEdgesHelper->Clear(); - myReversedEdgesHelper->setShown( distr!=0 ); + myReversedEdgesHelper->setVisible( distr!=0 ); } myDirectionWidget->ShowPreview( distr!=0 ); bool isFunc = distr==2 || distr==3; - myPreview->setShown( isFunc ); - myConvBox->setShown( isFunc ); +#ifndef DISABLE_PLOT2DVIEWER + myPreview->setVisible( isFunc ); +#endif + myConvBox->setVisible( isFunc ); - myTable->setShown( distr==2 ); - myExpr->setShown( distr==3 ); - myLExpr->setShown( distr==3 ); - myInfo->setShown( distr==3); + myTable->setVisible( distr==2 ); + myExpr->setVisible( distr==3 ); + myLExpr->setVisible( distr==3 ); + myInfo->setVisible( distr==3); +#ifndef DISABLE_PLOT2DVIEWER //change of preview int nbSeg = myNbSeg->value(); if( distr==2 ) //preview for table-described function @@ -469,6 +481,7 @@ void StdMeshersGUI_NbSegmentsCreator::onValueChanged() if( isFunc ) myPreview->setConversion( StdMeshersGUI_DistrPreview::Conversion( myConv->checkedId() ) ); +#endif if ( (QtxComboBox*)sender() == myDistr && dlg() ) { QApplication::instance()->processEvents();