#include "XGUI_SelectionMgr.h"
+
#include "XGUI_Workshop.h"
#include "XGUI_MainWindow.h"
#include "XGUI_ObjectsBrowser.h"
-#include "XGUI_Viewer.h"
#include "XGUI_SalomeConnector.h"
#include "XGUI_ViewerProxy.h"
+#include "XGUI_Displayer.h"
#include <ModelAPI_Feature.h>
#include <ModelAPI_PluginManager.h>
this, SLOT(onObjectBrowserSelection()));
//Connect to other viewers
- if (myWorkshop->isSalomeMode()) {
- connect(myWorkshop, SIGNAL(salomeViewerSelection()),
- this, SLOT(onViewerSelection()));
- } else {
- connect(myWorkshop->mainWindow()->viewer(), SIGNAL(selectionChanged()),
- this, SLOT(onViewerSelection()));
- }
+ connect(myWorkshop->viewer(), SIGNAL(selectionChanged()),
+ this, SLOT(onViewerSelection()));
}
//**************************************************************
void XGUI_SelectionMgr::onObjectBrowserSelection()
{
-
- // TODO: Highliht selected objects in Viewer 3d
+ QFeatureList aFeatures = selectedFeatures();
+ XGUI_Displayer* aDisplayer = myWorkshop->displayer();
+ aDisplayer->setSelected(aFeatures);
emit selectionChanged();
}
//**************************************************************
void XGUI_SelectionMgr::onViewerSelection()
{
- // TODO: Highliht selected objects in Object Browser
+ XGUI_Displayer* aDisplayer = myWorkshop->displayer();
+ QFeatureList aFeatures = aDisplayer->selectedFeatures();
+ myWorkshop->objectBrowser()->setFeaturesSelected(aFeatures);
emit selectionChanged();
}
//**************************************************************
QModelIndexList XGUI_SelectionMgr::selectedIndexes() const
{
- return myWorkshop->objectBrowser()->selectionModel()->selectedIndexes();
+ return myWorkshop->objectBrowser()->selectedIndexes();
}
//**************************************************************