diff --git a/debug/org.eclipse.cdt.debug.ui/ChangeLog b/debug/org.eclipse.cdt.debug.ui/ChangeLog index ee4ac01faf6..4e289f91623 100644 --- a/debug/org.eclipse.cdt.debug.ui/ChangeLog +++ b/debug/org.eclipse.cdt.debug.ui/ChangeLog @@ -1,3 +1,11 @@ +2002-10-23 Mikhail Khodjaiants + "Show Debugger Console" action. + Action images: + debugger_console.gif (clcl, dlcl, elcl); + * DebuggerConsoleActionDelegate.java: implementation of action delegate. + * plugin.xml: action extenions + * plugin.properties: action label and tooltip text. + 2002-10-22 Mikhail Khodjaiants Implementation of the "Show ASCII" action. Action images: diff --git a/debug/org.eclipse.cdt.debug.ui/icons/full/clcl16/debugger_console.gif b/debug/org.eclipse.cdt.debug.ui/icons/full/clcl16/debugger_console.gif new file mode 100644 index 00000000000..e6d5b138d46 Binary files /dev/null and b/debug/org.eclipse.cdt.debug.ui/icons/full/clcl16/debugger_console.gif differ diff --git a/debug/org.eclipse.cdt.debug.ui/icons/full/dlcl16/debugger_console.gif b/debug/org.eclipse.cdt.debug.ui/icons/full/dlcl16/debugger_console.gif new file mode 100644 index 00000000000..85876974fbc Binary files /dev/null and b/debug/org.eclipse.cdt.debug.ui/icons/full/dlcl16/debugger_console.gif differ diff --git a/debug/org.eclipse.cdt.debug.ui/icons/full/dlcl16/disassembly.gif b/debug/org.eclipse.cdt.debug.ui/icons/full/dlcl16/disassembly.gif index 174087f454a..dbde1a090aa 100644 Binary files a/debug/org.eclipse.cdt.debug.ui/icons/full/dlcl16/disassembly.gif and b/debug/org.eclipse.cdt.debug.ui/icons/full/dlcl16/disassembly.gif differ diff --git a/debug/org.eclipse.cdt.debug.ui/icons/full/elcl16/debugger_console.gif b/debug/org.eclipse.cdt.debug.ui/icons/full/elcl16/debugger_console.gif new file mode 100644 index 00000000000..f60aba1679b Binary files /dev/null and b/debug/org.eclipse.cdt.debug.ui/icons/full/elcl16/debugger_console.gif differ diff --git a/debug/org.eclipse.cdt.debug.ui/icons/full/elcl16/disassembly.gif b/debug/org.eclipse.cdt.debug.ui/icons/full/elcl16/disassembly.gif index a78e3024c87..174087f454a 100644 Binary files a/debug/org.eclipse.cdt.debug.ui/icons/full/elcl16/disassembly.gif and b/debug/org.eclipse.cdt.debug.ui/icons/full/elcl16/disassembly.gif differ diff --git a/debug/org.eclipse.cdt.debug.ui/plugin.properties b/debug/org.eclipse.cdt.debug.ui/plugin.properties index 9043b75104c..ac4ad17c59e 100644 --- a/debug/org.eclipse.cdt.debug.ui/plugin.properties +++ b/debug/org.eclipse.cdt.debug.ui/plugin.properties @@ -23,6 +23,9 @@ RestartAction.tooltip=Restart SwitchToDisassemblyAction.label=Disassembly Mode SwitchToDisassemblyAction.tooltip=Disassembly Mode On/Off +ShowDebuggerConsoleAction.label=Show Debugger Console +ShowDebuggerConsoleAction.tooltip=Show Debugger Console On Target Selection + AddBreakpoint.label=Add/Remove &Breakpoint EnableBreakpoint.label=T&oggle Breakpoint BreakpointProperties.label=Breakpoint P&roperties... diff --git a/debug/org.eclipse.cdt.debug.ui/plugin.xml b/debug/org.eclipse.cdt.debug.ui/plugin.xml index 52ffb4eae98..0378c4213a0 100644 --- a/debug/org.eclipse.cdt.debug.ui/plugin.xml +++ b/debug/org.eclipse.cdt.debug.ui/plugin.xml @@ -237,6 +237,21 @@ + + + + + + + + + + diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DebuggerConsoleActionDelegate.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DebuggerConsoleActionDelegate.java new file mode 100644 index 00000000000..03777c4b7ef --- /dev/null +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/DebuggerConsoleActionDelegate.java @@ -0,0 +1,76 @@ +/* + *(c) Copyright QNX Software Systems Ltd. 2002. + * All Rights Reserved. + * + */ +package org.eclipse.cdt.debug.internal.ui.actions; + +import org.eclipse.cdt.debug.core.IDebuggerProcessSupport; +import org.eclipse.cdt.debug.internal.core.model.CDebugElement; +import org.eclipse.debug.core.DebugException; +import org.eclipse.jface.action.IAction; +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.jface.viewers.IStructuredSelection; + +/** + * Enter type comment. + * + * @since: Oct 23, 2002 + */ +public class DebuggerConsoleActionDelegate extends AbstractListenerActionDelegate +{ + /* (non-Javadoc) + * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#doAction(Object) + */ + protected void doAction( Object element ) throws DebugException + { + if ( element != null && element instanceof CDebugElement ) + { + IDebuggerProcessSupport dps = (IDebuggerProcessSupport)((CDebugElement)element).getDebugTarget().getAdapter( IDebuggerProcessSupport.class ); + if ( dps != null && dps.supportsDebuggerProcess() ) + { + dps.setDebuggerProcessDefault( !dps.isDebuggerProcessDefault() ); + } + } + } + + /* (non-Javadoc) + * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#isEnabledFor(Object) + */ + protected boolean isEnabledFor( Object element ) + { + if ( element != null && element instanceof CDebugElement ) + { + IDebuggerProcessSupport dps = (IDebuggerProcessSupport)((CDebugElement)element).getDebugTarget().getAdapter( IDebuggerProcessSupport.class ); + return ( dps != null && dps.supportsDebuggerProcess() ); + } + return false; + } + + /* (non-Javadoc) + * @see org.eclipse.cdt.debug.internal.ui.actions.AbstractDebugActionDelegate#enableForMultiSelection() + */ + protected boolean enableForMultiSelection() + { + return false; + } + + /* (non-Javadoc) + * @see org.eclipse.ui.IActionDelegate#selectionChanged(IAction, ISelection) + */ + public void selectionChanged( IAction action, ISelection selection ) + { + super.selectionChanged(action, selection); + boolean checked = false; + if ( selection != null && selection instanceof IStructuredSelection ) + { + Object element = ((IStructuredSelection)selection).getFirstElement(); + if ( element != null && element instanceof CDebugElement ) + { + IDebuggerProcessSupport dps = (IDebuggerProcessSupport)((CDebugElement)element).getDebugTarget().getAdapter( IDebuggerProcessSupport.class ); + checked = ( dps != null && dps.supportsDebuggerProcess() ) ? dps.isDebuggerProcessDefault() : false; + } + } + action.setChecked( checked ); + } +}