-// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2021 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
#include <SUIT_MessageBox.h>
#include <SVTK_Selector.h>
#include <SalomeApp_Tools.h>
+#include <smIdType.hxx>
// Qt includes
#include <QButtonGroup>
myFilterBtn = new QPushButton( tr( "SMESH_BUT_FILTER" ), mainFrame() );
+ myDuplicateElemsChkBox = new QCheckBox( tr( "SMESH_DUPLICATE_0D" ), mainFrame() );
+
// List of groups
myGroupBox = new QGroupBox( tr( "SMESH_ADD_TO_GROUP" ), mainFrame() );
aLay->addWidget( objectWg( 0, Btn ), 1, 1 );
aLay->addWidget( objectWg( 0, Control), 1, 2, 1, 2 );
aLay->addWidget( myFilterBtn, 1, 4 );
+ aLay->addWidget( myDuplicateElemsChkBox,2, 0 );
//
- aLay->addWidget( myGroupBox, 2, 0, 1, 5 );
+ aLay->addWidget( myGroupBox, 3, 0, 1, 5 );
// Signals
myDlg( new SMESHGUI_Add0DElemsOnAllNodesDlg ),
myFilterDlg( 0 )
{
- myHelpFileName = "adding_nodes_and_elements_page.html#adding_0delems_on_all_nodes_anchor";
+ myHelpFileName = "adding_nodes_and_elements.html#adding-0delems-on-all-nodes-anchor";
connect( myDlg, SIGNAL( selTypeChanged(int) ), SLOT( onSelTypeChange(int)));
connect( myDlg->myFilterBtn, SIGNAL( clicked()), SLOT( onSetFilter() ));
if (!myDlg->myGroupBox->isEnabled()) return; // inactive
myIO.Nullify();
- myDlg->setObjectText( 0, "");
updateButtons();
SALOME_ListIO aList;
selectionMgr()->selectedObjects( aList );
- if ( aList.Extent() == 1 )
+ if ( aList.Extent() == 1 ) {
myIO = aList.First();
- else
+ }
+ else {
+ myDlg->setObjectText( 0, ""); // it clears the selection
return;
-
+ }
QString ids;
switch ( myDlg->getSelectionType() ) {
case SEL_OBJECT:
_PTR(SObject) group0DRoot;
if ( meshSO && meshSO->FindSubObject( SMESH::Tag_0DElementsGroups, group0DRoot ))
{
- _PTR(Study) aStudy = SMESH::GetActiveStudyDocument();
- _PTR(ChildIterator) group0DIter = aStudy->NewChildIterator( group0DRoot );
+ _PTR(ChildIterator) group0DIter = SMESH::getStudy()->NewChildIterator( group0DRoot );
for ( ; group0DIter->More(); group0DIter->Next() )
{
_PTR(SObject) groupSO = group0DIter->Value();
SUIT_MessageBox::warning( myDlg, tr( "SMESH_WRN_WARNING" ), tr( "SMESH_BAD_SELECTION" ) );
return false;
}
- SMESH::long_array_var idArray = new SMESH::long_array;
+ SMESH::smIdType_array_var idArray = new SMESH::smIdType_array;
idArray->length( idList.count() );
QStringList::iterator idIt = idList.begin();
for ( int i = 0; idIt != idList.end(); ++idIt, ++i )
// Create 0D elements
- int prevNb0D = mesh->Nb0DElements();
+ smIdType prevNb0D = mesh->Nb0DElements();
QString groupName = myDlg->myGroupListCmBox->currentText();
SMESH::SMESH_IDSource_var newObj =
- editor->Create0DElementsOnAllNodes( meshObject, groupName.toLatin1().data() );
+ editor->Create0DElementsOnAllNodes( meshObject, groupName.toUtf8().data(),
+ myDlg->myDuplicateElemsChkBox->isChecked() );
- int newNb0D = mesh->Nb0DElements() - prevNb0D;
+ smIdType newNb0D = mesh->Nb0DElements() - prevNb0D;
SUIT_MessageBox::information( myDlg, tr( "SMESH_INFORMATION" ),
tr( "NB_NEW_0D" ).arg( newNb0D ),
SUIT_MessageBox::Ok, SUIT_MessageBox::Ok);