public void installed(Viewer viewer) { super.installed(viewer); fThreadEventHandler.init(viewer); }
@Override public void installed(Viewer viewer) { // select any thread that is already suspended after installation IDebugTarget target = fDebugTarget; if (target != null) { ModelDelta delta = getNextSuspendedThreadDelta(null, false); if (delta == null) { try { ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager(); ILaunch launch = target.getLaunch(); int launchIndex = indexOf(manager.getLaunches(), target.getLaunch()); int targetIndex = indexOf(target.getLaunch().getChildren(), target); delta = new ModelDelta(manager, IModelDelta.NO_CHANGE); ModelDelta node = delta.addNode(launch, launchIndex, IModelDelta.NO_CHANGE, target.getLaunch().getChildren().length); node = node.addNode(target, targetIndex, IModelDelta.EXPAND | IModelDelta.SELECT, target.getThreads().length); } catch (DebugException e) { // In case of exception do not fire delta return; } } // expand the target if no suspended thread fireModelChanged(delta); } }
if (IDebugUIConstants.ID_DEBUG_VIEW.equals(id)) { if (element instanceof IDebugTarget) { return new DebugTargetProxy((IDebugTarget)element);