Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 199588
Collapse All | Expand All

(-)src/org/eclipse/hyades/sd/logc/internal/actions/OpenTimeBaseUML2SDViewAction.java (+15 lines)
Lines 23-38 Link Here
23
import org.eclipse.hyades.sd.logc.SDLogcConstants;
23
import org.eclipse.hyades.sd.logc.SDLogcConstants;
24
import org.eclipse.hyades.sd.logc.internal.loader.LogInteractions;
24
import org.eclipse.hyades.sd.logc.internal.loader.LogInteractions;
25
import org.eclipse.hyades.trace.ui.HyadesUtil;
25
import org.eclipse.hyades.trace.ui.HyadesUtil;
26
import org.eclipse.hyades.ui.internal.navigator.INavigator;
26
import org.eclipse.hyades.uml2sd.ui.load.LoadersManager;
27
import org.eclipse.hyades.uml2sd.ui.load.LoadersManager;
27
import org.eclipse.hyades.uml2sd.ui.view.SDView;
28
import org.eclipse.hyades.uml2sd.ui.view.SDView;
28
import org.eclipse.jface.action.IAction;
29
import org.eclipse.jface.action.IAction;
29
import org.eclipse.jface.dialogs.ErrorDialog;
30
import org.eclipse.jface.dialogs.ErrorDialog;
30
import org.eclipse.jface.viewers.ISelection;
31
import org.eclipse.jface.viewers.ISelection;
31
import org.eclipse.jface.viewers.IStructuredSelection;
32
import org.eclipse.jface.viewers.IStructuredSelection;
33
import org.eclipse.jface.viewers.StructuredSelection;
32
import org.eclipse.tptp.platform.common.ui.trace.internal.TraceUIManager;
34
import org.eclipse.tptp.platform.common.ui.trace.internal.TraceUIManager;
33
import org.eclipse.tptp.platform.log.views.internal.LogViewsMessages;
35
import org.eclipse.tptp.platform.log.views.internal.LogViewsMessages;
34
import org.eclipse.tptp.platform.log.views.internal.LogViewsPlugin;
36
import org.eclipse.tptp.platform.log.views.internal.LogViewsPlugin;
37
import org.eclipse.tptp.platform.log.views.internal.navigator.LogNavigator;
35
import org.eclipse.tptp.platform.log.views.provisional.util.ILogViewsUtils;
38
import org.eclipse.tptp.platform.log.views.provisional.util.ILogViewsUtils;
39
import org.eclipse.tptp.symptom.eventwrappers.CBECommonBaseEventWeakRef;
36
import org.eclipse.ui.IObjectActionDelegate;
40
import org.eclipse.ui.IObjectActionDelegate;
37
import org.eclipse.ui.IWorkbenchPage;
41
import org.eclipse.ui.IWorkbenchPage;
38
import org.eclipse.ui.IWorkbenchPart;
42
import org.eclipse.ui.IWorkbenchPart;
Lines 63-73 Link Here
63
			LogInteractions loader = (LogInteractions)LoadersManager.getLoadersManager().getCurrentLoader(SDLogcConstants.LogInteractionsViewID);
67
			LogInteractions loader = (LogInteractions)LoadersManager.getLoadersManager().getCurrentLoader(SDLogcConstants.LogInteractionsViewID);
64
			loader.generateLogInteractions(sel,CorrelationHelper.getInstance().getCorrelationByName(getcorrName()));
68
			loader.generateLogInteractions(sel,CorrelationHelper.getInstance().getCorrelationByName(getcorrName()));
65
			ILogViewsUtils.INSTANCE.getLogUtil().selectInLogNavigator(loader.getCorrelationContainerProxy());
69
			ILogViewsUtils.INSTANCE.getLogUtil().selectInLogNavigator(loader.getCorrelationContainerProxy());
70
			// Bug 199588
71
			// The above selectInLogNavigator() method does not work intentionally due to asyncExec() operation inside it
72
			// so that we need to explicitly select the newly created CorrelationContainerProxy object here.
73
			INavigator curNavigator = HyadesUtil.getActiveNavigator();
74
			if (curNavigator instanceof LogNavigator) {
75
				((LogNavigator) curNavigator).selectReveal(new StructuredSelection(loader.getCorrelationContainerProxy()));
76
			}
66
	
77
	
67
			TraceUIManager.getTraceUIManager().getSelectionModel(loader.getCorrelationContainerProxy()).add(cbeEvent);
78
			TraceUIManager.getTraceUIManager().getSelectionModel(loader.getCorrelationContainerProxy()).add(cbeEvent);
68
			ILogViewsUtils.INSTANCE.getLogUtil().notifyViewSelectionChanged(loader, loader.getInput() instanceof EObject ? (EObject)loader.getInput() : HyadesUtil.getMofObject(),cbeEvent);
79
			ILogViewsUtils.INSTANCE.getLogUtil().notifyViewSelectionChanged(loader, loader.getInput() instanceof EObject ? (EObject)loader.getInput() : HyadesUtil.getMofObject(),cbeEvent);
69
			CBECommonBaseEvent selection = (CBECommonBaseEvent)TraceUIManager.getTraceUIManager().getSelectionModel(loader.getCorrelationContainerProxy()).getFirstElement();
80
			CBECommonBaseEvent selection = (CBECommonBaseEvent)TraceUIManager.getTraceUIManager().getSelectionModel(loader.getCorrelationContainerProxy()).getFirstElement();
70
			if(sel!=null){
81
			if(sel!=null){
82
				// Bug 199588
83
				if (selection instanceof CBECommonBaseEventWeakRef) {
84
					selection = ((CBECommonBaseEventWeakRef) selection).getDelegate();
85
				}
71
					loader.setSelection(selection);
86
					loader.setSelection(selection);
72
			}
87
			}
73
			p.stopAndPrintStatus();
88
			p.stopAndPrintStatus();

Return to bug 199588