X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_SelectionMgr.cpp;h=caf78cededfa473823d177c7ad21591edcd6f852;hb=880a5c5b031fe9bbd7833fa3918af3e216d98d34;hp=481db73366a3a4f06714ef767a03a414fbefd2fa;hpb=f8a5e3c97b28bc4e8a53a12be59b11544a968d41;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_SelectionMgr.cpp b/src/XGUI/XGUI_SelectionMgr.cpp index 481db7336..caf78cede 100644 --- a/src/XGUI/XGUI_SelectionMgr.cpp +++ b/src/XGUI/XGUI_SelectionMgr.cpp @@ -43,14 +43,8 @@ void XGUI_SelectionMgr::connectViewers() void XGUI_SelectionMgr::onObjectBrowserSelection() { QList aObjects = myWorkshop->objectBrowser()->selectedObjects(); - QResultList aResults; - foreach(ObjectPtr aObject, aObjects) { - ResultPtr aRes = boost::dynamic_pointer_cast(aObject); - if (aRes) - aResults.append(aRes); - } XGUI_Displayer* aDisplayer = myWorkshop->displayer(); - aDisplayer->setSelected(aResults); + aDisplayer->setSelected(aObjects); emit selectionChanged(); } @@ -65,7 +59,10 @@ void XGUI_SelectionMgr::onViewerSelection() if (aResult) aFeatures.append(aResult); } + bool aBlocked = myWorkshop->objectBrowser()->blockSignals(true); myWorkshop->objectBrowser()->setObjectsSelected(aFeatures); + myWorkshop->objectBrowser()->blockSignals(aBlocked); + emit selectionChanged(); }