mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-08 02:06:01 +02:00
The Registers view has been contibuted and moved to the Eclipse platform.
This commit is contained in:
parent
fd4d49ba30
commit
4ad9d2c33e
11 changed files with 69 additions and 984 deletions
|
@ -1,3 +1,13 @@
|
||||||
|
2004-03-31 Mikhail Khodjaiants
|
||||||
|
The Registers view has been contibuted and moved to the Eclipse platform.
|
||||||
|
* org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/views/registers/* - removed
|
||||||
|
* org.eclipse.cdt.debug.ui/icons/full/cview16/registers_view.gif - removed
|
||||||
|
* org.eclipse.cdt.debug.ui/icons/full/eview16/registers_view.gif - removed
|
||||||
|
* RegistersViewPreferencePage.java - removed
|
||||||
|
* CDebugUIPlugin.java
|
||||||
|
* plugin.properties
|
||||||
|
* plugin.xml
|
||||||
|
|
||||||
2004-03-23 Mikhail Khodjaiants
|
2004-03-23 Mikhail Khodjaiants
|
||||||
Fix for Bug 55777: I18N: Memory View is missing key for number_of_columns.
|
Fix for Bug 55777: I18N: Memory View is missing key for number_of_columns.
|
||||||
* CDebugUIPluginResources.properties
|
* CDebugUIPluginResources.properties
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 119 B |
Binary file not shown.
Before Width: | Height: | Size: 118 B |
|
@ -6,14 +6,12 @@
|
||||||
pluginName=C/C++ Development Tools Debugger UI
|
pluginName=C/C++ Development Tools Debugger UI
|
||||||
providerName=Eclipse.org
|
providerName=Eclipse.org
|
||||||
|
|
||||||
RegistersView.name=Registers
|
|
||||||
MemoryView.name=Memory
|
MemoryView.name=Memory
|
||||||
SharedLibrariesView.name=Shared Libraries
|
SharedLibrariesView.name=Shared Libraries
|
||||||
SignalsView.name=Signals
|
SignalsView.name=Signals
|
||||||
|
|
||||||
CDebuggerPage.name=C Debugger UI Page
|
CDebuggerPage.name=C Debugger UI Page
|
||||||
MemoryPreferencePage.name=Memory View
|
MemoryPreferencePage.name=Memory View
|
||||||
RegistersPreferencePage.name=Registers View
|
|
||||||
CDebugPreferencePage.name=Debug
|
CDebugPreferencePage.name=Debug
|
||||||
SharedLibrariesPreferencePage.name=Shared Libraries View
|
SharedLibrariesPreferencePage.name=Shared Libraries View
|
||||||
SourcePreferencePage.name=Source Code Locations
|
SourcePreferencePage.name=Source Code Locations
|
||||||
|
|
|
@ -41,13 +41,6 @@
|
||||||
</extension>
|
</extension>
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.ui.views">
|
point="org.eclipse.ui.views">
|
||||||
<view
|
|
||||||
name="%RegistersView.name"
|
|
||||||
icon="icons/full/cview16/registers_view.gif"
|
|
||||||
category="org.eclipse.debug.ui"
|
|
||||||
class="org.eclipse.cdt.debug.internal.ui.views.registers.RegistersView"
|
|
||||||
id="org.eclipse.cdt.debug.ui.RegistersView">
|
|
||||||
</view>
|
|
||||||
<view
|
<view
|
||||||
name="%MemoryView.name"
|
name="%MemoryView.name"
|
||||||
icon="icons/full/cview16/memory_view.gif"
|
icon="icons/full/cview16/memory_view.gif"
|
||||||
|
@ -76,36 +69,31 @@
|
||||||
targetID="org.eclipse.debug.ui.DebugPerspective">
|
targetID="org.eclipse.debug.ui.DebugPerspective">
|
||||||
<view
|
<view
|
||||||
relative="org.eclipse.debug.ui.VariableView"
|
relative="org.eclipse.debug.ui.VariableView"
|
||||||
id="org.eclipse.cdt.debug.ui.RegistersView"
|
relationship="stack"
|
||||||
relationship="stack">
|
id="org.eclipse.cdt.debug.ui.MemoryView">
|
||||||
</view>
|
|
||||||
<viewShortcut
|
|
||||||
id="org.eclipse.cdt.debug.ui.RegistersView">
|
|
||||||
</viewShortcut>
|
|
||||||
<view
|
|
||||||
relative="org.eclipse.debug.ui.VariableView"
|
|
||||||
id="org.eclipse.cdt.debug.ui.MemoryView"
|
|
||||||
relationship="stack">
|
|
||||||
</view>
|
</view>
|
||||||
<viewShortcut
|
<viewShortcut
|
||||||
id="org.eclipse.cdt.debug.ui.MemoryView">
|
id="org.eclipse.cdt.debug.ui.MemoryView">
|
||||||
</viewShortcut>
|
</viewShortcut>
|
||||||
<view
|
<view
|
||||||
relative="org.eclipse.debug.ui.VariableView"
|
relative="org.eclipse.debug.ui.VariableView"
|
||||||
id="org.eclipse.cdt.debug.ui.SharedLibrariesView"
|
relationship="stack"
|
||||||
relationship="stack">
|
id="org.eclipse.cdt.debug.ui.SharedLibrariesView">
|
||||||
</view>
|
</view>
|
||||||
<viewShortcut
|
<viewShortcut
|
||||||
id="org.eclipse.cdt.debug.ui.SharedLibrariesView">
|
id="org.eclipse.cdt.debug.ui.SharedLibrariesView">
|
||||||
</viewShortcut>
|
</viewShortcut>
|
||||||
<view
|
<view
|
||||||
relative="org.eclipse.debug.ui.VariableView"
|
relative="org.eclipse.debug.ui.VariableView"
|
||||||
id="org.eclipse.cdt.debug.ui.SignalsView"
|
relationship="stack"
|
||||||
relationship="stack">
|
id="org.eclipse.cdt.debug.ui.SignalsView">
|
||||||
</view>
|
</view>
|
||||||
<viewShortcut
|
<viewShortcut
|
||||||
id="org.eclipse.cdt.debug.ui.SignalsView">
|
id="org.eclipse.cdt.debug.ui.SignalsView">
|
||||||
</viewShortcut>
|
</viewShortcut>
|
||||||
|
<viewShortcut
|
||||||
|
id="org.eclipse.debug.ui.RegisterView">
|
||||||
|
</viewShortcut>
|
||||||
<actionSet
|
<actionSet
|
||||||
id="org.eclipse.cdt.debug.ui.debugActionSet">
|
id="org.eclipse.cdt.debug.ui.debugActionSet">
|
||||||
</actionSet>
|
</actionSet>
|
||||||
|
@ -316,8 +304,8 @@
|
||||||
</action>
|
</action>
|
||||||
<action
|
<action
|
||||||
label="%ShowFullPathsAction.label"
|
label="%ShowFullPathsAction.label"
|
||||||
icon="icons/full/clcl16/show_paths.gif"
|
|
||||||
style="toggle"
|
style="toggle"
|
||||||
|
icon="icons/full/clcl16/show_paths.gif"
|
||||||
helpContextId="show_full_paths_action_context"
|
helpContextId="show_full_paths_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
||||||
menubarPath="renderGroup"
|
menubarPath="renderGroup"
|
||||||
|
@ -331,8 +319,8 @@
|
||||||
</action>
|
</action>
|
||||||
<action
|
<action
|
||||||
label="%SwitchToDisassemblyAction.label"
|
label="%SwitchToDisassemblyAction.label"
|
||||||
icon="icons/full/clcl16/disassembly.gif"
|
|
||||||
style="toggle"
|
style="toggle"
|
||||||
|
icon="icons/full/clcl16/disassembly.gif"
|
||||||
helpContextId="switch_to_disassembly_action_context"
|
helpContextId="switch_to_disassembly_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.SwitchToDisassemblyActionDelegate"
|
class="org.eclipse.cdt.debug.internal.ui.actions.SwitchToDisassemblyActionDelegate"
|
||||||
menubarPath="renderGroup"
|
menubarPath="renderGroup"
|
||||||
|
@ -347,8 +335,8 @@
|
||||||
</action>
|
</action>
|
||||||
<action
|
<action
|
||||||
label="%ShowDebuggerConsoleAction.label"
|
label="%ShowDebuggerConsoleAction.label"
|
||||||
icon="icons/full/clcl16/debugger_console.gif"
|
|
||||||
style="toggle"
|
style="toggle"
|
||||||
|
icon="icons/full/clcl16/debugger_console.gif"
|
||||||
helpContextId="show_debugger_console_action_context"
|
helpContextId="show_debugger_console_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.DebuggerConsoleActionDelegate"
|
class="org.eclipse.cdt.debug.internal.ui.actions.DebuggerConsoleActionDelegate"
|
||||||
menubarPath="renderGroup"
|
menubarPath="renderGroup"
|
||||||
|
@ -486,8 +474,8 @@
|
||||||
id="org.eclipse.cdt.debug.ui.breakpointview.popupMenu">
|
id="org.eclipse.cdt.debug.ui.breakpointview.popupMenu">
|
||||||
<action
|
<action
|
||||||
label="%ShowFullPathsAction.label"
|
label="%ShowFullPathsAction.label"
|
||||||
icon="icons/full/clcl16/show_paths.gif"
|
|
||||||
style="toggle"
|
style="toggle"
|
||||||
|
icon="icons/full/clcl16/show_paths.gif"
|
||||||
helpContextId="show_full_paths_action_context"
|
helpContextId="show_full_paths_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
||||||
menubarPath="renderGroup"
|
menubarPath="renderGroup"
|
||||||
|
@ -762,8 +750,8 @@
|
||||||
id="org.eclipse.cdt.debug.ui.SharedLibrariesViewPopupActions">
|
id="org.eclipse.cdt.debug.ui.SharedLibrariesViewPopupActions">
|
||||||
<action
|
<action
|
||||||
label="%ShowFullPathsAction.label"
|
label="%ShowFullPathsAction.label"
|
||||||
icon="icons/full/clcl16/show_paths.gif"
|
|
||||||
style="toggle"
|
style="toggle"
|
||||||
|
icon="icons/full/clcl16/show_paths.gif"
|
||||||
helpContextId="show_full_paths_action_context"
|
helpContextId="show_full_paths_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
||||||
menubarPath="renderGroup"
|
menubarPath="renderGroup"
|
||||||
|
@ -783,8 +771,8 @@
|
||||||
label="%LoadSymbolsAction.label"
|
label="%LoadSymbolsAction.label"
|
||||||
icon="icons/full/clcl16/load_symbols_co.gif"
|
icon="icons/full/clcl16/load_symbols_co.gif"
|
||||||
helpContextId="load_symbols_action_context"
|
helpContextId="load_symbols_action_context"
|
||||||
tooltip="%LoadSymbolsAction.tooltip"
|
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.LoadSymbolsActionDelegate"
|
class="org.eclipse.cdt.debug.internal.ui.actions.LoadSymbolsActionDelegate"
|
||||||
|
tooltip="%LoadSymbolsAction.tooltip"
|
||||||
menubarPath="sharedLibrariesGroup"
|
menubarPath="sharedLibrariesGroup"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.LoadSymbolsActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.LoadSymbolsActionDelegate">
|
||||||
|
@ -803,8 +791,8 @@
|
||||||
label="%SignalAction.label"
|
label="%SignalAction.label"
|
||||||
icon="icons/full/clcl16/signal_co.gif"
|
icon="icons/full/clcl16/signal_co.gif"
|
||||||
helpContextId="signal_action_context"
|
helpContextId="signal_action_context"
|
||||||
tooltip="%SignalAction.tooltip"
|
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.SignalActionDelegate"
|
class="org.eclipse.cdt.debug.internal.ui.actions.SignalActionDelegate"
|
||||||
|
tooltip="%SignalAction.tooltip"
|
||||||
menubarPath="additions"
|
menubarPath="additions"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.SignalActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.SignalActionDelegate">
|
||||||
|
@ -841,8 +829,8 @@
|
||||||
<action
|
<action
|
||||||
label="%RestoreDefaultTypeAction.label"
|
label="%RestoreDefaultTypeAction.label"
|
||||||
helpContextId="restore_default_type_action_context"
|
helpContextId="restore_default_type_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.RestoreDefaultTypeActionDelegate"
|
|
||||||
tooltip="%RestoreDefaultTypeAction.tooltip"
|
tooltip="%RestoreDefaultTypeAction.tooltip"
|
||||||
|
class="org.eclipse.cdt.debug.internal.ui.actions.RestoreDefaultTypeActionDelegate"
|
||||||
menubarPath="additions"
|
menubarPath="additions"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.RestoreDefaultTypeActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.RestoreDefaultTypeActionDelegate">
|
||||||
|
@ -857,8 +845,8 @@
|
||||||
label="%CastToTypeAction.label"
|
label="%CastToTypeAction.label"
|
||||||
icon="icons/full/clcl16/casttotype_co.gif"
|
icon="icons/full/clcl16/casttotype_co.gif"
|
||||||
helpContextId="cast_to_type_action_context"
|
helpContextId="cast_to_type_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.CastToTypeActionDelegate"
|
|
||||||
tooltip="%CastToTypeAction.tooltip"
|
tooltip="%CastToTypeAction.tooltip"
|
||||||
|
class="org.eclipse.cdt.debug.internal.ui.actions.CastToTypeActionDelegate"
|
||||||
menubarPath="additions"
|
menubarPath="additions"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.CastToTypeActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.CastToTypeActionDelegate">
|
||||||
|
@ -873,8 +861,8 @@
|
||||||
label="%CastToArrayAction.label"
|
label="%CastToArrayAction.label"
|
||||||
icon="icons/full/clcl16/showasarray_co.gif"
|
icon="icons/full/clcl16/showasarray_co.gif"
|
||||||
helpContextId="cast_to_array_action_context"
|
helpContextId="cast_to_array_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.CastToArrayActionDelegate"
|
|
||||||
tooltip="%CastToArrayAction.tooltip"
|
tooltip="%CastToArrayAction.tooltip"
|
||||||
|
class="org.eclipse.cdt.debug.internal.ui.actions.CastToArrayActionDelegate"
|
||||||
menubarPath="additions"
|
menubarPath="additions"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.CastToArrayActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.CastToArrayActionDelegate">
|
||||||
|
@ -893,8 +881,8 @@
|
||||||
label="%ManageFunctionBreakpointAction.label"
|
label="%ManageFunctionBreakpointAction.label"
|
||||||
icon="icons/full/obj16/funbrkp_obj.gif"
|
icon="icons/full/obj16/funbrkp_obj.gif"
|
||||||
helpContextId="manage_function_breakpoint_action_context"
|
helpContextId="manage_function_breakpoint_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate"
|
|
||||||
tooltip="%ManageFunctionBreakpointAction.tooltip"
|
tooltip="%ManageFunctionBreakpointAction.tooltip"
|
||||||
|
class="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate"
|
||||||
menubarPath="additions"
|
menubarPath="additions"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.ManageFunctionBreakpointActionDelegate">
|
||||||
|
@ -913,8 +901,8 @@
|
||||||
label="%DisableVariablesAction.label"
|
label="%DisableVariablesAction.label"
|
||||||
icon="icons/full/clcl16/disabled_co.gif"
|
icon="icons/full/clcl16/disabled_co.gif"
|
||||||
helpContextId="disable_variables_action_context"
|
helpContextId="disable_variables_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate"
|
|
||||||
tooltip="%DisableVariablesAction.tooltip"
|
tooltip="%DisableVariablesAction.tooltip"
|
||||||
|
class="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate"
|
||||||
menubarPath="variableGroup"
|
menubarPath="variableGroup"
|
||||||
enablesFor="2+"
|
enablesFor="2+"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.DisableVariablesActionDelegate">
|
||||||
|
@ -926,8 +914,8 @@
|
||||||
label="%EnableVariablesAction.label"
|
label="%EnableVariablesAction.label"
|
||||||
icon="icons/full/clcl16/enabled_co.gif"
|
icon="icons/full/clcl16/enabled_co.gif"
|
||||||
helpContextId="enable_variables_action_context"
|
helpContextId="enable_variables_action_context"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate"
|
|
||||||
tooltip="%EnableVariablesAction.tooltip"
|
tooltip="%EnableVariablesAction.tooltip"
|
||||||
|
class="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate"
|
||||||
menubarPath="variableGroup"
|
menubarPath="variableGroup"
|
||||||
enablesFor="2+"
|
enablesFor="2+"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate">
|
id="org.eclipse.cdt.debug.internal.ui.actions.EnableVariablesActionDelegate">
|
||||||
|
@ -950,8 +938,8 @@
|
||||||
disabledIcon="icons/full/dlcl16/restart.gif"
|
disabledIcon="icons/full/dlcl16/restart.gif"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
icon="icons/full/elcl16/restart.gif"
|
icon="icons/full/elcl16/restart.gif"
|
||||||
label="%RestartAction.label"
|
|
||||||
helpContextId="restart_action_context"
|
helpContextId="restart_action_context"
|
||||||
|
label="%RestartAction.label"
|
||||||
tooltip="%RestartAction.tooltip">
|
tooltip="%RestartAction.tooltip">
|
||||||
<enablement>
|
<enablement>
|
||||||
<pluginState
|
<pluginState
|
||||||
|
@ -968,8 +956,8 @@
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
||||||
disabledIcon="icons/full/dlcl16/show_paths.gif"
|
disabledIcon="icons/full/dlcl16/show_paths.gif"
|
||||||
icon="icons/full/elcl16/show_parents.gif"
|
icon="icons/full/elcl16/show_parents.gif"
|
||||||
label="%ShowFullPathsAction.label"
|
|
||||||
helpContextId="show_full_paths_action_context"
|
helpContextId="show_full_paths_action_context"
|
||||||
|
label="%ShowFullPathsAction.label"
|
||||||
tooltip="%ShowFullPathsAction.tooltip">
|
tooltip="%ShowFullPathsAction.tooltip">
|
||||||
<enablement>
|
<enablement>
|
||||||
<pluginState
|
<pluginState
|
||||||
|
@ -987,8 +975,8 @@
|
||||||
disabledIcon="icons/full/dlcl16/disassembly.gif"
|
disabledIcon="icons/full/dlcl16/disassembly.gif"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
icon="icons/full/elcl16/disassembly.gif"
|
icon="icons/full/elcl16/disassembly.gif"
|
||||||
label="%SwitchToDisassemblyAction.label"
|
|
||||||
helpContextId="switch_to_disassembly_action_context"
|
helpContextId="switch_to_disassembly_action_context"
|
||||||
|
label="%SwitchToDisassemblyAction.label"
|
||||||
tooltip="%SwitchToDisassemblyAction.tooltip">
|
tooltip="%SwitchToDisassemblyAction.tooltip">
|
||||||
<enablement>
|
<enablement>
|
||||||
<pluginState
|
<pluginState
|
||||||
|
@ -1006,8 +994,8 @@
|
||||||
disabledIcon="icons/full/dlcl16/debugger_console.gif"
|
disabledIcon="icons/full/dlcl16/debugger_console.gif"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
icon="icons/full/elcl16/debugger_console.gif"
|
icon="icons/full/elcl16/debugger_console.gif"
|
||||||
label="%ShowDebuggerConsoleAction.label"
|
|
||||||
helpContextId="show_debugger_console_action_context"
|
helpContextId="show_debugger_console_action_context"
|
||||||
|
label="%ShowDebuggerConsoleAction.label"
|
||||||
tooltip="%ShowDebuggerConsoleAction.tooltip">
|
tooltip="%ShowDebuggerConsoleAction.tooltip">
|
||||||
<enablement>
|
<enablement>
|
||||||
<pluginState
|
<pluginState
|
||||||
|
@ -1028,8 +1016,8 @@
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
||||||
disabledIcon="icons/full/dlcl16/show_paths.gif"
|
disabledIcon="icons/full/dlcl16/show_paths.gif"
|
||||||
icon="icons/full/elcl16/show_parents.gif"
|
icon="icons/full/elcl16/show_parents.gif"
|
||||||
label="%ShowFullPathsAction.label"
|
|
||||||
helpContextId="show_full_paths_action_context"
|
helpContextId="show_full_paths_action_context"
|
||||||
|
label="%ShowFullPathsAction.label"
|
||||||
tooltip="%ShowFullPathsAction.tooltip">
|
tooltip="%ShowFullPathsAction.tooltip">
|
||||||
<enablement>
|
<enablement>
|
||||||
<pluginState
|
<pluginState
|
||||||
|
@ -1050,8 +1038,8 @@
|
||||||
disabledIcon="icons/full/dlcl16/watch_globals.gif"
|
disabledIcon="icons/full/dlcl16/watch_globals.gif"
|
||||||
enablesFor="1"
|
enablesFor="1"
|
||||||
icon="icons/full/elcl16/watch_globals.gif"
|
icon="icons/full/elcl16/watch_globals.gif"
|
||||||
label="%AddGlobalsAction.label"
|
|
||||||
helpContextId="add_globals_action_context"
|
helpContextId="add_globals_action_context"
|
||||||
|
label="%AddGlobalsAction.label"
|
||||||
tooltip="%AddGlobalsAction.tooltip">
|
tooltip="%AddGlobalsAction.tooltip">
|
||||||
<enablement>
|
<enablement>
|
||||||
<pluginState
|
<pluginState
|
||||||
|
@ -1072,8 +1060,8 @@
|
||||||
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
class="org.eclipse.cdt.debug.internal.ui.actions.ShowFullPathsAction"
|
||||||
disabledIcon="icons/full/dlcl16/show_paths.gif"
|
disabledIcon="icons/full/dlcl16/show_paths.gif"
|
||||||
icon="icons/full/elcl16/show_parents.gif"
|
icon="icons/full/elcl16/show_parents.gif"
|
||||||
label="%ShowFullPathsAction.label"
|
|
||||||
helpContextId="show_full_paths_action_context"
|
helpContextId="show_full_paths_action_context"
|
||||||
|
label="%ShowFullPathsAction.label"
|
||||||
tooltip="%ShowFullPathsAction.tooltip">
|
tooltip="%ShowFullPathsAction.tooltip">
|
||||||
<enablement>
|
<enablement>
|
||||||
<pluginState
|
<pluginState
|
||||||
|
@ -1163,20 +1151,20 @@
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.debug.core.statusHandlers">
|
point="org.eclipse.debug.core.statusHandlers">
|
||||||
<statusHandler
|
<statusHandler
|
||||||
code="10000"
|
|
||||||
plugin="org.eclipse.cdt.debug.core"
|
plugin="org.eclipse.cdt.debug.core"
|
||||||
|
code="10000"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.QuestionStatusHandler"
|
class="org.eclipse.cdt.debug.internal.ui.QuestionStatusHandler"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.QuestionStatusHandler">
|
id="org.eclipse.cdt.debug.internal.ui.QuestionStatusHandler">
|
||||||
</statusHandler>
|
</statusHandler>
|
||||||
<statusHandler
|
<statusHandler
|
||||||
code="10001"
|
|
||||||
plugin="org.eclipse.cdt.debug.core"
|
plugin="org.eclipse.cdt.debug.core"
|
||||||
|
code="10001"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.InfoStatusHandler"
|
class="org.eclipse.cdt.debug.internal.ui.InfoStatusHandler"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.InfoStatusHandler">
|
id="org.eclipse.cdt.debug.internal.ui.InfoStatusHandler">
|
||||||
</statusHandler>
|
</statusHandler>
|
||||||
<statusHandler
|
<statusHandler
|
||||||
code="10002"
|
|
||||||
plugin="org.eclipse.cdt.debug.core"
|
plugin="org.eclipse.cdt.debug.core"
|
||||||
|
code="10002"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.ErrorStatusHandler"
|
class="org.eclipse.cdt.debug.internal.ui.ErrorStatusHandler"
|
||||||
id="org.eclipse.cdt.debug.internal.ui.ErrorStatusHandler">
|
id="org.eclipse.cdt.debug.internal.ui.ErrorStatusHandler">
|
||||||
</statusHandler>
|
</statusHandler>
|
||||||
|
@ -1239,16 +1227,16 @@
|
||||||
point="org.eclipse.ui.editors">
|
point="org.eclipse.ui.editors">
|
||||||
<editor
|
<editor
|
||||||
name="%DisassemblyEditor.name"
|
name="%DisassemblyEditor.name"
|
||||||
extensions="dasm"
|
|
||||||
icon="icons/full/obj16/disassembly_obj.gif"
|
icon="icons/full/obj16/disassembly_obj.gif"
|
||||||
|
extensions="dasm"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.editors.DisassemblyEditor"
|
class="org.eclipse.cdt.debug.internal.ui.editors.DisassemblyEditor"
|
||||||
id="org.eclipse.cdt.debug.ui.DisassemblyEditor">
|
id="org.eclipse.cdt.debug.ui.DisassemblyEditor">
|
||||||
</editor>
|
</editor>
|
||||||
<editor
|
<editor
|
||||||
name="%CDebugEditor.name"
|
name="%CDebugEditor.name"
|
||||||
icon="icons/full/obj16/filenotfound_obj.gif"
|
icon="icons/full/obj16/filenotfound_obj.gif"
|
||||||
class="org.eclipse.cdt.debug.internal.ui.editors.CDebugEditor"
|
|
||||||
contributorClass="org.eclipse.cdt.internal.ui.editor.CEditorActionContributor"
|
contributorClass="org.eclipse.cdt.internal.ui.editor.CEditorActionContributor"
|
||||||
|
class="org.eclipse.cdt.debug.internal.ui.editors.CDebugEditor"
|
||||||
id="org.eclipse.cdt.debug.ui.editor.CDebugEditor">
|
id="org.eclipse.cdt.debug.ui.editor.CDebugEditor">
|
||||||
</editor>
|
</editor>
|
||||||
</extension>
|
</extension>
|
||||||
|
@ -1270,8 +1258,8 @@
|
||||||
<context
|
<context
|
||||||
name="Debugging C/C++"
|
name="Debugging C/C++"
|
||||||
description="Debugging C/C++ Programs"
|
description="Debugging C/C++ Programs"
|
||||||
id="org.eclipse.cdt.debug.ui.debugging"
|
parentId="org.eclipse.debug.ui.debugging"
|
||||||
parentId="org.eclipse.debug.ui.debugging">
|
id="org.eclipse.cdt.debug.ui.debugging">
|
||||||
</context>
|
</context>
|
||||||
</extension>
|
</extension>
|
||||||
<extension
|
<extension
|
||||||
|
@ -1281,5 +1269,28 @@
|
||||||
contextId="org.eclipse.cdt.debug.ui.debugging">
|
contextId="org.eclipse.cdt.debug.ui.debugging">
|
||||||
</modelContextBinding>
|
</modelContextBinding>
|
||||||
</extension>
|
</extension>
|
||||||
|
<extension
|
||||||
|
point="org.eclipse.debug.ui.contextViewBindings">
|
||||||
|
<contextViewBinding
|
||||||
|
viewId="org.eclipse.cdt.debug.ui.MemoryView"
|
||||||
|
contextId="org.eclipse.cdt.debug.ui.debugging"
|
||||||
|
autoClose="false">
|
||||||
|
</contextViewBinding>
|
||||||
|
<contextViewBinding
|
||||||
|
viewId="org.eclipse.cdt.debug.ui.SharedLibrariesView"
|
||||||
|
contextId="org.eclipse.cdt.debug.ui.debugging"
|
||||||
|
autoClose="false">
|
||||||
|
</contextViewBinding>
|
||||||
|
<contextViewBinding
|
||||||
|
viewId="org.eclipse.cdt.debug.ui.SignalsView"
|
||||||
|
contextId="org.eclipse.cdt.debug.ui.debugging"
|
||||||
|
autoClose="false">
|
||||||
|
</contextViewBinding>
|
||||||
|
<contextViewBinding
|
||||||
|
viewId="org.eclipse.debug.ui.RegistersView"
|
||||||
|
contextId="org.eclipse.cdt.debug.ui.debugging"
|
||||||
|
autoClose="false">
|
||||||
|
</contextViewBinding>
|
||||||
|
</extension>
|
||||||
|
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
|
@ -1,122 +0,0 @@
|
||||||
/*
|
|
||||||
*(c) Copyright QNX Software Systems Ltd. 2002.
|
|
||||||
* All Rights Reserved.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
package org.eclipse.cdt.debug.internal.ui.preferences;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.debug.core.CDebugCorePlugin;
|
|
||||||
import org.eclipse.cdt.debug.core.ICDebugConstants;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
|
|
||||||
import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
|
|
||||||
import org.eclipse.cdt.utils.ui.controls.ControlFactory;
|
|
||||||
import org.eclipse.jface.preference.ColorFieldEditor;
|
|
||||||
import org.eclipse.jface.preference.FieldEditorPreferencePage;
|
|
||||||
import org.eclipse.jface.preference.IPreferenceStore;
|
|
||||||
import org.eclipse.jface.preference.PreferenceConverter;
|
|
||||||
import org.eclipse.swt.SWT;
|
|
||||||
import org.eclipse.swt.graphics.RGB;
|
|
||||||
import org.eclipse.swt.layout.GridData;
|
|
||||||
import org.eclipse.swt.widgets.Button;
|
|
||||||
import org.eclipse.swt.widgets.Composite;
|
|
||||||
import org.eclipse.swt.widgets.Label;
|
|
||||||
import org.eclipse.ui.IWorkbench;
|
|
||||||
import org.eclipse.ui.IWorkbenchPreferencePage;
|
|
||||||
import org.eclipse.ui.help.WorkbenchHelp;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* A page to set the preferences for the registers view
|
|
||||||
*
|
|
||||||
* @since Sep 16, 2002
|
|
||||||
*/
|
|
||||||
public class RegistersViewPreferencePage extends FieldEditorPreferencePage
|
|
||||||
implements IWorkbenchPreferencePage
|
|
||||||
{
|
|
||||||
private Button fAutoRefreshField = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor for RegistersViewPreferencePage.
|
|
||||||
* @param style
|
|
||||||
*/
|
|
||||||
public RegistersViewPreferencePage()
|
|
||||||
{
|
|
||||||
super( GRID );
|
|
||||||
setDescription( CDebugUIPlugin.getResourceString("internal.ui.preferences.RegistersViewPreferencePage.Registers_View_Settings") ); //$NON-NLS-1$
|
|
||||||
setPreferenceStore( CDebugUIPlugin.getDefault().getPreferenceStore() );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @see PreferencePage#createControl(Composite)
|
|
||||||
*/
|
|
||||||
public void createControl( Composite parent )
|
|
||||||
{
|
|
||||||
super.createControl( parent );
|
|
||||||
WorkbenchHelp.setHelp( parent, ICDebugHelpContextIds.REGISTERS_PREFERENCE_PAGE );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.preference.FieldEditorPreferencePage#createFieldEditors()
|
|
||||||
*/
|
|
||||||
protected void createFieldEditors()
|
|
||||||
{
|
|
||||||
addField( new ColorFieldEditor( ICDebugPreferenceConstants.CHANGED_REGISTER_RGB, CDebugUIPlugin.getResourceString("internal.ui.preferences.RegistersViewPreferencePage.Changed_register_value_color"), getFieldEditorParent() ) ); //$NON-NLS-1$
|
|
||||||
createSpacer( getFieldEditorParent(), 2 );
|
|
||||||
fAutoRefreshField = ControlFactory.createCheckBox( getFieldEditorParent(), CDebugUIPlugin.getResourceString("internal.ui.preferences.RegistersViewPreferencePage.Auto-Refresh_by_default") ); //$NON-NLS-1$
|
|
||||||
fAutoRefreshField.setSelection( CDebugCorePlugin.getDefault().getPluginPreferences().getBoolean( ICDebugConstants.PREF_REGISTERS_AUTO_REFRESH ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.ui.IWorkbenchPreferencePage#init(IWorkbench)
|
|
||||||
*/
|
|
||||||
public void init( IWorkbench workbench )
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void initDefaults( IPreferenceStore store )
|
|
||||||
{
|
|
||||||
PreferenceConverter.setDefault( store,
|
|
||||||
ICDebugPreferenceConstants.CHANGED_REGISTER_RGB,
|
|
||||||
new RGB( 255, 0, 0 ) );
|
|
||||||
CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_REGISTERS_AUTO_REFRESH, true );
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void createSpacer( Composite composite, int columnSpan )
|
|
||||||
{
|
|
||||||
Label label = new Label( composite, SWT.NONE );
|
|
||||||
GridData gd = new GridData();
|
|
||||||
gd.horizontalSpan = columnSpan;
|
|
||||||
label.setLayoutData( gd );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @see IPreferencePage#performOk()
|
|
||||||
*/
|
|
||||||
public boolean performOk()
|
|
||||||
{
|
|
||||||
boolean ok = super.performOk();
|
|
||||||
storeValues();
|
|
||||||
CDebugUIPlugin.getDefault().savePluginPreferences();
|
|
||||||
CDebugCorePlugin.getDefault().savePluginPreferences();
|
|
||||||
return ok;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.preference.PreferencePage#performDefaults()
|
|
||||||
*/
|
|
||||||
protected void performDefaults()
|
|
||||||
{
|
|
||||||
setDefaultValues();
|
|
||||||
super.performDefaults();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void setDefaultValues()
|
|
||||||
{
|
|
||||||
fAutoRefreshField.setSelection( CDebugCorePlugin.getDefault().getPluginPreferences().getDefaultBoolean( ICDebugConstants.PREF_REGISTERS_AUTO_REFRESH ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
private void storeValues()
|
|
||||||
{
|
|
||||||
CDebugCorePlugin.getDefault().getPluginPreferences().setValue( ICDebugConstants.PREF_REGISTERS_AUTO_REFRESH, fAutoRefreshField.getSelection() );
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,416 +0,0 @@
|
||||||
/*
|
|
||||||
*(c) Copyright QNX Software Systems Ltd. 2002.
|
|
||||||
* All Rights Reserved.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
package org.eclipse.cdt.debug.internal.ui.views.registers;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.debug.core.ICRegisterManager;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.CDebugImages;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.ICDebugHelpContextIds;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.actions.AutoRefreshAction;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.actions.ChangeRegisterValueAction;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.actions.RefreshAction;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.actions.ShowRegisterTypesAction;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.preferences.ICDebugPreferenceConstants;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandlerView;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.views.ViewerState;
|
|
||||||
import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
|
|
||||||
import org.eclipse.cdt.debug.ui.ICDebugUIConstants;
|
|
||||||
import org.eclipse.debug.core.DebugException;
|
|
||||||
import org.eclipse.debug.core.model.IRegister;
|
|
||||||
import org.eclipse.debug.core.model.IStackFrame;
|
|
||||||
import org.eclipse.debug.ui.DebugUITools;
|
|
||||||
import org.eclipse.debug.ui.IDebugModelPresentation;
|
|
||||||
import org.eclipse.debug.ui.IDebugUIConstants;
|
|
||||||
import org.eclipse.jface.action.IAction;
|
|
||||||
import org.eclipse.jface.action.IMenuManager;
|
|
||||||
import org.eclipse.jface.action.IToolBarManager;
|
|
||||||
import org.eclipse.jface.action.Separator;
|
|
||||||
import org.eclipse.jface.util.IPropertyChangeListener;
|
|
||||||
import org.eclipse.jface.util.PropertyChangeEvent;
|
|
||||||
import org.eclipse.jface.viewers.IBaseLabelProvider;
|
|
||||||
import org.eclipse.jface.viewers.IColorProvider;
|
|
||||||
import org.eclipse.jface.viewers.IContentProvider;
|
|
||||||
import org.eclipse.jface.viewers.ILabelProvider;
|
|
||||||
import org.eclipse.jface.viewers.ILabelProviderListener;
|
|
||||||
import org.eclipse.jface.viewers.ISelection;
|
|
||||||
import org.eclipse.jface.viewers.IStructuredSelection;
|
|
||||||
import org.eclipse.jface.viewers.TreeViewer;
|
|
||||||
import org.eclipse.jface.viewers.Viewer;
|
|
||||||
import org.eclipse.swt.SWT;
|
|
||||||
import org.eclipse.swt.graphics.Color;
|
|
||||||
import org.eclipse.swt.graphics.Image;
|
|
||||||
import org.eclipse.swt.widgets.Composite;
|
|
||||||
import org.eclipse.ui.ISelectionListener;
|
|
||||||
import org.eclipse.ui.IWorkbenchActionConstants;
|
|
||||||
import org.eclipse.ui.IWorkbenchPart;
|
|
||||||
import org.eclipse.ui.help.WorkbenchHelp;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* This view shows registers and their values for a particular stack frame.
|
|
||||||
*
|
|
||||||
* @since Jul 23, 2002
|
|
||||||
*/
|
|
||||||
public class RegistersView extends AbstractDebugEventHandlerView
|
|
||||||
implements ISelectionListener,
|
|
||||||
IPropertyChangeListener,
|
|
||||||
IDebugExceptionHandler
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* A label provider that delegates to a debug model
|
|
||||||
* presentation and adds coloring to registers to
|
|
||||||
* reflect their changed state
|
|
||||||
*/
|
|
||||||
class VariablesViewLabelProvider implements ILabelProvider, IColorProvider
|
|
||||||
{
|
|
||||||
private IDebugModelPresentation fPresentation;
|
|
||||||
|
|
||||||
public VariablesViewLabelProvider( IDebugModelPresentation presentation )
|
|
||||||
{
|
|
||||||
fPresentation = presentation;
|
|
||||||
}
|
|
||||||
|
|
||||||
public IDebugModelPresentation getPresentation()
|
|
||||||
{
|
|
||||||
return fPresentation;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Image getImage( Object element )
|
|
||||||
{
|
|
||||||
return fPresentation.getImage( element );
|
|
||||||
}
|
|
||||||
public String getText( Object element )
|
|
||||||
{
|
|
||||||
return fPresentation.getText( element );
|
|
||||||
}
|
|
||||||
public void addListener( ILabelProviderListener listener )
|
|
||||||
{
|
|
||||||
fPresentation.addListener( listener );
|
|
||||||
}
|
|
||||||
public void dispose()
|
|
||||||
{
|
|
||||||
fPresentation.dispose();
|
|
||||||
}
|
|
||||||
public boolean isLabelProperty( Object element, String property )
|
|
||||||
{
|
|
||||||
return fPresentation.isLabelProperty( element, property );
|
|
||||||
}
|
|
||||||
public void removeListener( ILabelProviderListener listener )
|
|
||||||
{
|
|
||||||
fPresentation.removeListener( listener );
|
|
||||||
}
|
|
||||||
|
|
||||||
public Color getForeground( Object element )
|
|
||||||
{
|
|
||||||
if ( element instanceof IRegister )
|
|
||||||
{
|
|
||||||
IRegister register = (IRegister)element;
|
|
||||||
try
|
|
||||||
{
|
|
||||||
if ( register.hasValueChanged() )
|
|
||||||
{
|
|
||||||
return CDebugUIPlugin.getPreferenceColor( ICDebugPreferenceConstants.CHANGED_REGISTER_RGB );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch( DebugException e )
|
|
||||||
{
|
|
||||||
CDebugUIPlugin.log( e );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Color getBackground( Object element )
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The model presentation used as the label provider for the tree viewer.
|
|
||||||
*/
|
|
||||||
private IDebugModelPresentation fModelPresentation;
|
|
||||||
|
|
||||||
protected static final String VARIABLES_SELECT_ALL_ACTION = SELECT_ALL_ACTION + ".Registers"; //$NON-NLS-1$
|
|
||||||
|
|
||||||
/**
|
|
||||||
* A map of register managers to <code>ViewerState</code>s.
|
|
||||||
* Used to restore the expanded state of the registers view on
|
|
||||||
* re-selection of the register manager. The cache is cleared on
|
|
||||||
* a frame by frame basis when a thread/target is terminated.
|
|
||||||
*/
|
|
||||||
private HashMap fExpandedRegisters = new HashMap( 10 );
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.debug.ui.AbstractDebugView#createViewer(Composite)
|
|
||||||
*/
|
|
||||||
protected Viewer createViewer( Composite parent )
|
|
||||||
{
|
|
||||||
CDebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener( this );
|
|
||||||
|
|
||||||
// add tree viewer
|
|
||||||
final TreeViewer vv = new RegistersViewer( parent, SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL );
|
|
||||||
vv.setContentProvider( createContentProvider() );
|
|
||||||
vv.setLabelProvider( new VariablesViewLabelProvider( getModelPresentation() ) );
|
|
||||||
vv.setUseHashlookup( true );
|
|
||||||
setAction( SELECT_ALL_ACTION, getAction( VARIABLES_SELECT_ALL_ACTION ) );
|
|
||||||
getViewSite().getActionBars().updateActionBars();
|
|
||||||
|
|
||||||
// listen to selection in debug view
|
|
||||||
getSite().getPage().addSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
|
|
||||||
setEventHandler( createEventHandler( vv ) );
|
|
||||||
|
|
||||||
return vv;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.debug.ui.AbstractDebugView#createActions()
|
|
||||||
*/
|
|
||||||
protected void createActions()
|
|
||||||
{
|
|
||||||
IAction action = new ShowRegisterTypesAction( this );
|
|
||||||
setAction( "ShowTypeNames", action ); //$NON-NLS-1$
|
|
||||||
|
|
||||||
action = new ChangeRegisterValueAction( getViewer() );
|
|
||||||
action.setEnabled( false );
|
|
||||||
setAction( "ChangeRegisterValue", action ); //$NON-NLS-1$
|
|
||||||
setAction( DOUBLE_CLICK_ACTION, action );
|
|
||||||
|
|
||||||
action = new AutoRefreshAction( getViewer(), CDebugUIPlugin.getResourceString("RegistersView.Auto_Refresh") ); //$NON-NLS-1$
|
|
||||||
CDebugImages.setLocalImageDescriptors( action, CDebugImages.IMG_LCL_AUTO_REFRESH );
|
|
||||||
action.setDescription( CDebugUIPlugin.getResourceString("RegistersView.Automatically_Refresh_Registers_View") ); //$NON-NLS-1$
|
|
||||||
action.setToolTipText( CDebugUIPlugin.getResourceString("RegistersView.Auto_Refresh") ); //$NON-NLS-1$
|
|
||||||
WorkbenchHelp.setHelp( action, ICDebugHelpContextIds.AUTO_REFRESH_REGISTERS_ACTION );
|
|
||||||
action.setEnabled( false );
|
|
||||||
setAction( "AutoRefresh", action ); //$NON-NLS-1$
|
|
||||||
add( (AutoRefreshAction)action );
|
|
||||||
|
|
||||||
action = new RefreshAction( getViewer(), CDebugUIPlugin.getResourceString("RegistersView.Refresh") ); //$NON-NLS-1$
|
|
||||||
CDebugImages.setLocalImageDescriptors( action, CDebugImages.IMG_LCL_REFRESH );
|
|
||||||
action.setDescription( CDebugUIPlugin.getResourceString("RegistersView.Refresh_Registers_View") ); //$NON-NLS-1$
|
|
||||||
action.setToolTipText( CDebugUIPlugin.getResourceString("RegistersView.Refresh") ); //$NON-NLS-1$
|
|
||||||
WorkbenchHelp.setHelp( action, ICDebugHelpContextIds.REFRESH_REGISTERS_ACTION );
|
|
||||||
action.setEnabled( false );
|
|
||||||
setAction( "Refresh", action ); //$NON-NLS-1$
|
|
||||||
add( (RefreshAction)action );
|
|
||||||
|
|
||||||
// set initial content here, as viewer has to be set
|
|
||||||
setInitialContent();
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
|
|
||||||
*/
|
|
||||||
protected String getHelpContextId()
|
|
||||||
{
|
|
||||||
return ICDebugHelpContextIds.REGISTERS_VIEW;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.debug.ui.AbstractDebugView#fillContextMenu(IMenuManager)
|
|
||||||
*/
|
|
||||||
protected void fillContextMenu( IMenuManager menu )
|
|
||||||
{
|
|
||||||
menu.add( new Separator( ICDebugUIConstants.EMPTY_REGISTER_GROUP ) );
|
|
||||||
menu.add( new Separator( ICDebugUIConstants.REGISTER_GROUP ) );
|
|
||||||
|
|
||||||
menu.add( new Separator( IDebugUIConstants.EMPTY_RENDER_GROUP ) );
|
|
||||||
menu.add( new Separator( IDebugUIConstants.RENDER_GROUP ) );
|
|
||||||
|
|
||||||
menu.add( new Separator( ICDebugUIConstants.EMPTY_REFRESH_GROUP ) );
|
|
||||||
menu.add( new Separator( ICDebugUIConstants.REFRESH_GROUP ) );
|
|
||||||
|
|
||||||
menu.add( new Separator( IWorkbenchActionConstants.MB_ADDITIONS ) );
|
|
||||||
|
|
||||||
menu.appendToGroup( ICDebugUIConstants.REGISTER_GROUP, getAction( "ChangeRegisterValue" ) ); //$NON-NLS-1$
|
|
||||||
// menu.appendToGroup( IDebugUIConstants.RENDER_GROUP, getAction( "ShowTypeNames" ) ); //$NON-NLS-1$
|
|
||||||
menu.appendToGroup( ICDebugUIConstants.REFRESH_GROUP, getAction( "AutoRefresh" ) ); //$NON-NLS-1$
|
|
||||||
menu.appendToGroup( ICDebugUIConstants.REFRESH_GROUP, getAction( "Refresh" ) ); //$NON-NLS-1$
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.debug.ui.AbstractDebugView#configureToolBar(IToolBarManager)
|
|
||||||
*/
|
|
||||||
protected void configureToolBar( IToolBarManager tbm )
|
|
||||||
{
|
|
||||||
tbm.add( new Separator( this.getClass().getName() ) );
|
|
||||||
|
|
||||||
tbm.add( new Separator( ICDebugUIConstants.REFRESH_GROUP ) );
|
|
||||||
tbm.add( getAction( "AutoRefresh" ) ); //$NON-NLS-1$
|
|
||||||
tbm.add( getAction( "Refresh" ) ); //$NON-NLS-1$
|
|
||||||
|
|
||||||
tbm.add( new Separator( IDebugUIConstants.RENDER_GROUP ) );
|
|
||||||
tbm.add( getAction( "ShowTypeNames" ) ); //$NON-NLS-1$
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.ui.ISelectionListener#selectionChanged(IWorkbenchPart, ISelection)
|
|
||||||
*/
|
|
||||||
public void selectionChanged( IWorkbenchPart part, ISelection selection )
|
|
||||||
{
|
|
||||||
if ( selection instanceof IStructuredSelection )
|
|
||||||
{
|
|
||||||
setViewerInput( (IStructuredSelection)selection );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(PropertyChangeEvent)
|
|
||||||
*/
|
|
||||||
public void propertyChange( PropertyChangeEvent event )
|
|
||||||
{
|
|
||||||
String propertyName= event.getProperty();
|
|
||||||
if ( propertyName.equals( ICDebugPreferenceConstants.CHANGED_REGISTER_RGB ) )
|
|
||||||
{
|
|
||||||
getEventHandler().refresh();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler#handleException(DebugException)
|
|
||||||
*/
|
|
||||||
public void handleException( DebugException e )
|
|
||||||
{
|
|
||||||
showMessage( e.getMessage() );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Remove myself as a selection listener
|
|
||||||
* and preference change listener.
|
|
||||||
*
|
|
||||||
* @see IWorkbenchPart#dispose()
|
|
||||||
*/
|
|
||||||
public void dispose()
|
|
||||||
{
|
|
||||||
fModelPresentation.dispose();
|
|
||||||
getSite().getPage().removeSelectionListener( IDebugUIConstants.ID_DEBUG_VIEW, this );
|
|
||||||
CDebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener( this );
|
|
||||||
super.dispose();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates this view's content provider.
|
|
||||||
*
|
|
||||||
* @return a content provider
|
|
||||||
*/
|
|
||||||
protected IContentProvider createContentProvider()
|
|
||||||
{
|
|
||||||
RegistersViewContentProvider cp = new RegistersViewContentProvider();
|
|
||||||
cp.setExceptionHandler( this );
|
|
||||||
return cp;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected IDebugModelPresentation getModelPresentation()
|
|
||||||
{
|
|
||||||
if ( fModelPresentation == null )
|
|
||||||
{
|
|
||||||
fModelPresentation = DebugUITools.newDebugModelPresentation();
|
|
||||||
}
|
|
||||||
return fModelPresentation;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates this view's event handler.
|
|
||||||
*
|
|
||||||
* @param viewer the viewer associated with this view
|
|
||||||
* @return an event handler
|
|
||||||
*/
|
|
||||||
protected AbstractDebugEventHandler createEventHandler( Viewer viewer )
|
|
||||||
{
|
|
||||||
return new RegistersViewEventHandler( this );
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void setViewerInput( IStructuredSelection ssel )
|
|
||||||
{
|
|
||||||
ICRegisterManager rm = null;
|
|
||||||
if ( ssel.size() == 1 && ssel.getFirstElement() instanceof IStackFrame )
|
|
||||||
{
|
|
||||||
rm = (ICRegisterManager)((IStackFrame)ssel.getFirstElement()).getDebugTarget().getAdapter( ICRegisterManager.class );
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( getViewer() == null )
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
Object current = getViewer().getInput();
|
|
||||||
if ( current == null && rm == null )
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( current != null && current.equals( rm ) )
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( current != null )
|
|
||||||
{
|
|
||||||
// save state
|
|
||||||
ViewerState state = new ViewerState( getRegistersViewer() );
|
|
||||||
fExpandedRegisters.put( current, state );
|
|
||||||
}
|
|
||||||
|
|
||||||
showViewer();
|
|
||||||
getViewer().setInput( rm );
|
|
||||||
|
|
||||||
// restore state
|
|
||||||
if ( rm != null )
|
|
||||||
{
|
|
||||||
ViewerState state = (ViewerState)fExpandedRegisters.get( rm );
|
|
||||||
if ( state != null )
|
|
||||||
{
|
|
||||||
state.restoreState( getRegistersViewer() );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
updateObjects();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Initializes the viewer input on creation
|
|
||||||
*/
|
|
||||||
protected void setInitialContent()
|
|
||||||
{
|
|
||||||
ISelection selection =
|
|
||||||
getSite().getPage().getSelection( IDebugUIConstants.ID_DEBUG_VIEW );
|
|
||||||
if ( selection instanceof IStructuredSelection && !selection.isEmpty() )
|
|
||||||
{
|
|
||||||
setViewerInput( (IStructuredSelection)selection );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected RegistersViewer getRegistersViewer()
|
|
||||||
{
|
|
||||||
return (RegistersViewer)getViewer();
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void clearExpandedRegisters( ICRegisterManager rm )
|
|
||||||
{
|
|
||||||
fExpandedRegisters.remove( rm );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
|
|
||||||
*/
|
|
||||||
public Object getAdapter( Class adapter )
|
|
||||||
{
|
|
||||||
if ( IDebugModelPresentation.class.equals( adapter ) )
|
|
||||||
{
|
|
||||||
IBaseLabelProvider labelProvider = getStructuredViewer().getLabelProvider();
|
|
||||||
if ( labelProvider instanceof VariablesViewLabelProvider )
|
|
||||||
{
|
|
||||||
return ((VariablesViewLabelProvider)labelProvider).getPresentation();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return super.getAdapter( adapter );
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,214 +0,0 @@
|
||||||
/*
|
|
||||||
*(c) Copyright QNX Software Systems Ltd. 2002.
|
|
||||||
* All Rights Reserved.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
package org.eclipse.cdt.debug.internal.ui.views.registers;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.debug.core.ICRegisterManager;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.views.IDebugExceptionHandler;
|
|
||||||
import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
|
|
||||||
import org.eclipse.debug.core.DebugException;
|
|
||||||
import org.eclipse.debug.core.model.IRegisterGroup;
|
|
||||||
import org.eclipse.debug.core.model.IStackFrame;
|
|
||||||
import org.eclipse.debug.core.model.IValue;
|
|
||||||
import org.eclipse.debug.core.model.IVariable;
|
|
||||||
import org.eclipse.jface.viewers.ITreeContentProvider;
|
|
||||||
import org.eclipse.jface.viewers.Viewer;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* Provide the contents for a registers viewer.
|
|
||||||
*
|
|
||||||
* @since Jul 23, 2002
|
|
||||||
*/
|
|
||||||
public class RegistersViewContentProvider implements ITreeContentProvider
|
|
||||||
{
|
|
||||||
/**
|
|
||||||
* A table that maps children to their parent element
|
|
||||||
* such that this content provider can walk back up the
|
|
||||||
* parent chain (since values do not know their
|
|
||||||
* parent).
|
|
||||||
* Map of <code>IVariable</code> (child) -> <code>IVariable</code> (parent).
|
|
||||||
*/
|
|
||||||
private HashMap fParentCache;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handler for exceptions as content is retrieved
|
|
||||||
*/
|
|
||||||
private IDebugExceptionHandler fExceptionHandler = null;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor for RegistersViewContentProvider.
|
|
||||||
*/
|
|
||||||
public RegistersViewContentProvider()
|
|
||||||
{
|
|
||||||
fParentCache = new HashMap( 10 );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(Object)
|
|
||||||
*/
|
|
||||||
public Object[] getChildren( Object parent )
|
|
||||||
{
|
|
||||||
Object[] children= null;
|
|
||||||
try
|
|
||||||
{
|
|
||||||
if ( parent instanceof ICRegisterManager )
|
|
||||||
{
|
|
||||||
children = ((ICRegisterManager)parent).getRegisterGroups();
|
|
||||||
}
|
|
||||||
else if ( parent instanceof IRegisterGroup )
|
|
||||||
{
|
|
||||||
children = ((IRegisterGroup)parent).getRegisters();
|
|
||||||
}
|
|
||||||
else if ( parent instanceof IVariable )
|
|
||||||
{
|
|
||||||
children = ((IVariable)parent).getValue().getVariables();
|
|
||||||
}
|
|
||||||
if ( children != null )
|
|
||||||
{
|
|
||||||
cache( parent, children );
|
|
||||||
return children;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch( DebugException e )
|
|
||||||
{
|
|
||||||
if ( getExceptionHandler() != null )
|
|
||||||
{
|
|
||||||
getExceptionHandler().handleException( e );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
CDebugUIPlugin.log( e );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return new Object[0];
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Caches the given elememts as children of the given
|
|
||||||
* parent.
|
|
||||||
*
|
|
||||||
* @param parent parent element
|
|
||||||
* @param children children elements
|
|
||||||
*/
|
|
||||||
protected void cache( Object parent, Object[] children )
|
|
||||||
{
|
|
||||||
for ( int i = 0; i < children.length; i++ )
|
|
||||||
{
|
|
||||||
fParentCache.put( children[i], parent );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(Object)
|
|
||||||
*/
|
|
||||||
public Object getParent( Object element )
|
|
||||||
{
|
|
||||||
return fParentCache.get( element );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(Object)
|
|
||||||
*/
|
|
||||||
public boolean hasChildren( Object element )
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
if ( element instanceof IVariable )
|
|
||||||
{
|
|
||||||
return ((IVariable)element).getValue().hasVariables();
|
|
||||||
}
|
|
||||||
if ( element instanceof IValue )
|
|
||||||
{
|
|
||||||
return ((IValue)element).hasVariables();
|
|
||||||
}
|
|
||||||
if ( element instanceof IRegisterGroup )
|
|
||||||
{
|
|
||||||
return ((IRegisterGroup)element).hasRegisters();
|
|
||||||
}
|
|
||||||
if ( element instanceof IStackFrame )
|
|
||||||
{
|
|
||||||
return ((IStackFrame)element).hasRegisterGroups();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch( DebugException e )
|
|
||||||
{
|
|
||||||
CDebugUIPlugin.log( e );
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(Object)
|
|
||||||
*/
|
|
||||||
public Object[] getElements( Object inputElement )
|
|
||||||
{
|
|
||||||
return getChildren( inputElement );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.viewers.IContentProvider#dispose()
|
|
||||||
*/
|
|
||||||
public void dispose()
|
|
||||||
{
|
|
||||||
fParentCache = null;
|
|
||||||
setExceptionHandler( null );
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void clearCache()
|
|
||||||
{
|
|
||||||
if ( fParentCache != null )
|
|
||||||
{
|
|
||||||
fParentCache.clear();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Remove the cached parent for the given children
|
|
||||||
*
|
|
||||||
* @param children for which to remove cached parents
|
|
||||||
*/
|
|
||||||
public void removeCache( Object[] children )
|
|
||||||
{
|
|
||||||
if ( fParentCache != null )
|
|
||||||
{
|
|
||||||
for ( int i = 0; i < children.length; i++ )
|
|
||||||
{
|
|
||||||
fParentCache.remove( children[i] );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.jface.viewers.IContentProvider#inputChanged(Viewer, Object, Object)
|
|
||||||
*/
|
|
||||||
public void inputChanged( Viewer viewer, Object oldInput, Object newInput )
|
|
||||||
{
|
|
||||||
clearCache();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Sets an exception handler for this content provider.
|
|
||||||
*
|
|
||||||
* @param handler debug exception handler or <code>null</code>
|
|
||||||
*/
|
|
||||||
protected void setExceptionHandler( IDebugExceptionHandler handler )
|
|
||||||
{
|
|
||||||
fExceptionHandler = handler;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns the exception handler for this content provider.
|
|
||||||
*
|
|
||||||
* @return debug exception handler or <code>null</code>
|
|
||||||
*/
|
|
||||||
protected IDebugExceptionHandler getExceptionHandler()
|
|
||||||
{
|
|
||||||
return fExceptionHandler;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,83 +0,0 @@
|
||||||
/*
|
|
||||||
*(c) Copyright QNX Software Systems Ltd. 2002.
|
|
||||||
* All Rights Reserved.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
package org.eclipse.cdt.debug.internal.ui.views.registers;
|
|
||||||
|
|
||||||
import org.eclipse.cdt.debug.core.ICRegisterManager;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler;
|
|
||||||
import org.eclipse.debug.core.DebugEvent;
|
|
||||||
import org.eclipse.debug.core.model.IDebugTarget;
|
|
||||||
import org.eclipse.debug.core.model.IVariable;
|
|
||||||
import org.eclipse.debug.ui.AbstractDebugView;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* Updates the registers view
|
|
||||||
*
|
|
||||||
* @since Jul 23, 2002
|
|
||||||
*/
|
|
||||||
public class RegistersViewEventHandler extends AbstractDebugEventHandler
|
|
||||||
{
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor for RegistersViewEventHandler.
|
|
||||||
* @param view
|
|
||||||
*/
|
|
||||||
public RegistersViewEventHandler( AbstractDebugView view )
|
|
||||||
{
|
|
||||||
super( view );
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.debug.internal.ui.views.AbstractDebugEventHandler#doHandleDebugEvents(DebugEvent[])
|
|
||||||
*/
|
|
||||||
protected void doHandleDebugEvents( DebugEvent[] events )
|
|
||||||
{
|
|
||||||
for( int i = 0; i < events.length; i++ )
|
|
||||||
{
|
|
||||||
DebugEvent event = events[i];
|
|
||||||
switch( event.getKind() )
|
|
||||||
{
|
|
||||||
case DebugEvent.TERMINATE :
|
|
||||||
if ( event.getSource() instanceof IDebugTarget &&
|
|
||||||
((IDebugTarget)event.getSource()).getAdapter( ICRegisterManager.class ) != null )
|
|
||||||
{
|
|
||||||
getRegistersView().clearExpandedRegisters( (ICRegisterManager)(((IDebugTarget)event.getSource()).getAdapter( ICRegisterManager.class )) );
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case DebugEvent.SUSPEND :
|
|
||||||
if ( event.getDetail() != DebugEvent.EVALUATION_IMPLICIT )
|
|
||||||
{
|
|
||||||
// Don't refresh everytime an implicit evaluation finishes
|
|
||||||
refresh();
|
|
||||||
// return since we've done a complete refresh
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case DebugEvent.CHANGE :
|
|
||||||
if ( event.getDetail() == DebugEvent.STATE )
|
|
||||||
{
|
|
||||||
// only process variable state changes
|
|
||||||
if ( event.getSource() instanceof IVariable )
|
|
||||||
{
|
|
||||||
refresh( event.getSource() );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
refresh();
|
|
||||||
// return since we've done a complete refresh
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected RegistersView getRegistersView()
|
|
||||||
{
|
|
||||||
return (RegistersView)getView();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,95 +0,0 @@
|
||||||
/*
|
|
||||||
*(c) Copyright QNX Software Systems Ltd. 2002.
|
|
||||||
* All Rights Reserved.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
package org.eclipse.cdt.debug.internal.ui.views.registers;
|
|
||||||
|
|
||||||
import org.eclipse.jface.viewers.TreeViewer;
|
|
||||||
import org.eclipse.swt.widgets.Composite;
|
|
||||||
import org.eclipse.swt.widgets.Item;
|
|
||||||
import org.eclipse.swt.widgets.Tree;
|
|
||||||
import org.eclipse.swt.widgets.Widget;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* Registers viewer. As the user steps through code, this
|
|
||||||
* viewer renders registers that have changed with a
|
|
||||||
* different foreground color thereby drawing attention
|
|
||||||
* to the values that have changed.
|
|
||||||
*
|
|
||||||
* @since Jul 23, 2002
|
|
||||||
*/
|
|
||||||
public class RegistersViewer extends TreeViewer
|
|
||||||
{
|
|
||||||
|
|
||||||
private Item fNewItem;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor for RegistersViewer.
|
|
||||||
* @param parent
|
|
||||||
*/
|
|
||||||
public RegistersViewer( Composite parent )
|
|
||||||
{
|
|
||||||
super( parent );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor for RegistersViewer.
|
|
||||||
* @param parent
|
|
||||||
* @param style
|
|
||||||
*/
|
|
||||||
public RegistersViewer( Composite parent, int style )
|
|
||||||
{
|
|
||||||
super( parent, style );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Constructor for RegistersViewer.
|
|
||||||
* @param tree
|
|
||||||
*/
|
|
||||||
public RegistersViewer( Tree tree )
|
|
||||||
{
|
|
||||||
super( tree );
|
|
||||||
}
|
|
||||||
|
|
||||||
public void refresh()
|
|
||||||
{
|
|
||||||
super.refresh();
|
|
||||||
|
|
||||||
if ( getSelection().isEmpty() && getNewItem() != null )
|
|
||||||
{
|
|
||||||
if ( !getNewItem().isDisposed() )
|
|
||||||
{
|
|
||||||
//ensure that new items are visible
|
|
||||||
showItem( getNewItem() );
|
|
||||||
}
|
|
||||||
setNewItem( null );
|
|
||||||
}
|
|
||||||
//expandToLevel( 2 );
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @see AbstractTreeViewer#newItem(Widget, int, int)
|
|
||||||
*/
|
|
||||||
protected Item newItem( Widget parent, int style, int index )
|
|
||||||
{
|
|
||||||
if ( index != -1 )
|
|
||||||
{
|
|
||||||
//ignore the dummy items
|
|
||||||
setNewItem( super.newItem( parent, style, index ) );
|
|
||||||
return getNewItem();
|
|
||||||
}
|
|
||||||
return super.newItem( parent, style, index );
|
|
||||||
}
|
|
||||||
|
|
||||||
protected Item getNewItem()
|
|
||||||
{
|
|
||||||
return fNewItem;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected void setNewItem( Item newItem )
|
|
||||||
{
|
|
||||||
fNewItem = newItem;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,7 +1,6 @@
|
||||||
package org.eclipse.cdt.debug.ui;
|
package org.eclipse.cdt.debug.ui;
|
||||||
|
|
||||||
import java.text.MessageFormat;
|
import java.text.MessageFormat;
|
||||||
import java.text.NumberFormat;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.MissingResourceException;
|
import java.util.MissingResourceException;
|
||||||
|
@ -19,7 +18,6 @@ import org.eclipse.cdt.debug.internal.ui.editors.DisassemblyDocumentProvider;
|
||||||
import org.eclipse.cdt.debug.internal.ui.editors.DisassemblyEditorInput;
|
import org.eclipse.cdt.debug.internal.ui.editors.DisassemblyEditorInput;
|
||||||
import org.eclipse.cdt.debug.internal.ui.preferences.CDebugPreferencePage;
|
import org.eclipse.cdt.debug.internal.ui.preferences.CDebugPreferencePage;
|
||||||
import org.eclipse.cdt.debug.internal.ui.preferences.MemoryViewPreferencePage;
|
import org.eclipse.cdt.debug.internal.ui.preferences.MemoryViewPreferencePage;
|
||||||
import org.eclipse.cdt.debug.internal.ui.preferences.RegistersViewPreferencePage;
|
|
||||||
import org.eclipse.cdt.debug.internal.ui.preferences.SharedLibrariesViewPreferencePage;
|
import org.eclipse.cdt.debug.internal.ui.preferences.SharedLibrariesViewPreferencePage;
|
||||||
import org.eclipse.cdt.debug.ui.sourcelookup.DefaultSourceLocator;
|
import org.eclipse.cdt.debug.ui.sourcelookup.DefaultSourceLocator;
|
||||||
import org.eclipse.core.resources.IStorage;
|
import org.eclipse.core.resources.IStorage;
|
||||||
|
@ -58,7 +56,6 @@ import org.eclipse.ui.IWorkbenchPage;
|
||||||
import org.eclipse.ui.IWorkbenchPart;
|
import org.eclipse.ui.IWorkbenchPart;
|
||||||
import org.eclipse.ui.IWorkbenchWindow;
|
import org.eclipse.ui.IWorkbenchWindow;
|
||||||
import org.eclipse.ui.plugin.AbstractUIPlugin;
|
import org.eclipse.ui.plugin.AbstractUIPlugin;
|
||||||
import org.eclipse.cdt.debug.ui.CDebugUIPlugin;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The main plugin class to be used in the desktop.
|
* The main plugin class to be used in the desktop.
|
||||||
|
@ -180,7 +177,6 @@ public class CDebugUIPlugin extends AbstractUIPlugin
|
||||||
protected void initializeDefaultPreferences( IPreferenceStore pstore )
|
protected void initializeDefaultPreferences( IPreferenceStore pstore )
|
||||||
{
|
{
|
||||||
MemoryViewPreferencePage.initDefaults( pstore );
|
MemoryViewPreferencePage.initDefaults( pstore );
|
||||||
RegistersViewPreferencePage.initDefaults( pstore );
|
|
||||||
SharedLibrariesViewPreferencePage.initDefaults( pstore );
|
SharedLibrariesViewPreferencePage.initDefaults( pstore );
|
||||||
CDebugPreferencePage.initDefaults( pstore );
|
CDebugPreferencePage.initDefaults( pstore );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue