X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESHGUI%2FSMESHGUI_MoveNodesDlg.cxx;h=1a366bd09f94de9526f3c78314549333691fb38b;hp=fba4f187f6718e2bb6dc3948a18232e7b27192d8;hb=b0105f0f9d05ef09ad770cf0d343901589cba620;hpb=c38c10811a065cf5b13e8807ed71864d92ca7d80 diff --git a/src/SMESHGUI/SMESHGUI_MoveNodesDlg.cxx b/src/SMESHGUI/SMESHGUI_MoveNodesDlg.cxx index fba4f187f..1a366bd09 100644 --- a/src/SMESHGUI/SMESHGUI_MoveNodesDlg.cxx +++ b/src/SMESHGUI/SMESHGUI_MoveNodesDlg.cxx @@ -93,9 +93,7 @@ SMESHGUI_MoveNodesDlg::SMESHGUI_MoveNodesDlg (SMESHGUI* theModule, theName, false, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu), - mySelector(SMESH::GetViewWindow(theModule)->GetSelector()), mySelectionMgr(SMESH::GetSelectionMgr(theModule)), - myViewWindow(SMESH::GetViewWindow(theModule)), mySMESHGUI(theModule) { myPreviewActor = 0; @@ -113,6 +111,8 @@ SMESHGUI_MoveNodesDlg::SMESHGUI_MoveNodesDlg (SMESHGUI* theModule, aDlgLay->setStretchFactor(aMainFrame, 1); + mySelector = (SMESH::GetViewWindow( mySMESHGUI ))->GetSelector(); + Init(); } @@ -153,8 +153,8 @@ QFrame* SMESHGUI_MoveNodesDlg::createMainFrame (QWidget* theParent) { QFrame* aFrame = new QFrame(theParent); - QPixmap iconMoveNode (SMESHGUI::resourceMgr()->loadPixmap("SMESH", tr("ICON_DLG_MOVE_NODE"))); - QPixmap iconSelect (SMESHGUI::resourceMgr()->loadPixmap("SMESH", tr("ICON_SELECT"))); + QPixmap iconMoveNode (SMESH::GetResourceMgr( mySMESHGUI )->loadPixmap("SMESH", tr("ICON_DLG_MOVE_NODE"))); + QPixmap iconSelect (SMESH::GetResourceMgr( mySMESHGUI )->loadPixmap("SMESH", tr("ICON_SELECT"))); QButtonGroup* aPixGrp = new QButtonGroup(1, Qt::Vertical, tr("MESH_NODE"), aFrame); aPixGrp->setExclusive(TRUE); @@ -230,7 +230,8 @@ void SMESHGUI_MoveNodesDlg::Init() // set selection mode SMESH::SetPointRepresentation(true); - myViewWindow->SetSelectionMode(NodeSelection); + if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) + aViewWindow->SetSelectionMode(NodeSelection); onSelectionDone(); } @@ -270,7 +271,7 @@ void SMESHGUI_MoveNodesDlg::reset() //======================================================================= bool SMESHGUI_MoveNodesDlg::onApply() { - if (SMESHGUI::GetSMESHGUI()->isActiveStudyLocked()) + if (mySMESHGUI->isActiveStudyLocked()) return false; if (!isValid(true)) @@ -323,9 +324,11 @@ void SMESHGUI_MoveNodesDlg::onClose() { mySelectionMgr->clearSelected(); SMESH::SetPointRepresentation(false); - mySelector->SetSelectionMode(ActorSelection); + if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) + aViewWindow->SetSelectionMode(ActorSelection); disconnect(mySelectionMgr, 0, this, 0); disconnect(mySMESHGUI, 0, this, 0); + erasePreview(); mySMESHGUI->ResetState(); reject(); } @@ -355,8 +358,11 @@ void SMESHGUI_MoveNodesDlg::onTextChange (const QString& theNewText) if(const SMDS_MeshElement *anElem = aMesh->FindElement(theNewText.toInt())) { TColStd_MapOfInteger aListInd; aListInd.Add(anElem->GetID()); - mySelector->AddOrRemoveIndex(anIO,aListInd, true); - myViewWindow->highlight(anIO,true,true); + mySelector->AddOrRemoveIndex(anIO,aListInd, false); + if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) + aViewWindow->highlight(anIO,true,true); + + onSelectionDone(); } } } @@ -417,11 +423,12 @@ void SMESHGUI_MoveNodesDlg::onDeactivate() void SMESHGUI_MoveNodesDlg::enterEvent (QEvent*) { if (!isEnabled()) { - SMESHGUI::GetSMESHGUI()->EmitSignalDeactivateDialog(); + mySMESHGUI->EmitSignalDeactivateDialog(); // set selection mode SMESH::SetPointRepresentation(true); - myViewWindow->SetSelectionMode(NodeSelection); + if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) + aViewWindow->SetSelectionMode(NodeSelection); redisplayPreview(); @@ -436,7 +443,8 @@ void SMESHGUI_MoveNodesDlg::enterEvent (QEvent*) void SMESHGUI_MoveNodesDlg::closeEvent (QCloseEvent*) { onClose(); - myViewWindow->Repaint(); + if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) + aViewWindow->Repaint(); } //======================================================================= @@ -469,10 +477,13 @@ void SMESHGUI_MoveNodesDlg::erasePreview() if (myPreviewActor == 0) return; - myViewWindow->RemoveActor(myPreviewActor); + SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI ); + if (aViewWindow) + aViewWindow->RemoveActor(myPreviewActor); myPreviewActor->Delete(); myPreviewActor = 0; - myViewWindow->Repaint(); + if (aViewWindow) + aViewWindow->Repaint(); } //======================================================================= @@ -546,6 +557,9 @@ void SMESHGUI_MoveNodesDlg::redisplayPreview() myPreviewActor->SetProperty(aProp); aProp->Delete(); - myViewWindow->AddActor(myPreviewActor); - myViewWindow->Repaint(); + if ( SVTK_ViewWindow* aViewWindow = SMESH::GetViewWindow( mySMESHGUI )) + { + aViewWindow->AddActor(myPreviewActor); + aViewWindow->Repaint(); + } }