From 8c1e153907cbcf7cb8e8d316e05e30096d16baa5 Mon Sep 17 00:00:00 2001 From: vsr Date: Tue, 22 Jun 2010 15:24:40 +0000 Subject: [PATCH] 0020752: EDF 1303 SMESH : Add a 'Select All' button in Create Group dialog box --- doc/salome/gui/SMESH/images/creategroup.png | Bin 30825 -> 35346 bytes doc/salome/gui/SMESH/images/editgroup.png | Bin 36255 -> 37239 bytes .../gui/SMESH/input/creating_groups.doc | 6 +- .../gui/SMESH/input/tui_grouping_elements.doc | 6 +- idl/SMESH_Group.idl | 14 +- src/SMESHGUI/SMESHGUI_GroupDlg.cxx | 329 ++++++++++-------- src/SMESHGUI/SMESHGUI_GroupDlg.h | 10 +- src/SMESHGUI/SMESH_msg_en.ts | 7 + src/SMESH_I/SMESH_Group_i.cxx | 30 ++ src/SMESH_I/SMESH_Group_i.hxx | 2 + 10 files changed, 263 insertions(+), 141 deletions(-) diff --git a/doc/salome/gui/SMESH/images/creategroup.png b/doc/salome/gui/SMESH/images/creategroup.png index 2fb825cc865d820a61def6629daac7a63d338869..eefc9e2755c01617a73b93c5b343f1a4cb7a02f7 100755 GIT binary patch literal 35346 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

$Q%6XfK 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 DS1}Y3 literal 36255 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 diff --git a/doc/salome/gui/SMESH/input/creating_groups.doc b/doc/salome/gui/SMESH/input/creating_groups.doc index 29b17f1ae..1b00a6174 100644 --- a/doc/salome/gui/SMESH/input/creating_groups.doc +++ b/doc/salome/gui/SMESH/input/creating_groups.doc @@ -26,7 +26,7 @@ SALOME Platform distinguishes between the two Group types: \anchor standalone_group

"Standalone Group"

Standalone Group consists of mesh elements, which you can define in -two possible ways. +the next possible ways:
  • Choosing them manually with the mouse in the 3D Viewer. You can click on an element in the 3D viewer and it will be highlighted. After @@ -36,6 +36,10 @@ the list.
  • definite filter to selection of the elements of your group. See more about filters on the \ref selection_filter_library_page "Selection filter library" page. +
  • By adding all existing entities of the chosen type to the +group. For this purpose, it is necessary to turn on the Select +All check box. In this mode, all controls which allow selection of +the entities manually or by filters, are disabled.
