X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_MultiEditDlg.cxx;h=b87346e6313b43ff68d03ad5c241183776a06c21;hb=f0bf265fc0ea849ad1a359e10ad0c9cf6b0b9bb8;hp=7755297ebddd0dd59ab1b02aa7142708e588495a;hpb=790c5cfa903e3b809e6bd5b7aefed48d17f15dc5;p=modules%2Fsmesh.git diff --git a/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx b/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx index 7755297eb..b87346e63 100755 --- a/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_MultiEditDlg.cxx @@ -1,29 +1,29 @@ -// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2012 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 +// 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. +// 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. // -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // File : SMESHGUI_MultiEditDlg.cxx // Author : Sergey LITONIN, Open CASCADE S.A.S. // SMESH includes -// + #include "SMESHGUI_MultiEditDlg.h" #include "SMESHGUI.h" @@ -225,7 +225,7 @@ QWidget* SMESHGUI_MultiEditDlg::createMainFrame (QWidget* theParent, const bool myComboBoxFunctor->addItem(tr("ASPECTRATIO_ELEMENTS")); myComboBoxFunctor->addItem(tr("MINIMUMANGLE_ELEMENTS")); myComboBoxFunctor->addItem(tr("SKEW_ELEMENTS")); - myComboBoxFunctor->addItem(tr("AREA_ELEMENTS")); + //myComboBoxFunctor->addItem(tr("AREA_ELEMENTS")); //myComboBoxFunctor->addItem(tr("LENGTH2D_EDGES")); // for existing elements only //myComboBoxFunctor->addItem(tr("MULTI2D_BORDERS")); // for existing elements only myComboBoxFunctor->setCurrentIndex(0); @@ -362,6 +362,8 @@ SMESH::NumericalFunctor_ptr SMESHGUI_MultiEditDlg::getNumericalFunctor() aNF = aFilterMgr->CreateLength2D(); else if (myComboBoxFunctor->currentText() == tr("MULTI2D_BORDERS")) aNF = aFilterMgr->CreateMultiConnection2D(); + else if (myComboBoxFunctor->currentText() == tr("MIN_DIAG_ELEMENTS")) + aNF = aFilterMgr->CreateMaxElementLength2D(); else; return aNF._retn(); @@ -776,12 +778,13 @@ void SMESHGUI_MultiEditDlg::onAddBtn() bool isGroupOrSubmesh = (mySubmeshChk->isChecked() || myGroupChk->isChecked()); mySubmeshChk->setChecked(false); myGroupChk->setChecked(false); + QStringList items; for(int i = 1; i <= toBeAdded.Extent(); i++) if (myIds.Add(toBeAdded(i))) { - QListWidgetItem* item = new QListWidgetItem(QString("%1").arg(toBeAdded(i))); - myListBox->addItem(item); - item->setSelected(true); + items.append(QString("%1").arg(toBeAdded(i))); } + myListBox->addItems(items); + myListBox->selectAll(); myBusy = false; emit ListContensChanged(); @@ -997,12 +1000,12 @@ void SMESHGUI_MultiEditDlg::setSelectionMode() if (mySubmeshChk->isChecked()) { if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) aViewWindow->SetSelectionMode(ActorSelection); - mySelectionMgr->installFilter(new SMESH_TypeFilter(SUBMESH)); + mySelectionMgr->installFilter(new SMESH_TypeFilter(SMESH::SUBMESH)); } else if (myGroupChk->isChecked()) { if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) aViewWindow->SetSelectionMode(ActorSelection); - mySelectionMgr->installFilter(new SMESH_TypeFilter(GROUP)); + mySelectionMgr->installFilter(new SMESH_TypeFilter(SMESH::GROUP)); } if (entityType()) { @@ -1152,7 +1155,8 @@ SMESHGUI_UnionOfTrianglesDlg { setWindowTitle(tr("CAPTION")); - myComboBoxFunctor->setEnabled(true); + myComboBoxFunctor->setEnabled(true); + myComboBoxFunctor->addItem(tr("AREA_ELEMENTS")); myComboBoxFunctor->addItem(tr("WARP_ELEMENTS")); // for quadrangles only myComboBoxFunctor->addItem(tr("TAPER_ELEMENTS")); // for quadrangles only @@ -1205,18 +1209,18 @@ bool SMESHGUI_UnionOfTrianglesDlg::process (SMESH::SMESH_MeshEditor_ptr theEdito const SMESH::long_array& theIds, SMESH::SMESH_IDSource_ptr obj) { + { + QStringList aParameters; + aParameters << myMaxAngleSpin->text(); + myMesh->SetParameters( aParameters.join(":").toLatin1().constData() ); + } SMESH::NumericalFunctor_var aCriterion = getNumericalFunctor(); - double aMaxAngle = myMaxAngleSpin->GetValue() * PI / 180.0; + double aMaxAngle = myMaxAngleSpin->GetValue() * M_PI / 180.0; bool ok; if ( CORBA::is_nil( obj )) ok = theEditor->TriToQuad(theIds, aCriterion, aMaxAngle); else ok = theEditor->TriToQuadObject(obj, aCriterion, aMaxAngle); - if( ok ) { - QStringList aParameters; - aParameters << myMaxAngleSpin->text(); - myMesh->SetParameters( aParameters.join(":").toLatin1().constData() ); - } return ok; } @@ -1239,6 +1243,8 @@ SMESHGUI_CuttingOfQuadsDlg myCriterionGrp->show(); myChoiceWidget->show(); + myComboBoxFunctor->insertItem(0, tr("MIN_DIAG_ELEMENTS")); + myComboBoxFunctor->setCurrentIndex(0); myComboBoxFunctor->setEnabled(false); connect(myPreviewChk, SIGNAL(stateChanged(int)), this, SLOT(onPreviewChk())); @@ -1480,7 +1486,7 @@ SMESHGUI_CuttingIntoTetraDlg::SMESHGUI_CuttingIntoTetraDlg(SMESHGUI* theModule) { setWindowTitle(tr("CAPTION")); myHelpFileName = "split_to_tetra_page.html"; - myEntityType = SMESH::VolumeFilter; + myEntityType = 1; myToAllChk->setChecked( true ); //aplly to the whole mesh by default