X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_MeshInfosDlg.cxx;h=e0767710c89e203b60f6cb10ce019563716219e5;hp=044c55001089590371f22d1aede762d14e18b18a;hb=2c607013a23bd4e7ba07e72e0c04dee2c1209cff;hpb=79c00fe8dda8de553bddf2c588ebdf5e4c0746c4 diff --git a/src/SMESHGUI/SMESHGUI_MeshInfosDlg.cxx b/src/SMESHGUI/SMESHGUI_MeshInfosDlg.cxx index 044c55001..e0767710c 100644 --- a/src/SMESHGUI/SMESHGUI_MeshInfosDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_MeshInfosDlg.cxx @@ -1,24 +1,25 @@ -// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2011 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 // + // SMESH SMESHGUI : GUI for SMESH component // File : SMESHGUI_MeshInfosDlg.cxx // Author : Nicolas BARBEROU @@ -28,6 +29,7 @@ #include "SMESHGUI.h" #include "SMESHGUI_Utils.h" +#include "SMESHGUI_MeshInfosBox.h" // SALOME GUI includes #include @@ -124,293 +126,13 @@ SMESHGUI_MeshInfosDlg::SMESHGUI_MeshInfosDlg(SMESHGUI* theModule): QFrame* line1 = new QFrame(myMeshWidget); line1->setFrameStyle(QFrame::HLine | QFrame::Sunken); - // --> nodes - QLabel* myMeshNbNodesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_NODES")), myMeshWidget); - myMeshNbNodes = new QLabel(myMeshWidget); - myMeshNbNodes->setMinimumWidth(100); - QFrame* line12 = new QFrame(myMeshWidget); - line12->setFrameStyle(QFrame::HLine | QFrame::Sunken); - - // --> 0D elements - QLabel* myMeshNb0DElemsLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_0DELEMS")), myMeshWidget); - myMeshNb0DElems = new QLabel(myMeshWidget); - myMeshNb0DElems->setMinimumWidth(100); - - // --> header with orders - QLabel* myMeshOrder0Lab = new QLabel(tr("SMESH_MESHINFO_ORDER0"), myMeshWidget); - QLabel* myMeshOrder1Lab = new QLabel(tr("SMESH_MESHINFO_ORDER1"), myMeshWidget); - QLabel* myMeshOrder2Lab = new QLabel(tr("SMESH_MESHINFO_ORDER2"), myMeshWidget); - QFont fnti = myMeshOrder0Lab->font(); fnti.setItalic(true); - myMeshOrder0Lab->setFont(fnti); - myMeshOrder1Lab->setFont(fnti); - myMeshOrder2Lab->setFont(fnti); - - // --> edges - QLabel* myMeshNbEdgesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_EDGES")), myMeshWidget); - myMeshNbEdges = new QLabel(myMeshWidget); - myMeshNbEdges->setMinimumWidth(100); - myMeshNbEdges1 = new QLabel(myMeshWidget); - myMeshNbEdges1->setMinimumWidth(100); - myMeshNbEdges2 = new QLabel(myMeshWidget); - myMeshNbEdges2->setMinimumWidth(100); - - // --> faces - myMeshFacesGroup = new QGroupBox(tr("SMESH_MESHINFO_FACES"), myMeshWidget); - QGridLayout* myMeshFacesGroupLayout = new QGridLayout(myMeshFacesGroup); - myMeshFacesGroupLayout->setSpacing(SPACING); myMeshFacesGroupLayout->setMargin(MARGIN); - - // --> faces --> total - QLabel* myMeshNbFacesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_TOTAL")), myMeshFacesGroup); - myMeshNbFacesLab->setFont(fnt); - myMeshNbFaces = new QLabel(myMeshFacesGroup); - myMeshNbFaces->setMinimumWidth(100); - myMeshNbFaces->setFont(fnt); - myMeshNbFaces1 = new QLabel(myMeshFacesGroup); - myMeshNbFaces1->setMinimumWidth(100); - myMeshNbFaces1->setFont(fnt); - myMeshNbFaces2 = new QLabel(myMeshFacesGroup); - myMeshNbFaces2->setMinimumWidth(100); - myMeshNbFaces2->setFont(fnt); - - // --> faces --> triangles - QLabel* myMeshNbTrianglesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_TRIANGLES")), myMeshFacesGroup); - myMeshNbTriangles = new QLabel(myMeshFacesGroup); - myMeshNbTriangles->setMinimumWidth(100); - myMeshNbTriangles1 = new QLabel(myMeshFacesGroup); - myMeshNbTriangles1->setMinimumWidth(100); - myMeshNbTriangles2 = new QLabel(myMeshFacesGroup); - myMeshNbTriangles2->setMinimumWidth(100); - - // --> faces --> quadrangles - QLabel* myMeshNbQuadranglesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_QUADRANGLES")), myMeshFacesGroup); - myMeshNbQuadrangles = new QLabel(myMeshFacesGroup); - myMeshNbQuadrangles->setMinimumWidth(100); - myMeshNbQuadrangles1 = new QLabel(myMeshFacesGroup); - myMeshNbQuadrangles1->setMinimumWidth(100); - myMeshNbQuadrangles2 = new QLabel(myMeshFacesGroup); - myMeshNbQuadrangles2->setMinimumWidth(100); - - // --> faces --> polygons - QLabel* myMeshNbPolygonesLab = new QLabel( COLONIZE( tr( "SMESH_MESHINFO_POLYGONES" ) ), myMeshFacesGroup ); - myMeshNbPolygones = new QLabel( myMeshFacesGroup ); - myMeshNbPolygones->setMinimumWidth( 100 ); - - myMeshFacesGroupLayout->addWidget(myMeshNbFacesLab, 0, 0); - myMeshFacesGroupLayout->addWidget(myMeshNbFaces, 0, 1); - myMeshFacesGroupLayout->addWidget(myMeshNbFaces1, 0, 2); - myMeshFacesGroupLayout->addWidget(myMeshNbFaces2, 0, 3); - myMeshFacesGroupLayout->addWidget(myMeshNbTrianglesLab, 1, 0); - myMeshFacesGroupLayout->addWidget(myMeshNbTriangles, 1, 1); - myMeshFacesGroupLayout->addWidget(myMeshNbTriangles1, 1, 2); - myMeshFacesGroupLayout->addWidget(myMeshNbTriangles2, 1, 3); - myMeshFacesGroupLayout->addWidget(myMeshNbQuadranglesLab, 2, 0); - myMeshFacesGroupLayout->addWidget(myMeshNbQuadrangles, 2, 1); - myMeshFacesGroupLayout->addWidget(myMeshNbQuadrangles1, 2, 2); - myMeshFacesGroupLayout->addWidget(myMeshNbQuadrangles2, 2, 3); - myMeshFacesGroupLayout->addWidget(myMeshNbPolygonesLab, 3, 0); - myMeshFacesGroupLayout->addWidget(myMeshNbPolygones, 3, 1); - - // --> volumes - myMeshVolumesGroup = new QGroupBox(tr("SMESH_MESHINFO_VOLUMES"), myMeshWidget); - QGridLayout* myMeshVolumesGroupLayout = new QGridLayout(myMeshVolumesGroup); - myMeshVolumesGroupLayout->setSpacing(SPACING); myMeshVolumesGroupLayout->setMargin(MARGIN); - - // --> volumes --> total - QLabel* myMeshNbVolumesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_TOTAL")), myMeshVolumesGroup); - myMeshNbVolumesLab->setFont(fnt); - myMeshNbVolumes = new QLabel(myMeshVolumesGroup); - myMeshNbVolumes->setMinimumWidth(100); - myMeshNbVolumes->setFont(fnt); - myMeshNbVolumes1 = new QLabel(myMeshVolumesGroup); - myMeshNbVolumes1->setMinimumWidth(100); - myMeshNbVolumes1->setFont(fnt); - myMeshNbVolumes2 = new QLabel(myMeshVolumesGroup); - myMeshNbVolumes2->setMinimumWidth(100); - myMeshNbVolumes2->setFont(fnt); - - // --> volumes --> tetrahedrons - QLabel* myMeshNbTetraLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_TETRAS")), myMeshVolumesGroup); - myMeshNbTetra = new QLabel(myMeshVolumesGroup); - myMeshNbTetra->setMinimumWidth(100); - myMeshNbTetra1 = new QLabel(myMeshVolumesGroup); - myMeshNbTetra1->setMinimumWidth(100); - myMeshNbTetra2 = new QLabel(myMeshVolumesGroup); - myMeshNbTetra2->setMinimumWidth(100); - - // --> volumes --> hexahedrons - QLabel* myMeshNbHexaLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_HEXAS")), myMeshVolumesGroup); - myMeshNbHexa = new QLabel(myMeshVolumesGroup); - myMeshNbHexa->setMinimumWidth(100); - myMeshNbHexa1 = new QLabel(myMeshVolumesGroup); - myMeshNbHexa1->setMinimumWidth(100); - myMeshNbHexa2 = new QLabel(myMeshVolumesGroup); - myMeshNbHexa2->setMinimumWidth(100); - - // --> volumes --> prisms - QLabel* myMeshNbPrismLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_PRISMS")), myMeshVolumesGroup); - myMeshNbPrism = new QLabel(myMeshVolumesGroup); - myMeshNbPrism->setMinimumWidth(100); - myMeshNbPrism1 = new QLabel(myMeshVolumesGroup); - myMeshNbPrism1->setMinimumWidth(100); - myMeshNbPrism2 = new QLabel(myMeshVolumesGroup); - myMeshNbPrism2->setMinimumWidth(100); - - // --> volumes --> pyramids - QLabel* myMeshNbPyraLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_PYRAS")), myMeshVolumesGroup); - myMeshNbPyra = new QLabel(myMeshVolumesGroup); - myMeshNbPyra->setMinimumWidth(100); - myMeshNbPyra1 = new QLabel(myMeshVolumesGroup); - myMeshNbPyra1->setMinimumWidth(100); - myMeshNbPyra2 = new QLabel(myMeshVolumesGroup); - myMeshNbPyra2->setMinimumWidth(100); - - // --> volumes --> polyherones - QLabel* myMeshNbPolyhedronesLab = new QLabel( COLONIZE( tr( "SMESH_MESHINFO_POLYEDRES" ) ), myMeshVolumesGroup ); - myMeshNbPolyhedrones = new QLabel( myMeshVolumesGroup ); - myMeshNbPolyhedrones->setMinimumWidth( 100 ); - - myMeshVolumesGroupLayout->addWidget(myMeshNbVolumesLab, 0, 0); - myMeshVolumesGroupLayout->addWidget(myMeshNbVolumes, 0, 1); - myMeshVolumesGroupLayout->addWidget(myMeshNbVolumes1, 0, 2); - myMeshVolumesGroupLayout->addWidget(myMeshNbVolumes2, 0, 3); - myMeshVolumesGroupLayout->addWidget(myMeshNbTetraLab, 1, 0); - myMeshVolumesGroupLayout->addWidget(myMeshNbTetra, 1, 1); - myMeshVolumesGroupLayout->addWidget(myMeshNbTetra1, 1, 2); - myMeshVolumesGroupLayout->addWidget(myMeshNbTetra2, 1, 3); - myMeshVolumesGroupLayout->addWidget(myMeshNbHexaLab, 2, 0); - myMeshVolumesGroupLayout->addWidget(myMeshNbHexa, 2, 1); - myMeshVolumesGroupLayout->addWidget(myMeshNbHexa1, 2, 2); - myMeshVolumesGroupLayout->addWidget(myMeshNbHexa2, 2, 3); - myMeshVolumesGroupLayout->addWidget(myMeshNbPrismLab, 3, 0); - myMeshVolumesGroupLayout->addWidget(myMeshNbPrism, 3, 1); - myMeshVolumesGroupLayout->addWidget(myMeshNbPrism1, 3, 2); - myMeshVolumesGroupLayout->addWidget(myMeshNbPrism2, 3, 3); - myMeshVolumesGroupLayout->addWidget(myMeshNbPyraLab, 4, 0); - myMeshVolumesGroupLayout->addWidget(myMeshNbPyra, 4, 1); - myMeshVolumesGroupLayout->addWidget(myMeshNbPyra1, 4, 2); - myMeshVolumesGroupLayout->addWidget(myMeshNbPyra2, 4, 3); - myMeshVolumesGroupLayout->addWidget(myMeshNbPolyhedronesLab, 5, 0); - myMeshVolumesGroupLayout->addWidget(myMeshNbPolyhedrones, 5, 1); + myMeshInfoBox = new SMESHGUI_MeshInfosBox(true, myMeshWidget); aMeshLayout->addWidget(myMeshNameLab, 0, 0); aMeshLayout->addWidget(myMeshName, 0, 1); aMeshLayout->addWidget(line1, 1, 0, 1, 2); - aMeshLayout->addWidget(myMeshNbNodesLab, 2, 0); - aMeshLayout->addWidget(myMeshNbNodes, 2, 1); - aMeshLayout->addWidget(line12, 3, 0, 1, 2); - aMeshLayout->addWidget(myMeshNb0DElemsLab, 4, 0); - aMeshLayout->addWidget(myMeshNb0DElems, 4, 1); - aMeshLayout->addWidget(myMeshOrder0Lab, 5, 1); - aMeshLayout->addWidget(myMeshOrder1Lab, 5, 2); - aMeshLayout->addWidget(myMeshOrder2Lab, 5, 3); - aMeshLayout->addWidget(myMeshNbEdgesLab, 6, 0); - aMeshLayout->addWidget(myMeshNbEdges, 6, 1); - aMeshLayout->addWidget(myMeshNbEdges1, 6, 2); - aMeshLayout->addWidget(myMeshNbEdges2, 6, 3); - aMeshLayout->addWidget(myMeshFacesGroup, 7, 0, 1, 4); - aMeshLayout->addWidget(myMeshVolumesGroup, 8, 0, 1, 4); - aMeshLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Minimum, QSizePolicy::Expanding), 9, 0); - - // submesh - mySubMeshWidget = new QWidget(myWGStack); - QGridLayout* aSubMeshLayout = new QGridLayout(mySubMeshWidget); - aSubMeshLayout->setSpacing(SPACING); aSubMeshLayout->setMargin(0); - myWGStack->addWidget(mySubMeshWidget); - - // --> name - QLabel* mySubMeshNameLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_NAME")), mySubMeshWidget); - mySubMeshName = new QLabel(mySubMeshWidget); - mySubMeshName->setMinimumWidth(100); - QFrame* line2 = new QFrame(mySubMeshWidget); - line2->setFrameStyle(QFrame::HLine | QFrame::Sunken); - - // --> nodes - QLabel* mySubMeshNbNodesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_NODES")), mySubMeshWidget); - mySubMeshNbNodes = new QLabel(mySubMeshWidget); - mySubMeshNbNodes->setMinimumWidth(100); - - // --> elements - mySubMeshElementsGroup = new QGroupBox(tr("SMESH_MESHINFO_ELEMENTS"), mySubMeshWidget); - QGridLayout* mySubMeshElementsGroupLayout = new QGridLayout(mySubMeshElementsGroup); - mySubMeshElementsGroupLayout->setSpacing(SPACING); mySubMeshElementsGroupLayout->setMargin(MARGIN); - - // --> elements --> total - QLabel* mySubMeshNbElementsLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_TOTAL")), mySubMeshElementsGroup); - mySubMeshNbElementsLab->setFont(fnt); - mySubMeshNbElements = new QLabel(mySubMeshElementsGroup); - mySubMeshNbElements->setMinimumWidth(100); - mySubMeshNbElements->setFont(fnt); - - // --> 0D elements - QLabel* mySubMeshNb0DElemsLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_0DELEMS")), mySubMeshElementsGroup); - mySubMeshNb0DElems = new QLabel(mySubMeshElementsGroup); - mySubMeshNb0DElems->setMinimumWidth(100); - - // --> elements --> edges - QLabel* mySubMeshNbEdgesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_EDGES")), mySubMeshElementsGroup); - mySubMeshNbEdges = new QLabel(mySubMeshElementsGroup); - mySubMeshNbEdges->setMinimumWidth(100); - - // --> elements --> faces - QLabel* mySubMeshNbFacesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_FACES")), mySubMeshElementsGroup); - mySubMeshNbFaces = new QLabel(mySubMeshElementsGroup); - mySubMeshNbFaces->setMinimumWidth(100); - - // --> elements --> volumes - QLabel* mySubMeshNbVolumesLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_VOLUMES")), mySubMeshElementsGroup); - mySubMeshNbVolumes = new QLabel(mySubMeshElementsGroup); - mySubMeshNbVolumes->setMinimumWidth(100); - - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbElementsLab, 0, 0); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbElements, 0, 1); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNb0DElemsLab, 1, 0); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNb0DElems, 1, 1); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbEdgesLab, 2, 0); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbEdges, 2, 1); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbFacesLab, 3, 0); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbFaces, 3, 1); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbVolumesLab, 4, 0); - mySubMeshElementsGroupLayout->addWidget(mySubMeshNbVolumes, 4, 1); - - aSubMeshLayout->addWidget(mySubMeshNameLab, 0, 0); - aSubMeshLayout->addWidget(mySubMeshName, 0, 1); - aSubMeshLayout->addWidget(line2, 1, 0, 1, 2); - aSubMeshLayout->addWidget(mySubMeshNbNodesLab, 2, 0); - aSubMeshLayout->addWidget(mySubMeshNbNodes, 2, 1); - aSubMeshLayout->addWidget(mySubMeshElementsGroup, 3, 0, 1, 2); - aSubMeshLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Minimum, QSizePolicy::Expanding), 4, 0); - - // group - myGroupWidget = new QWidget(myWGStack); - QGridLayout* myGroupWidgetLayout = new QGridLayout(myGroupWidget); - myGroupWidgetLayout->setSpacing(SPACING); myGroupWidgetLayout->setMargin(0); - myWGStack->addWidget(myGroupWidget); - - // --> name - QLabel* myGroupNameLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_NAME")), myGroupWidget); - myGroupName = new QLabel(myGroupWidget); - myGroupName->setMinimumWidth(100); - QFrame* line3 = new QFrame(myGroupWidget); - line3->setFrameStyle(QFrame::HLine | QFrame::Sunken); - - // --> type - QLabel* myGroupTypeLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_TYPE")), myGroupWidget); - myGroupType = new QLabel(myGroupWidget); - myGroupType->setMinimumWidth(100); - - // --> number of entities - QLabel* myGroupNbLab = new QLabel(COLONIZE(tr("SMESH_MESHINFO_ENTITIES")), myGroupWidget); - myGroupNb = new QLabel(myGroupWidget); - myGroupNb->setMinimumWidth(100); - - myGroupWidgetLayout->addWidget(myGroupNameLab, 0, 0); - myGroupWidgetLayout->addWidget(myGroupName, 0, 1); - myGroupWidgetLayout->addWidget(line3, 1, 0, 1, 2); - myGroupWidgetLayout->addWidget(myGroupTypeLab, 2, 0); - myGroupWidgetLayout->addWidget(myGroupType, 2, 1); - myGroupWidgetLayout->addWidget(myGroupNbLab, 3, 0); - myGroupWidgetLayout->addWidget(myGroupNb, 3, 1); - myGroupWidgetLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Minimum, QSizePolicy::Expanding), 4, 0); + aMeshLayout->addWidget(myMeshInfoBox, 2, 0, 1, 2); + aMeshLayout->addItem(new QSpacerItem(0, 0, QSizePolicy::Minimum, QSizePolicy::Expanding), 3, 0); // buttons myButtonsGroup = new QGroupBox(this); @@ -419,7 +141,9 @@ SMESHGUI_MeshInfosDlg::SMESHGUI_MeshInfosDlg(SMESHGUI* theModule): // buttons --> OK and Help buttons myOkBtn = new QPushButton(tr("SMESH_BUT_OK" ), myButtonsGroup); - myOkBtn->setAutoDefault(true); myOkBtn->setDefault(true); + myOkBtn->setAutoDefault(true); + myOkBtn->setDefault(true); + myOkBtn->setFocus(); myHelpBtn = new QPushButton(tr("SMESH_BUT_HELP" ), myButtonsGroup); myHelpBtn->setAutoDefault(true); @@ -477,80 +201,17 @@ void SMESHGUI_MeshInfosDlg::DumpMeshInfos() //CORBA::Object_var anObject = aSO->GetObject(); CORBA::Object_var anObject = SMESH::SObjectToObject(aSO); if (!CORBA::is_nil(anObject)) { - SMESH::SMESH_IDSource_var anIDSource = SMESH::SMESH_IDSource::_narrow(anObject); - if (!anIDSource->_is_nil()) { - myWGStack->setCurrentWidget(myMeshWidget); - setWindowTitle(tr("SMESH_MESHINFO_TITLE") + " [" + tr("SMESH_OBJECT_MESH") + "]"); - myMeshName->setText(aSO->GetName().c_str()); - - SMESH::long_array_var aMeshInfo = anIDSource->GetMeshInfo(); - - myMeshNbNodes->setNum((int)aMeshInfo[SMESH::Entity_Node]); - myMeshNb0DElems->setNum((int)aMeshInfo[SMESH::Entity_0D]); - myMeshNbEdges->setNum((int)aMeshInfo[SMESH::Entity_Edge] + (int)aMeshInfo[SMESH::Entity_Quad_Edge]); - myMeshNbEdges1->setNum((int)aMeshInfo[SMESH::Entity_Edge]); - myMeshNbEdges2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Edge]); - myMeshNbFaces->setNum((int)aMeshInfo[SMESH::Entity_Triangle] + - (int)aMeshInfo[SMESH::Entity_Quad_Triangle] + - (int)aMeshInfo[SMESH::Entity_Quadrangle] + - (int)aMeshInfo[SMESH::Entity_Quad_Quadrangle] + - (int)aMeshInfo[SMESH::Entity_Polygon] + - (int)aMeshInfo[SMESH::Entity_Quad_Polygon]); - myMeshNbFaces1->setNum((int)aMeshInfo[SMESH::Entity_Triangle] + - (int)aMeshInfo[SMESH::Entity_Quadrangle] + - (int)aMeshInfo[SMESH::Entity_Polygon]); - myMeshNbFaces2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Triangle] + - (int)aMeshInfo[SMESH::Entity_Quad_Quadrangle] + - (int)aMeshInfo[SMESH::Entity_Quad_Polygon]); - - myMeshNbTriangles->setNum((int)aMeshInfo[SMESH::Entity_Triangle] + - (int)aMeshInfo[SMESH::Entity_Quad_Triangle]); - myMeshNbTriangles1->setNum((int)aMeshInfo[SMESH::Entity_Triangle]); - myMeshNbTriangles2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Triangle]); - myMeshNbQuadrangles->setNum((int)aMeshInfo[SMESH::Entity_Quadrangle] + - (int)aMeshInfo[SMESH::Entity_Quad_Quadrangle]); - myMeshNbQuadrangles1->setNum((int)(int)aMeshInfo[SMESH::Entity_Quadrangle]); - myMeshNbQuadrangles2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Quadrangle]); - myMeshNbPolygones->setNum((int)aMeshInfo[SMESH::Entity_Polygon]); - myMeshNbVolumes->setNum((int)aMeshInfo[SMESH::Entity_Tetra] + - (int)aMeshInfo[SMESH::Entity_Quad_Tetra] + - (int)aMeshInfo[SMESH::Entity_Pyramid] + - (int)aMeshInfo[SMESH::Entity_Quad_Pyramid] + - (int)aMeshInfo[SMESH::Entity_Hexa] + - (int)aMeshInfo[SMESH::Entity_Quad_Hexa] + - (int)aMeshInfo[SMESH::Entity_Penta] + - (int)aMeshInfo[SMESH::Entity_Quad_Penta] + - (int)aMeshInfo[SMESH::Entity_Polyhedra] + - (int)aMeshInfo[SMESH::Entity_Quad_Polyhedra]); - myMeshNbVolumes1->setNum((int)aMeshInfo[SMESH::Entity_Tetra] + - (int)aMeshInfo[SMESH::Entity_Pyramid] + - (int)aMeshInfo[SMESH::Entity_Hexa] + - (int)aMeshInfo[SMESH::Entity_Penta] + - (int)aMeshInfo[SMESH::Entity_Polyhedra]); - myMeshNbVolumes2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Tetra] + - (int)aMeshInfo[SMESH::Entity_Quad_Pyramid] + - (int)aMeshInfo[SMESH::Entity_Quad_Hexa] + - (int)aMeshInfo[SMESH::Entity_Quad_Penta] + - (int)aMeshInfo[SMESH::Entity_Quad_Polyhedra]); - myMeshNbTetra->setNum((int)aMeshInfo[SMESH::Entity_Tetra] + - (int)aMeshInfo[SMESH::Entity_Quad_Tetra]); - myMeshNbTetra1->setNum((int)aMeshInfo[SMESH::Entity_Tetra]); - myMeshNbTetra2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Tetra]); - myMeshNbHexa->setNum((int)aMeshInfo[SMESH::Entity_Hexa] + - (int)aMeshInfo[SMESH::Entity_Quad_Hexa]); - myMeshNbHexa1->setNum((int)aMeshInfo[SMESH::Entity_Hexa]); - myMeshNbHexa2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Hexa]); - myMeshNbPrism->setNum((int)aMeshInfo[SMESH::Entity_Penta] + - (int)aMeshInfo[SMESH::Entity_Quad_Penta]); - myMeshNbPrism1->setNum((int)aMeshInfo[SMESH::Entity_Penta]); - myMeshNbPrism2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Penta]); - myMeshNbPyra->setNum((int)aMeshInfo[SMESH::Entity_Pyramid] + - (int)aMeshInfo[SMESH::Entity_Quad_Pyramid]); - myMeshNbPyra1->setNum((int)aMeshInfo[SMESH::Entity_Pyramid]); - myMeshNbPyra2->setNum((int)aMeshInfo[SMESH::Entity_Quad_Pyramid]); - myMeshNbPolyhedrones->setNum((int)aMeshInfo[SMESH::Entity_Polyhedra]); - return; - } + SMESH::SMESH_IDSource_var anIDSource = SMESH::SMESH_IDSource::_narrow(anObject); + if (!anIDSource->_is_nil()) { + myWGStack->setCurrentWidget(myMeshWidget); + setWindowTitle(tr("SMESH_MESHINFO_TITLE") + " [" + tr("SMESH_OBJECT_MESH") + "]"); + myMeshName->setText(aSO->GetName().c_str()); + + SMESH::long_array_var aMeshInfo = anIDSource->GetMeshInfo(); + myMeshInfoBox->SetMeshInfo( aMeshInfo ); + + return; + } } } } @@ -639,10 +300,10 @@ void SMESHGUI_MeshInfosDlg::onHelp() platform = "application"; #endif SUIT_MessageBox::warning(this, tr("WRN_WARNING"), - tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", - platform)). - arg(myHelpFileName)); + tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). + arg(app->resourceMgr()->stringValue("ExternalBrowser", + platform)). + arg(myHelpFileName)); } }