To remove a selected element or elements from the list click the \b Remove button. The Sort List button allows to sort the list of IDs of diff --git a/doc/salome/gui/SMESH/input/tui_grouping_elements.doc b/doc/salome/gui/SMESH/input/tui_grouping_elements.doc index b77edd21e..763e939d4 100644 --- a/doc/salome/gui/SMESH/input/tui_grouping_elements.doc +++ b/doc/salome/gui/SMESH/input/tui_grouping_elements.doc @@ -19,7 +19,11 @@ aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, 100.) anIds = mesh.GetIdsFromFilter(aFilter) # create a group consisting of faces with area > 100 -aGroup = mesh.MakeGroupByIds("Area > 100", smesh.FACE, anIds) +aGroup1 = mesh.MakeGroupByIds("Area > 100", smesh.FACE, anIds) + +# create a group that contains all nodes from the mesh +aGroup2 = mesh.CreateEmptyGroup(smesh.NODE, "all nodes") +aGroup2.AddFrom(mesh.mesh) salome.sg.updateObjBrowser(1) \endcode diff --git a/idl/SMESH_Group.idl b/idl/SMESH_Group.idl index c0bb54bc9..b41e57df3 100644 --- a/idl/SMESH_Group.idl +++ b/idl/SMESH_Group.idl @@ -121,15 +121,25 @@ module SMESH void Clear(); /*! - * Adds elements to the group + * Adds elements or nodes with specified identifiers to the group */ long Add( in long_array elem_ids ); + /*! + * Adds elements or nodes that match specified predicate to the group + */ long AddByPredicate( in Predicate thePredicate ); + /*! + * Add all elements or nodes from the specified source to the group + */ + long AddFrom( in SMESH_IDSource theSource ); /*! - * Removes elements from the group + * Removes elements or nodes with specified identifiers from the group */ long Remove( in long_array elem_ids ); + /*! + * Removes elements or nodes that match specified predicate from the group + */ long RemoveByPredicate( in Predicate thePredicate ); }; diff --git a/src/SMESHGUI/SMESHGUI_GroupDlg.cxx b/src/SMESHGUI/SMESHGUI_GroupDlg.cxx index 28461ee4f..860ed290d 100644 --- a/src/SMESHGUI/SMESHGUI_GroupDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_GroupDlg.cxx @@ -99,6 +99,19 @@ #define SPACING 6 #define MARGIN 11 +enum grpSelectionMode { + grpNoSelection = -1, + grpNodeSelection = 0, + grpEdgeSelection = 1, + grpFaceSelection = 2, + grpVolumeSelection = 3, + grpSubMeshSelection = 4, + grpGroupSelection = 5, + grpMeshSelection = 6, + grpGeomSelection = 7, + grpAllSelection = 8, +}; + //================================================================================= // function : SMESHGUI_GroupDlg() // purpose : @@ -147,7 +160,7 @@ SMESHGUI_GroupDlg::SMESHGUI_GroupDlg( SMESHGUI* theModule, mySelectGroup->setEnabled( false ); myCurrentLineEdit = myMeshGroupLine; - setSelectionMode( 5 ); + setSelectionMode( grpGroupSelection ); } } @@ -241,59 +254,62 @@ void SMESHGUI_GroupDlg::initDialog( bool create) aContentBoxLayout->setMargin( MARGIN ); aContentBoxLayout->setSpacing( SPACING ); - QLabel* aLabel = new QLabel( tr( "SMESH_ID_ELEMENTS" ), aContentBox ); + mySelectAll = new QCheckBox( tr( "SELECT_ALL" ), aContentBox ); + + myElementsLab = new QLabel( tr( "SMESH_ID_ELEMENTS" ), aContentBox ); myElements = new QListWidget( aContentBox ); myElements->setSelectionMode( QListWidget::ExtendedSelection ); myFilter = new QPushButton( tr( "SMESH_BUT_FILTER" ), aContentBox ); - QPushButton* aAddBtn = new QPushButton( tr( "SMESH_BUT_ADD" ), aContentBox ); - QPushButton* aRemoveBtn = new QPushButton( tr( "SMESH_BUT_REMOVE" ), aContentBox ); - QPushButton* aSortBtn = new QPushButton( tr( "SMESH_BUT_SORT" ), aContentBox ); - - aContentBoxLayout->addWidget( aLabel, 0, 0 ); - aContentBoxLayout->addWidget( myElements, 1, 0, 6, 1 ); - aContentBoxLayout->addWidget( myFilter, 1, 1 ); - aContentBoxLayout->addWidget( aAddBtn, 3, 1 ); - aContentBoxLayout->addWidget( aRemoveBtn, 4, 1 ); - aContentBoxLayout->addWidget( aSortBtn, 6, 1 ); + myAddBtn = new QPushButton( tr( "SMESH_BUT_ADD" ), aContentBox ); + myRemoveBtn = new QPushButton( tr( "SMESH_BUT_REMOVE" ), aContentBox ); + mySortBtn = new QPushButton( tr( "SMESH_BUT_SORT" ), aContentBox ); + + aContentBoxLayout->addWidget( mySelectAll, 0, 0 ); + aContentBoxLayout->addWidget( myElementsLab, 1, 0 ); + aContentBoxLayout->addWidget( myElements, 2, 0, 6, 1 ); + aContentBoxLayout->addWidget( myFilter, 2, 1 ); + aContentBoxLayout->addWidget( myAddBtn, 4, 1 ); + aContentBoxLayout->addWidget( myRemoveBtn, 5, 1 ); + aContentBoxLayout->addWidget( mySortBtn, 7, 1 ); aContentBoxLayout->setColumnStretch( 0, 1 ); - aContentBoxLayout->setRowStretch( 2, 1 ); - aContentBoxLayout->setRowStretch( 5, 1 ); + aContentBoxLayout->setRowStretch( 3, 1 ); + aContentBoxLayout->setRowStretch( 6, 1 ); /***************************************************************/ - QGroupBox* aSelectBox = new QGroupBox( tr( "SMESH_SELECT_FROM" ), wg1 ); - QGridLayout* aSelectBoxLayout = new QGridLayout( aSelectBox ); - aSelectBoxLayout->setMargin( MARGIN ); - aSelectBoxLayout->setSpacing( SPACING ); + mySelectBox = new QGroupBox( tr( "SMESH_SELECT_FROM" ), wg1 ); + QGridLayout* mySelectBoxLayout = new QGridLayout( mySelectBox ); + mySelectBoxLayout->setMargin( MARGIN ); + mySelectBoxLayout->setSpacing( SPACING ); - mySelectSubMesh = new QCheckBox( tr( "SMESH_SUBMESH" ), aSelectBox ); - mySubMeshBtn = new QPushButton( aSelectBox ); + mySelectSubMesh = new QCheckBox( tr( "SMESH_SUBMESH" ), mySelectBox ); + mySubMeshBtn = new QPushButton( mySelectBox ); mySubMeshBtn->setIcon( image0 ); - mySubMeshLine = new QLineEdit( aSelectBox ); + mySubMeshLine = new QLineEdit( mySelectBox ); mySubMeshLine->setReadOnly( true ); onSelectSubMesh( false ); - mySelectGroup = new QCheckBox( tr( "SMESH_GROUP" ), aSelectBox ); - myGroupBtn = new QPushButton( aSelectBox ); + mySelectGroup = new QCheckBox( tr( "SMESH_GROUP" ), mySelectBox ); + myGroupBtn = new QPushButton( mySelectBox ); myGroupBtn->setIcon( image0 ); - myGroupLine = new QLineEdit( aSelectBox ); + myGroupLine = new QLineEdit( mySelectBox ); myGroupLine->setReadOnly( true ); onSelectGroup( false ); - aSelectBoxLayout->addWidget( mySelectSubMesh, 0, 0 ); - aSelectBoxLayout->addWidget( mySubMeshBtn, 0, 1 ); - aSelectBoxLayout->addWidget( mySubMeshLine, 0, 2 ); - aSelectBoxLayout->addWidget( mySelectGroup, 1, 0 ); - aSelectBoxLayout->addWidget( myGroupBtn, 1, 1 ); - aSelectBoxLayout->addWidget( myGroupLine, 1, 2 ); + mySelectBoxLayout->addWidget( mySelectSubMesh, 0, 0 ); + mySelectBoxLayout->addWidget( mySubMeshBtn, 0, 1 ); + mySelectBoxLayout->addWidget( mySubMeshLine, 0, 2 ); + mySelectBoxLayout->addWidget( mySelectGroup, 1, 0 ); + mySelectBoxLayout->addWidget( myGroupBtn, 1, 1 ); + mySelectBoxLayout->addWidget( myGroupLine, 1, 2 ); /***************************************************************/ QVBoxLayout* wg1Layout = new QVBoxLayout( wg1 ); wg1Layout->setMargin( 0 ); wg1Layout->setSpacing( SPACING ); wg1Layout->addWidget( aContentBox ); - wg1Layout->addWidget( aSelectBox ); + wg1Layout->addWidget( mySelectBox ); wg1Layout->setStretchFactor( aContentBox, 10 ); /***************************************************************/ @@ -374,36 +390,37 @@ void SMESHGUI_GroupDlg::initDialog( bool create) aMainLayout->addWidget(aButtons, 6, 0, 1, 3); /* signals and slots connections */ - connect(myMeshGroupBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); - connect(myGrpTypeGroup, SIGNAL(buttonClicked(int)), this, SLOT(onGrpTypeChanged(int))); - connect(myTypeGroup, SIGNAL(buttonClicked(int)), this, SLOT(onTypeChanged(int))); + connect(myMeshGroupBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); + connect(myGrpTypeGroup, SIGNAL(buttonClicked(int)), this, SLOT(onGrpTypeChanged(int))); + connect(myTypeGroup, SIGNAL(buttonClicked(int)), this, SLOT(onTypeChanged(int))); - connect(myName, SIGNAL(textChanged(const QString&)), this, SLOT(onNameChanged(const QString&))); - connect(myElements, SIGNAL(itemSelectionChanged()), this, SLOT(onListSelectionChanged())); + connect(myName, SIGNAL(textChanged(const QString&)), this, SLOT(onNameChanged(const QString&))); + connect(myElements, SIGNAL(itemSelectionChanged()), this, SLOT(onListSelectionChanged())); - connect(myFilter, SIGNAL(clicked()), this, SLOT(setFilters())); - connect(aAddBtn, SIGNAL(clicked()), this, SLOT(onAdd())); - connect(aRemoveBtn, SIGNAL(clicked()), this, SLOT(onRemove())); - connect(aSortBtn, SIGNAL(clicked()), this, SLOT(onSort())); + connect(myFilter, SIGNAL(clicked()), this, SLOT(setFilters())); + connect(mySelectAll, SIGNAL(toggled(bool)), this, SLOT(onSelectAll())); + connect(myAddBtn, SIGNAL(clicked()), this, SLOT(onAdd())); + connect(myRemoveBtn, SIGNAL(clicked()), this, SLOT(onRemove())); + connect(mySortBtn, SIGNAL(clicked()), this, SLOT(onSort())); connect(mySelectSubMesh, SIGNAL(toggled(bool)), this, SLOT(onSelectSubMesh(bool))); connect(mySelectGroup, SIGNAL(toggled(bool)), this, SLOT(onSelectGroup(bool))); - connect(mySubMeshBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); - connect(myGroupBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); + connect(mySubMeshBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); + connect(myGroupBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); connect(myGeomGroupBtn, SIGNAL(toggled(bool)), this, SLOT(onGeomSelectionButton(bool))); - connect(myColorBtn, SIGNAL(changed( QColor )), this, SLOT(onColorChanged( QColor ))); + connect(myColorBtn, SIGNAL(changed( QColor )), this, SLOT(onColorChanged( QColor ))); - connect(myOKBtn, SIGNAL(clicked()), this, SLOT(onOK())); - connect(myApplyBtn, SIGNAL(clicked()), this, SLOT(onApply())); - connect(myCloseBtn, SIGNAL(clicked()), this, SLOT(onClose())); - connect(myHelpBtn, SIGNAL(clicked()), this, SLOT(onHelp())); + connect(myOKBtn, SIGNAL(clicked()), this, SLOT(onOK())); + connect(myApplyBtn, SIGNAL(clicked()), this, SLOT(onApply())); + connect(myCloseBtn, SIGNAL(clicked()), this, SLOT(onClose())); + connect(myHelpBtn, SIGNAL(clicked()), this, SLOT(onHelp())); /* Init selection */ mySMESHGUI->SetActiveDialogBox(this); mySMESHGUI->SetState(800); - mySelectionMode = -1; + mySelectionMode = grpNoSelection; myMeshFilter = new SMESH_TypeFilter(MESH); mySubMeshFilter = new SMESH_TypeFilter(SUBMESH); myGroupFilter = new SMESH_TypeFilter(GROUP); @@ -612,7 +629,7 @@ void SMESHGUI_GroupDlg::updateButtons() bool enable = !myName->text().trimmed().isEmpty(); if (myGrpTypeId == 0) { - enable = enable && myElements->count() > 0; + enable = enable && (mySelectAll->isChecked() || myElements->count() > 0); enable = enable && (!myGroup->_is_nil() || !myMesh->_is_nil()); } else if (myGrpTypeId == 1) { @@ -620,7 +637,7 @@ void SMESHGUI_GroupDlg::updateButtons() enable = enable && myGeomObjects->length() > 0 && !myMesh->_is_nil(); } } - + myOKBtn->setEnabled(enable); myApplyBtn->setEnabled(enable); } @@ -685,6 +702,8 @@ void SMESHGUI_GroupDlg::setSelectionMode (int theMode) // PAL7314 if (myMesh->_is_nil()) return; + SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI ); + bool isSelectAll = mySelectAll->isChecked(); if (mySelectionMode != theMode) { // [PAL10408] mySelectionMgr->clearSelected(); mySelectionMgr->clearFilters(); @@ -693,46 +712,51 @@ void SMESHGUI_GroupDlg::setSelectionMode (int theMode) while ( it.hasNext() ) it.next()->SetPointRepresentation(false); } - else + else { SMESH::SetPointRepresentation(false); - if (theMode < 4) { - switch (theMode) { - case 0: - if (myActorsList.count() > 0) { - QListIterator it( myActorsList ); - while ( it.hasNext() ) - it.next()->SetPointRepresentation(true); - } - else - SMESH::SetPointRepresentation(true); - if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) - aViewWindow->SetSelectionMode(NodeSelection); - break; - case 1: - if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) - aViewWindow->SetSelectionMode(EdgeSelection); - break; - case 2: - if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) - aViewWindow->SetSelectionMode(FaceSelection); - break; - default: - if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) - aViewWindow->SetSelectionMode(VolumeSelection); + } + switch (theMode) { + case grpNodeSelection: + if (myActorsList.count() > 0) { + QListIterator it( myActorsList ); + while ( it.hasNext() ) + it.next()->SetPointRepresentation(true); + } + else { + SMESH::SetPointRepresentation(true); } - } else { - if (theMode == 4) - mySelectionMgr->installFilter(mySubMeshFilter); - else if (theMode == 5) - mySelectionMgr->installFilter(myGroupFilter); - else if (theMode == 6) - mySelectionMgr->installFilter(myMeshFilter); - else if (theMode == 7) - mySelectionMgr->installFilter(myGeomFilter); - - if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) - aViewWindow->SetSelectionMode(ActorSelection); + if ( aViewWindow ) aViewWindow->SetSelectionMode(isSelectAll ? ActorSelection : NodeSelection); + break; + case grpEdgeSelection: + if ( aViewWindow ) aViewWindow->SetSelectionMode(isSelectAll ? ActorSelection : EdgeSelection); + break; + case grpFaceSelection: + if ( aViewWindow ) aViewWindow->SetSelectionMode(isSelectAll ? ActorSelection : FaceSelection); + break; + case grpVolumeSelection: + if ( aViewWindow ) aViewWindow->SetSelectionMode(isSelectAll ? ActorSelection : VolumeSelection); + break; + case grpSubMeshSelection: + mySelectionMgr->installFilter(mySubMeshFilter); + if ( aViewWindow ) aViewWindow->SetSelectionMode(ActorSelection); + break; + case grpGroupSelection: + mySelectionMgr->installFilter(myGroupFilter); + if ( aViewWindow ) aViewWindow->SetSelectionMode(ActorSelection); + break; + case grpMeshSelection: + mySelectionMgr->installFilter(myMeshFilter); + if ( aViewWindow ) aViewWindow->SetSelectionMode(ActorSelection); + break; + case grpGeomSelection: + mySelectionMgr->installFilter(myGeomFilter); + if ( aViewWindow ) aViewWindow->SetSelectionMode(ActorSelection); + break; + default: + if ( aViewWindow ) aViewWindow->SetSelectionMode(ActorSelection); + break; } + if ( aViewWindow ) aViewWindow->Repaint(); mySelectionMode = theMode; } } @@ -750,7 +774,7 @@ bool SMESHGUI_GroupDlg::onApply() return false; if (myGrpTypeId == 0) { // on mesh elements - if (!myElements->count()) + if (!mySelectAll->isChecked() && !myElements->count()) return false; mySelectionMgr->clearSelected(); @@ -778,15 +802,23 @@ bool SMESHGUI_GroupDlg::onApply() case 3: aType = SMESH::VOLUME; break; } - SMESH::long_array_var anIdList = new SMESH::long_array; - int i, k = myElements->count(); - anIdList->length(k); - for (i = 0; i < k; i++) { - anIdList[i] = myElements->item(i)->text().toInt(); - } - myGroup = SMESH::AddGroup(myMesh, aType, myName->text()); - myGroup->Add(anIdList.inout()); + + if ( mySelectAll->isChecked() ) { + // select all + myGroup->AddFrom(myMesh.in()); + } + else { + // select manually + SMESH::long_array_var anIdList = new SMESH::long_array; + int i, k = myElements->count(); + anIdList->length(k); + for (i = 0; i < k; i++) { + anIdList[i] = myElements->item(i)->text().toInt(); + } + + myGroup->Add(anIdList.inout()); + } SALOMEDS::Color aColor = getGroupColor(); myGroup->SetColor(aColor); @@ -818,37 +850,44 @@ bool SMESHGUI_GroupDlg::onApply() } } - QList aAddList; - - int i, total = myElements->count(); - for (i = 0; i < total; i++) { - int anId = myElements->item(i)->text().toInt(); - int idx = myIdList.indexOf(anId); - if ( idx == -1 ) - aAddList.append(anId); - else - myIdList.removeAt(idx); + if ( mySelectAll->isChecked() ) { + // select all + myGroup->Clear(); + myGroup->AddFrom(myMesh.in()); } - if (!aAddList.empty()) { - SMESH::long_array_var anIdList = new SMESH::long_array; - int added = aAddList.count(); - anIdList->length(added); - for (i = 0; i < added; i++) - anIdList[i] = aAddList[i]; - myGroup->Add(anIdList.inout()); - } - if (!myIdList.empty()) { - SMESH::long_array_var anIdList = new SMESH::long_array; - int removed = myIdList.count(); - anIdList->length(removed); - for (i = 0; i < removed; i++) - anIdList[i] = myIdList[i]; - myGroup->Remove(anIdList.inout()); - } - /* init for next operation */ - myIdList.clear(); - for (i = 0; i < total; i++) { - myIdList.append(myElements->item(i)->text().toInt()); + else { + QList aAddList; + + int i, total = myElements->count(); + for (i = 0; i < total; i++) { + int anId = myElements->item(i)->text().toInt(); + int idx = myIdList.indexOf(anId); + if ( idx == -1 ) + aAddList.append(anId); + else + myIdList.removeAt(idx); + } + if (!aAddList.empty()) { + SMESH::long_array_var anIdList = new SMESH::long_array; + int added = aAddList.count(); + anIdList->length(added); + for (i = 0; i < added; i++) + anIdList[i] = aAddList[i]; + myGroup->Add(anIdList.inout()); + } + if (!myIdList.empty()) { + SMESH::long_array_var anIdList = new SMESH::long_array; + int removed = myIdList.count(); + anIdList->length(removed); + for (i = 0; i < removed; i++) + anIdList[i] = myIdList[i]; + myGroup->Remove(anIdList.inout()); + } + /* init for next operation */ + myIdList.clear(); + for (i = 0; i < total; i++) { + myIdList.append(myElements->item(i)->text().toInt()); + } } } @@ -1336,6 +1375,24 @@ void SMESHGUI_GroupDlg::onObjectSelectionChanged() myIsBusy = false; } +//================================================================================= +// function : onSelectSubMesh() +// purpose : Called when selection in 3D view or ObjectBrowser is changed +//================================================================================= +void SMESHGUI_GroupDlg::onSelectAll() +{ + myElementsLab->setEnabled( !mySelectAll->isChecked() ); + myElements->setEnabled( !mySelectAll->isChecked() ); + myFilter->setEnabled( !mySelectAll->isChecked() ); + myAddBtn->setEnabled( !mySelectAll->isChecked() ); + myRemoveBtn->setEnabled( !mySelectAll->isChecked() ); + mySortBtn->setEnabled( !mySelectAll->isChecked() ); + mySelectBox->setEnabled( !mySelectAll->isChecked() ); + int selMode = mySelectionMode; + mySelectionMode = grpNoSelection; + setSelectionMode( selMode ); +} + //================================================================================= // function : onSelectSubMesh() // purpose : Called when selection in 3D view or ObjectBrowser is changed @@ -1350,7 +1407,7 @@ void SMESHGUI_GroupDlg::onSelectSubMesh(bool on) //VSR: mySelectGeomGroup->setChecked(false); //VSR: } myCurrentLineEdit = mySubMeshLine; - setSelectionMode(4); + setSelectionMode(grpSubMeshSelection); } else { mySubMeshLine->setText( "" ); @@ -1374,7 +1431,7 @@ void SMESHGUI_GroupDlg::onSelectGroup(bool on) mySelectSubMesh->setChecked(false); } myCurrentLineEdit = myGroupLine; - setSelectionMode(5); + setSelectionMode(grpGroupSelection); } else { myGroupLine->setText( "" ); @@ -1402,7 +1459,7 @@ void SMESHGUI_GroupDlg::onSelectGeomGroup(bool on) } myCurrentLineEdit = myGeomGroupLine; updateGeomPopup(); - setSelectionMode(8); + setSelectionMode(grpAllSelection); } else { myGeomGroupBtn->setChecked(false); @@ -1427,9 +1484,9 @@ void SMESHGUI_GroupDlg::setCurrentSelection() disconnect(myMeshGroupBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); mySelectionMgr->clearSelected(); if (myCreate) - setSelectionMode(6); + setSelectionMode(grpMeshSelection); else - setSelectionMode(5); + setSelectionMode(grpGroupSelection); connect(myMeshGroupBtn, SIGNAL(clicked()), this, SLOT(setCurrentSelection())); myCurrentLineEdit = myMeshGroupLine; onObjectSelectionChanged(); @@ -1960,7 +2017,7 @@ void SMESHGUI_GroupDlg::enterEvent (QEvent*) if (!isEnabled()) { mySMESHGUI->EmitSignalDeactivateDialog(); setEnabled(true); - mySelectionMode = -1; + mySelectionMode = grpNoSelection; setSelectionMode(myTypeId); //mySMESHGUI->SetActiveDialogBox((QDialog*)this); mySMESHGUI->SetActiveDialogBox(this); @@ -2038,12 +2095,12 @@ void SMESHGUI_GroupDlg::onGeomSelectionButton(bool isBtnOn) myCurrentLineEdit = myGeomGroupLine; QAction* a = myGeomPopup->exec( QCursor::pos() ); if (!a || myActions[a] == DIRECT_GEOM_INDEX) - setSelectionMode(7); + setSelectionMode(grpGeomSelection); } else if (!isBtnOn) { myCurrentLineEdit = 0; - setSelectionMode(8); + setSelectionMode(grpAllSelection); } } @@ -2056,7 +2113,7 @@ void SMESHGUI_GroupDlg::onGeomPopup( QAction* a ) int index = myActions[a]; if ( index == GEOM_BY_MESH_INDEX ) { - mySelectionMode = -1; + mySelectionMode = grpNoSelection; if ( !myShapeByMeshOp ) { myShapeByMeshOp = new SMESHGUI_ShapeByMeshOp(true); connect(myShapeByMeshOp, SIGNAL(committed(SUIT_Operation*)), @@ -2117,7 +2174,7 @@ void SMESHGUI_GroupDlg::onCloseShapeByMeshDlg(SUIT_Operation* op) if ( myShapeByMeshOp == op ) { show(); - setSelectionMode(7); + setSelectionMode(grpGeomSelection); } } diff --git a/src/SMESHGUI/SMESHGUI_GroupDlg.h b/src/SMESHGUI/SMESHGUI_GroupDlg.h index 31c93d812..92f749110 100644 --- a/src/SMESHGUI/SMESHGUI_GroupDlg.h +++ b/src/SMESHGUI/SMESHGUI_GroupDlg.h @@ -40,6 +40,8 @@ #include CORBA_SERVER_HEADER(SMESH_Mesh) #include CORBA_SERVER_HEADER(SMESH_Group) +class QGroupBox; +class QLabel; class QLineEdit; class QButtonGroup; class QListWidget; @@ -96,6 +98,7 @@ private slots: void onListSelectionChanged(); void onObjectSelectionChanged(); + void onSelectAll(); void onSelectSubMesh( bool ); void onSelectGroup( bool ); void onSelectGeomGroup( bool ); @@ -157,13 +160,18 @@ private: QButtonGroup* myGrpTypeGroup; QStackedWidget* myWGStack; + QCheckBox* mySelectAll; + QLabel* myElementsLab; QListWidget* myElements; QPushButton* myFilter; + QPushButton* myAddBtn; + QPushButton* myRemoveBtn; + QPushButton* mySortBtn; + QGroupBox* mySelectBox; QCheckBox* mySelectSubMesh; QPushButton* mySubMeshBtn; QLineEdit* mySubMeshLine; - QCheckBox* mySelectGroup; QPushButton* myGroupBtn; QLineEdit* myGroupLine; diff --git a/src/SMESHGUI/SMESH_msg_en.ts b/src/SMESHGUI/SMESH_msg_en.ts index 5a1866bef..c75999773 100644 --- a/src/SMESHGUI/SMESH_msg_en.ts +++ b/src/SMESHGUI/SMESH_msg_en.ts @@ -4365,6 +4365,13 @@ Please specify them and try again Union of two groups + + SMESHGUI_GroupDlg + + SELECT_ALL + Select All + + SMESHGUI_UnionGroupsDlg diff --git a/src/SMESH_I/SMESH_Group_i.cxx b/src/SMESH_I/SMESH_Group_i.cxx index c69024ed2..5b0f5062f 100644 --- a/src/SMESH_I/SMESH_Group_i.cxx +++ b/src/SMESH_I/SMESH_Group_i.cxx @@ -347,6 +347,36 @@ RemoveByPredicate( SMESH::Predicate_ptr thePredicate ) return 0; } +CORBA::Long SMESH_Group_i::AddFrom( SMESH::SMESH_IDSource_ptr theSource ) +{ + long nbAdd = 0; + SMESHDS_Group* aGroupDS = dynamic_cast( GetGroupDS() ); + if (aGroupDS) { + SMESH::long_array_var anIds; + if ( !CORBA::is_nil(SMESH::SMESH_GroupBase::_narrow(theSource)) && + SMESH::SMESH_GroupBase::_narrow(theSource)->GetType() == GetType() ) { + anIds = theSource->GetIDs(); + } + else if ( !CORBA::is_nil(SMESH::SMESH_Mesh::_narrow(theSource)) ) { + anIds = SMESH::SMESH_Mesh::_narrow(theSource)->GetElementsByType( GetType() ); + } + else if ( !CORBA::is_nil(SMESH::SMESH_subMesh::_narrow(theSource)) ) { + anIds = SMESH::SMESH_subMesh::_narrow(theSource)->GetElementsByType( GetType() ); + } + else { + anIds->length( 0 ); + } + for ( int i = 0, total = anIds->length(); i < total; i++ ) { + if ( aGroupDS->Add((int)anIds[i]) ) nbAdd++; + } + } + + // Update Python script + TPythonDump() << "nbAdd = " << _this() << ".AddFrom( " << theSource << " )"; + + return nbAdd; +} + //============================================================================= /*! * diff --git a/src/SMESH_I/SMESH_Group_i.hxx b/src/SMESH_I/SMESH_Group_i.hxx index 30ea828c0..0dffef1e8 100644 --- a/src/SMESH_I/SMESH_Group_i.hxx +++ b/src/SMESH_I/SMESH_Group_i.hxx @@ -113,6 +113,8 @@ class SMESH_I_EXPORT SMESH_Group_i: CORBA::Long AddByPredicate( SMESH::Predicate_ptr thePredicate ); CORBA::Long RemoveByPredicate( SMESH::Predicate_ptr thePredicate ); + + CORBA::Long AddFrom( SMESH::SMESH_IDSource_ptr theSource ); }; // ========================= -- 2.39.2