+// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// See http://www.salome-platform.org/
+//
/**
* SMESH SMESHGUI
*
{
const QString& aHypoTypeName = (*aHypoList)[ i ];
HypothesisData* aHypData = SMESH::GetHypothesisData( aHypoTypeName );
+ if ( !aHypData ) continue;
int aDim = aHypData->Dim[0];
// create or/and set
int index = -1;
}
if ( index >= 0 ) // found
{
+ // select an algorithm
setCurrentHyp ( aDim, aHypType, index );
}
else
{
- // silently create a hypothesis
- SMESH::CreateHypothesis( aHypoTypeName, aHypData->Label, isAlgo );
+ // create a hypothesis
+ QString aClientLibName = aHypData->ClientLibName;
+ if ( aClientLibName == "" ) {
+ // Call hypothesis creation server method (without GUI)
+ SMESH::CreateHypothesis( aHypoTypeName, aHypData->Label, isAlgo );
+ }
+ else {
+ // Get hypotheses creator client (GUI)
+ SMESHGUI_GenericHypothesisCreator* aCreator =
+ SMESH::GetHypothesisCreator( aHypoTypeName );
+ aCreator->CreateHypothesis( false, myDlg );
+ }
QStringList aNewHyps;
_PTR(SComponent) aFather = SMESH::GetActiveStudyDocument()->FindComponent( "SMESH" );
existingHyps( aDim, aHypType, aFather, aNewHyps, aList );