X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_FilterDlg.cxx;h=5b2496d4a7a77e83cb62b070e4a28741749484c4;hp=97f1df847d47671462c6830e5880de2cc680197a;hb=HEAD;hpb=c4cacfb5c15254953d6a1ce60a2196e099c91a9a diff --git a/src/SMESHGUI/SMESHGUI_FilterDlg.cxx b/src/SMESHGUI/SMESHGUI_FilterDlg.cxx old mode 100755 new mode 100644 index 97f1df847..98439f06e --- a/src/SMESHGUI/SMESHGUI_FilterDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_FilterDlg.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -69,6 +69,7 @@ // SALOME KERNEL includes #include #include +#include // OCCT includes #include @@ -697,7 +698,7 @@ void SMESHGUI_FilterTable::ComboDelegate::setModelData( QWidget* editor, void SMESHGUI_FilterTable::ComboDelegate::updateEditorGeometry( QWidget* editor, const QStyleOptionViewItem& option, - const QModelIndex& index ) const + const QModelIndex& /*index*/ ) const { editor->setGeometry( option.rect ); } @@ -798,7 +799,7 @@ void SMESHGUI_FilterTable::Table::setEditable (bool isEditable, //======================================================================= // name : SMESHGUI_FilterTable::Table::isEditable -// Purpose : Verify wheter cell is editable +// Purpose : Verify whether cell is editable //======================================================================= bool SMESHGUI_FilterTable::Table::isEditable (int row, int col) const { @@ -856,7 +857,7 @@ QList SMESHGUI_FilterTable::Table::selectedRows() /* Class : SMESHGUI_FilterTable - Description : Frame containig + Description : Frame containing - Button group for switching entity type - Table for displaying filter criterions - Buttons for editing table and filter libraries @@ -870,8 +871,8 @@ SMESHGUI_FilterTable::SMESHGUI_FilterTable( SMESHGUI* theModule, QWidget* parent, const int type ) : QWidget( parent ), - myIsLocked( false ), - mySMESHGUI( theModule ) + mySMESHGUI( theModule ), + myIsLocked( false ) { myEntityType = -1; @@ -888,8 +889,8 @@ SMESHGUI_FilterTable::SMESHGUI_FilterTable( SMESHGUI* theModule, QWidget* parent, const QList& types ) : QWidget( parent ), - myIsLocked( false ), - mySMESHGUI( theModule ) + mySMESHGUI( theModule ), + myIsLocked( false ) { myEntityType = -1; Init(types); @@ -1155,7 +1156,7 @@ bool SMESHGUI_FilterTable::IsValid (const bool theMess, const int theEntityType) bool aRes = false; bool isSignalsBlocked = aTable->signalsBlocked(); aTable->blockSignals(true); - double aThreshold = (int)aTable->text(i, 2).toDouble(&aRes); + /*double aThreshold =*/ aTable->text(i, 2).toDouble( &aRes ); aTable->blockSignals(isSignalsBlocked); if (!aRes && aTable->isEditable(i, 2)) @@ -1369,8 +1370,7 @@ void SMESHGUI_FilterTable::SetCriterion (const int theRow, { if ( strlen( theCriterion.ThresholdID ) > 0 ) // shape ID -> name { - _PTR(SObject) sobj = - SMESH::GetActiveStudyDocument()->FindObjectID( theCriterion.ThresholdID.in() ); + _PTR(SObject) sobj = SMESH::getStudy()->FindObjectID( theCriterion.ThresholdID.in() ); if ( !sobj ) aTable->item( theRow, 2 )->setText( QString( theCriterion.ThresholdID ) ); else @@ -1403,7 +1403,7 @@ void SMESHGUI_FilterTable::SetCriterion (const int theRow, theCriterion.Type != SMESH::FT_OverConstrainedVolume && theCriterion.Type != SMESH::FT_LinearOrQuadratic) { - // Numberic criterion + // Numeric criterion aTable->item( theRow, 2 )->setText(QString("%1").arg(theCriterion.Threshold, 0, 'g', 15)); } else @@ -1546,7 +1546,7 @@ void SMESHGUI_FilterTable::onRemoveBtn() //======================================================================= // name : SMESHGUI_FilterTable::updateAdditionalWidget -// Purpose : Enable/Disable widget with additonal parameters +// Purpose : Enable/Disable widget with additional parameters //======================================================================= void SMESHGUI_FilterTable::updateAdditionalWidget() { @@ -1563,15 +1563,19 @@ void SMESHGUI_FilterTable::updateAdditionalWidget() bool isDbl = ( aCriterion == SMESH::FT_AspectRatio || aCriterion == SMESH::FT_AspectRatio3D || aCriterion == SMESH::FT_Warping || + aCriterion == SMESH::FT_Warping3D || aCriterion == SMESH::FT_MinimumAngle || aCriterion == SMESH::FT_Taper || aCriterion == SMESH::FT_Skew || aCriterion == SMESH::FT_Area || aCriterion == SMESH::FT_Volume3D || + aCriterion == SMESH::FT_ScaledJacobian || aCriterion == SMESH::FT_MaxElementLength2D || aCriterion == SMESH::FT_MaxElementLength3D || aCriterion == SMESH::FT_Length || aCriterion == SMESH::FT_Length2D || + aCriterion == SMESH::FT_Length3D || + aCriterion == SMESH::FT_Deflection2D || aCriterion == SMESH::FT_BallDiameter ); bool toEnable = (( isDbl && ((ComboItem*)aTable->item(aRow, 1))->value() == SMESH::FT_EqualTo) || @@ -1603,6 +1607,7 @@ const char* SMESHGUI_FilterTable::getPrecision( const int aType ) case SMESH::FT_Taper: retval = "parametric_precision"; break; case SMESH::FT_Warping: + case SMESH::FT_Warping3D: case SMESH::FT_MinimumAngle: case SMESH::FT_Skew: case SMESH::FT_CoplanarFaces: @@ -1618,6 +1623,8 @@ const char* SMESHGUI_FilterTable::getPrecision( const int aType ) retval = "len_tol_precision"; break; case SMESH::FT_Length: case SMESH::FT_Length2D: + case SMESH::FT_Length3D: + case SMESH::FT_Deflection2D: case SMESH::FT_MaxElementLength2D: case SMESH::FT_MaxElementLength3D: case SMESH::FT_BallDiameter: @@ -1729,6 +1736,7 @@ static QList entityTypes( const int theType ) { case SMESH::NODE: typeIds.append( SMDSEntity_Node ); + break; case SMESH::EDGE: typeIds.append( SMDSEntity_Edge ); typeIds.append( SMDSEntity_Quad_Edge ); @@ -1753,6 +1761,7 @@ static QList entityTypes( const int theType ) typeIds.append( SMDSEntity_TriQuad_Hexa ); typeIds.append( SMDSEntity_Penta ); typeIds.append( SMDSEntity_Quad_Penta ); + typeIds.append( SMDSEntity_BiQuad_Penta ); typeIds.append( SMDSEntity_Hexagonal_Prism ); typeIds.append( SMDSEntity_Polyhedra ); //typeIds.append( SMDSEntity_Quad_Polyhedra ); @@ -1772,7 +1781,7 @@ static QList entityTypes( const int theType ) // Purpose : Provides reaction on change of criterion //======================================================================= -void SMESHGUI_FilterTable::onCriterionChanged (const int row, const int col, const int entityType) +void SMESHGUI_FilterTable::onCriterionChanged (const int row, const int /*col*/, const int entityType) { int aType = entityType == -1 ? GetType() : entityType; Table* aTable = myTables[ aType ]; @@ -1792,27 +1801,28 @@ void SMESHGUI_FilterTable::onCriterionChanged (const int row, const int col, con } // find out a type of item required by a new criterion and other table features - int aCriterionType = GetCriterionType(row); + int aCriterionType = GetCriterionType(row); bool anIsDoubleCriterion = false; bool anIsIntCriterion = false; bool anIsComboCriterion = false; // other features: QList comboIDs; // values to show in a combo item - int nbCompareSigns = 0; // possible values are 0,1,3 + int nbCompareSigns = 0; // possible values are 0,1,3 bool isThresholdEditable = false; // actual for "simple" item types switch ( aCriterionType ) { case SMESH::FT_AspectRatio: case SMESH::FT_AspectRatio3D: case SMESH::FT_Warping: + case SMESH::FT_Warping3D: case SMESH::FT_MinimumAngle: case SMESH::FT_Taper: case SMESH::FT_Skew: case SMESH::FT_Area: case SMESH::FT_Volume3D: + case SMESH::FT_ScaledJacobian: case SMESH::FT_MaxElementLength2D: - case SMESH::FT_MaxElementLength3D: - anIsDoubleCriterion = true; break; + case SMESH::FT_MaxElementLength3D: anIsDoubleCriterion = true; break; case SMESH::FT_FreeBorders: case SMESH::FT_FreeEdges: @@ -1823,11 +1833,14 @@ void SMESHGUI_FilterTable::onCriterionChanged (const int row, const int col, con case SMESH::FT_EqualFaces: case SMESH::FT_EqualVolumes: break; + case SMESH::FT_NodeConnectivityNumber: case SMESH::FT_MultiConnection: case SMESH::FT_MultiConnection2D: anIsIntCriterion = true; nbCompareSigns = 3; break; case SMESH::FT_Length: - case SMESH::FT_Length2D: anIsDoubleCriterion = true; break; + case SMESH::FT_Length2D: + case SMESH::FT_Length3D: + case SMESH::FT_Deflection2D: anIsDoubleCriterion = true; break; case SMESH::FT_BelongToMeshGroup: break; @@ -2054,7 +2067,7 @@ void SMESHGUI_FilterTable::addRow (Table* theTable, const int theType, const boo } myIsLocked = false; - // IPAL19372 - to prevent calling onCriterionChaged() slot before completion of setItem() + // IPAL19372 - to prevent calling onCriterionChanged() slot before completion of setItem() bool isSignalsBlocked = theTable->signalsBlocked(); theTable->blockSignals( true ); @@ -2115,7 +2128,7 @@ QTableWidgetItem* SMESHGUI_FilterTable::getCriterionItem (const int theType) con //======================================================================= // name : SMESHGUI_FilterTable::getCompareItem -// Purpose : Get combo table item for operation of comparision +// Purpose : Get combo table item for operation of comparison //======================================================================= QTableWidgetItem* SMESHGUI_FilterTable::getCompareItem () const { @@ -2190,6 +2203,7 @@ const QMap& SMESHGUI_FilterTable::getCriteria (const int theType) aCriteria[ SMESH::FT_GroupColor ] = tr("GROUP_COLOR"); aCriteria[ SMESH::FT_EqualNodes ] = tr("EQUAL_NODE"); aCriteria[ SMESH::FT_ConnectedElements ] = tr("CONNECTED_ELEMS"); + aCriteria[ SMESH::FT_NodeConnectivityNumber ] = tr("NODE_CONN_NUMBER"); } return aCriteria; } @@ -2238,6 +2252,7 @@ const QMap& SMESHGUI_FilterTable::getCriteria (const int theType) aCriteria[ SMESH::FT_BelongToGenSurface ] = tr("BELONG_TO_GENSURFACE"); aCriteria[ SMESH::FT_LyingOnGeom ] = tr("LYING_ON_GEOM"); aCriteria[ SMESH::FT_Length2D ] = tr("LENGTH2D"); + aCriteria[ SMESH::FT_Deflection2D ] = tr("DEFLECTION2D"); aCriteria[ SMESH::FT_MultiConnection2D ] = tr("MULTI2D_BORDERS"); aCriteria[ SMESH::FT_FreeFaces ] = tr("FREE_FACES"); aCriteria[ SMESH::FT_BareBorderFace ] = tr("BARE_BORDER_FACE"); @@ -2258,6 +2273,7 @@ const QMap& SMESHGUI_FilterTable::getCriteria (const int theType) if (aCriteria.isEmpty()) { aCriteria[ SMESH::FT_AspectRatio3D ] = tr("ASPECT_RATIO_3D"); + aCriteria[ SMESH::FT_Warping3D ] = tr("WARPING_3D"); aCriteria[ SMESH::FT_RangeOfIds ] = tr("RANGE_OF_IDS"); aCriteria[ SMESH::FT_BelongToMeshGroup ] = tr("BELONG_TO_MESH_GROUP"); aCriteria[ SMESH::FT_BelongToGeom ] = tr("BELONG_TO_GEOM"); @@ -2265,6 +2281,7 @@ const QMap& SMESHGUI_FilterTable::getCriteria (const int theType) aCriteria[ SMESH::FT_BadOrientedVolume ] = tr("BAD_ORIENTED_VOLUME"); aCriteria[ SMESH::FT_BareBorderVolume ] = tr("BARE_BORDER_VOLUME"); aCriteria[ SMESH::FT_OverConstrainedVolume] = tr("OVER_CONSTRAINED_VOLUME"); + aCriteria[ SMESH::FT_Length3D ] = tr("LENGTH3D"); aCriteria[ SMESH::FT_Volume3D ] = tr("VOLUME_3D"); aCriteria[ SMESH::FT_MaxElementLength3D ] = tr("MAX_ELEMENT_LENGTH_3D"); aCriteria[ SMESH::FT_LinearOrQuadratic ] = tr("LINEAR"); @@ -2273,6 +2290,7 @@ const QMap& SMESHGUI_FilterTable::getCriteria (const int theType) aCriteria[ SMESH::FT_EqualVolumes ] = tr("EQUAL_VOLUME"); aCriteria[ SMESH::FT_EntityType ] = tr("ENTITY_TYPE"); aCriteria[ SMESH::FT_ConnectedElements ] = tr("CONNECTED_ELEMS"); + aCriteria[ SMESH::FT_ScaledJacobian ] = tr("SCALED_JACOBIAN"); } return aCriteria; } @@ -2368,7 +2386,7 @@ const QMap& SMESHGUI_FilterTable::getCompare() const // Purpose : Create table //======================================================================= SMESHGUI_FilterTable::Table* SMESHGUI_FilterTable::createTable (QWidget* theParent, - const int theType) + const int /*theType*/) { // create table Table* aTable= new Table(0, 6, theParent); @@ -2735,7 +2753,7 @@ void SMESHGUI_FilterDlg::construct (const QList& theTypes) aDlgLay->setStretchFactor(myMainFrame, 1); - myHelpFileName = "selection_filter_library_page.html"; + myHelpFileName = "selection_filter_library.html"; Init(myTypes); } @@ -2995,13 +3013,13 @@ void SMESHGUI_FilterDlg::reject() SALOME_ListIO aList; mySelectionMgr->clearFilters(); mySelectionMgr->clearSelected(); - SALOME_DataMapIteratorOfDataMapOfIOMapOfInteger anIter (myIObjects); + SALOME_DataMapIteratorOfIOMapOfVtk anIter (myIObjects); for ( ; anIter.More(); anIter.Next()) { aList.Append(anIter.Key()); - TColStd_MapOfInteger aResMap; - const TColStd_IndexedMapOfInteger& anIndMap = anIter.Value(); + SVTK_TVtkIDsMap aResMap; + const SVTK_TIndexedMapOfVtkId& anIndMap = anIter.Value(); for (int i = 1, n = anIndMap.Extent(); i <= n; i++) aResMap.Add(anIndMap(i)); @@ -3067,7 +3085,7 @@ void SMESHGUI_FilterDlg::onHelp() //======================================================================= // name : SMESHGUI_FilterDlg::onDeactivate -// Purpose : SLOT called when dialog must be deativated +// Purpose : SLOT called when dialog must be deactivated //======================================================================= void SMESHGUI_FilterDlg::onDeactivate() { @@ -3193,8 +3211,9 @@ bool SMESHGUI_FilterDlg::isValid() const QString aName; myTable->GetThreshold(i, aName); - std::vector<_PTR(SObject)> aList = - SMESH::GetActiveStudyDocument()->FindObjectByName(aName.toLatin1().constData(), "GEOM"); + std::vector<_PTR(SObject)> aList = SMESH::getStudy()->FindObjectByName(aName.toUtf8().constData(), "GEOM"); + if (aList.size() == 0) + aList = SMESH::getStudy()->FindObjectByName(aName.toUtf8().constData(), "SHAPERSTUDY"); if (aList.size() == 0) { SUIT_MessageBox::information(SMESHGUI::desktop(), tr("SMESH_INSUFFICIENT_DATA"), tr("BAD_SHAPE_NAME").arg(aName)); @@ -3331,7 +3350,7 @@ void SMESHGUI_FilterDlg::SetSelection() const SALOME_ListIO& anObjs = mySelector->StoredIObjects(); SALOME_ListIteratorOfListIO anIter (anObjs); for ( ; anIter.More(); anIter.Next()) { - TColStd_IndexedMapOfInteger aMap; + SVTK_TIndexedMapOfVtkId aMap; mySelector->GetIndex(anIter.Value(), aMap); myIObjects.Bind(anIter.Value(), aMap); } @@ -3365,7 +3384,7 @@ bool SMESHGUI_FilterDlg::onApply() if (!myFilter[ aCurrType ]->GetPredicate()->_is_nil()) { // - bool toFilter = (( SMESH::FindActorByObject( myMesh )) || + bool toFilter = (( getActor() ) || ( myInitSourceWgOnApply && mySourceWg ) || ( mySourceGrp->checkedId() == Dialog && mySourceWg )); if ( toFilter ) { @@ -3416,7 +3435,7 @@ bool SMESHGUI_FilterDlg::createFilter (const int theType) if ( mgr && mgr->booleanValue( "SMESH", "use_precision", false ) ) aPrecision = mgr->integerValue( "SMESH", "controls_precision", aPrecision ); - for (CORBA::ULong i = 0; i < n; i++) { + for ( int i = 0; i < n; i++) { SMESH::Filter::Criterion aCriterion = createCriterion(); myTable->GetCriterion(i, aCriterion); aCriterion.Precision = aPrecision; @@ -3487,7 +3506,8 @@ void SMESHGUI_FilterDlg::UnRegisterFilters() //======================================================================= void SMESHGUI_FilterDlg::insertFilterInViewer() { - if (SVTK_Selector* aSelector = SMESH::GetSelector()) { + if (SVTK_Selector* aSelector = SMESH::GetSelector()) + { SMESH::ElementType anEntType = (SMESH::ElementType)myTable->GetType(); if (myFilter[ myTable->GetType() ]->_is_nil() || @@ -3497,7 +3517,8 @@ void SMESHGUI_FilterDlg::insertFilterInViewer() { SMESH::RemoveFilter(getFilterId(anEntType), aSelector); } - else { + else + { Handle(SMESHGUI_PredicateFilter) aFilter = new SMESHGUI_PredicateFilter(); aFilter->SetPredicate(myFilter[ myTable->GetType() ]->GetPredicate()); SMESH::RemoveFilter(getFilterId(anEntType), aSelector); //skl for IPAL12631 @@ -3523,9 +3544,9 @@ void SMESHGUI_FilterDlg::filterSource (const int theType, { if (myMesh->_is_nil()) return; - SMESH::long_array_var anIds = myFilter[ theType ]->GetElementsId(myMesh); + SMESH::smIdType_array_var anIds = myFilter[ theType ]->GetElementsId(myMesh); for (int i = 0, n = anIds->length(); i < n; i++) - theResIds.append(anIds[ i ]); + theResIds.append(FromSmIdType(anIds[ i ])); } else if (aSourceId == Selection) { @@ -3566,7 +3587,7 @@ void SMESHGUI_FilterDlg::filterSelectionSource (const int theType, // Create map of entities to be filtered TColStd_MapOfInteger aToBeFiltered; - SALOME_DataMapIteratorOfDataMapOfIOMapOfInteger anIter(myIObjects); + SALOME_DataMapIteratorOfIOMapOfVtk anIter(myIObjects); for ( ; anIter.More(); anIter.Next()) { @@ -3576,10 +3597,10 @@ void SMESHGUI_FilterDlg::filterSelectionSource (const int theType, { if (aSubMesh->GetFather()->GetId() == myMesh->GetId()) { - SMESH::long_array_var anIds = + SMESH::smIdType_array_var anIds = theType == SMESH::NODE ? aSubMesh->GetNodesId() : aSubMesh->GetElementsId(); for (int i = 0, n = anIds->length(); i < n; i++) - aToBeFiltered.Add(anIds[ i ]); + aToBeFiltered.Add(FromSmIdType(anIds[ i ])); } } @@ -3590,9 +3611,9 @@ void SMESHGUI_FilterDlg::filterSelectionSource (const int theType, { if (aGroup->GetType() == theType && aGroup->GetMesh()->GetId() == myMesh->GetId()) { - SMESH::long_array_var anIds = aGroup->GetListOfID(); + SMESH::smIdType_array_var anIds = aGroup->GetListOfID(); for (int i = 0, n = anIds->length(); i < n; i++) - aToBeFiltered.Add(anIds[ i ]); + aToBeFiltered.Add(FromSmIdType(anIds[ i ])); } } @@ -3600,7 +3621,7 @@ void SMESHGUI_FilterDlg::filterSelectionSource (const int theType, SMESH::SMESH_Mesh_var aMeshPtr = SMESH::IObjectToInterface(anIter.Key()); if (!aMeshPtr->_is_nil() && aMeshPtr->GetId() == myMesh->GetId()) { - const TColStd_IndexedMapOfInteger& aSelMap = anIter.Value(); + const SVTK_TIndexedMapOfVtkId& aSelMap = anIter.Value(); if (aSelMap.Extent() > 0) { @@ -3622,13 +3643,42 @@ void SMESHGUI_FilterDlg::filterSelectionSource (const int theType, theResIds.append(aResIter.Key()); } +//======================================================================= +//function : getActor +//purpose : Returns an actor to show filtered entities +//======================================================================= + +SMESH_Actor* SMESHGUI_FilterDlg::getActor() +{ + SMESH_Actor* meshActor = SMESH::FindActorByObject( myMesh ); + if ( meshActor && meshActor->GetVisibility() ) + return meshActor; + + SALOME_DataMapIteratorOfIOMapOfVtk anIter(myIObjects); + for ( ; anIter.More(); anIter.Next()) + { + Handle(SALOME_InteractiveObject) io = anIter.Key(); + if ( io->hasEntry() ) + { + SMESH_Actor* actor = SMESH::FindActorByEntry( io->getEntry() ); + if ( !actor ) + continue; + if ( actor->GetVisibility() ) + return actor; + if ( !meshActor ) + meshActor = actor; + } + } + return meshActor; +} + //======================================================================= // name : SMESHGUI_FilterDlg::selectInViewer // Purpose : Select given entities in viewer //======================================================================= void SMESHGUI_FilterDlg::selectInViewer (const int theType, const QList& theIds) { - if (mySelectionMgr == 0 || myMesh->_is_nil()) + if (mySelectionMgr == 0 || myMesh->_is_nil() ) return; mySelectionMgr->clearFilters(); @@ -3636,7 +3686,8 @@ void SMESHGUI_FilterDlg::selectInViewer (const int theType, const QList& th // Set new selection mode if necessary Selection_Mode aSelMode = getSelMode(theType); SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI ); - if ( aViewWindow && aViewWindow->SelectionMode()!=aSelMode) { + if ( aViewWindow && aViewWindow->SelectionMode() != aSelMode ) + { mySelectionMgr->clearSelected(); mySelectionMgr->clearFilters(); SMESH::SetPointRepresentation( aSelMode == NodeSelection ); @@ -3644,13 +3695,11 @@ void SMESHGUI_FilterDlg::selectInViewer (const int theType, const QList& th } // Clear selection - SMESH_Actor* anActor = SMESH::FindActorByObject(myMesh); - if (!anActor || !anActor->hasIO()) + SMESH_Actor* anActor = getActor(); + if ( !anActor || !anActor->hasIO() ) return; Handle(SALOME_InteractiveObject) anIO = anActor->getIO(); - //mySelectionMgr->clearSelected(); - //mySelectionMgr->AddIObject(anIO, false); SALOME_ListIO aList; aList.Append(anIO); mySelectionMgr->setSelectedObjects(aList, false); @@ -3665,7 +3714,7 @@ void SMESHGUI_FilterDlg::selectInViewer (const int theType, const QList& th SMESH::RemoveFilter(aFilterId); // get vtk ids - TColStd_MapOfInteger aMap; + SVTK_TVtkIDsMap aMap; QList::const_iterator anIter; for (anIter = theIds.begin(); anIter != theIds.end(); ++anIter) { aMap.Add(*anIter); @@ -3687,7 +3736,7 @@ void SMESHGUI_FilterDlg::selectInViewer (const int theType, const QList& th //======================================================================= SMESH::Filter::Criterion SMESHGUI_FilterDlg::createCriterion() { - SMESH::Filter::Criterion aCriterion; + SMESH::Filter::Criterion aCriterion; aCriterion.Type = SMESH::FT_Undefined; aCriterion.Compare = SMESH::FT_Undefined; @@ -3710,7 +3759,7 @@ SMESH::Filter::Criterion SMESHGUI_FilterDlg::createCriterion() void SMESHGUI_FilterDlg::onSelectionDone() { const SALOME_ListIO& aList = mySelector->StoredIObjects(); - if ( myMesh->_is_nil() && aList.Extent()>0 ) + if ( myMesh->_is_nil() && aList.Extent() > 0 ) { myMesh = SMESH::IObjectToInterface(aList.First()); if ( !(myMesh->_is_nil()) ) { @@ -3776,6 +3825,7 @@ void SMESHGUI_FilterDlg::onSelectionDone() myTable->SetThreshold(aRow, SMESH::toQStr( grp->GetName() )); myTable->SetID (aRow, anIO->getEntry() ); } + break; } default: // get a GEOM object {