if (theEvent->button() == Qt::LeftButton) {
QModelIndex aIndex = currentIndex();
XGUI_DocumentDataModel* aModel = dataModel();
-
- if ((aModel->activePartIndex() != aIndex) && aModel->activePartIndex().isValid()) {
- setExpanded(aModel->activePartIndex(), false);
- }
- bool isChanged = aModel->activatedIndex(aIndex);
- QTreeView::mouseDoubleClickEvent(theEvent);
- if (isChanged) {
- if (aModel->activePartIndex().isValid())
- setExpanded(aIndex, true);
- emit activePartChanged(aModel->activePart());
+ ObjectPtr aObject = aModel->object(aIndex);
+ ResultPartPtr aPart = boost::dynamic_pointer_cast<ModelAPI_ResultPart>(aObject);
+ if (aPart) {
+ aPart->activate();
}
} else
QTreeView::mouseDoubleClickEvent(theEvent);
void XGUI_ObjectsBrowser::onContextMenuRequested(QContextMenuEvent* theEvent)
{
myObjectsList = myTreeView->selectedObjects();
- bool toEnable = myObjectsList.size() > 0;
+ bool toEnable = myObjectsList.size() == 1;
foreach(QAction* aCmd, actions())
{
aCmd->setEnabled(toEnable);
}
//***************************************************
-void XGUI_ObjectsBrowser::processEvent(const Events_Message* theMessage)
+void XGUI_ObjectsBrowser::processEvent(const boost::shared_ptr<Events_Message>& theMessage)
{
myDocModel->processEvent(theMessage);
}