quad-dominated="true"
hypos="MG-CADSurf Parameters"
algos="MG-CADSurf, MG-Hexa"
+ alt-hypos="None"
+ alt-algos="None"
intern-edge-hypos="LocalLength"
intern-edge-algos="Regular_1D"/>
QString name() const;
bool toUseCommonSize() const { return myUseCommonSize; }
bool isQuadDominated() const { return myQuadDominated; }
+ bool hasAlgo( SetType type ) const { return !myAlgoList[ type ].isEmpty(); }
//int count( bool, SetType ) const;
int maxDim() const;
myHypoSetButton->setPopupMode( QToolButton::InstantPopup );
}
aHypoSetPopup->clear();
- for ( int i = 0, n = theSets.count(); i < n; i++ ) {
- aHypoSetPopup->addAction( tr( theSets[ i ].toUtf8().data() ));
+ for ( int i = 0, n = theSets.count(); i < n; i++ )
+ {
+ QAction* action = new QAction( tr( theSets[ i ].toUtf8().data() ));
+ action->setData( theSets[ i ] );
+ aHypoSetPopup->addAction( action );
}
myHypoSetButton->setEnabled( !aHypoSetPopup->isEmpty() );
}
//================================================================================
void SMESHGUI_MeshDlg::onHypoSetPopup( QAction* a )
{
- emit hypoSet( a->text() );
+ emit hypoSet( a->data().toString() );
}
//================================================================================
}
currentHypoSet->setAlgoAvailable( sType, isAvailable );
}
+ if ( currentHypoSet->hasAlgo( HypothesesSet::MAIN ) &&
+ currentHypoSet->hasAlgo( HypothesesSet::ALT ))
+ {
+ HypothesesSet::SetType setType = HypothesesSet::getPreferredHypType();
+ if ( !currentHypoSet->getAlgoAvailable( setType ))
+ continue; // not add if a preferred type not available currently
+ }
+
if ( currentHypoSet->getAlgoAvailable( HypothesesSet::MAIN ) ||
currentHypoSet->getAlgoAvailable( HypothesesSet::ALT ))
+ {
aFilteredHypothesesSetsList.append( *inHypoSetName );
+ }
}
myDlg->setHypoSets( aFilteredHypothesesSetsList );
}