-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2014 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
// 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.
+// version 2.1 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
myAvailableHyps[ theId ] = theHyps;
bool enable = ! theHyps.isEmpty();
- if ( theId == Algo )
+ if ( theId == Algo ) // fill list of algos
{
myHyp[ Algo ]->clear();
- myHyp[ Algo ]->addItem( tr( "NONE" ) );
- myHyp[ Algo ]->addItems( theHyps );
- myHyp[ Algo ]->setCurrentIndex( 0 );
+ if ( enable )
+ {
+ myHyp[ Algo ]->addItem( tr( "NONE" ) );
+ myHyp[ Algo ]->addItems( theHyps );
+ myHyp[ Algo ]->setCurrentIndex( 0 );
+ }
}
- else {
+ else // enable buttons
+ {
myCreateHyp[ theId ]->setEnabled( enable );
- myEditHyp[ theId ]->setEnabled( false );
+ myEditHyp [ theId ]->setEnabled( false );
}
myHyp[ theId ]->setEnabled( enable );
}
//================================================================================
/*!
* \brief Sets existing hypothesis
- * \param theId - identifier of hypothesis (main or additional, see HypType enumeration)
- * \param theHyps - list of available hypothesis names
- *
+ * \param theId - identifier of hypothesis (main or additional, see HypType enumeration)
+ * \param theHyps - list of available hypothesis names
+ * \param theDefaultAvlbl - \c true means that the algorithm can with w/o hypothesis
+ * with some default parameters
+ *
* Sets existing main or additional hypothesis for this tab
*/
//================================================================================
-void SMESHGUI_MeshTab::setExistingHyps( const int theId, const QStringList& theHyps )
+void SMESHGUI_MeshTab::setExistingHyps( const int theId,
+ const QStringList& theHyps,
+ bool theDefaultAvlbl)
{
if ( theId != Algo )
{
+ bool enable = ! myAvailableHyps[ theId ].isEmpty();
myHyp[ theId ]->clear();
- myHyp[ theId ]->addItem( tr( "NONE" ) );
- myHyp[ theId ]->addItems( theHyps );
- myHyp[ theId ]->setCurrentIndex( 0 );
- myHyp[ theId ]->setEnabled( !theHyps.isEmpty() );
+ if ( enable )
+ {
+ QString none = tr( theDefaultAvlbl ? "DEFAULT" : ( theId == AddHyp ) ? "NONE" : "NONE" );
+ myHyp[ theId ]->addItem( none );
+ myHyp[ theId ]->addItems( theHyps );
+ myHyp[ theId ]->setCurrentIndex( 0 );
+ }
+ myHyp [ theId ]->setEnabled( enable );
myEditHyp[ theId ]->setEnabled( false );
}
}
//================================================================================
/*!
* \brief Adds hypothesis in combo box of available ones
- * \param theId - identifier of hypothesis (main or additional, see HypType enumeration)
- * \param theHyp - name of hypothesis to be added
- *
+ * \param theId - identifier of hypothesis (main or additional, see HypType enumeration)
+ * \param theHyp - name of hypothesis to be added
+ *
* Adds hypothesis in combo box of available ones. This method is called by operation
* after creation of new hypothesis.
*/
{
return myMeshType->currentIndex( );
}
-
-
+//================================================================================
+/*!
+ * \brief Set current index types of mesh
+ */
+//================================================================================
+void SMESHGUI_MeshDlg::setCurrentMeshType( const int theIndex )
+{
+ myMeshType->setCurrentIndex( theIndex );
+}