X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_SingleEditDlg.cxx;h=ee532a7e004f5855f8f8bfaefb61950b08711a1e;hp=223dbaad8a565864f3c31f4e8dbaec0b84519000;hb=cb55604f37e3d2583272fd436bb6557b041948b5;hpb=544a24fb7fd4dc55a61ffac82c8001d84d9d6f6b diff --git a/src/SMESHGUI/SMESHGUI_SingleEditDlg.cxx b/src/SMESHGUI/SMESHGUI_SingleEditDlg.cxx old mode 100755 new mode 100644 index 223dbaad8..ee532a7e0 --- a/src/SMESHGUI/SMESHGUI_SingleEditDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_SingleEditDlg.cxx @@ -1,97 +1,85 @@ -// SMESH SMESHGUI : GUI for SMESH component +// Copyright (C) 2007-2020 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 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, or (at your option) any later version. // -// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// -// -// File : SMESHGUI_SingleEditDlg.cxx -// Author : Sergey LITONIN -// Module : SMESH +// File : SMESHGUI_SingleEditDlg.cxx +// Author : Sergey LITONIN, Open CASCADE S.A.S. + +#include + +// SMESH includes +// #include "SMESHGUI_SingleEditDlg.h" #include "SMESHGUI.h" #include "SMESHGUI_Utils.h" #include "SMESHGUI_VTKUtils.h" #include "SMESHGUI_MeshUtils.h" -#include "SMESHGUI_SpinBox.h" -#include "SMESH_Actor.h" -#include "SMDS_Mesh.hxx" +#include +#include -#include "SalomeApp_SelectionMgr.h" -#include "SUIT_ResourceMgr.h" -#include "SUIT_MessageBox.h" -#include "SUIT_Desktop.h" +// SALOME GUI includes +#include +#include +#include +#include +#include +#include -#include "SVTK_Selector.h" -#include "SVTK_ViewWindow.h" -#include "SALOME_ListIO.hxx" +#include +#include -#include "utilities.h" - -// OCCT Includes +// OCCT includes #include #include -// QT Includes -#include -#include -#include -#include -#include -#include -#include -#include - - -#define SPACING 5 -#define MARGIN 10 +// Qt includes +#include +#include +#include +#include +#include +#include +#include +#include +#define SPACING 6 +#define MARGIN 11 /*! - * Class : SMESHGUI_DiagValidator - * Description : validate munual input of edge like "id1-id2" - */ -class SMESHGUI_DiagValidator: public QValidator + \class BusyLocker + \brief Simple 'busy state' flag locker. + \internal +*/ + +class BusyLocker { - public: - SMESHGUI_DiagValidator (QWidget * parent, const char * name = 0): - QValidator(parent,name) {} - - State validate (QString & text, int & pos) const - { - text.stripWhiteSpace(); - text.replace(QRegExp("[^0-9]+"), "-"); - if (text == "-") - text = ""; - int ind = text.find(QRegExp("-[0-9]+-")); - if (ind > 0) { // leave only two ids - ind = text.find('-', ind + 1); - if (ind > 0) - text.truncate(ind); - } - if (pos > text.length()) - pos = text.length(); - return Acceptable; - } +public: + //! Constructor. Sets passed boolean flag to \c true. + BusyLocker( bool& busy ) : myBusy( busy ) { myBusy = true; } + //! Destructor. Clear external boolean flag passed as parameter to the constructor to \c false. + ~BusyLocker() { myBusy = false; } +private: + bool& myBusy; //! External 'busy state' boolean flag }; /*! @@ -105,26 +93,24 @@ class SMESHGUI_DiagValidator: public QValidator // Purpose : Constructor //======================================================================= SMESHGUI_SingleEditDlg -::SMESHGUI_SingleEditDlg(SMESHGUI* theModule, - const char* theName): - QDialog(SMESH::GetDesktop(theModule), - theName, - false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu), - mySelector(SMESH::GetViewWindow(theModule)->GetSelector()), +::SMESHGUI_SingleEditDlg(SMESHGUI* theModule) + : QDialog(SMESH::GetDesktop(theModule)), mySelectionMgr(SMESH::GetSelectionMgr(theModule)), + mySelector(SMESH::GetViewWindow(theModule)->GetSelector()), mySMESHGUI(theModule) { - QVBoxLayout* aDlgLay = new QVBoxLayout(this, MARGIN, SPACING); + setModal(false); + + QVBoxLayout* aDlgLay = new QVBoxLayout(this); + aDlgLay->setMargin(MARGIN); + aDlgLay->setSpacing(SPACING); - QFrame* aMainFrame = createMainFrame (this); - QFrame* aBtnFrame = createButtonFrame(this); + QWidget* aMainFrame = createMainFrame (this); + QWidget* aBtnFrame = createButtonFrame(this); aDlgLay->addWidget(aMainFrame); aDlgLay->addWidget(aBtnFrame); - aDlgLay->setStretchFactor(aMainFrame, 1); - Init(); } @@ -132,16 +118,24 @@ SMESHGUI_SingleEditDlg // name : createMainFrame() // Purpose : Create frame containing dialog's input fields //======================================================================= -QFrame* SMESHGUI_SingleEditDlg::createMainFrame (QWidget* theParent) +QWidget* SMESHGUI_SingleEditDlg::createMainFrame (QWidget* theParent) { - QGroupBox* aMainGrp = new QGroupBox(1, Qt::Vertical, tr("EDGE_BETWEEN"), theParent); + QGroupBox* aMainGrp = new QGroupBox(tr("EDGE_BETWEEN"), theParent); + QHBoxLayout* aLay = new QHBoxLayout(aMainGrp); + aLay->setMargin(MARGIN); + aLay->setSpacing(SPACING); QPixmap aPix (SMESH::GetResourceMgr( mySMESHGUI )->loadPixmap("SMESH", tr("ICON_SELECT"))); - new QLabel(tr("SMESH_EDGE"), aMainGrp); - (new QPushButton(aMainGrp))->setPixmap(aPix); + QLabel* aLab = new QLabel(tr("SMESH_EDGE"), aMainGrp); + QPushButton* aBtn = new QPushButton(aMainGrp); + aBtn->setIcon(aPix); myEdge = new QLineEdit(aMainGrp); - myEdge->setValidator(new SMESHGUI_DiagValidator(this, "validator")); + myEdge->setValidator(new QRegExpValidator(QRegExp("[\\d]*-[\\d]*"), this)); + + aLay->addWidget(aLab); + aLay->addWidget(aBtn); + aLay->addWidget(myEdge); return aMainGrp; } @@ -150,23 +144,26 @@ QFrame* SMESHGUI_SingleEditDlg::createMainFrame (QWidget* theParent) // name : createButtonFrame() // Purpose : Create frame containing buttons //======================================================================= -QFrame* SMESHGUI_SingleEditDlg::createButtonFrame (QWidget* theParent) +QWidget* SMESHGUI_SingleEditDlg::createButtonFrame (QWidget* theParent) { - QFrame* aFrame = new QFrame(theParent); - aFrame->setFrameStyle(QFrame::Box | QFrame::Sunken); + QGroupBox* aFrame = new QGroupBox(theParent); - myOkBtn = new QPushButton(tr("SMESH_BUT_OK" ), aFrame); + myOkBtn = new QPushButton(tr("SMESH_BUT_APPLY_AND_CLOSE"), aFrame); myApplyBtn = new QPushButton(tr("SMESH_BUT_APPLY"), aFrame); myCloseBtn = new QPushButton(tr("SMESH_BUT_CLOSE"), aFrame); + myHelpBtn = new QPushButton(tr("SMESH_BUT_HELP"), aFrame); - QSpacerItem* aSpacer = new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum); - - QHBoxLayout* aLay = new QHBoxLayout(aFrame, MARGIN, SPACING); + QHBoxLayout* aLay = new QHBoxLayout(aFrame); + aLay->setMargin(MARGIN); + aLay->setSpacing(SPACING); aLay->addWidget(myOkBtn); + aLay->addSpacing(10); aLay->addWidget(myApplyBtn); - aLay->addItem(aSpacer); + aLay->addSpacing(10); + aLay->addStretch(); aLay->addWidget(myCloseBtn); + aLay->addWidget(myHelpBtn); return aFrame; } @@ -175,7 +172,7 @@ QFrame* SMESHGUI_SingleEditDlg::createButtonFrame (QWidget* theParent) // name : isValid() // Purpose : Verify validity of input data //======================================================================= -bool SMESHGUI_SingleEditDlg::isValid (const bool theMess) const +bool SMESHGUI_SingleEditDlg::isValid (const bool /*theMess*/) const { int id1, id2; return getNodeIds(myEdge->text(), id1, id2); @@ -220,24 +217,22 @@ void SMESHGUI_SingleEditDlg::Init() // main buttons connect(myOkBtn, SIGNAL(clicked()), SLOT(onOk())); - connect(myCloseBtn, SIGNAL(clicked()), SLOT(onClose())); + connect(myCloseBtn, SIGNAL(clicked()), SLOT(reject())); connect(myApplyBtn, SIGNAL(clicked()), SLOT(onApply())); + connect(myHelpBtn, SIGNAL(clicked()), SLOT(onHelp())); // selection and SMESHGUI connect(mySelectionMgr, SIGNAL(currentSelectionChanged()), SLOT(onSelectionDone())); connect(mySMESHGUI, SIGNAL(SignalDeactivateActiveDialog()), SLOT(onDeactivate())); - connect(mySMESHGUI, SIGNAL(SignalCloseAllDialogs()), SLOT(onClose())); + connect(mySMESHGUI, SIGNAL(SignalCloseAllDialogs()), SLOT(reject())); + connect(mySMESHGUI, SIGNAL(SignalActivatedViewManager()), SLOT(onOpenView())); + connect(mySMESHGUI, SIGNAL(SignalCloseView()), SLOT(onCloseView())); connect(myEdge, SIGNAL(textChanged(const QString&)), SLOT(onTextChange(const QString&))); myOkBtn->setEnabled(false); myApplyBtn->setEnabled(false); setEnabled(true); - int x, y; - mySMESHGUI->DefineDlgPosition(this, x, y); - this->move(x, y); - this->show(); - // set selection mode if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) aViewWindow->SetSelectionMode(EdgeOfCellSelection); @@ -253,22 +248,46 @@ void SMESHGUI_SingleEditDlg::Init() void SMESHGUI_SingleEditDlg::onOk() { if (onApply()) - onClose(); + reject(); } //======================================================================= -// name : onClose() +// name : reject() // Purpose : SLOT called when "Close" button pressed. Close dialog //======================================================================= -void SMESHGUI_SingleEditDlg::onClose() +void SMESHGUI_SingleEditDlg::reject() { if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) aViewWindow->SetSelectionMode(ActorSelection); - mySelectionMgr->clearSelected(); + //mySelectionMgr->clearSelected(); disconnect(mySelectionMgr, 0, this, 0); disconnect(mySMESHGUI, 0, this, 0); mySMESHGUI->ResetState(); - reject(); + QDialog::reject(); +} + +//================================================================================= +// function : onHelp() +// purpose : +//================================================================================= +void SMESHGUI_SingleEditDlg::onHelp() +{ + LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication()); + if (app) + app->onHelpContextModule(mySMESHGUI ? app->moduleName(mySMESHGUI->moduleName()) : QString(""), myHelpFileName); + else { + QString platform; +#ifdef WIN32 + platform = "winapplication"; +#else + platform = "application"; +#endif + SUIT_MessageBox::warning(this, tr("WRN_WARNING"), + tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). + arg(app->resourceMgr()->stringValue("ExternalBrowser", + platform)). + arg(myHelpFileName)); + } } //======================================================================= @@ -286,11 +305,11 @@ static bool findTriangles (const SMDS_MeshNode * theNode1, theTria1 = theTria2 = 0; - set< const SMDS_MeshElement* > emap; + std::set< const SMDS_MeshElement* > emap; SMDS_ElemIteratorPtr it = theNode1->GetInverseElementIterator(); while (it->more()) { const SMDS_MeshElement* elem = it->next(); - if (elem->GetType() == SMDSAbs_Face && elem->NbNodes() == 3) + if (elem->GetType() == SMDSAbs_Face && elem->NbCornerNodes() == 3) emap.insert(elem); } it = theNode2->GetInverseElementIterator(); @@ -298,12 +317,14 @@ static bool findTriangles (const SMDS_MeshNode * theNode1, const SMDS_MeshElement* elem = it->next(); if (elem->GetType() == SMDSAbs_Face && emap.find(elem) != emap.end()) + { if (theTria1) { theTria2 = elem; break; } else { theTria1 = elem; } + } } return (theTria1 && theTria2); } @@ -312,72 +333,50 @@ static bool findTriangles (const SMDS_MeshNode * theNode1, //function : onTextChange() //purpose : //======================================================================= -void SMESHGUI_SingleEditDlg::onTextChange (const QString& theNewText) +void SMESHGUI_SingleEditDlg::onTextChange (const QString& /*theNewText*/) { if (myBusy) return; + BusyLocker lock(myBusy); myOkBtn->setEnabled(false); myApplyBtn->setEnabled(false); - // hilight entered edge + // highlight entered edge if(myActor){ if(SMDS_Mesh* aMesh = myActor->GetObject()->GetMesh()){ - myBusy = true; // block onSelectionDone() Handle(SALOME_InteractiveObject) anIO = myActor->getIO(); SALOME_ListIO aList; aList.Append(anIO); mySelectionMgr->setSelectedObjects(aList,false); - TColStd_IndexedMapOfInteger selectedIndices; - TColStd_MapOfInteger newIndices; - mySelector->GetIndex(anIO,selectedIndices); - myBusy = false; - - QStringList aListId = QStringList::split("-", theNewText, false); - if (aListId.count() != 2) - return; - - int i; - bool allOk = true; - const SMDS_MeshNode* a2Nodes[2]; - for (i = 0; i < aListId.count(); i++) { - if(const SMDS_MeshNode *aNode = aMesh->FindNode(aListId[ i ].toInt())) - a2Nodes[ i ] = aNode; - else - allOk = false; - } - - // find a triangle and an edge nb - const SMDS_MeshElement* tria[2]; - allOk &= a2Nodes[0] != a2Nodes[1] && findTriangles(a2Nodes[0],a2Nodes[1],tria[0],tria[1]); - myBusy = true; // block onSelectionDone() - if(allOk) + SVTK_IndexedMapOfIds selectedIndices; + SVTK_ListOfInteger newIndices; + mySelector->GetCompositeIndex(anIO,selectedIndices); + + int id1, id2; + if ( !getNodeIds(myEdge->text(), id1, id2) ) + return; + + const SMDS_MeshNode* aNode1 = aMesh->FindNode( id1 ); + const SMDS_MeshNode* aNode2 = aMesh->FindNode( id2 ); + + if ( !aNode1 || !aNode2 || aNode1 == aNode2 ) + return; + + // find a triangle and an edge index + const SMDS_MeshElement* tria1; + const SMDS_MeshElement* tria2; + + if ( findTriangles(aNode1,aNode2,tria1,tria2) ) { - newIndices.Add(tria[0]->GetID()); - - const SMDS_MeshNode* a3Nodes [3]; - SMDS_ElemIteratorPtr it; - int edgeInd = 2; - for (i = 0, it = tria[0]->nodesIterator(); it->more(); i++) { - a3Nodes[ i ] = static_cast(it->next()); - if (i > 0) { - allOk = (a3Nodes[ i ] == a2Nodes[ 0 ] && a3Nodes[ i - 1] == a2Nodes[ 1 ]) || - (a3Nodes[ i ] == a2Nodes[ 1 ] && a3Nodes[ i - 1] == a2Nodes[ 0 ]); - if (allOk) { - edgeInd = i - 1; - break; - } - } - } - newIndices.Add(-edgeInd-1); - - myOkBtn->setEnabled(true); - myApplyBtn->setEnabled(true); + newIndices.push_back( aNode1->GetID() ); + newIndices.push_back( aNode2->GetID() ); + + myOkBtn->setEnabled(true); + myApplyBtn->setEnabled(true); } - mySelector->AddOrRemoveIndex(anIO,newIndices, false); + mySelector->AddOrRemoveCompositeIndex(anIO, newIndices, false); SMESH::GetViewWindow(mySMESHGUI)->highlight( anIO, true, true ); - - myBusy = false; } } } @@ -389,6 +388,7 @@ void SMESHGUI_SingleEditDlg::onTextChange (const QString& theNewText) void SMESHGUI_SingleEditDlg::onSelectionDone() { if (myBusy) return; + BusyLocker lock(myBusy); int anId1 = 0, anId2 = 0; @@ -410,20 +410,28 @@ void SMESHGUI_SingleEditDlg::onSelectionDone() if(SMDS_Mesh* aMesh = aVisualObj->GetMesh()) { const SMDS_MeshElement* tria[2]; - if( SMESH::GetEdgeNodes( mySelector, aVisualObj, anId1, anId2 ) >= 1 && - findTriangles( aMesh->FindNode( anId1 ), aMesh->FindNode( anId2 ), tria[0],tria[1] ) ) + + bool valid = false; + SVTK_IndexedMapOfIds anIds; + mySelector->GetCompositeIndex(anIO,anIds); + if( anIds.Extent() == 1 && anIds(1).size() == 2 ) { + anId1 = anIds(1)[0]; + anId2 = anIds(1)[1]; + valid = true; + } + + if( valid && + findTriangles( aMesh->FindNode( anId1 ), aMesh->FindNode( anId2 ), tria[0],tria[1] ) ) { - QString aText = QString("%1-%2").arg(anId1).arg(anId2); - myBusy = true; - myEdge->setText(aText); - myBusy = false; - - myOkBtn->setEnabled(true); - myApplyBtn->setEnabled(true); + QString aText = QString("%1-%2").arg(anId1).arg(anId2); + myEdge->setText(aText); + + myOkBtn->setEnabled(true); + myApplyBtn->setEnabled(true); } else { - myEdge->clear(); + myEdge->clear(); } } } @@ -431,44 +439,52 @@ void SMESHGUI_SingleEditDlg::onSelectionDone() //======================================================================= // name : onDeactivate() -// Purpose : SLOT called when dialog must be deativated +// Purpose : SLOT called when dialog must be deactivated //======================================================================= void SMESHGUI_SingleEditDlg::onDeactivate() { setEnabled(false); } -//======================================================================= -// name : enterEvent() -// Purpose : Event filter -//======================================================================= -void SMESHGUI_SingleEditDlg::enterEvent (QEvent*) +//================================================================================= +// function : onOpenView() +// purpose : +//================================================================================= +void SMESHGUI_SingleEditDlg::onOpenView() { - if (!isEnabled()) { + if ( !mySelector ) { + mySelector = SMESH::GetViewWindow( mySMESHGUI )->GetSelector(); mySMESHGUI->EmitSignalDeactivateDialog(); - if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) - aViewWindow->SetSelectionMode(EdgeOfCellSelection); setEnabled(true); } } //================================================================================= -// function : closeEvent() +// function : onCloseView() // purpose : //================================================================================= -void SMESHGUI_SingleEditDlg::closeEvent (QCloseEvent*) +void SMESHGUI_SingleEditDlg::onCloseView() { - onClose(); + onDeactivate(); + mySelector = 0; } //======================================================================= -//function : hideEvent() -//purpose : caused by ESC key +// name : enterEvent() +// Purpose : Event filter //======================================================================= -void SMESHGUI_SingleEditDlg::hideEvent (QHideEvent*) +void SMESHGUI_SingleEditDlg::enterEvent (QEvent*) { - if (!isMinimized()) - onClose(); + if (!isEnabled()) { + mySMESHGUI->EmitSignalDeactivateDialog(); + SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI ); + if ( aViewWindow) { + aViewWindow->SetSelectionMode(EdgeOfCellSelection); + if (!mySelector) + mySelector = aViewWindow->GetSelector(); + } + setEnabled(true); + } } //================================================================================= @@ -477,7 +493,7 @@ void SMESHGUI_SingleEditDlg::hideEvent (QHideEvent*) //================================================================================= bool SMESHGUI_SingleEditDlg::onApply() { - if (mySMESHGUI->isActiveStudyLocked()) + if (SMESHGUI::isStudyLocked()) return false; // verify validity of input data if (!isValid(true)) @@ -490,10 +506,9 @@ bool SMESHGUI_SingleEditDlg::onApply() SMESH::SMESH_Mesh_var aMesh = SMESH::GetMeshByIO(aList.First()); if (aMesh->_is_nil()) { - SUIT_MessageBox::info1(SMESH::GetDesktop(mySMESHGUI), - tr("SMESH_ERROR"), - tr("SMESHG_NO_MESH"), - tr("SMESH_BUT_OK")); + SUIT_MessageBox::information(SMESH::GetDesktop(mySMESHGUI), + tr("SMESH_ERROR"), + tr("SMESHG_NO_MESH")); return false; } @@ -507,13 +522,33 @@ bool SMESHGUI_SingleEditDlg::onApply() // update actor if (aResult) { + mySelector->ClearIndex(); + mySelector->ClearCompositeIndex(); mySelectionMgr->setSelectedObjects(aList, false); + onSelectionDone(); SMESH::UpdateView(); + SMESHGUI::Modified(); } return aResult; } +//================================================================================= +// function : keyPressEvent() +// purpose : +//================================================================================= +void SMESHGUI_SingleEditDlg::keyPressEvent( QKeyEvent* e ) +{ + QDialog::keyPressEvent( e ); + if ( e->isAccepted() ) + return; + + if ( e->key() == Qt::Key_F1 ) { + e->accept(); + onHelp(); + } +} + /*! * Class : SMESHGUI_TrianglesInversionDlg * Description : Inversion of the diagonal of a pseudo-quadrangle formed by @@ -521,11 +556,11 @@ bool SMESHGUI_SingleEditDlg::onApply() */ SMESHGUI_TrianglesInversionDlg -::SMESHGUI_TrianglesInversionDlg(SMESHGUI* theModule, - const char* theName) -: SMESHGUI_SingleEditDlg(theModule,theName) +::SMESHGUI_TrianglesInversionDlg(SMESHGUI* theModule) +: SMESHGUI_SingleEditDlg(theModule) { - setCaption(tr("CAPTION")); + setWindowTitle(tr("CAPTION")); + myHelpFileName = "diagonal_inversion_of_elements.html"; } SMESHGUI_TrianglesInversionDlg::~SMESHGUI_TrianglesInversionDlg() @@ -545,11 +580,11 @@ bool SMESHGUI_TrianglesInversionDlg::process (SMESH::SMESH_MeshEditor_ptr theMes */ SMESHGUI_UnionOfTwoTrianglesDlg -::SMESHGUI_UnionOfTwoTrianglesDlg(SMESHGUI* theModule, - const char* theName) -: SMESHGUI_SingleEditDlg(theModule,theName) +::SMESHGUI_UnionOfTwoTrianglesDlg(SMESHGUI* theModule) +: SMESHGUI_SingleEditDlg(theModule) { - setCaption(tr("CAPTION")); + setWindowTitle(tr("CAPTION")); + myHelpFileName = "uniting_two_triangles.html"; } SMESHGUI_UnionOfTwoTrianglesDlg::~SMESHGUI_UnionOfTwoTrianglesDlg()