X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_Hypotheses.cxx;h=257cb657c30fcdea74830fa724786f274f826c64;hp=504607da543b8e70bdf7004f2e04a889f38568c1;hb=1b80c8bc605eaea62874a92d75613657bf664e9e;hpb=5482b99d07dd144fd5be299e722f39a81de3b5be diff --git a/src/SMESHGUI/SMESHGUI_Hypotheses.cxx b/src/SMESHGUI/SMESHGUI_Hypotheses.cxx index 504607da5..257cb657c 100644 --- a/src/SMESHGUI/SMESHGUI_Hypotheses.cxx +++ b/src/SMESHGUI/SMESHGUI_Hypotheses.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 @@ -29,6 +29,8 @@ #include "SMESHGUI_HypothesesUtils.h" #include "SMESHGUI_Utils.h" #include "SMESHGUI_SpinBox.h" +#include "SMESHGUI_VTKUtils.h" +#include "SMESH_Actor.h" // SALOME KERNEL includes #include @@ -42,6 +44,7 @@ #include #include #include +#include // Qt includes #include @@ -85,17 +88,16 @@ void SMESHGUI_GenericHypothesisCreator::create( SMESH::SMESH_Hypothesis_ptr init const QString& theHypName, QWidget* parent, QObject* obj, const QString& slot ) { - MESSAGE( "Creation of hypothesis with initial params" ); setInitParamsHypothesis( initParamsHyp ); create( false, theHypName, parent, obj, slot ); } void SMESHGUI_GenericHypothesisCreator::create( bool isAlgo, const QString& theHypName, - QWidget* theParent, QObject* obj, const QString& slot ) + QWidget* theParent, + QObject* obj, + const QString& slot ) { - MESSAGE( "Creation of hypothesis" ); - myIsCreate = true; // Create hypothesis/algorithm @@ -211,7 +213,7 @@ QFrame* SMESHGUI_GenericHypothesisCreator::buildStdFrame() case QVariant::String: { if((*anIt).isVariable) { - _PTR(Study) aStudy = SMESH::GetActiveStudyDocument(); + _PTR(Study) aStudy = SMESH::getStudy(); QString aVar = (*anIt).myValue.toString(); if(aStudy->IsInteger(aVar.toLatin1().constData())){ SalomeApp_IntSpinBox* sb = new SalomeApp_IntSpinBox( GroupC1 ); @@ -296,7 +298,7 @@ void SMESHGUI_GenericHypothesisCreator::onDialogFinished( int result ) { //remove just created hypothesis _PTR(SObject) aHypSObject = SMESH::FindSObject( myHypo ); - _PTR(Study) aStudy = SMESH::GetActiveStudyDocument(); + _PTR(Study) aStudy = SMESH::getStudy(); if( aStudy && !aStudy->GetProperties()->IsLocked() ) { _PTR(StudyBuilder) aBuilder = aStudy->NewBuilder(); @@ -315,7 +317,9 @@ void SMESHGUI_GenericHypothesisCreator::onDialogFinished( int result ) if( !aSubMesh->_is_nil() ) aMesh = aSubMesh->GetFather(); _PTR(SObject) meshSO = SMESH::FindSObject( aMesh ); - SMESH::ModifiedMesh( meshSO, false, aMesh->NbNodes()==0); + SMESH_Actor* actor = SMESH::FindActorByEntry( meshSO->GetID().c_str() ); + if( actor && actor->GetVisibility() ) + actor->Update(); } } SMESHGUI::GetSMESHGUI()->updateObjBrowser( true, 0 ); @@ -327,6 +331,9 @@ void SMESHGUI_GenericHypothesisCreator::onDialogFinished( int result ) myDlg->close(); //delete myDlg; since WA_DeleteOnClose==true myDlg = 0; + if (SVTK_ViewWindow* vf = SMESH::GetCurrentVtkView()) { + vf->Repaint(); + } emit finished( result ); } @@ -575,53 +582,53 @@ QString SMESHGUI_GenericHypothesisCreator::helpPage() const QString aHypType = hypType(); QString aHelpFileName = ""; if ( aHypType == "LocalLength" ) - aHelpFileName = "a1d_meshing_hypo_page.html#average_length_anchor"; + aHelpFileName = "1d_meshing_hypo.html#average-length-anchor"; else if ( aHypType == "MaxLength" ) - aHelpFileName = "a1d_meshing_hypo_page.html#max_length_anchor"; + aHelpFileName = "1d_meshing_hypo.html#max-length-anchor"; else if ( aHypType == "Arithmetic1D") - aHelpFileName = "a1d_meshing_hypo_page.html#arithmetic_1d_anchor"; + aHelpFileName = "1d_meshing_hypo.html#arithmetic-1d-anchor"; else if ( aHypType == "GeometricProgression") - aHelpFileName = "a1d_meshing_hypo_page.html#geometric_1d_anchor"; + aHelpFileName = "1d_meshing_hypo.html#geometric-1d-anchor"; else if ( aHypType == "FixedPoints1D") - aHelpFileName = "a1d_meshing_hypo_page.html#fixed_points_1d_anchor"; + aHelpFileName = "1d_meshing_hypo.html#fixed-points-1d-anchor"; else if ( aHypType == "MaxElementArea") - aHelpFileName = "a2d_meshing_hypo_page.html#max_element_area_anchor"; + aHelpFileName = "2d_meshing_hypo.html#max-element-area-anchor"; else if ( aHypType == "MaxElementVolume") - aHelpFileName = "max_element_volume_hypo_page.html"; + aHelpFileName = "max_element_volume_hypo.html"; else if ( aHypType == "StartEndLength") - aHelpFileName = "a1d_meshing_hypo_page.html#start_and_end_length_anchor"; + aHelpFileName = "1d_meshing_hypo.html#start-and-end-length-anchor"; else if ( aHypType == "Deflection1D") - aHelpFileName = "a1d_meshing_hypo_page.html#deflection_1d_anchor"; + aHelpFileName = "1d_meshing_hypo.html#deflection-1d-anchor"; else if ( aHypType == "Adaptive1D") - aHelpFileName = "a1d_meshing_hypo_page.html#adaptive_1d_anchor"; + aHelpFileName = "1d_meshing_hypo.html#adaptive-1d-anchor"; else if ( aHypType == "AutomaticLength") - aHelpFileName = "a1d_meshing_hypo_page.html#automatic_length_anchor"; + aHelpFileName = "1d_meshing_hypo.html#automatic-length-anchor"; else if ( aHypType == "NumberOfSegments") - aHelpFileName = "a1d_meshing_hypo_page.html#number_of_segments_anchor"; + aHelpFileName = "1d_meshing_hypo.html#number-of-segments-anchor"; else if ( aHypType == "ProjectionSource1D") - aHelpFileName = "projection_algos_page.html"; + aHelpFileName = "projection_algos.html"; else if ( aHypType == "ProjectionSource2D") - aHelpFileName = "projection_algos_page.html"; + aHelpFileName = "projection_algos.html"; else if ( aHypType == "ProjectionSource3D") - aHelpFileName = "projection_algos_page.html"; + aHelpFileName = "projection_algos.html"; else if ( aHypType == "NumberOfLayers") - aHelpFileName = "radial_prism_algo_page.html"; + aHelpFileName = "radial_prism_algo.html"; else if ( aHypType == "NumberOfLayers2D") - aHelpFileName = "radial_quadrangle_1D2D_algo_page.html"; + aHelpFileName = "radial_quadrangle_1D2D_algo.html"; else if ( aHypType == "LayerDistribution") - aHelpFileName = "radial_prism_algo_page.html"; + aHelpFileName = "radial_prism_algo.html"; else if ( aHypType == "LayerDistribution2D") - aHelpFileName = "radial_quadrangle_1D2D_algo_page.html"; + aHelpFileName = "radial_quadrangle_1D2D_algo.html"; else if ( aHypType == "SegmentLengthAroundVertex") - aHelpFileName = "segments_around_vertex_algo_page.html"; + aHelpFileName = "segments_around_vertex_algo.html"; else if ( aHypType == "QuadrangleParams") - aHelpFileName = "a2d_meshing_hypo_page.html#hypo_quad_params_anchor"; + aHelpFileName = "2d_meshing_hypo.html#hypo-quad-params-anchor"; else if ( aHypType == "ViscousLayers") - aHelpFileName = "additional_hypo_page.html#viscous_layers_anchor"; + aHelpFileName = "additional_hypo.html#viscous-layers-anchor"; else if ( aHypType == "ViscousLayers2D") - aHelpFileName = "additional_hypo_page.html#viscous_layers_anchor"; + aHelpFileName = "additional_hypo.html#viscous-layers-anchor"; else if ( aHypType == "ImportSource1D" || aHypType == "ImportSource2D") - aHelpFileName = "import_algos_page.html"; + aHelpFileName = "use_existing_algos.html"; return aHelpFileName; } @@ -735,21 +742,23 @@ void SMESHGUI_HypothesisDlg::setType( const QString& t ) myTypeLabel->setText( t ); } -HypothesisData::HypothesisData( const QString& theTypeName, - const QString& thePluginName, - const QString& theServerLibName, - const QString& theClientLibName, - const QString& theLabel, - const QString& theIconId, - const QString& theContext, - const QList& theDim, - const bool theIsAuxOrNeedHyp, +HypothesisData::HypothesisData( const QString& theTypeName, + const QString& thePluginName, + const QString& theServerLibName, + const QString& theClientLibName, + const QString& theLabel, + const QString& theIconId, + const QString& theContext, + const int theGroupID, + const int thePriority, + const QList& theDim, + const bool theIsAuxOrNeedHyp, const QStringList& theBasicHypos, const QStringList& theOptionalHypos, const QStringList& theInputTypes, const QStringList& theOutputTypes, - const bool theIsNeedGeometry, - const bool supportSub) + const int theIsNeedGeometry, + const bool theSupportSub) : TypeName( theTypeName ), PluginName( thePluginName ), ServerLibName( theServerLibName ), @@ -757,10 +766,12 @@ HypothesisData::HypothesisData( const QString& theTypeName, Label( theLabel ), IconId( theIconId ), Context( theContext ), + GroupID( theGroupID ), + Priority( thePriority ), Dim( theDim ), IsAuxOrNeedHyp( theIsAuxOrNeedHyp ), IsNeedGeometry( theIsNeedGeometry ), - IsSupportSubmeshes( supportSub ), + IsSupportSubmeshes( theSupportSub ), BasicHypos( theBasicHypos ), OptionalHypos( theOptionalHypos ), InputTypes( theInputTypes ),