This commit was manufactured by cvs2svn to create tag 'v20050526a'.

Sprout from master 2005-05-26 15:34:41 UTC Darin Wright <darin> 'Bug 95335  -  Source Lookup Halts With Missing Archive'
Cherrypick from master 2005-05-26 22:29:36 UTC Darin Swanson <darins> 'Bug 87787 - Widget disposed error creating new builder during build':
    org.eclipse.ui.externaltools/External Tools Base/org/eclipse/ui/externaltools/internal/ui/BuilderPropertyPage.java
Delete:
    org.eclipse.core.variables/.classpath
    org.eclipse.core.variables/.cvsignore
    org.eclipse.core.variables/.project
    org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs
    org.eclipse.core.variables/.settings/org.eclipse.pde.prefs
    org.eclipse.core.variables/META-INF/MANIFEST.MF
    org.eclipse.core.variables/about.html
    org.eclipse.core.variables/build.properties
    org.eclipse.core.variables/component.xml
    org.eclipse.core.variables/plugin.properties
    org.eclipse.core.variables/plugin.xml
    org.eclipse.core.variables/schema/dynamicVariables.exsd
    org.eclipse.core.variables/schema/valueVariables.exsd
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/DynamicVariable.java
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ListenerList.java
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariable.java
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ValueVariable.java
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.java
    org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.properties
    org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariable.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariableResolver.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariable.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariableManager.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariable.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableInitializer.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableListener.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/VariablesPlugin.java
    org.eclipse.core.variables/src/org/eclipse/core/variables/package.html
    org.eclipse.debug.ui/.classpath
    org.eclipse.debug.ui/.cvsignore
    org.eclipse.debug.ui/.project
    org.eclipse.debug.ui/.settings/org.eclipse.jdt.core.prefs
    org.eclipse.debug.ui/.settings/org.eclipse.pde.prefs
    org.eclipse.debug.ui/META-INF/MANIFEST.MF
    org.eclipse.debug.ui/about.html
    org.eclipse.debug.ui/build.properties
    org.eclipse.debug.ui/component.xml
    org.eclipse.debug.ui/doc/.cvsignore
    org.eclipse.debug.ui/icons/full/dlcl16/changevariablevalue_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/collapseall.gif
    org.eclipse.debug.ui/icons/full/dlcl16/copy_edit_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/copyviewtoclipboard_tsk.gif
    org.eclipse.debug.ui/icons/full/dlcl16/debuglast_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/det_pane_hide.gif
    org.eclipse.debug.ui/icons/full/dlcl16/det_pane_right.gif
    org.eclipse.debug.ui/icons/full/dlcl16/det_pane_under.gif
    org.eclipse.debug.ui/icons/full/dlcl16/disabled_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/disconnect_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/edtsrclkup_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/enabled_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/lock_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/memoryreset_tsk.gif
    org.eclipse.debug.ui/icons/full/dlcl16/metharg_obj.gif
    org.eclipse.debug.ui/icons/full/dlcl16/monitorexpression_tsk.gif
    org.eclipse.debug.ui/icons/full/dlcl16/printview_tsk.gif
    org.eclipse.debug.ui/icons/full/dlcl16/rem_all_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/rem_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/removememory_tsk.gif
    org.eclipse.debug.ui/icons/full/dlcl16/resume_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/runlast_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/runtoline_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/skip_brkp.gif
    org.eclipse.debug.ui/icons/full/dlcl16/stepbystep_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/stepinto_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/stepover_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/stepreturn_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/suspend_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/synced.gif
    org.eclipse.debug.ui/icons/full/dlcl16/terminate_all_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/terminate_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/terminate_rem_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/tnames_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/toggledetailpane_co.gif
    org.eclipse.debug.ui/icons/full/dlcl16/var_cntnt_prvdr.gif
    org.eclipse.debug.ui/icons/full/dtool16/debug_exc.gif
    org.eclipse.debug.ui/icons/full/dtool16/environment_co.gif
    org.eclipse.debug.ui/icons/full/dtool16/profile_exc.gif
    org.eclipse.debug.ui/icons/full/dtool16/run_exc.gif
    org.eclipse.debug.ui/icons/full/dtool16/term_restart.gif
    org.eclipse.debug.ui/icons/full/dtool16/watch_exp.gif
    org.eclipse.debug.ui/icons/full/elcl16/changevariablevalue_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/collapseall.gif
    org.eclipse.debug.ui/icons/full/elcl16/copy_edit_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/copyviewtoclipboard_tsk.gif
    org.eclipse.debug.ui/icons/full/elcl16/debuglast_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/det_pane_hide.gif
    org.eclipse.debug.ui/icons/full/elcl16/det_pane_right.gif
    org.eclipse.debug.ui/icons/full/elcl16/det_pane_under.gif
    org.eclipse.debug.ui/icons/full/elcl16/disabled_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/disconnect_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/dissolve_group.gif
    org.eclipse.debug.ui/icons/full/elcl16/drop_to_frame.gif
    org.eclipse.debug.ui/icons/full/elcl16/edtsrclkup_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/enabled_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/expandall.gif
    org.eclipse.debug.ui/icons/full/elcl16/hierarchicalLayout.gif
    org.eclipse.debug.ui/icons/full/elcl16/lock_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/memoryreset_tsk.gif
    org.eclipse.debug.ui/icons/full/elcl16/metharg_obj.gif
    org.eclipse.debug.ui/icons/full/elcl16/monitorexpression_tsk.gif
    org.eclipse.debug.ui/icons/full/elcl16/new_con.gif
    org.eclipse.debug.ui/icons/full/elcl16/pin.gif
    org.eclipse.debug.ui/icons/full/elcl16/printview_tsk.gif
    org.eclipse.debug.ui/icons/full/elcl16/rem_all_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/rem_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/removememory_tsk.gif
    org.eclipse.debug.ui/icons/full/elcl16/resume_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/runlast_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/runtoline_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/skip_brkp.gif
    org.eclipse.debug.ui/icons/full/elcl16/stepbystep_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/stepinto_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/stepover_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/stepreturn_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/suspend_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/synced.gif
    org.eclipse.debug.ui/icons/full/elcl16/terminate_all_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/terminate_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/terminate_rem_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/tnames_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/toggledetailpane_co.gif
    org.eclipse.debug.ui/icons/full/elcl16/var_cntnt_prvdr.gif
    org.eclipse.debug.ui/icons/full/etool16/debug_exc.gif
    org.eclipse.debug.ui/icons/full/etool16/environment_co.gif
    org.eclipse.debug.ui/icons/full/etool16/profile_exc.gif
    org.eclipse.debug.ui/icons/full/etool16/run_exc.gif
    org.eclipse.debug.ui/icons/full/etool16/term_restart.gif
    org.eclipse.debug.ui/icons/full/etool16/watch_exp.gif
    org.eclipse.debug.ui/icons/full/eview16/breakpoint_view.gif
    org.eclipse.debug.ui/icons/full/eview16/debug_persp.gif
    org.eclipse.debug.ui/icons/full/eview16/debug_view.gif
    org.eclipse.debug.ui/icons/full/eview16/details_view.gif
    org.eclipse.debug.ui/icons/full/eview16/memory_view.gif
    org.eclipse.debug.ui/icons/full/eview16/register_view.gif
    org.eclipse.debug.ui/icons/full/eview16/variable_view.gif
    org.eclipse.debug.ui/icons/full/eview16/watchlist_view.gif
    org.eclipse.debug.ui/icons/full/obj16/arraypartition_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/brkp_grp.gif
    org.eclipse.debug.ui/icons/full/obj16/brkp_grp_disabled.gif
    org.eclipse.debug.ui/icons/full/obj16/brkp_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/brkp_type.gif
    org.eclipse.debug.ui/icons/full/obj16/brkpd_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/common_tab.gif
    org.eclipse.debug.ui/icons/full/obj16/debugt_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/debugts_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/debugtt_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/environment_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/envvar_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/expression_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/file_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/fldr_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/genericreggroup_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/genericregister_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/genericvariable_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/inst_ptr.gif
    org.eclipse.debug.ui/icons/full/obj16/inst_ptr_top.gif
    org.eclipse.debug.ui/icons/full/obj16/jar_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/ldebug_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/lrun_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/memory_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/memorychanged_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/osprc_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/osprct_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/persp_tab.gif
    org.eclipse.debug.ui/icons/full/obj16/prj_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/read_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/read_obj_disabled.gif
    org.eclipse.debug.ui/icons/full/obj16/readwrite_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/readwrite_obj_disabled.gif
    org.eclipse.debug.ui/icons/full/obj16/refresh_tab.gif
    org.eclipse.debug.ui/icons/full/obj16/rundebug.gif
    org.eclipse.debug.ui/icons/full/obj16/stckframe_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/stckframe_running_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/terminatedlaunch_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/thread_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/threads_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/threadt_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/workset.gif
    org.eclipse.debug.ui/icons/full/obj16/write_obj.gif
    org.eclipse.debug.ui/icons/full/obj16/write_obj_disabled.gif
    org.eclipse.debug.ui/icons/full/ovr16/error.gif
    org.eclipse.debug.ui/icons/full/ovr16/skip_breakpoint_ov.gif
    org.eclipse.debug.ui/icons/full/ovr16/stcksync_ov.gif
    org.eclipse.debug.ui/icons/full/ovr16/transparent.gif
    org.eclipse.debug.ui/icons/full/wizban/addsrcloc_wiz.gif
    org.eclipse.debug.ui/icons/full/wizban/debug_wiz.gif
    org.eclipse.debug.ui/icons/full/wizban/edtsrclkup_wiz.gif
    org.eclipse.debug.ui/icons/full/wizban/profile_wiz.gif
    org.eclipse.debug.ui/icons/full/wizban/run_wiz.gif
    org.eclipse.debug.ui/plugin.properties
    org.eclipse.debug.ui/plugin.xml
    org.eclipse.debug.ui/schema/breakpointOrganizers.exsd
    org.eclipse.debug.ui/schema/consoleColorProviders.exsd
    org.eclipse.debug.ui/schema/consoleLineTrackers.exsd
    org.eclipse.debug.ui/schema/contextViewBindings.exsd
    org.eclipse.debug.ui/schema/debugModelContextBindings.exsd
    org.eclipse.debug.ui/schema/debugModelPresentations.exsd
    org.eclipse.debug.ui/schema/launchConfigurationTabGroups.exsd
    org.eclipse.debug.ui/schema/launchConfigurationTypeImages.exsd
    org.eclipse.debug.ui/schema/launchGroups.exsd
    org.eclipse.debug.ui/schema/launchShortcuts.exsd
    org.eclipse.debug.ui/schema/memoryRenderings.exsd
    org.eclipse.debug.ui/schema/sourceContainerPresentations.exsd
    org.eclipse.debug.ui/schema/stringVariablePresentations.exsd
    org.eclipse.debug.ui/schema/variableValueEditors.exsd
    org.eclipse.debug.ui/scripts/exportplugin.xml
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BreakpointImageProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ColorManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/CompositeDebugImageDescriptor.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPerspectiveFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPluginImages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIAdapterFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DelegatingModelPresentation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DialogSettingsHelper.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IDebugHelpContextIds.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ILaunchHistoryChangedListener.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ImageDescriptorRegistry.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerAnnotation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerContext.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/LazyModelPresentation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/MultipleInputDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/Pair.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/PixelConverter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ResourceExtender.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/SWTUtil.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/StepFilterManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariableValueEditorManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariablesViewModelPresentation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/WorkingDirectoryStatusHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractDebugActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractListenerActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveAllActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AccessWatchpointToggleAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddToFavoritesAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddWatchExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AssignValueAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsCollapseAllAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsExpandAllAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueInputDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CollapseAllAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ConvertToWatchExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyToClipboardActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyVariablesToClipboardActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugAsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugContextualLaunchAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugHistoryMenuAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugLastAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugToolbarAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableWatchExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisconnectActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DropToFrameActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditLaunchConfigurationAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditWatchExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableWatchExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ExecutionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchShortcutAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchablePropertyTester.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LinkBreakpointsWithDebugViewAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModificationWatchpointToggleAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModifyWatchpointAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenBreakpointMarkerAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenDebugConfigurations.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenProfileConfigurations.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenRunConfigurations.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileAsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileContextualLaunchAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileHistoryMenuAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileLastAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileToolbarAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ReevaluateWatchExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchLastAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllExpressionsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllTerminatedAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveBreakpointAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ResumeActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetBreakpointAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetMethodBreakpointAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetRunToLineAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetToggleLineBreakpointAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetWatchpointAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunAsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunContextualLaunchAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunHistoryMenuAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunLastAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunToolbarAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllExpressionsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllVariablesAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowSupportedBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowTypesAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SkipAllBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StatusInfo.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepIntoActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepOverActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepReturnActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SuspendActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAllAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRelaunchAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRemoveActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleBreakpointObjectActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleDetailPaneAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleFilterAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleStepFiltersActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ViewManagementAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AbstractBreakpointsViewAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AdvancedGroupBreakpointsByAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointSelectionAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointWorkingSetAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ClearDefaultBreakpointGroupAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/CopyBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/EditBreakpointGroupAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/PasteBreakpointsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/RemoveFromWorkingSetAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/SetDefaultBreakpointGroupAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ToggleDefaultGroupAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/WorkingSetsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpression.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionLogicalStructure.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunch.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunchManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredProcess.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredRegisterGroup.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredStackFrame.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredTarget.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredThread.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariable.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariableLogicalStructure.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/AbstractLaunchConfigurationAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorProjectPromptStatusHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorPromptStatusHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CreateLaunchConfigurationAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DebugModePromptStatusHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DeleteLaunchConfigurationAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DuplicateLaunchConfigurationAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/EnvironmentVariable.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/FavoritesDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPresentationManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPropertiesDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupExtension.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabImageDescriptor.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTreeContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypeContribution.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypesViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupExtension.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupFilter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchHistory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchShortcutExtension.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/OrganizeFavoritesAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationTypeFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveTabGroup.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectivesTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/WorkingSetComparator.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryBlockConnection.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryRenderingUpdater.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingType.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/RenderingBindings.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/BooleanFieldEditor2.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ConsolePreferencePage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencePage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/IDebugPreferenceConstants.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/LaunchingPreferencePage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ProcessPropertyPage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/StringVariablePreferencePage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ViewManagementPreferencePage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddContainerAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/BasicContainerContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditor.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditorInput.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/DownAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditContainerAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditSourceLookupPathAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/LookupSourceAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/Prompter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RemoveAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/ResolveDuplicatesHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RestoreDefaultAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementAdapterFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementWorkbenchAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupFacility.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupPanel.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupResult.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIUtils.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/UpAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/WorkingSetSourceContainerType.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveFilter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveSourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ExternalArchiveSourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkingSetSourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkspaceSourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ContainerResolver.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FilePrompt.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FolderPrompt.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/IArgumentSelector.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ProjectResolver.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/PromptingResolver.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceResolver.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceSelector.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedResourceManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedTextResolver.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringPrompt.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariableLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariablePresentationManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/WorkspaceResolver.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandlerView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractViewerState.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewDecoratingLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewInterimLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewLabelDecorator.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IDebugExceptionHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IRemoteTreeViewerUpdateListener.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeContentManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainerWorkbenchAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerExtension.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointPersistableElementAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointSetOrganizer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointTypeOrganizer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointWorkingSetPage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDragAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDropAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsSorter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewEventHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/FileBreakpointOrganizer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/IBreakpointOrganizer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/OtherBreakpointCategory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/ProjectBreakpointOrganizer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetBreakpointOrganizer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetCategory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleLineNotifier.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleRemoveAllTerminatedAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsoleManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessTypePropertyTester.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionInformationControl.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionPopupContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionViewEventHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/PopupInformationControl.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionContentManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionsContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementAdapterFactory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementHelper.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugViewContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/Decoration.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DecorationManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/ImageImageDescriptor.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewContextListener.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewEventHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditor.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditorInput.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/StandardDecoration.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryBlockAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingContextAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/CodePagesPrefDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewPane.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/LinkRenderingPanesAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryBlocksTreeViewPane.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewIdRegistry.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewUtil.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MonitorMemoryBlockDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/NewMemoryViewAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PinMemoryBlockAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PropertyChangeNotifier.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveMemoryRenderingAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveRenderingContextAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SelectCodePagesAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SynchronizeInfo.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleMemoryMonitorsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleSplitPaneAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleViewPaneAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneRenderingMgr.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneSelectionProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewTabEnablementManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRenderingTypeDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractIntegerRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractTableRenderingLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BigEndianAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CopyTableRenderingToClipboardAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CreateRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/DefaultEndianessAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ErrorRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/FormatColumnAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRenderingTypeDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/LittleEndianAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/PrintTableRenderingAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ReformatAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/RenderingsUtil.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ResetToBaseAddressAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetColumnSizeDefaultAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRenderingTypeDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingCellModifier.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentInput.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProviderEx.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLine.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPreferencePage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPropertiesPage.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRenderingTypeDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/DeferredRegisterViewStackFrame.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewEventHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewerState.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegisterContentManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegistersViewContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/AvailableLogicalStructuresAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/DetailPaneWordWrapAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IValueContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedValuePartition.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedVariablePartition.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariableContentManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariablesContentProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/StatusLineContributionItem.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariableViewToggleAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewEventHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.properties
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ViewerState.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractBreakpointOrganizerDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractDebugView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTabGroup.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/BreakpointTypeCategory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/CommonTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugElementWorkbenchAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugUITools.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DeferredDebugElementWorkbenchAdapter.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/EnvironmentTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointOrganizerDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointTypeCategory.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugEditorPresentation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugModelPresentation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugUIConstants.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugView.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTabGroup.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchGroup.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchShortcut.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ISourcePresentation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IValueDetailListener.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/RefreshTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/StringVariableSelectionDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchHistoryAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchToolbarAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ContextualLaunchAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/DebugAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ILaunchable.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IRunToLineTarget.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTarget.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTargetExtension.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IVariableValueEditor.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchShortcutsAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/OpenLaunchDialogAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RulerToggleBreakpointActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineHandler.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleBreakpointAction.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleMethodBreakpointActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleWatchpointActionDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/package.html
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/ConsoleColorProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/FileLink.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsole.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleColorProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleHyperlink.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTracker.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTrackerExtension.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/package.html
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRenderingBindingsProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTableRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTextRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryBlockTablePresentation.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRendering.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsListener.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsProvider.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingContainer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingManager.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSite.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSynchronizationService.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingType.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingTypeDelegate.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/MemoryRenderingElement.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/package.html
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/AbstractSourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceContainerBrowser.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceLookupResult.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupDialog.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupTab.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/WorkingSetSourceContainer.java
    org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/package.html
    org.eclipse.ui.console/.classpath
    org.eclipse.ui.console/.cvsignore
    org.eclipse.ui.console/.project
    org.eclipse.ui.console/.settings/org.eclipse.jdt.core.prefs
    org.eclipse.ui.console/.settings/org.eclipse.pde.prefs
    org.eclipse.ui.console/META-INF/MANIFEST.MF
    org.eclipse.ui.console/about.html
    org.eclipse.ui.console/build.properties
    org.eclipse.ui.console/component.xml
    org.eclipse.ui.console/icons/full/clcl16/clear_co.gif
    org.eclipse.ui.console/icons/full/clcl16/lock_co.gif
    org.eclipse.ui.console/icons/full/clcl16/pin.gif
    org.eclipse.ui.console/icons/full/cview16/console_view.gif
    org.eclipse.ui.console/icons/full/dlcl16/clear_co.gif
    org.eclipse.ui.console/icons/full/dlcl16/lock_co.gif
    org.eclipse.ui.console/icons/full/dlcl16/pin.gif
    org.eclipse.ui.console/icons/full/dlcl16/rem_co.gif
    org.eclipse.ui.console/icons/full/elcl16/clear_co.gif
    org.eclipse.ui.console/icons/full/elcl16/lock_co.gif
    org.eclipse.ui.console/icons/full/elcl16/new_con.gif
    org.eclipse.ui.console/icons/full/elcl16/pin.gif
    org.eclipse.ui.console/icons/full/elcl16/rem_co.gif
    org.eclipse.ui.console/icons/full/eview16/console_view.gif
    org.eclipse.ui.console/plugin.properties
    org.eclipse.ui.console/plugin.xml
    org.eclipse.ui.console/schema/consoleFactories.exsd
    org.eclipse.ui.console/schema/consolePageParticipants.exsd
    org.eclipse.ui.console/schema/consolePatternMatchListeners.exsd
    org.eclipse.ui.console/scripts/exportplugin.xml
    org.eclipse.ui.console/src/org/eclipse/ui/console/AbstractConsole.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/ConsolePlugin.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsole.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleConstants.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleDocumentPartitioner.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleFactory.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleListener.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleManager.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsolePageParticipant.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleView.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IHyperlink.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsole.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleInputStream.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleOutputStream.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListener.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListenerDelegate.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsole.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsoleStream.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/PatternMatchEvent.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsole.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsolePage.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsoleViewer.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/actions/ClearOutputAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/actions/CloseConsoleAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerGotoLineAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/console/actions/package.html
    org.eclipse.ui.console/src/org/eclipse/ui/console/package.html
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocument.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocumentAdapter.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDropDownAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleFactoryExtension.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleHyperlinkPosition.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleManager.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.properties
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePageParticipantExtension.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePatternMatcher.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePluginImages.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.properties
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleTypePropertyTester.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleView.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleViewConsoleFactory.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleWorkbenchPart.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/FollowHyperlinkAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IConsoleHelpContextIds.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IInternalConsoleConstants.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePage.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartition.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartitioner.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsoleViewer.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/OpenConsoleAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListener.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListenerExtension.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PinConsoleAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ScrollLockAction.java
    org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ShowConsoleAction.java
diff --git a/org.eclipse.core.variables/.classpath b/org.eclipse.core.variables/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/org.eclipse.core.variables/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.core.variables/.cvsignore b/org.eclipse.core.variables/.cvsignore
deleted file mode 100644
index 6938697..0000000
--- a/org.eclipse.core.variables/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-bin
-doc
diff --git a/org.eclipse.core.variables/.project b/org.eclipse.core.variables/.project
deleted file mode 100644
index efb82a1..0000000
--- a/org.eclipse.core.variables/.project
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.core.variables</name>
-	<comment></comment>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.pde.PluginNature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index e22d63a..0000000
--- a/org.eclipse.core.variables/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Mon Nov 01 17:54:58 GMT-08:00 2004

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=ignore

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=warning

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=public

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=disabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/org.eclipse.core.variables/.settings/org.eclipse.pde.prefs b/org.eclipse.core.variables/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 02f5958..0000000
--- a/org.eclipse.core.variables/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Wed Nov 24 22:35:14 GMT-08:00 2004

-compilers.p.unused-element-or-attribute=1

-compilers.p.unresolved-ex-points=0

-compilers.p.deprecated=1

-compilers.p.unknown-element=0

-compilers.p.unknown-resource=1

-compilers.p.unknown-class=1

-compilers.p.unknown-attribute=0

-compilers.p.no-required-att=0

-eclipse.preferences.version=1

-compilers.p.unresolved-import=0

-compilers.p.not-externalized-att=1

-compilers.p.illegal-att-value=0

-compilers.use-project=true

diff --git a/org.eclipse.core.variables/META-INF/MANIFEST.MF b/org.eclipse.core.variables/META-INF/MANIFEST.MF
deleted file mode 100644
index 3069ac7..0000000
--- a/org.eclipse.core.variables/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,12 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.core.variables; singleton:=true
-Bundle-Version: 3.1.0
-Bundle-Activator: org.eclipse.core.variables.VariablesPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.core.internal.variables;x-internal:=true,
- org.eclipse.core.variables
-Require-Bundle: org.eclipse.core.runtime
-Eclipse-AutoStart: true
diff --git a/org.eclipse.core.variables/about.html b/org.eclipse.core.variables/about.html
deleted file mode 100644
index 6f6b96c..0000000
--- a/org.eclipse.core.variables/about.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/org.eclipse.core.variables/build.properties b/org.eclipse.core.variables/build.properties
deleted file mode 100644
index c91ff1f..0000000
--- a/org.eclipse.core.variables/build.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = plugin.xml,\
-               plugin.properties,\
-               .,\
-               about.html,\
-               META-INF/
-source.. = src/
-src.includes = about.html,\
-               schema/,\
-               component.xml
diff --git a/org.eclipse.core.variables/component.xml b/org.eclipse.core.variables/component.xml
deleted file mode 100644
index e68c3cd..0000000
--- a/org.eclipse.core.variables/component.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/component"
-   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-   xsi:schemaLocation="http://eclipse.org/component ../component.xsd "
-   name="Eclipse Platform Core Variables">
- <plugin id="org.eclipse.core.variables" />
-
- <package name="org.eclipse.core.variables">
- 	<type name="IDynamicVariable" implement="false" />
- 	<type name="IDynamicVariableResolver" />
- 	<type name="IStringVariable" implement="false" />
- 	<type name="IStringVariableManager" implement="false" />
- 	<type name="IValueVariable" implement="false" />
- 	<type name="IValueVariableInitializer" />
- 	<type name="IValueVariableListener" />
- 	<type name="VariablesPlugin" instantiate="false" subclass="false" />
- </package>
- 
- <component-depends unrestricted="true"/>
-
-</component>
\ No newline at end of file
diff --git a/org.eclipse.core.variables/plugin.properties b/org.eclipse.core.variables/plugin.properties
deleted file mode 100644
index b15fcea..0000000
--- a/org.eclipse.core.variables/plugin.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-pluginName=Core Variables
-providerName=Eclipse.org
-valueVariablesExtensionPointName=Value Variables
-dynamicVariablesExtensionPointName=Dynamic Variables
diff --git a/org.eclipse.core.variables/plugin.xml b/org.eclipse.core.variables/plugin.xml
deleted file mode 100644
index 5b85ef1..0000000
--- a/org.eclipse.core.variables/plugin.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-    <extension-point id="valueVariables" name="%valueVariablesExtensionPointName" schema="schema/valueVariables.exsd"/>
-   <extension-point id="dynamicVariables" name="%dynamicVariablesExtensionPointName" schema="schema/dynamicVariables.exsd"/>
-
-</plugin>
diff --git a/org.eclipse.core.variables/schema/dynamicVariables.exsd b/org.eclipse.core.variables/schema/dynamicVariables.exsd
deleted file mode 100644
index f2c31c7..0000000
--- a/org.eclipse.core.variables/schema/dynamicVariables.exsd
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.core.variables">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.core.variables" id="dynamicVariables" name="Dynamic String Substitution Variables"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a mechanism for defining dynamic variables used in string substitution. The value of a dynamic variable is resolved at the time a string substitution is performed, with an optional argument.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="variable" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="variable">

-      <complexType>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique name for this variable.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="resolver" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a Java class which implements &lt;code&gt;org.eclipse.core.variables.IDynamicVariableResolver&lt;/code&gt;, which is used to determine the value of the variable

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.core.variables.IDynamicVariableResolver"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="description" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a human-readable description of this variable

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="supportsArgument" type="boolean">

-            <annotation>

-               <documentation>

-                  Whether this variable supports an argument. When unspecified, the implied value is &lt;code&gt;true&lt;/code&gt;.

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is a definition of a dynamic variable that resolves to the name of the selected resource:
-&lt;pre&gt;
- &lt;extension point=&quot;org.eclipse.core.variables.dynamicVariables&quot;&gt;
-   &lt;variable 
-      name=&quot;resource_name&quot;
-      expanderClass=&quot;com.example.ResourceNameExpander&quot;
-      description=&quot;The name of the selected resource&quot;&gt;
-   &lt;/variable&gt;
- &lt;/extension&gt;
-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;resolver&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.core.variables.IDynamicVariableResolver&lt;/b&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2003, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.core.variables/schema/valueVariables.exsd b/org.eclipse.core.variables/schema/valueVariables.exsd
deleted file mode 100644
index 15049a5..0000000
--- a/org.eclipse.core.variables/schema/valueVariables.exsd
+++ /dev/null
@@ -1,149 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.core.variables">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.core.variables" id="valueVariables" name="Value Variables"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a mechanism for defining variables used for string substitution. A value variable has a static value.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="variable" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="variable">

-      <complexType>

-         <attribute name="name" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique name for this variable.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="initialValue" type="string">

-            <annotation>

-               <documentation>

-                  specifies the initial value for this variable. When specified, an &lt;code&gt;initializerClass&lt;/code&gt; attribute must not be specified.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="initializerClass" type="string">

-            <annotation>

-               <documentation>

-                  specifies the fully qualified name of the Java class that implements &lt;code&gt;org.eclipse.core.variables.IValueVariableInitializer&lt;/code&gt;. When specified, an &lt;code&gt;initialValue&lt;/code&gt; attribute must not be specified.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.core.variables.IValueVariableInitializer"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="description" type="string">

-            <annotation>

-               <documentation>

-                  specifies a human-readable description of this variable.

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a value variable contribution with an initial value:
-
-&lt;p&gt;
-&lt;pre&gt;
- &lt;extension point=&quot;org.eclipse.core.variables.valueVariables&quot;&gt;
-  &lt;variable
-   name=&quot;FOO_HOME&quot;
-   initialValue=&quot;/usr/local/foo&quot;&gt;
-  &lt;/variable&gt;
- &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;/p&gt;
-
-In the example above, the specified variable is created with the initial value &quot;/usr/local/foo&quot;.
-
-         The following is an example of a value variable contribution with an initializer class:
-&lt;p&gt;
-&lt;pre&gt;
- &lt;extension point=&quot;org.eclipse.core.variables.valueVariables&quot;&gt;
-  &lt;variable
-   name=&quot;FOO_HOME&quot;
-   initializerClass=&quot;com.example.FooLocator&quot;&gt;
-  &lt;/variable&gt;
- &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;/p&gt;
-
-In the example above, the variable FOO_HOME is created and the class &quot;com.example.FooLocator&quot; will be
-used to initialize the value the first time it&apos;s requested.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;initializerClass&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.core.variables.IValueVariableInitializer&lt;/b&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2003, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/DynamicVariable.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/DynamicVariable.java
deleted file mode 100644
index 10e192e..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/DynamicVariable.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.internal.variables;
-
-import java.text.MessageFormat;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.variables.IDynamicVariable;
-import org.eclipse.core.variables.IDynamicVariableResolver;
-import org.eclipse.core.variables.VariablesPlugin;
-
-/**
- * Dynamic variable
- */
-public class DynamicVariable extends StringVariable implements IDynamicVariable {
-	
-	/**
-	 * Resolver, or <code>null</code> until needed
-	 */
-	private IDynamicVariableResolver fResolver;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IContextVariable#getValue(java.lang.String)
-	 */
-	public String getValue(String argument) throws CoreException {
-		if (!supportsArgument()) {
-			// check for an argument - not supported
-			if (argument != null && argument.length() > 0) {
-				throw new CoreException(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, MessageFormat.format(VariablesMessages.DynamicVariable_0, new String[]{argument, getName()}), null)); //$NON-NLS-1$
-			}
-		}
-		if (fResolver == null) {
-			String name = getConfigurationElement().getAttribute("resolver"); //$NON-NLS-1$
-			if (name == null) {
-				throw new CoreException(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, MessageFormat.format("Contributed context variable {0} must specify a resolver.",new String[]{getName()}), null)); //$NON-NLS-1$
-			}
-			Object object = getConfigurationElement().createExecutableExtension("resolver"); //$NON-NLS-1$
-			if (object instanceof IDynamicVariableResolver) {
-				fResolver = (IDynamicVariableResolver)object;
-			} else {
-				throw new CoreException(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, MessageFormat.format("Contributed context variable resolver for {0} must be an instance of IContextVariableResolver.",new String[]{getName()}), null)); //$NON-NLS-1$
-			}
-		}
-		return fResolver.resolveValue(this, argument);
-	}
-
-	/**
-	 * Constructs a new context variable.
-	 * 
-	 * @param name variable name
-	 * @param description variable description or <code>null</code>
-	 * @param configurationElement configuration element
-	 */
-	public DynamicVariable(String name, String description, IConfigurationElement configurationElement) {
-		super(name, description, configurationElement);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.variables.IDynamicVariable#supportsArgument()
-	 */
-	public boolean supportsArgument() {
-		String arg = getConfigurationElement().getAttribute("supportsArgument"); //$NON-NLS-1$
-		return arg == null || Boolean.valueOf(arg).booleanValue();
-	}
-	
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ListenerList.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ListenerList.java
deleted file mode 100644
index 3169707..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ListenerList.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.internal.variables;
-
-
-/**
- * Local version of org.eclipse.jface.util.ListenerList (modified)s
- */
-public class ListenerList {
-	/**
-	 * The current number of listeners.
-	 * Maintains invariant: 0 <= fSize <= listeners.length.
-	 */
-	private int fSize;
-
-	/**
-	 * The list of listeners.  Initially <code>null</code> but initialized
-	 * to an array of size capacity the first time a listener is added.
-	 * Maintains invariant: listeners != null if and only if fSize != 0
-	 */
-	private Object[] fListeners= null;
-
-	/**
-	 * The empty array singleton instance, returned by getListeners()
-	 * when size == 0.
-	 */
-	private static final Object[] EmptyArray= new Object[0];
-
-	/**
-	 * Creates a listener list with the given initial capacity.
-	 *
-	 * @param capacity the number of listeners which this list can initially accept 
-	 *    without growing its internal representation; must be at least 1
-	 */
-	public ListenerList(int capacity) {
-		if (capacity < 1) {
-			throw new IllegalArgumentException();
-		}
-		fListeners= new Object[capacity];
-		fSize= 0;
-	}
-
-	/**
-	 * Adds a listener to the list.
-	 * Has no effect if an identical listener is already registered.
-	 *
-	 * @param listener a listener
-	 */
-	public synchronized void add(Object listener) {
-		if (listener == null) {
-			throw new IllegalArgumentException();
-		}
-		// check for duplicates using identity
-		for (int i= 0; i < fSize; ++i) {
-			if (fListeners[i] == listener) {
-				return;
-			}
-		}
-		// grow array if necessary
-		if (fSize == fListeners.length) {
-			Object[] temp= new Object[(fSize * 2) + 1];
-			System.arraycopy(fListeners, 0, temp, 0, fSize);
-			fListeners= temp;
-		}
-		fListeners[fSize++]= listener;
-	}
-
-	/**
-	 * Returns an array containing all the registered listeners.
-	 * The resulting array is unaffected by subsequent adds or removes.
-	 * If there are no listeners registered, the result is an empty array
-	 * singleton instance (no garbage is created).
-	 * Use this method when notifying listeners, so that any modifications
-	 * to the listener list during the notification will have no effect on the
-	 * notification itself.
-	 */
-	public synchronized Object[] getListeners() {
-		if (fSize == 0) {
-			return EmptyArray;
-		}
-		Object[] result= new Object[fSize];
-		System.arraycopy(fListeners, 0, result, 0, fSize);
-		return result;
-	}
-
-	/**
-	 * Removes a listener from the list.
-	 * Has no effect if an identical listener was not already registered.
-	 *
-	 * @param listener a listener
-	 */
-	public synchronized void remove(Object listener) {
-		if (listener == null) {
-			throw new IllegalArgumentException();
-		}
-
-		for (int i= 0; i < fSize; ++i) {
-			if (fListeners[i] == listener) {
-				if (--fSize == 0) {
-					fListeners= new Object[1];
-				} else {
-					if (i < fSize) {
-						fListeners[i]= fListeners[fSize];
-					}
-					fListeners[fSize]= null;
-				}
-				return;
-			}
-		}
-	}
-
-	/**
-	 * Removes all the listeners from the list.
-	 */
-	public void removeAll() {
-		fListeners= new Object[0];
-		fSize= 0;
-	}
-
-	/**
-	 * Returns the number of registered listeners
-	 *
-	 * @return the number of registered listeners
-	 */
-	public int size() {
-		return fSize;
-	}
-}
-
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java
deleted file mode 100644
index 9a8e5df..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringSubstitutionEngine.java
+++ /dev/null
@@ -1,291 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.internal.variables;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Stack;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.variables.IDynamicVariable;
-import org.eclipse.core.variables.IStringVariableManager;
-import org.eclipse.core.variables.IValueVariable;
-import org.eclipse.core.variables.VariablesPlugin;
-
-/**
- * Performs string substitution for context and value variables.
- */
-public class StringSubstitutionEngine {
-	
-	// delimiters
-	private static final String VARIABLE_START = "${"; //$NON-NLS-1$
-	private static final char VARIABLE_END = '}'; //$NON-NLS-1$
-	private static final char VARIABLE_ARG = ':'; //$NON-NLS-1$
-	// parsing states
-	private static final int SCAN_FOR_START = 0;
-	private static final int SCAN_FOR_END = 1;
-	
-	/**
-	 * Resulting string
-	 */
-	private StringBuffer fResult;
-	
-	/**
-	 * Whether substitutions were performed
-	 */
-	private boolean fSubs;
-	
-	/**
-	 * Stack of variables to resolve
-	 */
-	private Stack fStack;
-	
-	class VariableReference {
-		
-		// the text inside the variable reference
-		private StringBuffer fText;
-		
-		public VariableReference() {
-			fText = new StringBuffer();
-		}
-		
-		public void append(String text) {
-			fText.append(text);
-		}
-		
-		public String getText() {
-			return fText.toString();
-		}
-	
-	}
-	
-	/**
-	 * Performs recursive string substitution and returns the resulting string.
-	 * 
-	 * @param expression expression to resolve
-	 * @param reportUndefinedVariables whether to report undefined variables as an error
-	 * @param manager registry of variables
-	 * @return the resulting string with all variables recursively
-	 *  substituted
-	 * @exception CoreException if unable to resolve a referenced variable or if a cycle exists
-	 *  in referenced variables
-	 */
-	public String performStringSubstitution(String expression, boolean reportUndefinedVariables, boolean resolveVariables, IStringVariableManager manager) throws CoreException {
-		substitute(expression, reportUndefinedVariables, resolveVariables, manager);
-		List resolvedVariableSets = new ArrayList();
-		while (fSubs) {
-			HashSet resolved = substitute(fResult.toString(), reportUndefinedVariables, true, manager);			
-			
-			for(int i=resolvedVariableSets.size()-1; i>=0; i--) {
-				
-				HashSet prevSet = (HashSet)resolvedVariableSets.get(i);
-
-				if (prevSet.equals(resolved)) {
-					HashSet conflictingSet = new HashSet();
-					for (; i<resolvedVariableSets.size(); i++)
-						conflictingSet.addAll((HashSet)resolvedVariableSets.get(i));
-					
-					StringBuffer problemVariableList = new StringBuffer();
-					for (Iterator it=conflictingSet.iterator(); it.hasNext(); ) {
-						problemVariableList.append(it.next().toString());
-						problemVariableList.append(", "); //$NON-NLS-1$
-					}
-					problemVariableList.setLength(problemVariableList.length()-2); //truncate the last ", "
-					throw new CoreException(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.REFERENCE_CYCLE_ERROR, MessageFormat.format(VariablesMessages.StringSubstitutionEngine_4, new String[]{problemVariableList.toString()}), null)); //$NON-NLS-1$
-				}				
-			}		
-			
-			resolvedVariableSets.add(resolved);			
-		}
-		return fResult.toString();
-	}
-	
-	/**
-	 * Performs recursive string validation to ensure that all of the variables
-	 * contained in the expression exist
-	 * @param expression expression to validate
-	 * @param manager registry of variables
-	 * @exception CoreException if a referenced variable does not exist or if a cycle exists
-	 *  in referenced variables
-	 */
-	public void validateStringVariables(String expression, IStringVariableManager manager) throws CoreException {
-		performStringSubstitution(expression, true, false, manager);
-	}
-	
-	/**
-	 * Makes a substitution pass of the given expression returns a Set of the variables that were resolved in this
-	 *  pass
-	 *  
-	 * @param expression source expression
-	 * @param reportUndefinedVariables whether to report undefined variables as an error
-	 * @param resolveVariables whether to resolve the value of any variables
-	 * @exception CoreException if unable to resolve a variable
-	 */
-	private HashSet substitute(String expression, boolean reportUndefinedVariables, boolean resolveVariables, IStringVariableManager manager) throws CoreException {
-		fResult = new StringBuffer(expression.length());
-		fStack = new Stack();
-		fSubs = false;
-		
-		HashSet resolvedVariables = new HashSet();
-
-		int pos = 0;
-		int state = SCAN_FOR_START;
-		while (pos < expression.length()) {
-			switch (state) {
-				case SCAN_FOR_START:
-					int start = expression.indexOf(VARIABLE_START, pos);
-					if (start >= 0) {
-						int length = start - pos;
-						// copy non-variable text to the result
-						if (length > 0) {
-							fResult.append(expression.substring(pos, start));
-						}
-						pos = start + 2;
-						state = SCAN_FOR_END;
-
-						fStack.push(new VariableReference());						
-					} else {
-						// done - no more variables
-						fResult.append(expression.substring(pos));
-						pos = expression.length();
-					}
-					break;
-				case SCAN_FOR_END:
-					// be careful of nested variables
-					start = expression.indexOf(VARIABLE_START, pos);
-					int end = expression.indexOf(VARIABLE_END, pos);
-					if (end < 0) {
-						// variables are not completed
-						VariableReference tos = (VariableReference)fStack.peek();
-						tos.append(expression.substring(pos));
-						pos = expression.length();
-					} else {
-						if (start >= 0 && start < end) {
-							// start of a nested variable
-							int length = start - pos;
-							if (length > 0) {
-								VariableReference tos = (VariableReference)fStack.peek();
-								tos.append(expression.substring(pos, start));
-							}
-							pos = start + 2;
-							fStack.push(new VariableReference());	
-						} else {
-							// end of variable reference
-							VariableReference tos = (VariableReference)fStack.pop();
-							String substring = expression.substring(pos, end);							
-							tos.append(substring);
-							resolvedVariables.add(substring);
-							
-							pos = end + 1;
-							String value= resolve(tos, reportUndefinedVariables, resolveVariables, manager);
-							if (value == null) {
-								value = ""; //$NON-NLS-1$
-							}
-							if (fStack.isEmpty()) {
-								// append to result
-								fResult.append(value);
-								state = SCAN_FOR_START;
-							} else {
-								// append to previous variable
-								tos = (VariableReference)fStack.peek();
-								tos.append(value);
-							}
-						}
-					}
-					break;
-			}
-		}
-		// process incomplete variable references
-		while (!fStack.isEmpty()) {
-			VariableReference tos = (VariableReference)fStack.pop();
-			if (fStack.isEmpty()) {
-				fResult.append(VARIABLE_START);
-				fResult.append(tos.getText());
-			} else {
-				VariableReference var = (VariableReference)fStack.peek();
-				var.append(VARIABLE_START);
-				var.append(tos.getText());
-			}
-		}
-		
-
-		return resolvedVariables;
-	}
-
-	/**
-	 * Resolve and return the value of the given variable reference,
-	 * possibly <code>null</code>. 
-	 * 
-	 * @param var
-	 * @param reportUndefinedVariables whether to report undefined variables as
-	 *  an error
-	 * @param resolveVariables whether to resolve the variables value or just to validate that this variable is valid
-	 * @param manager variable registry
-	 * @return variable value, possibly <code>null</code>
-	 * @exception CoreException if unable to resolve a value
-	 */
-	private String resolve(VariableReference var, boolean reportUndefinedVariables, boolean resolveVariables, IStringVariableManager manager) throws CoreException {
-		String text = var.getText();
-		int pos = text.indexOf(VARIABLE_ARG);
-		String name = null;
-		String arg = null;
-		if (pos > 0) {
-			name = text.substring(0, pos);
-			pos++;
-			if (pos < text.length()) {
-				arg = text.substring(pos);
-			} 
-		} else {
-			name = text;
-		}
-		IValueVariable valueVariable = manager.getValueVariable(name);
-		if (valueVariable == null) {
-			IDynamicVariable dynamicVariable = manager.getDynamicVariable(name);
-			if (dynamicVariable == null) {
-				// no variables with the given name
-				if (reportUndefinedVariables) {
-					throw new CoreException(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, MessageFormat.format(VariablesMessages.StringSubstitutionEngine_3, new String[]{name}), null)); //$NON-NLS-1$
-				} 
-				// leave as is
-				return getOriginalVarText(var);
-			} 
-			
-			if (resolveVariables) {
-				fSubs = true;
-				return dynamicVariable.getValue(arg);
-			} 
-			//leave as is
-			return getOriginalVarText(var);
-		} 
-		
-		if (arg == null) {
-			if (resolveVariables) {
-				fSubs = true;
-				return valueVariable.getValue();
-			} 
-			//leave as is
-			return getOriginalVarText(var);
-		} 
-		// error - an argument specified for a value variable
-		throw new CoreException(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, MessageFormat.format(VariablesMessages.StringSubstitutionEngine_4, new String[]{valueVariable.getName()}), null)); //$NON-NLS-1$
-	}
-
-	private String getOriginalVarText(VariableReference var) {
-		StringBuffer res = new StringBuffer(var.getText());
-		res.insert(0, VARIABLE_START);
-		res.append(VARIABLE_END);
-		return res.toString();
-	}
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariable.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariable.java
deleted file mode 100644
index 27d7d61..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariable.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.internal.variables;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.variables.IStringVariable;
-
-/**
- * Common implementation of context and value variables
- */
-public abstract class StringVariable implements IStringVariable {
-	
-	/**
-	 * Variable name
-	 */
-	private String fName;
-	
-	/**
-	 * Variable description, or <code>null</code>
-	 */
-	private String fDescription;
-	
-	/**
-	 * Configuration element associated with this variable, or <code>null</code>
-	 */
-	private IConfigurationElement fConfigurationElement;
-
-	/**
-	 * Constructs a new variable with the given name and description.
-	 * 
-	 * @param name variable name
-	 * @param description variable description, or <code>null</code>
-	 */
-	public StringVariable(String name, String description, IConfigurationElement configurationElement) {
-		fName = name;
-		fDescription = description;
-		fConfigurationElement = configurationElement;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariable#getName()
-	 */
-	public String getName() {
-		return fName;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariable#getDescription()
-	 */
-	public String getDescription() {
-		return fDescription;
-	}
-	
-	/**
-	 * Returns the configuration element associated with this variable, or <code>null</code>
-	 * if none.
-	 * 
-	 * @return configuration element or <code>null</code>
-	 */
-	protected IConfigurationElement getConfigurationElement() {
-		return fConfigurationElement;
-	}
-	
-	/**
-	 * @see IValueVariable#setDescription(String)
-	 * @param description
-	 */
-	public void setDescription(String description) {
-		fDescription = description;
-	}
-
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java
deleted file mode 100644
index cf3698c..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/StringVariableManager.java
+++ /dev/null
@@ -1,570 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.internal.variables;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.FactoryConfigurationError;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.variables.IDynamicVariable;
-import org.eclipse.core.variables.IStringVariable;
-import org.eclipse.core.variables.IStringVariableManager;
-import org.eclipse.core.variables.IValueVariable;
-import org.eclipse.core.variables.IValueVariableListener;
-import org.eclipse.core.variables.VariablesPlugin;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-/**
- * Singleton string variable manager. 
- */
-public class StringVariableManager implements IStringVariableManager {
-	
-	/**
-	 * Dynamic variables - maps variable names to variables.
-	 */
-	private Map fDynamicVariables;
-	
-	/**
-	 * Value varialbes - maps variable names to variables.
-	 */
-	private Map fValueVariables;
-	
-	/**
-	 * Variable listeners
-	 */
-	private ListenerList fListeners;
-	
-	// notifications
-	private static final int ADDED = 0;
-	private static final int CHANGED = 1;
-	private static final int REMOVED = 2;
-	
-	/**
-	 * Singleton variable manager.
-	 */
-	private static StringVariableManager fgManager; 
-	
-	// true during initialization code - supress change notification
-	private boolean fInitializing = false;
-	
-	// Variable extension point constants
-	private static final String ATTR_NAME= "name"; //$NON-NLS-1$
-	private static final String ATTR_DESCRIPTION="description"; //$NON-NLS-1$	
-	// Persisted variable XML constants
-	private static final String VALUE_VARIABLES_TAG= "valueVariables"; //$NON-NLS-1$
-	private static final String VALUE_VARIABLE_TAG= "valueVariable"; //$NON-NLS-1$
-	private static final String NAME_TAG= "name"; //$NON-NLS-1$
-	private static final String VALUE_TAG= "value"; //$NON-NLS-1$
-	private static final String DESCRIPTION_TAG="description"; //$NON-NLS-1$
-	private static final String INITIALIZED_TAG="contributed"; //$NON-NLS-1$
-	// XML values
-	private static final String TRUE_VALUE= "true"; //$NON-NLS-1$
-	private static final String FALSE_VALUE= "false"; //$NON-NLS-1$
-	// preference store key for value variables
-	private static final String PREF_VALUE_VARIABLES= VariablesPlugin.getUniqueIdentifier() + ".valueVariables"; //$NON-NLS-1$	
-		
-	/**
-	 * Notifies a string variable listener in a safe runnable to handle
-	 * exceptions.
-	 */
-	class StringVariableNotifier implements ISafeRunnable {
-		
-		private IValueVariableListener fListener;
-		private int fType;
-		private IValueVariable[] fVariables;
-		
-		/**
-		 * @see org.eclipse.core.runtime.ISafeRunnable#handleException(java.lang.Throwable)
-		 */
-		public void handleException(Throwable exception) {
-			IStatus status = new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, "An exception occurred during string variable change notification", exception); //$NON-NLS-1$
-			VariablesPlugin.log(status);
-		}
-
-		/**
-		 * @see org.eclipse.core.runtime.ISafeRunnable#run()
-		 */
-		public void run() throws Exception {
-			switch (fType) {
-				case ADDED:
-					fListener.variablesAdded(fVariables);
-					break;
-				case REMOVED:
-					fListener.variablesRemoved(fVariables);
-					break;
-				case CHANGED:
-					fListener.variablesChanged(fVariables);
-					break;
-			}			
-		}
-
-		/**
-		 * Notifies the given listener of the add/change/remove
-		 * 
-		 * @param listener the listener to notify
-		 * @param launch the launch that has changed
-		 * @param update the type of change
-		 */
-		public void notify(IValueVariable[] variables, int update) {
-			fVariables = variables;
-			fType = update;
-			Object[] copiedListeners= fListeners.getListeners();
-			for (int i= 0; i < copiedListeners.length; i++) {
-				fListener = (IValueVariableListener)copiedListeners[i];
-				Platform.run(this);
-			}	
-			fVariables = null;
-			fListener = null;
-			// persist variables whenever there is an add/change/remove	
-			storeValueVariables();	
-		}
-	}	
-	
-	/**
-	 * Returns a new notifier.
-	 * 
-	 * @return a new notifier
-	 */
-	private StringVariableNotifier getNotifier() {
-		return new StringVariableNotifier();
-	}
-	
-	/**
-	 * Returns the default string variable manager
-	 * 
-	 * @return string variable manager
-	 */
-	public static StringVariableManager getDefault() {
-		if (fgManager == null) {
-			fgManager = new StringVariableManager();
-		}
-		return fgManager;
-	}
-	
-	/**
-	 * Constructs a new string variable manager. 
-	 */
-	private StringVariableManager() {
-		fListeners = new ListenerList(5);
-	}	
-
-	/**
-	 * Load contributed variables and persisted variables
-	 */
-	private void initialize() {
-		if (fDynamicVariables == null) {
-			fInitializing = true;
-			fDynamicVariables = new HashMap(5);
-			fValueVariables = new HashMap(5);
-			loadPersistedValueVariables();
-			loadContributedValueVariables();
-			loadDynamicVariables();
-			fInitializing = false;
-		}
-	}
-	
-	/**
-	 * Loads contributed dynamic variables
-	 */
-	private void loadDynamicVariables() {
-		IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(VariablesPlugin.PI_CORE_VARIABLES, EXTENSION_POINT_DYNAMIC_VARIABLES);
-		IConfigurationElement elements[]= point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			IConfigurationElement element = elements[i];
-			String name= element.getAttribute(ATTR_NAME);
-			if (name == null) {
-				VariablesPlugin.logMessage(MessageFormat.format("Variable extension missing required 'name' attribute: {0}", new String[] {element.getDeclaringExtension().getLabel()}), null); //$NON-NLS-1$
-				continue;
-			}
-			String description= element.getAttribute(ATTR_DESCRIPTION);
-			DynamicVariable variable= new DynamicVariable(name, description, element);
-			fDynamicVariables.put(variable.getName(), variable);
-		}
-	}
-
-	/**
-	 * Loads any persisted value varialbes from the preference store.
-	 */
-	private void loadPersistedValueVariables() {
-		String variablesString= VariablesPlugin.getDefault().getPluginPreferences().getString(PREF_VALUE_VARIABLES);
-		if (variablesString.length() == 0) {
-			return;
-		}
-		Element root= null;
-		Throwable ex = null;
-		try {
-			ByteArrayInputStream stream = new ByteArrayInputStream(variablesString.getBytes("UTF-8")); //$NON-NLS-1$
-			DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
-			parser.setErrorHandler(new DefaultHandler());
-			root = parser.parse(stream).getDocumentElement();
-		} catch (UnsupportedEncodingException e) {
-			ex = e;
-		} catch (ParserConfigurationException e) {
-			ex = e;
-		} catch (FactoryConfigurationError e) {
-			ex = e;
-		} catch (SAXException e) {
-			ex = e;
-		} catch (IOException e) {
-			ex = e;
-		}
-		if (ex != null) {
-			VariablesPlugin.logMessage("An exception occurred while loading persisted value variables.", ex); //$NON-NLS-1$
-			return;
-		}
-		if (!root.getNodeName().equals(VALUE_VARIABLES_TAG)) {
-			VariablesPlugin.logMessage("Invalid format encountered while loading persisted value variables.", null); //$NON-NLS-1$
-			return;
-		}
-		NodeList list= root.getChildNodes();
-		for (int i= 0, numItems= list.getLength(); i < numItems; i++) {
-			Node node= list.item(i);
-			if (node.getNodeType() == Node.ELEMENT_NODE) {
-				Element element= (Element) node;
-				if (!element.getNodeName().equals(VALUE_VARIABLE_TAG)) {
-					VariablesPlugin.logMessage(MessageFormat.format("Invalid XML element encountered while loading value variables: {0}", new String[] {node.getNodeName()}), null); //$NON-NLS-1$
-					continue;
-				}
-				String name= element.getAttribute(NAME_TAG);
-				if (name.length() > 0) {
-					String value= element.getAttribute(VALUE_TAG);
-					String description= element.getAttribute(DESCRIPTION_TAG);
-					boolean initialized= TRUE_VALUE.equals(element.getAttribute(INITIALIZED_TAG));
-					ValueVariable variable= new ValueVariable(name, description, null);
-					if (initialized) {
-						variable.setValue(value);
-					}
-					fValueVariables.put(name, variable);
-				} else {
-					VariablesPlugin.logMessage("Invalid variable entry encountered while loading value variables. Variable name is null.", null); //$NON-NLS-1$
-				}
-			}
-		}		
-	}
-
-	/**
-	 * Loads contributed value variables. This is done after the persisted value
-	 * varaibles are restored. Any contributed variables with the same name are
-	 * merged with existing persisted values.
-	 */
-	private void loadContributedValueVariables() {
-		IExtensionPoint point = Platform.getExtensionRegistry().getExtensionPoint(VariablesPlugin.PI_CORE_VARIABLES, EXTENSION_POINT_VALUE_VARIABLES);
-		IConfigurationElement elements[]= point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			IConfigurationElement element = elements[i];
-			String name= element.getAttribute(ATTR_NAME);
-			if (name == null) {
-				VariablesPlugin.logMessage(MessageFormat.format("Variable extension missing required 'name' attribute: {0}", new String[] {element.getDeclaringExtension().getLabel()}), null); //$NON-NLS-1$
-				continue;
-			}
-			String description= element.getAttribute(ATTR_DESCRIPTION);
-			ValueVariable variable= new ValueVariable(name, description, element);
-			// if already present, merge with persisted value
-			ValueVariable existing = (ValueVariable)getValueVariable(name);
-			if (existing != null) {
-				if (existing.isInitialized()) {
-					variable.setValue(existing.getValue());
-				}					
-			}
-			fValueVariables.put(variable.getName(), variable);
-		}		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#getVariables()
-	 */
-	public IStringVariable[] getVariables() {
-		initialize();
-		List list = new ArrayList(fDynamicVariables.size() + fValueVariables.size());
-		list.addAll(fDynamicVariables.values());
-		list.addAll(fValueVariables.values());
-		return (IStringVariable[]) list.toArray(new IStringVariable[list.size()]);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#getValueVariables()
-	 */
-	public IValueVariable[] getValueVariables() {
-		initialize();
-		return (IValueVariable[]) fValueVariables.values().toArray(new IValueVariable[fValueVariables.size()]);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#getDynamicVariables()
-	 */
-	public IDynamicVariable[] getDynamicVariables() {
-		initialize();
-		return (IDynamicVariable[]) fDynamicVariables.values().toArray(new IDynamicVariable[fDynamicVariables.size()]);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#performStringSubstitution(java.lang.String)
-	 */
-	public String performStringSubstitution(String expression) throws CoreException {
-		return performStringSubstitution(expression, true);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#newValueVariable(java.lang.String, java.lang.String)
-	 */
-	public IValueVariable newValueVariable(String name, String description) {
-		IConfigurationElement element = null;
-		ValueVariable existing = (ValueVariable)getValueVariable(name);
-		if (existing != null && existing.isContributed()) {
-			element = existing.getConfigurationElement();
-		}
-		return new ValueVariable(name, description, element);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#addVariables(org.eclipse.debug.internal.core.stringsubstitution.IValueVariable[])
-	 */
-	public void addVariables(IValueVariable[] variables) throws CoreException {
-		initialize();
-		MultiStatus status = new MultiStatus(VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, VariablesMessages.StringVariableManager_26, null); //$NON-NLS-1$
-		for (int i = 0; i < variables.length; i++) {
-			IValueVariable variable = variables[i];
-			if (getValueVariable(variable.getName()) != null) {
-				status.add(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), VariablesPlugin.INTERNAL_ERROR, MessageFormat.format(VariablesMessages.StringVariableManager_27, new String[]{variable.getName()}), null)); //$NON-NLS-1$
-			}			
-		}
-		if (status.isOK()) {
-			for (int i = 0; i < variables.length; i++) {
-				IValueVariable variable = variables[i];
-				fValueVariables.put(variable.getName(), variable);
-			}
-			IValueVariable[] copy = new IValueVariable[variables.length];
-			System.arraycopy(variables, 0, copy, 0, variables.length);
-			getNotifier().notify(copy, ADDED);
-			return;
-		}
-		throw new CoreException(status);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#removeVariables(org.eclipse.debug.internal.core.stringsubstitution.IValueVariable[])
-	 */
-	public void removeVariables(IValueVariable[] variables) {
-		initialize();
-		List removed = new ArrayList(variables.length);
-		for (int i = 0; i < variables.length; i++) {
-			IValueVariable variable = variables[i];
-			if (fValueVariables.remove(variable.getName()) != null) {
-				removed.add(variable);
-			}
-		}
-		if (removed.size() > 0) {
-			getNotifier().notify((IValueVariable[])removed.toArray(new IValueVariable[removed.size()]), REMOVED);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#getDynamicVariable(java.lang.String)
-	 */
-	public IDynamicVariable getDynamicVariable(String name) {
-		initialize();
-		return (IDynamicVariable) fDynamicVariables.get(name);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#getValueVariable(java.lang.String)
-	 */
-	public IValueVariable getValueVariable(String name) {
-		initialize();
-		return (IValueVariable) fValueVariables.get(name);
-	}
-
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#addValueVariableListener(org.eclipse.debug.internal.core.stringsubstitution.IValueVariableListener)
-	 */
-	public void addValueVariableListener(IValueVariableListener listener) {
-		fListeners.add(listener);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#removeValueVariableListener(org.eclipse.debug.internal.core.stringsubstitution.IValueVariableListener)
-	 */
-	public void removeValueVariableListener(IValueVariableListener listener) {
-		fListeners.remove(listener);
-	}
-	
-	/**
-	 * Returns a memento representing the value variables currently registered.
-	 * 
-	 * @return memento representing the value variables currently registered
-	 * @throws IOException if an I/O exception occurs while creating the XML.
-	 */
-	private String getValueVariablesAsXML() throws IOException, ParserConfigurationException, TransformerException {
-		IValueVariable[] variables = getValueVariables();
-
-		Document document= getDocument();
-		Element rootElement= document.createElement(VALUE_VARIABLES_TAG);
-		document.appendChild(rootElement);
-		for (int i = 0; i < variables.length; i++) {
-			ValueVariable variable = (ValueVariable)variables[i];
-			Element element= document.createElement(VALUE_VARIABLE_TAG);
-			element.setAttribute(NAME_TAG, variable.getName());
-			String value= variable.getValue();
-			if (value != null) {
-				element.setAttribute(VALUE_TAG, value);
-			}
-			String description= variable.getDescription();
-			if (description != null) {
-				element.setAttribute(DESCRIPTION_TAG, description);
-			}
-			element.setAttribute(INITIALIZED_TAG, variable.isInitialized() ? TRUE_VALUE : FALSE_VALUE);
-			rootElement.appendChild(element);
-		}
-		return serializeDocument(document);
-	}
-	
-	private Document getDocument() throws ParserConfigurationException {
-		DocumentBuilderFactory dfactory = DocumentBuilderFactory.newInstance();
-		DocumentBuilder docBuilder = dfactory.newDocumentBuilder();
-		Document doc =docBuilder.newDocument();
-		return doc;
-	}
-	
-	/**
-	 * Serializes a XML document into a string - encoded in UTF8 format,
-	 * with platform line separators.
-	 * 
-	 * @param doc document to serialize
-	 * @return the document as a string
-	 * @throws TransformerException if an unrecoverable error occurs during the serialization
-	 * @throws IOException if the encoding attempted to be used is not supported
-	 */
-	private String serializeDocument(Document doc) throws TransformerException, UnsupportedEncodingException {
-		ByteArrayOutputStream s= new ByteArrayOutputStream();
-		
-		TransformerFactory factory= TransformerFactory.newInstance();
-		Transformer transformer= factory.newTransformer();
-		transformer.setOutputProperty(OutputKeys.METHOD, "xml"); //$NON-NLS-1$
-		transformer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$
-		
-		DOMSource source= new DOMSource(doc);
-		StreamResult outputTarget= new StreamResult(s);
-		transformer.transform(source, outputTarget);
-		
-		return s.toString("UTF8"); //$NON-NLS-1$			
-	}
-	
-	/**
-	 * Saves the value variables currently registered in the
-	 * preference store. 
-	 */
-	private void storeValueVariables() {
-		Preferences prefs= VariablesPlugin.getDefault().getPluginPreferences();
-		String variableString= ""; //$NON-NLS-1$
-		if (!fValueVariables.isEmpty()) {
-			try {
-				variableString= getValueVariablesAsXML();
-			} catch (IOException e) {
-				VariablesPlugin.log(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), IStatus.ERROR, "An exception occurred while storing launch configuration variables.", e)); //$NON-NLS-1$
-				return;
-			} catch (ParserConfigurationException e) {
-				VariablesPlugin.log(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), IStatus.ERROR, "An exception occurred while storing launch configuration variables.", e)); //$NON-NLS-1$
-				return;
-			} catch (TransformerException e) {
-				VariablesPlugin.log(new Status(IStatus.ERROR, VariablesPlugin.getUniqueIdentifier(), IStatus.ERROR, "An exception occurred while storing launch configuration variables.", e)); //$NON-NLS-1$
-				return;
-			}
-		}
-		prefs.setValue(PREF_VALUE_VARIABLES, variableString);
-		VariablesPlugin.getDefault().savePluginPreferences();
-	}
-
-	/**
-	 * Fire a change notification for the given variable.
-	 * 
-	 * @param variable the variable that has changed
-	 */
-	protected void notifyChanged(ValueVariable variable) {
-		if (!fInitializing) {
-			IValueVariable existing = getValueVariable(variable.getName());
-			if (variable.equals(existing)) {
-				// do not do change notification for unregistered variables
-				getNotifier().notify(new IValueVariable[]{variable}, CHANGED);
-			}
-		}
-	}	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#generateVariableExpression(java.lang.String, java.lang.String)
-	 */
-	public String generateVariableExpression(String varName, String arg) {
-		StringBuffer buffer = new StringBuffer();
-		buffer.append("${"); //$NON-NLS-1$
-		buffer.append(varName);
-		if (arg != null) {
-			buffer.append(":"); //$NON-NLS-1$
-			buffer.append(arg);
-		}
-		buffer.append("}"); //$NON-NLS-1$
-		return buffer.toString();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IStringVariableManager#performStringSubstitution(java.lang.String, boolean)
-	 */
-	public String performStringSubstitution(String expression,	boolean reportUndefinedVariables) throws CoreException {
-		return new StringSubstitutionEngine().performStringSubstitution(expression, reportUndefinedVariables, true, this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.variables.IStringVariableManager#validateStringVariables(java.lang.String)
-	 */
-	public void validateStringVariables(String expression) throws CoreException {
-		new StringSubstitutionEngine().validateStringVariables(expression, this);
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.variables.IStringVariableManager#getContributingPluginId(org.eclipse.core.variables.IStringVariable)
-     */
-    public String getContributingPluginId(IStringVariable variable) {
-        if (variable instanceof StringVariable) {
-            return ((StringVariable) variable).getConfigurationElement().getNamespace();
-        }
-        return null;
-    }
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ValueVariable.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ValueVariable.java
deleted file mode 100644
index bfc3c32..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/ValueVariable.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.internal.variables;
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.variables.IValueVariable;
-import org.eclipse.core.variables.IValueVariableInitializer;
-import org.eclipse.core.variables.VariablesPlugin;
-
-/**
- * Implementation of a value variable.
- */
-public class ValueVariable extends StringVariable implements IValueVariable {
-	
-	/**
-	 * Variable value or <code>null</code> if none 
-	 */
-	private String fValue;
-	
-	/**
-	 * Whether this variable's value has been initialized
-	 */
-	private boolean fInitialized = false;
-	
-	/**
-	 * Constructs a new value variable with the given name, description, and
-	 * associated configuration element.
-	 * 
-	 * @param name variable name
-	 * @param description variable description, or <code>null</code>
-	 * @param configurationElement configuration element or <code>null</code>
-	 */
-	public ValueVariable(String name, String description, IConfigurationElement configurationElement) {
-		super(name, description, configurationElement);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IValueVariable#setValue(java.lang.String)
-	 */
-	public void setValue(String value) {
-		fValue = value;
-		setInitialized(true);
-		StringVariableManager.getDefault().notifyChanged(this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IValueVariable#getValue()
-	 */
-	public String getValue() {
-		if (!isInitialized()) {
-			initialize();
-		}
-		return fValue;
-	}
-
-	/**
-	 * Initialize this variable's value.
-	 */
-	private void initialize() {
-		if (getConfigurationElement() != null) {
-			// check for a explicit value specified in plug-in XML
-			String value = getConfigurationElement().getAttribute("initialValue"); //$NON-NLS-1$
-			if (value == null) {
-				// check for initializer
-				String className = getConfigurationElement().getAttribute("initializerClass"); //$NON-NLS-1$
-				if (className != null) {
-					try {
-						Object object = getConfigurationElement().createExecutableExtension("initializerClass"); //$NON-NLS-1$
-						if (object instanceof IValueVariableInitializer) {
-							IValueVariableInitializer initializer = (IValueVariableInitializer)object;
-							initializer.initialize(this);
-						} else {
-							VariablesPlugin.logMessage(MessageFormat.format("Unable to initialize variable {0} - initializer must be an instance of IValueVariableInitializer.", new String[]{getName()}), null); //$NON-NLS-1$
-						}
-					} catch (CoreException e) {
-						VariablesPlugin.logMessage(MessageFormat.format("Unable to initialize variable {0}",new String[]{getName()}), e); //$NON-NLS-1$
-					}
-				}
-			} else {
-				setValue(value);
-			}
-		}
-		setInitialized(true);
-	}
-
-	/**
-	 * Returns whether this variable has been initialized with a value by one of:
-	 * <ul>
-	 * <li><code>setValue(String)</code></li>
-	 * <li>its configuration element's <code>initialValue</code> attribute</li>
-	 * <li>its configuration element's initializer</li>
-	 * </ul>
-	 * @return whether this variable has been initialized with a value
-	 */	
-	protected boolean isInitialized() {
-		return fInitialized;
-	} 
-	
-	/**
-	 * Sets whether this variable has been initialized with a value.
-	 *  
-	 * @param initialized whether this variable has been initialized
-	 */
-	protected void setInitialized(boolean initialized) {
-		fInitialized = initialized;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IValueVariable#isContributed()
-	 */
-	public boolean isContributed() {
-		return getConfigurationElement() != null;
-	}
-
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.java b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.java
deleted file mode 100644
index 27378a6..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.core.internal.variables;
-
-import org.eclipse.osgi.util.NLS;
-
-public class VariablesMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.core.internal.variables.VariablesMessages";//$NON-NLS-1$
-	//
-	// Copyright (c) 2000, 2005 IBM Corporation and others.
-	// All rights reserved. This program and the accompanying materials
-	// are made available under the terms of the Eclipse Public License v1.0
-	// which accompanies this distribution, and is available at
-	// http://www.eclipse.org/legal/epl-v10.html
-	//
-	// Contributors:
-	//     IBM Corporation - initial API and implementation
-	//
-
-	public static String StringSubstitutionEngine_3;
-	public static String StringSubstitutionEngine_4;
-
-	public static String StringVariableManager_26;
-	public static String StringVariableManager_27;
-
-	public static String DynamicVariable_0;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, VariablesMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.properties b/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.properties
deleted file mode 100644
index af64c6e..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/internal/variables/VariablesMessages.properties
+++ /dev/null
@@ -1,18 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2005 IBM Corporation and others.

-# All rights reserved. This program and the accompanying materials

-# are made available under the terms of the Eclipse Public License v1.0

-# which accompanies this distribution, and is available at

-# http://www.eclipse.org/legal/epl-v10.html

-#

-# Contributors:

-#     IBM Corporation - initial API and implementation

-###############################################################################

-

-StringSubstitutionEngine_3=Reference to undefined variable {0}

-StringSubstitutionEngine_4=Variable {0} does not accept arguments

-

-StringVariableManager_26=Variables with the specified names are already registered.

-StringVariableManager_27=Variable named {0} already registered

-

-DynamicVariable_0=Unsupported argument {0} specified for variable {1}

diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariable.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariable.java
deleted file mode 100644
index 9bdda6e..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariable.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.variables;
-
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * A dynamic variable is a variable whose value is computed dynamically
- * by a resolver at the time a string substitution is performed. A dynamic
- * variable is contributed by an extension.
- * <p>
- * The following is a definition of a dynamic variable that resolves to the name of the selected resource:
- * <pre>
- *  &lt;extension point="org.eclipse.core.variables.dynamicVariables"&gt;
- *    &lt;variable 
- *       name="resource_name"
- *       resolver="com.example.ResourceNameResolver"
- *       description="The name of the selected resource"
- *       supportsArgument="false"&gt;
- *    &lt;/variable&gt;
- *  &lt;/extension&gt;
- * </pre>
- * </p>
- * <p>
- * Clients are not intended to implement this interface. Instead, clients contributing
- * a dynamic variable provide an implementation of {@link org.eclipse.core.variables.IDynamicVariableResolver}.
- * </p>
- * @since 3.0
- */
-public interface IDynamicVariable extends IStringVariable {
-
-	/**
-	 * Returns the value of this variable when referenced with the given
-	 * argument, possibly <code>null</code>.
-	 * 
-	 * @param argument argument present in variable expression or <code>null</code>
-	 *   if none
-	 * @return value of this variable when referenced with the given argument, possibly
-	 *   <code>null</code>
-	 * @throws CoreException if unable to resolve a value for this variable
-	 */
-	public String getValue(String argument) throws CoreException;
-	
-	/**
-	 * Returns whether this variable supports an argument, as specified
-	 * by this variable's extension definition in plug-in XML.
-	 * 
-	 * @return whether this variable supports an argument
-	 */
-	public boolean supportsArgument();
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariableResolver.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariableResolver.java
deleted file mode 100644
index b5cefaa..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/IDynamicVariableResolver.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.variables;
-
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * Resolves the value for a dynamic variable. A dynamic variable extension
- * contributes a resolver which must implement this interface.
- * <p>
- * Clients contributing a dynamic variable are intended to provide an implementation
- * of this interface.
- * </p>
- * @since 3.0
- */
-public interface IDynamicVariableResolver {
-
-	/**
-	 * Resolves and returns a value for the specified variable when referenced
-	 * with the given argument, possibly <code>null</code>
-	 *  
-	 * @param variable variable to resolve a value for
-	 * @param argument argument present in expression or <code>null</code> if none
-	 * @return variable value, possibly <code>null</code>
-	 * @throws CoreException if unable to resolve a value for the given variable
-	 */
-	public String resolveValue(IDynamicVariable variable, String argument) throws CoreException;
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariable.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariable.java
deleted file mode 100644
index 7c19550..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariable.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.variables;
-
-
-/**
- * A variable that can be referenced in an expression, which resolves to a string
- * value. Variables are referenced in expressions via their name, in the following
- * format.
- * <pre>
- * ${varname} or ${varname:argument}
- * </pre>
- * <p>
- * A variable is identified by its name, and optionally accepts an argument. When an
- * argument is present, a colon seperates the variable name from its argument.
- * </p>
- * <p>
- * Variables can be contributed by extensions or programmatically. There are two
- * kinds of variables.
- * <ul>
- * <li><code>IValueVariable</code> - variables that have a value (with getter and setter), and
- *       accept no arguments. The value of this type of variable is resolved at the time
- *       its value is set via its setter API.</li>
- * <li><code>IDynamicVariable</code> - variables whose value is resolved at the time
- * 		a string substitution is performed by a contributed resolver. Dynamic variables
- * 		may accept an argument.</li>
- * </ul>
- * </p>
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IStringVariable {
-
-	/**
-	 * Returns the name of this variable. A variable is uniquely identified by
-	 * its name.
-	 * 
-	 * @return variable name
-	 */
-	public String getName();
-	
-	/**
-	 * Returns a human readable description of this variable, possibly <code>null</code>
-	 * 
-	 * @return a description of this variable, or <code>null</code> if none
-	 */
-	public String getDescription();
-	
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariableManager.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariableManager.java
deleted file mode 100644
index 1eafd63..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/IStringVariableManager.java
+++ /dev/null
@@ -1,180 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.variables;
-
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * Registry for string variables.
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IStringVariableManager {
-
-	/**
-	 * Simple identifier constant (value <code>"dynamicVariables"</code>) for the
-	 * dynamic variables extension point.
-	 */
-	public static final String EXTENSION_POINT_DYNAMIC_VARIABLES = "dynamicVariables"; //$NON-NLS-1$
-	
-	/**
-	 * Simple identifier constant (value <code>"valueVariables"</code>) for the
-	 * value variables extension point.
-	 */
-	public static final String EXTENSION_POINT_VALUE_VARIABLES = "valueVariables"; //$NON-NLS-1$
-	
-	/**
-	 * Returns all registered variables.
-	 * 
-	 * @return a collection of all registered variables
-	 */
-	public IStringVariable[] getVariables();
-	
-	/**
-	 * Returns all registered value variables.
-	 * 
-	 * @return a collection of all registered value variables
-	 */
-	public IValueVariable[] getValueVariables();
-	
-	/**
-	 * Returns the value variable with the given name, or <code>null</code>
-	 * if none.
-	 * 
-	 * @param name variable name
-	 * @return the value variable with the given name, or <code>null</code>
-	 * if none
-	 */
-	public IValueVariable getValueVariable(String name);
-	
-	/**
-	 * Returns all registered dynamic variables.
-	 * 
-	 * @return a collection of all registered dynamic variables
-	 */
-	public IDynamicVariable[] getDynamicVariables();	
-	
-	/**
-	 * Returns the dynamic variable with the given name or <code>null</code>
-	 * if none.
-	 * 
-	 * @param name variable name
-	 * @return the dynamic variable with the given name or <code>null</code>
-	 * if none
-	 */
-	public IDynamicVariable getDynamicVariable(String name);
-    
-    /**
-     * Returns the plugin identifier of the plugin that contributed the
-     * given variable via extension or <code>null</code> if the given
-     * variable wasn't contributed via extension.
-     * 
-     * @param variable the variable
-     * @return the plugin identifier of the plugin that contributed the
-     *  given variable or <code>null</code>
-     * @since 3.1
-     */
-    public String getContributingPluginId(IStringVariable variable);
-	
-	/**
-	 * Recursively resolves and replaces all variable references in the given
-	 * expression with their corresponding values. Reports errors for references
-	 * to undefined variables (equivalent to calling
-	 * <code>performStringSubstitution(expression, true)</code>).
-	 * 
-	 * @param expression expression referencing variables
-	 * @return expression with variable references replaced with variable values
-	 * @throws CoreException if unable to resolve the value of one or more variables
-	 */
-	public String performStringSubstitution(String expression) throws CoreException;
-	
-	/**
-	 * Recursively resolves and replaces all variable references in the given
-	 * expression with their corresponding values. Allows the client to control
-	 * whether references to undefined variables are reported as an error (i.e.
-	 * an exception is thrown).  
-	 * 
-	 * @param expression expression referencing variables
-	 * @param reportUndefinedVariables whether a reference to an undefined variable
-	 *  is to be considered an error (i.e. throw an exception)
-	 * @return expression with variable references replaced with variable values
-	 * @throws CoreException if unable to resolve the value of one or more variables
-	 */
-	public String performStringSubstitution(String expression, boolean reportUndefinedVariables) throws CoreException;	
-	
-	/**
-	 * Validates variables references in the given expression and reports errors
-	 * for references to undefined variables.
-	 * 
-	 * @param expression expression referencing variables
-	 * @throws CoreException if one or more referenced variables do not exist
-	 */
-	public void validateStringVariables(String expression) throws CoreException;
-	
-	/**
-	 * Returns a new value variable with the given name and description.
-	 * 
-	 * @param name variable name, cannot be <code>null</code>
-	 * @param description variable description, possibly <code>null</code>
-	 * @return a new variable
-	 * @exception CoreException if a variable already exists with the given name
-	 */
-	public IValueVariable newValueVariable(String name, String description);
-	
-	/**
-	 * Adds the given variables to the variable registry.
-	 * 
-	 * @param variables the variables to add
-	 * @throws CoreException if one or more variables to add has a name collision with
-	 *  an existing variable 
-	 */
-	public void addVariables(IValueVariable[] variables) throws CoreException;
-	
-	/**
-	 * Removes the given variables from the registry. Has no effect for unregistered
-	 * variables.
-	 * 
-	 * @param variables variables to remove
-	 */
-	public void removeVariables(IValueVariable[] variables);
-	
-	/**
-	 * Registers the given listener for value variable notifications. Has no effect
-	 * if an identical listener is already registered.
-	 *   
-	 * @param listener value variable listener to add
-	 */
-	public void addValueVariableListener(IValueVariableListener listener);
-	
-	/**
-	 * Removes the given listener from the list of registered value variable
-	 * listeners. Has no effect if an identical listener is not already registered.
-	 * 
-	 * @param listener value variable listener to remove
-	 */
-	public void removeValueVariableListener(IValueVariableListener listener);
-	
-	/**
-	 * Convenience method that returns an expression referencing the given
-	 * variable and optional argument. For example, calling the method with
-	 * a <code>varName</code> of <code>my_var</code> and an <code>argument</code>
-	 * of <code>my_arg</code> results in the string <code>$(my_var:my_arg}</code>.
-	 * 
-	 * @param varName variable name
-	 * @param arg argument text or <code>null</code>
-	 * @return an expression referencing the given variable and
-	 *  optional argument
-	 */
-	public String generateVariableExpression(String varName, String arg);
-	
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariable.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariable.java
deleted file mode 100644
index bb958e7..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariable.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.variables;
-
-/**
- * A variable with a value that can be set and retrieved. The context in which
- * a value variable is referenced does not effect the value of the variable.
- * A value variable can be contributed by an extension or created programmatically.
- * A contributor may optionally specify an initial value for a variable, or
- * provide a delegate that will initialie the variable with a value. 
- * <p>
- * Example of a value variable contribution with an initial value, the specified
- * variable is created with the initial value "/usr/local/foo".
- * <pre>
- *  &lt;extension point="org.eclipse.core.variables.valueVariables"&gt;
- *   &lt;variable
- *    name="FOO_HOME"
- *    initialValue="/usr/local/foo"&gt;
- *   &lt;/variable&gt;
- *  &lt;/extension&gt;
- * </pre>
- * </p>
- * <p>
- * Example of a value variable contribution with an initializer class, the class
- * "com.example.FooLocator" will be used to initialize the value the first time
- * it's requested.
- * <pre>
- *  &lt;extension point="org.eclipse.core.variables.valueVariables"&gt;
- *   &lt;variable
- *    name="FOO_HOME"
- *    initializerClass="com.example.FooLocator"&gt;
- *   &lt;/variable&gt;
- *  &lt;/extension&gt;
- * </pre>
- * </p>
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IValueVariable extends IStringVariable {
-
-	/**
-	 * Sets the value of this variable to the given value. A value of
-	 * <code>null</code> indicates the value of this variable is undefined.
-	 * 
-	 * @param value variable value, possibly <code>null</code>
-	 */
-	public void setValue(String value);
-	
-	/**
-	 * Returns the value of this variable, or <code>null</code> if none.
-	 * 
-	 * @return the value of this variable, or <code>null</code> if none
-	 */
-	public String getValue();
-	
-	/**
-	 * Returns whether this variable was contributed by an extension.
-	 * 
-	 * @return whether this variable was contributed by an extension
-	 */
-	public boolean isContributed();
-	
-	/**
-	 * Sets the description of this variable to the given value.
-	 * 
-	 * @param description variable description, possibly <code>null</code>
-	 */
-	public void setDescription(String description);	
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableInitializer.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableInitializer.java
deleted file mode 100644
index 3621445..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableInitializer.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.variables;
-
-/**
- * Value variable initializers compute an initial value for a value
- * variable contributed by an extension, which is not defined with an initial
- * value. This provides a mechnism for programatically computing the initial
- * value of a value variable.
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IValueVariableInitializer {
-	/**
-	 * Initializes the specified variable. 
-	 * 
-	 * @param variable variable to initialize
-	 */
-	public void initialize(IValueVariable variable);
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableListener.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableListener.java
deleted file mode 100644
index 37dac25..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/IValueVariableListener.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.variables;
-
-/**
- * A string variable listener is notified of variables as they are added
- * and removed from the string variable manager. As well, listeners are
- * notified when a value variable changes value.
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IValueVariableListener {
-	
-	/**
-	 * Notification the given variables have been added to the variable
-	 * manager.
-	 * 
-	 * @param variables added variables
-	 */
-	public void variablesAdded(IValueVariable[] variables);
-	
-	/**
-	 * Notification the given variables have been removed from the variable
-	 * manager.
-	 * 
-	 * @param variables removed variables
-	 */
-	public void variablesRemoved(IValueVariable[] variables);
-	
-	/**
-	 * Notification the given variables have been changed value.
-	 * 
-	 * @param variables changed variables
-	 */
-	public void variablesChanged(IValueVariable[] variables);
-
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/VariablesPlugin.java b/org.eclipse.core.variables/src/org/eclipse/core/variables/VariablesPlugin.java
deleted file mode 100644
index 41f6624..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/VariablesPlugin.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.core.variables;
-
-import org.eclipse.core.internal.variables.StringVariableManager;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.Status;
-
-/**
- * The plug-in runtime class for the Core Variables plug-in.
- * @since 3.0
- */
-public class VariablesPlugin extends Plugin {
-
-	/**
-	 * Status code indicating an unexpected internal error.
-	 */
-	public static final int INTERNAL_ERROR = 120;		
-	
-	/**
-	 * Status code indicating a variable reference cycle error.
-	 */
-	public static final int REFERENCE_CYCLE_ERROR = 130;
-	
-	/**
-	 * The single instance of this plug-in runtime class.
-	 */
-	private static VariablesPlugin plugin;
-
-	/**
-	 * Unique identifier constant (value <code>"org.eclipse.core.variables"</code>)
-	 * for the Core Variables plug-in.
-	 */
-	public static final String PI_CORE_VARIABLES = "org.eclipse.core.variables"; //$NON-NLS-1$
-
-
-	/** 
-	 * Constructs an instance of this plug-in runtime class.
-	 * <p>
-	 * An instance of this plug-in runtime class is automatically created 
-	 * when the facilities provided by the Variables plug-in are required.
-	 * <b>Clients must never explicitly instantiate a plug-in runtime class.</b>
-	 * </p>
-	 */
-	public VariablesPlugin() {
-		super();
-		plugin = this;
-	}
-
-	/**
-	 * Returns this plug-in instance.
-	 *
-	 * @return the single instance of this plug-in runtime class
-	 */
-	public static VariablesPlugin getDefault() {
-		return plugin;
-	}
-	
-	/**
-	 * Logs the specified throwable with this plug-in's log.
-	 * 
-	 * @param t throwable to log 
-	 */
-	public static void log(Throwable t) {
-		log(new Status(IStatus.ERROR, PI_CORE_VARIABLES, INTERNAL_ERROR, "Error logged from Core Variables: ", t)); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Logs the given message with this plug-in's log and the given
-	 * throwable or <code>null</code> if none.
-	 * @param message the message to log
-	 * @param throwable the exception that occurred or <code>null</code> if none
-	 */
-	public static void logMessage(String message, Throwable throwable) {
-		log(new Status(IStatus.ERROR, getUniqueIdentifier(), INTERNAL_ERROR, message, throwable));
-	}
-	
-	/**
-	 * Logs the specified status with this plug-in's log.
-	 * 
-	 * @param status status to log
-	 */
-	public static void log(IStatus status) {
-		getDefault().getLog().log(status);
-	}
-	
-	/**
-	 * Convenience method which returns the unique identifier of this plugin.
-	 */
-	public static String getUniqueIdentifier() {
-		return PI_CORE_VARIABLES;
-	}
-	
-	/**
-	 * Returns the string variable manager.
-	 * 
-	 * @return the string variable manager
-	 */
-	public IStringVariableManager getStringVariableManager() {
-		return StringVariableManager.getDefault();
-	}
-}
diff --git a/org.eclipse.core.variables/src/org/eclipse/core/variables/package.html b/org.eclipse.core.variables/src/org/eclipse/core/variables/package.html
deleted file mode 100644
index 0d27de0..0000000
--- a/org.eclipse.core.variables/src/org/eclipse/core/variables/package.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Eclipse Debug Platform</title>
-</head>
-
-<body bgcolor="#FFFFFF">
-
-<p>Provides support for defining and contributing variables for the purpose of 
-  string substitution.</p>
-
-<h2>Package Specification</h2>
-
-<p>This package provides classes and interfaces to support the definition and 
-  contribution of variables for the purpose of string substitution. The plug-in 
-  supports the recursive replacement of variables referenced by name in arbitrary 
-  strings with the value of the variable. Two types of variables are provided 
-  - value variables (<code>IValueVariable</code>) and dynamic variables (<code>IDynamicVariable</code>). 
-  A value variable has a simple setter and getter for its current value. A dynamic 
-  variable has an associated resolver that provides a variable's value each time 
-  it is referenced (replaced) in a string substitution. A dynamic variable may 
-  also provide an argument in its reference that can be used by its resolver to 
-  determine its substitution value.</p>
-<p>A variable manager (<code>IStringVariableManager</code>) is provided to manage 
-  the set of defined variables. Value variables may be created via API on the 
-  variable manager, or contributed via the <code>valueVariables</code> extension 
-  point. Dynamic variables must be contributed via the <code>dynamicVariables</code> 
-  extension point. The variable manager also provides change notification for 
-  value variables. The variable manager also provides an API for performing string 
-  substitution, which accepts a string, and returns a string with all variable 
-  references replaced by associated variable values.</p>
-<p>Variables are referenced in strings by enclosing them in braces, preceded with 
-  a dollar sign. For example, consider a variable defined with the name <code>foo</code>, 
-  and referenced in the following string: <code>&quot;abc${foo}ghi&quot;</code>. 
-  If the value of <code>foo</code> is <code>&quot;def&quot;</code>, the result 
-  of a string substitution would be <code>&quot;abcdefghi&quot;</code>. In the 
-  case of a dynamic variable, an (optional) argument is supplied by appending 
-  a colon and argument value after the variable name. For example <code>&quot;${foo:bar}&quot;</code>. 
-  In this case, the resolver associated with <code>foo</code> would be provided 
-  with the referenced argument (<code>bar</code>) when asked to resolve a value 
-  for the variable <code>foo</code>. </p>
-</body>
-</html>
diff --git a/org.eclipse.debug.ui/.classpath b/org.eclipse.debug.ui/.classpath
deleted file mode 100644
index 34566f5..0000000
--- a/org.eclipse.debug.ui/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="ui"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.debug.ui/.cvsignore b/org.eclipse.debug.ui/.cvsignore
deleted file mode 100644
index c5e82d7..0000000
--- a/org.eclipse.debug.ui/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/.project b/org.eclipse.debug.ui/.project
deleted file mode 100644
index bd63b2b..0000000
--- a/org.eclipse.debug.ui/.project
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.debug.ui</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.eclipse.debug.ui/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.debug.ui/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index fb02858..0000000
--- a/org.eclipse.debug.ui/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Mon Nov 01 21:09:49 GMT-08:00 2004

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=ignore

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=warning

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=disabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/org.eclipse.debug.ui/.settings/org.eclipse.pde.prefs b/org.eclipse.debug.ui/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index e04e1c4..0000000
--- a/org.eclipse.debug.ui/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Fri Nov 26 10:33:54 CST 2004

-compilers.p.unused-element-or-attribute=1

-compilers.p.unresolved-ex-points=0

-compilers.p.deprecated=1

-compilers.p.unknown-element=1

-compilers.p.unknown-resource=1

-compilers.p.unknown-class=1

-compilers.p.unknown-attribute=0

-compilers.p.no-required-att=0

-eclipse.preferences.version=1

-compilers.p.not-externalized-att=1

-compilers.p.unresolved-import=0

-compilers.use-project=true

-compilers.p.illegal-att-value=0

diff --git a/org.eclipse.debug.ui/META-INF/MANIFEST.MF b/org.eclipse.debug.ui/META-INF/MANIFEST.MF
deleted file mode 100644
index 3d50677..0000000
--- a/org.eclipse.debug.ui/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,45 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.debug.ui; singleton:=true
-Bundle-Version: 3.1.0
-Bundle-Activator: org.eclipse.debug.internal.ui.DebugUIPlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.debug.internal.ui;x-internal:=true,
- org.eclipse.debug.internal.ui.actions;x-internal:=true,
- org.eclipse.debug.internal.ui.actions.breakpointGroups;x-internal:=true,
- org.eclipse.debug.internal.ui.elements.adapters;x-internal:=true,
- org.eclipse.debug.internal.ui.launchConfigurations;x-internal:=true,
- org.eclipse.debug.internal.ui.memory;x-internal:=true,
- org.eclipse.debug.internal.ui.preferences;x-internal:=true,
- org.eclipse.debug.internal.ui.sourcelookup;x-internal:=true,
- org.eclipse.debug.internal.ui.sourcelookup.browsers;x-internal:=true,
- org.eclipse.debug.internal.ui.stringsubstitution;x-internal:=true,
- org.eclipse.debug.internal.ui.views;x-internal:=true,
- org.eclipse.debug.internal.ui.views.breakpoints;x-internal:=true,
- org.eclipse.debug.internal.ui.views.console;x-internal:=true,
- org.eclipse.debug.internal.ui.views.expression;x-internal:=true,
- org.eclipse.debug.internal.ui.views.launch;x-internal:=true,
- org.eclipse.debug.internal.ui.views.memory;x-internal:=true,
- org.eclipse.debug.internal.ui.views.memory.renderings;x-internal:=true,
- org.eclipse.debug.internal.ui.views.registers;x-internal:=true,
- org.eclipse.debug.internal.ui.views.variables;x-internal:=true,
- org.eclipse.debug.ui,
- org.eclipse.debug.ui.actions,
- org.eclipse.debug.ui.console,
- org.eclipse.debug.ui.memory,
- org.eclipse.debug.ui.sourcelookup
-Require-Bundle: org.eclipse.core.expressions,
- org.eclipse.core.resources,
- org.eclipse.core.variables,
- org.eclipse.ui,
- org.eclipse.ui.console,
- org.eclipse.help,
- org.eclipse.debug.core,
- org.eclipse.jface.text,
- org.eclipse.ui.workbench.texteditor,
- org.eclipse.ui.ide,
- org.eclipse.ui.editors,
- org.eclipse.core.runtime
-Eclipse-AutoStart: true
diff --git a/org.eclipse.debug.ui/about.html b/org.eclipse.debug.ui/about.html
deleted file mode 100644
index 6f6b96c..0000000
--- a/org.eclipse.debug.ui/about.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/build.properties b/org.eclipse.debug.ui/build.properties
deleted file mode 100644
index 440770d..0000000
--- a/org.eclipse.debug.ui/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = icons/,\
-               plugin.xml,\
-               plugin.properties,\
-               .,\
-               about.html,\
-               META-INF/
-
-source.. = ui/
-src.includes = about.html,\
-               schema/,\
-               component.xml
diff --git a/org.eclipse.debug.ui/component.xml b/org.eclipse.debug.ui/component.xml
deleted file mode 100644
index fed3416..0000000
--- a/org.eclipse.debug.ui/component.xml
+++ /dev/null
@@ -1,94 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/component"
-   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-   xsi:schemaLocation="http://eclipse.org/component ../component.xsd "
-   name="Eclipse Platform Debug">
- <plugin id="org.eclipse.debug.ui" />
-
- <package name="org.eclipse.debug.ui">
- 	<type name="AbstractBreakpointOrganizerDelegate" />
- 	<type name="AbstractDebugView" />
- 	<type name="AbstractLaunchConfigurationTab" />
- 	<type name="AbstractLaunchConfigurationTabGroup" />
- 	<type name="BreakpointTypeCategory" />
- 	<type name="CommonTab" subclass="false" />
- 	<type name="DebugElementWorkbenchAdapter" />
- 	<type name="DebugUITools" instantiate="false" subclass="false" />
- 	<type name="DeferredDebugElementWorkbenchAdapter" />
- 	<type name="EnvironmentTab" subclass="false" />
- 	<type name="IBreakpointOrganizerDelegate" />
- 	<type name="IBreakpointTypeCategory" />
- 	<type name="IDebugEditorPresentation" />
- 	<type name="IDebugModelPresentation" />
- 	<type name="IDebugUIConstants" implement="false" />
- 	<type name="IDebugView" />
- 	<type name="ILaunchConfigurationDialog" implement="false" />
- 	<type name="ILaunchConfigurationTab" />
- 	<type name="ILaunchConfigurationTabGroup" />
- 	<type name="ILaunchGroup" implement="false" />
- 	<type name="ILaunchShortcut" />
- 	<type name="ISourcePresentation" />
- 	<type name="IValueDetailListener" />
- 	<type name="RefreshTab" subclass="false" />
- 	<type name="StringVariableSelectionDialog" subclass="false" />
- </package>
- <package name="org.eclipse.debug.ui.actions">
-	<type name="AbstractLaunchHistoryAction" />
-	<type name="AbstractLaunchToolbarAction" />
-	<type name="ContextualLaunchAction" />
-	<type name="DebugAction" subclass="false" />
-	<type name="ILaunchable" implement="false" />
-	<type name="IRunToLineTarget" />
-	<type name="IToggleBreakpointsTarget" />
-	<type name="IToggleBreakpointsTargetExtension" />
-	<type name="IVariableValueEditor" />
-	<type name="LaunchAction" subclass="false" />
-	<type name="LaunchAsAction" subclass="false" />
-	<type name="LaunchShortcutsAction" />
-	<type name="OpenLaunchDialogAction" subclass="false" />
-	<type name="RulerToggleBreakpointActionDelegate" instantiate="false" subclass="false" />
-	<type name="RunAction" subclass="false" />
-	<type name="RunToLineActionDelegate" instantiate="false" subclass="false" />
-	<type name="RunToLineHandler" subclass="false" />
-	<type name="ToggleBreakpointAction" subclass="false" />
-	<type name="ToggleMethodBreakpointActionDelegate" instantiate="false" subclass="false" />
-	<type name="ToggleWatchpointActionDelegate" instantiate="false" subclass="false" />
- </package>
- <package name="org.eclipse.debug.ui.console">
-	<type name="ConsoleColorProvider" />
-	<type name="FileLink" subclass="false" />
-	<type name="IConsole" implement="false" />
-	<type name="IConsoleColorProvider" />
-	<type name="IConsoleHyperlink" />
-	<type name="IConsoleLineTracker" />
-	<type name="IConsoleLineTrackerExtension" />
- </package>
- <package name="org.eclipse.debug.ui.memory">
-	<type name="AbstractMemoryRendering" />
-	<type name="AbstractMemoryRenderingBindingsProvider" />
-	<type name="AbstractTableRendering" />
-	<type name="AbstractTextRendering" />
-	<type name="IMemoryBlockTablePresentation" />
-	<type name="IMemoryRendering" />
-	<type name="IMemoryRenderingBindingsListener" />
-	<type name="IMemoryRenderingBindingsProvider" />
-	<type name="IMemoryRenderingContainer" />
-	<type name="IMemoryRenderingManager" implement="false" />
-	<type name="IMemoryRenderingSite" />
-	<type name="IMemoryRenderingSynchronizationService" />
-	<type name="IMemoryRenderingType" />
-	<type name="IMemoryRenderingTypeDelegate" />
-	<type name="MemoryRenderingElement" />
- </package>
- <package name="org.eclipse.debug.ui.sourcelookup">
-	<type name="AbstractSourceContainerBrowser" />
-	<type name="ISourceContainerBrowser" />
-	<type name="ISourceLookupResult" implement="false" />
-	<type name="SourceLookupDialog" subclass="false" />
-	<type name="SourceLookupTab" subclass="false" />
-	<type name="WorkingSetSourceContainer" subclass="false" />
- </package>  
- 
- <component-depends unrestricted="true"/>
-
-</component>
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/doc/.cvsignore b/org.eclipse.debug.ui/doc/.cvsignore
deleted file mode 100644
index c3d27e2..0000000
--- a/org.eclipse.debug.ui/doc/.cvsignore
+++ /dev/null
@@ -1,11 +0,0 @@
-book.css
-org_eclipse_debug_ui_consoleColorProviders.html
-org_eclipse_debug_ui_consoleLineTrackers.html
-org_eclipse_debug_ui_debugModelPresentations.html
-org_eclipse_debug_ui_launchConfigurationTabGroups.html
-org_eclipse_debug_ui_launchConfigurationTypeImages.html
-org_eclipse_debug_ui_launchGroups.html
-org_eclipse_debug_ui_launchShortcuts.html
-org_eclipse_debug_ui_sourceContainerPresentations.html
-org_eclipse_debug_ui_stringVariablePresentations.html
-schema.css
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/changevariablevalue_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/changevariablevalue_co.gif
deleted file mode 100644
index d33c4d3..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/changevariablevalue_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/collapseall.gif b/org.eclipse.debug.ui/icons/full/dlcl16/collapseall.gif
deleted file mode 100644
index bc3c2be..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/collapseall.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/copy_edit_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/copy_edit_co.gif
deleted file mode 100644
index 98626a8..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/copy_edit_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/copyviewtoclipboard_tsk.gif b/org.eclipse.debug.ui/icons/full/dlcl16/copyviewtoclipboard_tsk.gif
deleted file mode 100644
index 3a4c6c3..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/copyviewtoclipboard_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/debuglast_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/debuglast_co.gif
deleted file mode 100644
index 83482f5..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/debuglast_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_hide.gif b/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_hide.gif
deleted file mode 100644
index 0c564ff..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_hide.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_right.gif b/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_right.gif
deleted file mode 100644
index ce1a29c..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_right.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_under.gif b/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_under.gif
deleted file mode 100644
index 5bffca2..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/det_pane_under.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/disabled_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/disabled_co.gif
deleted file mode 100644
index 803d910..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/disabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/disconnect_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/disconnect_co.gif
deleted file mode 100644
index 587f8c9..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/disconnect_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/edtsrclkup_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/edtsrclkup_co.gif
deleted file mode 100644
index 2c6b58b..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/edtsrclkup_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/enabled_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/enabled_co.gif
deleted file mode 100644
index 0e83deb..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/enabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/lock_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/lock_co.gif
deleted file mode 100644
index b776478..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/lock_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/memoryreset_tsk.gif b/org.eclipse.debug.ui/icons/full/dlcl16/memoryreset_tsk.gif
deleted file mode 100644
index bd3b45d..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/memoryreset_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/metharg_obj.gif b/org.eclipse.debug.ui/icons/full/dlcl16/metharg_obj.gif
deleted file mode 100644
index f538ca7..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/metharg_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/monitorexpression_tsk.gif b/org.eclipse.debug.ui/icons/full/dlcl16/monitorexpression_tsk.gif
deleted file mode 100644
index dfbf68f..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/monitorexpression_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/printview_tsk.gif b/org.eclipse.debug.ui/icons/full/dlcl16/printview_tsk.gif
deleted file mode 100644
index 4d2722f..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/printview_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/rem_all_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/rem_all_co.gif
deleted file mode 100644
index ecd1be5..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/rem_all_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/rem_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/rem_co.gif
deleted file mode 100644
index 559e462..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/removememory_tsk.gif b/org.eclipse.debug.ui/icons/full/dlcl16/removememory_tsk.gif
deleted file mode 100644
index 559e462..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/removememory_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/resume_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/resume_co.gif
deleted file mode 100644
index 8652797..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/resume_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/runlast_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/runlast_co.gif
deleted file mode 100644
index 0c361fd..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/runlast_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/runtoline_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/runtoline_co.gif
deleted file mode 100644
index 50912b3..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/runtoline_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/skip_brkp.gif b/org.eclipse.debug.ui/icons/full/dlcl16/skip_brkp.gif
deleted file mode 100644
index 8b1e9b4..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/skip_brkp.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/stepbystep_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/stepbystep_co.gif
deleted file mode 100644
index fdbf370..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/stepbystep_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/stepinto_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/stepinto_co.gif
deleted file mode 100644
index 61c5ad7..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/stepinto_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/stepover_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/stepover_co.gif
deleted file mode 100644
index c194def..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/stepover_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/stepreturn_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/stepreturn_co.gif
deleted file mode 100644
index 67fa335..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/stepreturn_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/suspend_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/suspend_co.gif
deleted file mode 100644
index e47777b..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/suspend_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/synced.gif b/org.eclipse.debug.ui/icons/full/dlcl16/synced.gif
deleted file mode 100644
index 4f6e43a..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/synced.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/terminate_all_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/terminate_all_co.gif
deleted file mode 100644
index 1a33ac8..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/terminate_all_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/terminate_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/terminate_co.gif
deleted file mode 100644
index 4f3dcba..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/terminate_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/terminate_rem_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/terminate_rem_co.gif
deleted file mode 100644
index 9b46637..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/terminate_rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/tnames_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/tnames_co.gif
deleted file mode 100644
index 8341fba..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/tnames_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/toggledetailpane_co.gif b/org.eclipse.debug.ui/icons/full/dlcl16/toggledetailpane_co.gif
deleted file mode 100644
index edb400b..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/toggledetailpane_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dlcl16/var_cntnt_prvdr.gif b/org.eclipse.debug.ui/icons/full/dlcl16/var_cntnt_prvdr.gif
deleted file mode 100644
index 50b6cec..0000000
--- a/org.eclipse.debug.ui/icons/full/dlcl16/var_cntnt_prvdr.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dtool16/debug_exc.gif b/org.eclipse.debug.ui/icons/full/dtool16/debug_exc.gif
deleted file mode 100644
index 6434db2..0000000
--- a/org.eclipse.debug.ui/icons/full/dtool16/debug_exc.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dtool16/environment_co.gif b/org.eclipse.debug.ui/icons/full/dtool16/environment_co.gif
deleted file mode 100644
index 11640f1..0000000
--- a/org.eclipse.debug.ui/icons/full/dtool16/environment_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dtool16/profile_exc.gif b/org.eclipse.debug.ui/icons/full/dtool16/profile_exc.gif
deleted file mode 100644
index a5edd3a..0000000
--- a/org.eclipse.debug.ui/icons/full/dtool16/profile_exc.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dtool16/run_exc.gif b/org.eclipse.debug.ui/icons/full/dtool16/run_exc.gif
deleted file mode 100644
index a252bf0..0000000
--- a/org.eclipse.debug.ui/icons/full/dtool16/run_exc.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dtool16/term_restart.gif b/org.eclipse.debug.ui/icons/full/dtool16/term_restart.gif
deleted file mode 100644
index fa0df6f..0000000
--- a/org.eclipse.debug.ui/icons/full/dtool16/term_restart.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/dtool16/watch_exp.gif b/org.eclipse.debug.ui/icons/full/dtool16/watch_exp.gif
deleted file mode 100644
index 38f60cd..0000000
--- a/org.eclipse.debug.ui/icons/full/dtool16/watch_exp.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/changevariablevalue_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/changevariablevalue_co.gif
deleted file mode 100644
index 87e57e3..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/changevariablevalue_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/collapseall.gif b/org.eclipse.debug.ui/icons/full/elcl16/collapseall.gif
deleted file mode 100644
index dc923f5..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/collapseall.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/copy_edit_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/copy_edit_co.gif
deleted file mode 100644
index 7f5fe98..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/copy_edit_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/copyviewtoclipboard_tsk.gif b/org.eclipse.debug.ui/icons/full/elcl16/copyviewtoclipboard_tsk.gif
deleted file mode 100644
index 540860f..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/copyviewtoclipboard_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/debuglast_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/debuglast_co.gif
deleted file mode 100644
index cb68be1..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/debuglast_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/det_pane_hide.gif b/org.eclipse.debug.ui/icons/full/elcl16/det_pane_hide.gif
deleted file mode 100644
index 42fca3f..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/det_pane_hide.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/det_pane_right.gif b/org.eclipse.debug.ui/icons/full/elcl16/det_pane_right.gif
deleted file mode 100644
index d590470..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/det_pane_right.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/det_pane_under.gif b/org.eclipse.debug.ui/icons/full/elcl16/det_pane_under.gif
deleted file mode 100644
index dee0cbc..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/det_pane_under.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/disabled_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/disabled_co.gif
deleted file mode 100644
index f6b9f8a..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/disabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/disconnect_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/disconnect_co.gif
deleted file mode 100644
index d8fdd8a..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/disconnect_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/dissolve_group.gif b/org.eclipse.debug.ui/icons/full/elcl16/dissolve_group.gif
deleted file mode 100644
index d077125..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/dissolve_group.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/drop_to_frame.gif b/org.eclipse.debug.ui/icons/full/elcl16/drop_to_frame.gif
deleted file mode 100644
index 63a0f19..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/drop_to_frame.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/edtsrclkup_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/edtsrclkup_co.gif
deleted file mode 100644
index 94eedf6..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/edtsrclkup_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/enabled_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/enabled_co.gif
deleted file mode 100644
index 9cacb96..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/enabled_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/expandall.gif b/org.eclipse.debug.ui/icons/full/elcl16/expandall.gif
deleted file mode 100644
index c4a67bb..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/expandall.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/hierarchicalLayout.gif b/org.eclipse.debug.ui/icons/full/elcl16/hierarchicalLayout.gif
deleted file mode 100644
index 2344861..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/hierarchicalLayout.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/lock_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/lock_co.gif
deleted file mode 100644
index 68fd6cf..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/lock_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/memoryreset_tsk.gif b/org.eclipse.debug.ui/icons/full/elcl16/memoryreset_tsk.gif
deleted file mode 100644
index 5f0e7c2..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/memoryreset_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/metharg_obj.gif b/org.eclipse.debug.ui/icons/full/elcl16/metharg_obj.gif
deleted file mode 100644
index 9e3a547..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/metharg_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/monitorexpression_tsk.gif b/org.eclipse.debug.ui/icons/full/elcl16/monitorexpression_tsk.gif
deleted file mode 100644
index 252d7eb..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/monitorexpression_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/new_con.gif b/org.eclipse.debug.ui/icons/full/elcl16/new_con.gif
deleted file mode 100644
index 7aea894..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/new_con.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/pin.gif b/org.eclipse.debug.ui/icons/full/elcl16/pin.gif
deleted file mode 100644
index ec50b70..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/pin.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/printview_tsk.gif b/org.eclipse.debug.ui/icons/full/elcl16/printview_tsk.gif
deleted file mode 100644
index 045de75..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/printview_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/rem_all_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/rem_all_co.gif
deleted file mode 100644
index 28a3785..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/rem_all_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/rem_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/rem_co.gif
deleted file mode 100644
index 2cd9c54..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/removememory_tsk.gif b/org.eclipse.debug.ui/icons/full/elcl16/removememory_tsk.gif
deleted file mode 100644
index 2cd9c54..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/removememory_tsk.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/resume_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/resume_co.gif
deleted file mode 100644
index 16f4e25..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/resume_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/runlast_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/runlast_co.gif
deleted file mode 100644
index afb6fa9..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/runlast_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/runtoline_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/runtoline_co.gif
deleted file mode 100644
index ec2c353..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/runtoline_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/skip_brkp.gif b/org.eclipse.debug.ui/icons/full/elcl16/skip_brkp.gif
deleted file mode 100644
index c1751c3..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/skip_brkp.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/stepbystep_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/stepbystep_co.gif
deleted file mode 100644
index 4635a71..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/stepbystep_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/stepinto_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/stepinto_co.gif
deleted file mode 100644
index 75d165b..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/stepinto_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/stepover_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/stepover_co.gif
deleted file mode 100644
index 1ec36ae..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/stepover_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/stepreturn_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/stepreturn_co.gif
deleted file mode 100644
index 4c2f219..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/stepreturn_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/suspend_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/suspend_co.gif
deleted file mode 100644
index 161e3f5..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/suspend_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/synced.gif b/org.eclipse.debug.ui/icons/full/elcl16/synced.gif
deleted file mode 100644
index 870934b..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/synced.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/terminate_all_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/terminate_all_co.gif
deleted file mode 100644
index 6d47276..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/terminate_all_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/terminate_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/terminate_co.gif
deleted file mode 100644
index dc47edf..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/terminate_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/terminate_rem_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/terminate_rem_co.gif
deleted file mode 100644
index 8124628..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/terminate_rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/tnames_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/tnames_co.gif
deleted file mode 100644
index 330fc38..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/tnames_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/toggledetailpane_co.gif b/org.eclipse.debug.ui/icons/full/elcl16/toggledetailpane_co.gif
deleted file mode 100644
index ea13622..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/toggledetailpane_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/elcl16/var_cntnt_prvdr.gif b/org.eclipse.debug.ui/icons/full/elcl16/var_cntnt_prvdr.gif
deleted file mode 100644
index 245c72e..0000000
--- a/org.eclipse.debug.ui/icons/full/elcl16/var_cntnt_prvdr.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/etool16/debug_exc.gif b/org.eclipse.debug.ui/icons/full/etool16/debug_exc.gif
deleted file mode 100644
index afe775b..0000000
--- a/org.eclipse.debug.ui/icons/full/etool16/debug_exc.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/etool16/environment_co.gif b/org.eclipse.debug.ui/icons/full/etool16/environment_co.gif
deleted file mode 100644
index 716df43..0000000
--- a/org.eclipse.debug.ui/icons/full/etool16/environment_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/etool16/profile_exc.gif b/org.eclipse.debug.ui/icons/full/etool16/profile_exc.gif
deleted file mode 100644
index b7f03d5..0000000
--- a/org.eclipse.debug.ui/icons/full/etool16/profile_exc.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/etool16/run_exc.gif b/org.eclipse.debug.ui/icons/full/etool16/run_exc.gif
deleted file mode 100644
index 57f4102..0000000
--- a/org.eclipse.debug.ui/icons/full/etool16/run_exc.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/etool16/term_restart.gif b/org.eclipse.debug.ui/icons/full/etool16/term_restart.gif
deleted file mode 100644
index 88276ce..0000000
--- a/org.eclipse.debug.ui/icons/full/etool16/term_restart.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/etool16/watch_exp.gif b/org.eclipse.debug.ui/icons/full/etool16/watch_exp.gif
deleted file mode 100644
index d37495a..0000000
--- a/org.eclipse.debug.ui/icons/full/etool16/watch_exp.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/breakpoint_view.gif b/org.eclipse.debug.ui/icons/full/eview16/breakpoint_view.gif
deleted file mode 100644
index f529c5a..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/breakpoint_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/debug_persp.gif b/org.eclipse.debug.ui/icons/full/eview16/debug_persp.gif
deleted file mode 100644
index ac5431f..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/debug_persp.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/debug_view.gif b/org.eclipse.debug.ui/icons/full/eview16/debug_view.gif
deleted file mode 100644
index ac5431f..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/debug_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/details_view.gif b/org.eclipse.debug.ui/icons/full/eview16/details_view.gif
deleted file mode 100644
index c81630a..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/details_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/memory_view.gif b/org.eclipse.debug.ui/icons/full/eview16/memory_view.gif
deleted file mode 100644
index 7ce1112..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/memory_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/register_view.gif b/org.eclipse.debug.ui/icons/full/eview16/register_view.gif
deleted file mode 100644
index 7134210..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/register_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/variable_view.gif b/org.eclipse.debug.ui/icons/full/eview16/variable_view.gif
deleted file mode 100644
index e35f594..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/variable_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/eview16/watchlist_view.gif b/org.eclipse.debug.ui/icons/full/eview16/watchlist_view.gif
deleted file mode 100644
index c55cb58..0000000
--- a/org.eclipse.debug.ui/icons/full/eview16/watchlist_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/arraypartition_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/arraypartition_obj.gif
deleted file mode 100644
index 052915a..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/arraypartition_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/brkp_grp.gif b/org.eclipse.debug.ui/icons/full/obj16/brkp_grp.gif
deleted file mode 100644
index 173661c..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/brkp_grp.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/brkp_grp_disabled.gif b/org.eclipse.debug.ui/icons/full/obj16/brkp_grp_disabled.gif
deleted file mode 100644
index 5ea466b..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/brkp_grp_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/brkp_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/brkp_obj.gif
deleted file mode 100644
index a831fe7..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/brkp_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/brkp_type.gif b/org.eclipse.debug.ui/icons/full/obj16/brkp_type.gif
deleted file mode 100644
index 31c40ea..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/brkp_type.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/brkpd_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/brkpd_obj.gif
deleted file mode 100644
index 74b26c3..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/brkpd_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/common_tab.gif b/org.eclipse.debug.ui/icons/full/obj16/common_tab.gif
deleted file mode 100644
index d11c996..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/common_tab.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/debugt_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/debugt_obj.gif
deleted file mode 100644
index c1e4ee3..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/debugt_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/debugts_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/debugts_obj.gif
deleted file mode 100644
index 0d71e42..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/debugts_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/debugtt_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/debugtt_obj.gif
deleted file mode 100644
index 81fb7b4..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/debugtt_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/environment_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/environment_obj.gif
deleted file mode 100644
index 3150162..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/environment_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/envvar_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/envvar_obj.gif
deleted file mode 100644
index 0f07692..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/envvar_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/expression_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/expression_obj.gif
deleted file mode 100644
index 66fd649..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/expression_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/file_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/file_obj.gif
deleted file mode 100644
index 7ccc6a7..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/file_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/fldr_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/fldr_obj.gif
deleted file mode 100644
index 51e703b..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/fldr_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/genericreggroup_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/genericreggroup_obj.gif
deleted file mode 100644
index bb86ad3..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/genericreggroup_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/genericregister_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/genericregister_obj.gif
deleted file mode 100644
index 7134210..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/genericregister_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/genericvariable_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/genericvariable_obj.gif
deleted file mode 100644
index 1f4ec30..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/genericvariable_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/inst_ptr.gif b/org.eclipse.debug.ui/icons/full/obj16/inst_ptr.gif
deleted file mode 100644
index 5a192d8..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/inst_ptr.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/inst_ptr_top.gif b/org.eclipse.debug.ui/icons/full/obj16/inst_ptr_top.gif
deleted file mode 100644
index a9d1c61..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/inst_ptr_top.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/jar_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/jar_obj.gif
deleted file mode 100644
index 2fa1d77..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/jar_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/ldebug_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/ldebug_obj.gif
deleted file mode 100644
index b0dfd3b..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/ldebug_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/lrun_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/lrun_obj.gif
deleted file mode 100644
index 57f4102..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/lrun_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/memory_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/memory_obj.gif
deleted file mode 100644
index cdc52ef..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/memory_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/memorychanged_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/memorychanged_obj.gif
deleted file mode 100644
index 0733d3d..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/memorychanged_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/osprc_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/osprc_obj.gif
deleted file mode 100644
index aa15e0a..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/osprc_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/osprct_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/osprct_obj.gif
deleted file mode 100644
index 9f0d791..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/osprct_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/persp_tab.gif b/org.eclipse.debug.ui/icons/full/obj16/persp_tab.gif
deleted file mode 100644
index 9328079..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/persp_tab.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/prj_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/prj_obj.gif
deleted file mode 100644
index a4ea580..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/prj_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/read_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/read_obj.gif
deleted file mode 100644
index c876ebd..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/read_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/read_obj_disabled.gif b/org.eclipse.debug.ui/icons/full/obj16/read_obj_disabled.gif
deleted file mode 100644
index 0ee65cd..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/read_obj_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/readwrite_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/readwrite_obj.gif
deleted file mode 100644
index b11bfe2..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/readwrite_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/readwrite_obj_disabled.gif b/org.eclipse.debug.ui/icons/full/obj16/readwrite_obj_disabled.gif
deleted file mode 100644
index d58def4..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/readwrite_obj_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/refresh_tab.gif b/org.eclipse.debug.ui/icons/full/obj16/refresh_tab.gif
deleted file mode 100644
index 3ec515b..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/refresh_tab.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/rundebug.gif b/org.eclipse.debug.ui/icons/full/obj16/rundebug.gif
deleted file mode 100644
index 6b3911b..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/rundebug.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/stckframe_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/stckframe_obj.gif
deleted file mode 100644
index f1e585b..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/stckframe_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/stckframe_running_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/stckframe_running_obj.gif
deleted file mode 100644
index 0a44550..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/stckframe_running_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/terminatedlaunch_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/terminatedlaunch_obj.gif
deleted file mode 100644
index 76596dd..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/terminatedlaunch_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/thread_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/thread_obj.gif
deleted file mode 100644
index b8ca14a..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/thread_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/threads_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/threads_obj.gif
deleted file mode 100644
index 45c23a9..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/threads_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/threadt_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/threadt_obj.gif
deleted file mode 100644
index a7302ed..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/threadt_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/workset.gif b/org.eclipse.debug.ui/icons/full/obj16/workset.gif
deleted file mode 100644
index 2e4de3d..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/workset.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/write_obj.gif b/org.eclipse.debug.ui/icons/full/obj16/write_obj.gif
deleted file mode 100644
index feb8e94..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/write_obj.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/obj16/write_obj_disabled.gif b/org.eclipse.debug.ui/icons/full/obj16/write_obj_disabled.gif
deleted file mode 100644
index 2ddc3b8..0000000
--- a/org.eclipse.debug.ui/icons/full/obj16/write_obj_disabled.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/ovr16/error.gif b/org.eclipse.debug.ui/icons/full/ovr16/error.gif
deleted file mode 100644
index 119dccc..0000000
--- a/org.eclipse.debug.ui/icons/full/ovr16/error.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/ovr16/skip_breakpoint_ov.gif b/org.eclipse.debug.ui/icons/full/ovr16/skip_breakpoint_ov.gif
deleted file mode 100644
index 61c75c2..0000000
--- a/org.eclipse.debug.ui/icons/full/ovr16/skip_breakpoint_ov.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/ovr16/stcksync_ov.gif b/org.eclipse.debug.ui/icons/full/ovr16/stcksync_ov.gif
deleted file mode 100644
index e1e4536..0000000
--- a/org.eclipse.debug.ui/icons/full/ovr16/stcksync_ov.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/ovr16/transparent.gif b/org.eclipse.debug.ui/icons/full/ovr16/transparent.gif
deleted file mode 100644
index a9a3cdc..0000000
--- a/org.eclipse.debug.ui/icons/full/ovr16/transparent.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/wizban/addsrcloc_wiz.gif b/org.eclipse.debug.ui/icons/full/wizban/addsrcloc_wiz.gif
deleted file mode 100644
index 9dec82e..0000000
--- a/org.eclipse.debug.ui/icons/full/wizban/addsrcloc_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/wizban/debug_wiz.gif b/org.eclipse.debug.ui/icons/full/wizban/debug_wiz.gif
deleted file mode 100644
index 4c59d0b..0000000
--- a/org.eclipse.debug.ui/icons/full/wizban/debug_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/wizban/edtsrclkup_wiz.gif b/org.eclipse.debug.ui/icons/full/wizban/edtsrclkup_wiz.gif
deleted file mode 100644
index 30a3b1f..0000000
--- a/org.eclipse.debug.ui/icons/full/wizban/edtsrclkup_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/wizban/profile_wiz.gif b/org.eclipse.debug.ui/icons/full/wizban/profile_wiz.gif
deleted file mode 100644
index 87599a2..0000000
--- a/org.eclipse.debug.ui/icons/full/wizban/profile_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/icons/full/wizban/run_wiz.gif b/org.eclipse.debug.ui/icons/full/wizban/run_wiz.gif
deleted file mode 100644
index 789d732..0000000
--- a/org.eclipse.debug.ui/icons/full/wizban/run_wiz.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.debug.ui/plugin.properties b/org.eclipse.debug.ui/plugin.properties
deleted file mode 100644
index 108ed17..0000000
--- a/org.eclipse.debug.ui/plugin.properties
+++ /dev/null
@@ -1,346 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-#     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
-###############################################################################
-
-pluginName=Debug UI
-
-accessAction.label=&Access
-BreakpointsView.name=Breakpoints
-commonTabName=&Common
-ConsoleColorProvidersExtensionName= Console Color Providers
-ConsoleFont.description= The font used by the debug console
-ConsoleFont.label= Console Font
-ConsoleLineTrackersExtensionName= Console Line Trackers
-DebugViewContentProvidersName= Debug View Content Providers
-LaunchingPreferencePage.name=Launching
-ViewManagementPreferencePage.name=View Management
-ConsolePreferencePage.name=Console
-DebugModelContextBindingsName=Debug Model Context Bindings
-DebugModelActivityBindingsName=Debug Model Activity Bindings
-ContextViewBindingsName=Context View Bindings
-BreakpointOrganizersName=Breakpoint Organizers
-VariableValueEditorsName=Variable Value Editors
-
-BreakpointActionSet.label=Breakpoints
-CollapseAll.label=Collapse All
-CollapseAll.tooltip= Collapse Al
-CopyToClipboardAction.label=&Copy Stack
-CopyVariablesToClipboardAction.label=Copy &Variables
-DebugActionSet.label=Debug
-DebugConfigurations.label=D&ebug...
-debugCurrentInstructionPointer=Debug Current Instruction Pointer
-debugCallStack=Debug Call Stack
-DebugDropDownAction.label=Debug
-DebugHistoryMenuAction.label=Debug &History
-DebugLastAction.label=&Debug Last Launched
-DebugLaunchGroup.label=Debu&g
-DebugLaunchGroup.title=Select or configure an application to debug
-DebugModelPresentationExtensionName=Debug Model Presentation
-DebugPerspective.name=Debug
-command.openDebugPerspective.description = Open the debug perspective
-DebugPreferencePage.name=Run/Debug
-DebugView.name=Debug
-DebugViewsCategory.name=Debug
-DebugWithConfigurationAction.label=Debu&g As
-DetailPaneFontDefinition.label=Detail Pane Text Font
-DetailPaneFontDefinition.description=The detail pane text font is used in the detail panes of debug views
-DisableBreakpointsAction.label=&Disable
-DisconnectAction.label=Disconn&ect
-DisconnectAction.tooltip=Disconnect
-TerminateAndRelaunchAction.label=Terminate &and Relaunch
-EnableBreakpointsAction.label=&Enable
-ExpandAll.label=Expand All
-ExpandAll.tooltip=Expand All
-ExpressionView.name=Expressions
-GroupBy.label=S&how
-GroupBy.tooltip=Show
-LinkWithDebugView.label=Link with Debug View
-LinkWithDebugView.tooltip=Link with Debug View
-LaunchActionSet.label=Launch
-LaunchConfigurationTabGroupExtensionName=Launch Configuration Tab Group
-LaunchShortcutsName=Launch Shortcut
-LaunchConfigurationTypeImageExtensionName=Launch Configuration Type Image 
-LaunchConfigurationTypePropertyPage.name=Launch Configuration Type
-LaunchConfigurationTypesPreferencePage.name=Launch Configuration Types
-LauncherPropertyPage.name=Launcher
-LaunchGroupsExtensionName=Launch Groups
-modificationAction.label=&Modification
-OpenDebugConfigurations.label=De&bug...
-OpenRunConfigurations.label=Ru&n...
-OpenProfileConfigurations.label=&Profile...
-processPropertyPageName=Process Information
-ProcessesView.name=Processes
-ProfileLaunchGroup.label=&Profile
-ProfileLaunchGroup.title=Select or configure an application to profile
-ProfileDropDownAction.label=Profile
-ProfileWithConfigurationAction.label=Pro&file As
-ProfileHistoryMenuAction.label=Profile Histor&y
-ProfileLastAction.label=Profi&le Last Launched
-ProfileActionSet.label=Profile
-RegistersView.name=Registers
-RelaunchAction.label=Re&launch
-RemoveAction.label=Rem&ove
-RemoveAllAction.label=Remove A&ll
-RemoveAllBreakpointsAction.label=Remo&ve All Breakpoints
-RemoveAllBreakpointsAction.tooltip=Remove All Breakpoints
-RemoveAllExpressionsAction.tooltip=Remove All Expressions
-RemoveAllTerminatedAction.label=Remove &All Terminated
-RemoveAllTerminatedAction.tooltip=Remove All Terminated Launches
-RemoveBreakpointAction.tooltip=Remove Selected Breakpoints
-RemoveExpressionAction.tooltip=Remove Selected Expressions
-ResumeAction.label=Resu&me
-ResumeAction.tooltip=Resume
-RunDropDownAction.label=&Run
-RunMenu.label=&Run
-RunLastAction.label=&Run Last Launched
-RunLaunchGroup.label=Ru&n
-RunLaunchGroup.title=Select or configure an application to run
-RunConfigurations.label=R&un Configurations...
-RunHistoryMenuAction.label=Run His&tory
-RunWithConfigurationAction.label=Run A&s
-RunToLine.label=Run to &Line
-SelectAll.label=Select &All
-StepWithFiltersAction.label=Use Step &Filters
-StepWithFiltersAction.tooltip=Use Step Filters/Step Debug
-StepIntoAction.label=Step &Into
-StepIntoAction.tooltip=Step Into
-StepOverAction.label=Step &Over
-StepOverAction.tooltip=Step Over
-StepReturnAction.label=Step Ret&urn
-StepReturnAction.tooltip=Step Return
-StringVariablePresentationsName=String Variable Presentations
-SuspendAction.label=&Suspend
-SuspendAction.tooltip=Suspend
-TerminateAction.label=&Terminate
-TerminateAction.tooltip=Terminate
-TerminateAllAction.label=Termi&nate All
-TerminateAndRemoveAction.label=Terminate and Remo&ve
-ToggleBreakpointAction.label=Toggle Line Brea&kpoint
-ToggleMethodBreakpointAction.label=Toggle &Method Breakpoint
-ToggleWatchpointAction.label=Toggle &Watchpoint
-VariablesView.name=Variables
-StringVariablePreferencePage.name=String Substitution
-ToggleMemoryMonitorsPaneAction.name = Toggle Memory Monitors Pane
-ToggleSplitPaneAction.name = Toggle Split Pane
-LinkRenderingPanesAction.name = Link Memory Rendering Panes
-AddRemoveRenderingMenu.name = Add/Remove Rendering
-AddRenderingAction.name = Add Rendering
-RemoveRenderingAction.name = Remove Rendering
-
-#string subtitution variables
-string_prompt.description=Returns the text value entered into a prompt dialog. When one argument is provided, it is used as a prompt hint on the input dialog. When a second argument is provided, it is used as an initial value in the input dialog. The first and second arguments must be separated with a ':'.
-file_prompt.description=Returns the absolute file system path of a file chosen in a file selection dialog. When one argument is provided, it is used a prompt hint on the dialog title. When a second argument is provided, it is used as an initial value for the file selection dialog. The first and second arguments must be separated with a ':'.
-folder_prompt.description=Returns the absolute file system path of a directory chosen in a directory selection dialog. When one argument is provided, it is used a prompt hint on the dialog title. When a second argument is provided, it is used as an initial value for the directory selection dialog. The first and second arguments must be separated with a ':'.
-container_loc.description=Returns the absolute file system path of a resource's container. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-container_path.description=Returns the workspace relative path of a resource's container. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-container_name.description=Returns the name of a resource's container. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-project_loc.description=Returns the absolute file system path of a resource's project. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-project_path.description=Returns the workspace relative path of a resource's project. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-project_name.description=Returns the name of a resource's project. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-resource_loc.description=Returns the absolute file system path of a resource. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-resource_path.description=Returns the workspace relative path of a resource. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-resource_name.description=Returns the name of a resource. The target resource is the selected resource when no argument is specified, or the resource identified by a workspace relative path.
-workspace_loc.description=Returns the absolute file system path of the workspace root. When an argument is specified, the absolute file system path of the resource identified by a workspace relative path is returned.
-selected_text.description=Returns the text currently selected in the active editor.
-
-providerName=Eclipse.org
-
-runCategory.name= Run/Debug
-runCategory.description= Run/Debug command category
-
-NoSourceFoundEditor.name= No Source Found
-
-DetailPaneWordWrapAction.label=&Wrap Text in Details Pane
-DetailPaneWordWrapAction.tooltip=Wrap text in the Details pane
-DetailPaneMaxLengthAction.label=&Detail Pane...
-DetailPaneMaxLengthAction.tooltip=Configure detail pane settings
-
-Context.debugging.description= Debugging Programs
-Context.debugging.name= Debugging
-
-Context.console.description= In Console
-Context.console.name= In Console
-
-ActionDefinition.eof.name= EOF
-ActionDefinition.eof.description= Send end of file
-
-ActionDefinition.toggleStepFilters.name= Toggle Step Filters
-ActionDefinition.toggleStepFilters.description= Toggles enablement of debug step filters
-
-ActionDefinition.stepInto.name= Step Into
-ActionDefinition.stepInto.description= Step into
-
-ActionDefinition.stepOver.name= Step Over
-ActionDefinition.stepOver.description= Step over
-
-ActionDefinition.stepReturn.name= Step Return
-ActionDefinition.stepReturn.description= Step return
-
-ActionDefinition.resume.name=Resume
-ActionDefinition.resume.description=Resume
-
-ActionDefinition.resumeAllThreads.name=Resume All Thrads
-ActionDefinition.resumeAllThreads.description=Resumes all suspended threads
-
-ActionDefinition.runToLine.name=Run to Line
-ActionDefinition.runToLine.description=Resume and break when execution reaches the current line
-
-ActionDefinition.terminate.name=Terminate
-ActionDefinition.terminate.description=Terminate
-
-ActionDefinition.terminateAndRelaunch.name=Terminate and Relaunch
-ActionDefinition.terminateAndRelaunch.description=Terminate and Relaunch
-
-ActionDefinition.toggleBreakpoint.name=Toggle Line Breakpoint
-ActionDefinition.toggleBreakpoint.description=Creates or removes a line breakpoint
-
-ActionDefinition.suspend.name=Suspend
-ActionDefinition.suspend.description=Suspend
-
-ActionDefinition.openProfile.name=Profile...
-ActionDefinition.openProfile.description=Open profile launch configuration dialog
-
-ActionDefinition.profileLast.name=Profile Last Launched
-ActionDefinition.profileLast.description=Profile the last launch in profile mode
-
-ActionDefinition.openRun.name=Run...
-ActionDefinition.openRun.description=Open run launch configuration dialog
-
-ActionDefinition.debugLast.name=Debug Last Launched
-ActionDefinition.debugLast.description=Debug the last launch in debug mode
-
-ActionDefinition.runLast.name=Run Last Launched
-ActionDefinition.runLast.description=Relaunch the last launch in run mode
-
-ActionDefinition.openDebug.name=Debug...
-ActionDefinition.openDebug.description=Open debug launch configuration dialog
-
-ActionDefinition.followHyperlink.name= Follow Hyperlink
-ActionDefinition.followHyperlink.description= Follow a hyperlink in the debug console
-
-ActionDefinition.toggleWatchpoint.name=Toggle Watchpoint
-ActionDefinition.toggleWatchpoint.description=Creates or removes a watchpoint
-
-ActionDefinition.toggleMethodBreakpoint.name=Toggle Method Breakpoint
-ActionDefinition.toggleMethodBreakpoint.description=Creates or removes a method breakpoint
-
-ActionDefinition.removeAllBreakpoints.name=Remove All Breakpoints
-ActionDefinition.removeAllBreakpoints.description=Removes all breakpoints
-
-ActionDefinition.skipAllBreakpoints.name=Skip All Breakpoints
-ActionDefinition.skipAllBreakpoints.description=Sets whether or not any breakpoint should suspend execution
-
-ViewCommand.debugView.name=Debug
-ViewCommand.debugView.description=Show the Debug view
-
-ViewCommand.breakpointView.name=Breakpoints
-ViewCommand.breakpointView.description=Show the Breakpoints view
-
-ViewCommand.variableView.name=Variables
-ViewCommand.variableView.description=Show the Variables view
-
-ViewCommand.expressionView.name=Expressions
-ViewCommand.expressionView.description=Show the Expressions view
-
-ViewCommand.registerView.name=Registers
-ViewCommand.registerView.description=Show the Registers view
-
-ViewCommand.memoryView.name=Memory
-ViewCommand.memoryView.description=Show the Memory view
-
-SkipAllBreakpointsAction.label=S&kip All Breakpoints
-editWatchExpressionAction.label=&Edit Watch Expression
-editWatchExpressionAction.tooltip=Edit the selected watch expression
-reevaluateWatchExpressionAction.label=&Reevaluate Watch Expression
-reevaluateWatchExpressionAction.tooltip=Reevaluate the watch expression in the selected stack frame
-addWatchExpressionAction.label=&Add Watch Expression
-addWatchExpressionAction.tooltip=Create a new watch expression
-convertToWatchExpressionAction.label=Convert to &Watch Expression
-convertToWatchExpressionAction.tooltip=Convert an inspect expression to a watch expression
-Watch.label=Wa&tch
-
-enableWatchExpressionAction.label=Enable
-enableWatchExpressionAction.tooltip=Enable watch expression
-
-disableWatchExpressionAction.label=Disable
-disableWatchExpressionAction.tooltip=Disable watch expression
-
-BreakpointMarkerPreference.label= Breakpoints
-
-SourceContainerPresentationsName = Source Container Presentations
-
-DebugContextMenu.label=&Debug As
-RunContextMenu.label=&Run As
-ProfileContextMenu.label=&Profile As
-LaunchMenuNoneApplicable.label=(None Applicable)
-
-containerName.workingSet = Working set
-sourceNotFoundEditorName=Source Not Found Editor
-
-debugPresentation.label= Debug
-
-MemoryViewName = Memory
-MemoryRenderingViewName = Memory Rendering
-
-MemoryViewTableFontDefinition.label=Memory View Table Font
-MemoryViewTableFontDefinition.description=The font used in the table of the memory view.
-
-RawHex = Hex
-Renderings = Renderings
-ASCIIName = ASCII
-SignedIntegerName = Signed Integer
-UnsignedIntegerName = Unsigned Integer
-Endianess = Endianess
-BigEndianActionName = Big Endian
-LittleEndianActionName = Little Endian
-RestoreDefEndianessActionName = Restore Default
-
-ViewManagementAction.label=&View Management...
-
-setDefaultGroup.label=&Select Default Working Set...
-setDefaultGroup.tooltip=Setlect Default Working Set
-clearDefaultGroup.label=&Deselect Default Working Set
-clearDefaultGroup.tooltip=Deselect Default Working Set
-workingSets.label=&Working Sets...
-workingSets.tooltip=Manage Working Sets
-
-editGroup.label=&Edit Working Set...
-ToggleDefault.label=Defaul&t Working Set
-
-Project.label=Projects
-Project.others=Others (no project)
-File.label=Files
-File.others=Others (no file)
-BreakpointType.label=Breakpoint Types
-BreakpointType.others=Others (type unspecified)
-WorkingSet.label=Resource Working Sets
-WorkingSet.others=Others (no working set)
-BreakpointWorkingSet.label=Breakpoint Working Sets
-BreakpointWorkingSet.others=Others (no working set)
-BreakpointWorkingSet.name=Breakpoint
-
-memoryRenderingsExtensionPointName = Memory Renderings
-SetPaddedStrActionName = Set Padded String ...
-TableRenderingPrefActionName = Table Renderings Preferences...
-
-DropToFrameAction.label=Drop to Frame
-DropToFrameAction.tooltip=Drop to Frame
-
-SelectCodepagesAction.label=Select Codepages...
-NewMemoryViewAction.label=New Memory View
-PinMemoryBlockAction.label=Pin Memory Monitor
-TableRenderingInfo.label = Rendering Selection
-
-preferenceKeywords.general=run debug breakpoints variables
-preferenceKeywords.console=console stdout stderr
-preferenceKeywords.launching=launching build
-preferenceKeywords.stringSubstitution=variables
-preferenceKeywords.viewManagement=views
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/plugin.xml b/org.eclipse.debug.ui/plugin.xml
deleted file mode 100644
index 1568d27..0000000
--- a/org.eclipse.debug.ui/plugin.xml
+++ /dev/null
@@ -1,2427 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-    
-<!-- Extension points -->
-   <extension-point id="consoleColorProviders" name="%ConsoleColorProvidersExtensionName" schema="schema/consoleColorProviders.exsd"/>
-   <extension-point id="consoleLineTrackers" name="%ConsoleLineTrackersExtensionName" schema="schema/consoleLineTrackers.exsd"/>
-   <extension-point id="debugModelPresentations" name="%DebugModelPresentationExtensionName" schema="schema/debugModelPresentations.exsd"/>
-   <extension-point id="launchConfigurationTabGroups" name="%LaunchConfigurationTabGroupExtensionName" schema="schema/launchConfigurationTabGroups.exsd"/>
-   <extension-point id="launchConfigurationTypeImages" name="%LaunchConfigurationTypeImageExtensionName" schema="schema/launchConfigurationTypeImages.exsd"/>
-   <extension-point id="launchGroups" name="%LaunchGroupsExtensionName" schema="schema/launchGroups.exsd"/>
-   <extension-point id="launchShortcuts" name="%LaunchShortcutsName" schema="schema/launchShortcuts.exsd"/>
-   <extension-point id="stringVariablePresentations" name="%StringVariablePresentationsName" schema="schema/stringVariablePresentations.exsd"/>
-   <extension-point id="sourceContainerPresentations" name="%SourceContainerPresentationsName" schema="schema/sourceContainerPresentations.exsd"/>
-   <extension-point id="debugModelContextBindings" name="%DebugModelContextBindingsName" schema="schema/debugModelContextBindings.exsd"/>
-   <extension-point id="contextViewBindings" name="%ContextViewBindingsName" schema="schema/contextViewBindings.exsd"/>
-   <extension-point id="memoryRenderings" name="%memoryRenderingsExtensionPointName" schema="schema/memoryRenderings.exsd"/>
-   <extension-point id="breakpointOrganizers" name="%BreakpointOrganizersName" schema="schema/breakpointOrganizers.exsd"/>
-   <extension-point id="variableValueEditors" name="%VariableValueEditorsName" schema="schema/variableValueEditors.exsd"/>
-
-<!-- Extensions -->
-   <extension
-         point="org.eclipse.ui.perspectives">
-      <perspective
-            name="%DebugPerspective.name"
-            icon="icons/full/eview16/debug_persp.gif"
-            class="org.eclipse.debug.internal.ui.DebugPerspectiveFactory"
-            id="org.eclipse.debug.ui.DebugPerspective">
-      </perspective>
-   </extension>
-   <extension
-         point="org.eclipse.ui.perspectiveExtensions">
-      <perspectiveExtension
-            targetID="org.eclipse.debug.ui.DebugPerspective">
-         <actionSet
-               id="org.eclipse.ui.NavigateActionSet">
-         </actionSet>
-		 <actionSet
-               id="org.eclipse.debug.ui.breakpointActionSet">
-         </actionSet>
-      </perspectiveExtension>
-   </extension>
-   <extension
-         point="org.eclipse.ui.views">
-      <category
-            name="%DebugViewsCategory.name"
-            id="org.eclipse.debug.ui">
-      </category>
-      <view
-            name="%DebugView.name"
-            icon="icons/full/eview16/debug_view.gif"
-            category="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.views.launch.LaunchView"
-            id="org.eclipse.debug.ui.DebugView">
-      </view>
-      <view
-            name="%BreakpointsView.name"
-            icon="icons/full/eview16/breakpoint_view.gif"
-            category="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView"
-            id="org.eclipse.debug.ui.BreakpointView">
-      </view>
-      <view
-            name="%VariablesView.name"
-            icon="icons/full/eview16/variable_view.gif"
-            category="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.views.variables.VariablesView"
-            id="org.eclipse.debug.ui.VariableView">
-      </view>
-      <view
-            name="%ExpressionView.name"
-            icon="icons/full/eview16/watchlist_view.gif"
-            category="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.views.expression.ExpressionView"
-            id="org.eclipse.debug.ui.ExpressionView">
-      </view>
-      <view
-            name="%RegistersView.name"
-            icon="icons/full/eview16/register_view.gif"
-            category="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.views.registers.RegistersView"
-            id="org.eclipse.debug.ui.RegisterView">
-      </view>
-      <view
-            allowMultiple="true"
-            category="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.views.memory.MemoryView"
-            icon="icons/full/eview16/memory_view.gif"
-            id="org.eclipse.debug.ui.MemoryView"
-            name="%MemoryViewName">
-      </view>      
-   </extension>
-   <extension
-         point="org.eclipse.ui.preferencePages">
-      <page
-            name="%DebugPreferencePage.name"
-            class="org.eclipse.debug.internal.ui.preferences.DebugPreferencePage"
-            id="org.eclipse.debug.ui.DebugPreferencePage">
-         <keywordReference id="org.eclipse.debug.ui.general"/>
-      </page>
-      <page
-            name="%LaunchingPreferencePage.name"
-            category="org.eclipse.debug.ui.DebugPreferencePage"
-            class="org.eclipse.debug.internal.ui.preferences.LaunchingPreferencePage"
-            id="org.eclipse.debug.ui.LaunchingPreferencePage">
-         <keywordReference id="org.eclipse.debug.ui.launching"/>
-      </page>
-      <page
-            name="%ViewManagementPreferencePage.name"
-            category="org.eclipse.debug.ui.DebugPreferencePage"
-            class="org.eclipse.debug.internal.ui.preferences.ViewManagementPreferencePage"
-            id="org.eclipse.debug.ui.ViewManagementPreferencePage">
-         <keywordReference id="org.eclipse.debug.ui.viewManagement"/>
-      </page>
-      <page
-            name="%ConsolePreferencePage.name"
-            category="org.eclipse.debug.ui.DebugPreferencePage"
-            class="org.eclipse.debug.internal.ui.preferences.ConsolePreferencePage"
-            id="org.eclipse.debug.ui.ConsolePreferencePage">
-         <keywordReference id="org.eclipse.debug.ui.console"/>
-      </page>
-      <page
-            name="%StringVariablePreferencePage.name"
-            category="org.eclipse.debug.ui.DebugPreferencePage"
-            class="org.eclipse.debug.internal.ui.preferences.StringVariablePreferencePage"
-            id="org.eclipse.debug.ui.StringVariablePreferencePage">
-         <keywordReference id="org.eclipse.debug.ui.stringSubstitution"/>
-      </page>
-   </extension>
-   <extension
-         point="org.eclipse.ui.actionSets">
-      <actionSet
-            label="%DebugActionSet.label"
-            visible="false"
-            id="org.eclipse.debug.ui.debugActionSet">
-         <menu
-               label="%RunMenu.label"
-               path="additions"
-               id="org.eclipse.ui.run">
-            <separator
-                  name="stepGroup">
-            </separator>
-            <groupMarker
-                  name="stepIntoGroup">
-            </groupMarker>
-            <groupMarker
-                  name="stepOverGroup">
-            </groupMarker>
-            <groupMarker
-                  name="stepReturnGroup">
-            </groupMarker>
-            <groupMarker
-                  name="emptyStepGroup">
-            </groupMarker>
-         </menu>
-         <action
-               id="org.eclipse.debug.ui.actions.ToggleStepFilters"
-               hoverIcon="icons/full/elcl16/stepbystep_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.ToggleStepFiltersActionDelegate"
-               definitionId="org.eclipse.debug.ui.commands.ToggleStepFilters"
-               disabledIcon="icons/full/dlcl16/stepbystep_co.gif"
-               icon="icons/full/elcl16/stepbystep_co.gif"
-               helpContextId="step_with_filters_action_context"
-               label="%StepWithFiltersAction.label"
-               menubarPath="org.eclipse.ui.run/emptyStepGroup"
-               style="toggle"
-               state="false">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.RunToLine"
-               class="org.eclipse.debug.internal.ui.actions.RetargetRunToLineAction"
-               definitionId="org.eclipse.debug.ui.commands.RunToLine"
-               helpContextId="run_to_line_action_context"
-               disabledIcon="icons/full/dlcl16/runtoline_co.gif"
-               icon="icons/full/elcl16/runtoline_co.gif"
-               label="%RunToLine.label"
-               menubarPath="org.eclipse.ui.run/emptyStepGroup">
-         </action>                  
-         <action
-               id="org.eclipse.debug.ui.actions.StepReturn"
-               hoverIcon="icons/full/elcl16/stepreturn_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.StepReturnActionDelegate"
-               definitionId="org.eclipse.debug.ui.commands.StepReturn"
-               disabledIcon="icons/full/dlcl16/stepreturn_co.gif"
-               icon="icons/full/elcl16/stepreturn_co.gif"
-               helpContextId="step_return_action_context"
-               label="%StepReturnAction.label"
-               menubarPath="org.eclipse.ui.run/stepReturnGroup">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.StepOver"
-               hoverIcon="icons/full/elcl16/stepover_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.StepOverActionDelegate"
-               definitionId="org.eclipse.debug.ui.commands.StepOver"
-               disabledIcon="icons/full/dlcl16/stepover_co.gif"
-               icon="icons/full/elcl16/stepover_co.gif"
-               helpContextId="step_over_action_context"
-               label="%StepOverAction.label"
-               menubarPath="org.eclipse.ui.run/stepOverGroup">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.StepInto"
-               hoverIcon="icons/full/elcl16/stepinto_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.StepIntoActionDelegate"
-               definitionId="org.eclipse.debug.ui.commands.StepInto"
-               disabledIcon="icons/full/dlcl16/stepinto_co.gif"
-               icon="icons/full/elcl16/stepinto_co.gif"
-               helpContextId="step_into_action_context"
-               label="%StepIntoAction.label"
-               menubarPath="org.eclipse.ui.run/stepIntoGroup">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.Terminate"
-               hoverIcon="icons/full/elcl16/terminate_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.TerminateActionDelegate"
-               definitionId="org.eclipse.debug.ui.commands.Terminate"
-               disabledIcon="icons/full/dlcl16/terminate_co.gif"
-               icon="icons/full/elcl16/terminate_co.gif"
-               helpContextId="terminate_action_context"
-               label="%TerminateAction.label"
-               menubarPath="org.eclipse.ui.run/stepGroup">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.Suspend"
-               hoverIcon="icons/full/elcl16/suspend_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.SuspendActionDelegate"
-               definitionId="org.eclipse.debug.ui.commands.Suspend"
-               disabledIcon="icons/full/dlcl16/suspend_co.gif"
-               icon="icons/full/elcl16/suspend_co.gif"
-               helpContextId="suspend_action_context"
-               label="%SuspendAction.label"
-               menubarPath="org.eclipse.ui.run/stepGroup">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.Resume"
-               hoverIcon="icons/full/elcl16/resume_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.ResumeActionDelegate"
-               definitionId="org.eclipse.debug.ui.commands.Resume"
-               disabledIcon="icons/full/dlcl16/resume_co.gif"
-               icon="icons/full/elcl16/resume_co.gif"
-               helpContextId="resume_action_context"
-               label="%ResumeAction.label"
-               menubarPath="org.eclipse.ui.run/stepGroup">
-         </action>
-      </actionSet>
-   </extension>         
-   <extension
-         point="org.eclipse.ui.actionSets">
-      <actionSet
-            label="%LaunchActionSet.label"
-            visible="false"
-            id="org.eclipse.debug.ui.launchActionSet">
-         <menu
-               label="%RunMenu.label"
-               path="additions"
-               id="org.eclipse.ui.run">
-            <separator
-                  name="relaunchGroup">
-            </separator>
-            <separator
-                  name="runGroup">
-            </separator>
-            <separator
-                  name="debugGroup">
-            </separator>
-            <separator
-                  name="emptyLaunchGroup">
-            </separator>
-         </menu>
-         <action
-               definitionId="org.eclipse.debug.ui.commands.OpenRunConfigurations"
-               label="%OpenRunConfigurations.label"
-               helpContextId="open_run_configurations_action_context"
-               class="org.eclipse.debug.internal.ui.actions.OpenRunConfigurations"
-               menubarPath="org.eclipse.ui.run/runGroup"
-               id="org.eclipse.debug.ui.actions.OpenRunConfigurations">
-         </action>
-         <action
-               label="%RunWithConfigurationAction.label"
-               style="pulldown"
-               helpContextId="run_with_configuration_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RunAsAction"
-               menubarPath="org.eclipse.ui.run/runGroup"
-               id="org.eclipse.debug.internal.ui.actions.RunWithConfigurationAction">
-         </action>
-         <action
-               label="%RunHistoryMenuAction.label"
-               style="pulldown"
-               helpContextId="run_history_menu_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RunHistoryMenuAction"
-               menubarPath="org.eclipse.ui.run/runGroup"
-               id="org.eclipse.debug.internal.ui.actions.RunHistoryMenuAction">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.DebugLast"
-               hoverIcon="icons/full/elcl16/debuglast_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.DebugLastAction"
-               definitionId="org.eclipse.debug.ui.commands.DebugLast"
-               disabledIcon="icons/full/dlcl16/debuglast_co.gif"
-               icon="icons/full/elcl16/debuglast_co.gif"
-               helpContextId="debug_last_action_context"
-               label="%DebugLastAction.label"
-               menubarPath="org.eclipse.ui.run/relaunchGroup">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.RunLast"
-               hoverIcon="icons/full/elcl16/runlast_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.RunLastAction"
-               definitionId="org.eclipse.debug.ui.commands.RunLast"
-               disabledIcon="icons/full/dlcl16/runlast_co.gif"
-               icon="icons/full/elcl16/runlast_co.gif"
-               helpContextId="run_last_action_context"
-               label="%RunLastAction.label"
-               menubarPath="org.eclipse.ui.run/relaunchGroup">
-         </action>
-         <action
-               id="org.eclipse.debug.internal.ui.actions.RunDropDownAction"
-               toolbarPath="debug"
-               hoverIcon="icons/full/etool16/run_exc.gif"
-               class="org.eclipse.debug.internal.ui.actions.RunToolbarAction"
-               disabledIcon="icons/full/dtool16/run_exc.gif"
-               icon="icons/full/etool16/run_exc.gif"
-               helpContextId="run_action_context"
-               label="%RunDropDownAction.label"
-               style="pulldown">
-         </action>
-         <action
-               definitionId="org.eclipse.debug.ui.commands.OpenDebugConfigurations"
-               label="%OpenDebugConfigurations.label"
-               helpContextId="open_debug_configurations_action_context"
-               class="org.eclipse.debug.internal.ui.actions.OpenDebugConfigurations"
-               menubarPath="org.eclipse.ui.run/debugGroup"
-               id="org.eclipse.debug.ui.actions.OpenDebugConfigurations">
-         </action>
-         <action
-               label="%DebugWithConfigurationAction.label"
-               style="pulldown"
-               helpContextId="debug_with_configuration_action_context"
-               class="org.eclipse.debug.internal.ui.actions.DebugAsAction"
-               menubarPath="org.eclipse.ui.run/debugGroup"
-               id="org.eclipse.debug.internal.ui.actions.DebugWithConfigurationAction">
-         </action>
-         <action
-               label="%DebugHistoryMenuAction.label"
-               style="pulldown"
-               helpContextId="debug_history_menu_action_context"
-               class="org.eclipse.debug.internal.ui.actions.DebugHistoryMenuAction"
-               menubarPath="org.eclipse.ui.run/debugGroup"
-               id="org.eclipse.debug.internal.ui.actions.DebugHistoryMenuAction">
-         </action>
-         <action
-               id="org.eclipse.debug.internal.ui.actions.DebugDropDownAction"
-               toolbarPath="debug"
-               hoverIcon="icons/full/etool16/debug_exc.gif"
-               class="org.eclipse.debug.internal.ui.actions.DebugToolbarAction"
-               disabledIcon="icons/full/dtool16/debug_exc.gif"
-               icon="icons/full/etool16/debug_exc.gif"
-               helpContextId="debug_action_context"
-               label="%DebugDropDownAction.label"
-               style="pulldown">
-         </action>
-      </actionSet>
-   </extension>
-   <extension
-         point="org.eclipse.ui.actionSets">
-      <actionSet
-            label="%BreakpointActionSet.label"
-            visible="false"
-            id="org.eclipse.debug.ui.breakpointActionSet">
-         <menu
-               label="%RunMenu.label"
-               path="additions"
-               id="org.eclipse.ui.run">
-            <separator
-                  name="breakpointGroup">
-            </separator>
-            <groupMarker
-                  name="lineBreakpointGroup">
-            </groupMarker>
-            <groupMarker
-                  name="emptyBreakpointGroup">
-            </groupMarker>
-         </menu>
-         <action
-               disabledIcon="icons/full/dlcl16/rem_all_co.gif"
-               label="%RemoveAllBreakpointsAction.label"
-               class="org.eclipse.debug.internal.ui.actions.RemoveAllBreakpointsAction"
-               icon="icons/full/elcl16/rem_all_co.gif"
-               definitionId="org.eclipse.debug.ui.commands.RemoveAllBreakpoints"
-               style="push"
-               menubarPath="org.eclipse.ui.run/breakpointGroup"
-               id="org.eclipse.debug.ui.actions.RemoveAllBreakpoints"/>
-          <action
-               definitionId="org.eclipse.debug.ui.commands.SkipAllBreakpoints"
-               label="%SkipAllBreakpointsAction.label"
-               icon="icons/full/elcl16/skip_brkp.gif"
-               helpContextId="skip_all_breakpoints_action_context"
-               class="org.eclipse.debug.internal.ui.actions.SkipAllBreakpointsAction"
-               menubarPath="org.eclipse.ui.run/breakpointGroup"
-               style="toggle"
-               id="org.eclipse.debug.ui.actions.SkipAllBreakpoints">
-         </action>
-         <action
-               definitionId="org.eclipse.debug.ui.commands.ToggleWatchpoint"
-               label="%ToggleWatchpointAction.label"
-               icon="icons/full/obj16/readwrite_obj.gif"
-               disabledIcon="icons/full/obj16/readwrite_obj_disabled.gif"
-               helpContextId="toggle_watchpoint_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RetargetWatchpointAction"
-               menubarPath="org.eclipse.ui.run/breakpointGroup"
-               id="org.eclipse.debug.ui.actions.ToggleWatchpoint">
-         </action>
-         <action
-               definitionId="org.eclipse.debug.ui.commands.ToggleMethodBreakpoint"
-               label="%ToggleMethodBreakpointAction.label"
-               icon="icons/full/obj16/brkp_obj.gif"
-               disabledIcon="icons/full/obj16/brkpd_obj.gif"
-               helpContextId="toggle_method_breakpoint_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RetargetMethodBreakpointAction"
-               menubarPath="org.eclipse.ui.run/breakpointGroup"
-               id="org.eclipse.debug.ui.actions.ToggleMethodBreakpoint">
-         </action>
-         <action
-               definitionId="org.eclipse.debug.ui.commands.ToggleBreakpoint"
-               label="%ToggleBreakpointAction.label"
-               icon="icons/full/obj16/brkp_obj.gif"
-               disabledIcon="icons/full/obj16/brkpd_obj.gif"
-               helpContextId="toggle_breakpoint_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RetargetToggleLineBreakpointAction"
-               menubarPath="org.eclipse.ui.run/breakpointGroup"
-               id="org.eclipse.debug.ui.actions.ToggleBreakpoint">
-         </action>         
-      </actionSet>
-   </extension>   
-   <extension
-         point="org.eclipse.ui.actionSets">
-      <actionSet
-            label="%ProfileActionSet.label"
-            visible="false"
-            id="org.eclipse.debug.ui.profileActionSet">
-         <menu
-               label="%RunMenu.label"
-               path="additions"
-               id="org.eclipse.ui.run">
-            <separator
-                  name="relaunchGroup">
-            </separator>
-            <separator
-                  name="profileGroup">
-            </separator>
-         </menu>
-         <action
-               id="org.eclipse.debug.internal.ui.actions.ProfileDropDownAction"
-               toolbarPath="org.eclipse.debug.ui.launchActionSet/debug"
-               hoverIcon="icons/full/etool16/profile_exc.gif"
-               class="org.eclipse.debug.internal.ui.actions.ProfileToolbarAction"
-               disabledIcon="icons/full/dtool16/profile_exc.gif"
-               icon="icons/full/etool16/profile_exc.gif"
-               helpContextId="profile_action_context"
-               label="%ProfileDropDownAction.label"
-               style="pulldown">
-         </action>
-         <action
-               definitionId="org.eclipse.debug.ui.commands.OpenProfileConfigurations"
-               label="%OpenProfileConfigurations.label"
-               helpContextId="open_profile_configurations_action_context"
-               class="org.eclipse.debug.internal.ui.actions.OpenProfileConfigurations"
-               menubarPath="org.eclipse.ui.run/profileGroup"
-               id="org.eclipse.debug.ui.actions.OpenProfileConfigurations">
-         </action>
-         <action
-               label="%ProfileWithConfigurationAction.label"
-               style="pulldown"
-               helpContextId="profile_with_configuration_action_context"
-               class="org.eclipse.debug.internal.ui.actions.ProfileAsAction"
-               menubarPath="org.eclipse.ui.run/profileGroup"
-               id="org.eclipse.debug.internal.ui.actions.ProfileWithConfigurationAction">
-         </action>
-         <action
-               label="%ProfileHistoryMenuAction.label"
-               style="pulldown"
-               helpContextId="profile_history_menu_action_context"
-               class="org.eclipse.debug.internal.ui.actions.ProfileHistoryMenuAction"
-               menubarPath="org.eclipse.ui.run/profileGroup"
-               id="org.eclipse.debug.internal.ui.actions.ProfileHistoryMenuAction">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.actions.ProfileLast"
-               hoverIcon="icons/full/etool16/profile_exc.gif"
-               class="org.eclipse.debug.internal.ui.actions.ProfileLastAction"
-               definitionId="org.eclipse.debug.ui.commands.ProfileLast"
-               disabledIcon="icons/full/dtool16/profile_exc.gif"
-               icon="icons/full/etool16/profile_exc.gif"
-               helpContextId="profile_last_action_context"
-               label="%ProfileLastAction.label"
-               menubarPath="org.eclipse.ui.run/relaunchGroup">
-         </action>
-      </actionSet>
-   </extension>
-   <extension
-         point="org.eclipse.ui.viewActions">
-      <viewContribution
-            targetID="org.eclipse.debug.ui.DebugView"
-            id="org.eclipse.debug.ui.PulldownActions">
-         <action
-               id="org.eclipse.debug.ui.debugview.pulldown.ViewManagementAction"
-               class="org.eclipse.debug.internal.ui.actions.ViewManagementAction"
-               helpContextId="view_management_action_context"
-               label="%ViewManagementAction.label"
-               menubarPath="additions">
-         </action>
-      </viewContribution>
-<!-- Contributions to Debug View Toolbar -->
-      <viewContribution
-            targetID="org.eclipse.debug.ui.DebugView"
-            id="org.eclipse.debug.ui.debugview.toolbar">
-      <!-- Thread Group -->
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.removeAllTerminated"
-               toolbarPath="threadGroup"
-               hoverIcon="icons/full/elcl16/rem_all_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.RemoveAllTerminatedAction"
-               disabledIcon="icons/full/dlcl16/rem_all_co.gif"
-               icon="icons/full/elcl16/rem_all_co.gif"
-               helpContextId="remove_all_terminated_action_context"
-               label="%RemoveAllTerminatedAction.label"
-               tooltip="%RemoveAllTerminatedAction.tooltip">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.disconnect"
-               toolbarPath="threadGroup"
-               hoverIcon="icons/full/elcl16/disconnect_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.DisconnectActionDelegate"
-               disabledIcon="icons/full/dlcl16/disconnect_co.gif"
-               icon="icons/full/elcl16/disconnect_co.gif"
-               helpContextId="disconnect_action_context"
-               label="%DisconnectAction.label"
-               tooltip="%DisconnectAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.IDisconnect">
-            </selection>
-         </action>
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.terminate"
-               toolbarPath="threadGroup"
-               hoverIcon="icons/full/elcl16/terminate_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.TerminateActionDelegate"
-               disabledIcon="icons/full/dlcl16/terminate_co.gif"
-               icon="icons/full/elcl16/terminate_co.gif"
-               helpContextId="terminate_action_context"
-               label="%TerminateAction.label"
-               tooltip="%TerminateAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.ITerminate">
-            </selection>
-         </action>
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.suspend"
-               toolbarPath="threadGroup"
-               hoverIcon="icons/full/elcl16/suspend_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.SuspendActionDelegate"
-               disabledIcon="icons/full/dlcl16/suspend_co.gif"
-               enablesFor="1"
-               icon="icons/full/elcl16/suspend_co.gif"
-               label="%SuspendAction.label"
-               helpContextId="suspend_action_context"
-               tooltip="%SuspendAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.ISuspendResume">
-            </selection>
-         </action>
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.resume"
-               toolbarPath="threadGroup"
-               hoverIcon="icons/full/elcl16/resume_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.ResumeActionDelegate"
-               disabledIcon="icons/full/dlcl16/resume_co.gif"
-               enablesFor="1"
-               icon="icons/full/elcl16/resume_co.gif"
-               label="%ResumeAction.label"
-               helpContextId="resume_action_context"
-               tooltip="%ResumeAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.ISuspendResume">
-            </selection>
-         </action>
-      <!-- Step Group -->
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.stepReturn"
-               toolbarPath="stepReturnGroup"
-               hoverIcon="icons/full/elcl16/stepreturn_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.StepReturnActionDelegate"
-               disabledIcon="icons/full/dlcl16/stepreturn_co.gif"
-               enablesFor="1"
-               icon="icons/full/elcl16/stepreturn_co.gif"
-               label="%StepReturnAction.label"
-               helpContextId="step_return_action_context"
-               tooltip="%StepReturnAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.IStep">
-            </selection>
-         </action>
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.stepOver"
-               toolbarPath="stepOverGroup"
-               hoverIcon="icons/full/elcl16/stepover_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.StepOverActionDelegate"
-               disabledIcon="icons/full/dlcl16/stepover_co.gif"
-               enablesFor="1"
-               icon="icons/full/elcl16/stepover_co.gif"
-               label="%StepOverAction.label"
-               helpContextId="step_over_action_context"
-               tooltip="%StepOverAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.IStep">
-            </selection>
-         </action>
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.stepInto"
-               toolbarPath="stepIntoGroup"
-               hoverIcon="icons/full/elcl16/stepinto_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.StepIntoActionDelegate"
-               disabledIcon="icons/full/dlcl16/stepinto_co.gif"
-               enablesFor="1"
-               icon="icons/full/elcl16/stepinto_co.gif"
-               label="%StepIntoAction.label"
-               helpContextId="step_into_action_context"
-               tooltip="%StepIntoAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.IStep">
-            </selection>
-         </action>
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.dropToFrame"
-               toolbarPath="emptyStepGroup"
-               class="org.eclipse.debug.internal.ui.actions.DropToFrameActionDelegate"
-               enablesFor="1"
-               icon="icons/full/elcl16/drop_to_frame.gif"
-               label="%DropToFrameAction.label"
-               helpContextId="drop_to_frame_action_context"
-               tooltip="%DropToFrameAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.IDropToFrame">
-            </selection>
-        </action>
-      <!-- Render Group -->
-         <action
-               id="org.eclipse.debug.ui.debugview.toolbar.toggleStepFilters"
-               toolbarPath="renderGroup"
-               hoverIcon="icons/full/elcl16/stepbystep_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.ToggleStepFiltersActionDelegate"
-               disabledIcon="icons/full/dlcl16/stepbystep_co.gif"
-               icon="icons/full/elcl16/stepbystep_co.gif"
-               label="%StepWithFiltersAction.label"
-               helpContextId="step_with_filters_action_context"
-               tooltip="%StepWithFiltersAction.tooltip"
-               style="toggle"
-               state="false">
-         </action>         
-      </viewContribution>
-<!-- Contributions to Breakpoints View Toolbar -->
-      <viewContribution
-            targetID="org.eclipse.debug.ui.BreakpointView"
-            id="org.eclipse.debug.ui.breakpointsview.toolbar">
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.removeAll"
-               toolbarPath="breakpointGroup"
-               hoverIcon="icons/full/elcl16/rem_all_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.RemoveAllBreakpointsAction"
-               disabledIcon="icons/full/dlcl16/rem_all_co.gif"
-               icon="icons/full/elcl16/rem_all_co.gif"
-               helpContextId="remove_all_breakpoints_action_context"
-               label="%RemoveAllAction.label"
-               tooltip="%RemoveAllBreakpointsAction.tooltip">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.remove"
-               toolbarPath="breakpointGroup"
-               hoverIcon="icons/full/elcl16/rem_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.RemoveBreakpointAction"
-               disabledIcon="icons/full/dlcl16/rem_co.gif"
-               icon="icons/full/elcl16/rem_co.gif"
-               helpContextId="remove_breakpoint_action_context"
-               label="%RemoveAction.label"
-               tooltip="%RemoveBreakpointAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.IBreakpoint">
-            </selection>
-         </action>
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.linkWithDebugView"
-               toolbarPath="navigationGroup"
-               class="org.eclipse.debug.internal.ui.actions.LinkBreakpointsWithDebugViewAction"
-               icon="icons/full/elcl16/synced.gif"
-               helpContextId="link_breakpoints_with_debug_view_action_context"
-               label="%LinkWithDebugView.label"
-               tooltip="%LinkWithDebugView.tooltip">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.collapseAll"
-               toolbarPath="navigationGroup"
-               class="org.eclipse.debug.internal.ui.actions.BreakpointsCollapseAllAction"
-               icon="icons/full/elcl16/collapseall.gif"
-               helpContextId="breakpoints_collapse_all_action_context"
-               label="%CollapseAll.label"
-               tooltip="%CollapseAll.tooltip">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.expandAll"
-               toolbarPath="navigationGroup"
-               class="org.eclipse.debug.internal.ui.actions.BreakpointsExpandAllAction"
-               icon="icons/full/elcl16/expandall.gif"
-               helpContextId="breakpoints_expand_all_action_context"
-               label="%ExpandAll.label"
-               tooltip="%ExpandAll.tooltip">
-         </action>
-         <action
-               label="%workingSets.label"
-               tooltip="%workingSets.tooltip"
-               class="org.eclipse.debug.internal.ui.actions.breakpointGroups.WorkingSetsAction"
-               style="push"
-               menubarPath="defaultBreakpointGroup"
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.workingSets"/>
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.clearDefaultBreakpointGroup"
-               menubarPath="defaultBreakpointGroup"
-               class="org.eclipse.debug.internal.ui.actions.breakpointGroups.ClearDefaultBreakpointGroupAction"
-               helpContextId="clear_default_breakpoint_group_action_context"
-               label="%clearDefaultGroup.label"
-               tooltip="%clearDefaultGroup.tooltip">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.setDefaultBreakpointGroup"
-               menubarPath="defaultBreakpointGroup"
-               class="org.eclipse.debug.internal.ui.actions.breakpointGroups.SetDefaultBreakpointGroupAction"
-               icon="icons/full/obj16/brkp_grp.gif"
-               helpContextId="set_default_breakpoint_group_action_context"
-               label="%setDefaultGroup.label"
-               tooltip="%setDefaultGroup.tooltip">
-         </action>         
-         <action
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.groupByAction"
-               menubarPath="defaultBreakpointGroup"
-               class="org.eclipse.debug.internal.ui.actions.breakpointGroups.GroupBreakpointsByAction"
-               helpContextId="group_breakpoints_by_action_context"
-               label="%GroupBy.label"
-               tooltip="%GroupBy.tooltip">
-         </action>
-      </viewContribution>
-<!-- Contributions to Expression View Toolbar -->
-      <viewContribution
-            targetID="org.eclipse.debug.ui.VariableView"
-            id="org.eclipse.debug.ui.variableView.toolbar">
-         <action
-               label="%DetailPaneWordWrapAction.label"
-               style="toggle"
-               helpContextId="detail_pane_word_wrap_action_context"
-               class="org.eclipse.debug.internal.ui.views.variables.DetailPaneWordWrapAction"
-               tooltip="%DetailPaneWordWrapAction.tooltip"
-               menubarPath="viewActions"
-               id="org.eclipse.debug.ui.variableViewActions.toolbar.detailPaneWordWrap">
-         </action>
-         <action
-               class="org.eclipse.debug.internal.ui.views.variables.MaxDetailsLengthAction"
-               helpContextId="detail_pane_max_length_action_context"
-               id="org.eclipse.debug.ui.variableViewActions.pulldown.MaxDetailsLength"
-               label="%DetailPaneMaxLengthAction.label"
-               menubarPath="viewActions"
-               style="push"
-               tooltip="%DetailPaneMaxLengthAction.tooltip"/>
-      </viewContribution>
-      <viewContribution
-            targetID="org.eclipse.debug.ui.ExpressionView"
-            id="org.eclipse.debug.ui.expressionsView.toolbar">
-         <action
-               id="org.eclipse.debug.ui.expresssionsView.toolbar.removeAll"
-               toolbarPath="expressionGroup"
-               hoverIcon="icons/full/elcl16/rem_all_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.RemoveAllExpressionsAction"
-               disabledIcon="icons/full/dlcl16/rem_all_co.gif"
-               icon="icons/full/elcl16/rem_all_co.gif"
-               helpContextId="remove_all_expressions_action_context"
-               label="%RemoveAllAction.label"
-               tooltip="%RemoveAllExpressionsAction.tooltip">
-         </action>
-         <action
-               id="org.eclipse.debug.ui.expresssionsView.toolbar.remove"
-               toolbarPath="expressionGroup"
-               hoverIcon="icons/full/elcl16/rem_co.gif"
-               class="org.eclipse.debug.internal.ui.actions.RemoveExpressionAction"
-               disabledIcon="icons/full/dlcl16/rem_co.gif"
-               icon="icons/full/elcl16/rem_co.gif"
-               helpContextId="remove_expression_action_context"
-               label="%RemoveAction.label"
-               tooltip="%RemoveExpressionAction.tooltip">
-            <selection
-                  class="org.eclipse.debug.core.model.IExpression">
-            </selection>
-            <selection
-                  class="org.eclipse.debug.core.model.IVariable">
-            </selection>
-         </action>
-         <action
-               label="%DetailPaneWordWrapAction.label"
-               helpContextId="detail_pane_word_wrap_action_context"
-               class="org.eclipse.debug.internal.ui.views.variables.DetailPaneWordWrapAction"
-               state="false"
-               tooltip="%DetailPaneWordWrapAction.tooltip"
-               menubarPath="viewActions"
-               id="org.eclipse.debug.ui.expresssionsView.toolbar.detailPaneWordWrap">
-         </action>
-         <action
-               class="org.eclipse.debug.internal.ui.views.variables.MaxDetailsLengthAction"
-               helpContextId="detail_pane_max_length_action_context"
-               id="org.eclipse.debug.ui.expresssionsView.pulldown.MaxDetailsLength"
-               label="%DetailPaneMaxLengthAction.label"
-               menubarPath="viewActions"
-               style="push"
-               tooltip="%DetailPaneMaxLengthAction.tooltip"/>         
-      </viewContribution>
-      <viewContribution
-            targetID="org.eclipse.debug.ui.RegistersView"
-            id="org.eclipse.debug.ui.registersView.toolbar">
-         <action
-               label="%DetailPaneWordWrapAction.label"
-               style="toggle"
-               helpContextId="detail_pane_word_wrap_action_context"
-               tooltip="%DetailPaneWordWrapAction.tooltip"
-               class="org.eclipse.debug.internal.ui.views.variables.DetailPaneWordWrapAction"
-               menubarPath="viewActions"
-               id="org.eclipse.debug.ui.registersView.toolbar.detailPaneWordWrap">
-         </action>
-		 <action
-               class="org.eclipse.debug.internal.ui.views.variables.MaxDetailsLengthAction"
-               helpContextId="detail_pane_max_length_action_context"
-               id="org.eclipse.debug.ui.registersView.pulldown.MaxDetailsLength"
-               label="%DetailPaneMaxLengthAction.label"
-               menubarPath="viewActions"
-               style="push"
-               tooltip="%DetailPaneMaxLengthAction.tooltip"/>         
-      </viewContribution>
-      <viewContribution
-            targetID="org.eclipse.debug.ui.MemoryView"
-            id="org.eclipse.debug.ui.memoryView.toolbar">
-         <action
-               class="org.eclipse.debug.internal.ui.views.memory.PinMemoryBlockAction"
-               helpContextId="PinMemoryBlockAction_context"
-               icon="icons/full/elcl16/pin.gif"
-               id="org.eclipse.debug.ui.PinMemoryBlockAction"
-               label="%PinMemoryBlockAction.label "
-               state="true"
-               style="toggle"
-               toolbarPath="additions"
-               tooltip="%PinMemoryBlockAction.label "/>
-         <action
-               class="org.eclipse.debug.internal.ui.views.memory.NewMemoryViewAction"
-               helpContextId="NewMemoryViewAction_context"
-               icon="icons/full/elcl16/new_con.gif"
-               id="org.eclipse.debug.ui.NewMemoryViewAction"
-               label="%NewMemoryViewAction.label"
-               style="push"
-               toolbarPath="additions"
-               tooltip="%NewMemoryViewAction.label"/>
-         <action
-               disabledIcon="icons/full/dlcl16/var_cntnt_prvdr.gif"
-               hoverIcon="icons/full/elcl16/var_cntnt_prvdr.gif"
-               toolbarPath="MemoryMonitorsGroup"
-               label="%ToggleMemoryMonitorsPaneAction.name"
-               tooltip="%ToggleMemoryMonitorsPaneAction.name"
-               class="org.eclipse.debug.internal.ui.views.memory.ToggleMemoryMonitorsAction"
-               icon="icons/full/elcl16/var_cntnt_prvdr.gif"
-               style="toggle"
-               id="org.eclipse.debug.ui.togglemonitors"/>
-         <action
-               disabledIcon="icons/full/dlcl16/synced.gif"
-               hoverIcon="icons/full/elcl16/synced.gif"
-               toolbarPath="RenderingPanesGroup"
-               label="%LinkRenderingPanesAction.name"
-               tooltip="%LinkRenderingPanesAction.name"
-               icon="icons/full/elcl16/synced.gif"
-               class="org.eclipse.debug.internal.ui.views.memory.LinkRenderingPanesAction"
-               style="toggle"
-               id="org.eclipse.debug.ui.linkrenderingpanes"/>
-         <action
-               class="org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingPrefAction"
-               helpContextId="TableRenderingPrefAction_context"
-               id="org.eclipse.debug.ui.tablerendering.preferencesaction"
-               label="%TableRenderingPrefActionName"
-               menubarPath="additions"
-               style="push"
-               tooltip="%TableRenderingPrefActionName"/>
-         <action
-               disabledIcon="icons/full/dlcl16/det_pane_right.gif"
-               hoverIcon="icons/full/elcl16/det_pane_right.gif"
-               toolbarPath="RenderingPanesGroup"
-               label="%ToggleSplitPaneAction.name"
-               tooltip="%ToggleSplitPaneAction.name"
-               icon="icons/full/elcl16/toggledetailpane_co.gif"
-               class="org.eclipse.debug.internal.ui.views.memory.ToggleSplitPaneAction"
-               style="toggle"
-               id="org.eclipse.debug.ui.togglesplitpane"/>
-         <action
-               helpContextId="SetPaddedStrAction_context"
-               label="%SetPaddedStrActionName"
-               class="org.eclipse.debug.internal.ui.views.memory.renderings.SetPaddedStringAction"
-               tooltip="%SetPaddedStrActionName"
-               style="push"
-               menubarPath="additions"
-               id="org.eclipse.debug.ui.setPaddedStrAction"/>
-         <action
-               class="org.eclipse.debug.internal.ui.views.memory.SelectCodePagesAction"
-               helpContextId="SelectCodePagesAction_context"
-               id="org.eclipse.debug.ui.selectCodePage"
-               label="%SelectCodepagesAction.label"
-               menubarPath="additions"
-               style="push"
-               tooltip="%SelectCodepagesAction.label"/>
-      </viewContribution>
-   </extension>
-   <extension
-         point="org.eclipse.ui.popupMenus">
-<!-- Watch expression actions -->
-      <objectContribution
-            objectClass="org.eclipse.debug.core.model.IExpression"
-            id="org.eclipse.debug.ui.ExpressionActions">
-         <visibility>
-            <not>
-               <objectClass
-                     name="org.eclipse.debug.core.model.IWatchExpression">
-               </objectClass>
-            </not>
-         </visibility>
-         <action
-               label="%convertToWatchExpressionAction.label"
-               helpContextId="convert_to_watch_expression_context"
-               class="org.eclipse.debug.internal.ui.actions.ConvertToWatchExpressionAction"
-               tooltip="%convertToWatchExpressionAction.tooltip"
-               menubarPath="additions"
-               enablesFor="*"
-               id="org.eclipse.debug.ui.actions.ConvertToWatchExpression">
-         </action>
-      </objectContribution>
-      <objectContribution
-            objectClass="org.eclipse.debug.core.model.IVariable"
-            id="org.eclipse.debug.ui.WatchActions">
-         <action
-               label="%Watch.label"
-               icon="icons/full/etool16/watch_exp.gif"
-               helpContextId="variable_watch_action_context"
-               class="org.eclipse.debug.internal.ui.actions.WatchAction"
-               menubarPath="openOnGroup"
-               enablesFor="+"
-               id="org.eclipse.jdt.debug.ui.actions.WatchAction">
-         </action>
-      </objectContribution>
-      <objectContribution
-            objectClass="org.eclipse.debug.core.model.IWatchExpression"
-            id="org.eclipse.debug.ui.WatchExpressionActions">
-         <action
-               label="%editWatchExpressionAction.label"
-               helpContextId="edit_watch_expression_context"
-               class="org.eclipse.debug.internal.ui.actions.EditWatchExpressionAction"
-               tooltip="%editWatchExpressionAction.tooltip"
-               menubarPath="additions"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.watchExpressionActions.EditWatchExpression">
-         </action>
-      </objectContribution>
-      <objectContribution
-            objectClass="org.eclipse.debug.core.model.IWatchExpression"
-            id="org.eclipse.debug.ui.WatchExpressionActions">
-         <action
-               label="%enableWatchExpressionAction.label"
-               helpContextId="enable_watch_expression_context"
-               class="org.eclipse.debug.internal.ui.actions.EnableWatchExpressionAction"
-               tooltip="%enableWatchExpressionAction.tooltip"
-               menubarPath="additions"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.watchExpressionActions.EnableWatchExpression">
-         </action>
-      </objectContribution>
-      <objectContribution
-            objectClass="org.eclipse.debug.core.model.IWatchExpression"
-            id="org.eclipse.debug.ui.WatchExpressionActions">
-         <action
-               label="%disableWatchExpressionAction.label"
-               helpContextId="disable_watch_expression_context"
-               class="org.eclipse.debug.internal.ui.actions.DisableWatchExpressionAction"
-               tooltip="%disableWatchExpressionAction.tooltip"
-               menubarPath="additions"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.watchExpressionActions.DisableWatchExpression">
-         </action>
-      </objectContribution>
-      <objectContribution
-            objectClass="org.eclipse.debug.core.model.IWatchExpression"
-            id="org.eclipse.debug.WatchExpressionActions">
-         <action
-               label="%reevaluateWatchExpressionAction.label"
-               helpContextId="reevaluate_watch_expression_context"
-               class="org.eclipse.debug.internal.ui.actions.ReevaluateWatchExpressionAction"
-               tooltip="%reevaluateWatchExpressionAction.tooltip"
-               menubarPath="additions"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.watchExpressionActions.ReevaluateWatchExpression">
-         </action>
-      </objectContribution>
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.ExpressionView"
-            id="org.eclipse.debug.ui.ExpressionViewPopupActions">
-         <action
-               label="%addWatchExpressionAction.label"
-               icon="icons/full/etool16/watch_exp.gif"
-               helpContextId="add_watch_expression_context"
-               class="org.eclipse.debug.internal.ui.actions.AddWatchExpressionAction"
-               tooltip="%addWatchExpressionAction.tooltip"
-               menubarPath="additions"
-               id="org.eclipse.debug.ui.expressionViewActions.AddWatchExpression">
-         </action>
-      </viewerContribution>
-<!-- Watchpoint actions -->      
-      <objectContribution
-            objectClass="org.eclipse.debug.core.model.IWatchpoint"
-            id="org.eclipse.debug.ui.WatchpointToggleActions">
-         <action
-               label="%accessAction.label"
-               helpContextId="access_toggle_action_context"
-               state="false"
-               class="org.eclipse.debug.internal.ui.actions.AccessWatchpointToggleAction"
-               menubarPath="emptyBreakpointGroup"
-               enablesFor="+"
-               id="org.eclipse.debug.ui.actions.AccessToggle">
-         </action>
-         <action
-               label="%modificationAction.label"
-               helpContextId="modification_toggle_action_context"
-               state="false"
-               class="org.eclipse.debug.internal.ui.actions.ModificationWatchpointToggleAction"
-               menubarPath="emptyBreakpointGroup"
-               enablesFor="+"
-               id="org.eclipse.debug.ui.actions.ModificationToggle">
-         </action>
-      </objectContribution>
-<!-- Contributions to Debug View Popup Menu -->
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.DebugView"
-            id="org.eclipse.debug.ui.debugview.popupMenu">
-      <!-- Edit Group -->
-         <action
-               label="%CopyToClipboardAction.label"
-               icon="icons/full/elcl16/copy_edit_co.gif"
-               definitionId="org.eclipse.ui.edit.copy"
-               helpContextId="copy_to_clipboard_action_context"
-               class="org.eclipse.debug.internal.ui.actions.CopyToClipboardActionDelegate"
-               menubarPath="editGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.copyToClipboard">
-            <selection
-                  class="org.eclipse.debug.core.model.IDebugElement">
-            </selection>
-         </action>
-      <!-- Launch Group -->
-         <action
-               label="%TerminateAllAction.label"
-               icon="icons/full/elcl16/terminate_all_co.gif"
-               helpContextId="terminate_all_action_context"
-               class="org.eclipse.debug.internal.ui.actions.TerminateAllAction"
-               menubarPath="launchGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.terminateAll">
-         </action>
-         <action
-               label="%RelaunchAction.label"
-               icon="icons/full/elcl16/runlast_co.gif"
-               helpContextId="relaunch_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RelaunchActionDelegate"
-               menubarPath="launchGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.relaunch">
-         </action>
-         <action
-               label="%TerminateAndRemoveAction.label"
-               icon="icons/full/elcl16/terminate_rem_co.gif"
-               helpContextId="terminate_and_remove_action_context"
-               class="org.eclipse.debug.internal.ui.actions.TerminateAndRemoveActionDelegate"
-               menubarPath="launchGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.terminateAndRemove">
-            <selection
-                  class="org.eclipse.debug.core.model.ITerminate">
-            </selection>
-         </action>
-      <!-- Thread Group -->
-         <action
-               label="%RemoveAllTerminatedAction.label"
-               icon="icons/full/elcl16/rem_all_co.gif"
-               helpContextId="remove_all_terminated_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RemoveAllTerminatedAction"
-               menubarPath="launchGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.removeAllTerminated">
-         </action>
-         <action
-               label="%DisconnectAction.label"
-               icon="icons/full/elcl16/disconnect_co.gif"
-               helpContextId="disconnect_action_context"
-               class="org.eclipse.debug.internal.ui.actions.DisconnectActionDelegate"
-               menubarPath="threadGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.disconnect">
-            <selection
-                  class="org.eclipse.debug.core.model.IDisconnect">
-            </selection>
-         </action>
-         <action
-               label="%TerminateAndRelaunchAction.label"
-               class="org.eclipse.debug.internal.ui.actions.TerminateAndRelaunchAction"
-               definitionId="org.eclipse.debug.ui.commands.TerminateAndRelaunch"
-               helpContextId="terminate_and_relaunch_action_context"
-               icon="icons/full/etool16/term_restart.gif"
-               id="org.eclipse.debug.ui.debugview.popupMenu.TerminateAndRelaunch"
-               menubarPath="threadGroup">
-         </action>
-         <action
-               label="%TerminateAction.label"
-               icon="icons/full/elcl16/terminate_co.gif"
-               helpContextId="terminate_action_context"
-               definitionId="org.eclipse.debug.ui.commands.Terminate"
-               class="org.eclipse.debug.internal.ui.actions.TerminateActionDelegate"
-               menubarPath="threadGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.terminate">
-            <selection
-                  class="org.eclipse.debug.core.model.ITerminate">
-            </selection>
-         </action>
-         <action
-               label="%SuspendAction.label"
-               icon="icons/full/elcl16/suspend_co.gif"
-               helpContextId="suspend_action_context"
-               definitionId="org.eclipse.debug.ui.commands.Suspend"
-               class="org.eclipse.debug.internal.ui.actions.SuspendActionDelegate"
-               menubarPath="threadGroup"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.debugview.popupMenu.suspend">
-            <selection
-                  class="org.eclipse.debug.core.model.ISuspendResume">
-            </selection>
-         </action>
-         <action
-               label="%ResumeAction.label"
-               icon="icons/full/elcl16/resume_co.gif"
-               helpContextId="resume_action_context"
-               definitionId="org.eclipse.debug.ui.commands.Resume"
-               class="org.eclipse.debug.internal.ui.actions.ResumeActionDelegate"
-               menubarPath="threadGroup"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.debugview.popupMenu.resume">
-            <selection
-                  class="org.eclipse.debug.core.model.ISuspendResume">
-            </selection>
-         </action>
-      <!-- Step Group -->
-         <action
-               label="%DropToFrameAction.label"
-               icon="icons/full/elcl16/drop_to_frame.gif"
-               helpContextId="drop_to_frame_action_context"
-               class="org.eclipse.debug.internal.ui.actions.DropToFrameActionDelegate"
-               menubarPath="stepReturnGroup"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.debugview.popupMenu.dropToFrame">
-            <selection
-                  class="org.eclipse.debug.core.model.IDropToFrame">
-            </selection>
-         </action>      
-         <action
-               label="%StepReturnAction.label"
-               icon="icons/full/elcl16/stepreturn_co.gif"
-               helpContextId="step_return_action_context"
-               definitionId="org.eclipse.debug.ui.commands.StepReturn"
-               class="org.eclipse.debug.internal.ui.actions.StepReturnActionDelegate"
-               menubarPath="stepReturnGroup"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.debugview.popupMenu.stepReturn">
-            <selection
-                  class="org.eclipse.debug.core.model.IStep">
-            </selection>
-         </action>
-         <action
-               label="%StepOverAction.label"
-               icon="icons/full/elcl16/stepover_co.gif"
-               helpContextId="step_over_action_context"
-               definitionId="org.eclipse.debug.ui.commands.StepOver"
-               class="org.eclipse.debug.internal.ui.actions.StepOverActionDelegate"
-               menubarPath="stepOverGroup"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.debugview.popupMenu.stepOver">
-            <selection
-                  class="org.eclipse.debug.core.model.IStep">
-            </selection>
-         </action>
-         <action
-               label="%StepIntoAction.label"
-               icon="icons/full/elcl16/stepinto_co.gif"
-               helpContextId="step_into_action_context"
-               definitionId="org.eclipse.debug.ui.commands.StepInto"
-               class="org.eclipse.debug.internal.ui.actions.StepIntoActionDelegate"
-               menubarPath="stepIntoGroup"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.debugview.popupMenu.stepInto">
-            <selection
-                  class="org.eclipse.debug.core.model.IStep">
-            </selection>
-         </action>
-      <!-- Render Group -->  
-         <action
-               label="%StepWithFiltersAction.label"
-               icon="icons/full/elcl16/stepbystep_co.gif"
-               helpContextId="step_with_filters_action_context"
-               definitionId="org.eclipse.debug.ui.commands.ToggleStepFilters"
-               class="org.eclipse.debug.internal.ui.actions.ToggleStepFiltersActionDelegate"
-               menubarPath="renderGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.stepWithFilters"
-               style="toggle"
-               state="false">
-         </action>         
-      </viewerContribution>
-<!-- Contributions to Breakpoints View Popup Menu -->
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.BreakpointView"
-            id="org.eclipse.debug.ui.breakpointview.breakpointGroupActions">
-         <visibility>
-            <objectClass
-               name="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer">
-            </objectClass>
-         </visibility>
-         <action
-               label="%editGroup.label"
-               class="org.eclipse.debug.internal.ui.actions.breakpointGroups.EditBreakpointGroupAction"
-               menubarPath="breakpointGroupGroup"
-               enablesFor="1"
-               id="org.eclipse.debug.ui.actions.editBreakpointGroup">
-         </action>
-         <action
-               label="%ToggleDefault.label"
-               class="org.eclipse.debug.internal.ui.actions.breakpointGroups.ToggleDefaultGroupAction"
-               menubarPath="breakpointGroupGroup"
-               id="org.eclipse.debug.ui.actions.toggleDefaultGroup"/>
-      </viewerContribution>
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.BreakpointView"
-            id="org.eclipse.debug.ui.breakpointview.popupMenu">
-         <action
-               label="%SelectAll.label"
-               helpContextId="select_all_breakpoints_action_context"
-               definitionId="org.eclipse.ui.edit.selectAll"
-               class="org.eclipse.debug.internal.ui.actions.SelectAllBreakpointsAction"
-               menubarPath="breakpointGroup"
-               id="org.eclipse.debug.ui.actions.SelectAllBreakpointsAction">
-         </action>
-         <action
-               label="%RemoveAllAction.label"
-               icon="icons/full/elcl16/rem_all_co.gif"
-               helpContextId="remove_all_breakpoints_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RemoveAllBreakpointsAction"
-               menubarPath="breakpointGroup"
-               id="org.eclipse.debug.ui.actions.RemoveAllBreakpoints">
-         </action>
-        <action
-               label="%RemoveAction.label"
-               icon="icons/full/elcl16/rem_co.gif"
-               helpContextId="remove_breakpoint_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RemoveBreakpointAction"
-               menubarPath="breakpointGroup"
-               enablesFor="1+"
-               id="org.eclipse.debug.ui.breakpointsView.toolbar.remove">
-        </action>
-        <action
-               label="%DisableBreakpointsAction.label"
-               icon="icons/full/elcl16/disabled_co.gif"
-               helpContextId="disable_breakpoint_action_context"
-               class="org.eclipse.debug.internal.ui.actions.DisableBreakpointsAction"
-               menubarPath="breakpointGroup"
-               enablesFor="1+"
-               id="org.eclipse.debug.ui.actions.DisableBreakpoint">
-        </action>
-        <action
-               label="%EnableBreakpointsAction.label"
-               icon="icons/full/elcl16/enabled_co.gif"
-               helpContextId="enable_breakpoint_action_context"
-               class="org.eclipse.debug.internal.ui.actions.EnableBreakpointsAction"
-               menubarPath="breakpointGroup"
-               enablesFor="1+"
-               id="org.eclipse.debug.ui.actions.EnableBreakpoint">
-        </action>
-      </viewerContribution>
-      <!-- Breakpoint actions -->
-<!-- Contributions to Variables View Popup Menu -->
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.VariableView"
-            id="org.eclipse.debug.ui.variablesView.popupMenu">
-      <!-- Variable Group -->
-         <action
-               label="%CopyVariablesToClipboardAction.label"
-               icon="icons/full/elcl16/copy_edit_co.gif"
-               definitionId="org.eclipse.ui.edit.copy"
-               helpContextId="copy_variables_to_clipboard_action_context"
-               class="org.eclipse.debug.internal.ui.actions.CopyVariablesToClipboardActionDelegate"
-               menubarPath="variableGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.copyVariablesToClipboard">
-            <selection
-                  class="org.eclipse.debug.core.model.IDebugElement">
-            </selection>
-         </action>
-         <action
-               label="%SelectAll.label"
-               helpContextId="select_all_variables_action_context"
-               definitionId="org.eclipse.ui.edit.selectAll"
-               class="org.eclipse.debug.internal.ui.actions.SelectAllVariablesAction"
-               menubarPath="variableGroup"
-               id="org.eclipse.debug.ui.actions.SelectAllVariablesAction">
-         </action>
-      </viewerContribution>
-<!-- Contributions to Expression View Popup Menu -->
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.ExpressionView"
-            id="org.eclipse.debug.ui.expressionView.popupMenu">
-      <!-- Expression Group -->
-         <action
-               label="%RemoveAllAction.label"
-               icon="icons/full/elcl16/rem_all_co.gif"
-               helpContextId="remove_all_expressions_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RemoveAllExpressionsAction"
-               menubarPath="expressionGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.removeAllExpressionsAction">
-         </action>
-         <action
-               label="%RemoveAction.label"
-               icon="icons/full/elcl16/rem_co.gif"
-               helpContextId="remove_expression_action_context"
-               class="org.eclipse.debug.internal.ui.actions.RemoveExpressionAction"
-               menubarPath="expressionGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.removeExpressionAction">
-            <selection
-                  class="org.eclipse.debug.core.model.IExpression">
-            </selection>
-            <selection
-                  class="org.eclipse.debug.core.model.IVariable">
-            </selection>
-         </action>
-         <action
-               label="%CopyVariablesToClipboardAction.label"
-               icon="icons/full/elcl16/copy_edit_co.gif"
-               definitionId="org.eclipse.ui.edit.copy"
-               helpContextId="copy_variables_to_clipboard_action_context"
-               class="org.eclipse.debug.internal.ui.actions.CopyVariablesToClipboardActionDelegate"
-               menubarPath="expressionGroup"
-               id="org.eclipse.debug.ui.debugview.popupMenu.copyVariablesToClipboard">
-            <selection
-                  class="org.eclipse.debug.core.model.IDebugElement">
-            </selection>
-         </action>
-         <action
-               label="%SelectAll.label"
-               helpContextId="select_all_expressions_action_context"
-               definitionId="org.eclipse.ui.edit.selectAll"
-               class="org.eclipse.debug.internal.ui.actions.SelectAllExpressionsAction"
-               menubarPath="expressionGroup"
-               id="org.eclipse.debug.ui.actions.SelectAllExpressionsAction">
-         </action>
-      </viewerContribution>
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.RegistersView"
-            id="org.eclipse.debug.ui.registersView.popupMenu">
-      <!-- Variable Group -->
-         <action
-               menubarPath="variableGroup"
-               class="org.eclipse.debug.internal.ui.actions.CopyVariablesToClipboardActionDelegate"
-               definitionId="org.eclipse.ui.edit.copy"
-               icon="icons/full/elcl16/copy_edit_co.gif"
-               label="%CopyVariablesToClipboardAction.label"
-               id="org.eclipse.debug.ui.debugview.popupMenu.copyVariablesToClipboard"
-               helpContextId="copy_variables_to_clipboard_action_context">
-            <selection
-                  class="org.eclipse.debug.core.model.IDebugElement">
-            </selection>
-         </action>
-         <action
-               class="org.eclipse.debug.internal.ui.actions.SelectAllVariablesAction"
-               label="%SelectAll.label"
-               menubarPath="variableGroup"
-               definitionId="org.eclipse.ui.edit.selectAll"
-               helpContextId="select_all_variables_action_context"
-               id="org.eclipse.debug.ui.actions.SelectAllVariablesAction">
-         </action>
-      </viewerContribution>
-   </extension>
-<!-- Contribution to Memory View, integer renderings -->
-   <extension
-         point="org.eclipse.ui.popupMenus">
-      <objectContribution
-            objectClass="org.eclipse.debug.internal.ui.views.memory.renderings.AbstractIntegerRendering"
-            id="org.eclipse.debug.ui.memory">
-         <menu
-               label="%Endianess"
-               path="additions"
-               id="org.eclipse.debug.ui.memory.rendering.setendianess">
-            <separator name="setEndianessGroup"/>
-            <groupMarker name="defaultEndianessGroup"/>
-         </menu>
-          <action
-                helpContextId="LittleEndianAction_context"
-                enablesFor="1"
-                label="%LittleEndianActionName"
-                class="org.eclipse.debug.internal.ui.views.memory.renderings.LittleEndianAction"
-                menubarPath="org.eclipse.debug.ui.memory.rendering.setendianess/setEndianessGroup"
-                id="org.eclipse.debug.ui.memory.rendering.LittleEndianAction"> 
-         </action>            
-         <action
-               helpContextId="BigEndianAction_context"
-               enablesFor="1"
-               label="%BigEndianActionName"
-               class="org.eclipse.debug.internal.ui.views.memory.renderings.BigEndianAction"
-               menubarPath="org.eclipse.debug.ui.memory.rendering.setendianess/setEndianessGroup"
-               id="org.eclipse.debug.ui.memory.rendering.BigEndianAction"> 
-         </action>
-         <action
-               class="org.eclipse.debug.internal.ui.views.memory.renderings.DefaultEndianessAction"
-               enablesFor="1"
-               helpContextId="RestoreDefEndianessAction_context"
-               id="org.eclipse.debug.ui.memory.rendering.DefaultEndianAction"
-               label="%RestoreDefEndianessActionName"
-               menubarPath="org.eclipse.debug.ui.memory.rendering.setendianess/defaultEndianessGroup"/>
-      </objectContribution>
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.MemoryView.RenderingViewPane.1"
-            id="org.eclipse.debug.ui.memory.renderingviewpane.1">
-         <menu
-               label="%AddRemoveRenderingMenu.name"
-               path="popUpBegin"
-               id="org.eclipse.debug.ui.memory.renderingviewpane.1.addremove">
-         </menu>
-         <action
-               helpContextId="RemoveRenderingContextAction_context"
-               label="%RemoveRenderingAction.name"
-               class="org.eclipse.debug.internal.ui.views.memory.RemoveRenderingContextAction"
-               icon="icons/full/elcl16/removememory_tsk.gif"
-               menubarPath="org.eclipse.debug.ui.memory.renderingviewpane.1.addremove"
-               id="org.eclipse.debug.ui.MemoryView.RenderingViewPane.1.remove"/>
-         <action
-               helpContextId="AddRenderingContextAction_context"
-               label="%AddRenderingAction.name"
-               class="org.eclipse.debug.internal.ui.views.memory.AddMemoryRenderingContextAction"
-               icon="icons/full/elcl16/monitorexpression_tsk.gif"
-               menubarPath="org.eclipse.debug.ui.memory.renderingviewpane.1.addremove"
-               id="org.eclipse.debug.ui.MemoryView.RenderingViewPane.1.add"/>
-      </viewerContribution>
-      <viewerContribution
-            targetID="org.eclipse.debug.ui.MemoryView.RenderingViewPane.2"
-            id="org.eclipse.debug.ui.memory.renderingviewpane.2">
-         <menu
-               label="%AddRemoveRenderingMenu.name"
-               path="popUpBegin"
-               id="org.eclipse.debug.ui.memory.renderingviewpane.2.addremove"/>
-         <action
-               helpContextId="RemoveRenderingContextAction_context"
-               label="%RemoveRenderingAction.name"
-               class="org.eclipse.debug.internal.ui.views.memory.RemoveRenderingContextAction"
-               icon="icons/full/elcl16/removememory_tsk.gif"
-               menubarPath="org.eclipse.debug.ui.memory.renderingviewpane.2.addremove"
-               id="org.eclipse.debug.ui.MemoryView.RenderingViewPane.2.remove"/>
-         <action
-               helpContextId="AddRenderingContextAction_context"
-               label="%AddRenderingAction.name"
-               class="org.eclipse.debug.internal.ui.views.memory.AddMemoryRenderingContextAction"
-               icon="icons/full/elcl16/monitorexpression_tsk.gif"
-               menubarPath="org.eclipse.debug.ui.memory.renderingviewpane.2.addremove"
-               id="org.eclipse.debug.ui.MemoryView.RenderingViewPane.2.add"/>
-      </viewerContribution>   
-   </extension>   
-   <extension
-         point="org.eclipse.ui.elementFactories">
-      <factory
-            class="org.eclipse.debug.internal.ui.launchConfigurations.PersistableLaunchConfigurationFactory"
-            id="org.eclipse.debug.ui.PersistableLaunchConfigurationFactory">
-      </factory>
-      <factory
-            class="org.eclipse.debug.internal.ui.launchConfigurations.PersistableLaunchConfigurationTypeFactory"
-            id="org.eclipse.debug.ui.PersistableLaunchConfigurationTypeFactory">
-      </factory>
-   </extension>
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%NoSourceFoundEditor.name"
-            icon="icons/full/obj16/stckframe_obj.gif"
-            class="org.eclipse.debug.internal.ui.views.launch.SourceNotFoundEditor"
-            contributorClass="org.eclipse.ui.part.EditorActionBarContributor"
-            id="org.eclipse.debug.ui.NoSourceFoundEditor">
-      </editor>
-   </extension>
-   <extension
-         point="org.eclipse.debug.core.statusHandlers">
-      <statusHandler
-            code="115"
-            plugin="org.eclipse.debug.core"
-            class="org.eclipse.debug.internal.ui.WorkingDirectoryStatusHandler"
-            id="org.eclipse.debug.ui.statusHandler.workingDirectory">
-      </statusHandler>
-      <statusHandler
-            code="200"
-            plugin="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.sourcelookup.Prompter"
-            id="org.eclipse.debug.ui.statusHandler.prompter">
-      </statusHandler>  
-      <statusHandler
-            code="205"
-            plugin="org.eclipse.debug.ui"
-            class="org.eclipse.debug.internal.ui.sourcelookup.ResolveDuplicatesHandler"
-            id="org.eclipse.debug.ui.statusHandler.selectSourceDialog">
-      </statusHandler>      
-      <statusHandler
-            plugin="org.eclipse.debug.core"
-            code="201"
-            class="org.eclipse.debug.internal.ui.launchConfigurations.DebugModePromptStatusHandler"
-            id="org.eclipse.debug.ui.statusHandler.debugModePromptStatusHandler">
-      </statusHandler>
-      <statusHandler
-            plugin="org.eclipse.debug.core"
-            code="202"
-            class="org.eclipse.debug.internal.ui.launchConfigurations.CompileErrorPromptStatusHandler"
-            id="org.eclipse.debug.ui.statusHandler.compileErrorPromptStatusHandler">
-      </statusHandler>
-      <statusHandler
-            code="203"
-            class="org.eclipse.debug.internal.ui.launchConfigurations.CompileErrorProjectPromptStatusHandler"
-            id="org.eclipse.debug.ui.statusHandler.compileErrorProjectPromptStatusHandler"
-            plugin="org.eclipse.debug.core"/> 
-   </extension>
-   <extension
-         point="org.eclipse.debug.ui.launchGroups">
-      <launchGroup
-            label="%DebugLaunchGroup.label"
-            bannerImage="icons/full/wizban/debug_wiz.gif"
-            image="icons/full/etool16/debug_exc.gif"
-            mode="debug"
-            id="org.eclipse.debug.ui.launchGroup.debug"
-            title="%DebugLaunchGroup.title">
-      </launchGroup>
-      <launchGroup
-            label="%RunLaunchGroup.label"
-            bannerImage="icons/full/wizban/run_wiz.gif"
-            image="icons/full/etool16/run_exc.gif"
-            mode="run"
-            id="org.eclipse.debug.ui.launchGroup.run"
-            title="%RunLaunchGroup.title">
-      </launchGroup>
-      <launchGroup
-            label="%ProfileLaunchGroup.label"
-            bannerImage="icons/full/wizban/profile_wiz.gif"
-            image="icons/full/etool16/profile_exc.gif"
-            mode="profile"
-            id="org.eclipse.debug.ui.launchGroup.profile"
-            title="%ProfileLaunchGroup.title">
-      </launchGroup>
-   </extension>
-   <extension
-         point="org.eclipse.ui.propertyPages">
-      <page
-            objectClass="org.eclipse.debug.core.model.IProcess"
-            name="%processPropertyPageName"
-            class="org.eclipse.debug.internal.ui.preferences.ProcessPropertyPage"
-            id="org.eclipse.debug.ui.properties.process">
-      </page>
-      <page
-            objectClass="org.eclipse.debug.core.model.IDebugElement"
-            name="%processPropertyPageName"
-            class="org.eclipse.debug.internal.ui.preferences.ProcessPropertyPage"
-            id="org.eclipse.debug.ui.properties.process">
-      </page>
-      <page
-            class="org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingPropertiesPage"
-            id="org.eclipse.debug.ui.properties.tablerendering"
-            name="%TableRenderingInfo.label"
-            objectClass="org.eclipse.debug.ui.memory.AbstractTableRendering"/>
-   </extension>
-<!-- commands and their bindings
-NOTE: 
-M1 = CTRL/COMMAND 
-M2 = SHIFT 
-M3 = ALT 
-M4 = Platform-specific fourth key
--->
-   <extension
-         point="org.eclipse.ui.commands">
-      <category
-            name="%runCategory.name"
-            description="%runCategory.description"
-            id="org.eclipse.debug.ui.category.run">
-      </category>
-      <command
-            name="%ActionDefinition.toggleStepFilters.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.toggleStepFilters.description"
-            id="org.eclipse.debug.ui.commands.ToggleStepFilters">
-      </command>
-      <command
-            name="%ActionDefinition.stepInto.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.stepInto.description"
-            id="org.eclipse.debug.ui.commands.StepInto">
-      </command>
-      <command
-            name="%ActionDefinition.stepOver.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.stepOver.description"
-            id="org.eclipse.debug.ui.commands.StepOver">
-      </command>
-      <command
-            name="%ActionDefinition.stepReturn.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.stepReturn.description"
-            id="org.eclipse.debug.ui.commands.StepReturn">
-      </command>
-      <command
-            name="%ActionDefinition.resume.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.resume.description"
-            id="org.eclipse.debug.ui.commands.Resume">
-      </command>
-      <command
-            name="%ActionDefinition.terminate.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.terminate.description"
-            id="org.eclipse.debug.ui.commands.Terminate">
-      </command>
-      <command
-            name="%ActionDefinition.terminateAndRelaunch.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.terminateAndRelaunch.description"
-            id="org.eclipse.debug.ui.commands.TerminateAndRelaunch">
-      </command>
-      <command
-            name="%ActionDefinition.suspend.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.suspend.description"
-            id="org.eclipse.debug.ui.commands.Suspend">
-      </command>
-      <command
-            name="%ActionDefinition.openProfile.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.openProfile.description"
-            id="org.eclipse.debug.ui.commands.OpenProfileConfigurations">
-      </command>
-      <command
-            name="%ActionDefinition.openRun.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.openRun.description"
-            id="org.eclipse.debug.ui.commands.OpenRunConfigurations">
-      </command>
-      <command
-            name="%ActionDefinition.openDebug.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.openDebug.description"
-            id="org.eclipse.debug.ui.commands.OpenDebugConfigurations">
-      </command>
-      <command
-            name="%ActionDefinition.debugLast.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.debugLast.description"
-            id="org.eclipse.debug.ui.commands.DebugLast">
-      </command>
-      <command
-            name="%ActionDefinition.runLast.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.runLast.description"
-            id="org.eclipse.debug.ui.commands.RunLast">
-      </command>
-      <command
-            name="%ActionDefinition.profileLast.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.profileLast.description"
-            id="org.eclipse.debug.ui.commands.ProfileLast">
-      </command>
-      <command
-            name="%ActionDefinition.runToLine.name"
-            description="%ActionDefinition.runToLine.description"
-            categoryId="org.eclipse.debug.ui.category.run"
-            id="org.eclipse.debug.ui.commands.RunToLine">
-      </command>  
-      <command
-            name="%ActionDefinition.toggleBreakpoint.name"
-            description="%ActionDefinition.toggleBreakpoint.description"
-            categoryId="org.eclipse.debug.ui.category.run"
-            id="org.eclipse.debug.ui.commands.ToggleBreakpoint">
-      </command>
-      <command
-            name="%ActionDefinition.skipAllBreakpoints.name"
-            description="%ActionDefinition.skipAllBreakpoints.description"
-            categoryId="org.eclipse.debug.ui.category.run"
-            id="org.eclipse.debug.ui.commands.SkipAllBreakpoints">
-      </command>
-      <command
-            name="%ActionDefinition.toggleWatchpoint.name"
-            description="%ActionDefinition.toggleWatchpoint.description"
-            categoryId="org.eclipse.debug.ui.category.run"
-            id="org.eclipse.debug.ui.commands.ToggleWatchpoint">
-      </command>
-      <command
-            name="%ActionDefinition.toggleMethodBreakpoint.name"
-            description="%ActionDefinition.toggleMethodBreakpoint.description"
-            categoryId="org.eclipse.debug.ui.category.run"
-            id="org.eclipse.debug.ui.commands.ToggleMethodBreakpoint">
-      </command>
-<!-- console -->      
-      <command
-            name="%ActionDefinition.eof.name"
-            categoryId="org.eclipse.debug.ui.category.run"
-            description="%ActionDefinition.eof.description"
-            id="org.eclipse.debug.ui.commands.eof">
-      </command>
-<!-- views -->
-      <command
-            name="%ViewCommand.debugView.name"
-            description="%ViewCommand.debugView.description"
-            categoryId="org.eclipse.ui.category.views"
-            id="org.eclipse.debug.ui.DebugView">
-      </command>
-      <command
-            name="%ViewCommand.breakpointView.name"
-            description="%ViewCommand.breakpointView.description"
-            categoryId="org.eclipse.ui.category.views"
-            id="org.eclipse.debug.ui.BreakpointView">
-      </command>
-      <command
-            name="%ViewCommand.variableView.name"
-            description="%ViewCommand.variableView.description"
-            categoryId="org.eclipse.ui.category.views"
-            id="org.eclipse.debug.ui.VariableView">
-      </command>
-      <command
-            name="%ViewCommand.expressionView.name"
-            description="%ViewCommand.expressionView.description"
-            categoryId="org.eclipse.ui.category.views"
-            id="org.eclipse.debug.ui.ExpressionView">
-      </command>
-      <command
-            name="%ViewCommand.registerView.name"
-            description="%ViewCommand.registerView.description"
-            categoryId="org.eclipse.ui.category.views"
-            id="org.eclipse.debug.ui.RegisterView">
-      </command>
-      <command
-            name="%ViewCommand.memoryView.name"
-            description="%ViewCommand.memoryView.description"
-            categoryId="org.eclipse.ui.category.views"
-            id="org.eclipse.debug.ui.MemoryView">
-      </command>
-<!-- Perspective -->      
-	<command
-      		name="%DebugPerspective.name"
-      		description="%command.openDebugPerspective.description"
-      		categoryId="org.eclipse.ui.category.perspectives"
-      		id="org.eclipse.debug.ui.DebugPerspective" />
-	<command
-       description="%ActionDefinition.removeAllBreakpoints.description"
-       categoryId="org.eclipse.debug.ui.category.run"
-       name="%ActionDefinition.removeAllBreakpoints.name"
-       id="org.eclipse.debug.ui.commands.RemoveAllBreakpoints"/>
-   </extension>
-   <extension point="org.eclipse.ui.bindings">
-     <key
-            sequence="M2+F5"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.commands.ToggleStepFilters"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-      <key
-            sequence="F5"
-            contextId="org.eclipse.debug.ui.debugging"
-            commandId="org.eclipse.debug.ui.commands.StepInto"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-      <key
-            sequence="F6"
-            contextId="org.eclipse.debug.ui.debugging"
-            commandId="org.eclipse.debug.ui.commands.StepOver"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-      <key
-            sequence="F7"
-            contextId="org.eclipse.debug.ui.debugging"
-            commandId="org.eclipse.debug.ui.commands.StepReturn"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-       <key
-            sequence="F8"
-            contextId="org.eclipse.debug.ui.debugging"
-            commandId="org.eclipse.debug.ui.commands.Resume"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-       <key
-            sequence="F11"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.commands.DebugLast"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-      <key
-      		platform="carbon"
-            sequence="M1+F11"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.commands.DebugLast"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-      <key
-            sequence="M1+F11"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.commands.RunLast"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-      <key
-      		platform="carbon"
-            sequence="M1+M2+F11"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.commands.RunLast"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-       <key
-            sequence="M1+R"
-            contextId="org.eclipse.debug.ui.debugging"
-            commandId="org.eclipse.debug.ui.commands.RunToLine"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-      <key
-            sequence="M1+M2+B"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.commands.ToggleBreakpoint"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-       <key
-            commandId="org.eclipse.debug.ui.commands.eof"
-            contextId="org.eclipse.debug.ui.console"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
-            sequence="CTRL+D"/>
-      <key
-            contextId="org.eclipse.debug.ui.console"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
-            sequence="CTRL+D"
-            platform="win32"/>
-      <key
-            commandId="org.eclipse.debug.ui.commands.eof"
-            contextId="org.eclipse.debug.ui.console"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
-            sequence="CTRL+Z"
-            platform="win32"/>
-       <key
-            sequence="M3+M2+Q B"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.BreakpointView"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-       <key
-            sequence="M3+M2+Q V"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.debug.ui.VariableView"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-  	</extension>
-   <extension
-         point="org.eclipse.ui.editors.annotationTypes">
-      <type
-         name="org.eclipse.debug.core.breakpoint"
-         markerType="org.eclipse.debug.core.breakpointMarker">
-      </type>
-      <type
-         name="org.eclipse.debug.ui.currentIP">
-      </type>
-      <type
-         name="org.eclipse.debug.ui.secondaryIP">
-      </type>
-   </extension>   
-   <extension
-         point="org.eclipse.ui.editors.markerAnnotationSpecification">
-      <specification
-            colorPreferenceValue="0,0,255"
-            annotationType="org.eclipse.debug.core.breakpoint"
-            colorPreferenceKey="breakpointIndicationColor"
-            overviewRulerPreferenceValue="false"
-            presentationLayer="3"
-            label="%BreakpointMarkerPreference.label"
-            textPreferenceValue="false"
-            textPreferenceKey="breakpointIndication"
-            verticalRulerPreferenceKey="breakpointVerticalRuler"
-            verticalRulerPreferenceValue="true"
-            overviewRulerPreferenceKey="breakpointIndicationInOverviewRuler"
-            icon="icons/full/obj16/brkp_obj.gif"
-            annotationImageProvider="org.eclipse.debug.internal.ui.BreakpointImageProvider">
-      </specification>
-      <specification
-            colorPreferenceValue="198,219,174"
-            annotationType="org.eclipse.debug.ui.currentIP"
-            icon="icons/full/obj16/inst_ptr_top.gif"
-            verticalRulerPreferenceValue="true"
-            colorPreferenceKey="currentIPColor"
-            overviewRulerPreferenceValue="true"
-            highlightPreferenceKey="currentIPHighlight"
-            presentationLayer="6"
-            highlightPreferenceValue="true"
-            label="%debugCurrentInstructionPointer"
-            textPreferenceValue="false"
-            textPreferenceKey="currentIPIndication"
-            verticalRulerPreferenceKey="currentIPVerticalRuler"
-            overviewRulerPreferenceKey="currentIPOverviewRuler">
-      </specification>
-      <specification
-            colorPreferenceValue="219,235,204"
-            annotationType="org.eclipse.debug.ui.secondaryIP"
-            icon="icons/full/obj16/inst_ptr.gif"
-            verticalRulerPreferenceValue="true"
-            colorPreferenceKey="secondaryIPColor"
-            overviewRulerPreferenceValue="true"
-            highlightPreferenceKey="secondaryIPHighlight"
-            presentationLayer="6"
-            highlightPreferenceValue="true"
-            label="%debugCallStack"
-            textPreferenceValue="false"
-            textPreferenceKey="secondaryIPIndication"
-            verticalRulerPreferenceKey="secondaryIPVerticalRuler"
-            overviewRulerPreferenceKey="secondaryIPOverviewRuler">
-      </specification>
-   </extension>
-<!-- Dynamic (String Substitution) Variables -->
-   <extension
-         point="org.eclipse.core.variables.dynamicVariables">
-      <variable
-            name="workspace_loc"
-            description="%workspace_loc.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.WorkspaceResolver">
-      </variable>
-      <variable
-            name="project_loc"
-            description="%project_loc.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ProjectResolver">
-      </variable>
-      <variable
-            name="project_path"
-            description="%project_path.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ProjectResolver">
-      </variable>
-      <variable
-            name="project_name"
-            description="%project_name.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ProjectResolver">
-      </variable>
-      <variable
-            name="resource_loc"
-            description="%resource_loc.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ResourceResolver">
-      </variable>
-      <variable
-            name="resource_path"
-            description="%resource_path.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ResourceResolver">
-      </variable>
-      <variable
-            name="resource_name"
-            description="%resource_name.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ResourceResolver">
-      </variable>
-      <variable
-            name="container_loc"
-            description="%container_loc.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ContainerResolver">
-      </variable>
-      <variable
-            name="container_path"
-            description="%container_path.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ContainerResolver">
-      </variable>
-      <variable
-            name="container_name"
-            description="%container_name.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.ContainerResolver">
-      </variable>
-      <variable
-            name="string_prompt"
-            description="%string_prompt.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.StringPrompt">
-      </variable>
-      <variable
-            name="file_prompt"
-            description="%file_prompt.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.FilePrompt">
-      </variable>
-      <variable
-            name="folder_prompt"
-            description="%folder_prompt.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.FolderPrompt">
-      </variable>
-      <variable
-            name="selected_text"
-            description="%selected_text.description"
-            resolver="org.eclipse.debug.internal.ui.stringsubstitution.SelectedTextResolver">
-      </variable>
-   </extension>
-<!-- String Variable Presentations -->
-   <extension
-         point="org.eclipse.debug.ui.stringVariablePresentations">
-      <variablePresentation
-            argumentSelector="org.eclipse.debug.internal.ui.stringsubstitution.ResourceSelector"
-            variableName="resource_path">
-      </variablePresentation>
-      <variablePresentation
-            argumentSelector="org.eclipse.debug.internal.ui.stringsubstitution.ResourceSelector"
-            variableName="resource_loc">
-      </variablePresentation>
-      <variablePresentation
-            argumentSelector="org.eclipse.debug.internal.ui.stringsubstitution.ResourceSelector"
-            variableName="resource_name">
-      </variablePresentation>
-   </extension>
-<!-- Launch Config Comparators -->
-   <extension
-         point="org.eclipse.debug.core.launchConfigurationComparators">
-      <launchConfigurationComparator
-            attribute="org.eclipse.debug.core.ATTR_REFRESH_SCOPE"
-            class="org.eclipse.debug.internal.ui.launchConfigurations.WorkingSetComparator"
-            id="org.eclipse.debug.ui.workingSetComparator">
-      </launchConfigurationComparator>
-   </extension>
-   
-<!-- Editor -->
-   <extension
-         point="org.eclipse.ui.editors">
-      <editor
-            name="%sourceNotFoundEditorName"
-            icon="icons/full/obj16/stckframe_obj.gif"
-            class="org.eclipse.debug.internal.ui.sourcelookup.CommonSourceNotFoundEditor"
-            id="org.eclipse.debug.ui.sourcelookup.CommonSourceNotFoundEditor">
-      </editor>
-   </extension>
-<!-- ==================================================================== -->
-<!--  Implementation of the Working set source container type			 -->
-<!-- ==================================================================== -->
-   <extension
-         point="org.eclipse.debug.core.sourceContainerTypes">     
-      <sourceContainerType
-            name="%containerName.workingSet"
-            class="org.eclipse.debug.internal.ui.sourcelookup.WorkingSetSourceContainerType"
-            id="org.eclipse.debug.ui.containerType.workingSet">
-      </sourceContainerType>    
-   </extension>
-<!-- ==================================================================== -->
-<!--  Implementations of the 7 provided source containers presentation support-->
-<!-- ==================================================================== -->
-   <extension
-         point="org.eclipse.debug.ui.sourceContainerPresentations">
-      <sourceContainerPresentation
-            browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.ProjectSourceContainerBrowser"
-            containerTypeID="org.eclipse.debug.core.containerType.project"
-            icon="icons/full/obj16/prj_obj.gif"
-            id="org.eclipse.debug.ui.containerPresentation.project">
-      </sourceContainerPresentation>
-      <sourceContainerPresentation
-            browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.WorkingSetSourceContainerBrowser"
-            containerTypeID="org.eclipse.debug.ui.containerType.workingSet"
-            icon="icons/full/obj16/workset.gif"
-            id="org.eclipse.debug.ui.containerPresentation.workingSet">
-      </sourceContainerPresentation>           
-      <sourceContainerPresentation
-            browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.DirectorySourceContainerBrowser"
-            containerTypeID="org.eclipse.debug.core.containerType.directory"
-            icon="icons/full/obj16/fldr_obj.gif"
-            id="org.eclipse.debug.ui.containerPresentation.directory">
-      </sourceContainerPresentation>
-      <sourceContainerPresentation
-            browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.FolderSourceContainerBrowser"
-            containerTypeID="org.eclipse.debug.core.containerType.folder"
-            icon="icons/full/obj16/fldr_obj.gif"
-            id="org.eclipse.debug.ui.containerPresentation.folder">
-      </sourceContainerPresentation>
-      <sourceContainerPresentation
-            browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.WorkspaceSourceContainerBrowser"
-            containerTypeID="org.eclipse.debug.core.containerType.workspace"
-            icon="icons/full/obj16/prj_obj.gif"
-            id="org.eclipse.debug.ui.containerPresentation.workspace">
-      </sourceContainerPresentation>
-      <sourceContainerPresentation
-            browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.ArchiveSourceContainerBrowser"
-            containerTypeID="org.eclipse.debug.core.containerType.archive"
-            icon="icons/full/obj16/jar_obj.gif"
-            id="org.eclipse.debug.ui.containerPresentation.archive">
-      </sourceContainerPresentation>  
-      <sourceContainerPresentation
-            browserClass="org.eclipse.debug.internal.ui.sourcelookup.browsers.ExternalArchiveSourceContainerBrowser"
-            containerTypeID="org.eclipse.debug.core.containerType.externalArchive"
-            icon="icons/full/obj16/jar_obj.gif"
-            id="org.eclipse.debug.ui.containerPresentation.externalArchive">
-      </sourceContainerPresentation>      
-      <sourceContainerPresentation           
-            containerTypeID="org.eclipse.debug.core.containerType.default"
-            icon="icons/full/obj16/prj_obj.gif"
-            id="org.eclipse.debug.ui.containerPresentation.default">
-      </sourceContainerPresentation>
-   </extension>
-<!-- ========================================= -->
-<!-- Adapter factories for source lookup       -->
-<!-- ========================================= -->
-	<extension point="org.eclipse.core.runtime.adapters">
-         <factory 
-            class="org.eclipse.debug.internal.ui.sourcelookup.SourceElementAdapterFactory"
-            adaptableType="org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-         </factory>
-         <factory 
-            class="org.eclipse.debug.internal.ui.sourcelookup.SourceElementAdapterFactory"
-            adaptableType="org.eclipse.debug.core.sourcelookup.containers.ZipEntryStorage">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-         </factory>         
-         <factory 
-            class="org.eclipse.debug.internal.ui.sourcelookup.SourceContainerAdapterFactory"
-            adaptableType="org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-         </factory>         
-         <factory 
-            class="org.eclipse.debug.internal.ui.sourcelookup.SourceContainerAdapterFactory"
-            adaptableType="org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-         </factory>          
-         <factory 
-            class="org.eclipse.debug.internal.ui.sourcelookup.SourceContainerAdapterFactory"
-            adaptableType="org.eclipse.debug.core.sourcelookup.containers.ExternalArchiveSourceContainer">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-         </factory>
-         <factory
-            class="org.eclipse.debug.internal.ui.sourcelookup.SourceContainerAdapterFactory"
-            adaptableType="org.eclipse.debug.core.sourcelookup.containers.ArchiveSourceContainer">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-         </factory>
-         <factory 
-            class="" 
-            adaptableType="org.eclipse.ui.part.FileEditorInput">
-            <adapter type="org.eclipse.debug.ui.actions.ILaunchable"/>
-         </factory>                   
-    </extension>
-<!-- ========================================= -->
-<!-- Contextual Launch                         -->
-<!-- ========================================= -->
-   <extension
-         point="org.eclipse.ui.popupMenus">
-      <objectContribution
-            objectClass="java.lang.Object"
-            id="org.eclipse.debug.ui.contextualLaunch.profile">
-        <action
-               label="%ProfileContextMenu.label"
-               style="pulldown"
-               class="org.eclipse.debug.internal.ui.actions.ProfileContextualLaunchAction"
-               menubarPath="additions"
-               enablesFor="+"
-               id="org.eclipse.debug.ui.contextualLaunch.profile.submenu">
-        </action>    
-        <enablement>
-         	<test property="org.eclipse.debug.ui.launchable" value="profile"/>
-        </enablement>        
-      </objectContribution>
-      <objectContribution
-            objectClass="java.lang.Object"
-            id="org.eclipse.debug.ui.contextualLaunch.debug">
-        <action
-               label="%DebugContextMenu.label"
-               style="pulldown"
-               class="org.eclipse.debug.internal.ui.actions.DebugContextualLaunchAction"
-               menubarPath="additions"
-               enablesFor="+"
-               id="org.eclipse.debug.ui.contextualLaunch.debug.submenu">
-         </action>
-         <enablement>
-         	<test property="org.eclipse.debug.ui.launchable" value="debug"/>
-         </enablement>     
-       </objectContribution>    
-       <objectContribution
-            objectClass="java.lang.Object"
-            id="org.eclipse.debug.ui.contextualLaunch.run">
-         <action
-               label="%RunContextMenu.label"
-               style="pulldown"
-               class="org.eclipse.debug.internal.ui.actions.RunContextualLaunchAction"
-               menubarPath="additions"
-               enablesFor="+"
-               id="org.eclipse.debug.ui.contextualLaunch.run.submenu">
-         </action>                  
-         <enablement>
-         	<test property="org.eclipse.debug.ui.launchable" value="run"/>
-         </enablement>
-      </objectContribution>
-    </extension>  
-   <extension point="org.eclipse.core.expressions.propertyTesters">
-      <propertyTester
-      		namespace="org.eclipse.debug.ui"
-            properties="matchesPattern, projectNature, matchesContentType"
-            type="org.eclipse.core.runtime.IAdaptable"
-            class="org.eclipse.debug.internal.ui.ResourceExtender"
-            id="org.eclipse.debug.ui.IResourceExtender">
-      </propertyTester>
-	  <propertyTester
-			namespace="org.eclipse.debug.ui"
-			properties="launchable"
-			type="java.lang.Object"
-			class="org.eclipse.debug.internal.ui.actions.LaunchablePropertyTester"
-			id="org.eclipse.debug.ui.propertyTesters.launchable">		
-	  </propertyTester>      
-      <propertyTester
-            namespace="org.eclipse.debug.ui"
-            type="org.eclipse.ui.console.IConsole"
-            class="org.eclipse.debug.internal.ui.views.console.ProcessTypePropertyTester"
-            properties="processTypeTest"
-            id="org.eclipse.jdt.debug.ui.JavaConsolePropertyTester"/>
-   </extension>
-<!-- Context extensions -->
-  <extension
-        point="org.eclipse.ui.contexts">
-     <context
-           name="%Context.debugging.name"
-           description="%Context.debugging.description"
-           id="org.eclipse.debug.ui.debugging"
-           parentId="org.eclipse.ui.contexts.window">
-     </context>
-     <context
-           name="%Context.console.name"
-           description="%Context.console.description"
-           id="org.eclipse.debug.ui.console"
-           parentId="org.eclipse.ui.contexts.window">
-     </context>     
-  </extension>
-  <extension
-        point="org.eclipse.debug.ui.contextViewBindings">
-     <contextViewBinding
-            viewId="org.eclipse.debug.ui.VariableView"
-            contextId="org.eclipse.debug.ui.debugging">
-     </contextViewBinding>
-     <contextViewBinding
-            viewId="org.eclipse.debug.ui.DebugView"
-            contextId="org.eclipse.debug.ui.debugging">
-     </contextViewBinding>
-     <contextViewBinding
-            viewId="org.eclipse.debug.ui.ExpressionView"
-            contextId="org.eclipse.debug.ui.debugging"
-            autoOpen="false">
-     </contextViewBinding>
-     <contextViewBinding
-           viewId="org.eclipse.debug.ui.BreakpointView"
-           contextId="org.eclipse.debug.ui.debugging">
-     </contextViewBinding>
-     <contextViewBinding
-           autoOpen="false"
-           contextId="org.eclipse.debug.ui.debugging"
-           viewId="org.eclipse.ui.console.ConsoleView"/>
-  </extension>
-  
-   <extension
-         point="org.eclipse.ui.themes">
-		<themeElementCategory label="%debugPresentation.label" id="org.eclipse.debug.ui.presentation"/>
-      <fontDefinition
-            label="%DetailPaneFontDefinition.label"
-            defaultsTo="org.eclipse.jface.textfont"
-            categoryId= "org.eclipse.debug.ui.presentation"
-            id="org.eclipse.debug.ui.DetailPaneFont">
-         <description>
-            %DetailPaneFontDefinition.description
-         </description>         
-      </fontDefinition>
-      <fontDefinition
-            label="%MemoryViewTableFontDefinition.label"
-            defaultsTo="org.eclipse.jface.textfont"
-            categoryId= "org.eclipse.debug.ui.presentation"
-            id="org.eclipse.debug.ui.MemoryViewTableFont">
-         <description>
-            %MemoryViewTableFontDefinition.description
-         </description>
-      </fontDefinition>
-      <fontDefinition
-            defaultsTo="org.eclipse.jface.textfont"
-            label="%ConsoleFont.label"
-            categoryId="org.eclipse.debug.ui.presentation"
-            id="org.eclipse.debug.ui.consoleFont">
-          <description>
-	            %ConsoleFont.description
-          </description>
-		</fontDefinition>
-   </extension>
-   <extension
-         point="org.eclipse.ui.console.consolePageParticipants">
-      <consolePageParticipant
-            class="org.eclipse.debug.internal.ui.views.console.ProcessConsolePageParticipant"
-            id="org.eclipse.debug.ui.processConsolePageParticipant">
-         <enablement>
-            <instanceof value="org.eclipse.debug.internal.ui.views.console.ProcessConsole"/>
-         </enablement>
-      </consolePageParticipant>
-   </extension>
-   
-    <extension point="org.eclipse.core.runtime.preferences">
-		<initializer class="org.eclipse.debug.internal.ui.DebugUIPreferenceInitializer"/>
-	</extension>
-    <extension
-          point="org.eclipse.debug.ui.breakpointOrganizers">
-          <breakpointOrganizer
-                othersLabel="%Project.others"
-                label="%Project.label"
-                icon="icons/full/obj16/prj_obj.gif"
-                class="org.eclipse.debug.internal.ui.views.breakpoints.ProjectBreakpointOrganizer"
-                id="org.eclipse.debug.ui.breakpointProjectOrganizer"/>
-          <breakpointOrganizer
-                othersLabel="%File.others"
-                label="%File.label"
-                icon="icons/full/obj16/file_obj.gif"
-                class="org.eclipse.debug.internal.ui.views.breakpoints.FileBreakpointOrganizer"
-                id="org.eclipse.debug.ui.breakpointFileOrganizer"/>
-		  <breakpointOrganizer
-          othersLabel="%WorkingSet.others"
-          label="%WorkingSet.label"
-          class="org.eclipse.debug.internal.ui.views.breakpoints.WorkingSetBreakpointOrganizer"
-          icon="icons/full/obj16/fldr_obj.gif"
-          id="org.eclipse.debug.ui.workingSetOrganizer"/>          	
-          <breakpointOrganizer
-                othersLabel="%BreakpointType.others"
-                label="%BreakpointType.label"
-                icon="icons/full/obj16/brkp_type.gif"
-                class="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointTypeOrganizer"
-                id="org.eclipse.debug.ui.breakpointTypeOrganizer"/>
-          <breakpointOrganizer
-                othersLabel="%BreakpointWorkingSet.others"
-                label="%BreakpointWorkingSet.label"
-                class="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointSetOrganizer"
-                icon="icons/full/obj16/brkp_grp.gif"
-                id="org.eclipse.debug.ui.breakpointWorkingSetOrganizer"/>
-    </extension>    
-	<extension point="org.eclipse.core.runtime.adapters">
-         <factory 
-            class="org.eclipse.debug.internal.ui.DebugUIAdapterFactory"
-            adaptableType="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter2"/>
-         </factory>
-         <factory 
-            class="org.eclipse.debug.internal.ui.DebugUIAdapterFactory"
-            adaptableType="org.eclipse.debug.ui.BreakpointTypeCategory">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-         </factory>
-         <factory
-               class="org.eclipse.debug.internal.ui.DebugUIAdapterFactory"
-               adaptableType="org.eclipse.debug.core.model.IBreakpoint">
-            <adapter type="org.eclipse.ui.IPersistableElement"/>
-         </factory>
-         <factory
-               class="org.eclipse.debug.internal.ui.DebugUIAdapterFactory"
-               adaptableType="org.eclipse.debug.internal.ui.views.breakpoints.WorkingSetCategory">
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter"/>
-            <adapter type="org.eclipse.ui.model.IWorkbenchAdapter2"/>
-         </factory>         
-    </extension>
- <extension
-       point="org.eclipse.ui.elementFactories">
-    <factory
-          class="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointFactory"
-          id="org.eclipse.debug.ui.elementFactory.breakpoints"/>
- </extension>    
-    <extension
-          point="org.eclipse.ui.popupMenus">
-       <viewerContribution
-             targetID="org.eclipse.debug.ui.ProcessConsoleType.#ContextMenu"
-             id="org.eclipse.debug.ui.processConsoleContextMenu">
-          <action
-                label="%RemoveAllTerminatedAction.label"
-                tooltip="%RemoveAllTerminatedAction.tooltip"
-                icon="icons/full/elcl16/rem_all_co.gif"
-                class="org.eclipse.debug.internal.ui.actions.RemoveAllTerminatedAction"
-                menubarPath="additions"
-                id="org.eclipse.debug.ui.consoleRemoveAllTerminatedAction"/>
-          <action
-                label="%TerminateAction.label"
-                tooltip="%TerminateAction.tooltip"
-                icon="icons/full/elcl16/terminate_co.gif"
-                class="org.eclipse.debug.internal.ui.views.console.ConsoleTerminateActionDelegate"
-                menubarPath="additions"
-                id="org.eclipse.debug.ui.consoleTerminateAction"/>
-       </viewerContribution>
-    </extension>
-    <extension
-          point="org.eclipse.ui.workingSets">
-       <workingSet
-             icon="icons/full/obj16/brkp_grp.gif"
-             name="%BreakpointWorkingSet.name"
-             pageClass="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointWorkingSetPage"
-             id="org.eclipse.debug.ui.breakpointWorkingSet"/>
-    </extension>
-    
-    <!-- Console action contributions -->
-    
-   <extension
-          point="org.eclipse.debug.ui.memoryRenderings">
-       <renderingType
-             class="org.eclipse.debug.internal.ui.views.memory.renderings.HexRenderingTypeDelegate"
-             name="%RawHex"
-             id="org.eclipse.debug.ui.rendering.raw_memory"/>
-       <renderingType
-             class="org.eclipse.debug.internal.ui.views.memory.renderings.ASCIIRenderingTypeDelegate"
-             name="%ASCIIName"
-             id="org.eclipse.debug.ui.rendering.ascii"/>
-       <renderingType
-             class="org.eclipse.debug.internal.ui.views.memory.renderings.SignedIntegerRenderingTypeDelegate"
-             name="%SignedIntegerName"
-             id="org.eclipse.debug.ui.rendering.signedint"/>
-       <renderingType
-             class="org.eclipse.debug.internal.ui.views.memory.renderings.UnsignedIntegerRenderingTypeDelegate"
-             name="%UnsignedIntegerName"
-             id="org.eclipse.debug.ui.rendering.unsignedint"/>
-    </extension>
-    <extension
-          point="org.eclipse.ui.workingSets">
-       <workingSet
-             icon="icons/full/obj16/brkp_grp.gif"
-             name="%BreakpointWorkingSet.name"
-             pageClass="org.eclipse.debug.internal.ui.views.breakpoints.BreakpointWorkingSetPage"
-             id="org.eclipse.debug.ui.breakpointWorkingSet"/>
-    </extension>
-    <extension
-          point="org.eclipse.ui.keywords">
-       <keyword
-             id="org.eclipse.debug.ui.general"
-             label="%preferenceKeywords.general"/>
-       <keyword
-             id="org.eclipse.debug.ui.console"
-             label="%preferenceKeywords.console"/>
-       <keyword
-             id="org.eclipse.debug.ui.launching"
-             label="%preferenceKeywords.launching"/>
-       <keyword
-             id="org.eclipse.debug.ui.stringSubstitution"
-             label="%preferenceKeywords.stringSubstitution"/>
-       <keyword
-             id="org.eclipse.debug.ui.viewManagement"
-             label="%preferenceKeywords.viewManagement"/>
-    </extension>
-
-</plugin>
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/schema/breakpointOrganizers.exsd b/org.eclipse.debug.ui/schema/breakpointOrganizers.exsd
deleted file mode 100644
index da95041..0000000
--- a/org.eclipse.debug.ui/schema/breakpointOrganizers.exsd
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="breakpointOrganizers" name="Breakpoint Organizers"/>
-      </appInfo>
-      <documentation>
-         Breakpoint organizers categorize breakpoints based on some specific criteria. For example, a breakpoint organizer is provided to categorize breakpoints by project.
-
-Organizers with the specified name will be automatically created by the Debug Platform and presented to the user as options for grouping breakpoints. The supplied class, which must implement org.eclipse.debug.ui.IBreakpointOrganizerDelegate, will be loaded only as necessary, to avoid early plugin activation.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="breakpointOrganizer" minOccurs="1" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="breakpointOrganizer">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Unique identifier for this breakpoint organizer.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Implementation of &lt;code&gt;org.eclipse.debug.ui.IBreakpointOrganizerDelegate&lt;/code&gt; that performs categorization
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="label" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Label for this organizer which is suitable for presentation to the user.
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="icon" type="string">
-            <annotation>
-               <documentation>
-                  Optional path to an icon which can be shown for this organizer.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="othersLabel" type="string">
-            <annotation>
-               <documentation>
-                  Optional label for this organizer which is suitable for presentation to the user to describe breakpoints that do not fall into a category supplied by this organizer. For example, if an organizer categorizes breakpoints by working sets, but a breakpoint does not belong to a working set, this label will be used. When unspecified, &quot;Others&quot; is used.
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         3.1
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         Following is an example of a breakpoint organizer extension.
-&lt;pre&gt;
-&lt;extension
-    point=&quot;org.eclipse.debug.ui.breakpointOrganizers&quot;&gt;
-    &lt;breakpointOrganizer
-  	 class=&quot;com.example.BreakpointOrganizer&quot;
-     id=&quot;com.example.BreakpointOrganizer&quot;
-     label=&quot;Example Organizer&quot;
-     icon=&quot;icons/full/obj16/example_org.gif&quot;/&gt;
-&lt;/extension&gt;
-&lt;/pre&gt;
-In the above example, the supplied factory will be included in the list of options for grouping breakpoints (&quot;Group By &gt; Example Organizer&quot;). When selected, the associated organizer will be used to categorize breakpoints.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.debug.ui.IBreakpointOrganizerDelegate&lt;/b&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         The Debug Platform provides breakpoint organizers for projects, files, breakpoint types, and working sets.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/consoleColorProviders.exsd b/org.eclipse.debug.ui/schema/consoleColorProviders.exsd
deleted file mode 100644
index e7be4e7..0000000
--- a/org.eclipse.debug.ui/schema/consoleColorProviders.exsd
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="consoleColorProviders" name="Console Color Providers"/>
-      </appInfo>
-      <documentation>
-         This extension point provides a mechanism for contributing a console document coloring scheme for a process. The color provider will be used to color output in the console.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="consoleColorProvider" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="consoleColorProvider">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this console color provider.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a fully qualified name of a Java class that implements &lt;code&gt;IConsoleColorProvider&lt;/code&gt;
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.debug.ui.console.IConsoleColorProvider"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="processType" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the type of process this color provider is for. This attribute corresponds to the process attribute &lt;code&gt;IProcess.ATTR_PROCESS_TYPE&lt;/code&gt;.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         2.1
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a console color provider extension point: 
-&lt;pre&gt;
-&lt;extension point=&quot;org.eclipse.debug.ui.consoleColorProviders&quot;&gt;
-  &lt;consoleColorProvider 
-     id=&quot;com.example.ExampleConsoleColorProvider&quot;
-     class=&quot;com.example.ExampleConsoleColorProvider&quot;
-     processType=&quot;ExampleProcessType&quot;&gt;
-  &lt;/consoleColorProvider&gt;
-&lt;/extension&gt;
-&lt;/pre&gt;
-In the above example, the contributed color provider will be used for processes of type &quot;ExampleProcessType&quot;, which corresponds to the process attribute IProcess.ATTR_PROCESS_TYPE. Process types are client defined, and are set by clients that create processes.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.debug.ui.console.IConsoleColorProvider&lt;/b&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/consoleLineTrackers.exsd b/org.eclipse.debug.ui/schema/consoleLineTrackers.exsd
deleted file mode 100644
index 7b9d2eb..0000000
--- a/org.eclipse.debug.ui/schema/consoleLineTrackers.exsd
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="consoleLineTrackers" name="Console Line Trackers"/>
-      </appInfo>
-      <documentation>
-         This extension point provides a mechanism to listen to console output for a type of process.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="consoleLineTracker" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="consoleLineTracker">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this console line tracker.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a fully qualified name of a Java class that implements &lt;code&gt;IConsoleLineTracker&lt;/code&gt;
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.debug.ui.console.IConsoleLineTracker"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="processType" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the type of process this line tracker is for. This attribute corresponds to the process attribute &lt;code&gt;IProcess.ATTR_PROCESS_TYPE&lt;/code&gt;.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         2.1
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a console line tracker extension point: 
-
- &lt;pre&gt;
-&lt;extension point=&quot;org.eclipse.debug.ui.consoleLineTrackers&quot;&gt;
-  &lt;consoleLineTracker 
-     id=&quot;com.example.ExampleConsoleLineTracker&quot;
-     class=&quot;com.example.ExampleConsoleLineTracker&quot;
-     processType=&quot;ExampleProcessType&quot;&gt;
-  &lt;/consoleLineTracker&gt;
-&lt;/extension&gt;
-&lt;/pre&gt;
-In the above example, the contributed line tracker will be notified as lines are appended to the console for processes of type &quot;ExampleProcessType&quot;, which corresponds to the process attribute IProcess.ATTR_PROCESS_TYPE. Process types are client defined, and are set by clients that create processes.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.debug.ui.console.IConsoleLineTracker&lt;/b&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/contextViewBindings.exsd b/org.eclipse.debug.ui/schema/contextViewBindings.exsd
deleted file mode 100644
index ba5ac33..0000000
--- a/org.eclipse.debug.ui/schema/contextViewBindings.exsd
+++ /dev/null
@@ -1,120 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.debug.ui">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.debug.ui" id="contextViewBindings" name="Context View Bindings"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a mechanism for associating a view with a context identifier. When a context is activated by the Debug view, views associated with it (and also views associated with any parent contexts) are opened, closed, or activated. Contributors have the option to override the automatic open and close behavior.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="contextViewBinding" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="contextViewBinding">

-      <complexType>

-         <attribute name="contextId" type="string" use="required">

-            <annotation>

-               <documentation>

-                  Specifies the context identifier that this binding is for.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="viewId" type="string" use="required">

-            <annotation>

-               <documentation>

-                  Specifies the identifier of the view which should be associated with the specified context. When the specified context is enabled, this view will be automatically brought to the front. When elements are selected in the Debug view, contexts associated with those elements (as specified by extensions of the debugModelContextBindings extension point) are automatically enabled.
-Note that this only occurs in perspectives for which the user has requested &quot;automatic view management&quot; via the preferences (by default, only in the Debug perspective).

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="autoOpen" type="boolean">

-            <annotation>

-               <documentation>

-                  Specifies whether the view should be automatically opened when the given context is enabled. If unspecified, the value of this attribute is &lt;code&gt;true&lt;/code&gt;. If this attribute is specified &lt;code&gt;false&lt;/code&gt;, the view will not be automatically opened, but it will still be brought to the front if it is open when the given context is enabled. Clients are intended to specify &lt;code&gt;false&lt;/code&gt; to avoid cluttering the perspective with views that are used infrequently.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="autoClose" type="boolean">

-            <annotation>

-               <documentation>

-                  Clients are not intended to specify this attribute except in rare cases.
-Specifies whether the view should be automatically closed when the given context is disabled (this occurs when all debug targets that contained the specified context have terminated). When unspecified, the value of this attribute is &lt;code&gt;true&lt;/code&gt;. This attribute should only be specified &lt;code&gt;false&lt;/code&gt; in the unlikely case that a debugging view must remain open even when the user is not debugging.

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a context view binding contribution:
-&lt;pre&gt;
-&lt;extension
-      point=&quot;org.eclipse.debug.ui.contextViewBindings&quot;&gt;
-   &lt;contextViewBinding
-         contextId=&quot;com.example.mydebugger.debugging&quot;
-         viewId=&quot;com.example.view&quot;
-         autoOpen=&quot;true&quot;
-         autoClose=&quot;false&quot;&gt;
-   &lt;/contextViewBinding&gt;
-&lt;/extension&gt;
-&lt;/pre&gt;
-In the above example, when a context with the specified identifier is activated by the Debug view, the given view will be automatically opened. When a context which is bound to a different debug model is activated that isn&apos;t associated with the view, the view will not be automatically closed.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-Copyright (c) 2003, 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which 

-accompanies this distribution, and is available at 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.debug.ui/schema/debugModelContextBindings.exsd b/org.eclipse.debug.ui/schema/debugModelContextBindings.exsd
deleted file mode 100644
index 1a29468..0000000
--- a/org.eclipse.debug.ui/schema/debugModelContextBindings.exsd
+++ /dev/null
@@ -1,104 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.debug.ui">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.debug.ui" id="debugModelContextBindings" name="Debug Model Context Bindings"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a mechanism for specifying a context that should be associated with the given debug model.
-
-The Debug view uses these bindings to automatically enable contexts. When an element in the Debug view which provides an &lt;code&gt;IDebugModelProvider&lt;/code&gt; adapter or a stack frame with the specified debug model identifier is selected, the context with the given identifier will be enabled.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="modelContextBinding" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="modelContextBinding">

-      <complexType>

-         <attribute name="debugModelId" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the debug model identifier this binding is for

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="contextId" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the context identifier of the context that should be associated with the given debug model

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a debug model context binding contribution:
-&lt;pre&gt;
-&lt;extension
-      point=&quot;org.eclipse.debug.ui.debugModelContextBindings&quot;&gt;
-   &lt;modelContextBinding
-         contextId=&quot;com.example.myLanguage.debugging&quot;
-         debugModelId=&quot;com.example.myLanguageDebugModel&quot;&gt;
-   &lt;/modelContextBinding&gt;
-&lt;/extension&gt;
-&lt;/pre&gt;
-In the above example, when a stack frame with the debug model identifier of &quot;com.example.myLanguageDebugModel&quot; is selected, the context with the identifier &quot;com.example.myLanguage.debugging&quot; will be enabled.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-Copyright (c) 2004, 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which 

-accompanies this distribution, and is available at 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.debug.ui/schema/debugModelPresentations.exsd b/org.eclipse.debug.ui/schema/debugModelPresentations.exsd
deleted file mode 100644
index d6dd5fe..0000000
--- a/org.eclipse.debug.ui/schema/debugModelPresentations.exsd
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="debugModelPresentations" name="Debug Model Presentation"/>
-      </appInfo>
-      <documentation>
-         This extension point allows tools to handle the 
-presentation aspects of a debug model. 
-A debug model presentation is responsible for 
-providing labels, images, and editors for elements 
-in a specific debug model.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="debugModelPresentation" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="debugModelPresentation">
-      <complexType>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  fully qualifed name of a Java class that implements the 
-&lt;code&gt;org.eclipse.debug.ui.IDebugModelPresentation&lt;/code&gt;
-interface. Since 3.1, debug model presentations may optionally implement &lt;code&gt;IColorProvider&lt;/code&gt; and &lt;code&gt;IFontProvider&lt;/code&gt; to override default fonts and colors for debug elements.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.debug.ui.IDebugModelPresentation"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the identifier of the debug model this presentation is responsible for
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="detailsViewerConfiguration" type="string">
-            <annotation>
-               <documentation>
-                  the fully qualified name of the Java class that is an instance of &lt;code&gt;org.eclipse.jface.text.source.SourceViewerConfiguration&lt;/code&gt;. When specified, the source viewer configuration will be used in the &quot;details&quot; area of the variables and expressions view when displaying the details of an element from the debug model associated with this debug model presentation. When unspecified, a default configuration is used.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a debug model presentations extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
-   &lt;extension point = &quot;org.eclipse.debug.ui.debugModelPresentations&quot;&gt; 
-       &lt;debugModelPresentation 
-           class = &quot;com.example.JavaModelPresentation&quot;
-           id = &quot;com.example.JavaDebugModel&quot;&gt;
-       &lt;/debugModelPresentation&gt; 
-   &lt;/extension&gt; 
-&lt;/pre&gt;
-&lt;/p&gt;
-In the example above, the class 
-&lt;samp&gt;com.example.JavaModelPresentation&lt;/samp&gt; will be 
-used to render and present debug elements originating 
-from the debug model identified by 
-&lt;samp&gt;com.example.JavaDebugModel&lt;/samp&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the action attribute &lt;samp&gt;class&lt;/samp&gt; must be a fully 
-qualified class name of a Java class that implements 
-&lt;samp&gt;org.eclipse.debug.ui.IDebugModelPresentation&lt;/samp&gt;. Since 3.1, debug model presentations may optionally implement &lt;code&gt;IColorProvider&lt;/code&gt; and &lt;code&gt;IFontProvider&lt;/code&gt; to override default fonts and colors for debug elements.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/launchConfigurationTabGroups.exsd b/org.eclipse.debug.ui/schema/launchConfigurationTabGroups.exsd
deleted file mode 100644
index be66be4..0000000
--- a/org.eclipse.debug.ui/schema/launchConfigurationTabGroups.exsd
+++ /dev/null
@@ -1,173 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="launchConfigurationTabGroups" name="Launch Configuration Tab Groups"/>
-      </appInfo>
-      <documentation>
-         This extension point provides a mechanism for contributing a group of tabs to the launch configuration
-dialog for a type of launch configuration.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="launchConfigurationTabGroup" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="launchConfigurationTabGroup">
-      <complexType>
-         <sequence>
-            <element ref="launchMode" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this launch configuration tab group.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="type" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a launch configuration type that this tab group is applicable to (corresponds to the id of a launch configuration type extension).
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a fully qualified name of a Java class that implements &lt;code&gt;ILaunchConfigurationTabGroup&lt;/code&gt;.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="helpContextId" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier that specifies the help context to associate with this tab group&apos;s launch configuration type
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="description" type="string">
-            <annotation>
-               <documentation>
-                  A description of the Launch Configuration Type
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="launchMode">
-      <annotation>
-         <documentation>
-            A launch mode element specifies a launch mode this tab group is specific to. A tab group can be associated with one or more launch modes. For backwards compatibility (previous to 3.0), a launch mode does not need to be specified. When unspecified, a tab group is registered as the default tab group for the associated launch configration type (i.e. applicable to all supported launch modes for which a specific tab group has not been contributed).
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="mode" type="string" use="required">
-            <annotation>
-               <documentation>
-                  identifier for a launch mode this tab group is specific to.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="perspective" type="string">
-            <annotation>
-               <documentation>
-                  the default perspective identifier associated with this launch configuration type and launch mode. This allows an extension to cause a perspective switch (or open) when a corresponding launch is registered with the debug plug-in. When unspecified, it indicates that by default, no perspective switch should occurr.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="description" type="string">
-            <annotation>
-               <documentation>
-                  A description of the Launch Configuration Type specific to this launchMode.
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a launch configuration tab group extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
- &lt;extension point=&quot;org.eclipse.debug.ui.launchConfigurationTabGroups&quot;&gt;
-  &lt;launchConfigurationTabGroup
-      id=&quot;com.example.ExampleTabGroup&quot;
-      type=&quot;com.example.ExampleLaunchConfigurationTypeIdentifier&quot;
-      class=&quot;com.example.ExampleLaunchConfigurationTabGroupClass&quot;&gt;
-  &lt;/launchConfigurationTabGroup&gt;
- &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;/p&gt;
-
-In the above example, the contributed tab group will be shown for the launch configuration type with
-identifier &lt;samp&gt;com.example.ExampleLaunchConfigurationTypeIdentifier&lt;/samp&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;code&gt;class&lt;/code&gt; must be a fully qualified name of a Java class that implements the 
-interface &lt;code&gt;org.eclipse.debug.ui.ILaunchConfigurationTabGroup&lt;/code&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/launchConfigurationTypeImages.exsd b/org.eclipse.debug.ui/schema/launchConfigurationTypeImages.exsd
deleted file mode 100644
index 74093b9..0000000
--- a/org.eclipse.debug.ui/schema/launchConfigurationTypeImages.exsd
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-   <appInfo>
-      <meta.schema plugin="org.eclipse.debug.ui" id="launchConfigurationTypeImages" name="Launch Configuration Type Images"/>
-   </appInfo>
-   <documentation>
-      This extension point provides a way to associate an image with a launch configuration type.
-   </documentation>
-</annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="launchConfigurationTypeImage" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                 an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="launchConfigurationTypeImage">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this launch configuration type image.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="configTypeID" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the fully qualified ID of a launch configuration type.(in 2.1, this attribute can also be specified using the "type" attribute, to be consistent with the launchConfigurationTabGroups extension point).
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="icon" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the plugin-relative path of an image file.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="resource"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a launch configuration type image extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
-	&lt;extension point="org.eclipse.debug.ui.launchConfigurationTypeImages"&gt;
-		&lt;launchConfigurationTypeImage
-			  id="com.example.FirstLaunchConfigurationTypeImage"
-			  configTypeID="com.example.FirstLaunchConfigurationType"
-			  icon="icons/FirstLaunchConfigurationType.gif"&gt;
-		&lt;/launchConfigurationTypeImage&gt;
-	&lt;/extension&gt;
-&lt;/pre&gt;
-&lt;/p&gt;
-      </documentation>
-   </annotation>
-   
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/launchGroups.exsd b/org.eclipse.debug.ui/schema/launchGroups.exsd
deleted file mode 100644
index a2537e9..0000000
--- a/org.eclipse.debug.ui/schema/launchGroups.exsd
+++ /dev/null
@@ -1,160 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="launchGroups" name="Launch Groups"/>
-      </appInfo>
-      <documentation>
-         This extension point provides support for defining a group of launch configurations to be viewed together in the launch configuration dialog, and support a launch history (recent and favorite launches).
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="launchGroup" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="launchGroup">
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this launch group.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="mode" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the launch mode associated with this group - i.e. run or debug.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="category" type="string">
-            <annotation>
-               <documentation>
-                  specifies the category of launch configurations in this group. When unspecified, the category is &lt;code&gt;null&lt;/code&gt;.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="label" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a translatable label used to render this group.
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="image" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a plug-in relative path to an image used to render this group in trees, lists, tabs, etc.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="resource"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="bannerImage" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a plug-in relative path to an image used to render this group in a wizard or dialog banner area.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="resource"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="public" type="string">
-            <annotation>
-               <documentation>
-                  specifies whether this launch group is public and should be have a visible launch history tab in the debug preferences. The implied value is &lt;code&gt;true&lt;/code&gt;, when not specified.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="title" type="string">
-            <annotation>
-               <documentation>
-                  title to display in the launch wizard when this launch group is opened - for example &quot;Select or configure an application to debug&quot; (since 3.1)
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         2.1
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a launch group extension point: 
-&lt;p&gt;
-&lt;pre&gt;
- &lt;extension point=&quot;org.eclipse.debug.ui.launchGroups&quot;&gt;
-  &lt;launchGroup
-     id=&quot;com.example.ExampleLaunchGroupId&quot;
-     mode=&quot;run&quot;
-     label=&quot;Run&quot;
-     image=&quot;icons\run.gif&quot;
-     bannerImage=&quot;icons\runBanner.gif&quot;&gt;
-  &lt;/launchGroup&gt;
- &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;/p&gt;
-In the above example, the launch group will consist of all launch configurations with no category that support run mode.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/launchShortcuts.exsd b/org.eclipse.debug.ui/schema/launchShortcuts.exsd
deleted file mode 100644
index 1fbe771..0000000
--- a/org.eclipse.debug.ui/schema/launchShortcuts.exsd
+++ /dev/null
@@ -1,266 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="launchShortcuts" name="Launch Shortcuts"/>
-      </appInfo>
-      <documentation>
-         This extension point provides support for selection sensitive launching.  Extensions register a shortcut which
-appears in the run and/or debug cascade menus to launch the workbench selection or active editor.
-      </documentation>
-   </annotation>
-
-   <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="shortcut" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="shortcut">
-      <annotation>
-         <appInfo>
-            <meta.element labelAttribute="label"/>
-         </appInfo>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="perspective" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="contextualLaunch" minOccurs="0" maxOccurs="1"/>
-            <element ref="enablement" minOccurs="0" maxOccurs="1"/>
-         </sequence>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a unique identifier for this launch shortcut.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="modes" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a comma-separated list of modes this shortcut supports.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the fully qualified name of a class which implements
-&lt;code&gt;org.eclipse.debug.ui.ILaunchShortcut&lt;/code&gt;.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java" basedOn="org.eclipse.debug.ui.ILaunchShortcut"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="label" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies a label used to render this shortcut.
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="icon" type="string">
-            <annotation>
-               <documentation>
-                  specifies a plugin-relative path to an image used to render this shortcut. Icon is optional because it is up to other plugins (i.e. Views) to render it.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="resource"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="category" type="string">
-            <annotation>
-               <documentation>
-                  specifies the launch configuration type category this shortcut is applicable for. When unspecified, the category is &lt;code&gt;null&lt;/code&gt; (default).
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="helpContextId" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier that specifies the help context to associate with this launch shortcut
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="path" type="string">
-            <annotation>
-               <documentation>
-                  an optional menu path used to group launch shortcuts in menus. Launch shortcuts are grouped alphabetically based on the &lt;code&gt;path&lt;/code&gt; attribute, and then sorted alphabetically within groups based on the &lt;code&gt;label&lt;/code&gt; attribute. When unspecified, a shortcut appears in the last group. This attribute was added in the 3.0.1 release.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="perspective">
-      <annotation>
-         <documentation>
-            The &lt;code&gt;perspective&lt;/code&gt; element has been &lt;b&gt;deprecated&lt;/b&gt; in the 3.1 release. The top level Run/Debug/Profile cascade menus now support contextual (selection sensitive) launching, and clients should provide a &lt;code&gt;contextualLaunch&lt;/code&gt; element instead.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  the unique identifier of a perspective in which a menu shortcut for this launch shortcut will appear.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="contextualLaunch">
-      <annotation>
-         <documentation>
-            Holds all descriptions for adding shortcuts to the selection sensitive Run/Debug/Profile cascade menus.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="contextLabel" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="enablement" minOccurs="0" maxOccurs="1"/>
-         </sequence>
-      </complexType>
-   </element>
-
-   <element name="contextLabel">
-      <annotation>
-         <documentation>
-            Specify the label for a contextual launch mode.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="mode" use="required">
-            <annotation>
-               <documentation>
-                  specifies a mode from the set {&quot;run&quot;,&quot;debug&quot;,&quot;profile&quot;}
-               </documentation>
-            </annotation>
-            <simpleType>
-               <restriction base="string">
-                  <enumeration value="run">
-                  </enumeration>
-                  <enumeration value="debug">
-                  </enumeration>
-                  <enumeration value="profile">
-                  </enumeration>
-               </restriction>
-            </simpleType>
-         </attribute>
-         <attribute name="label" type="string" use="required">
-            <annotation>
-               <documentation>
-                  specifies the label to appear in the contextual launch menu.
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example of a launch shortcut extension point:
-
-&lt;p&gt;
-&lt;pre&gt;
- &lt;extension point=&quot;org.eclipse.debug.ui.launchShortcuts&quot;&gt;
-  &lt;shortcut
-     id=&quot;com.example.ExampleLaunchShortcutId&quot;
-     modes=&quot;run,debug&quot;
-     class=&quot;com.example.ExampleLaunchShortcutImpl&quot;
-     label=&quot;Example Launch Shortcut&quot;
-     icon=&quot;icons/examples.gif&quot;&gt;
-     &lt;perspective id=&quot;org.eclipse.jdt.ui.JavaPerspective&quot;/&gt;
-     &lt;perspective id=&quot;org.eclipse.debug.ui.DebugPerspective&quot;/&gt;
-  &lt;/shortcut&gt;
- &lt;/extension&gt;
-&lt;/pre&gt;
-&lt;/p&gt;
-
-In the above example, a launch shortcut will be shown in the run and debug cascade menus with the label
-&quot;Example Launch Shortcut&quot;, in the JavaPerspective and the DebugPerspective.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         &lt;p&gt;
-Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the 
-interface &lt;b&gt;org.eclipse.debug.ui.ILaunchShortcut&lt;/b&gt;.
-&lt;/p&gt;
-&lt;p&gt;
-Since 3.1, the debug platform registers a command handler for each launch shortcut and its applicable modes to allow clients to define key-bindings for a launch shortcut. The command id for a handler is generated as the launch shortcut id attribute, followed by a dot and the applicable launch mode. For example, the command id for the above launch shortcut example would be &lt;code&gt;com.example.ExampleLaunchShortcutId.debug&lt;/code&gt; for launching in debug mode. A command and key binding could be defined as follows, to bind &quot;&lt;code&gt;ALT-SHIFT-D, E&lt;/code&gt;&quot; to the launch shortcut.
-&lt;pre&gt;
-   &lt;extension point=&quot;org.eclipse.ui.commands&quot;&gt;
-      &lt;command
-            name=&quot;Debug Example Launch&quot;
-            description=&quot;Debug Example Launch&quot;
-            categoryId=&quot;org.eclipse.debug.ui.category.run&quot;
-            id=&quot;com.example.ExampleLaunchShortcutId.debug&quot;&gt;
-      &lt;/command&gt;
-      &lt;keyBinding
-            keySequence=&quot;M3+M2+D E&quot;
-            contextId=&quot;org.eclipse.ui.globalScope&quot;
-            commandId=&quot;com.example.ExampleLaunchShortcutId.debug&quot;
-            keyConfigurationId=&quot;org.eclipse.ui.defaultAcceleratorConfiguration&quot;&gt;
-      &lt;/keyBinding&gt;
-   &lt;/extension&gt;      
-&lt;/pre&gt;
-&lt;/p&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/memoryRenderings.exsd b/org.eclipse.debug.ui/schema/memoryRenderings.exsd
deleted file mode 100644
index 1399bb7..0000000
--- a/org.eclipse.debug.ui/schema/memoryRenderings.exsd
+++ /dev/null
@@ -1,208 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="memoryRenderings" name="Memory Renderings"/>
-      </appInfo>
-      <documentation>
-         Allows plug-ins to contribute arbitrary renderings for memory blocks and bind memory blocks to renderings. For example, a rendering may translate raw bytes of a memory block into ASCII characters.
-      </documentation>
-   </annotation>
-
-   <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>
-
-   <element name="extension">
-      <complexType>
-         <choice>
-            <element ref="renderingType" minOccurs="0" maxOccurs="unbounded"/>
-            <element ref="renderingBindings" minOccurs="0" maxOccurs="unbounded"/>
-         </choice>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  a fully qualified identifier of the target extension point
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  an optional identifier of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  an optional name of the extension instance
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="renderingType">
-      <annotation>
-         <documentation>
-            This element defines a rendering type.
-         </documentation>
-      </annotation>
-      <complexType>
-         <attribute name="name" type="string" use="required">
-            <annotation>
-               <documentation>
-                  human-readable name of this rendering type
-               </documentation>
-               <appInfo>
-                  <meta.attribute translatable="true"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string" use="required">
-            <annotation>
-               <documentation>
-                  unique identifier for this rendering
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  fully qualified name of the Java class that implements &lt;code&gt;org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate&lt;/code&gt;
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="renderingBindings">
-      <annotation>
-         <documentation>
-            Binds memory blocks with available renderings.
-         </documentation>
-      </annotation>
-      <complexType>
-         <sequence>
-            <element ref="enablement" minOccurs="0" maxOccurs="unbounded"/>
-         </sequence>
-         <attribute name="renderingIds" type="string">
-            <annotation>
-               <documentation>
-                  comma delimited list of memory rendering type identifiers, specifying available rendering types for memory blocks this binding is enabled for. Must not be specified when &lt;code&gt;class&lt;/code&gt; is provided.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="primaryId" type="string">
-            <annotation>
-               <documentation>
-                  memory rendering type identifier, specifying the default rendering type to be considered primary for memory blocks this binding is enabled for. When there is more than one default rendering type bound to a memory block, the UI may use the information to determine which rendering should be made visible (i.e the primrary one). Must not be specified when &lt;code&gt;class&lt;/code&gt; is provided. Clients should be careful to specify only one primary rendering type per memory block.
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="class" type="string">
-            <annotation>
-               <documentation>
-                  fully qualified name of the Java class that implements &lt;code&gt;org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider&lt;/code&gt;, allowing for dynamic rendering bindings. When specified, &lt;code&gt;renderingIds&lt;/code&gt;, &lt;code&gt;defaultIds&lt;/code&gt;, and &lt;code&gt;primaryId&lt;/code&gt; must not be specified.
-               </documentation>
-               <appInfo>
-                  <meta.attribute kind="java"/>
-               </appInfo>
-            </annotation>
-         </attribute>
-         <attribute name="defaultIds" type="string">
-            <annotation>
-               <documentation>
-                  comma delimited list of memory rendering type identifiers, specifying default rendering types for memory blocks this binding is enabled for. Must not be specified when &lt;code&gt;class&lt;/code&gt; is provided.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         3.1 - replacement for memoryRenderingTypes extension point which was considered experimental in 3.0
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         The following is an example for defining a new rendering type and binding. 
-
-&lt;p&gt;
-&lt;pre&gt;
-&lt;extension point=&quot;org.eclipse.debug.ui.memoryRenderings&quot;&gt;
-    &lt;renderingType 
-        name=&quot;Sample Rendering&quot;
-        id=&quot;com.example.sampleRendering&quot;
-        class=&quot;com.example.SampleRenderingTypeDelegate&quot;&gt;
-    &lt;/renderingType&gt;
-    &lt;renderingBindings
-        renderingIds=&quot;com.example.sampleRendering&quot;&gt;
-        &lt;enablement&gt;
-            &lt;instanceof value=&quot;com.example.SampleMemoryBlock&quot;/&gt;
-        &lt;/enablement&gt;    
-    &lt;/renderingBindings&gt;          
-&lt;/extension&gt;        
-&lt;/pre&gt;
-&lt;/p&gt;
-
-In the above example, a new rendering type, Sample Rendering, is defined. The class &lt;code&gt;com.example.SampleRenderingTypeDelegate&lt;/code&gt; implements &lt;code&gt;org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate&lt;/code&gt; and will be used to create new renderings of this type. The rendering is bound to instances of &lt;code&gt;com.exmaple.SampleMemoryBlock&lt;/code&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         &lt;p&gt;
-&lt;li&gt;Value of the attribute &lt;b&gt;class&lt;/b&gt; in a &lt;b&gt;renderingType&lt;/b&gt; element must be a fully qualifed name of a Java class that implements &lt;b&gt;org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate&lt;/b&gt;.&lt;/li&gt;
-&lt;li&gt;Value of the attribute &lt;b&gt;class&lt;/b&gt; in a &lt;b&gt;renderingBindings&lt;/b&gt; element must be a fully qualifed name of a Java class that implements &lt;b&gt;org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider&lt;/b&gt;.&lt;/li&gt;
-&lt;/p&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         &lt;p&gt;
-The debug platform provides the following rendering types:&lt;br&gt;
-&lt;li&gt;Hex Rendering (rendering id: org.eclipse.debug.ui.rendering.raw_memory)&lt;/li&gt;
-&lt;li&gt;ASCII Rendering (rendering id: org.eclipse.debug.ui.rendering.ascii)&lt;/li&gt;
-&lt;li&gt;Signed Integer Rendering (rendering id: org.eclipse.debug.ui.rendering.signedint)&lt;/li&gt;
-&lt;li&gt;Unsigned Integer Rendering (rendering id: org.eclipse.debug.ui.rendering.unsignedint) &lt;/li&gt;
-&lt;br&gt;
-&lt;/p&gt;
-&lt;p&gt;
-The debug platform provides a memory view to host renderings.
-&lt;/p&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2004, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/schema/sourceContainerPresentations.exsd b/org.eclipse.debug.ui/schema/sourceContainerPresentations.exsd
deleted file mode 100644
index 5629b04..0000000
--- a/org.eclipse.debug.ui/schema/sourceContainerPresentations.exsd
+++ /dev/null
@@ -1,142 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.debug.ui">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.debug.ui" id="sourceContainerPresentations" name="Source Container Presentations"/>

-      </appInfo>

-      <documentation>

-         Extension point to define a presentation aspects of a source container type.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="sourceContainerPresentation" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="sourceContainerPresentation">

-      <annotation>

-         <documentation>

-            An extension point to define presentation aspects of a source container type.

-         </documentation>

-      </annotation>

-      <complexType>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The unique id used to refer to this implementation.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="icon" type="string">

-            <annotation>

-               <documentation>

-                  The icon that should be displayed for the source container type and instances.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="containerTypeID" type="string" use="required">

-            <annotation>

-               <documentation>

-                  The unique identifier of the source container type for which this presentation is being provided.

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="browserClass" type="string">

-            <annotation>

-               <documentation>

-                  A class that can be called to display a browse dialog for the source container type. Must implement &lt;code&gt;ISourceLocationBrowser&lt;/code&gt;.

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.debug.internal.ui.sourcelookup.ISourceLocationBrowser"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.0

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         Following is an example of an source container presentation definition.
-&lt;pre&gt;
-   &lt;extension point=&quot;org.eclipse.debug.ui.sourceContainerPresentations&quot;&gt;
-      &lt;sourceContainerPresentation
-            browserClass=&quot;org.eclipse.debug.internal.ui.sourcelookup.browsers.ProjectSourceContainerBrowser&quot;
-            containerTypeID=&quot;org.eclipse.debug.core.containerType.project&quot;
-            icon=&quot;icons/full/obj16/prj_obj.gif&quot;
-            id=&quot;org.eclipse.debug.ui.containerPresentation.project&quot;&gt;
-      &lt;/sourceContainerPresentation&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;browserClass&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;ISourceLocationBrowser&lt;/b&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-Copyright (c) 2003, 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which 

-accompanies this distribution, and is available at 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.debug.ui/schema/stringVariablePresentations.exsd b/org.eclipse.debug.ui/schema/stringVariablePresentations.exsd
deleted file mode 100644
index c4a9052..0000000
--- a/org.eclipse.debug.ui/schema/stringVariablePresentations.exsd
+++ /dev/null
@@ -1,110 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.debug.ui">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.debug.ui" id="stringVariablePresentations" name="String Variable Presentations"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a mechanism for contributing a user interface/presentation for a string substitution variable (i.e. a context variable or value variable).

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="variablePresentation" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="variablePresentation">

-      <complexType>

-         <attribute name="variableName" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the variable this presentation is for

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="argumentSelector" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a fully qualified name of a Java class that implements &lt;code&gt;IArgumentSelector&lt;/code&gt;

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         2.1

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a variable presentation contribution: 
-&lt;pre&gt;
-&lt;extension point=&quot;org.eclipse.debug.ui.stringVariablePresentations&quot;&gt;
-  &lt;variablePresentation 
-     variableName=&quot;example_variable&quot;
-     argumentSelector=&quot;com.example.ExampleArgumentChooser&quot;&gt;
-  &lt;/variablePresentation&gt;
-&lt;/extension&gt;
-&lt;/pre&gt;
-In the above example, the contributed presentation will be used for the variable named &quot;example_variable&quot;. An argument selector is specified to configure an argument applicable to the variable.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;argumentSelector&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.debug.ui.stringsubstitution.IArgumentSelector&lt;/b&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-Copyright (c) 2003, 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which 

-accompanies this distribution, and is available at 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.debug.ui/schema/variableValueEditors.exsd b/org.eclipse.debug.ui/schema/variableValueEditors.exsd
deleted file mode 100644
index e41f3f8..0000000
--- a/org.eclipse.debug.ui/schema/variableValueEditors.exsd
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!-- Schema file written by PDE -->
-<schema targetNamespace="org.eclipse.debug.ui">
-<annotation>
-      <appInfo>
-         <meta.schema plugin="org.eclipse.debug.ui" id="variableValueEditors" name="Variable Value Editors"/>
-      </appInfo>
-      <documentation>
-         This extension point provides a mechanism for contributing variable value editors for a particular debug model. Variable value editors are used to edit/save variable values. When the user invokes the &quot;Change Value...&quot; or &quot;Assign Value&quot; (details pane) actions on a variable in the Variables view, the contributed &lt;code&gt;org.eclipse.debug.ui.actions.IVariableValueEditor&lt;/code&gt; will be invoked to change the value.
-      </documentation>
-   </annotation>
-
-   <element name="extension">
-      <complexType>
-         <sequence>
-            <element ref="variableValueEditor"/>
-         </sequence>
-         <attribute name="point" type="string" use="required">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="id" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="name" type="string">
-            <annotation>
-               <documentation>
-                  
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <element name="variableValueEditor">
-      <complexType>
-         <attribute name="class" type="string" use="required">
-            <annotation>
-               <documentation>
-                  Implementation of &lt;code&gt;org.eclipse.debug.ui.actions.IVariableValueEditor&lt;/code&gt;
-               </documentation>
-            </annotation>
-         </attribute>
-         <attribute name="modelId" type="string" use="required">
-            <annotation>
-               <documentation>
-                  The debug model identifier for which the given variable value editor is applicable.
-               </documentation>
-            </annotation>
-         </attribute>
-      </complexType>
-   </element>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="since"/>
-      </appInfo>
-      <documentation>
-         3.1
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="examples"/>
-      </appInfo>
-      <documentation>
-         &lt;pre&gt;
-   &lt;extension
-         point=&quot;org.eclipse.debug.ui.variableValueEditors&quot;&gt;
-      &lt;variableEditor
-         modelId=&quot;com.examples.myDebugModel&quot;
-         class=&quot;com.examples.variables.MyVariableValueEditor&quot;/&gt;
-   &lt;/extension&gt;
-&lt;/pre&gt;
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="apiInfo"/>
-      </appInfo>
-      <documentation>
-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.debug.ui.actions.IVariableValueEditor&lt;/b&gt;.
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="implementation"/>
-      </appInfo>
-      <documentation>
-         
-      </documentation>
-   </annotation>
-
-   <annotation>
-      <appInfo>
-         <meta.section type="copyright"/>
-      </appInfo>
-      <documentation>
-Copyright (c) 2004, 2005 IBM Corporation and others.&lt;br&gt;
-All rights reserved. This program and the accompanying materials are made 
-available under the terms of the Eclipse Public License v1.0 which 
-accompanies this distribution, and is available at 
-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
-      </documentation>
-   </annotation>
-
-</schema>
diff --git a/org.eclipse.debug.ui/scripts/exportplugin.xml b/org.eclipse.debug.ui/scripts/exportplugin.xml
deleted file mode 100644
index 2b66e4c..0000000
--- a/org.eclipse.debug.ui/scripts/exportplugin.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<!-- Export a jar of .class files for the org.eclipse.debug.ui Eclipse plugin
-     along with other important plugin files to the "plugin-export" subdirectory
-     of the target Eclipse installation -->
-<project name="Export debug.ui" default="export" basedir="..">
-
-	<!-- Set the timestamp and important properties -->
-	<target name="init">
-		<tstamp/>
-		<property name="destdir" value="../../plugin-export" />
-		<property name="dest"  value="${destdir}/org.eclipse.debug.ui_3.0.0" />
-	</target>
-
-	<!-- Create the jar of .class files, and copy other important files to export dir -->
-	<target name="export" depends="init">
-		<mkdir dir="${destdir}" />
-		<delete dir="${dest}" />
-		<mkdir dir="${dest}" />
-		<jar 
-			jarfile="${dest}/dtui.jar"
-			basedir="bin"
-		/>
-		<!-- Create the source zip -->
-		<zip zipfile="${dest}/dtuisrc.zip">
-			<fileset dir="ui"/>
-		</zip>
-		<copy file="plugin.xml" todir="${dest}"/>
-		<copy file="plugin.properties" todir="${dest}"/>
-		<copy file=".classpath" todir="${dest}"/>
-		<copy file=".options" todir="${dest}"/>
-		<copy todir="${dest}/icons">
-			<fileset dir="icons" />
-		</copy>
-	</target>
-	
-</project>
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BreakpointImageProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BreakpointImageProvider.java
deleted file mode 100644
index 6f8b99e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/BreakpointImageProvider.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.text.source.Annotation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.texteditor.IAnnotationImageProvider;
-import org.eclipse.ui.texteditor.MarkerAnnotation;
-
-/**
- * Provides managed images for breakpoint annotations.
- * @since 3.0
- */
-public class BreakpointImageProvider implements IAnnotationImageProvider {
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getManagedImage(org.eclipse.jface.text.source.Annotation)
-	 */
-	public Image getManagedImage(Annotation annotation) {
-		if (annotation instanceof MarkerAnnotation) {
-			IMarker marker = ((MarkerAnnotation)annotation).getMarker();
-			if (marker != null) {
-				IBreakpoint breakpoint = DebugPlugin.getDefault().getBreakpointManager().getBreakpoint(marker);
-				if (breakpoint != null) {
-					return DebugUIPlugin.getModelPresentation().getImage(breakpoint);
-				}
-			}
-		}
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getImageDescriptorId(org.eclipse.jface.text.source.Annotation)
-	 */
-	public String getImageDescriptorId(Annotation annotation) {
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IAnnotationImageProvider#getImageDescriptor(java.lang.String)
-	 */
-	public ImageDescriptor getImageDescriptor(String imageDescritporId) {
-		return null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ColorManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ColorManager.java
deleted file mode 100644
index a09ae6d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ColorManager.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Generic color manager.
- */
-public class ColorManager {	
-	
-	private static ColorManager fgColorManager;
-	
-	private ColorManager() {
-	}
-	
-	public static ColorManager getDefault() {
-		if (fgColorManager == null) {
-			fgColorManager= new ColorManager();
-		}
-		return fgColorManager;
-	}
-	
-	protected Map fColorTable= new HashMap(10);
-	
-	public Color getColor(RGB rgb) {
-		Color color= (Color) fColorTable.get(rgb);
-		if (color == null) {
-			color= new Color(Display.getCurrent(), rgb);
-			fColorTable.put(rgb, color);
-		}
-		return color;
-	}
-	
-	public void dispose() {
-		Iterator e= fColorTable.values().iterator();
-		while (e.hasNext())
-			((Color) e.next()).dispose();
-	}
-}
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/CompositeDebugImageDescriptor.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/CompositeDebugImageDescriptor.java
deleted file mode 100644
index e43235c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/CompositeDebugImageDescriptor.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-
-/**
- * A JDIImageDescriptor consists of a main icon and several adornments. The adornments
- * are computed according to flags set on creation of the descriptor.
- */
-public class CompositeDebugImageDescriptor extends CompositeImageDescriptor {
-	
-	/** Flag to render the skip breakpoint adornment */
-	public final static int SKIP_BREAKPOINT= 			0x0001;
-	
-	private Image fBaseImage;
-	private int fFlags;
-	private Point fSize;
-	
-	/**
-	 * Create a new composite image descriptor.
-	 * 
-	 * @param baseImage an image used as the base image
-	 * @param flags flags indicating which adornments are to be rendered
-	 * 
-	 */
-	public CompositeDebugImageDescriptor(Image baseImage, int flags) {
-		setBaseImage(baseImage);
-		setFlags(flags);
-	}
-	
-	/**
-	 * @see CompositeImageDescriptor#getSize()
-	 */
-	protected Point getSize() {
-		if (fSize == null) {
-			ImageData data= getBaseImage().getImageData();
-			setSize(new Point(data.width, data.height));
-		}
-		return fSize;
-	}
-	
-	/**
-	 * @see Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object object) {
-		if (!(object instanceof CompositeDebugImageDescriptor)){
-			return false;
-		}
-		CompositeDebugImageDescriptor other= (CompositeDebugImageDescriptor)object;
-		return (getBaseImage().equals(other.getBaseImage()) && getFlags() == other.getFlags());
-	}
-	
-	/**
-	 * @see Object#hashCode()
-	 */
-	public int hashCode() {
-		return getBaseImage().hashCode() | getFlags();
-	}
-	
-	/**
-	 * @see CompositeImageDescriptor#drawCompositeImage(int, int)
-	 */
-	protected void drawCompositeImage(int width, int height) {
-		ImageData bg= getBaseImage().getImageData();
-		if (bg == null) {
-			bg= DEFAULT_IMAGE_DATA;
-		}
-		drawImage(bg, 0, 0);
-		drawOverlays();
-	}
-
-	/**
-	 * Add any overlays to the image as specified in the flags.
-	 */
-	protected void drawOverlays() {
-		int flags= getFlags();
-		int x= 0;
-		int y= 0;
-		ImageData data= null;
-		if ((flags & SKIP_BREAKPOINT) != 0) {
-			x= 0;
-			y= 0;
-			data= DebugUITools.getImage(IDebugUIConstants.IMG_OVR_SKIP_BREAKPOINT).getImageData();
-			drawImage(data, x, y);
-		}
-	}
-	
-	protected Image getBaseImage() {
-		return fBaseImage;
-	}
-    
-    protected void setBaseImage(Image image) {
-        fBaseImage = image;
-    }
-
-	protected int getFlags() {
-		return fFlags;
-	}
-
-	protected void setFlags(int flags) {
-		fFlags = flags;
-	}
-
-	protected void setSize(Point size) {
-		fSize = size;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPerspectiveFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPerspectiveFactory.java
deleted file mode 100644
index 78d2b91..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPerspectiveFactory.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.ui.IFolderLayout;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-import org.eclipse.ui.console.IConsoleConstants;
-
-/**
- * The debug perspective factory.
- */
-public class DebugPerspectiveFactory implements IPerspectiveFactory {
-	
-	/**
-	 * @see IPerspectiveFactory#createInitialLayout(IPageLayout)
-	 */
-	public void createInitialLayout(IPageLayout layout) {
-		
-		IFolderLayout consoleFolder = layout.createFolder(IInternalDebugUIConstants.ID_CONSOLE_FOLDER_VIEW, IPageLayout.BOTTOM, (float)0.75, layout.getEditorArea());
-		consoleFolder.addView(IConsoleConstants.ID_CONSOLE_VIEW);
-		consoleFolder.addView(IPageLayout.ID_TASK_LIST);
-		consoleFolder.addPlaceholder(IPageLayout.ID_BOOKMARKS);
-		consoleFolder.addPlaceholder(IPageLayout.ID_PROP_SHEET);
-		
-		IFolderLayout navFolder= layout.createFolder(IInternalDebugUIConstants.ID_NAVIGATOR_FOLDER_VIEW, IPageLayout.TOP, (float) 0.45, layout.getEditorArea());
-		navFolder.addView(IDebugUIConstants.ID_DEBUG_VIEW);
-		navFolder.addPlaceholder(IPageLayout.ID_RES_NAV);
-		
-		IFolderLayout toolsFolder= layout.createFolder(IInternalDebugUIConstants.ID_TOOLS_FOLDER_VIEW, IPageLayout.RIGHT, (float) 0.50, IInternalDebugUIConstants.ID_NAVIGATOR_FOLDER_VIEW);
-		toolsFolder.addView(IDebugUIConstants.ID_VARIABLE_VIEW);
-		toolsFolder.addView(IDebugUIConstants.ID_BREAKPOINT_VIEW);
-		toolsFolder.addPlaceholder(IDebugUIConstants.ID_EXPRESSION_VIEW);
-		toolsFolder.addPlaceholder(IDebugUIConstants.ID_REGISTER_VIEW);
-		
-		IFolderLayout outlineFolder= layout.createFolder(IInternalDebugUIConstants.ID_OUTLINE_FOLDER_VIEW, IPageLayout.RIGHT, (float) 0.75, layout.getEditorArea());
-		outlineFolder.addView(IPageLayout.ID_OUTLINE);
-		
-		layout.addActionSet(IDebugUIConstants.LAUNCH_ACTION_SET);
-		layout.addActionSet(IDebugUIConstants.DEBUG_ACTION_SET);
-		
-		setContentsOfShowViewMenu(layout);
-	}
-	
-	/** 
-	 * Sets the intial contents of the "Show View" menu.
-	 */
-	protected void setContentsOfShowViewMenu(IPageLayout layout) {
-		layout.addShowViewShortcut(IDebugUIConstants.ID_DEBUG_VIEW);
-		layout.addShowViewShortcut(IDebugUIConstants.ID_VARIABLE_VIEW);
-		layout.addShowViewShortcut(IDebugUIConstants.ID_BREAKPOINT_VIEW);
-		layout.addShowViewShortcut(IDebugUIConstants.ID_EXPRESSION_VIEW);
-		layout.addShowViewShortcut(IPageLayout.ID_OUTLINE);
-		layout.addShowViewShortcut(IConsoleConstants.ID_CONSOLE_VIEW);
-		layout.addShowViewShortcut(IPageLayout.ID_TASK_LIST);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPluginImages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPluginImages.java
deleted file mode 100644
index 60c474b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugPluginImages.java
+++ /dev/null
@@ -1,309 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
-import org.osgi.framework.Bundle;
-
-/**
- * The images provided by the debug plugin.
- */
-public class DebugPluginImages {
-
-	/** 
-	 * The image registry containing <code>Image</code>s and <code>ImageDescriptor</code>s.
-	 */
-	private static ImageRegistry imageRegistry;
-	
-	private static final String ATTR_LAUNCH_CONFIG_TYPE_ICON = "icon"; //$NON-NLS-1$
-	private static final String ATTR_LAUNCH_CONFIG_TYPE_ID = "configTypeID"; //$NON-NLS-1$
-	
-	/* Declare Common paths */
-	private static URL ICON_BASE_URL= null;
-
-	static {
-		String pathSuffix = "icons/full/"; //$NON-NLS-1$
-		ICON_BASE_URL= DebugUIPlugin.getDefault().getBundle().getEntry(pathSuffix);
-	}
-
-	// Use IPath and toOSString to build the names to ensure they have the slashes correct
-	private final static String CTOOL= "etool16/"; //basic colors - size 16x16 //$NON-NLS-1$
-	private final static String DLCL= "dlcl16/"; //disabled - size 16x16 //$NON-NLS-1$
-	private final static String ELCL= "elcl16/"; //enabled - size 16x16 //$NON-NLS-1$
-	private final static String OBJECT= "obj16/"; //basic colors - size 16x16 //$NON-NLS-1$
-	private final static String WIZBAN= "wizban/"; //basic colors - size 16x16 //$NON-NLS-1$
-	private final static String OVR= "ovr16/"; //basic colors - size 7x8 //$NON-NLS-1$
-	private final static String VIEW= "eview16/"; // views //$NON-NLS-1$
-	
-	/**
-	 * Declare all images
-	 */
-	private static void declareImages() {
-		// Actions
-		declareRegistryImage(IDebugUIConstants.IMG_ACT_DEBUG, CTOOL + "debug_exc.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_ACT_RUN, CTOOL + "run_exc.gif"); //$NON-NLS-1$
-        declareRegistryImage(IDebugUIConstants.IMG_ACT_SYNCED, ELCL + "synced.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_SKIP_BREAKPOINTS, ELCL + "skip_brkp.gif"); //$NON-NLS-1$
-		
-		//menus
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_CHANGE_VARIABLE_VALUE, ELCL + "changevariablevalue_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_CHANGE_VARIABLE_VALUE, DLCL + "changevariablevalue_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_CHANGE_VARIABLE_VALUE, ELCL + "changevariablevalue_co.gif"); //$NON-NLS-1$
-		
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_CONTENT_ASSIST, ELCL + "metharg_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_DLCL_CONTENT_ASSIST, DLCL + "metharg_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_ELCL_CONTENT_ASSIST, ELCL + "metharg_obj.gif"); //$NON-NLS-1$
-		
-		//Local toolbars
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_DETAIL_PANE, ELCL + "toggledetailpane_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_DETAIL_PANE_UNDER, ELCL + "det_pane_under.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_DETAIL_PANE_RIGHT, ELCL + "det_pane_right.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_DETAIL_PANE_HIDE, ELCL + "det_pane_hide.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_LOCK, ELCL + "lock_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_TYPE_NAMES, ELCL + "tnames_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_DISCONNECT, ELCL + "disconnect_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_LCL_REMOVE_ALL, ELCL + "rem_all_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_SHOW_LOGICAL_STRUCTURE, ELCL + "var_cntnt_prvdr.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_COLLAPSE_ALL, ELCL + "collapseall.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_TERMINATE, ELCL + "terminate_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_RUN_TO_LINE, ELCL + "runtoline_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_MONITOR_EXPRESSION, ELCL + "monitorexpression_tsk.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_REMOVE_MEMORY, ELCL + "removememory_tsk.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_RESET_MEMORY, ELCL + "memoryreset_tsk.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_COPY_VIEW_TO_CLIPBOARD, ELCL + "copyviewtoclipboard_tsk.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_LCL_PRINT_TOP_VIEW_TAB, ELCL + "printview_tsk.gif"); //$NON-NLS-1$
-			
-		// disabled local toolbars
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_DETAIL_PANE, DLCL + "toggledetailpane_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_DETAIL_PANE_UNDER, DLCL + "det_pane_under.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_DETAIL_PANE_RIGHT, DLCL + "det_pane_right.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_DETAIL_PANE_HIDE, DLCL + "det_pane_hide.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_LOCK, DLCL + "lock_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_TYPE_NAMES, DLCL + "tnames_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_SHOW_LOGICAL_STRUCTURE, DLCL + "var_cntnt_prvdr.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_COLLAPSE_ALL, DLCL + "collapseall.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_TERMINATE, DLCL + "terminate_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_REMOVE_ALL, DLCL + "rem_all_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_RUN_TO_LINE, DLCL + "runtoline_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_MONITOR_EXPRESSION, DLCL + "monitorexpression_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_REMOVE_MEMORY, DLCL + "removememory_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_RESET_MEMORY, DLCL + "memoryreset_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_COPY_VIEW_TO_CLIPBOARD, DLCL + "copyviewtoclipboard_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_DLCL_PRINT_TOP_VIEW_TAB, DLCL + "printview_tsk.gif");  //$NON-NLS-1$
-		
-		// enabled local toolbars
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_DETAIL_PANE, ELCL + "toggledetailpane_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_DETAIL_PANE_UNDER, ELCL + "det_pane_under.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_DETAIL_PANE_RIGHT, ELCL + "det_pane_right.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_DETAIL_PANE_HIDE, ELCL + "det_pane_hide.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_LOCK, ELCL + "lock_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_TYPE_NAMES, ELCL + "tnames_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_SHOW_LOGICAL_STRUCTURE, ELCL + "var_cntnt_prvdr.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_COLLAPSE_ALL, ELCL + "collapseall.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_TERMINATE, ELCL + "terminate_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_MONITOR_EXPRESSION, ELCL + "monitorexpression_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_REMOVE_MEMORY, ELCL + "removememory_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_RESET_MEMORY, ELCL + "memoryreset_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_COPY_VIEW_TO_CLIPBOARD, ELCL + "copyviewtoclipboard_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_PRINT_TOP_VIEW_TAB, ELCL + "printview_tsk.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_REMOVE_ALL, ELCL + "rem_all_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ELCL_HIERARCHICAL, ELCL + "hierarchicalLayout.gif"); //$NON-NLS-1$
-		
-		//Object
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_LAUNCH_DEBUG, OBJECT + "ldebug_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_LAUNCH_RUN, OBJECT + "lrun_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_LAUNCH_RUN_TERMINATED, OBJECT + "terminatedlaunch_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_DEBUG_TARGET, OBJECT + "debugt_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_DEBUG_TARGET_SUSPENDED, OBJECT + "debugts_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_DEBUG_TARGET_TERMINATED, OBJECT + "debugtt_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_THREAD_RUNNING, OBJECT + "thread_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_THREAD_SUSPENDED, OBJECT + "threads_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_THREAD_TERMINATED, OBJECT + "threadt_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_STACKFRAME, OBJECT + "stckframe_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_STACKFRAME_RUNNING, OBJECT + "stckframe_running_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_VARIABLE, OBJECT + "genericvariable_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_REGISTER, OBJECT + "genericregister_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_REGISTER_GROUP, OBJECT + "genericreggroup_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_BREAKPOINT, OBJECT + "brkp_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_BREAKPOINT_DISABLED, OBJECT + "brkpd_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_BREAKPOINT_GROUP, OBJECT + "brkp_grp.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_BREAKPOINT_GROUP_DISABLED, OBJECT + "brkp_grp_disabled.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_WATCHPOINT, OBJECT + "readwrite_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_WATCHPOINT_DISABLED, OBJECT + "readwrite_obj_disabled.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT, OBJECT + "read_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT_DISABLED, OBJECT + "read_obj_disabled.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_MODIFICATION_WATCHPOINT, OBJECT + "write_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_MODIFICATION_WATCHPOINT_DISABLED, OBJECT + "write_obj_disabled.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_OS_PROCESS, OBJECT + "osprc_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_OS_PROCESS_TERMINATED, OBJECT + "osprct_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_EXPRESSION, OBJECT + "expression_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJS_INSTRUCTION_POINTER_TOP, OBJECT + "inst_ptr_top.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJS_INSTRUCTION_POINTER, OBJECT + "inst_ptr.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJS_ARRAY_PARTITION, OBJECT + "arraypartition_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_ENV_VAR, OBJECT + "envvar_obj.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJECT_MEMORY_CHANGED, OBJECT + "memorychanged_obj.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJECT_MEMORY, OBJECT + "memory_obj.gif");  //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJS_BREAKPOINT_TYPE, OBJECT + "brkp_type.gif");  //$NON-NLS-1$
-		
-		// tabs
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJS_COMMON_TAB, OBJECT + "common_tab.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJS_REFRESH_TAB, OBJECT + "refresh_tab.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OBJS_PERSPECTIVE_TAB, OBJECT + "persp_tab.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_OBJS_ENVIRONMENT, OBJECT + "environment_obj.gif"); //$NON-NLS-1$
-		
-		// Views
-		declareRegistryImage(IDebugUIConstants.IMG_VIEW_BREAKPOINTS, VIEW + "breakpoint_view.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_VIEW_EXPRESSIONS, VIEW + "watchlist_view.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_VIEW_LAUNCHES, VIEW + "debug_view.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_VIEW_VARIABLES, VIEW + "variable_view.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_CVIEW_MEMORY_VIEW, VIEW + "memory_view.gif");  //$NON-NLS-1$
-		
-		// Perspectives
-		declareRegistryImage(IDebugUIConstants.IMG_PERSPECTIVE_DEBUG, VIEW + "debug_persp.gif"); //$NON-NLS-1$
-		
-		//Wizard Banners
-		declareRegistryImage(IDebugUIConstants.IMG_WIZBAN_DEBUG, WIZBAN + "debug_wiz.gif"); //$NON-NLS-1$
-		declareRegistryImage(IDebugUIConstants.IMG_WIZBAN_RUN, WIZBAN + "run_wiz.gif"); //$NON-NLS-1$
-			
-		// Overlays
-		declareRegistryImage(IDebugUIConstants.IMG_OVR_ERROR, OVR + "error.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_OVR_TRANSPARENT, OVR + "transparent.gif"); //$NON-NLS-1$
-        declareRegistryImage(IDebugUIConstants.IMG_OVR_SKIP_BREAKPOINT, OVR + "skip_breakpoint_ov.gif"); //$NON-NLS-1$
-				
-		//source location
-		declareRegistryImage(IInternalDebugUIConstants.IMG_SRC_LOOKUP_MENU, ELCL + "edtsrclkup_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_SRC_LOOKUP_MENU_DLCL, DLCL + "edtsrclkup_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_SRC_LOOKUP_MENU_ELCL, ELCL + "edtsrclkup_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_SRC_LOOKUP_TAB, ELCL + "edtsrclkup_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_ADD_SRC_LOC_WIZ, WIZBAN + "addsrcloc_wiz.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalDebugUIConstants.IMG_EDIT_SRC_LOC_WIZ, WIZBAN + "edtsrclkup_wiz.gif"); //$NON-NLS-1$
-		
-		// launch configuration types
-		IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_LAUNCH_CONFIGURATION_TYPE_IMAGES);
-		IConfigurationElement[] configElements= extensionPoint.getConfigurationElements();
-		for (int i = 0; i < configElements.length; i++) {
-			IConfigurationElement configElement = configElements[i];
-			Bundle bundle = Platform.getBundle(configElement.getNamespace());
-			URL iconURL = bundle.getEntry("/"); //$NON-NLS-1$
-			String iconPath = configElement.getAttribute(ATTR_LAUNCH_CONFIG_TYPE_ICON);
-			ImageDescriptor imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
-			try {
-				iconURL = new URL(iconURL, iconPath);
-				imageDescriptor = ImageDescriptor.createFromURL(iconURL);
-			} catch (MalformedURLException mue) {
-				DebugUIPlugin.log(mue);
-			}
-			String configTypeID = configElement.getAttribute(ATTR_LAUNCH_CONFIG_TYPE_ID);
-			if (configTypeID == null) {
-				// bug 12652
-				configTypeID = configElement.getAttribute("type"); //$NON-NLS-1$
-			}			
-			imageRegistry.put(configTypeID, imageDescriptor);				
-		}
-	}
-
-	/**
-	 * Declare an Image in the registry table.
-	 * @param key 	The key to use when registering the image
-	 * @param path	The path where the image can be found. This path is relative to where
-	 *				this plugin class is found (i.e. typically the packages directory)
-	 */
-	private final static void declareRegistryImage(String key, String path) {
-		ImageDescriptor desc= ImageDescriptor.getMissingImageDescriptor();
-		try {
-			desc= ImageDescriptor.createFromURL(makeIconFileURL(path));
-		} catch (MalformedURLException me) {
-			DebugUIPlugin.log(me);
-		}
-		imageRegistry.put(key, desc);
-	}
-	
-	/**
-	 * Returns the ImageRegistry.
-	 */
-	public static ImageRegistry getImageRegistry() {
-		if (imageRegistry == null) {
-			initializeImageRegistry();
-		}
-		return imageRegistry;
-	}
-
-	/**
-	 *	Initialize the image registry by declaring all of the required
-	 *	graphics. This involves creating JFace image descriptors describing
-	 *	how to create/find the image should it be needed.
-	 *	The image is not actually allocated until requested.
-	 *
-	 * 	Prefix conventions
-	 *		Wizard Banners			WIZBAN_
-	 *		Preference Banners		PREF_BAN_
-	 *		Property Page Banners	PROPBAN_
-	 *		Color toolbar			CTOOL_
-	 *		Enable toolbar			ETOOL_
-	 *		Disable toolbar			DTOOL_
-	 *		Local enabled toolbar	ELCL_
-	 *		Local Disable toolbar	DLCL_
-	 *		Object large			OBJL_
-	 *		Object small			OBJS_
-	 *		View 					VIEW_
-	 *		Product images			PROD_
-	 *		Misc images				MISC_
-	 *
-	 *	Where are the images?
-	 *		The images (typically gifs) are found in the same location as this plugin class.
-	 *		This may mean the same package directory as the package holding this class.
-	 *		The images are declared using this.getClass() to ensure they are looked up via
-	 *		this plugin class.
-	 * @see org.eclipse.jface.resource.ImageRegistry
-	 */
-	public static ImageRegistry initializeImageRegistry() {
-		imageRegistry= new ImageRegistry(DebugUIPlugin.getStandardDisplay());
-		declareImages();
-		return imageRegistry;
-	}
-
-	/**
-	 * Returns the <code>Image</code> identified by the given key,
-	 * or <code>null</code> if it does not exist.
-	 */
-	public static Image getImage(String key) {
-		return getImageRegistry().get(key);
-	}
-	
-	/**
-	 * Returns the <code>ImageDescriptor</code> identified by the given key,
-	 * or <code>null</code> if it does not exist.
-	 */
-	public static ImageDescriptor getImageDescriptor(String key) {
-		return getImageRegistry().getDescriptor(key);
-	}
-	
-	private static URL makeIconFileURL(String iconPath) throws MalformedURLException {
-		if (ICON_BASE_URL == null) {
-			throw new MalformedURLException();
-		}
-			
-		return new URL(ICON_BASE_URL, iconPath);
-	}
-}
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIAdapterFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIAdapterFactory.java
deleted file mode 100644
index 4853f64..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIAdapterFactory.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
- 
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.launchConfigurations.PersistableLaunchConfigurationFactory;
-import org.eclipse.debug.internal.ui.launchConfigurations.PersistableLaunchConfigurationTypeFactory;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainerWorkbenchAdapter;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointPersistableElementAdapter;
-import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.model.IWorkbenchAdapter2;
-
-public class DebugUIAdapterFactory implements IAdapterFactory {
-
-	/**
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(Object, Class)
-	 */
-	public Object getAdapter(Object obj, Class adapterType) {
-		if (adapterType.isInstance(obj)) {
-			return obj;
-		}
-		
-		if (adapterType == IPersistableElement.class) {
-			if (obj instanceof ILaunchConfiguration) {
-				return new PersistableLaunchConfigurationFactory((ILaunchConfiguration)obj);
-			} else if (obj instanceof ILaunchConfigurationType) {
-				return new PersistableLaunchConfigurationTypeFactory((ILaunchConfigurationType)obj);
-			} else if (obj instanceof IBreakpoint) {
-			    return new BreakpointPersistableElementAdapter((IBreakpoint)obj);
-            }
-		}
-        
-        if (adapterType == IWorkbenchAdapter.class) {
-        	if (obj instanceof IWorkbenchAdapter) {
-        		return obj;
-        	}
-            if (obj instanceof BreakpointContainer) {
-                return new BreakpointContainerWorkbenchAdapter();
-            }
-        }
-		
-        if (adapterType == IWorkbenchAdapter2.class) {
-            if (obj instanceof IWorkbenchAdapter2) {
-                return obj;
-            }
-            if (obj instanceof BreakpointContainer) {
-                return new BreakpointContainerWorkbenchAdapter();
-            }
-        }
-        
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
-	 */
-	public Class[] getAdapterList() {
-		return new Class[] {IPersistableElement.class, IWorkbenchAdapter.class, IWorkbenchAdapter2.class};
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.java
deleted file mode 100644
index 3581de5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import org.eclipse.osgi.util.NLS;
-
-public class DebugUIMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.DebugUIMessages";//$NON-NLS-1$
-
-    public static String DebugUIPlugin_23;
-	public static String DebugUIPlugin_24;
-	public static String DebugUIPlugin_0;
-	public static String DebugUIPlugin_Build_error__Check_log_for_details__2;
-	public static String DebugUIPlugin_Run_Debug_1;
-
-	public static String DebugUITools_8;
-
-	public static String DefaultLabelProvider__disconnected__1;
-	public static String DefaultLabelProvider_1;
-	public static String DefaultLabelProvider__unknown__1;
-	public static String DefaultLabelProvider_Breakpoint_1;
-	public static String DefaultLabelProvider_12;
-	public static String DefaultLabelProvider_13;
-	public static String DefaultLabelProvider_15;
-	public static String DefaultLabelProvider_16;
-	public static String MultipleInputDialog_6;
-	public static String MultipleInputDialog_7;
-	public static String MultipleInputDialog_8;
-
-	public static String WorkingDirectoryStatusHandler_Eclipse_Runtime_1;
-	public static String WorkingDirectoryStatusHandler_Eclipse_is_not_able_to_set_the_working_directory_specified_by_the_program_being_launched_as_the_current_runtime_does_not_support_working_directories__nContinue_launch_without_setting_the_working_directory__2;
-
-	public static String DebugUITools_3;
-	public static String DebugUITools_Error_1;
-	public static String DebugUITools_Exception_occurred_during_launch_2;
-
-	public static String InstructionPointerAnnotation_0;
-	public static String InstructionPointerAnnotation_1;
-
-	public static String PopupInformationControl_1;
-	public static String DefaultLabelProvider_17;
-
-	//
-	// Action
-	//
-	public static String AddMemoryBlockAction_title;
-	public static String AddMemoryBlockAction_tooltip;
-	public static String AddMemoryBlockAction_failed;
-	public static String AddMemoryBlockAction_expressionEvalFailed;
-	public static String AddMemoryRenderingDialog_Memory_Monitor;
-	public static String AddMemoryRenderingAction_Add_renderings;
-	public static String AddMemoryRenderingDialog_Memory_renderings;
-	public static String AddMemoryRenderingDialog_Add_memory_rendering;
-	public static String AddMemoryRenderingAction_Add_rendering_failed;
-	public static String AddMemoryRenderingAction_Unable_to_add_selected_renderings;
-	public static String AddMemoryBlockAction_noMemoryBlock;
-	public static String AddMemoryRenderingDialog_Add_New;
-	public static String AddMemoryRenderingDialog_Unknown;
-	public static String RemoveMemoryBlockAction_title;
-	public static String RemoveMemoryBlockAction_tooltip;
-	public static String RemoveMemoryRenderingAction_Unknown;
-	public static String MemoryViewCellModifier_failure_title;
-	public static String MemoryViewCellModifier_failed;
-	public static String MemoryViewCellModifier_data_is_invalid;
-	public static String MemoryViewCellModifier_data_is_too_long;
-	public static String ResetMemoryBlockAction_title;
-	public static String ResetMemoryBlockAction_tootip;
-	public static String ResetMemoryBlockAction_Failed_to_Reset;
-	public static String ResetMemoryBlockAction_Failed_to_reset_to_base_address;
-	public static String GoToAddressAction_title;
-	public static String GoToAddressAction_Go_to_address_failed;
-	public static String GoToAddressAction_Address_is_invalid;
-	public static String GoToAddressAction_tooltip;
-	public static String FormatColumnAction_unit;
-	public static String FormatColumnAction_units;
-	public static String SetColumnSizeDefaultAction_Set_as_default;
-	public static String CopyViewToClipboardAction_title;
-	public static String CopyViewToClipboardAction_tooltip;
-	public static String PrintViewTabAction_title;
-	public static String PrintViewTabAction_tooltip;
-	public static String PrintViewTabAction_jobtitle;
-	public static String ReformatAction_title;
-	public static String SetDefaultColumnSizePrefAction_DefaultColumnSize;
-	public static String SetDefaultColumnSizePrefAction_SetDefaultColumnSize;
-
-	//
-	// Dialog
-	//
-	public static String MonitorMemoryBlockDialog_EnterExpressionToMonitor;
-	public static String MonitorMemoryBlockDialog_MonitorMemory;
-	public static String MonitorMemoryBlockDialog_NumberOfBytes;
-	public static String GoToAddressDialog_Address;
-	public static String GoToAddressDialog_GoToAddress;
-	public static String CodePagesPrefDialog_1;
-	public static String CodePagesPrefDialog_2;
-	public static String CodePagesPrefDialog_3;
-	public static String CodePagesPrefDialog_4;
-	public static String CodePagesPrefDialog_5;
-	public static String CodePagesPrefDialog_6;
-	public static String CodePagesPrefDialog_7;
-	public static String CodePagesPrefDialog_8;
-	public static String CodePagesPrefDialog_9;
-	public static String CodePagesPrefDialog_0;
-	public static String CodePagesPrefDialog_10;
-	public static String CodePagesPrefDialog_11;
-	public static String CodePagesPrefDialog_13;
-
-	//
-	// View Tab
-	//
-	public static String MemoryView_Memory_monitors;
-	public static String MemoryBlocksTreeViewPane_0;
-	public static String MemoryBlocksTreeViewPane_1;
-	public static String MemoryBlocksTreeViewPane_2;
-	public static String MemoryView_Memory_renderings;
-	public static String MemoryViewContentProvider_Unable_to_retrieve_content;
-
-	//
-	// Views
-	//
-	public static String MemoryRenderingView_Failed_to_create_rendering;
-	public static String MemoryRenderingView_Failed_to_create_the_selected_rendering;
-	public static String RenderingViewPane_NoViewTabFactory;
-	public static String RenderingViewPane_Failed_To_Create_Rendering;
-	public static String RemoveMemoryRenderingAction_Remove_rendering;
-	public static String RenderingViewPane_Failed_To_Create_Selected_Rendering;
-	public static String RemoveMemoryRenderingAction_Remove_monitor;
-	public static String EmptyViewTab_Unable_to_create;
-	public static String EmptyViewTab_Unknown;
-	public static String CreateRenderingTab_Memory_monitor;
-	public static String CreateRenderingTab_Select_renderings_to_create;
-	public static String CreateRenderingTab_Add_renderings;
-	public static String CreateRenderingTab_0;
-	public static String CreateRenderingTab_1;
-	public static String CreateRenderingTab_2;
-	public static String CreateRenderingTab_3;
-	public static String CreateRenderingTab_4;
-	public static String CreateRendering_0;
-	public static String CreateRendering_1;
-	public static String CreateRenderingTab_Create_memory_rendering;
-
-	//
-	// Managers
-	//
-	public static String MemoryRenderingManager_ErrorTitle;
-	public static String MemoryRenderingManager_ErrorMsg;
-	public static String ShowAddressColumnAction_0;
-	public static String ShowAddressColumnAction_1;
-	public static String ImageDescriptorRegistry_0;
-	public static String ErrorRendering_0;
-	public static String AbstractTableRendering_0;
-	public static String AbstractTableRendering_1;
-	public static String AbstractTableRendering_2;
-	public static String AbstractTableRendering_3;
-	public static String AbstractTableRendering_4;
-	public static String AbstractTableRendering_5;
-	public static String AbstractTableRendering_6;
-	public static String AbstractTableRendering_8;
-	public static String AbstractTableRendering_9;
-	public static String AbstractTableRendering_10;
-	public static String AbstractTableRendering_11;
-	public static String AbstractTableRendering_12;
-	public static String AbstractTableRendering_13;
-	public static String SetPaddedStringDialog_0;
-	public static String SetPaddedStringDialog_1;
-	public static String SetPaddedStringDialog_3;
-	public static String SetPaddedStringDialog_4;
-
-
-	public static String TableRenderingPropertiesPage_1;
-	public static String TableRenderingPropertiesPage_2;
-	public static String TableRenderingPropertiesPage_3;
-	public static String TableRenderingPropertiesPage_4;
-	public static String TableRenderingPropertiesPage_5;
-	public static String TableRenderingPropertiesPage_6;
-	public static String TableRenderingPropertiesPage_8;
-	public static String TableRenderingPropertiesPage_9;
-	public static String TableRenderingPropertiesPage_10;
-	public static String TableRenderingPropertiesPage_11;
-	public static String TableRenderingPropertiesPage_12;
-	public static String TableRenderingPropertiesPage_13;
-	public static String TableRenderingPropertiesPage_14;
-	public static String TableRenderingPropertiesPage_15;
-	public static String TableRenderingPropertiesPage_16;
-	public static String TableRenderingPropertiesPage_17;
-	public static String TableRenderingPropertiesPage_18;
-	public static String TableRenderingPropertiesPage_19;
-	public static String TableRenderingPropertiesPage_20;
-	public static String TableRenderingPropertiesPage_21;
-	public static String TableRenderingPropertiesPage_22;
-	public static String TableRenderingPropertiesPage_23;
-	public static String TableRenderingPropertiesPage_25;
-	public static String TableRenderingPropertiesPage_26;
-	public static String TableRenderingPrefAction_0;
-	public static String TableRenderingPreferencePage_0;
-	public static String TableRenderingPreferencePage_1;
-	public static String TableRenderingPreferencePage_2;
-	public static String TableRenderingPreferencePage_3;
-	public static String TableRenderingPreferencePage_4;
-	
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, DebugUIMessages.class);
-	}
-
-
-
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.properties
deleted file mode 100644
index 03ddef7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIMessages.properties
+++ /dev/null
@@ -1,199 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-DebugUIPlugin_23=Build in Progress
-DebugUIPlugin_24=Wait for build to finish?
-DebugUIPlugin_0=\ (waiting for build...)
-DebugUIPlugin_Build_error__Check_log_for_details__2=Build error. Check log for details.
-DebugUIPlugin_Run_Debug_1=Run/Debug
-
-DebugUITools_8=Launching
-
-DefaultLabelProvider__disconnected__1=<disconnected>
-DefaultLabelProvider_1=<terminated>
-DefaultLabelProvider__unknown__1=<unknown>
-DefaultLabelProvider_Breakpoint_1=Breakpoint
-DefaultLabelProvider_12=\ (pending)
-DefaultLabelProvider_13=\ <error(s)_during_the_evaluation>
-DefaultLabelProvider_15=\ (disabled)
-DefaultLabelProvider_16=<terminated, exit value: {0}>
-MultipleInputDialog_6=&Browse...
-MultipleInputDialog_7=Select a file:
-MultipleInputDialog_8=Varia&bles...
-
-WorkingDirectoryStatusHandler_Eclipse_Runtime_1=Eclipse Runtime
-WorkingDirectoryStatusHandler_Eclipse_is_not_able_to_set_the_working_directory_specified_by_the_program_being_launched_as_the_current_runtime_does_not_support_working_directories__nContinue_launch_without_setting_the_working_directory__2=Eclipse is not able to set the working directory specified by the program being launched as the current runtime does not support working directories.\nContinue launch without setting the working directory?
-
-DebugUITools_3=Launching
-DebugUITools_Error_1=Error
-DebugUITools_Exception_occurred_during_launch_2=Exception occurred during launch
-
-InstructionPointerAnnotation_0=Debug Current Instruction Pointer
-InstructionPointerAnnotation_1=Debug Call Stack
-
-PopupInformationControl_1=Press {0} to {1}
-DefaultLabelProvider_17=\ [line: {0}]
-
-##############################################################
-# Action
-##############################################################
-AddMemoryBlockAction_title=Add Memory Monitor
-AddMemoryBlockAction_tooltip=Add Memory Monitor
-AddMemoryBlockAction_failed =Add Memory Monitor Failed.
-AddMemoryBlockAction_expressionEvalFailed = Expression cannot be evaluated to an address.
-AddMemoryRenderingDialog_Memory_Monitor=Memory Monitor
-AddMemoryRenderingAction_Add_renderings=Add Rendering(s)
-AddMemoryRenderingDialog_Memory_renderings=Memory Rendering(s)
-AddMemoryRenderingDialog_Add_memory_rendering=Add Memory Rendering
-AddMemoryRenderingAction_Add_rendering_failed=Add Rendering Failed
-AddMemoryRenderingAction_Unable_to_add_selected_renderings=Unable to add the selected rendering(s)
-AddMemoryBlockAction_noMemoryBlock = Failed to get memory monitor.
-AddMemoryRenderingDialog_Add_New=Add New...
-AddMemoryRenderingDialog_Unknown=Unknown
-RemoveMemoryBlockAction_title=Remove Memory Monitor
-RemoveMemoryBlockAction_tooltip=Remove Memory Monitor
-RemoveMemoryRenderingAction_Unknown=Unknown
-MemoryViewCellModifier_failure_title = Edit Memory
-MemoryViewCellModifier_failed = Edit failed:
-MemoryViewCellModifier_data_is_invalid = Data is invalid.
-MemoryViewCellModifier_data_is_too_long = Data is too long.
-ResetMemoryBlockAction_title = Reset to Base Address
-ResetMemoryBlockAction_tootip = Reset to Base Address
-ResetMemoryBlockAction_Failed_to_Reset = Failed to Reset
-ResetMemoryBlockAction_Failed_to_reset_to_base_address = Failed to reset to base address.
-GoToAddressAction_title = Go to Address...
-GoToAddressAction_Go_to_address_failed = Go To Address Failed
-GoToAddressAction_Address_is_invalid = Address is invalid
-GoToAddressAction_tooltip = Go to Address...
-FormatColumnAction_unit = unit
-FormatColumnAction_units = units
-SetColumnSizeDefaultAction_Set_as_default = Set as Default
-CopyViewToClipboardAction_title = Copy To Clipboard
-CopyViewToClipboardAction_tooltip = Copy To Clipboard
-PrintViewTabAction_title = Print
-PrintViewTabAction_tooltip = Print
-PrintViewTabAction_jobtitle = Memory for
-ReformatAction_title = Reformat
-SetDefaultColumnSizePrefAction_DefaultColumnSize = &Default Column Size...
-SetDefaultColumnSizePrefAction_SetDefaultColumnSize = Set Default Column Size
-
-##############################################################
-# Dialog
-##############################################################
-MonitorMemoryBlockDialog_EnterExpressionToMonitor = Enter address or expression to monitor:
-MonitorMemoryBlockDialog_MonitorMemory = Monitor Memory
-MonitorMemoryBlockDialog_NumberOfBytes = Number of bytes:
-GoToAddressDialog_Address = Address:
-GoToAddressDialog_GoToAddress = Go To Address...
-CodePagesPrefDialog_1=Select Codepages
-CodePagesPrefDialog_2=Codepage for rendering memory to ASCII strings:
-CodePagesPrefDialog_3=Change...
-CodePagesPrefDialog_4=Codepage for rendering memory to EBCDIC strings:
-CodePagesPrefDialog_5=Change...
-CodePagesPrefDialog_6=Invalid codepage
-CodePagesPrefDialog_7=ASCII codepage entered is invalid.
-CodePagesPrefDialog_8=Invalid codepage
-CodePagesPrefDialog_9=EBCDIC codepage entered is invalid.
-CodePagesPrefDialog_0=The codepage is not supported.
-CodePagesPrefDialog_10=Select Codepage
-CodePagesPrefDialog_11=Select Codepage
-CodePagesPrefDialog_13=Restore Defaults
-
-##############################################################
-# View Tab
-##############################################################
-MemoryView_Memory_monitors=Memory Monitors
-MemoryBlocksTreeViewPane_0=Remove All Memory Monitors
-MemoryBlocksTreeViewPane_1=Are you sure you want to remove all memory monitors?
-MemoryBlocksTreeViewPane_2=Remove All
-MemoryView_Memory_renderings=Memory Renderings
-MemoryViewContentProvider_Unable_to_retrieve_content = Unable to retrieve content.
-
-##############################################################
-# Views
-##############################################################
-MemoryRenderingView_Failed_to_create_rendering = Failed to create rendering
-MemoryRenderingView_Failed_to_create_the_selected_rendering = Failed to create the selected rendering.
-RenderingViewPane_NoViewTabFactory=ViewTabFactory property is not defined for:
-RenderingViewPane_Failed_To_Create_Rendering=Failed to create rendering
-RemoveMemoryRenderingAction_Remove_rendering=Remove Rendering
-RenderingViewPane_Failed_To_Create_Selected_Rendering=Failed to create the selected rendering.
-RemoveMemoryRenderingAction_Remove_monitor=Remove Monitor
-EmptyViewTab_Unable_to_create=Unable to create
-EmptyViewTab_Unknown=Unknown
-CreateRenderingTab_Memory_monitor=Memory Monitor:
-CreateRenderingTab_Select_renderings_to_create=Select rendering(s) to create:
-CreateRenderingTab_Add_renderings=Add Rendering(s)
-CreateRenderingTab_0=No rendering is selected.
-CreateRenderingTab_1=Add Rendering Failed
-CreateRenderingTab_2=No rendering is selected.
-CreateRenderingTab_3=Add Rendering Failed
-CreateRenderingTab_4=Failed to add the selected rendering.
-CreateRendering_0=Add Memory Rendering Failed
-CreateRendering_1=Uable to add the selected rendering.
-CreateRenderingTab_Create_memory_rendering=Create Memory Rendering
-
-##############################################################
-# Managers
-##############################################################
-MemoryRenderingManager_ErrorTitle = Create Rendering Error
-MemoryRenderingManager_ErrorMsg = The selected rendering cannot be created.
-ShowAddressColumnAction_0=Hide Address Column
-ShowAddressColumnAction_1=Show Address Column
-ImageDescriptorRegistry_0=Allocating image for wrong display
-ErrorRendering_0=Reason:\n
-AbstractTableRendering_0=Format of the rendering is invalid
-AbstractTableRendering_1=Unable to get the base address from the memory block.
-AbstractTableRendering_2=Address
-AbstractTableRendering_3=Error occurred:\n
-AbstractTableRendering_5=Column Size
-AbstractTableRendering_8=Unknown
-AbstractTableRendering_9=Unknown
-AbstractTableRendering_4=Next Page
-AbstractTableRendering_6=Previous Page
-AbstractTableRendering_10=Unable to get base address.
-AbstractTableRendering_11=Address is out of range.
-AbstractTableRendering_12=Reset Failed.
-AbstractTableRendering_13=Unable to reset to the base address.
-SetPaddedStringDialog_0=Padded String
-SetPaddedStringDialog_1=Enter string to represent unretrievable memory:
-SetPaddedStringDialog_3=Error in Padded String
-SetPaddedStringDialog_4=The padded string cannot be empty.
-TableRenderingPropertiesPage_1=Rendering:
-TableRenderingPropertiesPage_2=Selected Address:
-TableRenderingPropertiesPage_3=units
-TableRenderingPropertiesPage_4=Length:
-TableRenderingPropertiesPage_5=Selected Content:
-TableRenderingPropertiesPage_6=Addressable Size:
-TableRenderingPropertiesPage_8=bits
-TableRenderingPropertiesPage_9=Changed:
-TableRenderingPropertiesPage_10=Changed:
-TableRenderingPropertiesPage_11=Unknown
-TableRenderingPropertiesPage_12=Unknown
-TableRenderingPropertiesPage_13=Big Endian
-TableRenderingPropertiesPage_14=Little Endian
-TableRenderingPropertiesPage_15=Unknown
-TableRenderingPropertiesPage_16=Data Endianess:
-TableRenderingPropertiesPage_17=Unknown
-TableRenderingPropertiesPage_18=Big Endian
-TableRenderingPropertiesPage_19=Little Endian
-TableRenderingPropertiesPage_20=Unknown
-TableRenderingPropertiesPage_21=Display Endianess:
-TableRenderingPropertiesPage_22=Readable:
-TableRenderingPropertiesPage_23=Writable:
-TableRenderingPropertiesPage_25=Line Address:
-TableRenderingPropertiesPage_26=Units Per Line:
-TableRenderingPreferencePage_0=&Column Size:
-TableRenderingPreferencePage_1=Automatically load next page of memory when scrolled to end of buffer
-TableRenderingPreferencePage_2=Number of Lines per Page:
-TableRenderingPreferencePage_3=Page size cannot be less than 1.
-TableRenderingPreferencePage_4=Page size is invalid.
-TableRenderingPrefAction_0=Table Renderings
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java
deleted file mode 100644
index e699d25..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPlugin.java
+++ /dev/null
@@ -1,1003 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
- 
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.text.MessageFormat;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.OutputKeys;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.eclipse.core.resources.IncrementalProjectBuilder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.IJobChangeEvent;
-import org.eclipse.core.runtime.jobs.IJobChangeListener;
-import org.eclipse.core.runtime.jobs.IJobManager;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.core.Launch;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IRegister;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.PerspectiveManager;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility;
-import org.eclipse.debug.internal.ui.stringsubstitution.SelectedResourceManager;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointOrganizerManager;
-import org.eclipse.debug.internal.ui.views.breakpoints.OtherBreakpointCategory;
-import org.eclipse.debug.internal.ui.views.console.ProcessConsoleManager;
-import org.eclipse.debug.internal.ui.views.launch.DebugElementAdapterFactory;
-import org.eclipse.debug.internal.ui.views.launch.DebugElementHelper;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.PreferenceConverter;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.eclipse.ui.progress.IProgressService;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.BundleContext;
-import org.osgi.service.packageadmin.PackageAdmin;
-import org.osgi.util.tracker.ServiceTracker;
-import org.w3c.dom.Document;
-
-/**
- * The Debug UI Plugin.
- *
- */
-public class DebugUIPlugin extends AbstractUIPlugin implements ILaunchListener {
-
-    /**
-	 * Unique identifier constant (value <code>"org.eclipse.debug.ui"</code>)
-	 * for the Debug UI plug-in.
-	 */
-	private static final String PI_DEBUG_UI = "org.eclipse.debug.ui"; //$NON-NLS-1$
-	
-	/**
-	 * The singleton debug plugin instance
-	 */
-	private static DebugUIPlugin fgDebugUIPlugin= null;
-	
-	/**
-	 * A utility presentation used to obtain labels
-	 */
-	protected static IDebugModelPresentation fgPresentation = null;
-
-	/**
-	 * Default label provider
-	 */	
-	private static DefaultLabelProvider fgDefaultLabelProvider;
-	
-	/**
-	 * Launch configuration attribute - used by the stand-in launch
-	 * config working copies that are created while a launch is waiting
-	 * for a build to finish. This attribute allows the EditLaunchConfigurationAction
-	 * to access the original config if the user asks to edit it.
-	 */
-	public static String ATTR_LAUNCHING_CONFIG_HANDLE= getUniqueIdentifier() + "launching_config_handle"; //$NON-NLS-1$
-	
-	/**
-	 * Flag indicating whether the debug UI is in trace
-	 * mode. When in trace mode, extra debug information
-	 * is produced.
-	 */
-	private boolean fTrace = false;	
-	
-	/**
-	 * Singleton console document manager
-	 */
-	private ProcessConsoleManager fProcessConsoleManager = null;
-	
-	/**
-	 * Perspective manager
-	 */
-	private PerspectiveManager fPerspectiveManager = null;
-	
-	/**
-	 * Launch configuration manager
-	 */
-	private LaunchConfigurationManager fLaunchConfigurationManager = null;
-	
-	/**
-	 * Step filter manager
-	 */
-	private StepFilterManager fStepFilterManager = null;
-    
-    /**
-     * Image descriptor registry used for images with common overlays.
-     * 
-     * @since 3.1
-     */
-    private ImageDescriptorRegistry fImageDescriptorRegistry;
-    
-    /**
-     * Service tracker and service used for finding plug-ins associated
-     * with a class.
-     */
-    private ServiceTracker fServiceTracker;
-    private PackageAdmin fPackageAdminService;
-	
-    /**
-     * Dummy launch node representing a launch that is waiting
-     * for a build to finish before proceeding. This node exists
-     * to provide immediate feedback to the user in the Debug view and
-     * allows termination, which equates to cancellation of the launch.
-     */
-	public static class PendingLaunch extends Launch {
-        private Job fJob;
-        public PendingLaunch(ILaunchConfiguration launchConfiguration, String mode, Job job) {
-            super(launchConfiguration, mode, null);
-            fJob= job;
-        }
-
-        // Allow the user to terminate the dummy launch as a means of
-        // cancelling the launch while waiting for a build to finish.
-        public boolean canTerminate() {
-            return true;
-        }
-
-        public void terminate() throws DebugException {
-            fJob.cancel();
-        }
-    }
-	
-	/**
-	 * Returns whether the debug UI plug-in is in trace
-	 * mode.
-	 * 
-	 * @return whether the debug UI plug-in is in trace
-	 *  mode
-	 */
-	public boolean isTraceMode() {
-		return fTrace;
-	}
-	
-	/**
-	 * Returns the bundle the given class originated from.
-	 * 
-	 * @param clazz a class
-	 * @return the bundle the given class originated from, or <code>null</code>
-	 * 	if unable to be determined
-	 * @since 3.1
-	 */
-	public Bundle getBundle(Class clazz) {
-		if (fPackageAdminService != null) {
-			return fPackageAdminService.getBundle(clazz);
-		}
-		return null;
-	}
-	
-	/**
-	 * Logs the given message if in trace mode.
-	 * 
-	 * @param String message to log
-	 */
-	public static void logTraceMessage(String message) {
-		if (getDefault().isTraceMode()) {
-			IStatus s = new Status(IStatus.WARNING, IDebugUIConstants.PLUGIN_ID, IDebugUIConstants.INTERNAL_ERROR, message, null);
-			getDefault().getLog().log(s);
-		}
-	}
-
-	/**
-	 * Constructs the debug UI plugin
-	 */
-	public DebugUIPlugin() {
-		super();
-		fgDebugUIPlugin= this;
-	}
-		
-	/**
-	 * Returns the singleton instance of the debug plugin.
-	 */
-	public static DebugUIPlugin getDefault() {
-		return fgDebugUIPlugin;
-	}
-	
-	/**
-	 * Convenience method which returns the unique identifier of this plugin.
-	 */
-	public static String getUniqueIdentifier() {
-		return PI_DEBUG_UI;
-	}
-
-	public static IDebugModelPresentation getModelPresentation() {
-		if (fgPresentation == null) {
-			fgPresentation = new DelegatingModelPresentation();
-		}
-		return fgPresentation;
-	}
-	
-	public LaunchConfigurationManager getLaunchConfigurationManager() {
-		if (fLaunchConfigurationManager == null) {
-			fLaunchConfigurationManager = new LaunchConfigurationManager();
-		} 
-		return fLaunchConfigurationManager;
-	}
-	
-	/**
-	 * Returns the currently active workbench window or <code>null</code>
-	 * if none.
-	 * 
-	 * @return the currently active workbench window or <code>null</code>
-	 */
-	public static IWorkbenchWindow getActiveWorkbenchWindow() {
-		return getDefault().getWorkbench().getActiveWorkbenchWindow();
-	}
-	
-	/**
-	 * Returns the currently active workbench window shell or <code>null</code>
-	 * if none.
-	 * 
-	 * @return the currently active workbench window shell or <code>null</code>
-	 */
-	public static Shell getShell() {
-		if (getActiveWorkbenchWindow() != null) {
-			return getActiveWorkbenchWindow().getShell();
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the default label provider for the debug UI.
-	 */
-	public static ILabelProvider getDefaultLabelProvider() {
-		if (fgDefaultLabelProvider == null) {
-			fgDefaultLabelProvider = new DefaultLabelProvider();
-		}
-		return fgDefaultLabelProvider;
-	}
-
-	/**
-	 * Creates an extension.  If the extension plugin has not
-	 * been loaded a busy cursor will be activated during the duration of
-	 * the load.
-	 *
-	 * @param element the config element defining the extension
-	 * @param classAttribute the name of the attribute carrying the class
-	 * @return the extension object
-	 */
-	public static Object createExtension(final IConfigurationElement element, final String classAttribute) throws CoreException {
-		// If plugin has been loaded create extension.
-		// Otherwise, show busy cursor then create extension.
-		Bundle bundle = Platform.getBundle(element.getNamespace());
-		if (bundle.getState() == Bundle.ACTIVE) {
-			return element.createExecutableExtension(classAttribute);
-		} 
-		final Object [] ret = new Object[1];
-		final CoreException [] exc = new CoreException[1];
-		BusyIndicator.showWhile(null, new Runnable() {
-			public void run() {
-				try {
-					ret[0] = element.createExecutableExtension(classAttribute);
-				} catch (CoreException e) {
-					exc[0] = e;
-				}
-			}
-		});
-		if (exc[0] != null) {
-			throw exc[0];
-		}
-		return ret[0];
-	}	
-	
-	protected ImageRegistry createImageRegistry() {
-		return DebugPluginImages.initializeImageRegistry();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
-	 */
-	public void stop(BundleContext context) throws Exception {
-		try {
-            if (fProcessConsoleManager != null) {
-                fProcessConsoleManager.shutdown();
-            }
-            
-            BreakpointOrganizerManager.getDefault().shutdown();
-            
-			if (fPerspectiveManager != null) {
-				fPerspectiveManager.shutdown();
-			}
-			if (fLaunchConfigurationManager != null) {
-				fLaunchConfigurationManager.shutdown();
-			}
-			
-			if (fStepFilterManager != null) {
-				fStepFilterManager.shutdown();
-			}
-			
-			ColorManager.getDefault().dispose();
-			
-			if (fgPresentation != null) {
-				fgPresentation.dispose();
-			}
-            
-            if (fImageDescriptorRegistry != null) {
-                fImageDescriptorRegistry.dispose();
-            }
-            
-            SourceLookupFacility.shutdown();
-			
-			DebugElementHelper.dispose();
-			
-			fServiceTracker.close();
-			fPackageAdminService = null;
-			
-		} finally {
-			super.stop(context);
-		}
-	}
-
-	/**
-	 * @see AbstractUIPlugin#startup()
-	 */
-	public void start(BundleContext context) throws Exception {
-		super.start(context);
-		
-		// make sure the perspective manager is created
-		// and be the first debug event listener
-		fPerspectiveManager = new PerspectiveManager();
-		fPerspectiveManager.startup();		
-		
-		// Listen to launches to lazily create "launch processors"
-		DebugPlugin.getDefault().getLaunchManager().addLaunchListener(this);
-        
-        // start the breakpoint organizer manager
-        BreakpointOrganizerManager.getDefault();
-		
-		IAdapterManager manager= Platform.getAdapterManager();
-		DebugElementAdapterFactory propertiesFactory = new DebugElementAdapterFactory();
-		manager.registerAdapters(propertiesFactory, ILaunchManager.class);
-		manager.registerAdapters(propertiesFactory, ILaunch.class);
-		manager.registerAdapters(propertiesFactory, IDebugTarget.class);
-		manager.registerAdapters(propertiesFactory, IProcess.class);
-		manager.registerAdapters(propertiesFactory, IThread.class);
-		manager.registerAdapters(propertiesFactory, IStackFrame.class);
-		manager.registerAdapters(propertiesFactory, IRegisterGroup.class);
-		manager.registerAdapters(propertiesFactory, IVariable.class);
-		manager.registerAdapters(propertiesFactory, IRegister.class);
-		manager.registerAdapters(propertiesFactory, IExpression.class);
-		manager.registerAdapters(propertiesFactory, IExpressionManager.class);
-        manager.registerAdapters(propertiesFactory, OtherBreakpointCategory.class);
-		DebugUIAdapterFactory uiFactory = new DebugUIAdapterFactory();
-		manager.registerAdapters(uiFactory, ILaunchConfiguration.class);
-		manager.registerAdapters(uiFactory, ILaunchConfigurationType.class);
-		getStandardDisplay().asyncExec(
-			new Runnable() {
-				public void run() {
-					//initialize the selected resource manager
-					SelectedResourceManager.getDefault();
-					// forces launch shortcuts to be intialized so their key-bindings work
-					getLaunchConfigurationManager().getLaunchShortcuts();
-				}
-			});	
-		
-		fServiceTracker = new ServiceTracker(context, PackageAdmin.class.getName(), null);
-		fServiceTracker.open();
-		fPackageAdminService = (PackageAdmin) fServiceTracker.getService();
-		
-	}
-
-	/**
-	 * Utility method with conventions
-	 */
-	public static void errorDialog(Shell shell, String title, String message, IStatus s) {
-		// if the 'message' resource string and the IStatus' message are the same,
-		// don't show both in the dialog
-		if (s != null && message.equals(s.getMessage())) {
-			message= null;
-		}
-		ErrorDialog.openError(shell, title, message, s);
-	}
-	
-	/**
-	 * Utility method with conventions
-	 */
-	public static void errorDialog(Shell shell, String title, String message, Throwable t) {
-		IStatus status;
-		if (t instanceof CoreException) {
-			status= ((CoreException)t).getStatus();
-			// if the 'message' resource string and the IStatus' message are the same,
-			// don't show both in the dialog
-			if (status != null && message.equals(status.getMessage())) {
-				message= null;
-			}
-		} else {
-			status= new Status(IStatus.ERROR, getUniqueIdentifier(), IDebugUIConstants.INTERNAL_ERROR, "Error within Debug UI: ", t); //$NON-NLS-1$
-			log(status);	
-		}
-		ErrorDialog.openError(shell, title, message, status);
-	}
-
-	/**
-	 * Logs the specified status with this plug-in's log.
-	 * 
-	 * @param status status to log
-	 */
-	public static void log(IStatus status) {
-		getDefault().getLog().log(status);
-	}
-	
-	/**
-	 * Logs the specified throwable with this plug-in's log.
-	 * 
-	 * @param t throwable to log 
-	 */
-	public static void log(Throwable t) {
-		log(newErrorStatus("Error logged from Debug UI: ", t)); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Logs an internal error with the specified message.
-	 * 
-	 * @param message the error message to log
-	 */
-	public static void logErrorMessage(String message) {
-		// this message is intentionally not internationalized, as an exception may
-		// be due to the resource bundle itself
-		log(newErrorStatus("Internal message logged from Debug UI: " + message, null)); //$NON-NLS-1$	
-	}
-	
-	/**
-	 * Returns a new error status for this plugin with the given message
-	 * @param message the message to be included in the status
-	 * @param exception the exception to be included in the status or <code>null</code> if none
-	 * @return a new error status
-	 */
-	public static IStatus newErrorStatus(String message, Throwable exception) {
-		return new Status(IStatus.ERROR, getUniqueIdentifier(), IDebugUIConstants.INTERNAL_ERROR, message, exception);
-	}
-	
-	/**
-	 * Save all dirty editors in the workbench.
-	 * Returns whether the operation succeeded.
-	 * 
-	 * @return whether all saving was completed
-	 */
-	protected static boolean saveAllEditors(boolean confirm) {
-		if (getActiveWorkbenchWindow() == null) {
-			return false;
-		}
-		return PlatformUI.getWorkbench().saveAllEditors(confirm);
-	}	
-	
-	/**
-	 * Save & build the workspace according to the user-specified preferences.  Return <code>false</code> if
-	 * any problems were encountered, <code>true</code> otherwise.
-	 */
-	public static boolean saveAndBuild() {
-		boolean status = true;
-		String saveDirty = getDefault().getPreferenceStore().getString(IInternalDebugUIConstants.PREF_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH);
-		boolean buildBeforeLaunch = getDefault().getPreferenceStore().getBoolean(IDebugUIConstants.PREF_BUILD_BEFORE_LAUNCH);
-		
-		// If we're ignoring dirty editors, check if we need to build
-		if (saveDirty.equals(MessageDialogWithToggle.NEVER)) {
-			if (buildBeforeLaunch) {
-				return doBuild();
-			}
-		} else {
-			status = saveAllEditors(saveDirty.equals(MessageDialogWithToggle.PROMPT));
-			if (status && buildBeforeLaunch) {
-				status = doBuild();
-			}
-		}
-				
-		return status;
-	}
-	
-	private static boolean doBuild() {
-		try {
-			PlatformUI.getWorkbench().getProgressService().busyCursorWhile(new IRunnableWithProgress() {
-				public void run(IProgressMonitor monitor) throws InvocationTargetException {
-					try {
-						ResourcesPlugin.getWorkspace().build(IncrementalProjectBuilder.INCREMENTAL_BUILD, monitor);
-					} catch (CoreException e) {
-						throw new InvocationTargetException(e);
-					}
-				}
-			});
-		} catch (InterruptedException e) {
-			// cancelled by user
-			return false;
-		} catch (InvocationTargetException e) {
-			String title= DebugUIMessages.DebugUIPlugin_Run_Debug_1; //$NON-NLS-1$
-			String message= DebugUIMessages.DebugUIPlugin_Build_error__Check_log_for_details__2; //$NON-NLS-1$
-			Throwable t = e.getTargetException();
-			errorDialog(getShell(), title, message, t);
-			return false;
-		}
-		return true;
-	}	
-	
-	/**
-	 * Returns the standard display to be used. The method first checks, if
-	 * the thread calling this method has an associated display. If so, this
-	 * display is returned. Otherwise the method returns the default display.
-	 */
-	public static Display getStandardDisplay() {
-		Display display= Display.getCurrent();
-		if (display == null) {
-			display= Display.getDefault();
-		}
-		return display;		
-	}	
-	
-	/**
-	 * Returns the a color based on the type of output.
-	 * Valid types:
-	 * <li>CONSOLE_SYS_OUT_RGB</li>
-	 * <li>CONSOLE_SYS_ERR_RGB</li>
-	 * <li>CONSOLE_SYS_IN_RGB</li>
-	 * <li>CHANGED_VARIABLE_RGB</li>
-	 */
-	public static Color getPreferenceColor(String type) {
-		return ColorManager.getDefault().getColor(PreferenceConverter.getColor(getDefault().getPreferenceStore(), type));
-	}
-
-	/**
-	 * Returns the process console manager. The manager will be created lazily on 
-	 * the first access.
-	 * 
-	 * @return ProcessConsoleManager
-	 */
-	public ProcessConsoleManager getProcessConsoleManager() {
-		if (fProcessConsoleManager == null) {
-			fProcessConsoleManager = new ProcessConsoleManager();
-		}
-		return fProcessConsoleManager;
-	}
-	
-	/**
-	 * Serializes a XML document into a string - encoded in UTF8 format,
-	 * with platform line separators.
-	 * 
-	 * @param doc document to serialize
-	 * @return the document as a string
-	 * @throws TransformerException if an unrecoverable error occurs during the serialization
-	 * @throws IOException if the encoding attempted to be used is not supported
-	 */
-	public static String serializeDocument(Document doc) throws TransformerException, IOException {
-		ByteArrayOutputStream s= new ByteArrayOutputStream();
-		
-		TransformerFactory factory= TransformerFactory.newInstance();
-		
-		Transformer transformer= factory.newTransformer();
-		transformer.setOutputProperty(OutputKeys.METHOD, "xml"); //$NON-NLS-1$
-		transformer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$
-		
-		DOMSource source= new DOMSource(doc);
-		StreamResult outputTarget= new StreamResult(s);
-		transformer.transform(source, outputTarget);
-		
-		return s.toString("UTF8"); //$NON-NLS-1$			
-	}
-	
-	/**
-	 * Returns a Document that can be used to build a DOM tree
-	 * @return the Document
-	 * @throws ParserConfigurationException if an exception occurs creating the document builder
-	 * @since 3.0
-	 */
-	public static Document getDocument() throws ParserConfigurationException {
-		DocumentBuilderFactory dfactory= DocumentBuilderFactory.newInstance();
-
-		DocumentBuilder docBuilder= dfactory.newDocumentBuilder();
-		Document doc= docBuilder.newDocument();
-		return doc;
-	}
-		
-	/**
-	 * When the first launch is added, instantiate launch processors,
-	 * and stop listening to launch notifications.
-	 * <p>
-	 * Launch processors are:
-	 * <ul>
-	 * <li>console document manager</li>
-	 * <li>perspective manager</li>
-	 * </ul>
-	 * </p>
-	 * @see org.eclipse.debug.core.ILaunchListener#launchAdded(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchAdded(ILaunch launch) {
-		DebugPlugin.getDefault().getLaunchManager().removeLaunchListener(this);
-		getProcessConsoleManager().startup();
-		
-		if (fStepFilterManager == null) {
-			getStepFilterManager().launchAdded(launch);
-		}
-		
-		getLaunchConfigurationManager().startup();
-	}
-	
-	/**
-	 * Returns the persepective manager.
-	 * 
-	 * @return
-	 */
-	public PerspectiveManager getPerspectiveManager() {
-		return fPerspectiveManager;
-	}
-	
-	/**
-	 * Returns the singleton step filter manager.
-	 * 
-	 * @return the step filter manager
-	 */
-	public StepFilterManager getStepFilterManager() {
-		if (fStepFilterManager == null) {
-			fStepFilterManager = new StepFilterManager();
-		}
-		return fStepFilterManager;
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchListener#launchChanged(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchChanged(ILaunch launch) {
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchListener#launchRemoved(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchRemoved(ILaunch launch) {
-	}
-
-	/**
-	 * Save dirty editors before launching, according to preferences.
-	 * 
-	 * @return whether to proceed with launch 
-	 */
-	public static boolean preLaunchSave() {
-		String saveDirty = getDefault().getPreferenceStore().getString(IInternalDebugUIConstants.PREF_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH);
-		if (saveDirty.equals(MessageDialogWithToggle.NEVER)) {
-			return true;
-		} 
-		return saveAllEditors(saveDirty.equals(MessageDialogWithToggle.PROMPT));
-	}
-	
-	/**
-	 * Builds the workspace (according to preferences) and launches the given launch
-	 * configuration in the specified mode. May return null if autobuild is in process and 
-	 * user cancels the launch.
-	 * 
-	 * @param configuration the configuration to launch
-	 * @param mode launch mode - run or debug
-	 * @param monitor progress monitor
-	 * @exception CoreException if an exception occurs while building or launching
-	 * @return resulting launch or <code>null</code> if user cancels
-	 */
-	public static ILaunch buildAndLaunch(ILaunchConfiguration configuration, String mode, IProgressMonitor monitor) throws CoreException {
-		boolean buildBeforeLaunch = getDefault().getPreferenceStore().getBoolean(IDebugUIConstants.PREF_BUILD_BEFORE_LAUNCH);
-		IProgressMonitor subMonitor = monitor;
-		String message = MessageFormat.format("{0}...", new String[]{configuration.getName()}); //$NON-NLS-1$
-		if (buildBeforeLaunch) {
-			monitor.beginTask(message, 200);
-			return configuration.launch(mode, monitor, true);	
-		} 
-		subMonitor = monitor;
-		subMonitor.beginTask(message, 100);
-		return configuration.launch(mode, subMonitor); 
-	}
-	
-	/**
-	 * Saves and builds the workspace according to current preference settings and
-	 * launches the given launch configuration in the specified mode in the
-	 * foreground with a progress dialog. Reports any exceptions that occur
-	 * in an error dialog.
-	 * 
-	 * @param configuration the configuration to launch
-	 * @param mode launch mode
-	 * @since 3.0
-	 */
-	public static void launchInForeground(final ILaunchConfiguration configuration, final String mode) {
-		if (!DebugUIPlugin.preLaunchSave()) {
-			return;
-		}
-			
-		final IJobManager jobManager = Platform.getJobManager();
-		IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore();
-		boolean wait = false;
-		
-		if (jobManager.find(ResourcesPlugin.FAMILY_AUTO_BUILD).length > 0 || jobManager.find(ResourcesPlugin.FAMILY_MANUAL_BUILD).length >0) {
-			String waitForBuild = store.getString(IInternalDebugUIConstants.PREF_WAIT_FOR_BUILD);
-
-			if (waitForBuild.equals(MessageDialogWithToggle.PROMPT)) {
-				MessageDialogWithToggle dialog = MessageDialogWithToggle.openYesNoCancelQuestion(getShell(), DebugUIMessages.DebugUIPlugin_23, DebugUIMessages.DebugUIPlugin_24, null, false, store, IInternalDebugUIConstants.PREF_WAIT_FOR_BUILD); //$NON-NLS-1$ //$NON-NLS-2$
-				
-				switch (dialog.getReturnCode()) {
-					case IDialogConstants.CANCEL_ID:
-						return;
-					case IDialogConstants.YES_ID:
-						wait = false;
-						break;
-					case IDialogConstants.NO_ID:
-						wait = true;
-						break;
-				}
-			} else if (waitForBuild.equals(MessageDialogWithToggle.ALWAYS)) {
-				wait = true;
-			}
-		}
-
-		if (wait) {
-			IWorkbench workbench = DebugUIPlugin.getDefault().getWorkbench();
-			IProgressService progressService = workbench.getProgressService();
-			final IRunnableWithProgress runnable = new IRunnableWithProgress() {
-				public void run(IProgressMonitor monitor) throws InvocationTargetException {
-					try {
-						jobManager.join(ResourcesPlugin.FAMILY_MANUAL_BUILD, monitor);
-						jobManager.join(ResourcesPlugin.FAMILY_AUTO_BUILD, monitor);
-					} catch (InterruptedException e) {
-						// continue
-					}
-					if (!monitor.isCanceled()) {
-						try {
-							buildAndLaunch(configuration, mode, monitor);
-						} catch (CoreException e) {
-							throw new InvocationTargetException(e);
-						}
-					}
-				}		
-			};			
-			try {
-				progressService.busyCursorWhile(runnable);
-			} catch (InterruptedException e) {
-			} catch (InvocationTargetException e2) {
-				handleInvocationTargetException(e2, configuration, mode);
-			}
-		} else {
-			IRunnableWithProgress runnable = new IRunnableWithProgress() {
-				public void run(IProgressMonitor monitor) throws InvocationTargetException {
-					try {
-						buildAndLaunch(configuration, mode, monitor);
-					} catch (CoreException e) {
-						throw new InvocationTargetException(e);
-					}
-				}		
-			};
-			try {
-				PlatformUI.getWorkbench().getProgressService().busyCursorWhile(runnable);
-			} catch (InvocationTargetException e) {
-				handleInvocationTargetException(e, configuration, mode);
-			} catch (InterruptedException e) {
-			}							
-
-		}
-	}
-	
-	private static void handleInvocationTargetException(InvocationTargetException e, ILaunchConfiguration configuration, String mode) {
-		Throwable targetException = e.getTargetException();
-		Throwable t = e;
-		if (targetException instanceof CoreException) {
-			t = targetException;
-		}
-		if (t instanceof CoreException) {
-			CoreException ce = (CoreException)t;
-			IStatusHandler handler = DebugPlugin.getDefault().getStatusHandler(ce.getStatus());
-			if (handler != null) {
-				ILaunchGroup group = DebugUITools.getLaunchGroup(configuration, mode);
-				if (group != null) {
-					DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUIPlugin.getShell(), new StructuredSelection(configuration), group.getIdentifier(), ce.getStatus());
-					return;
-				}
-			}
-			if ((ce.getStatus().getSeverity() & (IStatus.ERROR | IStatus.WARNING)) == 0) {
-				// If the exception is a CoreException with a status other
-				// than ERROR or WARNING, don't open an error dialog.
-				return;
-			}
-		}
-		DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), DebugUIMessages.DebugUITools_Error_1, DebugUIMessages.DebugUITools_Exception_occurred_during_launch_2, t); //$NON-NLS-1$ //$NON-NLS-2$		
-	}
-	
-	/**
-	 * Saves and builds the workspace according to current preference settings and
-	 * launches the given launch configuration in the specified mode in a background
-	 * Job with progress reported via the Job. Exceptions are reported in the Progress
-	 * view.
-	 * 
-	 * @param configuration the configuration to launch
-	 * @param mode launch mode
-	 * @since 3.0
-	 */
-	public static void launchInBackground(final ILaunchConfiguration configuration, final String mode) {
-		if (!DebugUIPlugin.preLaunchSave()) {
-			return;
-		}
-
-		final IJobManager jobManager = Platform.getJobManager();
-		IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore();
-
-		boolean wait = (jobManager.find(ResourcesPlugin.FAMILY_AUTO_BUILD).length > 0) || (jobManager.find(ResourcesPlugin.FAMILY_MANUAL_BUILD).length > 0);
-		
-		String waitPref = store.getString(IInternalDebugUIConstants.PREF_WAIT_FOR_BUILD);
-		if (wait) { // if there are build jobs running, do we wait or not??
-			if (waitPref.equals(MessageDialogWithToggle.PROMPT)) {
-				MessageDialogWithToggle dialog = MessageDialogWithToggle.openYesNoCancelQuestion(getShell(), DebugUIMessages.DebugUIPlugin_23, DebugUIMessages.DebugUIPlugin_24, null, false, store, IInternalDebugUIConstants.PREF_WAIT_FOR_BUILD); //$NON-NLS-1$ //$NON-NLS-2$
-				
-				switch (dialog.getReturnCode()) {
-					case IDialogConstants.CANCEL_ID:
-						return;
-					case IDialogConstants.YES_ID:
-						wait = true;
-						break;
-					case IDialogConstants.NO_ID:
-						wait = false;
-						break;
-				}
-			} else {
-				wait = waitPref.equals(MessageDialogWithToggle.ALWAYS);
-			}
-		}
-		
-		final boolean waitInJob = wait;
-		Job job = new Job(DebugUIMessages.DebugUITools_3) { //$NON-NLS-1$
-			public IStatus run(final IProgressMonitor monitor) {
-				try {
-					if(waitInJob) {						
-						StringBuffer buffer= new StringBuffer(configuration.getName());
-						buffer.append(DebugUIMessages.DebugUIPlugin_0); //$NON-NLS-1$
-						ILaunchConfigurationWorkingCopy workingCopy= configuration.copy(buffer.toString());
-						workingCopy.setAttribute(ATTR_LAUNCHING_CONFIG_HANDLE, configuration.getMemento());
-						final ILaunch pendingLaunch= new PendingLaunch(workingCopy, mode, this);
-                        
-						DebugPlugin.getDefault().getLaunchManager().addLaunch(pendingLaunch);
-                        IJobChangeListener listener= new IJobChangeListener() {
-                            public void sleeping(IJobChangeEvent event) {
-                            }
-                            public void scheduled(IJobChangeEvent event) {
-                            }
-                            public void running(IJobChangeEvent event) {
-                            }
-                            public void done(IJobChangeEvent event) {
-                                DebugPlugin.getDefault().getLaunchManager().removeLaunch(pendingLaunch);
-                                removeJobChangeListener(this);
-                            }
-                            public void awake(IJobChangeEvent event) {
-                            }
-                            public void aboutToRun(IJobChangeEvent event) {
-                            }
-                        };
-                        addJobChangeListener(listener);
-
-						try {
-							jobManager.join(ResourcesPlugin.FAMILY_MANUAL_BUILD, monitor);
-							jobManager.join(ResourcesPlugin.FAMILY_AUTO_BUILD, monitor);
-						} catch (InterruptedException e) {
-							// just continue.
-						}
-                        DebugPlugin.getDefault().getLaunchManager().removeLaunch(pendingLaunch);
-					}
-					
-					if (!monitor.isCanceled()) {
-						buildAndLaunch(configuration, mode, monitor);
-					}
-					
-				} catch (CoreException e) {
-					final IStatus status= e.getStatus();
-					IStatusHandler handler = DebugPlugin.getDefault().getStatusHandler(status);
-					if (handler == null) {
-						return status;
-					}
-					final ILaunchGroup group = DebugUITools.getLaunchGroup(configuration, mode);
-					if (group == null) {
-						return status;
-					}
-					Runnable r = new Runnable() {
-						public void run() {
-							DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUIPlugin.getShell(), new StructuredSelection(configuration), group.getIdentifier(), status);
-						}	
-					};
-					DebugUIPlugin.getStandardDisplay().asyncExec(r);
-				}
-				return Status.OK_STATUS;
-			}
-		};
-
-		IWorkbench workbench = DebugUIPlugin.getDefault().getWorkbench();
-		IProgressService progressService = workbench.getProgressService();
-
-		job.setPriority(Job.INTERACTIVE);
-		job.setName(DebugUIMessages.DebugUITools_8); //$NON-NLS-1$
-		if (wait) {
-			progressService.showInDialog(workbench.getActiveWorkbenchWindow().getShell(), job); 
-		}
-		job.schedule();
-	}
-
-	/**
-	 * Returns the label with any acclerators removed.
-	 * 
-	 * @return label without accelerators
-	 */
-    public static String removeAccelerators(String label) {
-        String title = label;
-        if (title != null) {
-            // strip out any '&' (accelerators)
-            int index = title.indexOf('&');
-            if (index == 0) {
-                title = title.substring(1);
-            } else if (index > 0) {
-                //DBCS languages use "(&X)" format
-                if (title.charAt(index - 1) == '(' && title.length() >= index + 3 && title.charAt(index + 2) == ')') {
-                    String first = title.substring(0, index - 1);
-                    String last = title.substring(index + 3);
-                    title = first + last;
-                } else if (index < (title.length() - 1)) {
-                    String first = title.substring(0, index);
-                    String last = title.substring(index + 1);
-                    title = first + last;
-                }
-            }
-        }
-        return title;
-    }
-
-    /**
-     * Returns the image descriptor registry used for this plugin.
-     * 
-     * @since 3.1
-     */
-    public static ImageDescriptorRegistry getImageDescriptorRegistry() {
-        if (getDefault().fImageDescriptorRegistry == null) {
-            getDefault().fImageDescriptorRegistry = new ImageDescriptorRegistry();
-        }
-        return getDefault().fImageDescriptorRegistry;
-    }
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java
deleted file mode 100644
index d206e92..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.internal.ui.views.memory.MemoryViewUtil;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.PreferenceConverter;
-import org.eclipse.swt.graphics.RGB;
-
-public class DebugUIPreferenceInitializer extends AbstractPreferenceInitializer {
-
-	public DebugUIPreferenceInitializer() {
-		super();
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer#initializeDefaultPreferences()
-	 */
-	public void initializeDefaultPreferences() {
-		IPreferenceStore prefs = DebugUIPlugin.getDefault().getPreferenceStore();
-//		Debug PreferencePage
-		prefs.setDefault(IDebugUIConstants.PREF_BUILD_BEFORE_LAUNCH, true);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH, MessageDialogWithToggle.PROMPT);
-		prefs.setDefault(IDebugUIConstants.PREF_SHOW_DEBUG_PERSPECTIVE_DEFAULT, IDebugUIConstants.ID_DEBUG_PERSPECTIVE);
-		prefs.setDefault(IDebugUIConstants.PREF_SHOW_RUN_PERSPECTIVE_DEFAULT, IDebugUIConstants.PERSPECTIVE_NONE);
-		prefs.setDefault(IDebugUIConstants.PREF_AUTO_REMOVE_OLD_LAUNCHES, true);
-		prefs.setDefault(IDebugUIConstants.PREF_ACTIVATE_WORKBENCH, true);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_ACTIVATE_DEBUG_VIEW, true);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_SWITCH_TO_PERSPECTIVE, MessageDialogWithToggle.NEVER);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_SWITCH_PERSPECTIVE_ON_SUSPEND, MessageDialogWithToggle.PROMPT);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_WAIT_FOR_BUILD, MessageDialogWithToggle.ALWAYS);
-		prefs.setDefault(IDebugUIConstants.PREF_REUSE_EDITOR, true);
-		prefs.setDefault(IDebugUIConstants.PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE, false);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_RELAUNCH_IN_DEBUG_MODE, MessageDialogWithToggle.NEVER);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_CONTINUE_WITH_COMPILE_ERROR, MessageDialogWithToggle.PROMPT);
-		
-		//View Management preference page
-		prefs.setDefault(IDebugUIConstants.PREF_MANAGE_VIEW_PERSPECTIVES, IDebugUIConstants.ID_DEBUG_PERSPECTIVE);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_TRACK_VIEWS, true);
-		
-		//ConsolePreferencePage
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_WRAP, false);
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_WIDTH, 80);
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_OPEN_ON_OUT, true);
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_OPEN_ON_ERR, true);
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_LIMIT_CONSOLE_OUTPUT, true);
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_LOW_WATER_MARK, 80000);
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_HIGH_WATER_MARK, 100000);
-		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH, 8);
-		
-		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.CONSOLE_SYS_OUT_COLOR, new RGB(0, 0, 0));
-		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.CONSOLE_SYS_IN_COLOR, new RGB(0, 200, 125));
-		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.CONSOLE_SYS_ERR_COLOR, new RGB(255, 0, 0));
-		
-		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.MEMORY_VIEW_UNBUFFERED_LINE_COLOR, new RGB(114, 119, 129));
-		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.MEMORY_VIEW_BUFFERED_LINE_COLOR, new RGB(0, 0, 0));
-		
-		//LaunchHistoryPreferencePage
-		prefs.setDefault(IDebugUIConstants.PREF_MAX_HISTORY_SIZE, 10);
-		
-		//VariableViewsPreferencePage
-		prefs.setDefault(IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_ORIENTATION, IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_UNDERNEATH);
-		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.CHANGED_VARIABLE_COLOR, new RGB(255, 0, 0));
-		prefs.setDefault(IDebugPreferenceConstants.PREF_DETAIL_PANE_WORD_WRAP, false);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_MAX_DETAIL_LENGTH, 10000);
-		
-		//Registers View
-		prefs.setDefault(IDebugPreferenceConstants.REGISTERS_DETAIL_PANE_ORIENTATION, IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_UNDERNEATH);
-		
-		// Variable/Expression view default settings
-		prefs.setDefault(IDebugUIConstants.ID_VARIABLE_VIEW + '+' + "org.eclipse.debug.ui.ShowDetailPaneAction", true); //$NON-NLS-1$
-		prefs.setDefault(IDebugUIConstants.ID_EXPRESSION_VIEW + '+' + "org.eclipse.debug.ui.ShowDetailPaneAction", true); //$NON-NLS-1$
-		prefs.setDefault(IDebugUIConstants.ID_VARIABLE_VIEW + '+' + "org.eclipse.debug.ui.ShowTypeNamesAction", false); //$NON-NLS-1$
-		prefs.setDefault(IDebugUIConstants.ID_EXPRESSION_VIEW + '+' + "org.eclipse.debug.ui.ShowTypeNamesAction", false);		 //$NON-NLS-1$
-		
-		// Step filter preferences
-		prefs.setDefault(IInternalDebugUIConstants.PREF_USE_STEP_FILTERS, false);
-		
-		// set default for column size preference
-		prefs.setDefault(IDebugPreferenceConstants.PREF_COLUMN_SIZE, 
-				IDebugPreferenceConstants.PREF_COLUMN_SIZE_DEFAULT);
-		
-		// set default padded string
-		prefs.setDefault(IDebugUIConstants.PREF_PADDED_STR, 
-				IDebugPreferenceConstants.PREF_PADDED_STR_DEFAULT);
-		
-		// set default code page for ascii and ebcdic 
-		prefs.setDefault(IDebugUIConstants.PREF_DEFAULT_ASCII_CODE_PAGE, 
-				IDebugPreferenceConstants.DEFAULT_ASCII_CP);
-		prefs.setDefault(IDebugUIConstants.PREF_DEFAULT_EBCDIC_CODE_PAGE, 
-				IDebugPreferenceConstants.DEFAULT_EBCDIC_CP);
-		
-		if (MemoryViewUtil.isLinuxGTK())
-			prefs.setDefault(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM, false);
-		else
-			prefs.setDefault(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM, true);
-		
-		prefs.setDefault(IDebugPreferenceConstants.PREF_TABLE_RENDERING_PAGE_SIZE, IDebugPreferenceConstants.DEFAULT_PAGE_SIZE);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java
deleted file mode 100644
index 81da510..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java
+++ /dev/null
@@ -1,441 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IDisconnect;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.ILineBreakpoint;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IRegister;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.ITerminate;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.core.model.IWatchpoint;
-import org.eclipse.debug.internal.ui.views.variables.IndexedVariablePartition;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-public class DefaultLabelProvider implements ILabelProvider {
-
-	/**
-	 * @see ILabelProvider#getImage(Object)
-	 */
-	public Image getImage(Object element) {
-		String key= getImageKey(element);
-		if (key == null && element instanceof ILaunch) {
-			return null;
-		}
-		if (key == null && element instanceof IAdaptable) {
-			IWorkbenchAdapter de= (IWorkbenchAdapter) ((IAdaptable) element).getAdapter(IWorkbenchAdapter.class);
-			if (de != null) {
-				ImageDescriptor descriptor= de.getImageDescriptor(element);
-				if( descriptor != null) {
-					return descriptor.createImage();
-				}
-			}
-			return null;
-		}
-		return DebugPluginImages.getImage(key);
-	}
-	
-	/**
-	 * Returns the key (<code>String</code>) of the default image
-	 * appropriate for the given element or <code>null</code>
-	 * if no default image is defined.
-	 */
-	public String getImageKey(Object element) {
-		if (element instanceof IDebugElement) {
-			// Group elements into debug elements and non-debug elements
-			// to reduce the number of instanceof checks performed
-			if (element instanceof IRegister) {
-				return IDebugUIConstants.IMG_OBJS_REGISTER;
-			} else if (element instanceof IRegisterGroup) {
-				return IDebugUIConstants.IMG_OBJS_REGISTER_GROUP;
-			} else if (element instanceof IVariable || element instanceof IValue) {
-				if (element instanceof IndexedVariablePartition) {
-					return IInternalDebugUIConstants.IMG_OBJS_ARRAY_PARTITION;
-				} 
-				return IDebugUIConstants.IMG_OBJS_VARIABLE;
-			} else if (element instanceof IStackFrame) {
-				if (((IStackFrame)element).getThread().isSuspended()) {
-					return IDebugUIConstants.IMG_OBJS_STACKFRAME;
-				}
-				return IDebugUIConstants.IMG_OBJS_STACKFRAME_RUNNING;
-			} else if (element instanceof IThread) {
-				IThread thread = (IThread)element;
-				if (thread.isSuspended()) {
-					return IDebugUIConstants.IMG_OBJS_THREAD_SUSPENDED;
-				} else if (thread.isTerminated()) {
-					return IDebugUIConstants.IMG_OBJS_THREAD_TERMINATED;
-				} else {
-					return IDebugUIConstants.IMG_OBJS_THREAD_RUNNING;
-				}
-			} else if (element instanceof IDebugTarget) {
-				IDebugTarget target= (IDebugTarget) element;
-				if (target.isTerminated() || target.isDisconnected()) {
-					return IDebugUIConstants.IMG_OBJS_DEBUG_TARGET_TERMINATED;
-				} else if (target.isSuspended()) {
-					return IDebugUIConstants.IMG_OBJS_DEBUG_TARGET_SUSPENDED;
-				} else {
-					return IDebugUIConstants.IMG_OBJS_DEBUG_TARGET;
-				}
-			} else if (element instanceof IExpression) {
-				return IDebugUIConstants.IMG_OBJS_EXPRESSION;
-			}
-		} else {
-			if (element instanceof IMarker) {
-				return getMarkerImageKey((IMarker)element);
-			} else if (element instanceof IBreakpoint) {
-				return getBreakpointImageKey((IBreakpoint)element);
-			} else if (element instanceof IProcess) {
-				if (((IProcess) element).isTerminated()) {
-					return IDebugUIConstants.IMG_OBJS_OS_PROCESS_TERMINATED;
-				} 
-				return IDebugUIConstants.IMG_OBJS_OS_PROCESS;
-			} else if (element instanceof ILaunch) {
-				// determine the image from the launch config type
-				ILaunch launch= (ILaunch)element;
-				ILaunchConfiguration configuration = launch.getLaunchConfiguration();
-				if (configuration != null) {
-					try {
-						return configuration.getType().getIdentifier();
-					} catch (CoreException e) {
-						DebugUIPlugin.log(e);
-						return null;
-					}
-				}
-				// if no config, use the old "mode" way
-				if (launch.getLaunchMode().equals(ILaunchManager.DEBUG_MODE)) {
-					return IDebugUIConstants.IMG_OBJS_LAUNCH_DEBUG;
-				} else if (launch.isTerminated()) {
-					return IDebugUIConstants.IMG_OBJS_LAUNCH_RUN_TERMINATED;
-				} else {
-					return IDebugUIConstants.IMG_OBJS_LAUNCH_RUN;
-				}	
-			} else if (element instanceof ILaunchConfigurationType) {
-				return ((ILaunchConfigurationType)element).getIdentifier();
-			} else if (element instanceof ILaunchConfiguration) {
-				try {
-					return ((ILaunchConfiguration)element).getType().getIdentifier();
-				} catch (CoreException e) {
-					DebugUIPlugin.log(e);
-					return null;
-				}
-			} 
-		}
-		return null;		
-	}
-
-	/**
-	 * @see ILabelProvider#getText(Object)
-	 */
-	public String getText(Object element) {
-		StringBuffer label= new StringBuffer();
-		try {
-			// Group elements into debug elements and non-debug elements
-			// to reduce the number of instanceof checks performed
-			if (element instanceof IDebugElement) {
-				if (element instanceof IStackFrame) {
-					label.append(((IStackFrame)element).getName());
-				} else if (element instanceof IndexedVariablePartition) {
-					label.append(((IndexedVariablePartition)element).getName());
-				} else if (element instanceof IVariable) {
-					label.append(getVariableText((IVariable)element));
-				} else if (element instanceof IThread) {
-					label.append(((IThread)element).getName());
-				} else if (element instanceof IDebugTarget) {
-					label.append((((IDebugTarget)element).getName()));
-				} else if (element instanceof IExpression) {
-					label.append(getExpressionText((IExpression)element));
-				} else if (element instanceof IRegisterGroup) {
-					label.append(getRegisterGroupText((IRegisterGroup)element));
-				} else if (element instanceof IValue) {
-					label.append(((IValue)element).getValueString()); 
-				}
-			} else {
-				if (element instanceof IMarker) {
-					label.append(getMarkerText((IMarker) element));
-				} else if (element instanceof IBreakpoint) {
-					label.append(getBreakpointText((IBreakpoint)element));
-				} else if (element instanceof IProcess) {
-					label.append(((IProcess) element).getLabel());
-				} else if (element instanceof ILaunch) {
-					label.append(getLaunchText((ILaunch) element));
-				} else if (element instanceof ILaunchConfiguration) {
-					label.append(((ILaunchConfiguration)element).getName());
-				} else if (element instanceof ILaunchConfigurationType) {
-					label.append(((ILaunchConfigurationType)element).getName());
-				} else if (element instanceof String) {
-					label.append(element);
-				} else {
-					label.append(getAdapterLabel(element));
-				}
-			}
-			if (element instanceof ITerminate) {
-				if (((ITerminate) element).isTerminated()) {
-					String terminatedMessage= null;
-					if (element instanceof IProcess) {
-						IProcess process = (IProcess)element;
-						int exit = process.getExitValue();
-						terminatedMessage= MessageFormat.format(DebugUIMessages.DefaultLabelProvider_16, new String[]{new Integer(exit).toString()}); //$NON-NLS-1$
-					} else {
-						terminatedMessage= DebugUIMessages.DefaultLabelProvider_1; //$NON-NLS-1$
-					}
-					label.insert(0, terminatedMessage);
-				}
-			} else if (element instanceof IDisconnect) {
-				if (((IDisconnect) element).isDisconnected()) {
-					label.insert(0, DebugUIMessages.DefaultLabelProvider__disconnected__1); //$NON-NLS-1$
-				}
-			}
-		} catch (DebugException e) {
-			DebugUIPlugin.log(e);
-			label.append(DebugUIMessages.DefaultLabelProvider__unknown__1); //$NON-NLS-1$
-		}
-		return label.toString();
-	}
-	
-	/**
-	 * Returns default label for a breakpoint.
-	 * 
-	 * @param breakpoint
-	 * @return default label for a breakpoint
-	 */
-	private String getBreakpointText(IBreakpoint breakpoint) {
-		IResource resource = breakpoint.getMarker().getResource();
-		StringBuffer label = new StringBuffer();
-		if (resource != null) {
-			label.append(resource.getName());
-		}
-		if (breakpoint instanceof ILineBreakpoint) {
-			try {
-				int lineNumber = ((ILineBreakpoint)breakpoint).getLineNumber();
-				label.append(MessageFormat.format(DebugUIMessages.DefaultLabelProvider_17, new String[]{Integer.toString(lineNumber)})); //$NON-NLS-1$
-			} catch (CoreException e) {
-			}
-		}
-		return label.toString();
-	}
-
-	public String getAdapterLabel(Object object) {
-		if (object instanceof IAdaptable) {
-			IWorkbenchAdapter de= (IWorkbenchAdapter) ((IAdaptable) object).getAdapter(IWorkbenchAdapter.class);
-			if (de != null) {
-				return de.getLabel(object);
-			}
-		}
-		return DebugUIMessages.DefaultLabelProvider__unknown__1; //$NON-NLS-1$
-	}
-	
-	/**
-	 * Used to render launch history items in the re-launch drop downs
-	 */
-	protected String getLaunchText(ILaunch launch) {
-		if (launch.getLaunchConfiguration() == null || (!launch.getLaunchConfiguration().exists() && !launch.getLaunchConfiguration().isWorkingCopy())) {
-			return DebugUIMessages.DefaultLabelProvider__unknown__1; //$NON-NLS-1$
-		} 
-		// new launch configuration
-		ILaunchConfiguration config = launch.getLaunchConfiguration();
-		StringBuffer buff= new StringBuffer(config.getName());
-		buff.append(" ["); //$NON-NLS-1$
-		try {
-			buff.append(config.getType().getName());
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}
-		buff.append("]"); //$NON-NLS-1$
-		return buff.toString();			
-	}
-
-	protected String getExpressionText(IExpression expression) {
-		if (expression instanceof IWatchExpression) {
-			return getWatchExpressionText((IWatchExpression) expression);
-		}
-		StringBuffer buffer= new StringBuffer(expression.getExpressionText());
-		String valueString= null;
-		IValue value= expression.getValue();
-		if (value != null && (valueString == null || valueString.length() < 1)) {
-			try {
-				valueString= value.getValueString();
-			} catch (DebugException de) {
-				DebugUIPlugin.log(de);
-			}
-		}
-		if (valueString != null && valueString.length() > 0) {
-			buffer.append("= "); //$NON-NLS-1$
-			buffer.append(valueString);		
-		}
-		return buffer.toString();
-	}	
-	
-	/**
-	 * @param expression
-	 * @return
-	 */
-	protected String getWatchExpressionText(IWatchExpression expression) {
-		StringBuffer result= new StringBuffer();
-		result.append('"').append(expression.getExpressionText()).append('"');
-		if (expression.isPending()) {
-			result.append(DebugUIMessages.DefaultLabelProvider_12); //$NON-NLS-1$
-		} else if (expression.hasErrors()) {
-			result.append(DebugUIMessages.DefaultLabelProvider_13); //$NON-NLS-1$
-		} else {
-			IValue value= expression.getValue();
-			if (value != null) {	
-				String valueString= DebugUIPlugin.getModelPresentation().getText(value);
-				if (valueString.length() > 0) {
-					result.append(" = ").append(valueString); //$NON-NLS-1$
-				}
-			}
-		}
-		if (!expression.isEnabled()) {
-			result.append(DebugUIMessages.DefaultLabelProvider_15); //$NON-NLS-1$
-		}
-		return result.toString();
-	}
-
-	protected String getVariableText(IVariable variable) {
-		StringBuffer buffer= new StringBuffer();
-		try {
-			IValue value = variable.getValue();
-			buffer.append(variable.getName());
-			buffer.append(" = "); //$NON-NLS-1$
-			buffer.append(value.getValueString());
-		} catch (DebugException de) {
-			DebugUIPlugin.log(de);
-		}
-		return buffer.toString();
-	}
-	
-	protected String getRegisterGroupText(IRegisterGroup registerGroup) {
-		StringBuffer buffer= new StringBuffer();
-		try {
-			buffer.append(registerGroup.getName());
-		} catch (DebugException de) {
-			DebugUIPlugin.log(de);
-		}
-		return buffer.toString();
-	}
-	
-	protected String getMarkerText(IMarker marker) {
-		try {
-			if (marker.exists() && marker.isSubtypeOf(IBreakpoint.BREAKPOINT_MARKER)) {
-				return DebugUIMessages.DefaultLabelProvider_Breakpoint_1; //$NON-NLS-1$
-			}
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}
-		return ""; //$NON-NLS-1$
-	}
-	
-	protected String getMarkerImageKey(IMarker marker) {
-		try {
-			IBreakpoint breakpoint= DebugPlugin.getDefault().getBreakpointManager().getBreakpoint(marker);
-			if (breakpoint != null && marker.exists()) {
-				if (breakpoint.isEnabled()) {
-					return IDebugUIConstants.IMG_OBJS_BREAKPOINT;
-				} 
-				return IDebugUIConstants.IMG_OBJS_BREAKPOINT_DISABLED;
-			}
-		} catch (CoreException e) {
-		}
-		return null;
-	}
-	
-	protected String getBreakpointImageKey(IBreakpoint breakpoint) {
-		if (breakpoint != null && breakpoint.getMarker().exists()) {
-		    try {
-			    boolean enabled = breakpoint.isEnabled();
-			    if (breakpoint instanceof IWatchpoint) {
-	                IWatchpoint watchpoint = (IWatchpoint) breakpoint;
-	        		if (watchpoint.isAccess()) {
-	        			if (watchpoint.isModification()) {
-	        				//access and modification
-	        				if (enabled) {
-	        					return IDebugUIConstants.IMG_OBJS_WATCHPOINT;
-	        				} 
-	        				return IDebugUIConstants.IMG_OBJS_WATCHPOINT_DISABLED;
-	        			}
-	        			if (enabled) {
-        					return IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT;
-        				} 
-	        			return IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT_DISABLED;
-	        		} else if (watchpoint.isModification()) {
-	        			if (enabled) {
-	        				return IDebugUIConstants.IMG_OBJS_MODIFICATION_WATCHPOINT;
-	        			} 
-	        			return IDebugUIConstants.IMG_OBJS_MODIFICATION_WATCHPOINT_DISABLED;
-	        		} else {
-	        			//neither access nor modification
-	        			return IDebugUIConstants.IMG_OBJS_WATCHPOINT_DISABLED;
-	        		}
-	            }
-			    if (enabled) {
-					return IDebugUIConstants.IMG_OBJS_BREAKPOINT;
-				} 
-				return IDebugUIConstants.IMG_OBJS_BREAKPOINT_DISABLED;
-		    } catch (CoreException e) {
-		    }
-		}
-		return null;
-	}
-
-	/**
-	 * @see IBaseLabelProvider#addListener(ILabelProviderListener)
-	 */
-	public void addListener(ILabelProviderListener listener) {
-	}
-
-	/**
-	 * @see IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-	}
-
-	/**
-	 * @see IBaseLabelProvider#isLabelProperty(Object, String)
-	 */
-	public boolean isLabelProperty(Object element, String property) {
-		return false;
-	}
-
-	/**
-	 * @see IBaseLabelProvider#removeListener(ILabelProviderListener)
-	 */
-	public void removeListener(ILabelProviderListener listener) {
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DelegatingModelPresentation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DelegatingModelPresentation.java
deleted file mode 100644
index 1a96856..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DelegatingModelPresentation.java
+++ /dev/null
@@ -1,357 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.ui.IDebugEditorPresentation;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IValueDetailListener;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.jface.viewers.IFontProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-
-/**
- * A model presentation that delegates to the appropriate extension. This
- * presentation contains a table of specialized presentations that are defined
- * as <code>org.eclipse.debug.ui.debugModelPresentations</code> extensions. When
- * asked to render an object from a debug model, this presentation delegates
- * to the extension registered for that debug model. 
- */
-public class DelegatingModelPresentation implements IDebugModelPresentation, IDebugEditorPresentation, IColorProvider, IFontProvider {
-	
-	/**
-	 * A mapping of attribute ids to their values
-	 * @see IDebugModelPresentation#setAttribute
-	 */
-	private HashMap fAttributes= new HashMap(3);
-	/**
-	 * A table of label providers keyed by debug model identifiers.
-	 */
-	private HashMap fLabelProviders= new HashMap(5);
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugEditorPresentation#removeAnnotations(org.eclipse.ui.IEditorPart, org.eclipse.debug.core.model.IThread)
-	 */
-	public void removeAnnotations(IEditorPart editorPart, IThread thread) {
-		IDebugModelPresentation presentation = getConfiguredPresentation(thread);
-		if (presentation != null) {
-			if (presentation instanceof IDebugEditorPresentation) {
-				((IDebugEditorPresentation)presentation).removeAnnotations(editorPart, thread);
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugEditorPresentation#addAnnotations(org.eclipse.ui.IEditorPart, org.eclipse.debug.core.model.IStackFrame)
-	 */
-	public boolean addAnnotations(IEditorPart editorPart, IStackFrame frame) {
-		IDebugModelPresentation presentation = getConfiguredPresentation(frame);
-		if (presentation != null) {
-			if (presentation instanceof IDebugEditorPresentation) {
-				return((IDebugEditorPresentation)presentation).addAnnotations(editorPart, frame);
-			}
-		}
-		return false;
-	}
-
-	/**
-	 * Constructs a new DelegatingLabelProvider that delegates to extensions
-	 * of kind <code>org.eclipse.debug.ui.debugLabelProvider</code>
-	 */
-	public DelegatingModelPresentation() {
-		IExtensionPoint point= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.ID_DEBUG_MODEL_PRESENTATION);
-		if (point != null) {
-			IExtension[] extensions= point.getExtensions();
-			for (int i= 0; i < extensions.length; i++) {
-				IExtension extension= extensions[i];
-				IConfigurationElement[] configElements= extension.getConfigurationElements();
-				for (int j= 0; j < configElements.length; j++) {
-					IConfigurationElement elt= configElements[j];
-					String id= elt.getAttribute("id"); //$NON-NLS-1$
-					if (id != null) {
-						IDebugModelPresentation lp= new LazyModelPresentation(elt);
-						getLabelProviders().put(id, lp);
-					}
-				}
-			}
-		}
-	}
-
-	/**
-	 * Delegate to all extensions.
-	 *
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
-	 */
-	public void addListener(ILabelProviderListener listener) {
-		Iterator i= getLabelProviders().values().iterator();
-		while (i.hasNext()) {
-			((ILabelProvider) i.next()).addListener(listener);
-		}
-	}
-
-	/**
-	 * Delegate to all extensions.
-	 *
-	 * @see IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		Iterator i= getLabelProviders().values().iterator();
-		while (i.hasNext()) {
-			((ILabelProvider) i.next()).dispose();
-		}
-	}
-
-	/**
-	 * @see IDebugModelPresentation#getImage(Object)
-	 */
-	public Image getImage(Object item) {
-		// Attempt to delegate
-		IDebugModelPresentation lp= getConfiguredPresentation(item);
-		if (lp != null) {
-			Image image= lp.getImage(item);
-			if (image != null) {
-				return image;
-			}
-		}
-		// If no delegate returned an image, use the default
-		return getDefaultImage(item);
-	}
-	
-	/**
-     * @see IDebugModelPresentation#getText(Object)
-     */
-    public String getText(Object item) {
-    	IDebugModelPresentation lp= getConfiguredPresentation(item);
-    	if (lp != null) {
-    		return lp.getText(item);
-    	}
-    	return getDefaultText(item);
-    }
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ISourcePresentation#getEditorInput(java.lang.Object)
-	 */
-	public IEditorInput getEditorInput(Object item) {
-		IDebugModelPresentation lp= getConfiguredPresentation(item);
-		if (lp != null) {
-			return lp.getEditorInput(item);
-		}
-		return null;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ISourcePresentation#getEditorId(org.eclipse.ui.IEditorInput, java.lang.Object)
-	 */
-	public String getEditorId(IEditorInput input, Object objectInput) {
-		IDebugModelPresentation lp= getConfiguredPresentation(objectInput);
-		if (lp != null) {
-			return lp.getEditorId(input, objectInput);
-		}
-		return null;
-	}
-
-
-	/**
-	 * Returns a default text label for the debug element
-	 */
-	protected String getDefaultText(Object element) {
-		return DebugUIPlugin.getDefaultLabelProvider().getText(element);
-	}
-
-	/**
-	 * Returns a default image for the debug element
-	 */
-	protected Image getDefaultImage(Object element) {
-		return DebugUIPlugin.getDefaultLabelProvider().getImage(element);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugModelPresentation#computeDetail(org.eclipse.debug.core.model.IValue, org.eclipse.debug.ui.IValueDetailListener)
-	 */
-	public void computeDetail(IValue value, IValueDetailListener listener) {
-		IDebugModelPresentation lp= getConfiguredPresentation(value);
-		if (lp != null) {
-			lp.computeDetail(value, listener);			
-		} else {
-			listener.detailComputed(value, getText(value));
-		}
-	}	
-
-	/**
-	 * Delegate to all extensions.
-	 *
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
-	 */
-	public void removeListener(ILabelProviderListener listener) {
-		Iterator i= getLabelProviders().values().iterator();
-		while (i.hasNext()) {
-			((ILabelProvider) i.next()).removeListener(listener);
-		}
-	}
-
-	/**
-	 * Delegate to the appropriate label provider.
-	 *
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
-	 */
-	public boolean isLabelProperty(Object element, String property) {
-		if (element instanceof IDebugElement) {
-			IDebugModelPresentation lp= getConfiguredPresentation(element);
-			if (lp != null) {
-				return lp.isLabelProperty(element, property);
-			}
-		}
-
-		return true;
-	}
-
-	/**
-	 * Returns a configured model presentation for the given object,
-	 * or <code>null</code> if one is not registered.
-	 */
-	protected IDebugModelPresentation getConfiguredPresentation(Object element) {
-		String id= null;
-		if (element instanceof IDebugElement) {
-			IDebugElement de= (IDebugElement) element;
-			id= de.getModelIdentifier();
-		} else if (element instanceof IMarker) {
-			IMarker m= (IMarker) element;
-			IBreakpoint bp = DebugPlugin.getDefault().getBreakpointManager().getBreakpoint(m);
-			if (bp != null) {
-				id= bp.getModelIdentifier();
-			}
-		} else if (element instanceof IBreakpoint) {
-			id = ((IBreakpoint)element).getModelIdentifier();
-		}
-		if (id != null) {
-			return getPresentation(id);
-		}
-
-		return null;
-	}
-	
-	/**
-	 * Returns the presentation registered for the given id, or <code>null</code>
-	 * of nothing is registered for the id.
-	 */
-	public IDebugModelPresentation getPresentation(String id) {
-		return (IDebugModelPresentation) getLabelProviders().get(id);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugModelPresentation#setAttribute(java.lang.String, java.lang.Object)
-	 */
-	public void setAttribute(String id, Object value) {
-		if (value == null) {
-			return;
-		}
-		getAttributes().put(id, value);
-		Iterator presentations = fLabelProviders.values().iterator();
-		while (presentations.hasNext()) {
-			((IDebugModelPresentation)presentations.next()).setAttribute(id, value);
-		}
-	}
-
-	/**
-	 * Whether or not to show variable type names.
-	 * This option is configured per model presentation.
-	 * This allows this option to be set per view, for example.
-	 */
-	protected boolean showVariableTypeNames() {
-		Boolean show= (Boolean) fAttributes.get(DISPLAY_VARIABLE_TYPE_NAMES);
-		show= show == null ? Boolean.FALSE : show;
-		return show.booleanValue();
-	}
-		
-	protected HashMap getAttributes() {
-		return fAttributes;
-	}
-	
-	/**
-	 * Returns a copy of the attribute map for this presentation.
-	 * 
-	 * @return a copy of the attribute map for this presentation
-	 * @since 3.0
-	 */
-	public Map getAttributeMap() {
-		return (Map) getAttributes().clone();
-	}
-
-	protected void setAttributes(HashMap attributes) {
-		fAttributes = attributes;
-	}
-
-	protected HashMap getLabelProviders() {
-		return fLabelProviders;
-	}
-
-	protected void setLabelProviders(HashMap labelProviders) {
-		fLabelProviders = labelProviders;
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IColorProvider#getForeground(java.lang.Object)
-     */
-    public Color getForeground(Object element) {
-        IDebugModelPresentation presentation = getConfiguredPresentation(element);
-        if (presentation instanceof IColorProvider) {
-            IColorProvider colorProvider = (IColorProvider) presentation;
-            return colorProvider.getForeground(element);
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IColorProvider#getBackground(java.lang.Object)
-     */
-    public Color getBackground(Object element) {
-        IDebugModelPresentation presentation = getConfiguredPresentation(element);
-        if (presentation instanceof IColorProvider) {
-            IColorProvider colorProvider = (IColorProvider) presentation;
-            return colorProvider.getBackground(element);
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IFontProvider#getFont(java.lang.Object)
-     */
-    public Font getFont(Object element) {
-        IDebugModelPresentation presentation = getConfiguredPresentation(element);
-        if (presentation instanceof IFontProvider) {
-            IFontProvider fontProvider = (IFontProvider) presentation;
-            return fontProvider.getFont(element);
-        }
-        return null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DialogSettingsHelper.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DialogSettingsHelper.java
deleted file mode 100644
index a153155..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DialogSettingsHelper.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
- 
-package org.eclipse.debug.internal.ui;
-
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Helper class for dealing with setting and restoring dialog settings.
- */
-public class DialogSettingsHelper {
-	
-	/**
-	 * Persists the location and dimensions of the shell in the
-	 * Debug UI Plugin dialog settings under the provided dialog settings section name
-	 * 
-	 * @param shell The shell whose geometry is to be stored
-	 * @param dialogSettingsSectionName The name of the dialog settings section
-	 */
-	public static void persistShellGeometry(Shell shell, String dialogSettingsSectionName) {
-		Point shellLocation = shell.getLocation();
-		Point shellSize = shell.getSize();
-		IDialogSettings settings = getDialogSettings(dialogSettingsSectionName);
-		settings.put(IDebugPreferenceConstants.DIALOG_ORIGIN_X, shellLocation.x);
-		settings.put(IDebugPreferenceConstants.DIALOG_ORIGIN_Y, shellLocation.y);
-		settings.put(IDebugPreferenceConstants.DIALOG_WIDTH, shellSize.x);
-		settings.put(IDebugPreferenceConstants.DIALOG_HEIGHT, shellSize.y);
-	}
-	
-	private static IDialogSettings getDialogSettings(String dialogSettingsSectionName) {
-		IDialogSettings settings = DebugUIPlugin.getDefault().getDialogSettings();
-		IDialogSettings section = settings.getSection(dialogSettingsSectionName);
-		if (section == null) {
-			section = settings.addNewSection(dialogSettingsSectionName);
-		} 
-		return section;
-	}
-	
-	/**
-	 * Returns the initial size which is the larger of the <code>initialSize</code> or
-	 * the size persisted in the Debug UI Plugin dialog settings under the provided dialog setttings section name.
-	 * If no size is persisted in the settings, the <code>initialSize</code> is returned. 
-	 * 
-	 * @param initialSize The initialSize to compare against
-	 * @param dialogSettingsSectionName The name of the dialog settings section
-	 * @return the initial size
-	 */
-	public static Point getInitialSize(String dialogSettingsSectionName, Point initialSize) {
-		IDialogSettings settings = getDialogSettings(dialogSettingsSectionName);
-		try {
-			int x, y;
-			x = settings.getInt(IDebugPreferenceConstants.DIALOG_WIDTH);
-			y = settings.getInt(IDebugPreferenceConstants.DIALOG_HEIGHT);
-			return new Point(Math.max(x, initialSize.x), Math.max(y, initialSize.y));
-		} catch (NumberFormatException e) {
-		}
-		return initialSize;
-	}
-	
-	/**
-	 * Returns the initial location which is persisted in the Debug UI Plugin dialog settings
-	 * under the provided dialog setttings section name.
-	 * If location is not persisted in the settings, the <code>null</code> is returned. 
-	 * 
-	 * @param dialogSettingsSectionName The name of the dialog settings section
-	 * @return The initial location or <code>null</code>
-	 */
-	public static Point getInitialLocation(String dialogSettingsSectionName) {
-		IDialogSettings settings = getDialogSettings(dialogSettingsSectionName);
-		try {
-			int x= settings.getInt(IDebugPreferenceConstants.DIALOG_ORIGIN_X);
-			int y= settings.getInt(IDebugPreferenceConstants.DIALOG_ORIGIN_Y);
-			return new Point(x,y);
-		} catch (NumberFormatException e) {
-		}
-		return null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IDebugHelpContextIds.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IDebugHelpContextIds.java
deleted file mode 100644
index 9f0b051..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IDebugHelpContextIds.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
- 
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Help context ids for the debug ui.
- * <p>
- * This interface contains constants only; it is not intended to be implemented
- * or extended.
- * </p>
- * 
- */
-public interface IDebugHelpContextIds {
-	
-	public static final String PREFIX = IDebugUIConstants.PLUGIN_ID + "."; //$NON-NLS-1$
-	
-	// Actions
-	public static final String CHANGE_VALUE_ACTION = PREFIX + "change_value_action_context"; //$NON-NLS-1$
-	public static final String CONSOLE_SCROLL_LOCK_ACTION = PREFIX + "console_scroll_lock_action_context"; //$NON-NLS-1$	
-	public static final String OPEN_BREAKPOINT_ACTION = PREFIX + "open_breakpoint_action_context"; //$NON-NLS-1$
-	public static final String RELAUNCH_HISTORY_ACTION = PREFIX + "relaunch_history_action_context"; //$NON-NLS-1$	
-	public static final String SHOW_DETAIL_PANE_ACTION = PREFIX + "show_detail_pane_action_context"; //$NON-NLS-1$
-	public static final String SHOW_BREAKPOINTS_FOR_MODEL_ACTION = PREFIX + "show_breakpoints_for_model_action_context"; //$NON-NLS-1$
-	public static final String SHOW_TYPES_ACTION = PREFIX + "show_types_action_context"; //$NON-NLS-1$
-	public static final String VARIABLES_CONTENT_PROVIDERS_ACTION = PREFIX + "variables_content_providers_action_context"; //$NON-NLS-1$
-	public static final String VARIABLES_SELECT_LOGICAL_STRUCTURE = PREFIX + "variables_select_logical_structure"; //$NON-NLS-1$
-	public static final String SELECT_WORKING_SET_ACTION = PREFIX + "select_working_set_context"; //$NON-NLS-1$			
-
-	public static final String CLEAR_WORKING_SET_ACTION = PREFIX + "clear_working_set_context"; //$NON-NLS-1$
-	public static final String FOLLOW_CONSOLE_HYPERLINK_ACTION = PREFIX + "follow_console_hyperlink_context"; //$NON-NLS-1$
-	public static final String EDIT_LAUNCH_CONFIGURATION_ACTION = PREFIX + "edit_launch_configuration_action_context"; //$NON-NLS-1$
-	public static final String OPEN_LAUNCH_CONFIGURATION_ACTION = PREFIX + "open_launch_configuration_action_context"; //$NON-NLS-1$
-	public static final String ADD_WATCH_EXPRESSION_DIALOG= PREFIX + "add_watch_expression_dialog_context"; //$NON-NLS-1$
-	public static final String EDIT_WATCH_EXPRESSION_DIALOG= PREFIX + "edit_watch_expression_dialog_context"; //$NON-NLS-1$
-	public static final String LINK_BREAKPOINTS_WITH_DEBUG_ACTION= PREFIX + "link_breakpoints_with_debug_context"; //$NON-NLS-1$
-	public static final String EDIT_SOURCELOOKUP_ACTION = PREFIX + "edit_source_lookup_path_context";//$NON-NLS-1$
-	public static final String LOOKUP_SOURCE_ACTION = PREFIX + "lookup_source_context";//$NON-NLS-1$
-	public static final String SKIP_ALL_BREAKPOINT_ACTION = PREFIX + "skip_all_breakpoints_context"; //$NON-NLS-1$
-	public static final String AUTO_MANAGE_VIEWS_ACTION = PREFIX + "auto_manage_views_context"; //$NON-NLS-1$
-	public static final String FIND_VARIABLE_ACTION = PREFIX + "find_variable_context"; //$NON-NLS-1$
-	// Views
-	public static final String DEBUG_VIEW = PREFIX + "debug_view_context"; //$NON-NLS-1$
-	public static final String VARIABLE_VIEW = PREFIX + "variable_view_context"; //$NON-NLS-1$
-	public static final String BREAKPOINT_VIEW = PREFIX + "breakpoint_view_context"; //$NON-NLS-1$
-	public static final String EXPRESSION_VIEW = PREFIX + "expression_view_context"; //$NON-NLS-1$
-	public static final String LAUNCH_CONFIGURATION_VIEW = PREFIX + "launch_configuration_view_context"; //$NON-NLS-1$
-	public static final String REGISTERS_VIEW = PREFIX + "registers_view_context"; //$NON-NLS-1$
-	
-	// Preference pages
-	public static final String DEBUG_PREFERENCE_PAGE = PREFIX + "debug_preference_page_context"; //$NON-NLS-1$
-	public static final String CONSOLE_PREFERENCE_PAGE = PREFIX + "console_preference_page_context"; //$NON-NLS-1$
-	public static final String DEBUG_ACTION_GROUPS_PREFERENCE_PAGE = PREFIX + "debug_action_groups_views_preference_page_context"; //$NON-NLS-1$
-	public static final String LAUNCH_HISTORY_PREFERENCE_PAGE = PREFIX + "launch_history_preference_page_context"; //$NON-NLS-1$
-	public static final String SIMPLE_VARIABLE_PREFERENCE_PAGE = PREFIX + "simple_variable_preference_page_context"; //$NON-NLS-1$
-	
-	// Dialogs
-	public static final String LAUNCH_CONFIGURATION_DIALOG = PREFIX + "launch_configuration_dialog"; //$NON-NLS-1$
-	public static final String LAUNCH_CONFIGURATION_PROPERTIES_DIALOG = PREFIX + "launch_configuration_properties_dialog"; //$NON-NLS-1$
-	public static final String SINGLE_LAUNCH_CONFIGURATION_DIALOG = PREFIX + "single_launch_configuration_dialog"; //$NON-NLS-1$
-	public static final String VARIABLE_SELECTION_DIALOG = PREFIX + "variable_selection_dialog_context"; //$NON-NLS-1$
-	public static final String EDIT_SOURCELOOKUP_DIALOG = PREFIX + "edit_source_lookup_path_dialog";//$NON-NLS-1$
-	public static final String SOURCELOOKUP_TAB = PREFIX + "source_container_lookup_tab";//$NON-NLS-1$
-	public static final String ADD_SOURCE_CONTAINER_DIALOG = PREFIX + "add_source_container_dialog";//$NON-NLS-1$
-	public static final String ADD_PROJECT_CONTAINER_DIALOG = PREFIX + "project_source_container_dialog";//$NON-NLS-1$
-	public static final String ADD_FOLDER_CONTAINER_DIALOG = PREFIX + "folder_source_container_dialog";//$NON-NLS-1$
-	public static final String ADD_ARCHIVE_CONTAINER_DIALOG = PREFIX + "archive_source_container_dialog";//$NON-NLS-1$
-	public static final String MULTIPLE_SOURCE_DIALOG = PREFIX + "multiple_source_selection_dialog";//$NON-NLS-1$
-	
-	// Property pages
-	public static final String PROCESS_PROPERTY_PAGE = PREFIX + "process_property_page_context"; //$NON-NLS-1$
-	
-	// Launch configuration dialog pages
-	public static final String LAUNCH_CONFIGURATION_DIALOG_COMMON_TAB = PREFIX + "launch_configuration_dialog_common_tab"; //$NON-NLS-1$
-	public static final String LAUNCH_CONFIGURATION_DIALOG_PERSPECTIVE_TAB = PREFIX + "launch_configuration_dialog_perspective_tab"; //$NON-NLS-1$	
-	public static final String LAUNCH_CONFIGURATION_DIALOG_REFRESH_TAB = PREFIX + "launch_configuration_dialog refresh_tab"; //$NON-NLS-1$
-	public static final String LAUNCH_CONFIGURATION_DIALOG_ENVIRONMENT_TAB = PREFIX +  "launch_configuration_dialog_environment_tab"; //$NON-NLS-1$
-	
-	// Working set page
-	public static final String WORKING_SET_PAGE = PREFIX + "working_set_page_context"; //$NON-NLS-1$			
-	
-	
-	
-	//Editor	
-	public static final String NO_SOURCE_EDITOR = PREFIX + "debugger_editor_no_source_common";//$NON-NLS-1$
-	
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java
deleted file mode 100644
index 498ca76..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java
+++ /dev/null
@@ -1,284 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import org.eclipse.debug.internal.ui.views.memory.MemoryBlocksTreeViewPane;
-import org.eclipse.debug.internal.ui.views.memory.RenderingViewPane;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
- 
-public interface IInternalDebugUIConstants {
-	
-	public static final String DIALOGSTORE_LASTEXTJAR= "org.eclipse.debug.ui.lastextjar"; //$NON-NLS-1$
-		
-	//Folders
-	public static final String ID_NAVIGATOR_FOLDER_VIEW= "org.eclipse.debug.internal.ui.NavigatorFolderView"; //$NON-NLS-1$
-	public static final String ID_TOOLS_FOLDER_VIEW= "org.eclipse.debug.internal.ui.ToolsFolderView"; //$NON-NLS-1$
-	public static final String ID_CONSOLE_FOLDER_VIEW= "org.eclipse.debug.internal.ui.ConsoleFolderView"; //$NON-NLS-1$
-	public static final String ID_OUTLINE_FOLDER_VIEW= "org.eclipse.debug.internal.ui.OutlineFolderView"; //$NON-NLS-1$
-	
-	// annotation types for instruction pointers
-	public static final String ANN_INSTR_POINTER_CURRENT = "org.eclipse.debug.ui.currentIP"; //$NON-NLS-1$
-	public static final String ANN_INSTR_POINTER_SECONDARY = "org.eclipse.debug.ui.secondaryIP"; //$NON-NLS-1$
-	
-	// tool images
-	public static final String IMG_LCL_COLLAPSE_ALL = "IMG_LCL_COLLAPSE_ALL"; //$NON-NLS-1$
-	public static final String IMG_LCL_TERMINATE = "IMG_LCL_TERMINATE"; //$NON-NLS-1$
-	public static final String IMG_LCL_SHOW_LOGICAL_STRUCTURE = "IMG_LCL_SHOW_LOGICAL_STRUCTURE"; //$NON-NLS-1$
-	public static final String IMG_LCL_RUN_TO_LINE= "IMG_LCL_RUN_TO_LINE"; //$NON-NLS-1$
-	public static final String IMG_SRC_LOOKUP_MENU = "IMG_SRC_LOOKUP_MENU"; //$NON-NLS-1$
-	public static final String IMG_LCL_MONITOR_EXPRESSION= "IMG_LCL_MONITOR_EXPRESSION"; //$NON-NLS-1$
-	public static final String IMG_LCL_REMOVE_MEMORY= "IMG_LCL_REMOVE_MEMORY"; //$NON-NLS-1$
-	public static final String IMG_LCL_RESET_MEMORY= "IMG_LCL_RESET_MEMORY";//$NON-NLS-1$
-	public static final String IMG_LCL_COPY_VIEW_TO_CLIPBOARD = "IMG_LCL_COPY_VIEW_TO_CLIPBOARD"; //$NON-NLS-1$
-	public static final String IMG_LCL_PRINT_TOP_VIEW_TAB = "IMG_LCL_PRINT_TOP_VIEW_TAB"; //$NON-NLS-1$
-	
-	// disabled local tool images
-	public static final String IMG_DLCL_LOCK= "IMG_DLCL_LOCK"; //$NON-NLS-1$
-	public static final String IMG_DLCL_DETAIL_PANE= "IMG_DLCL_DETAIL_PANE"; //$NON-NLS-1$
-	public static final String IMG_DLCL_CHANGE_VARIABLE_VALUE= "IMG_DLCL_CHANGE_VARIABLE_VALUE"; //$NON-NLS-1$
-	public static final String IMG_DLCL_TYPE_NAMES= "IMG_DLCL_TYPE_NAMES"; //$NON-NLS-1$
-	public static final String IMG_DLCL_SHOW_LOGICAL_STRUCTURE= "IMG_DLCL_SHOW_LOGICAL_STRUCTURE"; //$NON-NLS-1$
-	public static final String IMG_DLCL_DETAIL_PANE_UNDER= "IMG_DLCL_DETAIL_PANE_UNDER"; //$NON-NLS-1$
-	public static final String IMG_DLCL_DETAIL_PANE_RIGHT= "IMG_DLCL_DETAIL_PANE_RIGHT"; //$NON-NLS-1$
-	public static final String IMG_DLCL_DETAIL_PANE_HIDE= "IMG_DLCL_DETAIL_PANE_HIDE"; //$NON-NLS-1$
-	public static final String IMG_DLCL_COLLAPSE_ALL = "IMG_DLCL_COLLAPSE_ALL"; //$NON-NLS-1$
-	public static final String IMG_DLCL_TERMINATE = "IMG_DLCL_TERMINATE"; //$NON-NLS-1$
-	public static final String IMG_DLCL_REMOVE_ALL = "IMG_DLCL_REMOVE_ALL"; //$NON-NLS-1$
-	public static final String IMG_DLCL_RUN_TO_LINE= "IMG_DLCL_RUN_TO_LINE"; //$NON-NLS-1$
-	public static final String IMG_SRC_LOOKUP_MENU_DLCL = "IMG_SRC_LOOKUP_MENU_DISABLED"; //$NON-NLS-1$
-	public static final String IMG_DLCL_MONITOR_EXPRESSION= "IMG_DLCL_MONITOR_EXPRESSION"; //$NON-NLS-1$
-	public static final String IMG_DLCL_REMOVE_MEMORY= "IMG_DLCL_REMOVE_MEMORY"; //$NON-NLS-1$
-	public static final String IMG_DLCL_RESET_MEMORY= "IMG_DLCL_RESET_MEMORY"; //$NON-NLS-1$
-	public static final String IMG_DLCL_COPY_VIEW_TO_CLIPBOARD= "IMG_DLCL_COPY_VIEW_TO_CLIPBOARD"; //$NON-NLS-1$
-	public static final String IMG_DLCL_PRINT_TOP_VIEW_TAB= "IMG_DLCL_PRINT_TOP_VIEW_TAB"; //$NON-NLS-1$
-	
-	// enabled local tool images	
-	public static final String IMG_ELCL_LOCK= "IMG_ELCL_LOCK"; //$NON-NLS-1$
-	public static final String IMG_ELCL_DETAIL_PANE= "IMG_ELCL_DETAIL_PANE"; //$NON-NLS-1$
-	public static final String IMG_ELCL_CHANGE_VARIABLE_VALUE= "IMG_ELCL_CHANGE_VARIABLE_VALUE"; //$NON-NLS-1$
-	public static final String IMG_ELCL_TYPE_NAMES= "IMG_ELCL_TYPE_NAMES"; //$NON-NLS-1$
-	public static final String IMG_ELCL_SHOW_LOGICAL_STRUCTURE= "IMG_ELCL_SHOW_LOGICAL_STRUCTURE"; //$NON-NLS-1$
-	public static final String IMG_ELCL_DETAIL_PANE_UNDER= "IMG_ELCL_DETAIL_PANE_UNDER"; //$NON-NLS-1$
-	public static final String IMG_ELCL_DETAIL_PANE_RIGHT= "IMG_ELCL_DETAIL_PANE_RIGHT"; //$NON-NLS-1$
-	public static final String IMG_ELCL_DETAIL_PANE_HIDE= "IMG_ELCL_DETAIL_PANE_HIDE"; //$NON-NLS-1$
-	public static final String IMG_ELCL_COLLAPSE_ALL = "IMG_ELCL_COLLAPSE_ALL"; //$NON-NLS-1$
-	public static final String IMG_ELCL_TERMINATE = "IMG_ELCL_TERMINATE"; //$NON-NLS-1$
-	public static final String IMG_SRC_LOOKUP_MENU_ELCL = "IMG_SRC_LOOKUP_MENU_ENABLED"; //$NON-NLS-1$
-	public static final String IMG_ELCL_MONITOR_EXPRESSION= "IMG_ELCL_MONITOR_EXPRESSION";  //$NON-NLS-1$
-	public static final String IMG_ELCL_REMOVE_MEMORY= "IMG_ELCL_REMOVE_MEMORY";  //$NON-NLS-1$
-	public static final String IMG_ELCL_RESET_MEMORY= "IMG_ELCL_RESET_MEMORY";  //$NON-NLS-1$
-	public static final String IMG_ELCL_COPY_VIEW_TO_CLIPBOARD= "IMG_ELCL_COPY_VIEW_TO_CLIPBOARD";  //$NON-NLS-1$
-	public static final String IMG_ELCL_PRINT_TOP_VIEW_TAB= "IMG_ELCL_PRINT_TOP_VIEW_TAB";  //$NON-NLS-1$
-	public static final String IMG_ELCL_REMOVE_ALL = "IMG_ELCL_REMOVE_ALL"; //$NON-NLS-1$
-	public static final String IMG_ELCL_HIERARCHICAL = "IMG_ELCL_HIERARCHICAL"; //$NON-NLS-1$
-	
-	// object images
-	public static final String IMG_OBJS_INSTRUCTION_POINTER_TOP = "IMG_OBJS_INSTRUCTION_POINTER_TOP"; //$NON-NLS-1$
-	public static final String IMG_OBJS_INSTRUCTION_POINTER = "IMG_OBJS_INSTRUCTION_POINTER"; //$NON-NLS-1$
-	public static final String IMG_OBJS_COMMON_TAB = "IMG_OBJS_COMMON_TAB"; //$NON-NLS-1$
-	public static final String IMG_OBJS_REFRESH_TAB = "IMG_OBJS_REFRESH_TAB"; //$NON-NLS-1$
-	public static final String IMG_OBJS_PERSPECTIVE_TAB = "IMG_OBJS_PERSPECTIVE_TAB"; //$NON-NLS-1$
-	public static final String IMG_OBJS_ARRAY_PARTITION = "IMG_OBJS_ARRAY_PARTITION"; //$NON-NLS-1$
-	public static final String IMG_SRC_LOOKUP_TAB = "IMG_SRC_LOOKUP_TAB"; //$NON-NLS-1$
-	public static final String IMG_ADD_SRC_LOC_WIZ = "IMG_ADD_SRC_LOCATION"; //$NON-NLS-1$
-	public static final String IMG_EDIT_SRC_LOC_WIZ = "IMG_EDIT_SRC_LOCATION"; //$NON-NLS-1$
-	public static final String IMG_OBJECT_MEMORY_CHANGED="IMG_OBJECT_MEMORY_CHANGED";  //$NON-NLS-1$
-	public static final String IMG_OBJECT_MEMORY="IMG_OBJECT_MEMORY";  //$NON-NLS-1$
-	public static final String IMG_OBJS_BREAKPOINT_TYPE="IMG_OBJ_BREAKPOINT_TYPE"; //$NON-NLS-1$
-	
-	// internal preferenes
-	/**
-	 * XML for perspective settings - see PerspectiveManager.
-	 * @since 3.0
-	 */
-	public static final String PREF_LAUNCH_PERSPECTIVES = IDebugUIConstants.PLUGIN_ID + ".PREF_LAUNCH_PERSPECTIVES"; //$NON-NLS-1$
-	
-	/**
-	 * Preference for using step filters.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_USE_STEP_FILTERS = IDebugUIConstants.PLUGIN_ID + ".USE_STEP_FILTERS"; //$NON-NLS-1$	
-	 
-	/** Transparent overlay image identifier. */
-	public static final String IMG_OVR_TRANSPARENT = "IMG_OVR_TRANSPARENT";  //$NON-NLS-1$
-	
-	/**
-	 * Editor Id for the "Source Not Found" editor
-	 */
-	public static final String ID_SOURCE_NOT_FOUND_EDITOR = "org.eclipse.debug.ui.NoSourceFoundEditor"; //$NON-NLS-1$
-	
-	/**
-	 * Editor Id for the "Common Source Not Found" editor.
-	 * @since 3.0
-	 */
-	public static final String ID_COMMON_SOURCE_NOT_FOUND_EDITOR="org.eclipse.debug.ui.sourcelookup.CommonSourceNotFoundEditor"; //$NON-NLS-1$
-		
-	/**
-	 * The name of the font to use for detail panes. This font is managed via
-	 * the workbench font preference page.
-	 * 
-	 * @since 2.1
-	 */ 
-	public static final String DETAIL_PANE_FONT= "org.eclipse.debug.ui.DetailPaneFont"; //$NON-NLS-1$	
-
-	/**
-	 * String preference controlling whether editors are saved before launching.
-	 * Valid values are either "always", "never", or "prompt".
-	 * If "always" or "never", launching will save editors (or not) automatically.
-	 * If "prompt", the user will be prompted each time.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH= IDebugUIConstants.PLUGIN_ID + ".save_dirty_editors_before_launch"; //$NON-NLS-1$
-
-	/**
-	 * Preference specifiying that all launches should be DEBUG_MODE if breakpoints exist in the workspace
-	 * @since 3.0
-	 */
-	public static final String PREF_RELAUNCH_IN_DEBUG_MODE = IDebugUIConstants.PLUGIN_ID + ".relaunch_in_debug_mode"; //$NON-NLS-1$
-
-	/**
-	 * Preference specifying that launches should continue when compile errors exist.
-	 * @since 3.0
-	 */
-	public static final String PREF_CONTINUE_WITH_COMPILE_ERROR = IDebugUIConstants.PLUGIN_ID + ".cancel_launch_with_compile_errors"; //$NON-NLS-1$	
-
-	/**
-	 * Boolean preference controlling whether the debugger will force activate the debug
-	 * view when a breakpoint is hit.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_ACTIVATE_DEBUG_VIEW= IDebugUIConstants.PLUGIN_ID + ".activate_debug_view"; //$NON-NLS-1$
-
-	/**
-	 * String preference controlling whether the debugger switching to
-	 * the associated perspective when launching.
-	 * Valid values are either "always", "never", or "prompt".
-	 * If "always" or "never", launching will switch perspectives (or not) automatically.
-	 * If "prompt", the user will be prompted each time.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_SWITCH_TO_PERSPECTIVE= IDebugUIConstants.PLUGIN_ID + ".switch_to_perspective"; //$NON-NLS-1$
-
-	/**
-	 * String preference controlling whether the debugger switching to
-	 * the associated perspective when a launch suspends.
-	 * Valid values are either "always", "never", or "prompt".
-	 * If "always" or "never", suspension will switch perspectives (or not) automatically.
-	 * If "prompt", the user will be prompted each time.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_SWITCH_PERSPECTIVE_ON_SUSPEND= IDebugUIConstants.PLUGIN_ID + ".switch_perspective_on_suspend"; //$NON-NLS-1$
-
-	/**
-	 * String preference controlling whether the debugger waits for a currently
-	 * pending (running or waiting) background build to complete before launching.
-	 * Valid values are either "always", "never", or "prompt".
-	 * If "always" or "never", launching will wait for builds to finish (or not) automatically.
-	 * If "prompt", the user will be prompted each time.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_WAIT_FOR_BUILD= IDebugUIConstants.PLUGIN_ID + ".wait_for_build"; //$NON-NLS-1$
-	
-	/**
-	 * Maximum number of characters to display in the details area of the variables
-	 * view, or 0 if unlimited.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String PREF_MAX_DETAIL_LENGTH = IDebugUIConstants.PLUGIN_ID + ".max_detail_length"; //$NON-NLS-1$
-	    
-	/**
-	 * Font for Memory View
-	 * 
-	 * @since 3.0
-	 */
-	public final static String FONT_NAME = IDebugUIConstants.PLUGIN_ID + ".MemoryViewTableFont"; //$NON-NLS-1$
-	
-	public final static int ADD_UNIT_PER_LINE = 16;	// number of addressable unit per line
-	public final static int CHAR_PER_BYTE = 2;		// number of characters to represent one byte
-
-	/**
-	 * Memory view identifier (value <code>"org.eclipse.debug.ui.MemoryView"</code>).
-	 * @since 3.0
-	 */
-	public static String ID_MEMORY_VIEW = "org.eclipse.debug.ui.MemoryView";  //$NON-NLS-1$
-		
-	/**
-	 * Memory view's rendering view pane identifier (value <code>"org.eclipse.debug.ui.MemoryView.RenderingViewPane"</code>).
-	 * @since 3.1
-	 */
-	public static String ID_RENDERING_VIEW_PANE = RenderingViewPane.RENDERING_VIEW_PANE_ID;
-	
-	/**
-	 * Memory view's rendering view pane identifier for the rendering view pane
-	 * on the left. (value <code>"org.eclipse.debug.ui.MemoryView.RenderingViewPane.1"</code>).
-	 * @since 3.1
-	 */
-	public static String ID_RENDERING_VIEW_PANE_1 = ID_RENDERING_VIEW_PANE + ".1"; //$NON-NLS-1$
-	
-	/**
-	 * Memory view's rendering view pane identifier for the rendering view pane
-	 * on the right. (value <code>"org.eclipse.debug.ui.MemoryView.RenderingViewPane.2"</code>).
-	 * @since 3.1
-	 */
-	public static String ID_RENDERING_VIEW_PANE_2 = ID_RENDERING_VIEW_PANE + ".2"; //$NON-NLS-1$
-	
-	/**
-	 * Memory view's memory block tree viewer's identifier. (value <code>"org.eclipse.debug.ui.MemoryView.MemoryBlocksTreeViewPane"</code>).
-	 * @since 3.1
-	 */
-	public static String ID_MEMORY_BLOCK_TREE_VIEWER = MemoryBlocksTreeViewPane.PANE_ID;
-
-	/** 
-	 * Memory view image identifier
-	 * 
-	 * @since 3.0
-	 * */
-	public static final String IMG_CVIEW_MEMORY_VIEW= "IMG_CVIEW_MEMORY_VIEW";  //$NON-NLS-1$
-
-	/**
-	 * Boolean preference controlling whether the debug view tracks
-	 * views as the user manually opens/closes them for the purpose
-	 * of not automatically opening/closing such views.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_TRACK_VIEWS= IDebugUIConstants.PLUGIN_ID + ".track_views"; //$NON-NLS-1$
-
-    /**
-     * Preference storing memento for the default breakpoint working set in
-     * the breakpoints view.
-     * 
-     * @since 3.1
-     */
-    public static final String MEMENTO_BREAKPOINT_WORKING_SET_NAME = DebugUIPlugin.getUniqueIdentifier() + ".MEMENTO_BREAKPOINT_WORKING_SET_NAME"; //$NON-NLS-1$
-
-    /**
-     * Breakpoint working set identifier.
-     * 
-     * @since 3.1
-     */
-	public static final String ID_BREAKPOINT_WORKINGSET = "org.eclipse.debug.ui.breakpointWorkingSet"; //$NON-NLS-1$
-	
-	
-	/**
-	 * Address at the beginning of a page in a table rendering.
-	 * @since 3.1
-	 */
-	public static final String PROPERTY_PAGE_START_ADDRESS = "pageStart"; //$NON-NLS-1$
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ILaunchHistoryChangedListener.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ILaunchHistoryChangedListener.java
deleted file mode 100644
index 1156d2f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ILaunchHistoryChangedListener.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-/**
- * Implementors of this interface are notified whenever there is a change is
- * made to the launch history. This could be an addition or deletion from either
- * of the run or debug histories, a change to the last launched item, or a
- * change in favorites.
- */
-public interface ILaunchHistoryChangedListener {
-
-	/**
-	 * Notification that the launch history has changed.  Any of the run history, debug history
-	 * or last launched items could have changed.  To examine the history items, retrieve them
-	 * from the <code>DebugUIPlugin</code>.
-	 */
-	public void launchHistoryChanged();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ImageDescriptorRegistry.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ImageDescriptorRegistry.java
deleted file mode 100644
index ac3dcb6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ImageDescriptorRegistry.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
- 
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * A registry that maps <code>ImageDescriptors</code> to <code>Image</code>.
- */
-public class ImageDescriptorRegistry {
-
-	private HashMap fRegistry= new HashMap(10);
-	private Display fDisplay;
-	
-	/**
-	 * Creates a new image descriptor registry for the current or default display,
-	 * respectively.
-	 */
-	public ImageDescriptorRegistry() {
-		this(DebugUIPlugin.getStandardDisplay());
-	}
-	
-	/**
-	 * Creates a new image descriptor registry for the given display. All images
-	 * managed by this registry will be disposed when the display gets disposed.
-	 * 
-	 * @param display the display the images managed by this registry are allocated for 
-	 */
-	public ImageDescriptorRegistry(Display display) {
-		fDisplay= display;
-		Assert.isNotNull(fDisplay);
-		hookDisplay();
-	}
-	
-	/**
-	 * Returns the image associated with the given image descriptor.
-	 * 
-	 * @param descriptor the image descriptor for which the registry manages an image
-	 * @return the image associated with the image descriptor or <code>null</code>
-	 *  if the image descriptor can't create the requested image.
-	 */
-	public Image get(ImageDescriptor descriptor) {
-		if (descriptor == null)
-			descriptor= ImageDescriptor.getMissingImageDescriptor();
-			
-		Image result= (Image)fRegistry.get(descriptor);
-		if (result != null)
-			return result;
-	
-		Assert.isTrue(fDisplay == DebugUIPlugin.getStandardDisplay(), DebugUIMessages.ImageDescriptorRegistry_0); //$NON-NLS-1$
-		result= descriptor.createImage();
-		if (result != null)
-			fRegistry.put(descriptor, result);
-		return result;
-	}
-
-	/**
-	 * Disposes all images managed by this registry.
-	 */	
-	public void dispose() {
-		for (Iterator iter= fRegistry.values().iterator(); iter.hasNext(); ) {
-			Image image= (Image)iter.next();
-			image.dispose();
-		}
-		fRegistry.clear();
-	}
-	
-	private void hookDisplay() {
-		fDisplay.disposeExec(new Runnable() {
-			public void run() {
-				dispose();
-			}	
-		});
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerAnnotation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerAnnotation.java
deleted file mode 100644
index 87c21ef..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerAnnotation.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
- 
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.jface.text.source.Annotation;
-
-/**
- * An annotation for the vertical ruler in text editors that shows one of two
- * images for the current instruction pointer when debugging (one for the top
- * stack frame, one for all others).
- */
-public class InstructionPointerAnnotation extends Annotation {
-
-	/**
-	 * The frame for this instruction pointer annotation.  This is necessary only so that
-	 * instances of this class can be distinguished by equals().
-	 */
-	private IStackFrame fStackFrame;
-	
-	/**
-	 * Construct an instruction pointer annotation for the given stack frame.
-	 * 
-	 * @param stackFrame frame to create an instruction pointer annotation for
-	 * @param isTopFrame whether the given frame is the top stack frame in its thread 
-	 */
-	public InstructionPointerAnnotation(IStackFrame stackFrame, boolean isTopFrame) {
-		super(isTopFrame ? IInternalDebugUIConstants.ANN_INSTR_POINTER_CURRENT: IInternalDebugUIConstants.ANN_INSTR_POINTER_SECONDARY,
-						 false,
-						 isTopFrame ? DebugUIMessages.InstructionPointerAnnotation_0 : DebugUIMessages.InstructionPointerAnnotation_1); //$NON-NLS-1$ //$NON-NLS-2$
-		fStackFrame = stackFrame;
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object other) {
-		if (other instanceof InstructionPointerAnnotation) {
-			return getStackFrame().equals(((InstructionPointerAnnotation)other).getStackFrame());			
-		}
-		return false;
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return getStackFrame().hashCode();
-	}
-
-	/**
-	 * Returns the stack frame associated with this annotation
-	 * 
-	 * @return the stack frame associated with this annotation
-	 */
-	private IStackFrame getStackFrame() {
-		return fStackFrame;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerContext.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerContext.java
deleted file mode 100644
index 57d5fcc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerContext.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
- 
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Represents the context for a single instruction pointer.  This is a convenience class
- * used to store the three objects that comprise an instruction pointer 'context' so it
- * can be stored in collections.
- */
-public class InstructionPointerContext {
-
-	/**
-	 * The text editor for this context.
-	 */
-	private ITextEditor fTextEditor;
-	
-	/**
-	 * The vertical ruler annotation for this context.
-	 */
-	private InstructionPointerAnnotation fAnnotation;
-
-	public InstructionPointerContext(ITextEditor textEditor, InstructionPointerAnnotation annotation) {
-		setTextEditor(textEditor);
-		setAnnotation(annotation);
-	}
-	
-	/**
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object other) {
-		if (other instanceof InstructionPointerContext) {
-			InstructionPointerContext otherContext = (InstructionPointerContext) other;
-			return getAnnotation().equals(otherContext.getAnnotation());
-		}
-		return false;
-	}
-	
-	/**
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return getAnnotation().hashCode();
-	}
-
-	private void setTextEditor(ITextEditor textEditor) {
-		fTextEditor = textEditor;
-	}
-
-	public ITextEditor getTextEditor() {
-		return fTextEditor;
-	}
-
-	private void setAnnotation(InstructionPointerAnnotation annotation) {
-		fAnnotation = annotation;
-	}
-
-	public InstructionPointerAnnotation getAnnotation() {
-		return fAnnotation;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerManager.java
deleted file mode 100644
index 42f8c77..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/InstructionPointerManager.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
- 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.source.IAnnotationModel;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * This class tracks instruction pointer contexts for all active debug targets and threads
- * in the current workbench.  There should only ever be one instance of this class, obtained
- * via 'getDefault()'.
- */
-public class InstructionPointerManager {
-
-	/**
-	 * The singleton instance of this class.
-	 */
-	private static InstructionPointerManager fgDefault;
-
-	/**
-	 * Mapping of IDebugTarget objects to (mappings of IThread objects to lists of instruction
-	 * pointer contexts).
-	 */
-	private Map fDebugTargetMap;
-	
-	/**
-	 * Clients must not instantiate this class.
-	 */
-	private InstructionPointerManager() {
-		fDebugTargetMap = new HashMap();
-	}
-	
-	/**
-	 * Return the singleton instance of this class, creating it if necessary.
-	 */
-	public static InstructionPointerManager getDefault() {
-		if (fgDefault == null) {
-			fgDefault = new InstructionPointerManager();
-		}
-		return fgDefault;
-	}
-	
-	/**
-	 * Add an instruction pointer annotation in the specified editor for the 
-	 * specified stack frame.
-	 */
-	public void addAnnotation(ITextEditor textEditor, IStackFrame stackFrame) {
-		
-		IDocumentProvider docProvider = textEditor.getDocumentProvider();
-		IEditorInput editorInput = textEditor.getEditorInput();
-        // If there is no annotation model, there's nothing more to do
-        IAnnotationModel annModel = docProvider.getAnnotationModel(editorInput);
-        if (annModel == null) {
-            return;
-        }        
-		IThread thread = stackFrame.getThread();
-		IStackFrame tos = null;
-		try {
-			tos = thread.getTopStackFrame();
-		} catch (DebugException de) {
-		}
-        // Create the annotation object
-		InstructionPointerAnnotation instPtrAnnotation = new InstructionPointerAnnotation(stackFrame, tos == null || stackFrame.equals(tos));
-		
-		// Create the Position object that specifies a location for the annotation
-		Position position = null;
-		int charStart = -1;
-		int length = -1; 
-		try {
-			charStart = stackFrame.getCharStart();
-			length = stackFrame.getCharEnd() - charStart;
-		} catch (DebugException de) {
-		}
-		if (charStart < 0) {
-			IDocument doc = docProvider.getDocument(editorInput);
-			if (doc == null) {
-				return;
-			}
-			try {
-				int lineNumber = stackFrame.getLineNumber() - 1;
-				IRegion region = doc.getLineInformation(lineNumber);
-				charStart = region.getOffset();
-				length = region.getLength();
-			} catch (BadLocationException ble) {
-				return;
-			} catch (DebugException de) {
-				return;
-			}
-		}
-		if (charStart < 0) {
-			return;
-		}
-		position = new Position(charStart, length);
-		
-		// Add the annotation at the position to the editor's annotation model.
-		annModel.removeAnnotation(instPtrAnnotation);
-		annModel.addAnnotation(instPtrAnnotation, position);	
-		
-		// Retrieve the list of instruction pointer contexts
-		IDebugTarget debugTarget = stackFrame.getDebugTarget();
-		Map threadMap = (Map) fDebugTargetMap.get(debugTarget);
-		if (threadMap == null) {
-			threadMap = new HashMap();	
-			fDebugTargetMap.put(debugTarget, threadMap);		
-		}
-		List contextList = (List) threadMap.get(thread);
-		if (contextList == null) {
-			contextList = new ArrayList();
-			threadMap.put(thread, contextList);
-		}
-		
-		// Create a context object & add it to the list
-		InstructionPointerContext context = new InstructionPointerContext(textEditor, instPtrAnnotation);
-		contextList.remove(context);
-		contextList.add(context);
-	}
-	
-	/**
-	 * Remove all annotations associated with the specified debug target that this class
-	 * is tracking.
-	 */
-	public void removeAnnotations(IDebugTarget debugTarget) {
-		
-		// Retrieve the mapping of threads to context lists
-		Map threadMap = (Map) fDebugTargetMap.get(debugTarget);
-		if (threadMap == null) {
-			return;
-		}
-		
-		// Remove annotations for all threads associated with the debug target
-		Object[] threads = threadMap.keySet().toArray();
-		for (int i = 0; i < threads.length; i++) {
-			IThread thread = (IThread) threads[i];
-			removeAnnotations(thread, threadMap);
-		}
-		
-		// Remove the entry for the debug target
-		fDebugTargetMap.remove(debugTarget);
-	}
-	
-	/**
-	 * Remove all annotations associated with the specified thread that this class
-	 * is tracking.
-	 */
-	public void removeAnnotations(IThread thread) {
-		
-		// Retrieve the thread map
-		IDebugTarget debugTarget = thread.getDebugTarget();
-		Map threadMap = (Map) fDebugTargetMap.get(debugTarget);
-		if (threadMap == null) {
-			return;
-		}
-		
-		// Remove all annotations for the thread
-		removeAnnotations(thread, threadMap);
-	}
-	
-	/**
-	 * Remove all annotations associated with the specified thread.  
-	 */
-	private void removeAnnotations(IThread thread, Map threadMap) {
-		
-		// Retrieve the context list and remove each corresponding annotation
-		List contextList = (List) threadMap.get(thread);
-		if (contextList != null) {
-			Iterator contextIterator = contextList.iterator();
-			while (contextIterator.hasNext()) {
-				InstructionPointerContext context = (InstructionPointerContext) contextIterator.next();
-				removeAnnotation(context.getTextEditor(), context.getAnnotation());
-			}
-		}
-		
-		// Remove the thread map
-		threadMap.remove(thread);						
-	}
-	
-	/**
-	 * Remove the specified annotation from the specified text editor.
-	 */
-	private void removeAnnotation(ITextEditor textEditor, InstructionPointerAnnotation annotation) {
-		IDocumentProvider docProvider = textEditor.getDocumentProvider();
-		if (docProvider != null) {
-			IAnnotationModel annotationModel = docProvider.getAnnotationModel(textEditor.getEditorInput());
-			if (annotationModel != null) {
-				annotationModel.removeAnnotation(annotation);
-			}
-		}
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/LazyModelPresentation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/LazyModelPresentation.java
deleted file mode 100644
index 0a99ad7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/LazyModelPresentation.java
+++ /dev/null
@@ -1,376 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.core.ListenerList;
-import org.eclipse.debug.internal.ui.views.variables.IndexedVariablePartition;
-import org.eclipse.debug.ui.IDebugEditorPresentation;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IValueDetailListener;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.jface.viewers.IFontProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-
-/**
- * A proxy to an IDebugModelPresentation extension. Instantiates the extension
- * when it is needed.
- */
-
-public class LazyModelPresentation implements IDebugModelPresentation, IDebugEditorPresentation, IColorProvider, IFontProvider {
-	
-	/**
-	 * A temporary mapping of attribute ids to their values
-	 * @see IDebugModelPresentation#setAttribute
-	 */
-	protected HashMap fAttributes= new HashMap(3);
-
-	/**
-	 * The config element that defines the extension
-	 */
-	protected IConfigurationElement fConfig = null;
-	
-	/**
-	 * The actual presentation instance - null until called upon
-	 */
-	protected IDebugModelPresentation fPresentation = null;
-	
-	/**
-	 * Temp holding for listeners - we do not add to presentation until
-	 * it needs to be instantiated.
-	 */
-	protected ListenerList fListeners= new ListenerList(5);	
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugEditorPresentation#removeAnntations(org.eclipse.ui.IEditorPart, org.eclipse.debug.core.model.IThread)
-	 */
-	public void removeAnnotations(IEditorPart editorPart, IThread thread) {
-		IDebugModelPresentation presentation = getPresentation();
-		if (presentation instanceof IDebugEditorPresentation) {
-			((IDebugEditorPresentation)presentation).removeAnnotations(editorPart, thread);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugEditorPresentation#addAnnotations(org.eclipse.ui.IEditorPart, org.eclipse.debug.core.model.IStackFrame)
-	 */
-	public boolean addAnnotations(IEditorPart editorPart, IStackFrame frame) {
-		IDebugModelPresentation presentation = getPresentation();
-		if (presentation instanceof IDebugEditorPresentation) {
-			return ((IDebugEditorPresentation)presentation).addAnnotations(editorPart, frame);
-		}
-		return false;
-	}
-
-	/**
-	 * Constructs a lazy presentation from the config element.
-	 */
-	public LazyModelPresentation(IConfigurationElement configElement) {
-		fConfig = configElement;
-	}
-
-	/**
-	 * @see IDebugModelPresentation#getImage(Object)
-	 */
-	public Image getImage(Object element) {
-		Image image = getPresentation().getImage(element);
-        if (image == null) {
-            image = getDefaultImage(element);
-        }
-        if (image != null) {
-            int flags= computeAdornmentFlags(element);
-            if (flags > 0) {
-                CompositeDebugImageDescriptor descriptor= new CompositeDebugImageDescriptor(image, flags);
-                return DebugUIPlugin.getImageDescriptorRegistry().get(descriptor);
-            }
-        }
-        return image;
-	}
-
-	/**
-     * Computes and return common adornment flags for the given element.
-     * 
-     * @param element
-     * @return adornment flags defined in CompositeDebugImageDescriptor
-     */
-    private int computeAdornmentFlags(Object element) {
-        if (element instanceof IBreakpoint) {
-            if (!DebugPlugin.getDefault().getBreakpointManager().isEnabled()) {
-                return CompositeDebugImageDescriptor.SKIP_BREAKPOINT;
-            }
-        }
-        return 0;
-    }
-
-    /**
-     * Returns a default text label for the debug element
-     */
-    protected String getDefaultText(Object element) {
-        return DebugUIPlugin.getDefaultLabelProvider().getText(element);
-    }
-
-    /**
-     * Returns a default image for the debug element
-     */
-    protected Image getDefaultImage(Object element) {
-        return DebugUIPlugin.getDefaultLabelProvider().getImage(element);
-    }
-    
-    /**
-	 * @see IDebugModelPresentation#getText(Object)
-	 */
-	public String getText(Object element) {
-        if (!(element instanceof IndexedVariablePartition)) {
-            // Attempt to delegate        
-            String text = getPresentation().getText(element);
-            if (text != null) {
-                return text;
-            }
-        }
-        // If no delegate returned a text label, use the default
-        if (showVariableTypeNames()) {
-            try {
-                if (element instanceof IExpression) {
-                    StringBuffer buf = new StringBuffer();
-                    IValue value = ((IExpression)element).getValue();
-                    if (value != null) {
-                        buf.append(value.getReferenceTypeName());
-                        buf.append(' ');
-                    }
-                    buf.append(getDefaultText(element));
-                    return buf.toString(); 
-                } else if (element instanceof IVariable) {
-                    return new StringBuffer(((IVariable)element).getValue().getReferenceTypeName()).append(' ').append(getDefaultText(element)).toString();
-                }
-            } catch (DebugException de) {
-                DebugUIPlugin.log(de);
-            }
-        }
-        return getDefaultText(element);
-	}
-	
-    /**
-     * Whether or not to show variable type names.
-     * This option is configured per model presentation.
-     * This allows this option to be set per view, for example.
-     */
-    protected boolean showVariableTypeNames() {
-        Boolean show= (Boolean) fAttributes.get(DISPLAY_VARIABLE_TYPE_NAMES);
-        show= show == null ? Boolean.FALSE : show;
-        return show.booleanValue();
-    }
-    
-	/**
-	 * @see IDebugModelPresentation#computeDetail(IValue, IValueDetailListener)
-	 */
-	public void computeDetail(IValue value, IValueDetailListener listener) {
-		getPresentation().computeDetail(value, listener);
-	}	
-	
-	/**
-	 * @see ISourcePresentation#getEditorInput(Object)
-	 */
-	public IEditorInput getEditorInput(Object element) {
-		return getPresentation().getEditorInput(element);
-	}
-	
-	/**
-	 * @see ISourcePresentation#getEditorId(IEditorInput, Object)
-	 */
-	public String getEditorId(IEditorInput input, Object inputObject) {
-		return getPresentation().getEditorId(input, inputObject);
-	}
-
-	/**
-	 * @see IBaseLabelProvider#addListener(ILabelProviderListener)
-	 */
-	public void addListener(ILabelProviderListener listener) {
-		if (fPresentation != null) {
-			getPresentation().addListener(listener);
-		}
-		fListeners.add(listener);
-	}
-
-	/**
-	 * @see IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		if (fPresentation != null) {
-			getPresentation().dispose();
-		}
-		fListeners = null;
-	}
-
-	/**
-	 * @see IBaseLabelProvider#isLabelProperty(Object, String)
-	 */
-	public boolean isLabelProperty(Object element, String property) {
-		if (fPresentation != null) {
-			return getPresentation().isLabelProperty(element, property);
-		} 
-		return false;
-	}
-
-	/**
-	 * @see IBaseLabelProvider#removeListener(ILabelProviderListener)
-	 */
-	public void removeListener(ILabelProviderListener listener) {
-		if (fPresentation != null) {
-			getPresentation().removeListener(listener);
-		}
-		ListenerList listeners = fListeners;
-		if (listeners != null) {
-		    listeners.remove(listener);
-		}
-	}
-	
-	/**
-	 * Returns the real presentation, instantiating if required.
-	 */
-	protected IDebugModelPresentation getPresentation() {
-		if (fPresentation == null) {
-		    synchronized (this) {
-		        if (fPresentation != null) {
-		            // In the case that the synchronization is enforced, the "blocked" thread
-		            // should return the presentation configured by the "owning" thread.
-		            return fPresentation;
-		        }
-				try {
-					IDebugModelPresentation tempPresentation= (IDebugModelPresentation) DebugUIPlugin.createExtension(fConfig, "class"); //$NON-NLS-1$
-					// configure it
-					if (fListeners != null) {
-						Object[] list = fListeners.getListeners();
-						for (int i= 0; i < list.length; i++) {
-						    tempPresentation.addListener((ILabelProviderListener)list[i]);
-						}
-					}
-					Iterator keys= fAttributes.keySet().iterator();
-					while (keys.hasNext()) {
-						String key= (String)keys.next();
-						tempPresentation.setAttribute(key, fAttributes.get(key));
-					}
-					// Only assign to the instance variable after it's been configured. Otherwise,
-					// the synchronization is defeated (a thread could return the presentation before
-					// it's been configured).
-					fPresentation= tempPresentation;
-				} catch (CoreException e) {
-					DebugUIPlugin.log(e);
-				}
-		    }
-		}
-		return fPresentation;
-	}
-
-	/**
-	 * @see IDebugModelPresentation#setAttribute(String, Object)
-	 */
-	public void setAttribute(String id, Object value) {
-		if (value == null) {
-			return;
-		}
-		if (fPresentation != null) {
-			getPresentation().setAttribute(id, value);
-		}
-
-		fAttributes.put(id, value);
-	}
-	
-	/**
-	 * Returns the identifier of the debug model this
-	 * presentation is registered for.
-	 */
-	public String getDebugModelIdentifier() {
-		return fConfig.getAttribute("id"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns a new source viewer configuration for the details
-	 * area of the variables view, or <code>null</code> if
-	 * unspecified.
-	 * 
-	 * @return source viewer configuration or <code>null</code>
-	 * @exception CoreException if unable to create the specified
-	 * 	source viewer configuration
-	 */
-	public SourceViewerConfiguration newDetailsViewerConfiguration() throws CoreException {
-		String attr  = fConfig.getAttribute("detailsViewerConfiguration"); //$NON-NLS-1$
-		if (attr != null) {
-			return (SourceViewerConfiguration)fConfig.createExecutableExtension("detailsViewerConfiguration"); //$NON-NLS-1$
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns a copy of the attributes in this model presentation.
-	 * 
-	 * @return a copy of the attributes in this model presentation
-	 * @since 3.0
-	 */
-	public Map getAttributeMap() {
-		return (Map) fAttributes.clone();
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IColorProvider#getForeground(java.lang.Object)
-     */
-    public Color getForeground(Object element) {
-        IDebugModelPresentation presentation = getPresentation();
-        if (presentation instanceof IColorProvider) {
-            IColorProvider colorProvider = (IColorProvider) presentation;
-            return colorProvider.getForeground(element);
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IColorProvider#getBackground(java.lang.Object)
-     */
-    public Color getBackground(Object element) {
-        IDebugModelPresentation presentation = getPresentation();
-        if (presentation instanceof IColorProvider) {
-            IColorProvider colorProvider = (IColorProvider) presentation;
-            return colorProvider.getBackground(element);
-        }
-        return null;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IFontProvider#getFont(java.lang.Object)
-     */
-    public Font getFont(Object element) {
-        IDebugModelPresentation presentation = getPresentation();
-        if (presentation instanceof IFontProvider) {
-            IFontProvider fontProvider = (IFontProvider) presentation;
-            return fontProvider.getFont(element);
-        }
-        return null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/MultipleInputDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/MultipleInputDialog.java
deleted file mode 100644
index 0fd757d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/MultipleInputDialog.java
+++ /dev/null
@@ -1,372 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.StringVariableSelectionDialog;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-
-public class MultipleInputDialog extends Dialog {
-	protected static final String FIELD_NAME = "FIELD_NAME"; //$NON-NLS-1$
-	protected static final int TEXT = 100;
-	protected static final int BROWSE = 101;
-	protected static final int VARIABLE = 102;
-	
-	protected Composite panel;
-	
-	protected List fieldList = new ArrayList();
-	protected List controlList = new ArrayList();
-	protected List validators = new ArrayList();
-	protected Map valueMap = new HashMap();
-
-	private String title;
-	
-	
-	
-	public MultipleInputDialog(Shell shell, String title) {
-		super(shell);
-		this.title = title;
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
-	 */
-	protected void configureShell(Shell shell) {
-		super.configureShell(shell);
-		if (title != null) {
-			shell.setText(title);
-		}
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createButtonBar(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createButtonBar(Composite parent) {
-		Control bar = super.createButtonBar(parent);
-		validateFields();
-		return bar;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		Composite container = (Composite)super.createDialogArea(parent);
-		container.setLayout(new GridLayout(2, false));
-		container.setLayoutData(new GridData(GridData.FILL_BOTH));
-		
-		panel = new Composite(container, SWT.NONE);
-		GridLayout layout = new GridLayout(2, false);
-		panel.setLayout(layout);
-		panel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		
-		for (Iterator i = fieldList.iterator(); i.hasNext();) {
-			FieldSummary field = (FieldSummary)i.next();
-			switch(field.type) {
-				case TEXT:
-					createTextField(field.name, field.initialValue, field.allowsEmpty);
-					break;
-				case BROWSE:
-					createBrowseField(field.name, field.initialValue, field.allowsEmpty);
-					break;
-				case VARIABLE:
-					createVariablesField(field.name, field.initialValue, field.allowsEmpty);
-					break;
-			}
-		}
-		
-		fieldList = null; // allow it to be gc'd
-		Dialog.applyDialogFont(container);
-		return container;
-	}
-	
-	public void addBrowseField(String labelText, String initialValue, boolean allowsEmpty) {
-		fieldList.add(new FieldSummary(BROWSE, labelText, initialValue, allowsEmpty));
-	}
-	public void addTextField(String labelText, String initialValue, boolean allowsEmpty) {
-		fieldList.add(new FieldSummary(TEXT, labelText, initialValue, allowsEmpty));
-	}
-	public void addVariablesField(String labelText, String initialValue, boolean allowsEmpty) {
-		fieldList.add(new FieldSummary(VARIABLE, labelText, initialValue, allowsEmpty));
-	}
-
-	protected void createTextField(String labelText, String initialValue, boolean allowEmpty) { 
-		Label label = new Label(panel, SWT.NONE);
-		label.setText(labelText);
-		label.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING));
-		
-		final Text text = new Text(panel, SWT.SINGLE | SWT.BORDER);
-		text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		text.setData(FIELD_NAME, labelText);
-		
-		// make sure rows are the same height on both panels.
-		label.setSize(label.getSize().x, text.getSize().y); 
-		
-		if (initialValue != null) {
-			text.setText(initialValue);
-		}
-		
-		if (!allowEmpty) {
-			validators.add(new Validator() {
-				public boolean validate() {
-					return !text.getText().equals(""); //$NON-NLS-1$
-				}
-			});
-			text.addModifyListener(new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					validateFields();
-				}
-			});
-		}
-		
-		controlList.add(text);
-	}
-	
-	protected void createBrowseField(String labelText, String initialValue, boolean allowEmpty) {
-		Label label = new Label(panel, SWT.NONE);
-		label.setText(labelText);
-		label.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING));
-		
-		Composite comp = new Composite(panel, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight=0;
-		layout.marginWidth=0;
-		comp.setLayout(layout);
-		comp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		
-		final Text text = new Text(comp, SWT.SINGLE | SWT.BORDER);
-		GridData data = new GridData(GridData.FILL_HORIZONTAL);
-		data.widthHint = 200;
-		text.setLayoutData(data);
-		text.setData(FIELD_NAME, labelText);
-
-		// make sure rows are the same height on both panels.
-		label.setSize(label.getSize().x, text.getSize().y); 
-		
-		if (initialValue != null) {
-			text.setText(initialValue);
-		}
-
-		if (!allowEmpty) {
-			validators.add(new Validator() {
-				public boolean validate() {
-					return !text.getText().equals(""); //$NON-NLS-1$
-				}
-			});
-
-			text.addModifyListener(new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					validateFields();
-				}
-			});
-		}
-		
-		Button button = createButton(comp, IDialogConstants.IGNORE_ID, DebugUIMessages.MultipleInputDialog_6, false); //$NON-NLS-1$
-		button.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				DirectoryDialog dialog = new DirectoryDialog(getShell());
-				dialog.setMessage(DebugUIMessages.MultipleInputDialog_7);  //$NON-NLS-1$
-				String currentWorkingDir = text.getText();
-				if (!currentWorkingDir.trim().equals("")) { //$NON-NLS-1$
-					File path = new File(currentWorkingDir);
-					if (path.exists()) {
-						dialog.setFilterPath(currentWorkingDir);
-					}			
-				}
-				
-				String selectedDirectory = dialog.open();
-				if (selectedDirectory != null) {
-					text.setText(selectedDirectory);
-				}		
-			}
-		});
-
-		controlList.add(text);
-		
-	}
-	
-	
-	public void createVariablesField(String labelText, String initialValue, boolean allowEmpty) {
-		Label label = new Label(panel, SWT.NONE);
-		label.setText(labelText);
-		label.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING));
-		
-		Composite comp = new Composite(panel, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight=0;
-		layout.marginWidth=0;
-		comp.setLayout(layout);
-		comp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		
-		final Text text = new Text(comp, SWT.SINGLE | SWT.BORDER);
-		GridData data = new GridData(GridData.FILL_HORIZONTAL);
-		data.widthHint = 200;
-		text.setLayoutData(data);
-		text.setData(FIELD_NAME, labelText);
-
-		// make sure rows are the same height on both panels.
-		label.setSize(label.getSize().x, text.getSize().y); 
-		
-		if (initialValue != null) {
-			text.setText(initialValue);
-		}
-
-		if (!allowEmpty) {
-			validators.add(new Validator() {
-				public boolean validate() {
-					return !text.getText().equals(""); //$NON-NLS-1$
-				}
-			});
-
-			text.addModifyListener(new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					validateFields();
-				}
-			});
-		}
-		
-		Button button = createButton(comp, IDialogConstants.IGNORE_ID, DebugUIMessages.MultipleInputDialog_8, false); //$NON-NLS-1$
-		button.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				StringVariableSelectionDialog dialog = new StringVariableSelectionDialog(getShell());
-				int code = dialog.open();
-				if (code == IDialogConstants.OK_ID) {
-					String variable = dialog.getVariableExpression();
-					if (variable != null) {
-						text.insert(variable);
-					}
-				}
-			}
-		});
-
-		controlList.add(text);
-				
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		for (Iterator i = controlList.iterator(); i.hasNext(); ) {
-			Control control = (Control)i.next();
-			if (control instanceof Text) {
-				valueMap.put(control.getData(FIELD_NAME), ((Text)control).getText());
-			}
-		}
-		controlList = null;
-		super.okPressed();
-	}
-
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#open()
-	 */
-	public int open() {
-		applyDialogFont(panel);
-		return super.open();
-	}
-	
-	public Object getValue(String key) {
-		return valueMap.get(key);
-	}
-	
-	public String getStringValue(String key) {
-		return  (String) getValue(key);
-	}
-	
-	public void validateFields() {
-		for(Iterator i = validators.iterator(); i.hasNext(); ) {
-			Validator validator = (Validator) i.next();
-			if (!validator.validate()) {
-				getButton(IDialogConstants.OK_ID).setEnabled(false);
-				return;
-			}
-		}
-		getButton(IDialogConstants.OK_ID).setEnabled(true);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialLocation(org.eclipse.swt.graphics.Point)
-	 */
-	protected Point getInitialLocation(Point initialSize) {
-		Point initialLocation= DialogSettingsHelper.getInitialLocation(getDialogSettingsSectionName());
-		if (initialLocation != null) {
-			return initialLocation;
-		}
-		return super.getInitialLocation(initialSize);
-	}
-
-	
-	protected String getDialogSettingsSectionName() {
-		return IDebugUIConstants.PLUGIN_ID + ".MULTIPLE_INPUT_DIALOG_2"; //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialSize()
-	 */
-	protected Point getInitialSize() {
-		Point size = super.getInitialSize();
-		return DialogSettingsHelper.getInitialSize(getDialogSettingsSectionName(), size);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#close()
-	 */
-	public boolean close() {
-		DialogSettingsHelper.persistShellGeometry(getShell(), getDialogSettingsSectionName());
-		return super.close();
-	}
-
-	protected class FieldSummary {
-		int type;
-		String name;
-		String initialValue;
-		boolean allowsEmpty;
-		
-		public FieldSummary(int type, String name, String initialValue, boolean allowsEmpty) {
-			this.type = type;
-			this.name = name;
-			this.initialValue = initialValue;
-			this.allowsEmpty = allowsEmpty;
-		}
-	}
-	
-	protected class Validator {
-		boolean validate() {
-			return true;
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/Pair.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/Pair.java
deleted file mode 100644
index 69a6bf3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/Pair.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-/**
- * Pair is a basic tuple of two with classic first and second members.
- * Since Java is non-polymorphic, we use Object(s) for the pair elements
- * and cast our brains out.
- */
-public class Pair {
-	public Object fFirst = null;
-	public Object fSecond = null;
-	public Pair(Object first, Object second) {
-		fFirst = first;
-		fSecond = second;
-	}
-	/*
-	 * String accessors
-	 */
-	public String firstAsString() {
-		return (String) fFirst;
-	}
-	public String secondAsString() {
-		return (String) fSecond;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/PixelConverter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/PixelConverter.java
deleted file mode 100644
index bc97afe..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/PixelConverter.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.widgets.Control;
-
-public class PixelConverter {
-	
-	private FontMetrics fFontMetrics;
-	
-	public PixelConverter(Control control) {
-		GC gc = new GC(control);
-		gc.setFont(control.getFont());
-		fFontMetrics= gc.getFontMetrics();
-		gc.dispose();
-	}
-		
-	/**
-	 * @see DialogPage#convertHorizontalDLUsToPixels
-	 */
-	public int convertHorizontalDLUsToPixels(int dlus) {
-		return Dialog.convertHorizontalDLUsToPixels(fFontMetrics, dlus);
-	}
-	
-	/**
-	 * @see DialogPage#convertWidthInCharsToPixels
-	 */
-	public int convertWidthInCharsToPixels(int chars) {
-		return Dialog.convertWidthInCharsToPixels(fFontMetrics, chars);
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ResourceExtender.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ResourceExtender.java
deleted file mode 100644
index c6c33ad..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/ResourceExtender.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileReader;
-import java.io.IOException;
-import java.util.regex.Pattern;
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.ui.IPathEditorInput;
-
-/**
- * ResourceExtender provides property testers for the XML expression language
- * evaluation. We provide a copy in Debug so that launch shortcuts can add
- * contextual launch enablement that does not require their plugins to be
- * loaded. Copied from
- * org.eclipse.jdt.internal.corext.refactoring.participants.xml.ResourceExtender
- */
-public class ResourceExtender extends PropertyTester {
-
-    private static final String PROPERTY_MATCHES_PATTERN = "matchesPattern"; //$NON-NLS-1$
-
-    private static final String PROJECT_NATURE = "projectNature"; //$NON-NLS-1$
-
-    private static final String PROPERTY_MATCHES_CONTENT_TYPE = "matchesContentType"; //$NON-NLS-1$
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
-     */
-    public boolean test(Object receiver, String method, Object[] args, Object expectedValue) {
-        IResource resource = (IResource) ((IAdaptable) receiver).getAdapter(IResource.class);
-        if (resource == null) {
-        	if (PROPERTY_MATCHES_CONTENT_TYPE.equals(method)) {
-		        IPathEditorInput editorInput = (IPathEditorInput) ((IAdaptable) receiver).getAdapter(IPathEditorInput.class);
-		        if (editorInput != null) {
-		            IPath path= editorInput.getPath();
-		            File file= path.toFile();
-		            if (file.exists()) {
-		                try {
-		                    FileReader reader= new FileReader(file);
-		                    IContentType contentType= Platform.getContentTypeManager().getContentType((String)expectedValue);
-		                    IContentDescription description= contentType.getDescriptionFor(reader, IContentDescription.ALL);
-		                    reader.close();
-		                    if (description != null) {
-		                        IContentType type = description.getContentType();
-		                        return type != null && expectedValue.equals(type.getId());
-		                    }
-		                } catch (FileNotFoundException e) {
-		                    return false;
-		                } catch (IOException e) {
-		                    return false;
-		                }
-		            }
-		        }
-        	}
-        } else {
-            if (PROPERTY_MATCHES_PATTERN.equals(method)) { //$NON-NLS-1$
-                String fileName = resource.getName();
-                String expected = (String) expectedValue;
-                expected = expected.replaceAll("\\.", "\\\\.");  //$NON-NLS-1$//$NON-NLS-2$
-                expected = expected.replaceAll("\\*", "\\.\\*");  //$NON-NLS-1$//$NON-NLS-2$
-                Pattern pattern = Pattern.compile(expected);
-                boolean retVal = pattern.matcher(fileName).find();
-                return retVal;
-            } else if (PROJECT_NATURE.equals(method)) {
-                try {
-                    IProject proj = resource.getProject();
-                    return proj.isAccessible() && proj.hasNature((String) expectedValue);
-                } catch (CoreException e) {
-                    return false;
-                }
-            } else if (PROPERTY_MATCHES_CONTENT_TYPE.equals(method)) {
-                return matchesContentType(resource, (String) expectedValue);
-            }
-        }
-        return false;
-    }
-
-    /**
-     * Returns whether or not the given file's content type matches the
-     * specified content type.
-     * 
-     * Content types are looked up in the content type registry.
-     * 
-     * @return whether or not the given resource has the given content type
-     */
-    private boolean matchesContentType(IResource resource, String contentType) {
-        if (resource == null || !(resource instanceof IFile) || !resource.exists()) {
-            return false;
-        }
-        IFile file = (IFile) resource;
-        IContentDescription description;
-        try {
-            description = file.getContentDescription();
-        } catch (CoreException e) {
-            return false;
-        }
-        if (description != null) {
-            IContentType type = description.getContentType();
-            return type != null && contentType.equals(type.getId());
-        }
-        return false;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/SWTUtil.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/SWTUtil.java
deleted file mode 100644
index b3feffe..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/SWTUtil.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * Utility class to simplify access to some SWT resources. 
- */
-public class SWTUtil {
-		
-	/**
-	 * Returns a width hint for a button control.
-	 */
-	public static int getButtonWidthHint(Button button) {
-		PixelConverter converter= new PixelConverter(button);
-		int widthHint= converter.convertHorizontalDLUsToPixels(IDialogConstants.BUTTON_WIDTH);
-		return Math.max(widthHint, button.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);
-	}
-	
-	/**
-	 * Sets width and height hint for the button control.
-	 * <b>Note:</b> This is a NOP if the button's layout data is not
-	 * an instance of <code>GridData</code>.
-	 * 
-	 * @param	the button for which to set the dimension hint
-	 */		
-	public static void setButtonDimensionHint(Button button) {
-		Assert.isNotNull(button);
-		Object gd= button.getLayoutData();
-		if (gd instanceof GridData) {
-			((GridData)gd).widthHint= getButtonWidthHint(button);	
-			((GridData)gd).horizontalAlignment = GridData.FILL;	 
-		}
-	}		
-	
-	
-	/**
-	 * Creates and returns a new push button with the given
-	 * label and/or image.
-	 * 
-	 * @param parent parent control
-	 * @param label button label or <code>null</code>
-	 * @param image image of <code>null</code>
-	 * 
-	 * @return a new push button
-	 */
-	public static Button createPushButton(Composite parent, String label, Image image) {
-		Button button = new Button(parent, SWT.PUSH);
-		button.setFont(parent.getFont());
-		if (image != null) {
-			button.setImage(image);
-		}
-		if (label != null) {
-			button.setText(label);
-		}
-		GridData gd = new GridData();
-		button.setLayoutData(gd);	
-		SWTUtil.setButtonDimensionHint(button);
-		return button;	
-	}	
-
-	/**
-	 * Creates and returns a new radio button with the given
-	 * label.
-	 * 
-	 * @param parent parent control
-	 * @param label button label or <code>null</code>
-	 * 
-	 * @return a new radio button
-	 */
-	public static Button createRadioButton(Composite parent, String label) {
-		Button button = new Button(parent, SWT.RADIO);
-		button.setFont(parent.getFont());
-		if (label != null) {
-			button.setText(label);
-		}
-		GridData gd = new GridData();
-		button.setLayoutData(gd);	
-		SWTUtil.setButtonDimensionHint(button);
-		return button;	
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/StepFilterManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/StepFilterManager.java
deleted file mode 100644
index 44766df..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/StepFilterManager.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IStepFilters;
-
-/**
- * As targets are launched, this manager sets its step filter
- * support settings according to the "use step filter" setting.
- * 
- * @since 3.0
- */
-public class StepFilterManager implements ILaunchListener {
-
-	/**
-	 * The step filter manager is instantiated by the debug UI plug-in,
-	 * and should be accessed from the <code>DebugUIPlugin</code> class.
-	 */
-	protected StepFilterManager() {
-		DebugPlugin.getDefault().getLaunchManager().addLaunchListener(this);
-	}
-	
-	/**
-	 * This method is called by the debug UI plug-in at shutdown.
-	 */
-	public void shutdown() {
-		DebugPlugin.getDefault().getLaunchManager().removeLaunchListener(this);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.ILaunchListener#launchAdded(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchAdded(ILaunch launch) {
-		launchChanged(launch);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.ILaunchListener#launchChanged(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchChanged(ILaunch launch) {
-		boolean useStepFilters = isUseStepFilters();
-		IDebugTarget[] targets = launch.getDebugTargets();
-		for (int i = 0; i < targets.length; i++) {
-			IDebugTarget target = targets[i];
-			if (target instanceof IStepFilters) {
-				IStepFilters filters = (IStepFilters) target;
-				if (filters.isStepFiltersEnabled() != useStepFilters) {
-					filters.setStepFiltersEnabled(useStepFilters);
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Returns whether the 'use step filters' preference is on.
-	 * 
-	 * @return whether to use step filters
-	 */
-	public boolean isUseStepFilters() {
-		return DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IInternalDebugUIConstants.PREF_USE_STEP_FILTERS);
-	}
-	
-	/**
-	 * Sets whether to use step filters.
-	 * 
-	 * @param useFilters whether to use step filters
-	 */
-	public void setUseStepFilters(boolean useFilters) {
-		DebugUIPlugin.getDefault().getPreferenceStore().setValue(IInternalDebugUIConstants.PREF_USE_STEP_FILTERS, useFilters);
-		ILaunch[] launchs = DebugPlugin.getDefault().getLaunchManager().getLaunches();
-		for (int i = 0; i < launchs.length; i++) {
-			ILaunch launch = launchs[i];
-			launchChanged(launch);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.ILaunchListener#launchRemoved(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchRemoved(ILaunch launch) {
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariableValueEditorManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariableValueEditorManager.java
deleted file mode 100644
index c02ac4d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariableValueEditorManager.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.IVariableValueEditor;
-
-/**
- * Manager which provides the variable value editors contributed
- * via the org.eclipse.debug.ui.variableValueEditors extension
- * point.
- * 
- * @see org.eclipse.debug.ui.actions.IVariableValueEditor
- * @since 3.1
- */
-public class VariableValueEditorManager {
-    
-    /**
-     * Mapping of debug model identifiers to variable value editors.
-     * The keys in this map are always Strings (model ids).
-     * The values in the map are IConfigurationElements at startup,
-     * which are replaced by IVariableValueEditors as the editors
-     * are instantiated (editors are loaded lazily, then cached).
-     */
-    private Map fEditorMap= new HashMap();
-    
-    /**
-     * The singleton instance of this manager.
-     */
-    private static VariableValueEditorManager fgManager;
-
-    /**
-     * Creates a new variable value editor manager. Clients
-     * should access the singleton instance of this manager
-     * by calling getDefault()
-     */
-    private VariableValueEditorManager() {
-        loadVariableEditors();
-    }
-
-    /**
-     * Returns the singleton instance of this manager.
-     * @return the singleton instance of this manager
-     */
-    public static VariableValueEditorManager getDefault() {
-        if (fgManager == null) {
-            fgManager= new VariableValueEditorManager();
-        }
-        return fgManager;
-    }
-    
-    /**
-     * Returns the variable value editor associated with the given debug
-     * model identifier or <code>null</code> if no editor has been supplied
-     * for the given debug model.
-     * @param modelIdentifier the debug model identifier
-     * @return the variable value editor associated with the given debug model
-     *  identifier or <code>null</code>
-     */
-    public IVariableValueEditor getVariableValueEditor(String modelIdentifier) {
-        Object object = fEditorMap.get(modelIdentifier);
-        IVariableValueEditor editor= null;
-        if (object instanceof IVariableValueEditor) {
-            editor= (IVariableValueEditor) object;
-        } else if (object instanceof IConfigurationElement) {
-            try {
-                editor = (IVariableValueEditor) ((IConfigurationElement) object).createExecutableExtension("class"); //$NON-NLS-1$
-                fEditorMap.put(modelIdentifier, editor);
-            } catch (CoreException e) {
-                // If an exception occurs, loading the extension, just log it and
-                // return null.
-                DebugUIPlugin.log(e);
-            }
-        }
-        return editor;
-    }
-	
-	/**
-	 * Loads contributors to the org.eclipse.debug.ui.variableValueEditors extension point,
-	 * for use when the user runs this action.
-	 */
-	private void loadVariableEditors() {
-		IExtensionPoint ep = Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_VARIABLE_VALUE_EDITORS);
-		IConfigurationElement[] elements = ep.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-            IConfigurationElement element = elements[i];
-            String modelId = element.getAttribute("modelId"); //$NON-NLS-1$
-            if (modelId != null) {
-                fEditorMap.put(modelId, element);
-            }
-        }
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariablesViewModelPresentation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariablesViewModelPresentation.java
deleted file mode 100644
index 2084afc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/VariablesViewModelPresentation.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import java.util.StringTokenizer;
-
-public class VariablesViewModelPresentation extends DelegatingModelPresentation {
-
-	/**
-	 * @see DelegatingModelPresentation#getText(Object)
-	 * 
-	 * Strips out control characters and replaces them with string representations
-	 */
-	public String getText(Object element) {
-		StringBuffer string= new StringBuffer();
-		StringTokenizer tokenizer= new StringTokenizer(super.getText(element), "\b\f\n\r\t\\", true); //$NON-NLS-1$
-		String token;
-		while (tokenizer.hasMoreTokens()) {
-			token= tokenizer.nextToken();
-			if (token.length() > 1) {
-				string.append(token);
-			} else {
-				switch (token.charAt(0)) {
-					case '\b':
-						string.append("\\b"); //$NON-NLS-1$
-						break;
-					case '\f':
-						string.append("\\f"); //$NON-NLS-1$
-						break;
-					case '\n':
-						string.append("\\n"); //$NON-NLS-1$
-						break;
-					case '\r':
-						string.append("\\r"); //$NON-NLS-1$
-						break;
-					case '\t':
-						string.append("\\t"); //$NON-NLS-1$
-						break;
-					case '\\':
-						string.append("\\\\"); //$NON-NLS-1$
-						break;
-					default:
-						string.append(token);
-				}
-			}
-		}
-		return string.toString();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/WorkingDirectoryStatusHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/WorkingDirectoryStatusHandler.java
deleted file mode 100644
index 685ed7b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/WorkingDirectoryStatusHandler.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui;
-
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.jface.dialogs.MessageDialog;
-
-/**
- * Prompts the user to re-launch when a working directory
- * is not supported by the Eclipse runtime.
- */
-public class WorkingDirectoryStatusHandler implements IStatusHandler {
-
-	/**
-	 * @see IStatusHandler#handleStatus(IStatus, Object)
-	 */
-	public Object handleStatus(IStatus status, Object source) {
-		final boolean[] result = new boolean[1];
-		DebugUIPlugin.getStandardDisplay().syncExec(new Runnable() {
-			public void run() {
-				String title= DebugUIMessages.WorkingDirectoryStatusHandler_Eclipse_Runtime_1; //$NON-NLS-1$
-				String message= DebugUIMessages.WorkingDirectoryStatusHandler_Eclipse_is_not_able_to_set_the_working_directory_specified_by_the_program_being_launched_as_the_current_runtime_does_not_support_working_directories__nContinue_launch_without_setting_the_working_directory__2; //$NON-NLS-1$
-				result[0]= (MessageDialog.openQuestion(DebugUIPlugin.getShell(), title, message));
-			}
-		});
-		return new Boolean(result[0]);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractDebugActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractDebugActionDelegate.java
deleted file mode 100644
index 0235347..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractDebugActionDelegate.java
+++ /dev/null
@@ -1,428 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.Iterator;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.INullSelectionListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-
-public abstract class AbstractDebugActionDelegate implements IWorkbenchWindowActionDelegate, IViewActionDelegate, IActionDelegate2, ISelectionListener, INullSelectionListener {
-	
-	/**
-	 * The underlying action for this delegate
-	 */
-	private IAction fAction;
-	/**
-	 * This action's view part, or <code>null</code>
-	 * if not installed in a view.
-	 */
-	private IViewPart fViewPart;
-	
-	/**
-	 * Cache of the most recent seletion
-	 */
-	private IStructuredSelection fSelection = StructuredSelection.EMPTY;
-	
-	/**
-	 * Whether this delegate has been initialized
-	 */
-	private boolean fInitialized = false;
-	
-	/**
-	 * The window associated with this action delegate
-	 * May be <code>null</code>
-	 */
-	protected IWorkbenchWindow fWindow;
-	
-	/**
-	 * Background job for this action, or <code>null</code> if none.
-	 */
-	private DebugRequestJob fBackgroundJob = null;
-	
-	class DebugRequestJob extends Job {
-	    
-	    private Object[] fElements = null;
-
-	    /** 
-	     * Constructs a new job to perform a debug request (for example, step)
-	     * in the background.
-	     * 
-	     * @param name job name
-	     */
-	    public DebugRequestJob(String name) {
-	        super(name);
-	        setPriority(Job.INTERACTIVE);
-	    }
-	    
-        /* (non-Javadoc)
-         * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        protected IStatus run(IProgressMonitor monitor) {
-		    MultiStatus status= 
-				new MultiStatus(DebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, getStatusMessage(), null);
-		    Object[] targets = null;
-		    synchronized (this) {
-		    	targets = fElements;
-		    	fElements = null;
-			}
-		    for (int i = 0; i < targets.length; i++) {
-				Object element= targets[i];
-				try {
-					// Action's enablement could have been changed since
-					// it was last enabled.  Check that the action is still
-					// enabled before running the action.
-					if (isEnabledFor(element))
-						doAction(element);
-				} catch (DebugException e) {
-					status.merge(e.getStatus());
-				}
-			}
-			return status;
-        }
-        
-        /**
-         * Sets the selection to operate on.
-         * 
-         * @param elements
-         */
-        public synchronized void setTargets(Object[] elements) {
-            fElements = elements;
-        }
-	    
-	}
-	
-	/**
-	 * It's crucial that delegate actions have a zero-arg constructor so that
-	 * they can be reflected into existence when referenced in an action set
-	 * in the plugin's plugin.xml file.
-	 */
-	public AbstractDebugActionDelegate() {
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose(){
-		if (getWindow() != null) {
-			getWindow().getSelectionService().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		}
-		fBackgroundJob = null;
-        fSelection= null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window){
-		// listen to selection changes in the debug view
-		setWindow(window);
-		window.getSelectionService().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action){
-	    if (action.isEnabled()) {
-			IStructuredSelection selection = getSelection();
-			// disable the action so it cannot be run again until an event or selection change
-			// updates the enablement
-			action.setEnabled(false);
-			if (isRunInBackground()) {
-				runInBackground(action, selection);
-			} else {
-				runInForeground(selection);
-			}
-	    }
-	}
-	
-	/**
-	 * Runs this action in a background job.
-	 */
-	private void runInBackground(IAction action, IStructuredSelection selection) {
-	    if (fBackgroundJob == null) {
-			fBackgroundJob = new DebugRequestJob(action.getText());
-	    }
-	    fBackgroundJob.setTargets(selection.toArray());
-		fBackgroundJob.schedule();
-	}
-	
-	/**
-	 * Runs this action in the UI thread.
-	 */
-	private void runInForeground(final IStructuredSelection selection) {
-	    final MultiStatus status= 
-			new MultiStatus(DebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, getStatusMessage(), null); 	    
-		BusyIndicator.showWhile(Display.getCurrent(), new Runnable() {
-			public void run() {
-			    Iterator selectionIter = selection.iterator();
-				while (selectionIter.hasNext()) {
-					Object element= selectionIter.next();
-					try {
-						// Action's enablement could have been changed since
-						// it was last enabled.  Check that the action is still
-						// enabled before running the action.
-						if (isEnabledFor(element))
-							doAction(element);
-					} catch (DebugException e) {
-						status.merge(e.getStatus());
-					}
-				}
-			}
-		});
-		reportErrors(status);
-	}
-
-	private void reportErrors(final MultiStatus ms) {
-		if (!ms.isOK()) {
-			IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-			if (window != null) {
-				DebugUIPlugin.errorDialog(window.getShell(), getErrorDialogTitle(), getErrorDialogMessage(), ms);
-			} else {
-				DebugUIPlugin.log(ms);
-			}
-		}
-	}
-
-	/**
-	 * Returns whether or not this action should be run in the background.
-	 * Subclasses may override.
-	 * @return whether or not this action should be run in the background
-	 */
-	protected boolean isRunInBackground() {
-		return false;
-	}
-
-	/**
-	 * AbstractDebugActionDelegates come in 2 flavors: IViewActionDelegate, 
-	 * IWorkbenchWindowActionDelegate delegates.
-	 * </p>
-	 * <ul>
-	 * <li>IViewActionDelegate delegate: getView() != null</li>
-	 * <li>IWorkbenchWindowActionDelegate: getView == null</li>
-	 * </ul>
-	 * <p>
-	 * Only want to call update(action, selection) for IViewActionDelegates.
-	 * An initialize call to update(action, selection) is made for all flavors to set the initial
-	 * enabled state of the underlying action.
-	 * IWorkbenchWindowActionDelegate's listen to selection changes
-	 * in the debug view only.
-	 * </p>
-	 * 
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection s) {
-		boolean wasInitialized= initialize(action, s);		
-		if (!wasInitialized) {
-			if (getView() != null) {
-				update(action, s);
-			}
-		}
-	}
-	
-	protected void update(IAction action, ISelection s) {
-		if (s instanceof IStructuredSelection) {
-			IStructuredSelection ss = (IStructuredSelection)s;
-			action.setEnabled(getEnableStateForSelection(ss));
-			setSelection(ss);
-		} else {
-			action.setEnabled(false);
-			setSelection(StructuredSelection.EMPTY);
-		}
-	}
-	
-	/**
-	 * Performs the specific action on this element.
-	 */
-	protected abstract void doAction(Object element) throws DebugException;
-
-	/**
-	 * Returns the String to use as an error dialog title for
-	 * a failed action. Default is to return null.
-	 */
-	protected String getErrorDialogTitle(){
-		return null;
-	}
-	/**
-	 * Returns the String to use as an error dialog message for
-	 * a failed action. This message appears as the "Message:" in
-	 * the error dialog for this action.
-	 * Default is to return null.
-	 */
-	protected String getErrorDialogMessage(){
-		return null;
-	}
-	/**
-	 * Returns the String to use as a status message for
-	 * a failed action. This message appears as the "Reason:"
-	 * in the error dialog for this action.
-	 * Default is to return the empty String.
-	 */
-	protected String getStatusMessage(){
-		return ""; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		fViewPart = view;
-	}
-	
-	/**
-	 * Returns this action's view part, or <code>null</code>
-	 * if not installed in a view.
-	 * 
-	 * @return view part or <code>null</code>
-	 */
-	protected IViewPart getView() {
-		return fViewPart;
-	}
-
-	/**
-	 * Initialize this delegate, updating this delegate's
-	 * presentation.
-	 * As well, all of the flavors of AbstractDebugActionDelegates need to 
-	 * have the initial enabled state set with a call to update(IAction, ISelection).
-	 * 
-	 * @param action the presentation for this action
-	 * @return whether the action was initialized
-	 */
-	protected boolean initialize(IAction action, ISelection selection) {
-		if (!isInitialized()) {
-			setAction(action);
-			if (getView() == null) {
-				//update on the selection in the debug view
-				IWorkbenchWindow window= getWindow();
-				if (window != null && window.getShell() != null && !window.getShell().isDisposed()) {
-					IWorkbenchPage page= window.getActivePage();
-					if (page != null) {
-						selection= page.getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-					}
-				}
-			}
-			update(action, selection);
-			setInitialized(true);
-			return true;
-		}
-		return false;
-	}
-
-	/**
-	 * Returns the most recent selection
-	 * 
-	 * @return structured selection
-	 */	
-	protected IStructuredSelection getSelection() {
-		return fSelection;
-	}
-	
-	/**
-	 * Sets the most recent selection
-	 * 
-	 * @parm selection structured selection
-	 */	
-	private void setSelection(IStructuredSelection selection) {
-		fSelection = selection;
-	}	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		update(getAction(), selection);
-	}
-	
-	protected void setAction(IAction action) {
-		fAction = action;
-	}
-
-	protected IAction getAction() {
-		return fAction;
-	}
-	
-	protected void setView(IViewPart viewPart) {
-		fViewPart = viewPart;
-	}
-	
-	protected boolean isInitialized() {
-		return fInitialized;
-	}
-
-	protected void setInitialized(boolean initialized) {
-		fInitialized = initialized;
-	}
-
-	protected IWorkbenchWindow getWindow() {
-		return fWindow;
-	}
-
-	protected void setWindow(IWorkbenchWindow window) {
-		fWindow = window;
-	}
-	
-	/**
-	 * Return whether the action should be enabled or not based on the given selection.
-	 */
-	protected boolean getEnableStateForSelection(IStructuredSelection selection) {
-		if (selection.size() == 0) {
-			return false;
-		}
-		Iterator itr= selection.iterator();
-		while (itr.hasNext()) {
-			Object element= itr.next();
-			if (!isEnabledFor(element)) {
-				return false;
-			}
-		}
-		return true;		
-	}
-
-	protected boolean isEnabledFor(Object element) {
-		return true;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-	 */
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractListenerActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractListenerActionDelegate.java
deleted file mode 100644
index a342170..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractListenerActionDelegate.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Pawel Piech - Bug 75183
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-public abstract class AbstractListenerActionDelegate extends AbstractDebugActionDelegate implements IDebugEventSetListener, IActionDelegate2 {
-
-    private boolean fDisposed = false;
-    
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 * @see org.eclipse.ui.IActionDelegate2#dispose()
-	 */
-	public synchronized void dispose() {
-		super.dispose();
-		DebugPlugin.getDefault().removeDebugEventListener(this);
-        fDisposed = true;
-	}
-	
-	/**
-	 * @see IDebugEventSetListener#handleDebugEvents(DebugEvent[])
-	 */
-	public void handleDebugEvents(final DebugEvent[] events) {
-		if (getWindow() == null || getAction() == null) {
-			return;
-		}
-		Shell shell= getWindow().getShell();
-		if (shell == null || shell.isDisposed()) {
-			return;
-		}
-        synchronized (this) {
-            if (fDisposed) {
-                return;
-            }
-        }
-		for (int i = 0; i < events.length; i++) {
-			if (events[i].getSource() != null) {
-				doHandleDebugEvent(events[i]);
-			}
-		}		
-	}
-	
-	/**
-	 * Default implementation to update on specific debug events.
-	 * Subclasses should override to handle events differently.
-	 */
-	protected void doHandleDebugEvent(DebugEvent event) {
-		switch (event.getKind()) {
-			case DebugEvent.TERMINATE :
-				update(getAction(), getSelection());
-				break;
-			case DebugEvent.RESUME :
-				if (!event.isEvaluation() || !((event.getDetail() & DebugEvent.EVALUATION_IMPLICIT) != 0)) {
-					update(getAction(), getSelection());
-				}
-				break;
-			case DebugEvent.SUSPEND :
-				// Update on suspend events (even for evaluations), in case the user changed
-				// the selection during an implicit evaluation.
-				update(getAction(), getSelection());
-				break;
-			case DebugEvent.CHANGE :
-				// Implementations can use this event for debugger state
-				// changes other than just suspend/resume.  This may or 
-				// may not affect the enable state of run/suspend/step
-				// actions.
-				update(getAction(), getSelection());
-				break;
-		}
-	}		
-
-	/**
-	 * @see IWorkbenchWindowActionDelegate#init(IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window){
-		super.init(window);
-		DebugPlugin.getDefault().addDebugEventListener(this);
-	}
-
-	/**
-	 * @see IViewActionDelegate#init(IViewPart)
-	 */
-	public void init(IViewPart view) {
-		super.init(view);
-		DebugPlugin.getDefault().addDebugEventListener(this);
-		setWindow(view.getViewSite().getWorkbenchWindow());
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-	 */
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveActionDelegate.java
deleted file mode 100644
index 473bdd4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveActionDelegate.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewPart;
-
-public abstract class AbstractRemoveActionDelegate extends AbstractListenerActionDelegate {
-	
-	/**
-	 * @see IViewActionDelegate#init(IViewPart)
-	 */
-	public void init(IViewPart view) {
-		setView(view);
-		setWindow(view.getViewSite().getWorkbenchWindow());
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#initialize(IAction, ISelection)
-	 */
-	protected boolean initialize(IAction action, ISelection selection) {
-		if (!isInitialized()) {
-			IDebugView debugView= (IDebugView)getView().getAdapter(IDebugView.class);
-			if (debugView != null) {
-				debugView.setAction(IDebugView.REMOVE_ACTION, action);
-			}
-			return super.initialize(action, selection);
-		}
-		return false;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveAllActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveAllActionDelegate.java
deleted file mode 100644
index 47d57a1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AbstractRemoveAllActionDelegate.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewPart;
-
-public abstract class AbstractRemoveAllActionDelegate extends AbstractListenerActionDelegate {
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) {
-		doAction();
-		update();
-	}
-	
-	/**
-	 * @see IActionDelegate#run(IAction)
-	 */
-	public void run(IAction action){
-		doAction(null);
-	}
-	
-	protected abstract void doAction();
-	
-	protected void update(IAction action, ISelection s) {
-		update();
-	}
-	
-	protected abstract void update();
-	
-	/**
-	 * Remove all actions do care nothing about the current selection
-	 * @see IActionDelegate#selectionChanged(IAction, ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection s) {
-		if (!isInitialized()) {
-			action.setEnabled(false);
-			setAction(action);
-			setInitialized(true);
-		}
-		update();
-	}
-	
-	/**
-	 * @see IViewActionDelegate#init(IViewPart)
-	 */
-	public void init(IViewPart view) {
-		setView(view);
-		setWindow(view.getViewSite().getWorkbenchWindow());
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AccessWatchpointToggleAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AccessWatchpointToggleAction.java
deleted file mode 100644
index 88b26d8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AccessWatchpointToggleAction.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IWatchpoint;
-
-/**
- * Toggles access attribute of a watchpoint.
- */
-public class AccessWatchpointToggleAction extends ModifyWatchpointAction {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.actions.ModifyWatchpointAction#isEnabled(org.eclipse.debug.core.model.IWatchpoint)
-     */
-    protected boolean isEnabled(IWatchpoint watchpoint) {
-        return watchpoint.supportsAccess();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.actions.ModifyWatchpointAction#toggleWatchpoint(org.eclipse.debug.core.model.IWatchpoint, boolean)
-     */
-    protected void toggleWatchpoint(IWatchpoint watchpoint, boolean b) throws CoreException {
-        watchpoint.setAccess(b);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.actions.ModifyWatchpointAction#isChecked(org.eclipse.debug.core.model.IWatchpoint)
-     */
-    protected boolean isChecked(IWatchpoint watchpoint) {
-        try {
-            return watchpoint.isAccess();
-        } catch (CoreException e) {
-        }
-        return false;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.java
deleted file mode 100644
index 8ac43c6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.osgi.util.NLS;
-
-public class ActionMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.actions.ActionMessages";//$NON-NLS-1$
-
-	public static String AddToFavoritesAction_1;
-	public static String AddToFavoritesAction_2;
-	public static String AddToFavoritesAction_3;
-
-	public static String ChangeVariableValue_errorDialogMessage;
-	public static String ChangeVariableValue_errorDialogTitle;
-	public static String ChangeVariableValue_title;
-	public static String ChangeVariableValue_toolTipText;
-	public static String ChangeVariableValue_1;
-	public static String ChangeVariableValue_2;
-	public static String ChangeVariableValue_3;
-	public static String ChangeVariableValue_4;
-
-
-	public static String CollapseAllAction_0;
-
-	public static String CopyToClipboardActionDelegate_Problem_Copying_to_Clipboard_1;
-	public static String CopyToClipboardActionDelegate_There_was_a_problem_when_accessing_the_system_clipboard__Retry__2;
-
-	public static String DisconnectActionDelegate_Disconnect_3;
-	public static String DisconnectActionDelegate_Disconnect_failed_1;
-	public static String DisconnectActionDelegate_Exceptions_occurred_attempting_to_disconnect__2;
-
-	public static String EditLaunchConfigurationAction_1;
-
-	public static String EnableBreakpointAction_Enable_breakpoint_s__failed_2;
-	public static String EnableBreakpointAction_Enabling_breakpoints_3;
-	public static String EnableBreakpointAction_Exceptions_occurred_enabling_the_breakpoint_s___4;
-
-	public static String OpenBreakpointMarkerAction__Go_to_File_1;
-	public static String OpenBreakpointMarkerAction_Exceptions_occurred_attempting_to_open_the_editor_for_the_breakpoint_resource_2;
-	public static String OpenBreakpointMarkerAction_Go_to_Breakpoint_1;
-	public static String OpenBreakpointMarkerAction_Go_to_File_for_Breakpoint_2;
-
-	public static String RelaunchActionDelegate_An_exception_occurred_while_launching_2;
-	public static String RelaunchActionDelegate_Launch_Failed_1;
-	public static String RelaunchActionDelegate_Launch_1;
-
-	public static String RemoveAllBreakpointsAction_0;
-	public static String RemoveAllBreakpointsAction_1;
-	public static String RemoveAllBreakpointsAction_2;
-
-	public static String RemoveBreakpointAction_0;
-	public static String RemoveBreakpointAction_1;
-	public static String RemoveBreakpointAction_2;
-	public static String RemoveBreakpointAction_Exceptions_occurred_attempting_to_remove_a_breakpoint__5;
-	public static String RemoveBreakpointAction_Removing_a_breakpoint_4;
-
-	public static String ResumeActionDelegate_Exceptions_occurred_attempting_to_resume__2;
-	public static String ResumeActionDelegate_Resume_3;
-	public static String ResumeActionDelegate_Resume_failed__1;
-
-	public static String ShowSupportedBreakpointsAction_Show_For_Selected;
-	public static String ShowSupportedBreakpointsAction_tooltip;
-
-	public static String ShowTypesAction_Show__Type_Names_1;
-	public static String ShowTypesAction_Show_Type_Names;
-
-	public static String StepIntoActionDelegate_Exceptions_occurred_attempting_to_step_into_the_frame_2;
-	public static String StepIntoActionDelegate_Step_Into_3;
-	public static String StepIntoActionDelegate_Step_into_failed_1;
-
-	public static String StepOverActionDelegate_Exceptions_occurred_attempting_to_step_over_the_frame_2;
-	public static String StepOverActionDelegate_Step_over_3;
-	public static String StepOverActionDelegate_Step_over_failed_1;
-
-	public static String StepReturnActionDelegate_Exceptions_occurred_attempting_to_run_to_return_of_the_frame__2;
-	public static String StepReturnActionDelegate_Run_to_Return_3;
-	public static String StepReturnActionDelegate_Run_to_return_failed__1;
-
-	public static String SuspendActionDelegate_Exceptions_occurred_attempting_to_suspend__2;
-	public static String SuspendActionDelegate_Suspend_3;
-	public static String SuspendActionDelegate_Suspend_failed_1;
-
-	public static String TerminateActionDelegate_Exceptions_occurred_attempting_to_terminate__2;
-	public static String TerminateActionDelegate_Terminate_3;
-
-	public static String TerminateActionDelegate_Terminate_failed__1;
-
-	public static String TerminateAndRemoveActionDelegate_Exceptions_occurred_attempting_to_terminate_and_remove_2;
-	public static String TerminateAndRemoveActionDelegate_Terminate_and_Remove__3;
-	public static String TerminateAndRemoveActionDelegate_Terminate_and_remove_failed_1;
-
-	public static String RelaunchLastAction_Cannot_relaunch_1;
-	public static String RelaunchLastAction_Cannot_relaunch___0___because_it_does_not_support__2__mode_2;
-	public static String RelaunchLastAction_Error_relaunching_3;
-	public static String RelaunchLastAction_Error_encountered_attempting_to_relaunch_4;
-
-	public static String AbstractLaunchHistoryAction_0;
-	public static String AbstractLaunchHistoryAction_1;
-	public static String AbstractLaunchHistoryAction_2;
-	public static String AbstractLaunchHistoryAction_3;
-	public static String AbstractLaunchHistoryAction_4;
-
-	public static String ToggleDetailPaneAction_1;
-	public static String ToggleDetailPaneAction_2;
-	public static String ToggleDetailPaneAction_3;
-	public static String ToggleDetailPaneAction_4;
-	public static String ToggleDetailPaneAction_5;
-	public static String ToggleDetailPaneAction_6;
-	public static String ToggleDetailPaneAction_8;
-	public static String ToggleDetailPaneAction_9;
-	public static String ToggleBreakpointAction_0;
-	public static String ToggleBreakpointAction_1;
-	public static String ToggleBreakpointAction_2;
-
-	public static String WatchExpressionDialog_0;
-	public static String WatchExpressionDialog_1;
-	public static String WatchExpressionDialog_2;
-	public static String WatchExpressionDialog_3;
-	public static String WatchExpressionDialog_4;
-	public static String WatchAction_0;
-	public static String WatchAction_1;
-	public static String SkipAllBreakpointsAction_0;
-	public static String SkipAllBreakpointsAction_2;
-	public static String AssignValueAction_1;
-	public static String AssignValueAction_2;
-	public static String AssignValueAction_3;
-	public static String AssignValueAction_4;
-
-	public static String RunToLineAction_0;
-	public static String RunToLineAction_1;
-	public static String RunToLineHandler_0;
-	public static String RunToLineActionDelegate_4;
-
-	public static String RetargetAction_2;
-	public static String RetargetAction_3;
-	public static String LaunchAsAction_0;
-	public static String ModifyWatchpointAction_0;
-	public static String ModifyWatchpointAction_1;
-	public static String LaunchShortcutsAction_0;
-	public static String LaunchShortcutsAction_1;
-	public static String FindVariableDialog_0;
-	public static String FindVariableDialog_1;
-	public static String FindVariableDialog_2;
-	public static String FindVariableDialog_3;
-	public static String FindVariableAction_0;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, ActionMessages.class);
-	}
-
-    public static String AssignValueAction_0;
-
-    public static String AssignValueAction_5;
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.properties
deleted file mode 100644
index b7ec1bb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ActionMessages.properties
+++ /dev/null
@@ -1,151 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-AddToFavoritesAction_1=Add to {0} &Favorites
-AddToFavoritesAction_2=Error
-AddToFavoritesAction_3=Unable to add to favorites.
-
-ChangeVariableValue_errorDialogMessage=Setting the value failed.
-ChangeVariableValue_errorDialogTitle=Setting Value
-ChangeVariableValue_title=&Change Value...
-ChangeVariableValue_toolTipText=Change the Value of the Selected Variable or Register
-ChangeVariableValue_1=Set Value
-ChangeVariableValue_2=Enter a new value for {0}:
-ChangeVariableValue_3=An exception occurred
-ChangeVariableValue_4=Invalid value
-
-
-CollapseAllAction_0=Collapse All
-
-CopyToClipboardActionDelegate_Problem_Copying_to_Clipboard_1=Problem Copying to Clipboard
-CopyToClipboardActionDelegate_There_was_a_problem_when_accessing_the_system_clipboard__Retry__2=There was a problem when accessing the system clipboard. Retry?
-
-DisconnectActionDelegate_Disconnect_3=Disconnect
-DisconnectActionDelegate_Disconnect_failed_1=Disconnect failed
-DisconnectActionDelegate_Exceptions_occurred_attempting_to_disconnect__2=Exceptions occurred attempting to disconnect.
-
-EditLaunchConfigurationAction_1=Edit {0}...
-
-EnableBreakpointAction_Enable_breakpoint_s__failed_2=Enable/Disable breakpoint(s) failed
-EnableBreakpointAction_Enabling_breakpoints_3=Enabling/disabling breakpoints
-EnableBreakpointAction_Exceptions_occurred_enabling_the_breakpoint_s___4=Exceptions occurred enabling/disabling the breakpoint(s).
-
-OpenBreakpointMarkerAction__Go_to_File_1=&Go to File
-OpenBreakpointMarkerAction_Exceptions_occurred_attempting_to_open_the_editor_for_the_breakpoint_resource_2=Exceptions occurred attempting to open the editor for the breakpoint resource
-OpenBreakpointMarkerAction_Go_to_Breakpoint_1=Go to File
-OpenBreakpointMarkerAction_Go_to_File_for_Breakpoint_2=Go to File for Breakpoint
-
-RelaunchActionDelegate_An_exception_occurred_while_launching_2=An exception occurred while launching
-RelaunchActionDelegate_Launch_Failed_1=Launch Failed
-RelaunchActionDelegate_Launch_1=Launch
-
-RemoveAllBreakpointsAction_0=Remove All Breakpoints
-RemoveAllBreakpointsAction_1=Are you sure you want to remove all breakpoints?
-RemoveAllBreakpointsAction_2=Remove Breakpoints
-
-RemoveBreakpointAction_0=Delete Breakpoints
-RemoveBreakpointAction_1=Delete all breakpoints in the selected group(s)?
-RemoveBreakpointAction_2=Remove Breakpoints
-RemoveBreakpointAction_Exceptions_occurred_attempting_to_remove_a_breakpoint__5=An exception occurred attempting to remove breakpoint(s).
-RemoveBreakpointAction_Removing_a_breakpoint_4=Removing a breakpoint
-
-ResumeActionDelegate_Exceptions_occurred_attempting_to_resume__2=Exceptions occurred attempting to resume.
-ResumeActionDelegate_Resume_3=Resume
-ResumeActionDelegate_Resume_failed__1=Resume failed.
-
-ShowSupportedBreakpointsAction_Show_For_Selected=Show Supported &Breakpoints
-ShowSupportedBreakpointsAction_tooltip=Show Breakpoints Supported by Selected Target
-
-ShowTypesAction_Show__Type_Names_1=Show &Type Names
-ShowTypesAction_Show_Type_Names=Show Type Names
-
-StepIntoActionDelegate_Exceptions_occurred_attempting_to_step_into_the_frame_2=Exceptions occurred attempting to step into the frame
-StepIntoActionDelegate_Step_Into_3=Step Into
-StepIntoActionDelegate_Step_into_failed_1=Step into failed
-
-StepOverActionDelegate_Exceptions_occurred_attempting_to_step_over_the_frame_2=Exceptions occurred attempting to step over the frame
-StepOverActionDelegate_Step_over_3=Step Over
-StepOverActionDelegate_Step_over_failed_1=Step over failed
-
-StepReturnActionDelegate_Exceptions_occurred_attempting_to_run_to_return_of_the_frame__2=Exceptions occurred attempting to run to return of the frame.
-StepReturnActionDelegate_Run_to_Return_3=Step Return
-StepReturnActionDelegate_Run_to_return_failed__1=Step return failed.
-
-SuspendActionDelegate_Exceptions_occurred_attempting_to_suspend__2=Exceptions occurred attempting to suspend.
-SuspendActionDelegate_Suspend_3=Suspend
-SuspendActionDelegate_Suspend_failed_1=Suspend failed
-
-TerminateActionDelegate_Exceptions_occurred_attempting_to_terminate__2=Exceptions occurred attempting to terminate.
-TerminateActionDelegate_Terminate_3=Terminate
-
-TerminateActionDelegate_Terminate_failed__1=Terminate failed.
-
-TerminateAndRemoveActionDelegate_Exceptions_occurred_attempting_to_terminate_and_remove_2=Exceptions occurred attempting to terminate and remove
-TerminateAndRemoveActionDelegate_Terminate_and_Remove__3=Terminate and Remove;
-TerminateAndRemoveActionDelegate_Terminate_and_remove_failed_1=Terminate and remove failed
-
-RelaunchLastAction_Cannot_relaunch_1=Cannot relaunch
-RelaunchLastAction_Cannot_relaunch___0___because_it_does_not_support__2__mode_2=Cannot relaunch [{0}] because it does not support {1} mode
-RelaunchLastAction_Error_relaunching_3=Error relaunching
-RelaunchLastAction_Error_encountered_attempting_to_relaunch_4=Error encountered attempting to relaunch
-
-AbstractLaunchHistoryAction_0={0} {1}
-AbstractLaunchHistoryAction_1=Run
-AbstractLaunchHistoryAction_2=Debug
-AbstractLaunchHistoryAction_3=Profile
-AbstractLaunchHistoryAction_4=Launch
-
-ToggleDetailPaneAction_1=Vertical View Orientation
-ToggleDetailPaneAction_2=Place the Detail Pane Underneath the Main Tree View
-ToggleDetailPaneAction_3=Place the Detail Pane Underneath the Main Tree View
-ToggleDetailPaneAction_4=Horizontal View Orientation
-ToggleDetailPaneAction_5=Place the Detail Pane on the Right of the Main Tree View
-ToggleDetailPaneAction_6=Place the Detail Pane on the Right of the Main Tree View
-ToggleDetailPaneAction_8=Hide the Detail Pane so that only the Main Tree View is Visible
-ToggleDetailPaneAction_9=Hide the Detail Pane so that only the Main Tree View is Visible
-ToggleBreakpointAction_0=Toggle Brea&kpoint
-ToggleBreakpointAction_1=Error
-ToggleBreakpointAction_2=Unable to toggle breakpoint
-
-WatchExpressionDialog_0=Edit Watch Expression
-WatchExpressionDialog_1=Add Watch Expression
-WatchExpressionDialog_2=E&xpression:
-WatchExpressionDialog_3=&Enable
-WatchExpressionDialog_4=Expression must not be empty
-WatchAction_0=Error creating watch
-WatchAction_1=An exception occurred while attempting to create watch item.
-SkipAllBreakpointsAction_0=Skip All Breakpoints
-SkipAllBreakpointsAction_2=Skip all breakpoints, whether they are enabled or not
-AssignValueAction_1=Assign Value
-AssignValueAction_2=Invalid Value
-AssignValueAction_3=The value {0} cannot be assigned to {1}
-AssignValueAction_4=Invalid Value
-AssignValueAction_0=Error Setting Value
-AssignValueAction_5=Value entered did not match the expected type.
-
-
-RunToLineAction_0=Error
-RunToLineAction_1=Run to line failed
-RunToLineHandler_0=Run To Line
-RunToLineActionDelegate_4=Run to &Line
-
-RetargetAction_2=Error
-RetargetAction_3=Operation failed
-LaunchAsAction_0={0} As
-ModifyWatchpointAction_0=Error
-ModifyWatchpointAction_1=Failed to modify watchpoint
-LaunchShortcutsAction_0={0} As
-LaunchShortcutsAction_1=(none applicable)
-FindVariableDialog_0=An exception occurred computing variable name. See log for details.
-FindVariableDialog_1=&Select a variable to display (? = any character, * = any String):
-FindVariableDialog_2=&Matching variables:
-FindVariableDialog_3=Find Variable
-FindVariableAction_0=&Find Variable...
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddToFavoritesAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddToFavoritesAction.java
deleted file mode 100644
index 420574e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddToFavoritesAction.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * Adds the selected launch configuration to the launch favorites.
- */
-public class AddToFavoritesAction extends SelectionListenerAction {
-	
-	private ILaunchConfiguration fConfiguration = null;
-	private String fMode =null;
-	private ILaunchGroup fGroup = null;
-
-	/**
-	 * Constructs a new action.
-	 */
-	public AddToFavoritesAction() {
-		super(""); //$NON-NLS-1$
-		setEnabled(false);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.EDIT_LAUNCH_CONFIGURATION_ACTION);
-	}
-
-	/**
-	 * @see org.eclipse.ui.actions.SelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		setLaunchConfiguration(null);
-		setMode(null);
-		setGroup(null);
-		if (selection.size() == 1) {
-			Object object = selection.getFirstElement();
-			ILaunch launch = null;
-			if (object instanceof IAdaptable) {
-				launch = (ILaunch)((IAdaptable)object).getAdapter(ILaunch.class); 
-			}
-			if (launch == null) {
-				if (object instanceof ILaunch) {
-					launch = (ILaunch)object;
-				} else if (object instanceof IDebugElement) {
-					launch = ((IDebugElement)object).getLaunch();
-				} else if (object instanceof IProcess) {
-					launch = ((IProcess)object).getLaunch();
-				}
-			}
-			if (launch != null) {
-				ILaunchConfiguration configuration = launch.getLaunchConfiguration();
-				if (configuration != null) {
-					ILaunchGroup group= DebugUITools.getLaunchGroup(configuration, getMode());
-					if (group == null) {
-					    return false;
-					}
-					setGroup(group);
-					setLaunchConfiguration(configuration);
-					setMode(launch.getLaunchMode());				
-					setText(MessageFormat.format(ActionMessages.AddToFavoritesAction_1, new String[]{DebugUIPlugin.removeAccelerators(getGroup().getLabel())})); //$NON-NLS-1$
-				}
-			}
-		}
-		
-		// Disable the action if the launch config is private
-		ILaunchConfiguration config = getLaunchConfiguration();
-		if (config == null) {
-			return false;
-		} 
-		if (DebugUITools.isPrivate(config)) {
-				return false;
-		}
-		
-		if (getGroup() != null) {
-			try {
-				List groups = config.getAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, (List)null);
-				if (groups != null) {
-					return !groups.contains(getGroup().getIdentifier());
-				}
-				return true;
-			} catch (CoreException e) {
-			}
-			
-		}
-		
-		return false;
-	}
-
-	protected void setLaunchConfiguration(ILaunchConfiguration configuration) {
-		fConfiguration = configuration;
-	}
-	
-	protected ILaunchConfiguration getLaunchConfiguration() {
-		return fConfiguration;
-	}
-	
-	protected void setMode(String mode) {
-		fMode = mode;
-	}
-	
-	protected String getMode() {
-		return fMode;
-	}
-	
-	protected void setGroup(ILaunchGroup group) {
-		fGroup = group;
-	}
-	
-	protected ILaunchGroup getGroup() {
-		return fGroup;
-	}
-	
-	/**
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		final CoreException[] ex = new CoreException[1];
-		BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), new Runnable() {
-			public void run() {
-				try {
-					List list = getLaunchConfiguration().getAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, (List)null);
-					if (list == null) {
-						list = new ArrayList();
-					}
-					list.add(getGroup().getIdentifier());
-					ILaunchConfigurationWorkingCopy copy = getLaunchConfiguration().getWorkingCopy();
-					copy.setAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, list);
-					copy.doSave();
-					setEnabled(false);
-				} catch (CoreException e) {
-					ex[0] = e;
-				}
-			}
-		});
-		if (ex[0] != null) {
-			DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), ActionMessages.AddToFavoritesAction_2, ActionMessages.AddToFavoritesAction_3, ex[0].getStatus()); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddWatchExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddWatchExpressionAction.java
deleted file mode 100644
index 835e0af..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AddWatchExpressionAction.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * Open a watch expression dialog and add the created watch expression to the
- * expression view.
- */
-public class AddWatchExpressionAction extends WatchExpressionAction implements IViewActionDelegate {
-
-	/**
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		// create a watch expression
-		IWatchExpression watchExpression= DebugPlugin.getDefault().getExpressionManager().newWatchExpression(""); //$NON-NLS-1$
-		// open the watch expression dialog
-		if (new WatchExpressionDialog(DebugUIPlugin.getShell(), watchExpression, false).open() == Window.OK) {
-			// if OK is selected, add the expression to the expression view and try to evaluate the expression.
-			DebugPlugin.getDefault().getExpressionManager().addExpression(watchExpression);
-			watchExpression.setExpressionContext(getContext());
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AssignValueAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AssignValueAction.java
deleted file mode 100644
index 7dfb8b2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/AssignValueAction.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValueModification;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.VariableValueEditorManager;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.debug.ui.actions.IVariableValueEditor;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.SelectionProviderAction;
-
-/**
- * Action which assigns a value to a variable from the detail pane
- * of the variables view.
- */
-public class AssignValueAction extends SelectionProviderAction {
-	private VariablesView variablesView;
-	private ISourceViewer detailsViewer;
-
-	public AssignValueAction(VariablesView varView, ISourceViewer detailViewer) {
-		super(varView.getViewer(), ActionMessages.AssignValueAction_1); //$NON-NLS-1$
-		variablesView = varView;
-		detailsViewer = detailViewer;
-		setEnabled(false);
-		variablesView.getSite().getKeyBindingService().registerAction(this);
-	}
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.actions.SelectionProviderAction#selectionChanged(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	public void selectionChanged(IStructuredSelection selection) {
-		boolean enabled = false;
-		if ((selection.size() == 1) && (selection.getFirstElement() instanceof IValueModification)) {
-			IValueModification valMod = (IValueModification) selection.getFirstElement();
-			if (valMod.supportsValueModification()) {
-				super.selectionChanged(selection);
-				enabled = true;
-			}
-		} 
-		setEnabled(enabled);		
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		IVariable variable = (IVariable) getStructuredSelection().getFirstElement();
-		
-		Point selection = detailsViewer.getSelectedRange();
-		String value = null;
-		if (selection.y == 0) {
-			value = detailsViewer.getDocument().get();
-		} else {
-			try {
-				value = detailsViewer.getDocument().get(selection.x, selection.y);
-			} catch (BadLocationException e1) {
-			}
-		}
-		IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-		Shell activeShell= null;
-		if (window != null) {
-			activeShell= window.getShell();
-		}
-		
-		String modelIdentifier = variable.getModelIdentifier();
-		IVariableValueEditor editor = VariableValueEditorManager.getDefault().getVariableValueEditor(modelIdentifier);
-		if (editor != null) {
-		    if (editor.saveVariable(variable, value, activeShell)) {
-		        // If we successfully delegate to an editor which performs the save,
-		        // don't do any more work.
-		        return;
-		    }
-		}
-		
-		try {
-		    // If we failed to delegate to anyone, perform the default assignment.
-			if (variable.verifyValue(value)) {
-				variable.setValue(value);
-			} else {
-			    if (activeShell != null) {
-			        DebugUIPlugin.errorDialog(activeShell, ActionMessages.AssignValueAction_2, MessageFormat.format(ActionMessages.AssignValueAction_3, new String[] {value, variable.getName()}), new StatusInfo(IStatus.ERROR, ActionMessages.AssignValueAction_4));  //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-			    }
-			}
-		} catch (DebugException e) {
-            MessageDialog.openError(activeShell, ActionMessages.AssignValueAction_0, ActionMessages.AssignValueAction_5);
-		}
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#getActionDefinitionId()
-	 */
-	public String getActionDefinitionId() {		
-		return "org.eclipse.ui.file.save"; //$NON-NLS-1$
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsCollapseAllAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsCollapseAllAction.java
deleted file mode 100644
index e28c8b7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsCollapseAllAction.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * 
- */
-public class BreakpointsCollapseAllAction implements IViewActionDelegate {
-	
-	private BreakpointsView fView;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		fView= (BreakpointsView) view;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		fView.getCheckboxViewer().collapseAll();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsExpandAllAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsExpandAllAction.java
deleted file mode 100644
index cfabefe..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/BreakpointsExpandAllAction.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * Action which fully expands the tree in the breakpoints view.
- */
-public class BreakpointsExpandAllAction implements IViewActionDelegate {
-	
-	private BreakpointsView fView;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		fView= (BreakpointsView) view;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		fView.getCheckboxViewer().expandAll();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueAction.java
deleted file mode 100644
index 3cfe315..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueAction.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import java.text.MessageFormat;
-import java.util.Iterator;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValueModification;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.VariableValueEditorManager;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.IVariableValueEditor;
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.SelectionProviderAction;
-
-/**
- * Action for changing the value of primitives and <code>String</code> variables.
- * This action will attempt to delegate the editing operation to a registered
- * variable value editor, if any is provided for the variable's debug model.
- * @see org.eclipse.debug.ui.actions.VariableValueEditorManager
- */
-public class ChangeVariableValueAction extends SelectionProviderAction {
-    
-	protected IVariable fVariable;
-    private VariablesView fView;
-    private boolean fEditing= false;
-	
-    /**
-     * Creates a new ChangeVariableValueAction for the given variables view
-     * @param view the varibles view in which this action will appear
-     */
-	public ChangeVariableValueAction(VariablesView view) {
-		super(view.getViewer(), ActionMessages.ChangeVariableValue_title); //$NON-NLS-1$
-		setDescription(ActionMessages.ChangeVariableValue_toolTipText); //$NON-NLS-1$
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_CHANGE_VARIABLE_VALUE));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_CHANGE_VARIABLE_VALUE));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_CHANGE_VARIABLE_VALUE));
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(
-			this,
-			IDebugHelpContextIds.CHANGE_VALUE_ACTION);
-		fView= view;
-	}
-	
-	/**
-	 * Edit the variable value with an inline text editor.  
-	 */
-	protected void doActionPerformed(final IVariable variable) {
-	    Shell shell = fView.getViewSite().getShell();
-		// If a previous edit is still in progress, don't start another		
-	    if (fEditing) {
-	        return;
-	    }
-	    fEditing= true;
-		fVariable = variable;
-	    if (!delegateEdit(shell)) {
-	        doDefaultEdit(shell);
-	    }
-		fEditing= false;
-	}
-	
-	/**
-	 * Attempts to edit the variable by delegating to anyone who's
-	 * contributed a variable value editor via extension. Returns
-	 * <code>true</code> if a delegate handled the edit, <code>false</code>
-	 * if the variable still needs to be edited.
-	 * 
-     * @param shell a shell for prompting the user
-     * @return whether or not a delegate attempted to edit the variable
-     */
-    private boolean delegateEdit(Shell shell) {
-        String modelIdentifier = fVariable.getModelIdentifier();
-        IVariableValueEditor editor= VariableValueEditorManager.getDefault().getVariableValueEditor(modelIdentifier);
-        if (editor != null) {
-            return editor.editVariable(fVariable, shell);
-        }
-        return false;
-    }
-
-    /**
-     * Edits the variable using the default variable editor
-     * @param shell a shell for prompting the user
-     */
-    protected void doDefaultEdit(Shell shell) {
-	    String name= ""; //$NON-NLS-1$
-		String value= ""; //$NON-NLS-1$
-		try {
-			name= fVariable.getName();
-			value= fVariable.getValue().getValueString();
-		} catch (DebugException exception) {
-			DebugUIPlugin.errorDialog(shell, ActionMessages.ChangeVariableValue_errorDialogTitle,ActionMessages.ChangeVariableValue_errorDialogMessage, exception);	//$NON-NLS-2$ //$NON-NLS-1$
-			return;
-		}
-		ChangeVariableValueInputDialog inputDialog= new ChangeVariableValueInputDialog(shell, ActionMessages.ChangeVariableValue_1, MessageFormat.format(ActionMessages.ChangeVariableValue_2, new String[] {name}), value, new IInputValidator() { //$NON-NLS-1$ //$NON-NLS-2$
-			/**
-			 * Returns an error string if the input is invalid
-			 */
-			public String isValid(String input) {
-				try {
-					if (fVariable.verifyValue(input)) {
-						return null; // null means valid
-					}
-				} catch (DebugException exception) {
-					return ActionMessages.ChangeVariableValue_3; //$NON-NLS-1$
-				}
-				return ActionMessages.ChangeVariableValue_4; //$NON-NLS-1$
-			}
-		});
-		
-		inputDialog.open();
-		String newValue= inputDialog.getValue();
-		if (newValue != null) {
-			// null value means cancel was pressed
-			try {
-				fVariable.setValue(newValue);
-				getSelectionProvider().setSelection(new StructuredSelection(fVariable));
-			} catch (DebugException de) {
-				DebugUIPlugin.errorDialog(shell, ActionMessages.ChangeVariableValue_errorDialogTitle,ActionMessages.ChangeVariableValue_errorDialogMessage, de);	//$NON-NLS-2$ //$NON-NLS-1$
-			}
-		}
-	}
-		
-	/**
-	 * Updates the enabled state of this action based
-	 * on the selection
-	 */
-	protected void update(IStructuredSelection sel) {
-		Iterator iter= sel.iterator();
-		if (iter.hasNext()) {
-			Object object= iter.next();
-			if (object instanceof IValueModification) {
-				IValueModification varMod= (IValueModification)object;
-				if (!varMod.supportsValueModification()) {
-					setEnabled(false);
-					return;
-				}
-				setEnabled(!iter.hasNext());
-				return;
-			}
-		}
-		setEnabled(false);
-	}
-
-	/**
-	 * @see IAction#run()
-	 */
-	public void run() {
-		Iterator iterator= getStructuredSelection().iterator();
-		doActionPerformed((IVariable)iterator.next());
-	}
-	
-	/**
-	 * @see SelectionProviderAction#selectionChanged(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	public void selectionChanged(IStructuredSelection sel) {
-		update(sel);
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueInputDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueInputDialog.java
deleted file mode 100644
index 498f390..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ChangeVariableValueInputDialog.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.internal.ui.DialogSettingsHelper;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * A simple input dialog for soliciting an input string
- * from the user.
- * <p>
- * This concete dialog class can be instantiated as is, 
- * or further subclassed as required.
- * </p>
- */
-public class ChangeVariableValueInputDialog extends Dialog {
-	
-	
-	/**
-	 * The title of the dialog.
-	 */
-	private String title;
-	
-	/**
-	 * The message to display, or <code>null</code> if none.
-	 */
-	private String message;
-	
-	/**
-	 * The input value; the empty string by default.
-	 */
-	private String value= "";//$NON-NLS-1$
-	
-	/**
-	 * The input validator, or <code>null</code> if none.
-	 */
-	private IInputValidator validator;
-	
-	/**
-	 * Ok button widget.
-	 */
-	private Button okButton;
-	
-	/**
-	 * Input text widget.
-	 */
-	private Text text;
-	
-	/**
-	 * Error message label widget.
-	 */
-	private Label errorMessageLabel;
-	/**
-	 * Creates an input dialog with OK and Cancel buttons.
-	 * Note that the dialog will have no visual representation (no widgets)
-	 * until it is told to open.
-	 * <p>
-	 * Note that the <code>open</code> method blocks for input dialogs.
-	 * </p>
-	 *
-	 * @param parentShell the parent shell
-	 * @param dialogTitle the dialog title, or <code>null</code> if none
-	 * @param dialogMessage the dialog message, or <code>null</code> if none
-	 * @param initialValue the initial input value, or <code>null</code> if none
-	 *  (equivalent to the empty string)
-	 * @param validator an input validator, or <code>null</code> if none
-	 */
-	public ChangeVariableValueInputDialog(Shell parentShell, String dialogTitle, String dialogMessage, String initialValue, IInputValidator validator) {
-		super(parentShell);
-		this.title = dialogTitle;
-		message = dialogMessage;
-		if (initialValue == null)
-			value = "";//$NON-NLS-1$
-		else
-			value = initialValue;
-		this.validator = validator;
-		
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-	}
-	/* (non-Javadoc)
-	 * Method declared on Dialog.
-	 */
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == IDialogConstants.OK_ID) {
-			value= text.getText();
-		} else {
-			value= null;
-		}
-		super.buttonPressed(buttonId);
-	}
-	/* (non-Javadoc)
-	 * Method declared in Window.
-	 */
-	protected void configureShell(Shell shell) {
-		super.configureShell(shell);
-		if (title != null)
-			shell.setText(title);
-	}
-	/* (non-Javadoc)
-	 * Method declared on Dialog.
-	 */
-	protected void createButtonsForButtonBar(Composite parent) {
-		// create OK and Cancel buttons by default
-		okButton = createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-		
-		//do this here because setting the text will set enablement on the ok button
-		text.setFocus();
-		if (value != null) {
-			text.setText(value);
-			text.selectAll();
-		}
-	}
-	/* (non-Javadoc)
-	 * Method declared on Dialog.
-	 */
-	protected Control createDialogArea(Composite parent) {
-		Font font = parent.getFont();
-		// create composite
-		Composite composite = (Composite)super.createDialogArea(parent);
-		
-		// create message
-		if (message != null) {
-			Label label = new Label(composite, SWT.WRAP);
-			label.setText(message);
-			GridData data = new GridData(
-					GridData.GRAB_HORIZONTAL |
-					GridData.HORIZONTAL_ALIGN_FILL |
-					GridData.VERTICAL_ALIGN_CENTER);
-			data.widthHint = convertHorizontalDLUsToPixels(IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH);
-			label.setLayoutData(data);
-			label.setFont(font);
-		}
-		
-		text= new Text(composite, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL| SWT.H_SCROLL);
-		
-		GridData gridData= new GridData(GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_VERTICAL | GridData.VERTICAL_ALIGN_FILL);
-		gridData.heightHint = 50;
-		gridData.widthHint = 100;
-		text.setLayoutData(gridData);
-		text.setFont(font);
-		text.addModifyListener(
-				new ModifyListener() {
-					public void modifyText(ModifyEvent e) {
-						if (okButton.isEnabled()) {
-							return;
-						}
-						errorMessageLabel.setText(""); //$NON-NLS-1$
-						errorMessageLabel.getParent().update();
-						okButton.setEnabled(true);
-					}
-				}
-		);
-		
-		errorMessageLabel = new Label(composite, SWT.NONE);
-		errorMessageLabel.setLayoutData(new GridData(
-				GridData.GRAB_HORIZONTAL |
-				GridData.HORIZONTAL_ALIGN_FILL));
-		errorMessageLabel.setFont(font);
-		
-		
-		return composite;
-	}
-	/**
-	 * Returns the error message label.
-	 *
-	 * @return the error message label
-	 */
-	protected Label getErrorMessageLabel() {
-		return errorMessageLabel;
-	}
-	/**
-	 * Returns the ok button.
-	 *
-	 * @return the ok button
-	 */
-	protected Button getOkButton() {
-		return okButton;
-	}
-	/**
-	 * Returns the text area.
-	 *
-	 * @return the text area
-	 */
-	protected Text getText() {
-		return text;
-	}
-	/**
-	 * Returns the validator.
-	 *
-	 * @return the validator
-	 */
-	protected IInputValidator getValidator() {
-		return validator;
-	}
-	/**
-	 * Returns the string typed into this input dialog.
-	 *
-	 * @return the input string
-	 */
-	public String getValue() {
-		return value;
-	}
-	/**
-	 * Validates the input.
-	 * <p>
-	 * The default implementation of this framework method
-	 * delegates the request to the supplied input validator object;
-	 * if it finds the input invalid, the error message is displayed
-	 * in the dialog's message line.
-	 * This hook method is called whenever the text changes in the
-	 * input field.
-	 * </p>
-	 */
-	protected void validateInput() {
-		
-		String errorMessage = null;
-		
-		if (validator != null) {
-			errorMessage = validator.isValid(text.getText());
-		}
-		
-		// Bug 16256: important not to treat "" (blank error) the same as null (no error)
-		errorMessageLabel.setText(errorMessage == null ? "" : errorMessage); //$NON-NLS-1$
-		okButton.setEnabled(errorMessage == null);
-		
-		errorMessageLabel.getParent().update();
-	}
-	protected void okPressed() {
-		validateInput();
-		if (okButton.isEnabled()) {
-			super.okPressed();
-		}
-	}
-	
-	/**
-	 * Returns the name of the section that this dialog stores its settings in
-	 * 
-	 * @return String
-	 */
-	protected String getDialogSettingsSectionName() {
-		return IDebugUIConstants.PLUGIN_ID + ".CHANGE_VARIABLE_VALUE_DIALOG_SECTION"; //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#close()
-	 */
-	public boolean close() {
-		DialogSettingsHelper.persistShellGeometry(getShell(), getDialogSettingsSectionName());
-		return super.close();
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialLocation(org.eclipse.swt.graphics.Point)
-	 */
-	protected Point getInitialLocation(Point initialSize) {
-		Point initialLocation= DialogSettingsHelper.getInitialLocation(getDialogSettingsSectionName());
-		if (initialLocation != null) {
-			return initialLocation;
-		}
-		return super.getInitialLocation(initialSize);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialSize()
-	 */
-	protected Point getInitialSize() {
-		Point size = super.getInitialSize();
-		return DialogSettingsHelper.getInitialSize(getDialogSettingsSectionName(), size);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#handleShellCloseEvent()
-	 */
-	protected void handleShellCloseEvent() {
-		value= null;
-		super.handleShellCloseEvent();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CollapseAllAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CollapseAllAction.java
deleted file mode 100644
index bcdf91f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CollapseAllAction.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.AbstractTreeViewer;
-
-/**
- * CollapseAllAction
- */
-public class CollapseAllAction extends Action {
-	
-	private AbstractTreeViewer fViewer;
-	
-	public CollapseAllAction(AbstractTreeViewer viewer) {
-		super(ActionMessages.CollapseAllAction_0, DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_COLLAPSE_ALL)); //$NON-NLS-1$
-		setToolTipText(ActionMessages.CollapseAllAction_0); //$NON-NLS-1$
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_COLLAPSE_ALL));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_COLLAPSE_ALL));
-		fViewer = viewer;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		fViewer.collapseAll();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ConvertToWatchExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ConvertToWatchExpressionAction.java
deleted file mode 100644
index c4e2b9d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ConvertToWatchExpressionAction.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.Iterator;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * Convert one or more expressions to the equivalent watch expressions.
- * Refresh and re-evaluate the expressions if possible.
- */
-public class ConvertToWatchExpressionAction extends WatchExpressionAction {
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IStructuredSelection selection= getCurrentSelection();
-		IExpressionManager expressionManager= DebugPlugin.getDefault().getExpressionManager();
-		for (Iterator iter= selection.iterator(); iter.hasNext();) {
-			IExpression expression= (IExpression) iter.next();
-			// create the new watch expression
-			IWatchExpression watchExpression= expressionManager.newWatchExpression(expression.getExpressionText());
-			expressionManager.removeExpression(expression);
-			expressionManager.addExpression(watchExpression);
-			// refresh and re-evaluate
-			watchExpression.setExpressionContext(getContext());
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyToClipboardActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyToClipboardActionDelegate.java
deleted file mode 100644
index f85b5b1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyToClipboardActionDelegate.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ContentViewer;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.SWTError;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.dnd.Clipboard;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.TextTransfer;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.TreeItem;
-
-public class CopyToClipboardActionDelegate extends AbstractDebugActionDelegate {
-	
-	private TreeViewer fViewer;
-	
-	/**
-	 * @see AbstractDebugActionDelegate#initialize(IAction, ISelection)
-	 */
-	protected boolean initialize(IAction action, ISelection selection) {
-		if (!isInitialized()) {
-			IDebugView adapter= (IDebugView)getView().getAdapter(IDebugView.class);
-			if (adapter != null) {
-				if (adapter.getViewer() instanceof ContentViewer) {
-					setViewer((TreeViewer) adapter.getViewer());
-				}
-				adapter.setAction(getActionId(), action);
-			}
-			return super.initialize(action, selection);
-		} 
-		return false;
-	}
-
-	protected String getActionId() {
-		return IDebugView.COPY_ACTION;
-	}
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		return getViewer() != null && element instanceof IDebugElement;
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(TreeItem item, StringBuffer buffer) {
-		append(item, buffer, 0);
-	}
-
-	/** 
-	 * Appends the representation of the specified element (using the label provider and indent)
-	 * to the buffer.  For elements down to stack frames, children representations
-	 * are append to the buffer as well.
-	 */
-	protected void append(TreeItem item, StringBuffer buffer, int indent) {
-		for (int i= 0; i < indent; i++) {
-			buffer.append('\t');
-		}
-		buffer.append(item.getText());
-		buffer.append(System.getProperty("line.separator")); //$NON-NLS-1$
-		if (shouldAppendChildren(item)) {
-			TreeItem[] children= item.getItems();
-			for (int i = 0;i < children.length; i++) {
-				TreeItem child= children[i];
-				append(child, buffer, indent + 1);
-			}
-		}
-	}
-	
-	/**
-	 * Do the specific action using the current selection.
-	 */
-	public void run(IAction action) {
-		final Iterator iter= pruneSelection();
-		BusyIndicator.showWhile(Display.getCurrent(), new Runnable() {
-			public void run() {
-				StringBuffer buffer= new StringBuffer();
-				while (iter.hasNext()) {
-					doAction((TreeItem) iter.next(), buffer);
-				}
-				TextTransfer plainTextTransfer = TextTransfer.getInstance();
-				Clipboard clipboard= new Clipboard(getViewer().getControl().getDisplay());		
-				try {
-					doCopy(clipboard, plainTextTransfer, buffer);
-				} finally {
-					clipboard.dispose();
-				}
-			}
-		});
-	}
-	
-	protected void doCopy(Clipboard clipboard, TextTransfer plainTextTransfer, StringBuffer buffer) {
-		try {
-			clipboard.setContents(
-					new String[]{buffer.toString()}, 
-					new Transfer[]{plainTextTransfer});
-		} catch (SWTError e){
-			if (e.code != DND.ERROR_CANNOT_SET_CLIPBOARD) {
-				throw e;
-			}
-			if (MessageDialog.openQuestion(getViewer().getControl().getShell(), ActionMessages.CopyToClipboardActionDelegate_Problem_Copying_to_Clipboard_1, ActionMessages.CopyToClipboardActionDelegate_There_was_a_problem_when_accessing_the_system_clipboard__Retry__2)) { //$NON-NLS-1$ //$NON-NLS-2$
-				doCopy(clipboard, plainTextTransfer, buffer);
-			}
-		}	
-	}
-	
-	/**
-	 * Removes the duplicate items from the selection.
-	 * That is, if both a parent and a child are in a selection
-	 * remove the child.
-	 */
-	protected Iterator pruneSelection() {
-		TreeItem[] selection= getViewer().getTree().getSelection();
-		List items= new ArrayList(selection.length);
-		for (int i = 0; i < selection.length; i++) {
-			TreeItem item= selection[i];
-			if (isEnabledFor(item.getData())) {
-				if(walkHierarchy(item, items)) {
-					items.add(item);
-				}
-			}			
-		}
-		return items.iterator();
-	}
-	
-	/**
-	 * Returns whether the parent of the specified
-	 * element is already contained in the collection.
-	 */
-	protected boolean walkHierarchy(TreeItem item, List elements) {
-		TreeItem parent= item.getParentItem();
-		if (parent == null) {
-			return true;
-		}
-		if (elements.contains(parent)) {
-			return false;
-		}
-		return walkHierarchy(parent, elements);		
-	}
-	
-	protected boolean shouldAppendChildren(TreeItem item) {
-		Object data= item.getData();
-		return data instanceof IDebugTarget || data instanceof IThread;
-	}
-			
-	protected TreeViewer getViewer() {
-		return fViewer;
-	}
-
-	protected void setViewer(TreeViewer viewer) {
-		fViewer = viewer;
-	}
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) {
-		//not used
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyVariablesToClipboardActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyVariablesToClipboardActionDelegate.java
deleted file mode 100644
index 0f2adf8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/CopyVariablesToClipboardActionDelegate.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.swt.widgets.TreeItem;
-
-/**
- * Used to copy the values of variables to the clipboard from
- * the Variables and Expression views.
- */
-public class CopyVariablesToClipboardActionDelegate extends CopyToClipboardActionDelegate {
-
-	/**
-	 * Only append children that are expanded in the tree viewer
-	 */
-	protected boolean shouldAppendChildren(TreeItem item) {
-		return item.getExpanded();
-	}
-	
-	protected String getActionId() {
-		return IDebugView.COPY_ACTION + ".Variables"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugAsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugAsAction.java
deleted file mode 100644
index 9a870f6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugAsAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.LaunchShortcutsAction;
-
-/**
- * "Debug As" action in the top level "Run" menu.
- */
-public class DebugAsAction extends LaunchShortcutsAction {
-
-	public DebugAsAction() {
-		super(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugContextualLaunchAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugContextualLaunchAction.java
deleted file mode 100644
index c1b22de..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugContextualLaunchAction.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.actions.ContextualLaunchAction;
-
-public class DebugContextualLaunchAction extends ContextualLaunchAction {
-	
-	public DebugContextualLaunchAction() {
-		super(ILaunchManager.DEBUG_MODE);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugHistoryMenuAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugHistoryMenuAction.java
deleted file mode 100644
index 496a5e3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugHistoryMenuAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.AbstractLaunchHistoryAction;
-
-/**
- * Debug history menu in the top-level "Run" menu.
- */ 
-public class DebugHistoryMenuAction extends AbstractLaunchHistoryAction {
-	
-	public DebugHistoryMenuAction() {
-		super(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugLastAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugLastAction.java
deleted file mode 100644
index a68134a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugLastAction.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Relaunches the last debug-mode launch
- */
-public class DebugLastAction extends RelaunchLastAction {
-	
-	/**
-	 * @see RelaunchLastAction#getMode()
-	 */
-	public String getMode() {
-		return ILaunchManager.DEBUG_MODE;
-	}	
-	
-	/**
-	 * @see org.eclipse.debug.internal.ui.actions.LaunchDropDownAction#getLaunchGroupId()
-	 */
-	public String getLaunchGroupId() {
-		return IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP;
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugToolbarAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugToolbarAction.java
deleted file mode 100644
index 6e8152f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DebugToolbarAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.AbstractLaunchToolbarAction;
-
-/**
- * Debug drop-down history/favorites action.
- */
-public class DebugToolbarAction extends AbstractLaunchToolbarAction {
-
-	public DebugToolbarAction() {
-		super(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableBreakpointsAction.java
deleted file mode 100644
index 82b4d31..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableBreakpointsAction.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-public class DisableBreakpointsAction extends EnableBreakpointsAction {
-	
-	/**
-	 * This action disables breakpoints.
-	 */
-	protected boolean isEnableAction() {
-		return false;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableWatchExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableWatchExpressionAction.java
deleted file mode 100644
index 920d2b9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisableWatchExpressionAction.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-/**
- * 
- */
-public class DisableWatchExpressionAction extends EnableWatchExpressionAction {
-	
-	public DisableWatchExpressionAction() {
-		fEnable= false;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisconnectActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisconnectActionDelegate.java
deleted file mode 100644
index 2fa20a3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DisconnectActionDelegate.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IDisconnect;
-
-public class DisconnectActionDelegate extends AbstractListenerActionDelegate {
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) throws DebugException {
-		if (element instanceof IDisconnect) {
-			 ((IDisconnect) element).disconnect();
-		}
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isRunInBackground()
-	 */
-	protected boolean isRunInBackground() {
-		return true;
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		return element instanceof IDisconnect && ((IDisconnect) element).canDisconnect();
-	}
-		
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.DisconnectActionDelegate_Exceptions_occurred_attempting_to_disconnect__2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.DisconnectActionDelegate_Disconnect_failed_1; //$NON-NLS-1$
-	}
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.DisconnectActionDelegate_Disconnect_3; //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see ListenerActionDelegate#doHandleDebugEvent(DebugEvent)
-	 */
-	protected void doHandleDebugEvent(DebugEvent event) {	
-		if (event.getKind() == DebugEvent.TERMINATE && event.getSource() instanceof IDebugTarget) {
-			update(getAction(), getSelection());
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DropToFrameActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DropToFrameActionDelegate.java
deleted file mode 100644
index 5813bbf..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/DropToFrameActionDelegate.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDropToFrame;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-
-/**
- * Action delegate which performs a drop to frame.
- */
-public class DropToFrameActionDelegate extends AbstractListenerActionDelegate {
-
-    class UpdateJob extends Job {
-        IAction fAction;
-        ISelection fSelection;
-        
-        UpdateJob() {
-            super("Update Action Enablement"); //$NON-NLS-1$ System Job. Never intended to be seen by users.
-        }
-        
-        void setAction(IAction action) {
-            fAction = action;
-        }
-        void setSelection(ISelection selection) {
-            fSelection = selection;
-        }
-
-        protected IStatus run(IProgressMonitor monitor) {
-            DropToFrameActionDelegate.super.update(fAction, fSelection);
-            return Status.OK_STATUS;
-        }
-        
-    }
-    
-    private UpdateJob fUpdateJob = new UpdateJob();
-    
-    public DropToFrameActionDelegate() {
-        super();
-        fUpdateJob.setSystem(true);
-    }
-    
-    /**
-     * Performs the drop to frame.
-     * @see AbstractDebugActionDelegate#doAction(Object)
-     */
-    protected void doAction(Object element) throws DebugException {
-        if (element instanceof IDropToFrame) {
-            IDropToFrame dropToFrame= (IDropToFrame) element;
-            if (dropToFrame.canDropToFrame()) {
-                dropToFrame.dropToFrame();
-            }
-        }
-    }
-
-    /**
-     * @see AbstractDebugActionDelegate#isRunInBackground()
-     */
-    protected boolean isRunInBackground() {
-        return true;
-    }
-
-    /**
-     * Enable the action for implementers of IDropToFrame which are able to perform
-     * the drop to frame operation.
-     */
-    protected boolean isEnabledFor(Object element) {
-        return element instanceof IDropToFrame && ((IDropToFrame) element).canDropToFrame();
-    }
-
-    protected void update(IAction action, ISelection selection) {
-        fUpdateJob.setAction(action);
-        fUpdateJob.setSelection(selection);
-        fUpdateJob.schedule();
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditLaunchConfigurationAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditLaunchConfigurationAction.java
deleted file mode 100644
index a6805ef..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditLaunchConfigurationAction.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.text.MessageFormat;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * Opens the launch configuration dialog on a single launch configuration, based
- * on the the launch associated with the selected element.
- */
-public class EditLaunchConfigurationAction extends SelectionListenerAction {
-	
-	private ILaunchConfiguration fConfiguration = null;
-	private String fMode =null;
-
-	/**
-	 * Constructs a new action.
-	 */
-	public EditLaunchConfigurationAction() {
-		super(""); //$NON-NLS-1$
-		setEnabled(false);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.EDIT_LAUNCH_CONFIGURATION_ACTION);
-	}
-
-	/**
-	 * @see org.eclipse.ui.actions.SelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		setLaunchConfiguration(null);
-		setMode(null);
-		if (selection.size() == 1) {
-			Object object = selection.getFirstElement();
-			ILaunch launch = null;
-			if (object instanceof IAdaptable) {
-				launch = (ILaunch)((IAdaptable)object).getAdapter(ILaunch.class); 
-			}
-			if (launch == null) {
-				if (object instanceof ILaunch) {
-					launch = (ILaunch)object;
-				} else if (object instanceof IDebugElement) {
-					launch = ((IDebugElement)object).getLaunch();
-				} else if (object instanceof IProcess) {
-					launch = ((IProcess)object).getLaunch();
-				}
-			}
-			if (launch != null) {
-				ILaunchConfiguration configuration = launch.getLaunchConfiguration();
-				if (configuration != null) {
-					try {
-						// The DebugUIPlugin creates stand-in launches with copied configurations
-						// while a launch is waiting for a build. These copied configurations
-						// have an attribute that points to the config that the user is really
-						// launching.
-						String underlyingHandle = configuration.getAttribute(DebugUIPlugin.ATTR_LAUNCHING_CONFIG_HANDLE, ""); //$NON-NLS-1$
-						if (underlyingHandle.length() > 0) {
-							ILaunchConfiguration underlyingConfig = DebugPlugin.getDefault().getLaunchManager().getLaunchConfiguration(underlyingHandle);
-							if (underlyingConfig != null) {
-								configuration = underlyingConfig;
-							}
-						}
-					} catch (CoreException e1) {
-					}	
-					setLaunchConfiguration(configuration);
-					setMode(launch.getLaunchMode());
-					setText(MessageFormat.format(ActionMessages.EditLaunchConfigurationAction_1, new String[]{configuration.getName()})); //$NON-NLS-1$
-					ImageDescriptor descriptor = null;
-					try {
-						descriptor = DebugPluginImages.getImageDescriptor(configuration.getType().getIdentifier());
-					} catch (CoreException e) {
-						DebugUIPlugin.log(e);
-					}
-					setImageDescriptor(descriptor);
-				}
-			}
-		}
-		
-		// Disable the action if the launch config is private
-		ILaunchConfiguration config = getLaunchConfiguration();
-		if (config == null) {
-			return false;
-		}
-		return !DebugUITools.isPrivate(config);
-	}
-
-	protected void setLaunchConfiguration(ILaunchConfiguration configuration) {
-		fConfiguration = configuration;
-	}
-	
-	protected ILaunchConfiguration getLaunchConfiguration() {
-		return fConfiguration;
-	}
-	
-	protected void setMode(String mode) {
-		fMode = mode;
-	}
-	
-	protected String getMode() {
-		return fMode;
-	}
-	
-	/**
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		ILaunchGroup group = DebugUITools.getLaunchGroup(getLaunchConfiguration(), getMode());
-		if (group != null) {
-			DebugUITools.openLaunchConfigurationDialog(
-				DebugUIPlugin.getShell(), getLaunchConfiguration(),
-				group.getIdentifier(), null);
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditWatchExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditWatchExpressionAction.java
deleted file mode 100644
index 0e6bbc8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EditWatchExpressionAction.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-
-/**
- * Open the watch expression dialog for the select watch expression.
- * Re-evaluate and refresh the watch expression is necessary.
- */
-public class EditWatchExpressionAction extends WatchExpressionAction {
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IWatchExpression watchExpression= (IWatchExpression)getCurrentSelection().getFirstElement();
-		// display the watch expression dialog for the currently selected watch expression
-		new WatchExpressionDialog(DebugUIPlugin.getShell(), watchExpression, true).open();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableBreakpointsAction.java
deleted file mode 100644
index 6b453e8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableBreakpointsAction.java
+++ /dev/null
@@ -1,293 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-public class EnableBreakpointsAction implements IViewActionDelegate, IPartListener, IBreakpointsListener {
-	
-	private IViewPart fView;
-	private IAction fAction;
-	
-	public EnableBreakpointsAction() {
-	}
-		
-	protected IViewPart getView() {
-		return fView;
-	}
-
-	protected void setView(IViewPart view) {
-		fView = view;
-	}
-
-	/**
-	 * @see IViewActionDelegate#init(IViewPart)
-	 */
-	public void init(IViewPart view) {
-		setView(view);
-		DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener(this);
-		view.getViewSite().getPage().addPartListener(this);
-	}
-
-	protected void update() {
-		selectionChanged(getAction(), getView().getViewSite().getSelectionProvider().getSelection());
-	}
-	
-	/**
-	 * This action enables breakpoints.
-	 */
-	protected boolean isEnableAction() {
-		return true;
-	}
-	
-	/**
-	 * @see IActionDelegate#run(IAction)
-	 */
-	public void run(IAction action) {
-		IStructuredSelection selection= getSelection();
-		final int size= selection.size();
-		if (size == 0) {
-			return;
-		}
-		
-		final Iterator itr= selection.iterator();
-		final MultiStatus ms= new MultiStatus(DebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, ActionMessages.EnableBreakpointAction_Enable_breakpoint_s__failed_2, null); //$NON-NLS-1$
-		IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-			public void run(IProgressMonitor monitor) {
-				while (itr.hasNext()) {
-					Object element= itr.next();
-					try {
-						IBreakpoint[] breakpoints= null;
-						if (element instanceof IBreakpoint) {
-							breakpoints= new IBreakpoint[] { (IBreakpoint) element };
-						} else if (element instanceof BreakpointContainer) {
-							breakpoints= ((BreakpointContainer) element).getBreakpoints();
-						}
-						if (breakpoints != null) {
-							setEnabled(breakpoints);
-						}
-					} catch (CoreException e) {
-						ms.merge(e.getStatus());
-					}
-				}
-			}
-			public void setEnabled(IBreakpoint[] breakpoints) throws CoreException {
-				boolean enable= isEnableAction();
-				for (int i = 0; i < breakpoints.length; i++) {
-					breakpoints[i].setEnabled(enable);
-				}
-			}
-		};
-		
-		try {
-			ResourcesPlugin.getWorkspace().run(runnable, null, 0, new NullProgressMonitor());
-		} catch (CoreException e) {
-			// Exceptions are handled by runnable
-		}
-		
-		if (!ms.isOK()) {
-			IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-			if (window != null) {
-				DebugUIPlugin.errorDialog(window.getShell(), ActionMessages.EnableBreakpointAction_Enabling_breakpoints_3, ActionMessages.EnableBreakpointAction_Exceptions_occurred_enabling_the_breakpoint_s___4, ms); //$NON-NLS-2$ //$NON-NLS-1$
-			} else {
-				DebugUIPlugin.log(ms);
-			}
-		}
-	}
-
-	private IStructuredSelection getSelection() {
-		return (IStructuredSelection)getView().getViewSite().getSelectionProvider().getSelection();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		setAction(action);
-		if (!(selection instanceof IStructuredSelection)) {
-			return;
-		}
-		IStructuredSelection sel= (IStructuredSelection)selection;
-		
-		Iterator itr= sel.iterator();
-		boolean allEnabled= true;
-		boolean allDisabled= true;
-		while (itr.hasNext()) {
-			Object selected= itr.next();
-			if (selected instanceof BreakpointContainer) {
-				IBreakpoint[] breakpoints = ((BreakpointContainer) selected).getBreakpoints();
-				for (int i = 0; i < breakpoints.length; i++) {
-					try {
-						if (breakpoints[i].isEnabled()) {
-							allDisabled= false;
-						} else {
-							allEnabled= false;
-						}
-					} catch (CoreException ce) {
-						handleException(ce);
-					}
-				}
-			} else if (selected instanceof IBreakpoint) {
-				IBreakpoint bp= (IBreakpoint)selected;
-				try {
-					if (bp.isEnabled()) {
-						allDisabled= false;
-					} else {
-						allEnabled= false;
-					}
-				} catch (CoreException ce) {
-					handleException(ce);
-				}
-			} else {
-				return;
-			}
-			
-		}
-			
-		if (isEnableAction()) {
-			action.setEnabled(!allEnabled);
-		} else {
-			action.setEnabled(!allDisabled);
-		}
-	}
-	
-	private void handleException(CoreException ce) {
-		IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-		if (window != null) {
-			DebugUIPlugin.errorDialog(window.getShell(), ActionMessages.EnableBreakpointAction_Enabling_breakpoints_3, ActionMessages.EnableBreakpointAction_Exceptions_occurred_enabling_the_breakpoint_s___4, ce); //$NON-NLS-2$ //$NON-NLS-1$
-		} else {
-			DebugUIPlugin.log(ce);
-		}
-	}
-	
-
-	/**
-	 * Removes this action as a breakpoint and part listener.
-	 */
-	public void dispose() {
-		DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener(this);
-		getView().getViewSite().getPage().removePartListener(this);
-	}
-	
-	/**
-	 * @see IBreakpointsListener#breakpointsAdded(IBreakpoint[])
-	 */
-	public void breakpointsAdded(IBreakpoint[] breakpoints) {
-	}
-	
-	/**
-	 * @see IBreakpointsListener#breakpointsRemoved(IBreakpoint[], IMarkerDelta[])
-	 */
-	public void breakpointsRemoved(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {	
-		asynchUpdate();
-	}
-	
-	/**
-	 * @see IBreakpointsListener#breakpointsChanged(IBreakpoint[], IMarkerDelta[])
-	 */
-	public void breakpointsChanged(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-		asynchUpdate();
-	}
-	
-	protected void asynchUpdate() {
-		if (getAction() == null) {
-			return;
-		}
-		IWorkbenchWindow window= getView().getViewSite().getPage().getWorkbenchWindow();
-		if (window == null) {
-			return;
-		}
-		Shell shell= window.getShell();
-		if (shell == null || shell.isDisposed()) {
-			return;
-		}
-		Runnable r= new Runnable() {
-			public void run() {
-				IWorkbenchWindow ww= getView().getViewSite().getPage().getWorkbenchWindow();
-				if (ww == null) {
-					return;
-				}
-				Shell s= ww.getShell();
-				if (s == null || s.isDisposed()) {
-					return;
-				}
-				update();
-			}
-		};
-		
-		shell.getDisplay().asyncExec(r);
-	}
-	
-	protected IAction getAction() {
-		return fAction;
-	}
-
-	protected void setAction(IAction action) {
-		fAction = action;
-	}
-	/**
-	 * @see IPartListener#partActivated(IWorkbenchPart)
-	 */
-	public void partActivated(IWorkbenchPart part) {
-	}
-
-	/**
-	 * @see IPartListener#partBroughtToTop(IWorkbenchPart)
-	 */
-	public void partBroughtToTop(IWorkbenchPart part) {
-	}
-
-	/**
-	 * @see IPartListener#partClosed(IWorkbenchPart)
-	 */
-	public void partClosed(IWorkbenchPart part) {
-		if (part.equals(getView())) {
-			dispose();
-		}
-	}
-
-	/**
-	 * @see IPartListener#partDeactivated(IWorkbenchPart)
-	 */
-	public void partDeactivated(IWorkbenchPart part) {
-	}
-
-	/**
-	 * @see IPartListener#partOpened(IWorkbenchPart)
-	 */
-	public void partOpened(IWorkbenchPart part) {
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableWatchExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableWatchExpressionAction.java
deleted file mode 100644
index dc15da4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/EnableWatchExpressionAction.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import java.util.Iterator;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * 
- */
-public class EnableWatchExpressionAction implements IObjectActionDelegate {
-
-	private ISelection fSelection;
-	protected boolean fEnable= true;
-
-	/**
-	 * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		if (fSelection instanceof IStructuredSelection) {
-			Iterator iter= ((IStructuredSelection) fSelection).iterator();
-			IWatchExpression expression;
-			while (iter.hasNext()) {
-				expression= ((IWatchExpression) iter.next()); 
-				expression.setEnabled(fEnable);
-				fireWatchExpressionChanged(expression);
-			}
-		} else if (fSelection instanceof IWatchExpression) {
-			IWatchExpression expression= ((IWatchExpression) fSelection);
-			expression.setEnabled(fEnable);
-			fireWatchExpressionChanged(expression);
-		}
-	}
-
-	/**
-	 * @param expression
-	 */
-	private void fireWatchExpressionChanged(IWatchExpression expression) {
-		DebugPlugin.getDefault().fireDebugEventSet(new DebugEvent[] {new DebugEvent(expression, DebugEvent.CHANGE)});
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		fSelection= selection;
-		if (fSelection instanceof IStructuredSelection) {
-			boolean enabled= false;
-			Iterator iter= ((IStructuredSelection) selection).iterator();
-			while (iter.hasNext()) {
-				IWatchExpression expression = (IWatchExpression) iter.next();
-				if (expression.isEnabled() != fEnable) {
-					enabled= true;
-					break;
-				}
-			}
-			action.setEnabled(enabled);
-		} else if (fSelection instanceof IWatchExpression) {
-			action.setEnabled(((IWatchExpression) fSelection).isEnabled() != fEnable);
-		} else {
-			action.setEnabled(false);
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ExecutionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ExecutionAction.java
deleted file mode 100644
index 8ffc08d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ExecutionAction.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * This is the super class of the Run & Debug actions which appears in the desktop menu and toolbar.
- */
-public abstract class ExecutionAction implements IActionDelegate2 {
-	
-	private String fLaunchGroupIdentifier;
-	
-	public ExecutionAction(String launchGroupIdentifier) {
-		fLaunchGroupIdentifier = launchGroupIdentifier;
-	}
-	
-	/**
-	 * @see IActionDelegate2#runWithEvent(IAction, Event)
-	 */
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-
-	/**
-	 * Open the launch configuration dialog, passing in the current workbench selection.
-	 */
-	private void openLaunchConfigurationDialog() {
-		IWorkbenchWindow dwindow= DebugUIPlugin.getActiveWorkbenchWindow();
-		if (dwindow == null) {
-			return;
-		}
-		DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUIPlugin.getShell(), new StructuredSelection(), fLaunchGroupIdentifier);
-	}
-	
-	protected LaunchConfigurationManager getLaunchConfigurationManager() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager();
-	}
-	
-	/**
-	 * Returns the mode of a launcher to use for this action
-	 */
-	protected abstract String getMode();
-	
-	/**
-	 * @see org.eclipse.ui.IActionDelegate2#dispose()
-	 */
-	public void dispose() {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		ILaunchConfiguration configuration = getLaunchConfigurationManager().getLastLaunch(fLaunchGroupIdentifier);
-		if (configuration == null) {
-			openLaunchConfigurationDialog();
-		} else {
-			DebugUITools.launch(configuration, getMode());
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableAction.java
deleted file mode 100644
index c843037..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableAction.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.texteditor.IUpdate;
-import org.eclipse.ui.texteditor.IWorkbenchActionDefinitionIds;
-
-/**
- * Action which prompts the user to help them find a variable in
- * the variables view.
- */
-public class FindVariableAction extends Action implements IUpdate {
-	
-	private class FindVariableDelegate extends AbstractListenerActionDelegate {
-
-	    protected void doAction(Object element) {
-	        VariablesView view= (VariablesView) getView();
-	        Shell shell = view.getSite().getShell();
-	        FindVariableDialog dialog= new FindVariableDialog(shell, view);
-	        dialog.open();
-	    }
-
-	    protected void update(IAction action, ISelection s) {
-	    	if (action != null) {
-	    		((IUpdate) action).update();
-	    	}
-	    }
-
-	    protected void doHandleDebugEvent(DebugEvent event) {
-	        update(getAction(), null);
-	    }
-
-		public void run(IAction action) {
-			doAction(null);
-		}
-	}
-	
-	private AbstractListenerActionDelegate fDelegate;
-
-    public FindVariableAction(VariablesView view) {
-        setText(ActionMessages.FindVariableAction_0); //$NON-NLS-1$
-		setId(DebugUIPlugin.getUniqueIdentifier() + ".FindVariableAction"); //$NON-NLS-1$
-        PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.FIND_VARIABLE_ACTION);
-		setActionDefinitionId(IWorkbenchActionDefinitionIds.FIND_REPLACE);
-        fDelegate= new FindVariableDelegate();
-        fDelegate.init(view);
-        fDelegate.setAction(this);
-    }
-    
-    public void run() {
-    	fDelegate.run(this);
-    }
-
-	public void update() {
-		VariablesView view= (VariablesView) fDelegate.getView();
-		if (view != null) {
-			Viewer viewer = view.getViewer();
-			if (viewer != null) {
-				setEnabled(viewer.getInput() instanceof IStackFrame);
-				return;
-			}
-		}
-		setEnabled(false);
-	}
-
-    public void dispose() {
-        fDelegate.dispose();
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableDialog.java
deleted file mode 100644
index d7c30c5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/FindVariableDialog.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.DebugViewDecoratingLabelProvider;
-import org.eclipse.debug.internal.ui.views.DebugViewInterimLabelProvider;
-import org.eclipse.debug.internal.ui.views.DebugViewLabelDecorator;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.debug.internal.ui.views.variables.VariablesViewer;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IValueDetailListener;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.internal.ide.StringMatcher;
-
-public class FindVariableDialog extends Dialog {
-    
-    private TableViewer fViewer;
-    private VariablesView fView;
-    private Text fText;
-    private StringMatcher fMatcher;
-    private int fTextLength;
-    
-    private class FindVariableContentProvider implements IStructuredContentProvider {
-        public void dispose() {
-        }
-        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-        }
-        public Object[] getElements(Object inputElement) {
-            return getVariables(((VariablesViewer) fView.getViewer()).getTree().getItems());
-        }
-        private IVariable[] getVariables(TreeItem[] items) {
-            List variables= new ArrayList();
-            getVariables(items, variables);
-            return (IVariable[]) variables.toArray(new IVariable[variables.size()]);
-        }
-        private void getVariables(TreeItem[] items, List variables) {
-            for (int i = 0; i < items.length; i++) {
-                Object data = items[i].getData();
-                if (data instanceof IVariable) {
-                    variables.add(data);
-                }
-                getVariables(items[i].getItems(), variables);
-            }
-        }
-    }
-    
-    private class FindVariableFilter extends ViewerFilter {
-        public boolean select(Viewer viewer, Object parentElement, Object element) {
-            if (fMatcher == null) {
-                return true;
-            }
-            try {
-                String name= ((IVariable) element).getName();
-                fMatcher.match(name, 0, fTextLength - 1);
-                return fMatcher.match(name);
-            } catch (DebugException e) {
-            }
-            return false;
-        }
-    }
-    
-    private class FindVariableModelPresentation implements IDebugModelPresentation {
-        public Image getImage(Object element) {
-            IVariable variable= (IVariable) element;
-            IDebugModelPresentation presentation= fView.getPresentation(variable.getModelIdentifier());
-            return presentation.getImage(element);
-        }
-        public String getText(Object element) {
-            try {
-                return ((IVariable) element).getName();
-            } catch (DebugException e) {
-                DebugUIPlugin.log(e.getStatus());
-            }
-            return ActionMessages.FindVariableDialog_0; //$NON-NLS-1$
-        }
-        public void setAttribute(String attribute, Object value) {}
-        public void computeDetail(IValue value, IValueDetailListener listener) {}
-        public void addListener(ILabelProviderListener listener) {}
-        public void dispose() {}
-        public boolean isLabelProperty(Object element, String property) {
-            return false;
-        }
-        public void removeListener(ILabelProviderListener listener) {}
-        public IEditorInput getEditorInput(Object element) {
-            return null;
-        }
-        public String getEditorId(IEditorInput input, Object element) {
-            return null;
-        }
-    }
-
-    protected FindVariableDialog(Shell parentShell, VariablesView view) {
-        super(parentShell);
-        fView= view;
-    }
-
-    protected Control createDialogArea(Composite parent) {
-        Composite composite= (Composite) super.createDialogArea(parent);
-        
-        Label label= new Label(composite, SWT.NONE);
-        label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        label.setFont(parent.getFont());
-        label.setText(ActionMessages.FindVariableDialog_1); //$NON-NLS-1$
-        
-        fText= new Text(composite, SWT.SINGLE | SWT.BORDER);
-        fText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        fText.setFont(parent.getFont());
-        fText.addModifyListener(new ModifyListener() {
-            public void modifyText(ModifyEvent e) {
-                textModified();
-            }
-        });
-        
-        label= new Label(composite, SWT.NONE);
-        label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        label.setFont(parent.getFont());
-        label.setText(ActionMessages.FindVariableDialog_2); //$NON-NLS-1$
-        
-        fViewer= new TableViewer(composite, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
-        Table table = fViewer.getTable();
-        GridData gridData = new GridData(GridData.FILL_BOTH);
-        gridData.heightHint= 200;
-        table.setLayoutData(gridData);
-        table.setFont(parent.getFont());
-        fViewer.setContentProvider(new FindVariableContentProvider());
-        fViewer.addFilter(new FindVariableFilter());
-        fViewer.setInput(new Object());
-        FindVariableModelPresentation presentation = new FindVariableModelPresentation();
-        ILabelProvider provider= new DebugViewDecoratingLabelProvider(fViewer, new DebugViewInterimLabelProvider(presentation), new DebugViewLabelDecorator(presentation));
-        fViewer.setLabelProvider(provider);
-        fViewer.addPostSelectionChangedListener(new ISelectionChangedListener() {
-            public void selectionChanged(SelectionChangedEvent event) {
-                FindVariableDialog.this.selectionChanged();
-            }
-        });
-        
-        return composite;
-    }
-    
-    private void textModified() {
-        StringBuffer text = new StringBuffer(fText.getText());
-        if (text.length() == 0 || text.charAt(text.length() - 1) != '*') {
-            text.append("*"); //$NON-NLS-1$
-        }
-        fMatcher= new StringMatcher(text.toString(), true, false);
-        fTextLength= text.length();
-        fViewer.refresh(false);
-        if (((IStructuredSelection) fViewer.getSelection()).isEmpty()) {
-            Table table= fViewer.getTable();
-            if (table.getItemCount() > 0) {
-                fViewer.setSelection(new StructuredSelection(table.getItem(0).getData()));
-                selectionChanged();
-            }
-        }
-    }
-    
-    private void selectionChanged() {
-        fView.getViewer().setSelection(fViewer.getSelection(), true);
-    }
-
-    protected void createButtonsForButtonBar(Composite parent) {
-        createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,
-                true);
-    }
-
-    protected void configureShell(Shell newShell) {
-        newShell.setText(ActionMessages.FindVariableDialog_3); //$NON-NLS-1$
-        super.configureShell(newShell);
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchShortcutAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchShortcutAction.java
deleted file mode 100644
index 4b7fb05..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchShortcutAction.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.List;
-
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.IEvaluationContext;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchShortcutExtension;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * Launch shortcut action (proxy to a launch shortcut extension)
- */
-public class LaunchShortcutAction extends Action {
-	
-	private String fMode;
-	private LaunchShortcutExtension fShortcut; 
-
-
-	/**
-	 * Constructor for LaunchShortcutAction.
-	 */
-	public LaunchShortcutAction(String mode, LaunchShortcutExtension shortcut) {
-		super(shortcut.getLabel(), shortcut.getImageDescriptor());
-		fMode = mode;
-		fShortcut = shortcut;
-		updateEnablement();
-	}
-	
-	
-
-	/**
-	 * Runs with either the active editor or workbench selection.
-	 * 
-	 * @see IAction#run()
-	 */
-	public void run() {
-		IWorkbenchWindow wb = DebugUIPlugin.getActiveWorkbenchWindow();
-		if (wb != null) {
-			IWorkbenchPage page = wb.getActivePage();
-			if (page != null) {
-				ISelection selection = page.getSelection();
-				if (selection instanceof IStructuredSelection) {
-					fShortcut.launch(selection, fMode);
-				} else {
-					IEditorPart editor = page.getActiveEditor();
-					if (editor != null) {
-						fShortcut.launch(editor, fMode);
-					}
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Since these actions are re-created each time the run/debug as menu is
-	 * filled, the enablement of this action is static.
-	 */
-	private void updateEnablement() {
-		IWorkbenchWindow wb = DebugUIPlugin.getActiveWorkbenchWindow();
-		boolean enabled = false;
-		if (wb != null) {
-			IWorkbenchPage page = wb.getActivePage();
-			if (page != null) {
-				ISelection selection = page.getSelection();
-				if (selection instanceof IStructuredSelection) {
-					IStructuredSelection structuredSelection = (IStructuredSelection)selection;
-					try {
-						// check enablement logic, if any
-						Expression expression = fShortcut.getShortcutEnablementExpression();
-						if (expression == null) {
-							enabled = !structuredSelection.isEmpty();
-						} else {
-							List list = structuredSelection.toList();
-							IEvaluationContext context = new EvaluationContext(null, list);
-							context.addVariable("selection", list); //$NON-NLS-1$
-							enabled = fShortcut.evalEnablementExpression(context, expression);
-						}
-					} catch (CoreException e) {
-					}
-				} else {
-					IEditorPart editor = page.getActiveEditor();
-					if (editor != null) {
-						enabled = true;
-					}
-				}
-			}
-		}		
-		setEnabled(enabled);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchablePropertyTester.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchablePropertyTester.java
deleted file mode 100644
index 30239c8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LaunchablePropertyTester.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.actions.ILaunchable;
-
-/**
- * Tests if an object is launchable.
- */
-public class LaunchablePropertyTester extends PropertyTester {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
-	 */
-	public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
-		if (property.equals("launchable")) { //$NON-NLS-1$
-			if (DebugUIPlugin.getDefault().getLaunchConfigurationManager().launchModeAvailable((String)expectedValue)) {
-				return Platform.getAdapterManager().hasAdapter(receiver, ILaunchable.class.getName());
-			}
-		}
-		return false;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LinkBreakpointsWithDebugViewAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LinkBreakpointsWithDebugViewAction.java
deleted file mode 100644
index 1629fe7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/LinkBreakpointsWithDebugViewAction.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * An action which toggles the "Link with Debug View" preference on a
- * breakpoints view.
- */
-public class LinkBreakpointsWithDebugViewAction implements IViewActionDelegate {
-	
-	private BreakpointsView fView;
-	private IAction fAction= null;
-	
-	public LinkBreakpointsWithDebugViewAction() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		fView= (BreakpointsView) view;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		fView.setTrackSelection(action.isChecked());
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		if (fAction == null) {
-			action.setChecked(fView.isTrackingSelection());
-			fAction= action;
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModificationWatchpointToggleAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModificationWatchpointToggleAction.java
deleted file mode 100644
index 822afad..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModificationWatchpointToggleAction.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IWatchpoint;
-
-/**
- * Toggles access attribute of a watchpoint.
- */
-public class ModificationWatchpointToggleAction extends ModifyWatchpointAction {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.actions.ModifyWatchpointAction#isEnabled(org.eclipse.debug.core.model.IWatchpoint)
-     */
-    protected boolean isEnabled(IWatchpoint watchpoint) {
-        return watchpoint.supportsModification();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.actions.ModifyWatchpointAction#toggleWatchpoint(org.eclipse.debug.core.model.IWatchpoint, boolean)
-     */
-    protected void toggleWatchpoint(IWatchpoint watchpoint, boolean b) throws CoreException {
-        watchpoint.setModification(b);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.actions.ModifyWatchpointAction#isChecked(org.eclipse.debug.core.model.IWatchpoint)
-     */
-    protected boolean isChecked(IWatchpoint watchpoint) {
-        try {
-            return watchpoint.isModification();
-        } catch (CoreException e) {
-        }
-        return false;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModifyWatchpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModifyWatchpointAction.java
deleted file mode 100644
index 0925f16..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ModifyWatchpointAction.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import java.util.Iterator;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IWatchpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * Action that modifies a watchpoint's access/modification attributes
- */
-public abstract class ModifyWatchpointAction implements IObjectActionDelegate, IActionDelegate2 {
-    
-    private IStructuredSelection fWatchpoints = null;
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-     */
-    public void run(IAction action) {
-        try {
-	        if (fWatchpoints != null) {
-	            Iterator iterator = fWatchpoints.iterator();
-	            while (iterator.hasNext()) {
-	                IWatchpoint watchpoint = (IWatchpoint)iterator.next();
-	                toggleWatchpoint(watchpoint, action.isChecked());
-	            }
-	        }
-        } catch (CoreException e) {
-            DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), ActionMessages.ModifyWatchpointAction_0, ActionMessages.ModifyWatchpointAction_1, e.getStatus()); //$NON-NLS-1$ //$NON-NLS-2$
-        }
-
-    }
-    
-    /**
-     * Toggles the watch point attribute to the given value.
-     * 
-     * @param watchpoint
-     * @param b on or off
-     */
-    protected abstract void toggleWatchpoint(IWatchpoint watchpoint, boolean b) throws CoreException;
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-     */
-    public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-     */
-    public void selectionChanged(IAction action, ISelection selection) {
-        if (selection instanceof IStructuredSelection) {
-            fWatchpoints = (IStructuredSelection) selection;
-            if (!selection.isEmpty()) {
-	            Iterator iterator = fWatchpoints.iterator();
-	            while (iterator.hasNext()) {
-	                Object next = iterator.next();
-	                if (next instanceof IWatchpoint) {
-	                    IWatchpoint watchpoint = (IWatchpoint) next;
-	                    action.setChecked(isChecked(watchpoint));
-	                    if (!isEnabled(watchpoint)) {
-	                        action.setEnabled(false);
-	                        return;
-	                    }
-	                }
-	            }
-	            action.setEnabled(true);
-	            return;
-            }
-        }
-        action.setEnabled(false);
-    }
-
-    /**
-     * Returns whether the action should be checke for the current selection
-     * 
-     * @param watchpoint selected watchpoint
-     * @return whether the action should be checke for the current selection
-     */
-    protected abstract boolean isChecked(IWatchpoint watchpoint);
-
-    /**
-     * Returns whether this action is enabled for the given watchpoint.
-     * 
-     * @param watchpoint
-     * @return whether this action is enabled for the given watchpoint
-     */
-    protected abstract boolean isEnabled(IWatchpoint watchpoint);
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-     */
-    public void init(IAction action) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#dispose()
-     */
-    public void dispose() {
-        fWatchpoints = null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-     */
-    public void runWithEvent(IAction action, Event event) {
-        run(action);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenBreakpointMarkerAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenBreakpointMarkerAction.java
deleted file mode 100644
index 9dcee6f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenBreakpointMarkerAction.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.SelectionProviderAction;
-import org.eclipse.ui.ide.IDE;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-
-public class OpenBreakpointMarkerAction extends SelectionProviderAction {
-
-	protected static DelegatingModelPresentation fgPresentation = new DelegatingModelPresentation();
-	private IBreakpoint breakpoint;
-	private IEditorInput input;
-	
-	public OpenBreakpointMarkerAction(ISelectionProvider selectionProvider) {
-		super(selectionProvider, ActionMessages.OpenBreakpointMarkerAction__Go_to_File_1); //$NON-NLS-1$
-		setToolTipText(ActionMessages.OpenBreakpointMarkerAction_Go_to_File_for_Breakpoint_2); //$NON-NLS-1$
-		setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin("org.eclipse.ui", "icons/full/elcl16/gotoobj_tsk.gif")); //$NON-NLS-1$ //$NON-NLS-2$
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(
-			this,
-			IDebugHelpContextIds.OPEN_BREAKPOINT_ACTION);
-		setEnabled(false);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		IWorkbenchWindow dwindow= DebugUIPlugin.getActiveWorkbenchWindow();
-		if (dwindow == null) {
-			return;
-		}
-		IWorkbenchPage page= dwindow.getActivePage();
-		if (page == null) {
-			return;
-		}
-		
-		IStructuredSelection selection= getStructuredSelection();
-		if (selection.isEmpty()) {
-			setEnabled(false);
-			return;
-		}
-		
-		IEditorPart part= null;
-		if (input != null) {
-			String editorId = fgPresentation.getEditorId(input, breakpoint);
-            if (editorId != null) {
-    			try {
-    				part= page.openEditor(input, editorId);
-    			} catch (PartInitException e) {
-    				DebugUIPlugin.errorDialog(dwindow.getShell(), ActionMessages.OpenBreakpointMarkerAction_Go_to_Breakpoint_1, ActionMessages.OpenBreakpointMarkerAction_Exceptions_occurred_attempting_to_open_the_editor_for_the_breakpoint_resource_2, e); //$NON-NLS-1$ //$NON-NLS-2$
-    			}
-            }
-		}
-		if (part != null) {
-			part.setFocus();
-			IDE.gotoMarker(part, breakpoint.getMarker());
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.actions.SelectionProviderAction#selectionChanged(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	public void selectionChanged(IStructuredSelection sel) {
-		if (sel.size() == 1) {
-			Object element = sel.getFirstElement();
-			if (element instanceof IBreakpoint) {
-				breakpoint= (IBreakpoint) element;
-				input= fgPresentation.getEditorInput(breakpoint);
-				if (input != null) {
-					setEnabled(true);
-					return;
-				}
-			}
-		} else {
-			breakpoint = null;
-			input = null;
-		}
-		setEnabled(false);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenDebugConfigurations.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenDebugConfigurations.java
deleted file mode 100644
index 4445eee..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenDebugConfigurations.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.OpenLaunchDialogAction;
-
-/**
- * Opens the launch config dialog on the debug launch group.
- */
-public class OpenDebugConfigurations extends OpenLaunchDialogAction {
-
-	public OpenDebugConfigurations() {
-		super(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenProfileConfigurations.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenProfileConfigurations.java
deleted file mode 100644
index 51e62ee..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenProfileConfigurations.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.OpenLaunchDialogAction;
-
-/**
- * Opens the launch config dialog on the run launch group.
- */
-public class OpenProfileConfigurations extends OpenLaunchDialogAction {
-
-	public OpenProfileConfigurations() {
-		super(IDebugUIConstants.ID_PROFILE_LAUNCH_GROUP);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenRunConfigurations.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenRunConfigurations.java
deleted file mode 100644
index b84d912..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/OpenRunConfigurations.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.OpenLaunchDialogAction;
-
-/**
- * Opens the launch config dialog on the run launch group.
- */
-public class OpenRunConfigurations extends OpenLaunchDialogAction {
-
-	public OpenRunConfigurations() {
-		super(IDebugUIConstants.ID_RUN_LAUNCH_GROUP);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileAsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileAsAction.java
deleted file mode 100644
index 321d03c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileAsAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.LaunchShortcutsAction;
-
-/**
- * "Profile As" action in the top level "Run" menu.
- */
-public class ProfileAsAction extends LaunchShortcutsAction {
-
-	public ProfileAsAction() {
-		super(IDebugUIConstants.ID_PROFILE_LAUNCH_GROUP);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileContextualLaunchAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileContextualLaunchAction.java
deleted file mode 100644
index c2ddc5b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileContextualLaunchAction.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.actions.ContextualLaunchAction;
-
-/**
- * @author DWright
- *
- * To change the template for this generated type comment go to
- * Window - Preferences - Java - Code Generation - Code and Comments
- */
-public class ProfileContextualLaunchAction extends ContextualLaunchAction {
-	
-	public ProfileContextualLaunchAction() {
-		super(ILaunchManager.PROFILE_MODE);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileHistoryMenuAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileHistoryMenuAction.java
deleted file mode 100644
index 317ae7a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileHistoryMenuAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.AbstractLaunchHistoryAction;
-
-/**
- * Profile history menu in the top-level "Run" menu.
- */ 
-public class ProfileHistoryMenuAction extends AbstractLaunchHistoryAction {
-	
-	public ProfileHistoryMenuAction() {
-		super(IDebugUIConstants.ID_PROFILE_LAUNCH_GROUP);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileLastAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileLastAction.java
deleted file mode 100644
index e127254..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileLastAction.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Relaunches the last profile-mode launch
- */
-public class ProfileLastAction extends RelaunchLastAction {
-
-	/**
-	 * @see RelaunchLastAction#getMode()
-	 */
-	public String getMode() {
-		return ILaunchManager.PROFILE_MODE;
-	}	
-	
-	/**
-	 * @see org.eclipse.debug.internal.ui.actions.LaunchDropDownAction#getLaunchGroupId()
-	 */
-	public String getLaunchGroupId() {
-		return IDebugUIConstants.ID_PROFILE_LAUNCH_GROUP;
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileToolbarAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileToolbarAction.java
deleted file mode 100644
index 469f8fd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ProfileToolbarAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.AbstractLaunchToolbarAction;
-
-/**
- * Profile drop-down history/favorites action.
- */
-public class ProfileToolbarAction extends AbstractLaunchToolbarAction {
-
-	public ProfileToolbarAction() {
-		super(IDebugUIConstants.ID_PROFILE_LAUNCH_GROUP);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ReevaluateWatchExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ReevaluateWatchExpressionAction.java
deleted file mode 100644
index 331b20e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ReevaluateWatchExpressionAction.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.Iterator;
-
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-
-/**
- * Ask to re-evaluate one or more watch expressions in the context of the
- * currently selected thread.
- */
-public class ReevaluateWatchExpressionAction extends WatchExpressionAction {
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IDebugElement context = getContext();
-		for (Iterator iter= getCurrentSelection().iterator(); iter.hasNext();) {
-			IWatchExpression expression= (IWatchExpression) iter.next();
-			expression.setExpressionContext(context);
-			if (!expression.isEnabled()) {
-				// Force a reevaluation
-				expression.evaluate();
-			}
-		}
-	}
-	
-	/**
-	 * @see IActionDelegate#selectionChanged(IAction, ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		IDebugElement debugElement = getContext();
-		if (debugElement == null) {
-			action.setEnabled(false);
-		} else {
-			action.setEnabled(true);
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchActionDelegate.java
deleted file mode 100644
index 2c16547..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchActionDelegate.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.ui.DebugUITools;
-
-public class RelaunchActionDelegate extends AbstractDebugActionDelegate {
-	
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object object) {
-		ILaunch launch= getLaunch(object);
-        if (launch != null) {
-            relaunch(launch.getLaunchConfiguration(), launch.getLaunchMode());
-        }
-	}
-    
-    public static ILaunch getLaunch(Object element) {
-        ILaunch launch= null;
-        if (element instanceof IDebugElement) {
-            launch= ((IDebugElement)element).getLaunch();
-        } else if (element instanceof ILaunch) {
-            launch= ((ILaunch)element);
-        } else if (element instanceof IProcess) {
-            launch= ((IProcess)element).getLaunch();
-        }
-        return launch;
-    }
-	
-	/**
-	 * Re-launches the given configuration in the specified mode.
-	 */
-	public static void relaunch(ILaunchConfiguration config, String mode) {
-		DebugUITools.launch(config, mode);		
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		ILaunch launch= null;
-		if (element instanceof ILaunch) {
-			launch= (ILaunch)element;
-		} else if (element instanceof IDebugElement) {
-			launch= ((IDebugElement)element).getLaunch();
-		} else if (element instanceof IProcess) {
-			launch= ((IProcess)element).getLaunch();
-		}
-		
-		return launch != null && launch.getLaunchConfiguration() != null && LaunchConfigurationManager.isVisible(launch.getLaunchConfiguration());
-	}
-			
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.RelaunchActionDelegate_Launch_Failed_1; //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.RelaunchActionDelegate_Launch_1; //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.RelaunchActionDelegate_An_exception_occurred_while_launching_2; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchLastAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchLastAction.java
deleted file mode 100644
index f634133..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RelaunchLastAction.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-
-/**
- * Relaunches the last launch.
- */
-public abstract class RelaunchLastAction implements IWorkbenchWindowActionDelegate {
-	
-	private IWorkbenchWindow fWorkbenchWindow;
-	
-	private IAction fAction;
-	
-	/**
-	 * @see IWorkbenchWindowActionDelegate
-	 */
-	public void dispose(){
-	}
-
-	/**
-	 * @see IWorkbenchWindowActionDelegate
-	 */
-	public void init(IWorkbenchWindow window){
-		fWorkbenchWindow = window;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action){		
-		try {
-			final ILaunchConfiguration configuration = getLastLaunch();
-			if (configuration != null) {
-				if (configuration.supportsMode(getMode())) {
-					DebugUITools.launch(configuration, getMode());
-				} else {
-					String configName = configuration.getName();
-					String title = ActionMessages.RelaunchLastAction_Cannot_relaunch_1; //$NON-NLS-1$
-					String message = MessageFormat.format(ActionMessages.RelaunchLastAction_Cannot_relaunch___0___because_it_does_not_support__2__mode_2, new String[] {configName, getMode()}); //$NON-NLS-1$
-					MessageDialog.openError(getShell(), title, message);				
-				}
-			} else {
-				// If the history is empty, just open the launch config dialog
-				openLaunchConfigurationDialog();
-			}
-		} catch (CoreException ce) {
-			DebugUIPlugin.errorDialog(getShell(), ActionMessages.RelaunchLastAction_Error_relaunching_3, ActionMessages.RelaunchLastAction_Error_encountered_attempting_to_relaunch_4, ce); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-	
-	/**
-	 * Open the launch configuration dialog, passing in the current workbench selection.
-	 */
-	private void openLaunchConfigurationDialog() {
-		IWorkbenchWindow dwindow= DebugUIPlugin.getActiveWorkbenchWindow();
-		if (dwindow == null) {
-			return;
-		}
-		LaunchConfigurationsDialog dialog = new LaunchConfigurationsDialog(DebugUIPlugin.getShell(), DebugUIPlugin.getDefault().getLaunchConfigurationManager().getDefaultLanuchGroup(getMode()));		
-		dialog.setOpenMode(LaunchConfigurationsDialog.LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_LAST_LAUNCHED);
-		dialog.open();
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection){
-		if (fAction == null) {
-			initialize(action);
-		}		
-	}
-	
-	/**
-	 * Set the enabled state of the underlying action based on whether there are any
-	 * registered launch configuration types that understand how to launch in the
-	 * mode of this action.
-	 */
-	private void initialize(IAction action) {
-		fAction = action;
-		action.setEnabled(existsConfigTypesForMode());	
-	}
-	
-	/**
-	 * Return whether there are any registered launch configuration types for
-	 * the mode of this action.
-	 * 
-	 * @return whether there are any registered launch configuration types for
-	 * the mode of this action
-	 */
-	private boolean existsConfigTypesForMode() {
-		ILaunchConfigurationType[] configTypes = DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurationTypes();
-		for (int i = 0; i < configTypes.length; i++) {
-			ILaunchConfigurationType configType = configTypes[i];
-			if (configType.supportsMode(getMode())) {
-				return true;
-			}
-		}		
-		return false;
-	}
-	
-	
-	/**
-	 * Return the last launch that occurred in the workspace.
-	 */
-	protected ILaunchConfiguration getLastLaunch() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLastLaunch(getLaunchGroupId());
-	}
-	
-	protected Shell getShell() {
-		return fWorkbenchWindow.getShell();
-	}
-
-	/**
-	 * Returns the mode (run or debug) of this action.
-	 */
-	public abstract String getMode();
-	
-	/**
-	 * Returns the launch group id of this action.
-	 */
-	public abstract String getLaunchGroupId();	
-
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllBreakpointsAction.java
deleted file mode 100644
index 9272447..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllBreakpointsAction.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * Removes all breakpoints from the source (markers) and remove all
- * breakpoints from processes
- */
-public class RemoveAllBreakpointsAction extends AbstractRemoveAllActionDelegate implements IBreakpointsListener {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractRemoveAllActionDelegate#doAction()
-	 */
-	protected void doAction() {
-		final IBreakpointManager breakpointManager= DebugPlugin.getDefault().getBreakpointManager();
-		final IBreakpoint[] breakpoints= breakpointManager.getBreakpoints();
-		if (breakpoints.length < 1) {
-			return;
-		}
-		IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-		if (window == null) {
-			return;
-		}
-		boolean proceed = MessageDialog.openQuestion(window.getShell(), ActionMessages.RemoveAllBreakpointsAction_0, ActionMessages.RemoveAllBreakpointsAction_1); //$NON-NLS-1$ //$NON-NLS-2$
-		if (proceed) {
-            new Job(ActionMessages.RemoveAllBreakpointsAction_2) { //$NON-NLS-1$
-                protected IStatus run(IProgressMonitor monitor) {
-                    try {
-                        breakpointManager.removeBreakpoints(breakpoints, true);
-                    } catch (CoreException e) {
-                        DebugUIPlugin.log(e);
-                        return Status.CANCEL_STATUS;
-                    }
-                    return Status.OK_STATUS;
-                }
-            }.schedule();
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractRemoveAllActionDelegate#update()
-	 */
-	protected void update() {
-		getAction().setEnabled(
-			DebugPlugin.getDefault().getBreakpointManager().hasBreakpoints());
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsAdded(org.eclipse.debug.core.model.IBreakpoint[])
-	 */
-	public void breakpointsAdded(IBreakpoint[] breakpoints) {
-		if (getAction() != null && !getAction().isEnabled()){
-			update();
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsChanged(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
-	 */
-	public void breakpointsChanged(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsRemoved(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
-	 */
-	public void breakpointsRemoved(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-		if (getAction() != null) {
-			update();
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		super.init(view);
-		DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener(this);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-		DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener(this);	
-		super.dispose();
-	}
-    
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-     */
-    public void init(IWorkbenchWindow window) {
-        super.init(window);
-        DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener(this);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllExpressionsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllExpressionsAction.java
deleted file mode 100644
index 127c882..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllExpressionsAction.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.model.IExpression;
-
-/**
- * Removes all expressions from the expressions view.
- */
-public class RemoveAllExpressionsAction extends AbstractRemoveAllActionDelegate {
-
-	protected void doAction() {
-		IExpressionManager manager = DebugPlugin.getDefault().getExpressionManager();
-		IExpression[] expressions= manager.getExpressions();
-		manager.removeExpressions(expressions);
-	}
-	
-	protected void update() {
-		getAction().setEnabled(
-			DebugPlugin.getDefault().getExpressionManager().hasExpressions());
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllTerminatedAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllTerminatedAction.java
deleted file mode 100644
index 17b8099..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveAllTerminatedAction.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.ILaunchesListener;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.ui.IViewPart;
- 
-/**
- * Removes all terminated/detached launches from the
- * active debug view.
- */
-public class RemoveAllTerminatedAction extends AbstractRemoveAllActionDelegate implements ILaunchesListener {
-
-	/**
-	 * @see ListenerActionDelegate#doHandleDebugEvent(DebugEvent)
-	 */	
-	protected void doHandleDebugEvent(DebugEvent event) {	
-		if (event.getKind() == DebugEvent.TERMINATE) {
-			Object source = event.getSource();
-			if (event.getKind() == DebugEvent.TERMINATE && (source instanceof IDebugTarget || source instanceof IProcess)) {
-				update();
-			}
-		}
-	}
-
-	/** 
-	 * Updates the enabled state of this action to enabled if at
-	 * least one launch is terminated and relative to the current perspective.
-	 */
-	protected void update() {
-		ILaunch[] launches = DebugPlugin.getDefault().getLaunchManager().getLaunches();
-		if (launches != null) {
-			for (int i= 0; i < launches.length; i++) {
-				if (launches[i].isTerminated()) {
-					getAction().setEnabled(true);
-					return;
-				}
-			}
-		}
-		getAction().setEnabled(false);
-	}
-
-	protected void doAction() {
-		ILaunch[] launches = DebugPlugin.getDefault().getLaunchManager().getLaunches();
-		removeTerminatedLaunches(launches);
-	}
-
-	public static void removeTerminatedLaunches(ILaunch[] elements) {
-		List removed = new ArrayList();
-		for (int i = 0; i < elements.length; i++) {
-			ILaunch launch = elements[i];
-			if (launch.isTerminated()) {
-				removed.add(launch);
-			}
-		}
-		if (!removed.isEmpty()) {
-			ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager();
-			manager.removeLaunches((ILaunch[])removed.toArray(new ILaunch[removed.size()]));
-		}				
-	}
-	
-	/**
-	 * @see IViewActionDelegate#init(IViewPart)
-	 */
-	public void init(IViewPart view) {
-		super.init(view);
-		DebugPlugin.getDefault().getLaunchManager().addLaunchListener(this);
-		DebugPlugin.getDefault().addDebugEventListener(this);
-	}
-		
-	/**
-	 * @see IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-		//removes as a debug event listener
-		super.dispose();
-		DebugPlugin.getDefault().getLaunchManager().removeLaunchListener(this);
-        IViewPart view = getView();
-        if (view != null) {
-            view.getSite().getSelectionProvider().removeSelectionChangedListener((ISelectionChangedListener) getAction());
-        }
-	}
-	
-	/**
-	 * @see ILaunchesListener#launchesAdded(ILaunch[])
-	 */
-	public void launchesAdded(ILaunch[] launches) {
-	}
-
-	/**
-	 * @see ILaunchesListener#launchesChanged(ILaunch[])
-	 */
-	public void launchesChanged(ILaunch[] launches) {
-	}
-
-	/**
-	 * @see ILaunchesListener#launchesRemoved(ILaunch[])
-	 */
-	public void launchesRemoved(ILaunch[] launches) {
-		if (getAction().isEnabled()) {
-			update();
-		}
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveBreakpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveBreakpointAction.java
deleted file mode 100644
index d2572e2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveBreakpointAction.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IWorkbenchWindow;
-
-public class RemoveBreakpointAction extends AbstractRemoveActionDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IStructuredSelection selection= getSelection();
-		if (selection.isEmpty()) {
-			return;
-		}
-		final List state = ((BreakpointsView)getView()).getSelectionState();
-		final Iterator itr= selection.iterator();
-		final CoreException[] exception= new CoreException[1];
-		IWorkspaceRunnable runnable= new IWorkspaceRunnable() {
-			public void run(IProgressMonitor monitor) {
-				List breakpointsToDelete= new ArrayList();
-				boolean deleteContainers= false;
-				while (itr.hasNext()) {		
-						Object next= itr.next();
-						if (next instanceof IBreakpoint) {
-							breakpointsToDelete.add(next);
-						} else if (next instanceof BreakpointContainer) {
-						    if (!deleteContainers) {
-						        // Prompt the user to delete containers only once.
-						        deleteContainers = MessageDialog.openConfirm(getView().getSite().getShell(), ActionMessages.RemoveBreakpointAction_0, ActionMessages.RemoveBreakpointAction_1); //$NON-NLS-1$ //$NON-NLS-2$
-						        if (!deleteContainers) {
-						            // User cancelled. Do nothing
-						            return;
-						        }
-						    }
-						    // To get here, deletion has to have been confirmed.
-						    IBreakpoint[] breakpoints = ((BreakpointContainer) next).getBreakpoints();
-						    for (int i = 0; i < breakpoints.length; i++) {
-                                breakpointsToDelete.add(breakpoints[i]);
-                            }
-						}
-				}
-				final IBreakpoint[] breakpoints= (IBreakpoint[]) breakpointsToDelete.toArray(new IBreakpoint[0]);
-				new Job(ActionMessages.RemoveBreakpointAction_2) { //$NON-NLS-1$
-                    protected IStatus run(IProgressMonitor pmonitor) {
-                        try {
-                            DebugPlugin.getDefault().getBreakpointManager().removeBreakpoints(breakpoints, true);
-                            if (state != null) {
-                            	Runnable r = new Runnable() {
-								
-									public void run() {
-										((BreakpointsView) getView()).preserveSelectionState(state);
-									}
-								};
-								DebugUIPlugin.getStandardDisplay().asyncExec(r);
-                            }
-                            return Status.OK_STATUS;
-                        } catch (CoreException e) {
-                            DebugUIPlugin.log(e);
-                        }
-                        return Status.CANCEL_STATUS;
-                    }   
-                }.schedule();
-			}
-		};
-		try {
-			ResourcesPlugin.getWorkspace().run(runnable, null, 0, null);
-		} catch (CoreException ce) {
-			exception[0]= ce;
-		}
-		if (exception[0] != null) {
-			IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-			if (window != null) {
-				DebugUIPlugin.errorDialog(window.getShell(), ActionMessages.RemoveBreakpointAction_Removing_a_breakpoint_4,ActionMessages.RemoveBreakpointAction_Exceptions_occurred_attempting_to_remove_a_breakpoint__5 , exception[0]); //$NON-NLS-1$ //$NON-NLS-2$
-			} else {
-				DebugUIPlugin.log(exception[0]);
-			}
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#doAction(java.lang.Object)
-	 */
-	protected void doAction(Object element) {
-		//not used
-	}
-
-	protected boolean isEnabledFor(Object element) {
-		if (element instanceof BreakpointContainer)
-			return ((BreakpointContainer)element).getChildren().length > 0;
-		return super.isEnabledFor(element);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveExpressionAction.java
deleted file mode 100644
index a699857..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RemoveExpressionAction.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-
-public class RemoveExpressionAction extends AbstractRemoveActionDelegate {
-
-	protected void doAction(Object element) {
-		IExpressionManager manager = DebugPlugin.getDefault().getExpressionManager();
-		IExpression exp = getExpression(element);
-		if (exp != null) {
-			manager.removeExpression(exp);
-		}
-	}
-	
-	/**
-	 * Returns the expression associated with the given
-	 * element.
-	 * 
-	 * @param element an expression of child of an expression in
-	 *  the expression view.
-	 * @return associated expression
-	 */
-	protected IExpression getExpression(Object obj) {
-		if (getView() == null) {
-			return null;
-		}
-		IDebugView adapter= (IDebugView)getView().getAdapter(IDebugView.class);
-		if (adapter != null) {
-			Viewer v= adapter.getViewer();
-			if (v instanceof TreeViewer) {
-				ITreeContentProvider cp = (ITreeContentProvider)((TreeViewer)v).getContentProvider();
-				while (!(obj instanceof IExpression) && obj != null) {
-					obj = cp.getParent(obj);
-				}
-				return (IExpression)obj;
-			}	
-		}
-		return null;
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ResumeActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ResumeActionDelegate.java
deleted file mode 100644
index 2bb3e11..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ResumeActionDelegate.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.Iterator;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-public class ResumeActionDelegate extends AbstractListenerActionDelegate {
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object object) throws DebugException {
-	    if (isEnabledFor(object)) {
-	        ISuspendResume resume = (ISuspendResume)object;
-			resume.resume();
-	    } else {
-	        doActionForAllThreads(object);
-	    }
-	}
-	
-	/**
-	 * Resumes all threads in the target associated with the given element
-	 * 
-	 * @param object debug element
-	 * @throws DebugException on failure
-	 */
-	protected void doActionForAllThreads(Object object) throws DebugException {
-	    if (isEnabledForAllThreads(object)) {
-	        IDebugElement debugElement = (IDebugElement) object;
-	        IThread[] threads = debugElement.getDebugTarget().getThreads();
-	        for (int i = 0; i < threads.length; i++) {
-	            IThread thread = threads[i];
-	            if (thread.canResume()) {
-	                thread.resume();
-	            }
-	        }
-	    }
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isRunInBackground()
-	 */
-	protected boolean isRunInBackground() {
-		return true;
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		return element instanceof ISuspendResume && ((ISuspendResume) element).canResume();
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getEnableStateForSelection(IStructuredSelection)
-	 */
-	protected boolean getEnableStateForSelection(IStructuredSelection selection) {
-	    if (selection.isEmpty()) {
-	        return false;
-	    }
-		for (Iterator i = selection.iterator(); i.hasNext(); ) {
-			Object element = i.next();
-			if (!(isEnabledFor(element) || isEnabledForAllThreads(element))) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-	/**
-	 * Returns whether 'resume all threads' should be enabled for the given element.
-	 */
-	protected boolean isEnabledForAllThreads(Object element) {
-		if (element instanceof IDebugElement) {
-            IDebugElement debugElement = (IDebugElement) element;
-            try {
-                IThread[] threads = debugElement.getDebugTarget().getThreads();
-                for (int i = 0; i < threads.length; i++) {
-                    if (threads[i].canResume()) {
-                        return true;
-                    }
-                }
-            } catch (DebugException e) {
-            }
-        }
-		return false;
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.ResumeActionDelegate_Exceptions_occurred_attempting_to_resume__2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.ResumeActionDelegate_Resume_failed__1; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.ResumeActionDelegate_Resume_3; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetAction.java
deleted file mode 100644
index f2768a7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetAction.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IPartListener;
-import org.eclipse.ui.IPartService;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * Global retargettable debug action.
- * 
- * @since 3.0
- */
-public abstract class RetargetAction implements IWorkbenchWindowActionDelegate, IPartListener, IUpdate {
-	
-	protected IWorkbenchWindow fWindow = null;
-	private IWorkbenchPart fActivePart = null;
-	private Object fTargetAdapter = null;
-	private IAction fAction = null;
-	private static final ISelection EMPTY_SELECTION = new EmptySelection();  
-	
-	static class EmptySelection implements ISelection {
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ISelection#isEmpty()
-		 */
-		public boolean isEmpty() {
-			return true;
-		}
-		
-	}
-	
-	/**
-	 * Returns the current selection in the active part, possibly
-	 * and empty selection, but never <code>null</code>.
-	 * 
-	 * @return the selection in the active part, possibly empty
-	 */
-	private ISelection getTargetSelection() {
-		if (fActivePart != null) {
-			ISelectionProvider selectionProvider = fActivePart.getSite().getSelectionProvider();
-			if (selectionProvider != null) {
-				return selectionProvider.getSelection();
-			}
-		}
-		return EMPTY_SELECTION;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-		fWindow.getPartService().removePartListener(this);
-		fActivePart = null;
-		fTargetAdapter = null;
-		
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window) {
-		this.fWindow = window;
-		IPartService partService = window.getPartService();
-		partService.addPartListener(this);
-		IWorkbenchPart part = partService.getActivePart();
-		if (part != null) {
-			partActivated(part);
-		}
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		if (fTargetAdapter != null) {
-			try {
-				performAction(fTargetAdapter, getTargetSelection(), fActivePart);
-			} catch (CoreException e) {
-				DebugUIPlugin.errorDialog(fWindow.getShell(), ActionMessages.RetargetAction_2, ActionMessages.RetargetAction_3, e.getStatus()); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-	}
-	
-	/**
-	 * Performs the specific breakpoint toggling.
-	 * 
-	 * @param selection selection in the active part 
-	 * @param part active part
-	 * @throws CoreException if an exception occurrs
-	 */
-	protected abstract void performAction(Object target, ISelection selection, IWorkbenchPart part) throws CoreException;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		this.fAction = action;
-		// if the active part did not provide an adapter, see if the selectoin does
-		if (fTargetAdapter == null && selection instanceof IStructuredSelection) {
-			IStructuredSelection ss = (IStructuredSelection) selection;
-			if (!ss.isEmpty()) {
-				Object object = ss.getFirstElement();
-				if (object instanceof IAdaptable) {
-					fTargetAdapter = getAdapter((IAdaptable) object);
-				}
-			}
-		}
-		update();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener#partActivated(org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void partActivated(IWorkbenchPart part) {
-		fActivePart = part;
-		fTargetAdapter = getAdapter(part);
-		update();
-	}
-	
-	protected Object getAdapter(IAdaptable adaptable) {
-		Object adapter  = adaptable.getAdapter(getAdapterClass());
-		if (adapter == null) {
-			IAdapterManager adapterManager = Platform.getAdapterManager();
-			if (adapterManager.hasAdapter(adaptable, getAdapterClass().getName())) { //$NON-NLS-1$
-				fTargetAdapter = adapterManager.loadAdapter(adaptable, getAdapterClass().getName()); //$NON-NLS-1$
-			}
-		}
-		return adapter;
-	}
-	
-	/**
-	 * Returns the type of adapter (target) this action works on.
-	 * 
-	 * @return the type of adapter this action works on
-	 */
-	protected abstract Class getAdapterClass();
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener#partBroughtToTop(org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void partBroughtToTop(IWorkbenchPart part) {		
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener#partClosed(org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void partClosed(IWorkbenchPart part) {
-		clearPart(part);
-	}
-	
-	/**
-	 * Clears reference to active part and adapter when a relevant part
-	 * is closed or deactivated.
-	 * 
-	 * @param part workbench part that has been closed or deactivated
-	 */
-	protected void clearPart(IWorkbenchPart part) {
-		if (part.equals(fActivePart)) {
-			fActivePart = null;
-			fTargetAdapter = null;
-		}
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener#partDeactivated(org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void partDeactivated(IWorkbenchPart part) {
-		clearPart(part);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener#partOpened(org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void partOpened(IWorkbenchPart part) {		
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		if (fAction == null) {
-			return;
-		}
-		if (fTargetAdapter != null) {
-			fAction.setEnabled(canPerformAction(fTargetAdapter, getTargetSelection(), fActivePart));
-		} else {
-			fAction.setEnabled(false);
-		}
-	}
-	
-	/**
-	 * Returns whether the specific operation is supported.
-	 * 
-	 * @param target the target adapter 
-	 * @param selection the selection to verify the operation on
-	 * @param part the part the operation has been requested on
-	 * @return whether the operation can be performed
-	 */
-	protected abstract boolean canPerformAction(Object target, ISelection selection, IWorkbenchPart part); 
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetBreakpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetBreakpointAction.java
deleted file mode 100644
index b6f272b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetBreakpointAction.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.ui.actions.*;
-
-
-/**
- * Retargettable breakpoint action.
- * 
- * @since 3.0
- */
-public abstract class RetargetBreakpointAction extends RetargetAction {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetAction#getAdapterClass()
-	 */
-	protected Class getAdapterClass() {
-		return IToggleBreakpointsTarget.class;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetMethodBreakpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetMethodBreakpointAction.java
deleted file mode 100644
index 70515c5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetMethodBreakpointAction.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.ui.actions.*;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-
-/**
- * Global retargettable toggle method breakpoint action.
- * 
- * @since 3.0
- */
-public class RetargetMethodBreakpointAction extends RetargetBreakpointAction {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetBreakpointAction#performAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected void performAction(Object target, ISelection selection, IWorkbenchPart part) throws CoreException {
-		((IToggleBreakpointsTarget)target).toggleMethodBreakpoints(part, selection);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetBreakpointAction#canPerformAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected boolean canPerformAction(Object target, ISelection selection, IWorkbenchPart part) {
-		return ((IToggleBreakpointsTarget)target).canToggleMethodBreakpoints(part, selection);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetRunToLineAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetRunToLineAction.java
deleted file mode 100644
index 554260e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetRunToLineAction.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.*;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-
-/**
- * Global retargettable run to line action.
- * 
- * @since 3.0
- */
-public class RetargetRunToLineAction extends RetargetAction {
-	
-	private ISelectionListener selectionListener = new DebugSelectionListener();
-	private ISuspendResume targetElement = null;
-	
-	class DebugSelectionListener implements ISelectionListener {
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-		 */
-		public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-			targetElement = null;
-			if (selection instanceof IStructuredSelection) {
-				IStructuredSelection ss = (IStructuredSelection) selection;
-				if (ss.size() == 1) {
-					Object object = ss.getFirstElement();
-					if (object instanceof ISuspendResume) {
-						targetElement = (ISuspendResume) object;
-					}
-				}
-			}
-			update();
-		}
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-		fWindow.getSelectionService().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, selectionListener);
-		super.dispose();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window) {
-		super.init(window);
-		window.getSelectionService().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, selectionListener);
-	}
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetAction#canPerformAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected boolean canPerformAction(Object target, ISelection selection,	IWorkbenchPart part) {
-		return targetElement != null &&
-			((IRunToLineTarget)target).canRunToLine(part, selection, targetElement);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetAction#getAdapterClass()
-	 */
-	protected Class getAdapterClass() {
-		return IRunToLineTarget.class;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetAction#performAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected void performAction(Object target, ISelection selection, IWorkbenchPart part) throws CoreException {
-		((IRunToLineTarget)target).runToLine(part, selection, targetElement);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetToggleLineBreakpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetToggleLineBreakpointAction.java
deleted file mode 100644
index b567ba0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetToggleLineBreakpointAction.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.ui.actions.*;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-
-/**
- * Global retargettable toggle line breakpoint action.
- * 
- * @since 3.0
- */
-public class RetargetToggleLineBreakpointAction extends RetargetBreakpointAction {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetBreakpointAction#performAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected void performAction(Object target, ISelection selection, IWorkbenchPart part) throws CoreException {
-		((IToggleBreakpointsTarget)target).toggleLineBreakpoints(part, selection);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetBreakpointAction#canPerformAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected boolean canPerformAction(Object target, ISelection selection, IWorkbenchPart part) {
-		return ((IToggleBreakpointsTarget)target).canToggleLineBreakpoints(part, selection);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetWatchpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetWatchpointAction.java
deleted file mode 100644
index 42676b7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RetargetWatchpointAction.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.ui.actions.*;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-
-/**
- * Global retargettable toggle watchpoint action.
- * 
- * @since 3.0
- */
-public class RetargetWatchpointAction extends RetargetBreakpointAction {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetBreakpointAction#performAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected void performAction(Object target, ISelection selection, IWorkbenchPart part) throws CoreException {
-		((IToggleBreakpointsTarget)target).toggleWatchpoints(part, selection);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.RetargetBreakpointAction#canPerformAction(java.lang.Object, org.eclipse.jface.viewers.ISelection, org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected boolean canPerformAction(Object target, ISelection selection, IWorkbenchPart part) {
-		return ((IToggleBreakpointsTarget)target).canToggleWatchpoints(part, selection);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunAsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunAsAction.java
deleted file mode 100644
index efbd375..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunAsAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.LaunchShortcutsAction;
-
-/**
- * "Run As" action in the top level "Run" menu.
- */
-public class RunAsAction extends LaunchShortcutsAction {
-
-	public RunAsAction() {
-		super(IDebugUIConstants.ID_RUN_LAUNCH_GROUP);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunContextualLaunchAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunContextualLaunchAction.java
deleted file mode 100644
index 1648c19..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunContextualLaunchAction.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.actions.ContextualLaunchAction;
-
-public class RunContextualLaunchAction extends ContextualLaunchAction {
-	
-	public RunContextualLaunchAction() {
-		super(ILaunchManager.RUN_MODE);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunHistoryMenuAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunHistoryMenuAction.java
deleted file mode 100644
index fedfecc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunHistoryMenuAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.AbstractLaunchHistoryAction;
-
-/**
- * Run history menu in the top-level "Run" menu.
- */ 
-public class RunHistoryMenuAction extends AbstractLaunchHistoryAction {
-	
-	public RunHistoryMenuAction() {
-		super(IDebugUIConstants.ID_RUN_LAUNCH_GROUP);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunLastAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunLastAction.java
deleted file mode 100644
index c645a3c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunLastAction.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Relaunches the last run-mode launch
- */
-public class RunLastAction extends RelaunchLastAction {
-
-	/**
-	 * @see RelaunchLastAction#getMode()
-	 */
-	public String getMode() {
-		return ILaunchManager.RUN_MODE;
-	}	
-	
-	/**
-	 * @see org.eclipse.debug.internal.ui.actions.LaunchDropDownAction#getLaunchGroupId()
-	 */
-	public String getLaunchGroupId() {
-		return IDebugUIConstants.ID_RUN_LAUNCH_GROUP;
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunToolbarAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunToolbarAction.java
deleted file mode 100644
index 353cc19..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/RunToolbarAction.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.actions.AbstractLaunchToolbarAction;
-
-/**
- * Run drop-down history/favorites action.
- */
-public class RunToolbarAction extends AbstractLaunchToolbarAction {
-
-	public RunToolbarAction() {
-		super(IDebugUIConstants.ID_RUN_LAUNCH_GROUP);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllAction.java
deleted file mode 100644
index 0b0155d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllAction.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.IViewPart;
-
-public abstract class SelectAllAction extends AbstractListenerActionDelegate {
-
-	/**
-	 * @see IViewActionDelegate#init(IViewPart)
-	 */
-	public void init(IViewPart view) {
-		setView(view);
-		setWindow(view.getViewSite().getWorkbenchWindow());
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#initialize(IAction, ISelection)
-	 */
-	protected boolean initialize(IAction action, ISelection selection) {
-		if (!isInitialized()) {
-			IDebugView debugView =
-				(IDebugView) getView().getAdapter(IDebugView.class);
-			if (debugView != null) {
-				debugView.setAction(getActionId(), action);
-			}
-			return super.initialize(action, selection);
-		}
-		return false;
-	}
-
-	protected abstract String getActionId();
-	
-	/**
-	 * @see IActionDelegate#run(IAction)
-	 */
-	public void run(IAction action){
-		doAction(null);
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) {
-		if (!(getView() instanceof IDebugView)) {
-			return;
-		}
-		Viewer viewer = ((IDebugView) getView()).getViewer();
-		if (!(viewer instanceof TreeViewer)) {
-			return;
-		}
-		((TreeViewer) viewer).getTree().selectAll();
-		//ensure that the selection change callback is fired
-		viewer.setSelection(viewer.getSelection());
-	}
-	
-	protected abstract void update();
-	
-	protected void update(IAction action, ISelection selection) {
-		update();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllBreakpointsAction.java
deleted file mode 100644
index fb1b285..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllBreakpointsAction.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.ui.IViewPart;
-
-public class SelectAllBreakpointsAction extends SelectAllAction implements IBreakpointsListener {
-
-	protected void update() {
-		getAction().setEnabled(
-			DebugPlugin.getDefault().getBreakpointManager().hasBreakpoints());
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) {
-		if (!(getView() instanceof BreakpointsView)) {
-			return;
-		}
-		CheckboxTreeViewer viewer = ((BreakpointsView) getView()).getCheckboxViewer();
-		viewer.getTree().selectAll();
-		//ensure that the selection change callback is fired
-		viewer.setSelection(viewer.getSelection());
-	}
-
-	/**
-	 * @see IBreakpointsListener#breakpointsAdded(IBreakpoint[])breakpointAdded(IBreakpoint)
-	 */
-	public void breakpointsAdded(IBreakpoint[] breakpoints) {
-		if (getAction() != null && !getAction().isEnabled()) {
-			update();
-		}
-	}
-
-	/**
-	 * @see IBreakpointsListener#breakpointsChanged(IBreakpoint[], IMarkerDelta[])breakpointChanged(IBreakpoint, IMarkerDelta)
-	 */
-	public void breakpointsChanged(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-	}
-
-	/**
-     * @see IBreakpointsListener#breakpointsRemoved(IBreakpoint[], IMarkerDelta[])
-	 */
-	public void breakpointsRemoved(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-		if (getAction() != null) {
-			update();
-		}
-	}
-	
-	/**
-	 * @see IViewActionDelegate#init(IViewPart)
-	 */
-	public void init(IViewPart view) {
-		super.init(view);
-		DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener(this);
-	}
-	
-	public void dispose() {
-		DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener(this);	
-		super.dispose();
-	}
-	
-	protected String getActionId() {
-		return IDebugView.SELECT_ALL_ACTION;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllExpressionsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllExpressionsAction.java
deleted file mode 100644
index 58e0bcd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllExpressionsAction.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.ui.IDebugView;
-
-public class SelectAllExpressionsAction extends SelectAllAction {
-
-	protected void update() {
-		getAction().setEnabled(
-			DebugPlugin.getDefault().getExpressionManager().hasExpressions());
-	}
-	
-	protected String getActionId() {
-		return IDebugView.SELECT_ALL_ACTION + ".Variables"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllVariablesAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllVariablesAction.java
deleted file mode 100644
index 88af02d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SelectAllVariablesAction.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
- 
-public class SelectAllVariablesAction extends SelectAllAction {
-
-	protected void update() {
-		if (!(getView() instanceof IDebugView)) {
-			return;
-		}
-		Viewer viewer= ((IDebugView)getView()).getViewer();
-		getAction().setEnabled(((TreeViewer)viewer).getTree().getItemCount() != 0);
-	}
-	
-	protected String getActionId() {
-		return IDebugView.SELECT_ALL_ACTION + ".Variables"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowSupportedBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowSupportedBreakpointsAction.java
deleted file mode 100644
index bb4aa9a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowSupportedBreakpointsAction.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * An view filter action that filters showing breakpoints based on whether
- * the IDebugTarget of the selected debug element in the launch view supports
- * the breakpoints.
- * 
- * @see org.eclipse.debug.core.model.IDebugTarget#supportsBreakpoint(IBreakpoint)
- * 
- */
-public class ShowSupportedBreakpointsAction extends ToggleFilterAction implements ISelectionListener {
-
-	/**
-	 * The view associated with this action
-	 */
-	private BreakpointsView fView;
-	
-	/**
-	 * The list of identifiers for the current state
-	 */
-	private List fDebugTargets= new ArrayList(2);
-	
-	/**
-	 * A viewer filter that selects breakpoints that have
-	 * the same model identifier as the selected debug element
-	 */
-	class BreakpointFilter extends ViewerFilter {
-		
-		/**
-		 * @see ViewerFilter#select(Viewer, Object, Object)
-		 */
-		public boolean select(Viewer viewer, Object parentElement, Object element) {
-			if (element instanceof BreakpointContainer) {
-				// Breakpoint containers are visible if any of their children are visible.
-				IBreakpoint[] breakpoints = ((BreakpointContainer) element).getBreakpoints();
-				for (int i = 0; i < breakpoints.length; i++) {
-					if (select(viewer, element, breakpoints[i])) {
-						return true;
-					}
-				}
-				return false;
-			}
-			IBreakpoint breakpoint= (IBreakpoint)element;
-			if (fDebugTargets.isEmpty()) {
-				return true;
-			}
-			Iterator iterator= fDebugTargets.iterator();
-			while (iterator.hasNext()) {
-				IDebugTarget target = (IDebugTarget) iterator.next();
-				if (target.supportsBreakpoint(breakpoint)) {
-					return true;
-				}
-				
-			}
-			return false;
-		}
-
-	}
-
-	public ShowSupportedBreakpointsAction(StructuredViewer viewer, IViewPart view) {
-		super();
-		setText(ActionMessages.ShowSupportedBreakpointsAction_Show_For_Selected); //$NON-NLS-1$
-		setToolTipText(ActionMessages.ShowSupportedBreakpointsAction_tooltip); //$NON-NLS-1$
-		setViewerFilter(new BreakpointFilter());
-		setViewer(viewer);
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_OBJS_DEBUG_TARGET));
-		setChecked(false);
-		setId(DebugUIPlugin.getUniqueIdentifier() + ".ShowSupportedBreakpointsAction"); //$NON-NLS-1$
-		
-		setView(view);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(
-			this,
-			IDebugHelpContextIds.SHOW_BREAKPOINTS_FOR_MODEL_ACTION);
-		
-	}
-
-	
-		
-	public void dispose() {
-		if (isChecked()) {
-			getView().getSite().getPage().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		}
-	}
-	
-	/**
-	 * @see ISelectionListener#selectionChanged(IWorkbenchPart, ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		if (selection instanceof IStructuredSelection) {
-			IStructuredSelection ss= (IStructuredSelection)selection;
-			List debugTargets= getDebugTargets(ss);
-			if (!isChecked()) {
-				fDebugTargets= debugTargets;
-				return;
-			}
-			if (debugTargets.isEmpty()) {
-				 if(fDebugTargets.isEmpty()) {
-					return;
-				 } 
-				 reapplyFilters(debugTargets);
-				 return;
-			}
-			if (fDebugTargets.isEmpty()) {
-				reapplyFilters(debugTargets);
-				return;
-			}
-			
-			if (debugTargets.size() == fDebugTargets.size()) {
-				List copy= new ArrayList(debugTargets.size());
-				Iterator iter= fDebugTargets.iterator();
-				while (iter.hasNext()) {
-					IDebugTarget target = (IDebugTarget) iter.next();
-					Iterator newDebugTargets= debugTargets.iterator();
-					while (newDebugTargets.hasNext()) {
-						IDebugTarget newTarget= (IDebugTarget)newDebugTargets.next();
-						copy.add(newTarget);
-						if (target.equals(newTarget)) {
-							newDebugTargets.remove();
-						}
-					}
-				}
-				//check for real change
-				if (debugTargets.isEmpty()) {
-					return;
-				}
-				reapplyFilters(copy);
-			} 
-		}
-	}
-
-	
-	/**
-	 * Selection has changed in the debug view
-	 * need to reapply the filters.
-	 */
-	protected void reapplyFilters(List debugTargets) {
-		fDebugTargets= debugTargets;		
-		getViewer().refresh();
-	}
-	
-	protected IViewPart getView() {
-		return fView;
-	}
-
-	protected void setView(IViewPart view) {
-		fView = (BreakpointsView) view;
-	}
-	
-	protected List getDebugTargets(IStructuredSelection ss) {
-		List debugTargets= new ArrayList(2);
-		Iterator i= ss.iterator();
-		while (i.hasNext()) {
-			Object next= i.next();
-			if (next instanceof IDebugElement) {
-				debugTargets.add(((IDebugElement)next).getDebugTarget());
-			} else if (next instanceof ILaunch) {
-				IDebugTarget[] targets= ((ILaunch)next).getDebugTargets();
-				for (int j = 0; j < targets.length; j++) {
-					debugTargets.add(targets[j]);
-				}
-			} else if (next instanceof IProcess) {
-				IDebugTarget target= (IDebugTarget)((IProcess)next).getAdapter(IDebugTarget.class);
-				if (target != null) {
-					debugTargets.add(target);
-				}
-			}	
-		}
-		return debugTargets;
-	}
-	
-	/**
-	 * Adds or removes the viewer filter depending
-	 * on the value of the parameter.
-	 */
-	protected void valueChanged(boolean on) {
-		if (getViewer().getControl().isDisposed()) {
-			return;
-		}
-		if (on) {
-			getView().getSite().getPage().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-			ISelection selection= getView().getSite().getPage().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-			selectionChanged(null, selection);
-		} else {
-			getView().getSite().getPage().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		}
-		super.valueChanged(on);
-//		if (!on) {
-//			((BreakpointsView)getView()).initializeCheckedState((CheckboxTreeViewer) getViewer());
-//		}
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowTypesAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowTypesAction.java
deleted file mode 100644
index ec21181..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ShowTypesAction.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * An action that toggles the state of a viewer to
- * show/hide type names of variables.
- * Only viewers that use a <code>VariableLabelProvider</code> to render its
- * elements are effected.
- */
-public class ShowTypesAction extends Action {
-
-	private IDebugView fView;
-
-	public ShowTypesAction(IDebugView view) {
-		super(ActionMessages.ShowTypesAction_Show__Type_Names_1, IAction.AS_CHECK_BOX); //$NON-NLS-1$
-		setView(view);
-		setToolTipText(ActionMessages.ShowTypesAction_Show_Type_Names); //$NON-NLS-1$
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_TYPE_NAMES));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_TYPE_NAMES));
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_TYPE_NAMES));
-		setId(DebugUIPlugin.getUniqueIdentifier() + ".ShowTypesAction"); //$NON-NLS-1$
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.SHOW_TYPES_ACTION);
-	}
-
-	/**
-	 * @see Action#run()
-	 */
-	public void run() {
-		valueChanged(isChecked());
-	}
-
-	private void valueChanged(boolean on) {
-		if (getView().getViewer().getControl().isDisposed()) {
-			return;
-		}
-		
-		IDebugModelPresentation debugLabelProvider= (IDebugModelPresentation)getView().getAdapter(IDebugModelPresentation.class);
-		if (debugLabelProvider != null) {
-			debugLabelProvider.setAttribute(IDebugModelPresentation.DISPLAY_VARIABLE_TYPE_NAMES, (on ? Boolean.TRUE : Boolean.FALSE));			
-			BusyIndicator.showWhile(getView().getViewer().getControl().getDisplay(), new Runnable() {
-				public void run() {
-					getView().getViewer().refresh();					
-				}
-			});
-		}
-	}
-	
-	protected IDebugView getView() {
-		return fView;
-	}
-
-	protected void setView(IDebugView view) {
-		fView = view;
-	}
-}
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SkipAllBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SkipAllBreakpointsAction.java
deleted file mode 100644
index 48c97b8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SkipAllBreakpointsAction.java
+++ /dev/null
@@ -1,131 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import java.lang.reflect.InvocationTargetException;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointManagerListener;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * An action which toggles the breakpoint manager's enablement.
- * This causes debug targets which honor the manager's enablement
- * to skip (not suspend for) all breakpoints. 
- * 
- * This class also implements the window action delegate for the action presented as
- * part of the "Breakpoints" group for the "Run" menu.
- */
-public class SkipAllBreakpointsAction extends Action implements IWorkbenchWindowActionDelegate, IBreakpointManagerListener {
-	
-	//The real action if this is an action delegate
-	private IAction fAction;
-	
-	public SkipAllBreakpointsAction() {
-		super(ActionMessages.SkipAllBreakpointsAction_0); //$NON-NLS-1$
-		setToolTipText(ActionMessages.SkipAllBreakpointsAction_0); //$NON-NLS-1$
-		setDescription(ActionMessages.SkipAllBreakpointsAction_2); //$NON-NLS-1$
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_SKIP_BREAKPOINTS));
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.SKIP_ALL_BREAKPOINT_ACTION);
-		updateActionCheckedState();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run(){
-		final IBreakpointManager manager = getBreakpointManager();
-        IRunnableWithProgress runnable = new IRunnableWithProgress() {
-            public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
-                if(!monitor.isCanceled()) {
-                    manager.setEnabled(!manager.isEnabled());
-                } 
-            }
-        };
-        
-        try {
-            DebugUIPlugin.getDefault().getWorkbench().getProgressService().busyCursorWhile(runnable);
-        } catch (InvocationTargetException e) {
-        } catch (InterruptedException e) {
-        }
-	}
-	
-	/**
-	 * Updates the action's checked state to be opposite the enabled
-	 * state of the breakpoint manager.
-	 */
-	public void updateActionCheckedState() {
-		if (fAction != null) {
-			fAction.setChecked(!getBreakpointManager().isEnabled());
-		} else {
-			setChecked(!getBreakpointManager().isEnabled());
-		}
-	}
-	
-	/**
-	 * Returns the global breakpoint manager.
-	 * 
-	 * @return the global breakpoint manager
-	 */
-	public static IBreakpointManager getBreakpointManager() {
-		return DebugPlugin.getDefault().getBreakpointManager();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-		getBreakpointManager().removeBreakpointManagerListener(this);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window) {
-		updateActionCheckedState();
-		getBreakpointManager().addBreakpointManagerListener(this);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		run();	
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		fAction= action;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IBreakpointManagerListener#breakpointManagerEnablementChanged(boolean)
-	 */
-	public void breakpointManagerEnablementChanged(boolean enabled) {
-		if (fAction != null) {
-			fAction.setChecked(!enabled);
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StatusInfo.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StatusInfo.java
deleted file mode 100644
index 864aa5f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StatusInfo.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.util.Assert;
-
-/**
- * A settable IStatus. 
- * Can be an error, warning, info or ok. For error, info and warning states,
- * a message describes the problem.
- */
-public class StatusInfo implements IStatus {
-	
-	private String fStatusMessage;
-	private int fSeverity;
-	
-	/**
-	 * Creates a status set to OK (no message)
-	 */
-	public StatusInfo() {
-		this(OK, null);
-	}
-
-	/**
-	 * Creates a status .
-	 * @param severity The status severity: ERROR, WARNING, INFO and OK.
-	 * @param message The message of the status. Applies only for ERROR,
-	 * WARNING and INFO.
-	 */	
-	public StatusInfo(int severity, String message) {
-		fStatusMessage= message;
-		fSeverity= severity;
-	}		
-	
-	/**
-	 *  Returns if the status' severity is OK.
-	 */
-	public boolean isOK() {
-		return fSeverity == IStatus.OK;
-	}
-
-	/**
-	 *  Returns if the status' severity is WARNING.
-	 */	
-	public boolean isWarning() {
-		return fSeverity == IStatus.WARNING;
-	}
-
-	/**
-	 *  Returns if the status' severity is INFO.
-	 */	
-	public boolean isInfo() {
-		return fSeverity == IStatus.INFO;
-	}	
-
-	/**
-	 *  Returns if the status' severity is ERROR.
-	 */	
-	public boolean isError() {
-		return fSeverity == IStatus.ERROR;
-	}
-	
-	/**
-	 * @see IStatus#getMessage
-	 */
-	public String getMessage() {
-		return fStatusMessage;
-	}
-	
-	/**
-	 * Sets the status to ERROR.
-	 * @param The error message (can be empty, but not null)
-	 */	
-	public void setError(String errorMessage) {
-		Assert.isNotNull(errorMessage);
-		fStatusMessage= errorMessage;
-		fSeverity= IStatus.ERROR;
-	}
-
-	/**
-	 * Sets the status to WARNING.
-	 * @param The warning message (can be empty, but not null)
-	 */		
-	public void setWarning(String warningMessage) {
-		Assert.isNotNull(warningMessage);
-		fStatusMessage= warningMessage;
-		fSeverity= IStatus.WARNING;
-	}
-
-	/**
-	 * Sets the status to INFO.
-	 * @param The info message (can be empty, but not null)
-	 */		
-	public void setInfo(String infoMessage) {
-		Assert.isNotNull(infoMessage);
-		fStatusMessage= infoMessage;
-		fSeverity= IStatus.INFO;
-	}	
-
-	/**
-	 * Sets the status to OK.
-	 */		
-	public void setOK() {
-		fStatusMessage= null;
-		fSeverity= IStatus.OK;
-	}
-	
-	/*
-	 * @see IStatus#matches(int)
-	 */
-	public boolean matches(int severityMask) {
-		return (fSeverity & severityMask) != 0;
-	}
-
-	/**
-	 * Returns always <code>false</code>.
-	 * @see IStatus#isMultiStatus()
-	 */
-	public boolean isMultiStatus() {
-		return false;
-	}
-
-	/*
-	 * @see IStatus#getSeverity()
-	 */
-	public int getSeverity() {
-		return fSeverity;
-	}
-
-	/*
-	 * @see IStatus#getPlugin()
-	 */
-	public String getPlugin() {
-		return DebugUIPlugin.getUniqueIdentifier();
-	}
-
-	/**
-	 * Returns always <code>null</code>.
-	 * @see IStatus#getException()
-	 */
-	public Throwable getException() {
-		return null;
-	}
-
-	/**
-	 * Returns always the error severity.
-	 * @see IStatus#getCode()
-	 */
-	public int getCode() {
-		return fSeverity;
-	}
-
-	/**
-	 * Returns always <code>null</code>.
-	 * @see IStatus#getChildren()
-	 */
-	public IStatus[] getChildren() {
-		return new IStatus[0];
-	}	
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepActionDelegate.java
deleted file mode 100644
index 1a5fcdf..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepActionDelegate.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IStep;
-
-public abstract class StepActionDelegate extends AbstractListenerActionDelegate {
-	
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object object) throws DebugException {
-		if (object instanceof IStep) {
-			stepAction((IStep)object);
-		}
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isRunInBackground()
-	 */
-	protected boolean isRunInBackground() {
-		return true;
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		if (element instanceof IStep) {
-			return checkCapability((IStep)element);
-		}
-		return false;
-	}
-
-	/**
-	 * Returns whether the <code>IStep</code> has the capability to perform the
-	 * requested step action.
-	 */
-	protected abstract boolean checkCapability(IStep element);
-
-	/**
-	 * Performs the specific step action.
-	 *
-	 * @exception DebugException if the action fails
-	 */
-	protected abstract void stepAction(IStep element) throws DebugException;
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepIntoActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepIntoActionDelegate.java
deleted file mode 100644
index 7fa3aa9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepIntoActionDelegate.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IStep;
-
-public class StepIntoActionDelegate extends StepActionDelegate {
-	
-	/**
-	 * @see StepActionDelegate#checkCapability(IStep)
-	 */
-	protected boolean checkCapability(IStep element) {
-		return element.canStepInto();
-	}
-
-	/**
-	 * @see StepActionDelegate#stepAction(IStep)
-	 */
-	protected void stepAction(IStep element) throws DebugException {
-		element.stepInto();
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.StepIntoActionDelegate_Exceptions_occurred_attempting_to_step_into_the_frame_2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.StepIntoActionDelegate_Step_into_failed_1; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.StepIntoActionDelegate_Step_Into_3; //$NON-NLS-1$
-	}
-	/**
-	 * @see org.eclipse.debug.internal.ui.actions.StepActionDelegate#getActionDefinitionId()
-	 */
-	protected String getActionDefinitionId() {
-		return "org.eclipse.debug.internal.ui.actions.StepIntoActionDelegate"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepOverActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepOverActionDelegate.java
deleted file mode 100644
index 6e4e93d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepOverActionDelegate.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IStep;
-
-public class StepOverActionDelegate extends StepActionDelegate {
-
-	/**
-	 * @see StepActionDelegate#checkCapability(IStep)
-	 */
-	protected boolean checkCapability(IStep element) {
-		return element.canStepOver();
-	}
-
-	/**
-	 * @see StepActionDelegate#stepAction(IStep)
-	 */
-	protected void stepAction(IStep element) throws DebugException {
-		element.stepOver();
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.StepOverActionDelegate_Exceptions_occurred_attempting_to_step_over_the_frame_2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.StepOverActionDelegate_Step_over_failed_1; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.StepOverActionDelegate_Step_over_3; //$NON-NLS-1$
-	}
-	/**
-	 * @see org.eclipse.debug.internal.ui.actions.StepActionDelegate#getActionDefinitionId()
-	 */
-	 protected String getActionDefinitionId() {
-		return "org.eclipse.debug.internal.ui.actions.StepOverActionDelegate"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepReturnActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepReturnActionDelegate.java
deleted file mode 100644
index 3779b64..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/StepReturnActionDelegate.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IStep;
-
-public class StepReturnActionDelegate extends StepActionDelegate {
-
-	/**
-	 * @see StepActionDelegate#checkCapability(IStep)
-	 */
-	protected boolean checkCapability(IStep element) {
-		return element.canStepReturn();
-	}
-
-	/**
-	 * @see StepActionDelegate#stepAction(IStep)
-	 */
-	protected void stepAction(IStep element) throws DebugException {
-		element.stepReturn();
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.StepReturnActionDelegate_Exceptions_occurred_attempting_to_run_to_return_of_the_frame__2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.StepReturnActionDelegate_Run_to_return_failed__1; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.StepReturnActionDelegate_Run_to_Return_3; //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see org.eclipse.debug.internal.ui.actions.
-	 * StepActionDelegate#getActionDefinitionId()
-	 */
-	protected String getActionDefinitionId() {
-		return "org.eclipse.debug.internal.ui.actions.StepReturnActionDelegate"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SuspendActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SuspendActionDelegate.java
deleted file mode 100644
index 0e0bc9c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/SuspendActionDelegate.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.ISuspendResume;
-
-public class SuspendActionDelegate extends AbstractListenerActionDelegate {
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) throws DebugException {
-		if (element instanceof ISuspendResume) {
-			 ((ISuspendResume) element).suspend();
-		}
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isRunInBackground()
-	 */
-	protected boolean isRunInBackground() {
-		return true;
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		return element instanceof ISuspendResume && ((ISuspendResume)element).canSuspend();
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.SuspendActionDelegate_Exceptions_occurred_attempting_to_suspend__2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.SuspendActionDelegate_Suspend_failed_1; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.SuspendActionDelegate_Suspend_3; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateActionDelegate.java
deleted file mode 100644
index 6156b20..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateActionDelegate.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.ITerminate;
-
-public class TerminateActionDelegate extends AbstractListenerActionDelegate {
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) throws DebugException {
-		if (element instanceof ITerminate) {
-			((ITerminate)element).terminate();
-		}
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isRunInBackground()
-	 */
-	protected boolean isRunInBackground() {
-		return true;
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		return element instanceof ITerminate && ((ITerminate)element).canTerminate();
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.TerminateActionDelegate_Exceptions_occurred_attempting_to_terminate__2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.TerminateActionDelegate_Terminate_failed__1; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.TerminateActionDelegate_Terminate_3; //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see ListenerActionDelegate#doHandleDebugEvent(DebugEvent)
-	 */
-	protected void doHandleDebugEvent(DebugEvent event) {	
-		if (event.getKind() == DebugEvent.TERMINATE || event.getKind() == DebugEvent.CREATE) {
-			update(getAction(), getSelection());
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAllAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAllAction.java
deleted file mode 100644
index f24fceb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAllAction.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
- 
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-
-/**
- * Terminates all launches.
- */
-public class TerminateAllAction extends AbstractListenerActionDelegate {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#doAction(java.lang.Object)
-	 */
-	protected void doAction(Object element) throws DebugException {
-		if (element instanceof ILaunch) {
-			ILaunch launch = (ILaunch) element;
-			if (!launch.isTerminated() && DebugPlugin.getDefault().getLaunchManager().isRegistered(launch)) {
-				launch.terminate();
-			}			
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#isRunInBackground()
-	 */
-	protected boolean isRunInBackground() {
-		return true;
-	}
-	
-	/**
-	 * Update the action enablement based on the launches present in
-	 * the launch manager. selection is unused and can be <code>null</code>.
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#update(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	protected void update(IAction action, ISelection selection) {
-		ILaunchManager lManager= DebugPlugin.getDefault().getLaunchManager();
-		ILaunch[] launches= lManager.getLaunches();
-		for (int i= 0; i< launches.length; i++) {
-			ILaunch launch= launches[i];
-			if (!launch.isTerminated()) {
-				action.setEnabled(true);
-				return;
-			}
-		}
-		action.setEnabled(false);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		setAction(action);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractListenerActionDelegate#doHandleDebugEvent(org.eclipse.debug.core.DebugEvent)
-	 */
-	protected void doHandleDebugEvent(DebugEvent event) {
-		switch (event.getKind()) {
-			case DebugEvent.TERMINATE :
-				update(getAction(), null);
-				break;
-			case DebugEvent.CREATE :
-				update(getAction(), null);
-				break;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#getSelection()
-	 */
-	protected IStructuredSelection getSelection() {
-		return new StructuredSelection(DebugPlugin.getDefault().getLaunchManager().getLaunches());
-	}		
-	
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRelaunchAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRelaunchAction.java
deleted file mode 100644
index 0762f3b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRelaunchAction.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.ITerminate;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-
-/**
- * Action which terminates a launch and then relaunches it.
- * This is equivalent to the Terminate action followed by
- * Relaunch, but is provided to the user as a convenience.
- */
-public class TerminateAndRelaunchAction extends AbstractListenerActionDelegate {
-
-    protected void doAction(Object element) throws DebugException {
-        final ILaunch launch= RelaunchActionDelegate.getLaunch(element);
-        if (launch == null || !(element instanceof ITerminate)) {
-            // Shouldn't happen because of enablement check.
-            return;
-        }
-        
-        ((ITerminate)element).terminate();
-        DebugUIPlugin.getStandardDisplay().asyncExec(new Runnable() {
-            public void run() {
-                // Must be run in the UI thread since the launch can require prompting to proceed
-                RelaunchActionDelegate.relaunch(launch.getLaunchConfiguration(), launch.getLaunchMode());        
-            }
-        });
-    }
-    
-    /**
-     * @see AbstractDebugActionDelegate#isRunInBackground()
-     */
-    protected boolean isRunInBackground() {
-        return true;
-    }
-
-    /**
-     * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-     */
-    protected boolean isEnabledFor(Object element) {
-        return element instanceof ITerminate && ((ITerminate)element).canTerminate() &&
-            RelaunchActionDelegate.getLaunch(element) != null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRemoveActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRemoveActionDelegate.java
deleted file mode 100644
index 4b87b59..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/TerminateAndRemoveActionDelegate.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.ITerminate;
-import org.eclipse.debug.internal.ui.views.launch.LaunchView;
-
-public class TerminateAndRemoveActionDelegate extends AbstractDebugActionDelegate {
-
-	/**
-	 * @see AbstractDebugActionDelegate#doAction(Object)
-	 */
-	protected void doAction(Object element) throws DebugException {
-		LaunchView.terminateAndRemove(element);
-	}
-	
-	/**
-	 * @see AbstractDebugActionDelegate#isRunInBackground()
-	 */
-	protected boolean isRunInBackground() {
-		return true;
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#isEnabledFor(Object)
-	 */
-	protected boolean isEnabledFor(Object element) {
-		if (element instanceof ITerminate) {
-			ITerminate terminate= (ITerminate)element;
-			//do not want to terminate an attach launch that does not
-			//have termination enabled
-			return terminate.canTerminate() || terminate.isTerminated();
-		}
-		return false;
-	}	
-
-	/**
-	 * @see AbstractDebugActionDelegate#getStatusMessage()
-	 */
-	protected String getStatusMessage() {
-		return ActionMessages.TerminateAndRemoveActionDelegate_Exceptions_occurred_attempting_to_terminate_and_remove_2; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogMessage()
-	 */
-	protected String getErrorDialogMessage() {
-		return ActionMessages.TerminateAndRemoveActionDelegate_Terminate_and_remove_failed_1; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractDebugActionDelegate#getErrorDialogTitle()
-	 */
-	protected String getErrorDialogTitle() {
-		return ActionMessages.TerminateAndRemoveActionDelegate_Terminate_and_Remove__3; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleBreakpointObjectActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleBreakpointObjectActionDelegate.java
deleted file mode 100644
index bef10dc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleBreakpointObjectActionDelegate.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.ui.actions.IToggleBreakpointsTarget;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * A toggle breakpoint action that can be contributed to an object. The action
- * will perform a toggle breakpoint operation for a selected object.
- * <p>
- * EXPERIMENTAL
- * </p>
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 3.0
- */
-public abstract class ToggleBreakpointObjectActionDelegate implements IObjectActionDelegate, IActionDelegate2 {
-	
-	private IWorkbenchPart fPart;
-	private IStructuredSelection fSelection;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-		fPart = targetPart;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IAdaptable adaptable = (IAdaptable) fSelection.getFirstElement();
-		IToggleBreakpointsTarget target = (IToggleBreakpointsTarget) adaptable.getAdapter(IToggleBreakpointsTarget.class);
-		if (target == null) {
-			IAdapterManager adapterManager = Platform.getAdapterManager();
-			target = (IToggleBreakpointsTarget) adapterManager.loadAdapter(adaptable, IToggleBreakpointsTarget.class.getName());
-		}
-		if (target != null) {
-			try {
-				performAction(target, fPart, fSelection);
-			} catch (CoreException e) {
-				DebugPlugin.log(e);
-			}
-		}
-	}
-	
-	/**
-	 * Performs the operation specific to this action.
-	 *  
-	 * @param target adapter to toggle breakpoints
-	 * @param part the active part
-	 * @param selection the seleciton in the active part
-	 * @exception CoreException if an exception occurrs
-	 */
-	protected abstract void performAction(IToggleBreakpointsTarget target, IWorkbenchPart part, ISelection selection) throws CoreException;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		boolean enabled = false;
-		if (selection instanceof IStructuredSelection) {
-			IStructuredSelection ss = (IStructuredSelection) selection;
-			this.fSelection = ss;
-			if (!ss.isEmpty()) {
-				Object object = ss.getFirstElement();
-				if (object instanceof IAdaptable) {
-					IAdaptable adaptable = (IAdaptable) object;
-					IToggleBreakpointsTarget target = (IToggleBreakpointsTarget) adaptable.getAdapter(IToggleBreakpointsTarget.class);
-					if (target == null) {
-						IAdapterManager adapterManager = Platform.getAdapterManager();
-						enabled = adapterManager.hasAdapter(adaptable, IToggleBreakpointsTarget.class.getName());
-					} else {
-						enabled = true;
-					}
-				}
-			}
-		}
-		action.setEnabled(enabled);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#dispose()
-	 */
-	public void dispose() {
-		fSelection = null;
-		fPart = null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-	 */
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleDetailPaneAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleDetailPaneAction.java
deleted file mode 100644
index 4308e23..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleDetailPaneAction.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Action that controls the appearance of the details pane in debug views such
- * as the VariablesView and the ExpressionsView.  Instances of this class can be
- * created to show the detail pane underneath the main tree, to the right of the
- * main tree, or not shown at all.
- * 
- * @since 3.0
- */
-public class ToggleDetailPaneAction extends Action {
-
-	private VariablesView fVariablesView;
-	
-	private String fOrientation;
-
-	public ToggleDetailPaneAction(VariablesView view, String orientation, String hiddenLabel) {
-		super("", AS_RADIO_BUTTON); //$NON-NLS-1$
-		setVariablesView(view);
-		setOrientation(orientation);
-				
-		if (orientation == IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_UNDERNEATH) {
-			setText(ActionMessages.ToggleDetailPaneAction_1);  //$NON-NLS-1$
-			setToolTipText(ActionMessages.ToggleDetailPaneAction_2);  //$NON-NLS-1$
-			setDescription(ActionMessages.ToggleDetailPaneAction_3);  //$NON-NLS-1$
-			setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_DETAIL_PANE_UNDER));
-			setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_DETAIL_PANE_UNDER));
-			setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_DETAIL_PANE_UNDER));
-		} else if (orientation == IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_RIGHT) {
-			setText(ActionMessages.ToggleDetailPaneAction_4);  //$NON-NLS-1$
-			setToolTipText(ActionMessages.ToggleDetailPaneAction_5);  //$NON-NLS-1$
-			setDescription(ActionMessages.ToggleDetailPaneAction_6);  //$NON-NLS-1$
-			setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_DETAIL_PANE_RIGHT));
-			setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_DETAIL_PANE_RIGHT));
-			setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_DETAIL_PANE_RIGHT));
-		} else {
-			setText(hiddenLabel);
-			setToolTipText(ActionMessages.ToggleDetailPaneAction_8);  //$NON-NLS-1$
-			setDescription(ActionMessages.ToggleDetailPaneAction_9);  //$NON-NLS-1$
-			setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_DETAIL_PANE_HIDE));
-			setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_DETAIL_PANE_HIDE));
-			setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_DETAIL_PANE_HIDE));
-		} 		
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.SHOW_DETAIL_PANE_ACTION);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		getVariablesView().setDetailPaneOrientation(getOrientation()); 
-	}
-	
-	private VariablesView getVariablesView() {
-		return fVariablesView;
-	}
-
-	private void setVariablesView(VariablesView variablesView) {
-		fVariablesView = variablesView;
-	}
-
-	private void setOrientation(String orientation) {
-		fOrientation = orientation;
-	}
-
-	public String getOrientation() {
-		return fOrientation;
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleFilterAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleFilterAction.java
deleted file mode 100644
index b2ba81c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleFilterAction.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.custom.BusyIndicator;
-
-/**
- * A generic Toggle filter action, meant to be subclassed to provide
- * a specific filter.
- */
-public abstract class ToggleFilterAction extends Action {
-
-	/**
-	 * The viewer that this action works for
-	 */
-	private StructuredViewer fViewer;
-	
-	/**
-	 * The filter this action applies to the viewer
-	 */
-	private ViewerFilter fViewerFilter;
-
-	public void run() {
-		valueChanged(isChecked());
-	}
-	/**
-	 * Adds or removes the viewer filter depending
-	 * on the value of the parameter.
-	 */
-	protected void valueChanged(final boolean on) {
-		if (getViewer().getControl().isDisposed()) {
-			return;
-		}
-		BusyIndicator.showWhile(getViewer().getControl().getDisplay(), new Runnable() {
-			public void run() {
-				if (on) {
-					ViewerFilter filter= getViewerFilter();
-					ViewerFilter[] filters= getViewer().getFilters();
-					boolean alreadyAdded= false;
-					for (int i= 0; i < filters.length; i++) {
-						ViewerFilter addedFilter= filters[i];
-						if (addedFilter.equals(filter)) {
-							alreadyAdded= true;
-							break;
-						}
-					}
-					if (!alreadyAdded) {
-						getViewer().addFilter(filter);
-					}
-					
-				} else {
-					getViewer().removeFilter(getViewerFilter());
-				}
-			}
-		});
-	}
-
-	/**
-	 * Returns the <code>ViewerFilter</code> that this action
-	 * will add/remove from the viewer, or <code>null</code>
-	 * if no filter is involved.
-	 */
-	protected ViewerFilter getViewerFilter() {
-		return fViewerFilter;
-	}
-
-	protected void setViewerFilter(ViewerFilter filter) {
-		fViewerFilter= filter;
-	}
-	
-	protected StructuredViewer getViewer() {
-		return fViewer;
-	}
-
-	protected void setViewer(StructuredViewer viewer) {
-		fViewer = viewer;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleStepFiltersActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleStepFiltersActionDelegate.java
deleted file mode 100644
index f2b2438..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ToggleStepFiltersActionDelegate.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStepFilters;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IActionDelegate2;
-
-/**
- * Turns step filters on/off for a selected target.
- */
-public class ToggleStepFiltersActionDelegate extends AbstractDebugActionDelegate implements IActionDelegate2, IPropertyChangeListener {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#doAction(java.lang.Object)
-	 */
-	protected void doAction(Object element) {
-		// do nothing - we override #run(IAction)
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-		setAction(action);
-		action.setChecked(isUseStepFilters());
-		getPreferenceStore().addPropertyChangeListener(this);
-	}
-	
-	private boolean isUseStepFilters() {
-		return DebugUIPlugin.getDefault().getStepFilterManager().isUseStepFilters();
-	}
-	
-	private IPreferenceStore getPreferenceStore() {
-		return DebugUIPlugin.getDefault().getPreferenceStore();
-	}	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		if (event.getProperty().equals(IInternalDebugUIConstants.PREF_USE_STEP_FILTERS)) {
-			Object newValue= event.getNewValue();
-			if (newValue instanceof Boolean) {
-				getAction().setChecked(((Boolean)(newValue)).booleanValue());
-			} else if (newValue instanceof String) {
-				getAction().setChecked(Boolean.valueOf((String)newValue).booleanValue());
-			}
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		getPreferenceStore().removePropertyChangeListener(this);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		DebugUITools.setUseStepFilters(action.isChecked());
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#initialize(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	protected boolean initialize(IAction action, ISelection selection) {
-		boolean res = super.initialize(action, selection);
-		init(action);
-		return res;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#update(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	protected void update(IAction action, ISelection s) {
-        boolean enabled = true;
-        if (s != null && !s.isEmpty()) {
-            if (s instanceof IStructuredSelection) {
-                IStructuredSelection ss = (IStructuredSelection) s;
-                if (ss.size() == 1) {
-                    Object element = ss.getFirstElement();
-                    IDebugTarget[] debugTargets = getDebugTargets(element);
-                    for (int i = 0; i < debugTargets.length; i++) {
-                        IDebugTarget target = debugTargets[i];
-
-                        if (target instanceof IStepFilters) {
-                            IStepFilters filters = (IStepFilters) target;
-                            if (filters.supportsStepFilters()) {
-                                enabled = true;
-                                break; // found one that's enough.
-                            }
-                        }
-                        // iff there is a valid selection, but no
-                        // targets support step filters, disable
-                        // the button.
-                        enabled = false; 
-                    }
-                }
-            }
-        }
-        action.setEnabled(enabled);
-    }
-    
-    private IDebugTarget[] getDebugTargets(Object element) {
-        if (element instanceof IDebugElement) {
-            IDebugElement debugElement = (IDebugElement) element;
-            return new IDebugTarget[] {debugElement.getDebugTarget()};
-        } else if (element instanceof ILaunch) {
-            ILaunch launch = (ILaunch) element;
-            return launch.getDebugTargets();
-        } else if (element instanceof IProcess) {
-            IProcess process = (IProcess) element;
-            return process.getLaunch().getDebugTargets();
-        } else {
-            return new IDebugTarget[0];
-        }
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ViewManagementAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ViewManagementAction.java
deleted file mode 100644
index 2e83193..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/ViewManagementAction.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.preferences.ViewManagementPreferencePage;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceNode;
-import org.eclipse.jface.preference.IPreferencePage;
-import org.eclipse.jface.preference.PreferenceDialog;
-import org.eclipse.jface.preference.PreferenceManager;
-import org.eclipse.jface.preference.PreferenceNode;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-/**
- * An action which opens the view management preference page.
- */
-public class ViewManagementAction extends ActionDelegate implements IViewActionDelegate {
-	
-	public ViewManagementAction() {
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IPreferencePage page = new ViewManagementPreferencePage();
-		showPreferencePage("org.eclipse.debug.ui.ViewManagementPreferencePage", page);	 //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-	}
-	
-	protected void showPreferencePage(String id, IPreferencePage page) {
-		final IPreferenceNode targetNode = new PreferenceNode(id, page);
-		
-		PreferenceManager manager = new PreferenceManager();
-		manager.addToRoot(targetNode);
-		final PreferenceDialog dialog = new PreferenceDialog(DebugUIPlugin.getShell(), manager);
-		final boolean [] result = new boolean[] { false };
-		BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), new Runnable() {
-			public void run() {
-				dialog.create();
-				dialog.setMessage(targetNode.getLabelText());
-				result[0]= (dialog.open() == Window.OK);
-			}
-		});		
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchAction.java
deleted file mode 100644
index fa658a8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchAction.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import java.util.Iterator;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PartInitException;
-
-/**
- * 
- */
-public class WatchAction implements IObjectActionDelegate {
-
-	private IStructuredSelection fSelection;
-
-	/**
-	 * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		if (fSelection == null) {
-			return;
-		}
-		Iterator iter = fSelection.iterator();
-		while (iter.hasNext()) {
-			IVariable variable = (IVariable) iter.next();
-			createExpression(variable);
-		}
-	}
-
-	private void showExpressionsView() {
-		IWorkbenchPage page = DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage();
-		IViewPart part = page.findView(IDebugUIConstants.ID_EXPRESSION_VIEW);
-		if (part == null) {
-			try {
-				page.showView(IDebugUIConstants.ID_EXPRESSION_VIEW);
-			} catch (PartInitException e) {
-			}
-		} else {
-			page.bringToTop(part);
-		}
-
-	}
-
-	private void createExpression(IVariable variable) {
-		IWatchExpression expression;
-		try {
-			expression = DebugPlugin.getDefault().getExpressionManager().newWatchExpression(variable.getName());
-		} catch (DebugException e) {
-			DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), ActionMessages.WatchAction_0, ActionMessages.WatchAction_1, e); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-		DebugPlugin.getDefault().getExpressionManager().addExpression(expression);
-		IAdaptable object = DebugUITools.getDebugContext();
-		IDebugElement context = null;
-		if (object instanceof IDebugElement) {
-			context = (IDebugElement) object;
-		} else if (object instanceof ILaunch) {
-			context = ((ILaunch) object).getDebugTarget();
-		}
-		expression.setExpressionContext(context);
-		showExpressionsView();
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-        fSelection = null;
-        int enabled = 0;
-        int size = -1;
-        if (selection instanceof IStructuredSelection) {
-            fSelection = (IStructuredSelection) selection;
-            size = fSelection.size();
-            IExpressionManager manager = DebugPlugin.getDefault().getExpressionManager();
-            Iterator iterator = fSelection.iterator();
-            while (iterator.hasNext()) {
-                IVariable variable = (IVariable) iterator.next();
-                if (manager.hasWatchExpressionDelegate(variable.getModelIdentifier())) {
-                    enabled++;
-                } else {
-                    break;
-                }
-            }
-        }
-        action.setEnabled(enabled == size);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionAction.java
deleted file mode 100644
index 032f8e6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionAction.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * Generic abstract class for the actions associated to the java watch
- * expressions.
- */
-public abstract class WatchExpressionAction implements IObjectActionDelegate, IActionDelegate2 {
-	IWorkbenchPart fPart = null;
-	/**
-	 * Finds the currently selected context in the UI.
-	 */
-	protected IDebugElement getContext() {
-		IAdaptable object = DebugUITools.getDebugContext();
-		IDebugElement context = null;
-		if (object instanceof IDebugElement) {
-			context = (IDebugElement) object;
-		} else if (object instanceof ILaunch) {
-			context = ((ILaunch) object).getDebugTarget();
-		}
-		return context;
-	}
-	/**
-	 * @see IObjectActionDelegate#setActivePart(IAction, IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-		fPart = targetPart;
-	}
-
-	/**
-		* @see IActionDelegate#selectionChanged(IAction, ISelection)
-		*/
-	public void selectionChanged(IAction action, ISelection sel) {
-	}
-
-	protected IStructuredSelection getCurrentSelection() {
-		IWorkbenchPage page = DebugUIPlugin.getActiveWorkbenchWindow().getActivePage();
-		if (page != null) {
-			ISelection selection = page.getSelection();
-			if (selection instanceof IStructuredSelection) {
-				return (IStructuredSelection) selection;
-			}
-		}
-		return null;
-	}
-
-	/**
-		* Displays the given error message in the status line.
-		* 
-		* @param message
-		*/
-	protected void showErrorMessage(String message) {
-		if (fPart instanceof IViewPart) {
-			IViewSite viewSite = ((IViewPart) fPart).getViewSite();
-			IStatusLineManager manager = viewSite.getActionBars().getStatusLineManager();
-			manager.setErrorMessage(message);
-			Display.getCurrent().beep();
-		}
-	}
-
-	/* (non-Javadoc)
-		* @see org.eclipse.ui.IActionDelegate2#dispose()
-		*/
-	public void dispose() {
-		fPart = null;
-	}
-
-	/* (non-Javadoc)
-		* @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-		*/
-	public void init(IAction action) {
-	}
-
-	/* (non-Javadoc)
-		* @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-		*/
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionDialog.java
deleted file mode 100644
index f1b9bd1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/WatchExpressionDialog.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions;
-
-
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.jface.dialogs.StatusDialog;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Dialog for edit watch expression.
- */
-public class WatchExpressionDialog extends StatusDialog {
-
-	/**
-	 * The detail formatter to edit.
-	 */
-	private IWatchExpression fWatchExpression;
-
-	// widgets
-	private SourceViewer fSnippetViewer;
-	private Button fCheckBox;
-
-	public WatchExpressionDialog(Shell parent, IWatchExpression watchExpression, boolean editDialog) {
-		super(parent);
-		fWatchExpression= watchExpression;
-		setShellStyle(getShellStyle() | SWT.MAX | SWT.RESIZE);
-		String helpContextId = null;
-		if (editDialog) {
-			setTitle(ActionMessages.WatchExpressionDialog_0); //$NON-NLS-1$
-			helpContextId = IDebugHelpContextIds.EDIT_WATCH_EXPRESSION_DIALOG;
-		} else {
-			setTitle(ActionMessages.WatchExpressionDialog_1); //$NON-NLS-1$
-			helpContextId = IDebugHelpContextIds.ADD_WATCH_EXPRESSION_DIALOG;
-		}
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, helpContextId);
-	}
-
-	/**
-	 * Create the dialog area.
-	 *
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		Font font = parent.getFont();
-		
-		Composite container = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		container.setLayout(layout);
-		GridData gd= new GridData(GridData.FILL_BOTH);
-		container.setLayoutData(gd);
-
-		// snippet label
-		Label label= new Label(container, SWT.NONE);
-		label.setText(ActionMessages.WatchExpressionDialog_2); //$NON-NLS-1$
-		gd= new GridData(GridData.BEGINNING);
-		label.setLayoutData(gd);
-		label.setFont(font);
-		
-		fSnippetViewer= new SourceViewer(container, null, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
-		fSnippetViewer.setInput(this);
-
-		
-		IDocument document= new Document();
-		//IDocumentPartitioner partitioner= new RuleBasedPartitioner(...);
-		//document.setDocumentPartitioner(partitioner);
-		//partitioner.connect(document);
-		fSnippetViewer.configure(new SourceViewerConfiguration());
-		fSnippetViewer.setEditable(true);
-		fSnippetViewer.setDocument(document);
-		document.addDocumentListener(new IDocumentListener() {
-			public void documentAboutToBeChanged(DocumentEvent event) {
-			}
-			public void documentChanged(DocumentEvent event) {
-				checkValues();
-			}
-		});
-
-		fSnippetViewer.getTextWidget().setFont(JFaceResources.getTextFont());
-
-		Control control= fSnippetViewer.getControl();
-		gd= new GridData(GridData.FILL_BOTH);
-		gd.heightHint= convertHeightInCharsToPixels(10);
-		gd.widthHint= convertWidthInCharsToPixels(80);
-		control.setLayoutData(gd);
-		fSnippetViewer.getDocument().set(fWatchExpression.getExpressionText());
-
-		// enable checkbox
-		fCheckBox= new Button(container, SWT.CHECK | SWT.LEFT);
-		fCheckBox.setText(ActionMessages.WatchExpressionDialog_3); //$NON-NLS-1$
-		fCheckBox.setSelection(fWatchExpression.isEnabled());
-		fCheckBox.setFont(font);
-
-		applyDialogFont(container);
-		fSnippetViewer.getControl().setFocus();
-		return container;
-	}
-
-	/**
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		fWatchExpression.setEnabled(fCheckBox.getSelection());
-		fWatchExpression.setExpressionText(fSnippetViewer.getDocument().get());
-		super.okPressed();
-	}
-	
-	/**
-	 * Check the field values and display a message in the status if needed.
-	 */
-	private void checkValues() {
-		StatusInfo status= new StatusInfo();
-		if (fSnippetViewer.getDocument().get().trim().length() == 0) {
-			status.setError(ActionMessages.WatchExpressionDialog_4); //$NON-NLS-1$
-		}
-		updateStatus(status);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AbstractBreakpointsViewAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AbstractBreakpointsViewAction.java
deleted file mode 100644
index b396f79..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AbstractBreakpointsViewAction.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * Abstract implementation of an action contributed to the breakpoints view.
- */
-public abstract class AbstractBreakpointsViewAction implements IViewActionDelegate, IActionDelegate2 {
-    
-    /**
-     * The breakpoints view that this action has been contributed to.
-     */
-    protected BreakpointsView fView;
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-     */
-    public void init(IViewPart view) {
-        fView= (BreakpointsView) view;
-    }
-    
-    /* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#dispose()
-     */
-    public void dispose() {
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-     */
-    public void init(IAction action) {
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-     */
-    public void runWithEvent(IAction action, Event event) {
-        run(action);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AdvancedGroupBreakpointsByAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AdvancedGroupBreakpointsByAction.java
deleted file mode 100644
index 3f01116..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/AdvancedGroupBreakpointsByAction.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.window.Window;
-
-/**
- * Action that opens a dialog to select which breakpoint
- * container factories should be applies to the breakpoints
- * view.
- */
-public class AdvancedGroupBreakpointsByAction extends Action {
-	
-	private BreakpointsView fView;
-	
-	public AdvancedGroupBreakpointsByAction(BreakpointsView view) {
-        super("", IAction.AS_RADIO_BUTTON); //$NON-NLS-1$
-		fView= view;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-        if (isChecked()) {
-    	    GroupBreakpointsByDialog dialog = new GroupBreakpointsByDialog(fView);
-    		if (dialog.open() == Window.OK) {
-    			fView.setBreakpointOrganizers(dialog.getOrganizers());
-    		}
-        }
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.java
deleted file mode 100644
index 44c0044..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.osgi.util.NLS;
-
-public class BreakpointGroupMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.actions.breakpointGroups.BreakpointGroupMessages";//$NON-NLS-1$
-	//
-	// Copyright (c) 2004, 2005 IBM Corporation and others.
-	// All rights reserved. This program and the accompanying materials
-	// are made available under the terms of the Eclipse Public License v1.0
-	// which accompanies this distribution, and is available at
-	// http://www.eclipse.org/legal/epl-v10.html
-	//
-	// Contributors:
-	//     IBM Corporation - initial API and implementation
-	//
-
-	public static String GroupBreakpointsByAction_0;
-	public static String GroupBreakpointsByAction_1;
-	public static String GroupBreakpointsByDialog_0;
-	public static String GroupBreakpointsByDialog_1;
-	public static String GroupBreakpointsByDialog_2;
-	public static String GroupBreakpointsByDialog_3;
-	public static String GroupBreakpointsByDialog_4;
-	public static String GroupBreakpointsByDialog_5;
-	public static String GroupBreakpointsByDialog_6;
-	public static String GroupBreakpointsByDialog_7;
-	public static String CopyBreakpointsAction_0;
-	public static String CopyBreakpointsAction_1;
-	public static String CopyBreakpointsAction_2;
-	public static String CopyBreakpointsAction_3;
-	public static String PasteBreakpointsAction_0;
-	public static String PasteBreakpointsAction_1;
-	public static String RemoveFromWorkingSetAction_0;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, BreakpointGroupMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.properties
deleted file mode 100644
index 81efb41..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointGroupMessages.properties
+++ /dev/null
@@ -1,28 +0,0 @@
-###############################################################################

-# Copyright (c) 2004, 2005 IBM Corporation and others.

-# All rights reserved. This program and the accompanying materials

-# are made available under the terms of the Eclipse Public License v1.0

-# which accompanies this distribution, and is available at

-# http://www.eclipse.org/legal/epl-v10.html

-#

-# Contributors:

-#     IBM Corporation - initial API and implementation

-###############################################################################

-

-GroupBreakpointsByAction_0=&Breakpoints

-GroupBreakpointsByAction_1=&Advanced...

-GroupBreakpointsByDialog_0=Specify nested groupings for the Breakpoints view.

-GroupBreakpointsByDialog_1=A&vailable Groups:

-GroupBreakpointsByDialog_2=&Add -->

-GroupBreakpointsByDialog_3=&Selected Groups:

-GroupBreakpointsByDialog_4=<-- &Remove

-GroupBreakpointsByDialog_5=Move &Up

-GroupBreakpointsByDialog_6=Move &Down

-GroupBreakpointsByDialog_7=Group Breakpoints

-CopyBreakpointsAction_0=&Copy

-CopyBreakpointsAction_1=Copy Breakpoints

-CopyBreakpointsAction_2=Problem Copying to Clipboard

-CopyBreakpointsAction_3=There was a problem when accessing the system clipboard. Retry?

-PasteBreakpointsAction_0=&Paste

-PasteBreakpointsAction_1=Paste Breakpoints

-RemoveFromWorkingSetAction_0=Remove from &Working Set

diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointSelectionAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointSelectionAction.java
deleted file mode 100644
index a1c90fb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointSelectionAction.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * A selection listener action for the breakpoints view.
- */
-public abstract class BreakpointSelectionAction extends SelectionListenerAction {
-    
-    private BreakpointsView fView;
-    
-    /**
-     * Constructs an action for the breakpoints view.
-     * 
-     * @param text action name
-     * @param view breakpoints view
-     */
-    public BreakpointSelectionAction(String text, BreakpointsView view) {
-        super(text);
-        fView = view;
-    }
-    
-    /**
-     * Returns the breakpoints view.
-     * 
-     * @return breakpoints view
-     */
-    protected BreakpointsView getBreakpointsView() {
-        return fView;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointWorkingSetAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointWorkingSetAction.java
deleted file mode 100644
index 1ed2fff..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/BreakpointWorkingSetAction.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewPart;
-
-/**
- * An action which clears (sets the null) the default breakpoint group.
- * @see org.eclipse.debug.core.IBreakpointManager#setAutoGroup(String)
- */
-public abstract class BreakpointWorkingSetAction extends AbstractBreakpointsViewAction implements IPropertyChangeListener {
-    
-    protected IAction fAction; 
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-     */
-    public void selectionChanged(IAction action, ISelection selection) {
-        update();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-     */
-    public void init(IViewPart view) {
-        super.init(view);
-        DebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#dispose()
-     */
-    public void dispose() {
-        DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-        super.dispose();
-    }
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-     */
-    public void init(IAction action) {
-        fAction = action;
-        super.init(action);
-        update();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-     */
-    public void propertyChange(PropertyChangeEvent event) {
-        if (event.getProperty().equals(IInternalDebugUIConstants.MEMENTO_BREAKPOINT_WORKING_SET_NAME)) {
-            update();
-        }
-
-    }
-    protected abstract void update();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ClearDefaultBreakpointGroupAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ClearDefaultBreakpointGroupAction.java
deleted file mode 100644
index f6d50a8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ClearDefaultBreakpointGroupAction.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointSetOrganizer;
-import org.eclipse.jface.action.IAction;
-
-/**
- * An action which clears (sets the null) the default breakpoint group.
- * @see org.eclipse.debug.core.IBreakpointManager#setAutoGroup(String)
- */
-public class ClearDefaultBreakpointGroupAction extends BreakpointWorkingSetAction {
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-     */
-    public void run(IAction action) {
-        BreakpointSetOrganizer.setDefaultWorkingSet(null);
-    }
-
-    protected void update() {
-        fAction.setEnabled(BreakpointSetOrganizer.getDefaultWorkingSet() != null);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/CopyBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/CopyBreakpointsAction.java
deleted file mode 100644
index 4de8ae4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/CopyBreakpointsAction.java
+++ /dev/null
@@ -1,133 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import java.util.Iterator;
-
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.swt.SWTError;
-import org.eclipse.swt.dnd.Clipboard;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.TextTransfer;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.ui.views.navigator.LocalSelectionTransfer;
-
-/**
- * Action for copying the currently selected breakpoints to the clipboard.
- */
-public class CopyBreakpointsAction extends BreakpointSelectionAction {
-
-    /**
-     * System clipboard
-     */
-    private Clipboard clipboard;
-
-    /**
-     * Associated paste action. May be <code>null</code>
-     */
-    private PasteBreakpointsAction pasteAction;
-    
-    /**
-     * Creates a new action.
-     *
-     * @param shell the shell for any dialogs
-     * @param clipboard a platform clipboard
-     */
-    public CopyBreakpointsAction(BreakpointsView view, Clipboard clipboard) {
-        super(BreakpointGroupMessages.CopyBreakpointsAction_0, view); //$NON-NLS-1$
-        Assert.isNotNull(clipboard);
-        this.clipboard = clipboard;
-        setToolTipText(BreakpointGroupMessages.CopyBreakpointsAction_1); //$NON-NLS-1$
-    }
-
-    /**
-     * Creates a new action.
-     *
-     * @param shell the shell for any dialogs
-     * @param clipboard a platform clipboard
-     * @param pasteAction a paste action
-     */
-    public CopyBreakpointsAction(BreakpointsView view, Clipboard clipboard, PasteBreakpointsAction pasteAction) {
-        this(view, clipboard);
-        this.pasteAction = pasteAction;
-    }
-
-    /**
-     * The <code>CopyAction</code> implementation of this method defined 
-     * on <code>IAction</code> copies the selected resources to the 
-     * clipboard.
-     */
-    public void run() {
-        IStructuredSelection selection = getStructuredSelection();
-        Object[] objects = selection.toArray();
-        StringBuffer buffer = new StringBuffer();
-        ILabelProvider labelProvider = (ILabelProvider) ((StructuredViewer)getBreakpointsView().getViewer()).getLabelProvider();
-        for (int i = 0; i < objects.length; i++) {
-            Object object = objects[i];
-            if (i > 0) {
-                buffer.append("\n"); //$NON-NLS-1$
-            }
-            buffer.append(labelProvider.getText(object));
-        }
-        setClipboard(selection, buffer.toString());
-
-        // update the enablement of the paste action
-        // workaround since the clipboard does not suppot callbacks
-        if (pasteAction != null && pasteAction.getStructuredSelection() != null)
-            pasteAction.selectionChanged(pasteAction.getStructuredSelection());
-    }
-
-    /**
-     * Set the clipboard contents. Prompt to retry if clipboard is busy.
-     * 
-     * @param selection the selection to copy to the clipboard
-     */
-    private void setClipboard(ISelection selection, String text) {
-        try {
-            LocalSelectionTransfer.getInstance().setSelection(selection);
-            LocalSelectionTransfer.getInstance().setSelectionSetTime(System.currentTimeMillis());
-            clipboard.setContents(new Object[] {selection, text}, new Transfer[] {LocalSelectionTransfer.getInstance(), TextTransfer.getInstance()});
-        } catch (SWTError e) {
-            if (e.code != DND.ERROR_CANNOT_SET_CLIPBOARD)
-                throw e;
-            if (MessageDialog.openQuestion(
-                    getBreakpointsView().getSite().getShell(), BreakpointGroupMessages.CopyBreakpointsAction_2, //$NON-NLS-1$
-                    BreakpointGroupMessages.CopyBreakpointsAction_3)) { //$NON-NLS-1$
-                setClipboard(selection, text);
-            }
-        }
-    }
-
-    /**
-     * Enables if one or more breakpoints are selected.
-     */
-    protected boolean updateSelection(IStructuredSelection selection) {
-        if (selection.isEmpty()) {
-            return false;
-        }
-        Iterator iterator = selection.iterator();
-        while (iterator.hasNext()) {
-            if (!(iterator.next() instanceof IBreakpoint)) {
-                return false;
-            }
-        }
-        return true;
-    }
-
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/EditBreakpointGroupAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/EditBreakpointGroupAction.java
deleted file mode 100644
index d8225fc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/EditBreakpointGroupAction.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.debug.internal.ui.views.breakpoints.WorkingSetCategory;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.IWorkingSetEditWizard;
-
-/**
- * An action to edit a breakpoint working set.
- */
-public class EditBreakpointGroupAction extends AbstractBreakpointsViewAction {
-	
-	/**
-	 * The currently selected breakpoints
-	 */
-	private IWorkingSet fSet = null;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-        IWorkingSetEditWizard editWizard = PlatformUI.getWorkbench().getWorkingSetManager().createWorkingSetEditWizard(fSet);
-        WizardDialog dialog = new WizardDialog(DebugUIPlugin.getShell(), editWizard);
-        dialog.open();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection sel) {
-		IStructuredSelection selection= (IStructuredSelection) sel;
-        fSet = null;
-        if (selection.size() == 1) {
-            Object element = selection.getFirstElement();
-			if (element instanceof BreakpointContainer) {
-                BreakpointContainer container = (BreakpointContainer)element;
-                IAdaptable category = container.getCategory();
-                if (category instanceof WorkingSetCategory) {
-                    IWorkingSet set = ((WorkingSetCategory)category).getWorkingSet();
-                    action.setEnabled(true);
-                    fSet = set;
-                    return;
-                }
-			}
-		}
-		action.setEnabled(false);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsAction.java
deleted file mode 100644
index b6fd6cd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsAction.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.debug.internal.ui.views.breakpoints.IBreakpointOrganizer;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-
-/**
- * An action which sets the breakpoint factory on a breakpoint view,
- * effectively telling the view to group breakpoints according to
- * some criteria (as determined by the factory).
- */
-public class GroupBreakpointsAction extends Action {
-    
-    private IBreakpointOrganizer fOrganzier;
-    private BreakpointsView fView;
-
-    /**
-     * Creates a new action which will group breakpoints in the given
-     * breakpoint view using the given breakpoint container factory
-     * @param factory the factory that will be applied to the given view
-     *  when this action is run
-     * @param view the breakpoints view
-     */
-    public GroupBreakpointsAction(IBreakpointOrganizer organizer, BreakpointsView view) {
-        super("", IAction.AS_RADIO_BUTTON); //$NON-NLS-1$
-        fOrganzier= organizer;
-        fView= view;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IAction#run()
-     */
-    public void run() {
-        if (isChecked()) {
-            if (fOrganzier == null) {
-                fView.setBreakpointOrganizers(null);
-            } else {
-                fView.setBreakpointOrganizers(new IBreakpointOrganizer[]{fOrganzier});
-            }
-        }
-    }
-    
-    /**
-     * Returns this action's organizer.
-     * 
-     * @return breakpoint organizer
-     */
-    public IBreakpointOrganizer getOrganizer() {
-    	return fOrganzier;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByAction.java
deleted file mode 100644
index 76a586d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByAction.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointOrganizerManager;
-import org.eclipse.debug.internal.ui.views.breakpoints.IBreakpointOrganizer;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuCreator;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.events.MenuAdapter;
-import org.eclipse.swt.events.MenuEvent;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.MenuItem;
-
-/**
- * 
- */
-public class GroupBreakpointsByAction extends AbstractBreakpointsViewAction implements IMenuCreator {
-
-	private IAction fAction= null;
-	
-	public GroupBreakpointsByAction() {
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IMenuCreator#dispose()
-     */
-    public void dispose() {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Control)
-     */
-    public Menu getMenu(Control parent) {
-        // Never called
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu)
-     */
-    public Menu getMenu(Menu parent) {
-		Menu menu = new Menu(parent);
-		menu.addMenuListener(new MenuAdapter() {
-			public void menuShown(MenuEvent e) {
-				Menu m = (Menu)e.widget;
-				MenuItem[] items = m.getItems();
-				for (int i=0; i < items.length; i++) {
-					items[i].dispose();
-				}
-				fillMenu(m);
-			}
-		});		
-		return menu;
-    }
-    
-	/**
-	 * Fill pull down menu with the "group by" options
-	 */
-	private void fillMenu(Menu menu) {
-		// determine which item should be checked
-		IBreakpointOrganizer[] organizers = fView.getBreakpointOrganizers();
-		boolean none = false;
-		boolean advanced = false;
-		IBreakpointOrganizer organizer = null;
-		if (organizers == null || organizers.length == 0) {
-			none = true;
-		} else if (organizers.length > 1) {
-			advanced = true;
-		} else {
-			organizer = organizers[0];
-		}
-		
-        int accel = 1;
-        // Add hard-coded action for flat breakpoints list
-        IAction action = new GroupBreakpointsAction(null, fView);
-        addAccel(accel, action, BreakpointGroupMessages.GroupBreakpointsByAction_0); //$NON-NLS-1$
-        accel++;
-        action.setImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_VIEW_BREAKPOINTS));
-        action.setChecked(none);
-        ActionContributionItem item= new ActionContributionItem(action);
-        item.fill(menu, -1);
-
-		// Add actions for each contributed orgranizer
-	    List actions = getActions(accel);
-        accel = accel + actions.size();
-        Iterator actionIter = actions.iterator();
-	    while (actionIter.hasNext()) {
-			GroupBreakpointsAction bpAction = (GroupBreakpointsAction) actionIter.next();
-			bpAction.setChecked(bpAction.getOrganizer().equals(organizer));
-			item= new ActionContributionItem(bpAction);
-			item.fill(menu, -1);
-	    }
-	                    
-        // advanced action
-        AdvancedGroupBreakpointsByAction advancedAction = new AdvancedGroupBreakpointsByAction(fView);
-        addAccel(accel, advancedAction,BreakpointGroupMessages.GroupBreakpointsByAction_1); //$NON-NLS-1$
-        advancedAction.setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_HIERARCHICAL));
-        advancedAction.setChecked(advanced);
-		item= new ActionContributionItem(advancedAction);
-		item.fill(menu, -1);
-	}
-    
-    public List getActions(int accel) {
-        List actions= new ArrayList();
-        IBreakpointOrganizer[] organizers = BreakpointOrganizerManager.getDefault().getOrganizers();
-        for (int i = 0; i < organizers.length; i++) {
-        	IBreakpointOrganizer organizer = organizers[i];
-            IAction action = new GroupBreakpointsAction(organizer, fView);
-            addAccel(accel, action, organizer.getLabel());
-            accel++;
-            action.setImageDescriptor(organizer.getImageDescriptor());
-            actions.add(action);
-        }        
-        return actions;
-    }
-    
-    private void addAccel(int accel, IAction action, String label) {
-        StringBuffer actionLabel= new StringBuffer();
-        if (accel != 10) {
-            if (accel < 10) {
-                // add the numerical accelerators 1 through 9
-                actionLabel.append('&');
-            }
-            actionLabel.append(accel);
-        } else {
-            actionLabel.append("1&0"); //$NON-NLS-1$
-        }
-        accel++;
-        actionLabel.append(' ');
-        actionLabel.append(label);
-        action.setText(actionLabel.toString());        
-    }
-    
-    /* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	    if (action != fAction) {
-	        action.setMenuCreator(this);
-	        fAction= action;
-	    }
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByDialog.java
deleted file mode 100644
index 75e6084..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/GroupBreakpointsByDialog.java
+++ /dev/null
@@ -1,522 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointOrganizerManager;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.debug.internal.ui.views.breakpoints.IBreakpointOrganizer;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.ui.internal.dialogs.ViewLabelProvider;
-
-/**
- * Dialog which presents available breakpoint groupings to
- * the user and allows them to specify which they'd like
- * to use and in what order they should be applied.
- */
-public class GroupBreakpointsByDialog extends Dialog {
-	
-	private BreakpointsView fView;
-	
-	// Table viewer that presents available containers
-	private TableViewer fAvailableViewer;
-	private AvailableOrganizersProvider fAvailableOrganizersProvider= new AvailableOrganizersProvider();
-	
-	// Tree viewer that presents selected containers
-	private TreeViewer fSelectedViewer;
-	private SelectedOrganizerProvider fSelectedOrganizersProvider= new SelectedOrganizerProvider();
-	
-	private List fResult= new ArrayList();
-
-	private Button fAddButton;
-	private Button fRemoveButton;
-	private Button fMoveUpButton;
-	private Button fMoveDownButton;
-	
-	/**
-	 * Selection listener that listens to selection from all buttons in this
-	 * dialog.
-	 */
-	private SelectionAdapter fSelectionListener= new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent e) {
-			Object source= e.getSource();
-			if (source == fAddButton) {
-				handleAddPressed();
-			} else if (source == fRemoveButton) {
-				handleRemovePressed();
-			} else if (source == fMoveUpButton) {
-				handleMoveUpPressed();
-			} else if (source == fMoveDownButton) {
-				handleMoveDownPressed();
-			}
-		}
-	};
-
-	protected GroupBreakpointsByDialog(BreakpointsView view) {
-		super(view.getSite().getShell());
-		fView= view;
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		ILabelProvider labelProvider= new BreakpointOrganzierLabelProvider();
-		
-		Composite parentComposite= (Composite) super.createDialogArea(parent);
-		parentComposite.setFont(parent.getFont());
-		Composite composite= new Composite(parentComposite, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 3;
-        composite.setLayout(layout);
-		GridData data= new GridData(GridData.FILL_BOTH);
-		data.heightHint= 400;
-		composite.setLayoutData(data);
-		composite.setFont(parent.getFont());
-		
-		Label label= new Label(composite, SWT.WRAP);
-		label.setText(BreakpointGroupMessages.GroupBreakpointsByDialog_0); //$NON-NLS-1$
-		GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
-		gridData.horizontalSpan = 3;
-        label.setLayoutData(gridData);
-		
-		createAvailableViewer(composite, labelProvider);
-		createButtons(composite);
-		createSelectedViewer(composite, labelProvider);
-
-		initializeContent();
-		updateViewers();
-		Dialog.applyDialogFont(parentComposite);
-		return parentComposite;
-	}
-	
-	/**
-	 * Divides the available breakpoint container factories into the
-	 * appropriate viewers ("available" or "selected").
-	 */
-	private void initializeContent() {
-		IBreakpointOrganizer[] organizers= BreakpointOrganizerManager.getDefault().getOrganizers();
-		for (int i = 0; i < organizers.length; i++) {
-			fAvailableOrganizersProvider.addAvailable(organizers[i]);
-		}
-		organizers = fView.getBreakpointOrganizers();
-        if (organizers != null) {
-    		for (int i = 0; i < organizers.length; i++) {
-                fSelectedOrganizersProvider.addSelected(organizers[i]);
-            }
-        }
-	}
-
-	/**
-	 * Creates and configured the viewer that shows the available (not currently selected)
-	 * breakpoint container factories.
-	 */
-	private void createAvailableViewer(Composite parent, ILabelProvider labelProvider) {		
-		Composite availableComposite= new Composite(parent, SWT.NONE);
-		availableComposite.setFont(parent.getFont());
-		GridLayout layout = new GridLayout();
-		layout.marginHeight=0;
-		layout.marginWidth=0;
-		availableComposite.setLayout(layout);
-		GridData gridData= new GridData(GridData.FILL_BOTH);
-		gridData.widthHint= 225;
-		availableComposite.setLayoutData(gridData);
-
-		Label label= new Label(availableComposite, SWT.WRAP);
-		label.setText(BreakpointGroupMessages.GroupBreakpointsByDialog_1); //$NON-NLS-1$
-		gridData = new GridData(GridData.FILL_HORIZONTAL);
-        label.setLayoutData(gridData);
-		
-		fAvailableViewer= new TableViewer(availableComposite);
-		fAvailableViewer.setContentProvider(fAvailableOrganizersProvider);
-		fAvailableViewer.setLabelProvider(labelProvider);
-		fAvailableViewer.setInput(new Object());
-		Table table = fAvailableViewer.getTable();
-		table.setLayoutData(new GridData(GridData.FILL_BOTH));
-		table.setFont(parent.getFont());
-		fAvailableViewer.addDoubleClickListener(new IDoubleClickListener() {
-			public void doubleClick(DoubleClickEvent event) {
-				handleAddPressed();
-			}
-		});
-		fAvailableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				updateAddButton();
-			}
-		});
-	}
-
-	/**
-	 * Creates and configures the viewer that shows the currently selected
-	 * breakpoint container factories.
-	 */
-	private void createSelectedViewer(Composite parent, ILabelProvider labelProvider) {
-		Composite selectedComposite= new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight=0;
-		layout.marginWidth=0;
-		layout.numColumns= 2;
-		selectedComposite.setLayout(layout);
-		GridData gridData= new GridData(GridData.FILL_BOTH);
-		gridData.widthHint= 225;
-		selectedComposite.setLayoutData(gridData);
-		selectedComposite.setFont(parent.getFont());
-		
-		Label label= new Label(selectedComposite, SWT.WRAP);
-		label.setText(BreakpointGroupMessages.GroupBreakpointsByDialog_3); //$NON-NLS-1$
-		gridData = new GridData();
-		gridData.horizontalSpan = 2;
-        label.setLayoutData(gridData);
-		
-		fSelectedViewer= new TreeViewer(selectedComposite);
-		fSelectedViewer.setContentProvider(fSelectedOrganizersProvider);
-		fSelectedViewer.setLabelProvider(labelProvider);
-		fSelectedViewer.setInput(new Object());
-		Tree tree = fSelectedViewer.getTree();
-		tree.setLayoutData(new GridData(GridData.FILL_BOTH));
-		tree.setFont(parent.getFont());
-		fSelectedViewer.addDoubleClickListener(new IDoubleClickListener() {
-            public void doubleClick(DoubleClickEvent event) {
-                handleRemovePressed();
-            }
-        });
-		fSelectedViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				updateSelectedButtons();
-			}
-		});
-	}
-	
-	public void createButtons(Composite parent) {
-		Composite buttonComposite= new Composite(parent, SWT.NONE);
-		buttonComposite.setLayout(new GridLayout());
-		buttonComposite.setLayoutData(new GridData());
-		buttonComposite.setFont(parent.getFont());
-		
-		fAddButton= SWTUtil.createPushButton(buttonComposite, BreakpointGroupMessages.GroupBreakpointsByDialog_2, null); //$NON-NLS-1$
-		fAddButton.addSelectionListener(fSelectionListener);
-		
-		fRemoveButton= SWTUtil.createPushButton(buttonComposite, BreakpointGroupMessages.GroupBreakpointsByDialog_4, null); //$NON-NLS-1$
-		fRemoveButton.addSelectionListener(fSelectionListener);
-		
-		fMoveUpButton= SWTUtil.createPushButton(buttonComposite, BreakpointGroupMessages.GroupBreakpointsByDialog_5, null); //$NON-NLS-1$
-		fMoveUpButton.addSelectionListener(fSelectionListener);
-		
-		fMoveDownButton= SWTUtil.createPushButton(buttonComposite, BreakpointGroupMessages.GroupBreakpointsByDialog_6, null); //$NON-NLS-1$
-		fMoveDownButton.addSelectionListener(fSelectionListener);
-	    
-	}
-
-	/**
-	 * Returns the organizers chosen by the user. The order
-	 * of the list is the order that the organizers should be displayed
-	 * in the breakpoints view.
-	 * @return the breakpoint organizers chosen by the user
-	 */
-	public IBreakpointOrganizer[] getOrganizers() {
-		return (IBreakpointOrganizer[]) fResult.toArray(new IBreakpointOrganizer[fResult.size()]);
-	}
-	
-	/**
-	 * When the user presses OK, convert the tree selection into a list.
-	 */
-	protected void okPressed() {
-		Object[] factories= fSelectedOrganizersProvider.getElements(null);
-		while (factories.length > 0) {
-			Object factory= factories[0];
-			fResult.add(factory);
-			factories= fSelectedOrganizersProvider.getChildren(factory);
-		}
-		super.okPressed();
-	}
-	
-	/**
-	 * Moves the selected item from the list of "available" factories
-	 * to the tree of "selected" factories.
-	 */
-	public void handleAddPressed() {
-		IStructuredSelection selection= (IStructuredSelection) fAvailableViewer.getSelection();
-		if (selection.size() < 1) {
-			return;
-		}
-		Iterator iter= selection.iterator();
-		while (iter.hasNext()) {
-			fSelectedOrganizersProvider.addSelected((IBreakpointOrganizer) iter.next());
-		}
-		updateViewers();
-	}
-	
-	/**
-	 * Moves the selected item from the tree of "selected" factories
-	 * to the list of "available" factories.
-	 */
-	public void handleRemovePressed() {
-		IStructuredSelection selection= (IStructuredSelection) fSelectedViewer.getSelection();
-		if (selection.size() < 1) {
-			return;
-		}
-		Iterator iter= selection.iterator();
-		while (iter.hasNext()) {
-			fAvailableOrganizersProvider.addAvailable((IBreakpointOrganizer) iter.next());
-		}
-		updateViewers();
-	}
-	
-	/**
-	 * Moves each selected item up in the tree of selected containers
-	 */
-	public void handleMoveUpPressed() {
-		IStructuredSelection selection = (IStructuredSelection) fSelectedViewer.getSelection();
-		Iterator iter = selection.iterator();
-		while (iter.hasNext()) {
-			fSelectedOrganizersProvider.moveUp(iter.next());
-		}
-		updateViewers();
-	}
-	
-	/**
-	 * Moves each selected item down in the tree of selected containers
-	 */
-	public void handleMoveDownPressed() {
-		IStructuredSelection selection = (IStructuredSelection) fSelectedViewer.getSelection();
-		Object[] elements= selection.toArray();
-		for (int i= elements.length - 1; i >= 0; i--) {
-			fSelectedOrganizersProvider.moveDown(elements[i]);
-		}
-		updateViewers();
-	}
-	
-	/**
-	 * Fully refreshes and updates all viewers and buttons.
-	 */
-	public void updateViewers() {
-		fAvailableViewer.refresh();
-		fSelectedViewer.refresh();
-		fSelectedViewer.expandAll();
-		updateAddButton();
-		updateSelectedButtons();
-	}
-	
-	/**
-	 * Updates all buttons associated with the tree of selected containers.
-	 */
-	public void updateSelectedButtons() {
-		updateRemoveButton();
-		updateMoveUpButton();
-		updateMoveDownButton();
-	}
-	
-	public void updateAddButton() {
-		IStructuredSelection selection = (IStructuredSelection) fAvailableViewer.getSelection();
-		fAddButton.setEnabled(selection.size() > 0);
-	}
-	
-	public void updateRemoveButton() {
-		IStructuredSelection selection = (IStructuredSelection) fSelectedViewer.getSelection();
-		fRemoveButton.setEnabled(selection.size() > 0);
-	}
-	
-	public void updateMoveUpButton() {
-		boolean enabled= true;
-		IStructuredSelection selection = (IStructuredSelection) fSelectedViewer.getSelection();
-		if (selection.size() == 0) {
-			enabled= false;
-		} else {
-			Object firstSelected= selection.getFirstElement();
-			Object parent= fSelectedOrganizersProvider.getParent(firstSelected);
-			if (!(parent instanceof IBreakpointOrganizer)) {
-				enabled= false;
-			}
-		}
-		fMoveUpButton.setEnabled(enabled);
-	}
-	
-	public void updateMoveDownButton() {
-		boolean enabled= true;
-		IStructuredSelection selection = (IStructuredSelection) fSelectedViewer.getSelection();
-		if (selection.size() == 0) {
-			enabled= false;
-		} else {
-			Object lastSelected= selection.toList().get(selection.size() - 1);
-			Object[] children= fSelectedOrganizersProvider.getChildren(lastSelected);
-			if (children.length < 1) {
-				enabled= false;
-			}
-		}
-		fMoveDownButton.setEnabled(enabled);
-	}
-	
-	/**
-	 * Content provider that provides the list of breakpoint organaisers
-     * that are available but not currently selected.
-	 */
-	private class AvailableOrganizersProvider implements IStructuredContentProvider {
-		protected List availableOrganziers= new ArrayList();
-		
-		public void addAvailable(IBreakpointOrganizer organizer) {
-            availableOrganziers.add(organizer);
-			fSelectedOrganizersProvider.selectedOrganizers.remove(organizer);
-		}
-		
-		public Object[] getElements(Object inputElement) {
-			return availableOrganziers.toArray();
-		}
-		
-		public void dispose() {
-		}
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-	}
-	
-	/**
-	 * Content provider that returns the selected breakpoint organizers
-	 * as a tree. This tree shows the list of organzizers as they will
-	 * appear in the breakpoints view.
-	 */
-	private class SelectedOrganizerProvider implements ITreeContentProvider {
-		protected List selectedOrganizers= new ArrayList();
-		
-		public void addSelected(IBreakpointOrganizer organizer) {
-            selectedOrganizers.add(organizer);
-			fAvailableOrganizersProvider.availableOrganziers.remove(organizer);
-		}
-		
-		public void moveUp(Object object) {
-			int index = selectedOrganizers.indexOf(object);
-			if (index > 0) {
-                selectedOrganizers.remove(object);
-                selectedOrganizers.add(index - 1, object);
-			}
-		}
-		
-		public void moveDown(Object object) {
-			int index = selectedOrganizers.indexOf(object);
-			if (index < selectedOrganizers.size() - 1) {
-                selectedOrganizers.remove(object);
-                selectedOrganizers.add(index + 1, object);
-			}
-		}
-
-		public Object[] getChildren(Object parentElement) {
-			// A factory's "child" is the next factory in the list
-			int index = selectedOrganizers.indexOf(parentElement);
-			if (index < selectedOrganizers.size() - 1) {
-				return new Object[] { selectedOrganizers.get(index + 1) };
-			}
-			return new Object[0];
-		}
-
-		public Object getParent(Object element) {
-			// A factory's "parent" is the factory before it
-			int index = selectedOrganizers.indexOf(element);
-			if (index <= 0 || selectedOrganizers.size() <= 1) {
-				return null;
-			}
-			return selectedOrganizers.get(index - 1);
-		}
-
-		public boolean hasChildren(Object element) {
-			// A factory has "children" if there are more
-			// factories after it.
-			int index = selectedOrganizers.indexOf(element);
-			return index != -1 && index < selectedOrganizers.size() - 1;
-		}
-
-		public Object[] getElements(Object inputElement) {
-			if (selectedOrganizers.size() > 0) {
-				return new Object[] { selectedOrganizers.get(0) };
-			}
-			return new Object[0];
-		}
-		public void dispose() {
-		}
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-	}
-	
-	/**
-	 * Label provider which provides text and images for breakpoint container factories
-	 */
-	private class BreakpointOrganzierLabelProvider extends ViewLabelProvider {
-		private HashMap fImageCache= new HashMap();
-		
-		public String getText(Object element) {
-			if (element instanceof IBreakpointOrganizer) {
-				return ((IBreakpointOrganizer) element).getLabel();
-			}
-			return super.getText(element);
-		}
-		public Image getImage(Object element) {
-			if (element instanceof IBreakpointOrganizer) {
-				ImageDescriptor imageDescriptor = ((IBreakpointOrganizer) element).getImageDescriptor();
-				if (imageDescriptor != null) {
-					Image image = (Image) fImageCache.get(imageDescriptor);
-					if (image == null) {
-						image= imageDescriptor.createImage();
-						if (image != null) {
-							fImageCache.put(imageDescriptor, image);
-						}
-					}
-					return image;
-				}
-			}
-			return super.getImage(element);
-		}
-		public void dispose() {
-			Iterator imageIter = fImageCache.values().iterator();
-			while (imageIter.hasNext()) {
-				((Image) imageIter.next()).dispose();
-			}
-			super.dispose();
-		}
-	}
-	
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
-     */
-    protected void configureShell(Shell shell) {
-        super.configureShell(shell);
-        shell.setText(BreakpointGroupMessages.GroupBreakpointsByDialog_7); //$NON-NLS-1$
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/PasteBreakpointsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/PasteBreakpointsAction.java
deleted file mode 100644
index 00e1220..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/PasteBreakpointsAction.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import java.util.List;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.debug.internal.ui.views.breakpoints.OtherBreakpointCategory;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.views.navigator.LocalSelectionTransfer;
-
-/**
- * Standard action for pasting resources on the clipboard to the selected resource's location.
- * <p>
- * This class may be instantiated; it is not intended to be subclassed.
- * </p>
- * 
- * @since 2.0
- */
-public class PasteBreakpointsAction extends BreakpointSelectionAction {
-    
-    /**
-     * Creates a new action.
-     *
-     * @param view the view of this action
-     */
-    public PasteBreakpointsAction(BreakpointsView view) {
-        super(BreakpointGroupMessages.PasteBreakpointsAction_0, view); //$NON-NLS-1$
-        setToolTipText(BreakpointGroupMessages.PasteBreakpointsAction_1); //$NON-NLS-1$
-    }
-
-    /**
-     * Returns the actual target of the paste action. Returns null
-     * if no valid target is selected.
-     * 
-     * @return the actual target of the paste action
-     */
-    private Object getTarget() {
-        List selectedNonResources = getSelectedNonResources();
-        if (selectedNonResources.size() == 1) {
-            Object target = selectedNonResources.get(0);
-            if (target instanceof BreakpointContainer) {
-                return target;
-            }
-        }
-        return null;
-    }
-
-    /**
-     * Implementation of method defined on <code>IAction</code>.
-     */
-    public void run() {
-		if (getBreakpointsView().canPaste(getTarget(), LocalSelectionTransfer.getInstance().getSelection())) {
-			getBreakpointsView().performPaste(getTarget(), LocalSelectionTransfer.getInstance().getSelection());
-		}
-    }
-
-    /**
-     * Returns whether this action should be enabled based on the selection
-     * in the clipboard. Only updates when the breakpoints view has focus. 
-     */
-    protected boolean updateSelection(IStructuredSelection selection) {
-        // can't paste into "Others" (only move)
-        Object target = getTarget();
-        if (target instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) target;
-            if (container.getCategory() instanceof OtherBreakpointCategory) {
-                return false;
-            }
-			return true;
-        }
-		// don't access clipboard - causes Hang -see bug 84870
-		return false;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/RemoveFromWorkingSetAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/RemoveFromWorkingSetAction.java
deleted file mode 100644
index 3dd42c8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/RemoveFromWorkingSetAction.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import java.util.Iterator;
-
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView;
-import org.eclipse.debug.internal.ui.views.breakpoints.WorkingSetCategory;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * Removes a breakpoint from a breakpoint working set.
- */
-public class RemoveFromWorkingSetAction extends BreakpointSelectionAction {
-        
-    /**
-     * Constructs action to remove breakpoints from a category.
-     * 
-     * @param view
-     */
-    public RemoveFromWorkingSetAction(BreakpointsView view) {
-        super(BreakpointGroupMessages.RemoveFromWorkingSetAction_0, view); //$NON-NLS-1$
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IAction#run()
-     */
-    public void run() {
-        Iterator iterator = getStructuredSelection().iterator();
-        while (iterator.hasNext()) {
-            Object object = iterator.next();
-            if (object instanceof IBreakpoint) {
-                IBreakpoint breakpoint = (IBreakpoint) object;
-                BreakpointContainer[] containers = getBreakpointsView().getMovedFromContainers(breakpoint);
-                if (containers != null) {
-                    for (int i = 0; i < containers.length; i++) {
-                        BreakpointContainer container = containers[i];
-                        container.getOrganizer().removeBreakpoint(breakpoint, container.getCategory());
-                    }
-                }
-            }
-        }
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.actions.BaseSelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-     */
-    protected boolean updateSelection(IStructuredSelection selection) {
-        if (selection.isEmpty() || !getBreakpointsView().isShowingGroups()) {
-            return false;
-        }
-        Iterator iterator = selection.iterator();
-        while (iterator.hasNext()) {
-            Object object = iterator.next();
-            if (object instanceof IBreakpoint) {
-                IBreakpoint breakpoint = (IBreakpoint) object;
-                BreakpointContainer[] containers = getBreakpointsView().getMovedFromContainers(breakpoint);
-                if (containers == null || containers.length == 0) {
-                    return false;
-                }
-                for (int i = 0; i < containers.length; i++) {
-                    BreakpointContainer container = containers[i];
-                    if (container.getCategory() instanceof WorkingSetCategory) {
-                        WorkingSetCategory category = (WorkingSetCategory) container.getCategory();
-                        if (!IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(category.getWorkingSet().getId())) {
-                            return false;
-                        }
-                    } else {
-                        return false;
-                    }
-                }
-            } else {
-                return false;
-            }
-        }
-        return true;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/SetDefaultBreakpointGroupAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/SetDefaultBreakpointGroupAction.java
deleted file mode 100644
index b6eb694..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/SetDefaultBreakpointGroupAction.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointSetOrganizer;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.IWorkingSetSelectionDialog;
-
-/**
- * Action which prompts the user to set a default breakpoint group.
- */
-public class SetDefaultBreakpointGroupAction extends AbstractBreakpointsViewAction {
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-     */
-    public void run(IAction action) {
-        IWorkingSet workingSet = BreakpointSetOrganizer.getDefaultWorkingSet();
-        IWorkingSetSelectionDialog selectionDialog = PlatformUI.getWorkbench().getWorkingSetManager().createWorkingSetSelectionDialog(DebugUIPlugin.getShell(), false, new String[]{IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET});
-        if (workingSet != null) {
-            selectionDialog.setSelection(new IWorkingSet[]{workingSet});
-        }
-        if (selectionDialog.open() == Window.OK) {
-            IWorkingSet[] sets = selectionDialog.getSelection();
-            if (sets.length == 1) {
-                BreakpointSetOrganizer.setDefaultWorkingSet(sets[0]);
-            }
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-     */
-    public void selectionChanged(IAction action, ISelection selection) {
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ToggleDefaultGroupAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ToggleDefaultGroupAction.java
deleted file mode 100644
index fd623b6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/ToggleDefaultGroupAction.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointContainer;
-import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointSetOrganizer;
-import org.eclipse.debug.internal.ui.views.breakpoints.WorkingSetCategory;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IWorkingSet;
-
-/**
- * Toggles the default breakpoint group based on selection.
- */
-public class ToggleDefaultGroupAction extends AbstractBreakpointsViewAction {
-    
-    private IWorkingSet fSelectedSet;
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-     */
-    public void run(IAction action) {
-        IWorkingSet defaultWorkingSet = BreakpointSetOrganizer.getDefaultWorkingSet();
-        IWorkingSet set = null;
-        if (!fSelectedSet.equals(defaultWorkingSet)) {
-            set = fSelectedSet;
-        }
-        BreakpointSetOrganizer.setDefaultWorkingSet(set);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-     */
-    public void selectionChanged(IAction action, ISelection sel) {
-        fSelectedSet = null;
-        if (sel instanceof IStructuredSelection) {
-            IStructuredSelection selection = (IStructuredSelection) sel;
-            if (selection.size() == 1) {
-	            Object firstElement = selection.getFirstElement();
-	            if (firstElement instanceof BreakpointContainer) {
-	                BreakpointContainer container = (BreakpointContainer) firstElement;
-	                if (container.getCategory() instanceof WorkingSetCategory) {
-	                    WorkingSetCategory category = (WorkingSetCategory)container.getCategory();
-	                    if (IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(category.getWorkingSet().getId())) {
-	                        IWorkingSet set = category.getWorkingSet();
-	                        action.setEnabled(true);
-	                        boolean isDefault = set == BreakpointSetOrganizer.getDefaultWorkingSet();
-	                        action.setChecked(isDefault);
-	                        fSelectedSet = set;
-	                        return;
-	                    }
-	                }
-	            }
-            }
-        }
-        action.setEnabled(false);
-        action.setChecked(false);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/WorkingSetsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/WorkingSetsAction.java
deleted file mode 100644
index eeb5cac..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/actions/breakpointGroups/WorkingSetsAction.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.actions.breakpointGroups;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.IWorkingSetSelectionDialog;
-
-/**
- * Allows the user to manage working sets.
- */
-public class WorkingSetsAction extends AbstractBreakpointsViewAction {
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-     */
-    public void run(IAction action) {
-        IWorkingSetSelectionDialog selectionDialog = PlatformUI.getWorkbench().getWorkingSetManager().createWorkingSetSelectionDialog(DebugUIPlugin.getShell(), false);
-        selectionDialog.open();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-     */
-    public void selectionChanged(IAction action, ISelection selection) {
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpression.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpression.java
deleted file mode 100644
index a0a6d3b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpression.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IErrorReportingExpression;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IValue;
-
-public class DeferredExpression extends DeferredVariable {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		if (parent instanceof IErrorReportingExpression) {
-            IErrorReportingExpression expression= (IErrorReportingExpression) parent;
-            if (expression.hasErrors()) {
-                return expression.getErrorMessages();
-            }
-        }
-		if (parent instanceof IExpression) {
-		    IExpression expression = (IExpression)parent;
-		    IValue value = expression.getValue();
-		    try {
-		        return getValueChildren(expression, value);
-		    } catch (DebugException e) {
-		    }
-		}
-		return super.getChildren(parent);
-	}
-
-    protected boolean hasChildren(Object child) {
-        if (child instanceof IErrorReportingExpression) {
-            IErrorReportingExpression expression = (IErrorReportingExpression) child;
-            if (expression.hasErrors()) {
-                return true;
-            }
-        }
-        
-        if (child instanceof IExpression) {
-            IExpression expression = (IExpression) child;
-            IValue value = expression.getValue();
-            if (value != null) {
-                try {
-                    return value.hasVariables();
-                } catch (DebugException e) {
-                }
-            }
-        }
-        
-        return super.hasChildren(child);
-    }
-
-    
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionLogicalStructure.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionLogicalStructure.java
deleted file mode 100644
index d438af7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionLogicalStructure.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-
-/**
- * Workbench adapter for an expression when showing logical structures.
- */
-public class DeferredExpressionLogicalStructure extends DeferredExpression {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.variables.DeferredVariable#isShowLogicalStructure()
-	 */
-	protected boolean isShowLogicalStructure() {
-		return true;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionManager.java
deleted file mode 100644
index 4b3d615..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredExpressionManager.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariableContentManager;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-import org.eclipse.ui.progress.IElementCollector;
-
-public class DeferredExpressionManager extends DeferredDebugElementWorkbenchAdapter {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		return ((IExpressionManager)parent).getExpressions();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return null;
-	} 
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#fetchDeferredChildren(java.lang.Object, org.eclipse.ui.progress.IElementCollector, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void fetchDeferredChildren(Object object, IElementCollector collector, IProgressMonitor monitor) {
-		if (monitor.isCanceled()) {
-			return;
-		}
-	    Object[] children = getChildren(object);
-	    if (monitor.isCanceled()) {
-	    	return;
-	    }
-	    if (children.length > 0) {
-	    	if (collector instanceof RemoteVariableContentManager.VariableCollector) {
-	    		RemoteVariableContentManager.VariableCollector remoteCollector = (RemoteVariableContentManager.VariableCollector) collector;
-			    for (int i = 0; i < children.length; i++) {
-		    	    if (monitor.isCanceled()) {
-		    	    	return;
-		    	    }
-					IExpression child = (IExpression) children[i];
-					try {
-						IValue value = child.getValue();
-						if (value == null) {
-							remoteCollector.setHasChildren(child, false);
-						} else {
-							remoteCollector.setHasChildren(child, value.hasVariables());
-						}
-					} catch (DebugException e) {
-					}
-				}	    	
-	    	}
-	        collector.add(children, monitor);
-	    }
-	    collector.done();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#isContainer()
-	 */
-	public boolean isContainer() {
-		return DebugPlugin.getDefault().getExpressionManager().hasExpressions();
-	}		
-	
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunch.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunch.java
deleted file mode 100644
index 0cd8a6b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunch.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-
-public class DeferredLaunch extends DeferredDebugElementWorkbenchAdapter {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		return ((ILaunch)parent).getChildren();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return DebugPlugin.getDefault().getLaunchManager();
-	} 
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunchManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunchManager.java
deleted file mode 100644
index bd56dfa..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredLaunchManager.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-
-public class DeferredLaunchManager extends DeferredDebugElementWorkbenchAdapter {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		return ((ILaunchManager) parent).getLaunches();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return null;
-	} 
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredProcess.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredProcess.java
deleted file mode 100644
index 341f5c4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredProcess.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-
-
-/**
- * Default deferred content provider for a process. 
- */
-public class DeferredProcess extends DeferredDebugElementWorkbenchAdapter implements IDeferredWorkbenchAdapter {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		return EMPTY;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return ((IProcess)element).getLaunch();
-	}
-    
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredRegisterGroup.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredRegisterGroup.java
deleted file mode 100644
index 5c1fd35..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredRegisterGroup.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariableContentManager;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-import org.eclipse.ui.progress.IElementCollector;
-
-public class DeferredRegisterGroup extends DeferredDebugElementWorkbenchAdapter {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		try {
-			return ((IRegisterGroup)parent).getRegisters();
-		} catch (DebugException e) {
-		}
-		return EMPTY;
-	}
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return null;
-	} 
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#fetchDeferredChildren(java.lang.Object, org.eclipse.ui.progress.IElementCollector, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void fetchDeferredChildren(Object object, IElementCollector collector, IProgressMonitor monitor) {
-	    if (monitor.isCanceled()) {
-	    	return;
-	    }
-	    Object[] children = getChildren(object);
-	    if (monitor.isCanceled()) {
-	    	return;
-	    }
-	    if (children.length > 0) {
-	        if (collector instanceof RemoteVariableContentManager.VariableCollector) {
-	            RemoteVariableContentManager.VariableCollector remoteCollector = (RemoteVariableContentManager.VariableCollector) collector;
-	            for (int i = 0; i < children.length; i++) {
-		    	    if (monitor.isCanceled()) {
-		    	    	return;
-		    	    }
-                    Object child = children[i];
-                    remoteCollector.setHasChildren(child, hasChildren(child));
-	            }	    	
-	        }	    	
-	        collector.add(children, monitor);
-	    }
-	    collector.done();
-	}		
-
-    protected boolean hasChildren(Object child) {
-        if (child instanceof IVariable) {
-            IVariable var = (IVariable) child;
-            try {
-                IValue value = var.getValue();
-                return value.hasVariables();
-            } catch (DebugException e) {
-            }
-        }
-        return false;
-    }	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredStackFrame.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredStackFrame.java
deleted file mode 100644
index eec8af2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredStackFrame.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariableContentManager;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-import org.eclipse.ui.progress.IElementCollector;
-
-
-/**
- * Default deferred workbench adapter for a stack frame 
- */
-public class DeferredStackFrame extends DeferredDebugElementWorkbenchAdapter {
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-	    if (parent instanceof IStackFrame) {
-            IStackFrame frame = (IStackFrame) parent;
-	        try {
-	            return frame.getVariables();
-	        } catch (DebugException e) {
-                return new Object[]{e};
-	        }
-	    }
-	    return EMPTY;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return ((IStackFrame)element).getThread();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#fetchDeferredChildren(java.lang.Object, org.eclipse.ui.progress.IElementCollector, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void fetchDeferredChildren(Object object, IElementCollector collector, IProgressMonitor monitor) {
-		if (monitor.isCanceled()) {
-			return;
-		}
-	    Object[] children = getChildren(object);
-	    if (monitor.isCanceled()) {
-	    	return;
-	    }	    
-	    if (children.length > 0) {
-	    	if (collector instanceof RemoteVariableContentManager.VariableCollector) {
-	    		RemoteVariableContentManager.VariableCollector remoteCollector = (RemoteVariableContentManager.VariableCollector) collector;
-			    for (int i = 0; i < children.length; i++) {
-		    	    if (monitor.isCanceled()) {
-		    	    	return;
-		    	    }
-			    	Object child = children[i];
-			    	remoteCollector.setHasChildren(child, hasChildren(child));
-				}	    	
-	    	}
-	        collector.add(children, monitor);
-	    }
-	    collector.done();
-	}	
-	
-	/**
-	 * Returns whether the given child has children.
-	 * Subclasses should override for different type of children.
-	 * 
-	 * @param child child fetched from getChildren()
-	 * @return whether the given child has children
-	 */
-	protected boolean hasChildren(Object child) {
-	    if (child instanceof IVariable) {
-	        IVariable variable = (IVariable) child;
-	        try {
-	            IValue value = variable.getValue();
-	            return value.hasVariables();
-	        } catch (DebugException e) {
-	        }
-	    }
-		return false;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredTarget.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredTarget.java
deleted file mode 100644
index f28d0c8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredTarget.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-
-
-/**
- * Default deferred content provider for a debug target 
- */
-public class DeferredTarget extends DeferredDebugElementWorkbenchAdapter implements IDeferredWorkbenchAdapter {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		try {
-			return ((IDebugTarget)parent).getThreads();
-		} catch (DebugException e) {
-		}
-		return EMPTY;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return ((IDebugTarget)element).getLaunch();
-	}
-    
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredThread.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredThread.java
deleted file mode 100644
index 5a588fa..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredThread.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-
-
-/**
- * Default deferred content provider for a debug target 
- */
-public class DeferredThread extends DeferredDebugElementWorkbenchAdapter implements IDeferredWorkbenchAdapter {
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-		try {
-			return ((IThread)parent).getStackFrames();
-		} catch (DebugException e) {
-		}
-		return EMPTY;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return ((IThread)element).getDebugTarget();
-	}
-    
-    
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariable.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariable.java
deleted file mode 100644
index d75f2bb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariable.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILogicalStructureType;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IIndexedValue;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.views.variables.IndexedVariablePartition;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariableContentManager;
-import org.eclipse.debug.ui.DeferredDebugElementWorkbenchAdapter;
-import org.eclipse.ui.progress.IElementCollector;
-
-
-/**
- * Default deferred content provider for a variable
- */
-public class DeferredVariable extends DeferredDebugElementWorkbenchAdapter {
-	
-	private static final IVariable[] EMPTY_VARS = new IVariable[0];
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parent) {
-	    if (parent instanceof IVariable) {
-	        try {
-	            IVariable variable = (IVariable) parent;
-	            IValue value = variable.getValue();
-	            if (value != null) {
-	                return getValueChildren(variable, value);
-	            }
-	        } catch (DebugException e) {
-	        }
-	    }
-        return EMPTY;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#fetchDeferredChildren(java.lang.Object, org.eclipse.ui.progress.IElementCollector, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void fetchDeferredChildren(Object object, IElementCollector collector, IProgressMonitor monitor) {
-		if (monitor.isCanceled()) {
-			return;
-		}
-	    Object[] children = getChildren(object);
-	    if (monitor.isCanceled()) {
-	    	return;
-	    }	    
-	    if (children.length > 0) {
-	        if (collector instanceof RemoteVariableContentManager.VariableCollector) {
-	            RemoteVariableContentManager.VariableCollector remoteCollector = (RemoteVariableContentManager.VariableCollector) collector;
-	            for (int i = 0; i < children.length; i++) {
-		    	    if (monitor.isCanceled()) {
-		    	    	return;
-		    	    }
-                    Object child = children[i];
-                    remoteCollector.setHasChildren(child, hasChildren(child));
-	            }	    	
-	        }	    	
-	        collector.add(children, monitor);
-	    }
-	    collector.done();
-	}	
-    
-    protected boolean hasChildren(Object child) {
-        if (child instanceof IVariable) {
-            IVariable var = (IVariable) child;
-            try {
-                IValue value = var.getValue();
-                return value.hasVariables();
-            } catch (DebugException e) {
-            }
-        }
-        return false;
-    }
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		return null;
-	}
-
-	/**
-	 * Returns children for the given value, creating array paritions if required
-	 * 
-	 * @param parent expression or variable containing the given value
-	 * @param value the value to retrieve children for
-	 * @return children for the given value, creating array paritions if required
-	 * @throws DebugException
-	 */
-	protected IVariable[] getValueChildren(IDebugElement parent, IValue value) throws DebugException {
-		if (value == null) {
-			return EMPTY_VARS;
-		}
-		IValue logicalValue = getLogicalValue(value);
-		if (logicalValue instanceof IIndexedValue) {
-			IIndexedValue indexedValue = (IIndexedValue)logicalValue;
-			int partitionSize = computeParitionSize(indexedValue);
-			if (partitionSize > 1) {
-				int offset = indexedValue.getInitialOffset();
-				int length = indexedValue.getSize();
-				int numPartitions = length / partitionSize;
-				int remainder = length % partitionSize; 
-				if (remainder > 0) {
-					numPartitions++;
-				}
-				IVariable[] partitions = new IVariable[numPartitions];
-				for (int i = 0; i < (numPartitions - 1); i++) {
-					partitions[i] = new IndexedVariablePartition(parent, indexedValue, offset, partitionSize);
-					offset = offset + partitionSize;
-				}
-				if (remainder == 0) {
-					remainder = partitionSize;
-				}
-				partitions[numPartitions - 1] = new IndexedVariablePartition(parent, indexedValue, offset, remainder);
-				return partitions;
-			}
-		}
-		if (logicalValue == null) {
-			// safeguard against an structure type returning null
-			logicalValue = value;
-		}
-		return logicalValue.getVariables();
-	}    
-	
-	/**
-	 * Returns any logical value for the raw value.
-	 * 
-	 * @param value
-	 * @return
-	 */
-	protected IValue getLogicalValue(IValue value) {
-		return getLogicalValue(value, new ArrayList());
-	}
-    
-    /**
-     * Returns any logical value for the raw value. This method will recurse
-     * over the returned value until the same structure is encountered again
-     * (to avoid infinite recursion).
-     * 
-     * @param value
-     * @param previousStructureIds the list of logical structures that have already
-     *  been applied to the returned value during the recursion of this method. Callers
-     *  should always pass in a new, empty list.
-     * @return
-     */
-    private IValue getLogicalValue(IValue value, List previousStructureIds) {
-        if (isShowLogicalStructure()) {
-            ILogicalStructureType[] types = DebugPlugin.getLogicalStructureTypes(value);
-            if (types.length > 0) {
-                ILogicalStructureType type = DebugPlugin.getDefaultStructureType(types);
-                if (type != null && !previousStructureIds.contains(type.getId())) {
-                    try {
-                        value= type.getLogicalStructure(value);
-                        previousStructureIds.add(type.getId());
-                        return getLogicalValue(value, previousStructureIds);
-                    } catch (CoreException e) {
-                        // unable to display logical structure
-                    }
-                }
-            }
-        }
-        return value;
-    }
-
-	/**
-	 * Return wether to show compute a logical structure or a raw structure.
-	 * 
-	 * @return wether to show compute a logical structure or a raw structure
-	 */
-	protected boolean isShowLogicalStructure() {
-		return false;
-	}
-	
-	/**
-	 * Returns the partition size to use for the given indexed value.
-	 * The partition size is computed by determining the number of levels
-	 * that an indexed collection must be nested in order to partition
-	 * the collection sub-collections of the preferred partition size.
-	 * 
-	 * @param value indexed value
-	 * @return size of paritions the value should be subdivided into
-	 */
-	protected int computeParitionSize(IIndexedValue value) {
-		int partitionSize = 1;
-		try {
-			int length = value.getSize();
-			int partitionDepth = 0;
-			int preferredSize = getArrayPartitionSize();
-			int remainder = length % preferredSize;
-			length = length / preferredSize;
-			while (length > 0) {
-				if (remainder == 0 && length == 1) {
-					break; 
-				}
-				partitionDepth++;
-				remainder = length % preferredSize;
-				length = length / preferredSize;
-			}
-			for (int i = 0; i < partitionDepth; i++) {
-				partitionSize = partitionSize * preferredSize;
-			}
-		} catch (DebugException e) {
-		}
-		return partitionSize;
-	}
-	
-	/**
-	 * Returns the number of entries that should be displayed in each
-	 * partition of an indexed collection.
-	 * 
-	 * @return the number of entries that should be displayed in each
-	 * partition of an indexed collection
-	 */
-	protected int getArrayPartitionSize() {
-		// TODO: should fix this with a user pref
-		return 100;
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariableLogicalStructure.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariableLogicalStructure.java
deleted file mode 100644
index 686def9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/elements/adapters/DeferredVariableLogicalStructure.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.elements.adapters;
-
-
-/**
- * Workbench adapter for a variable when showing logical structures.
- */
-public class DeferredVariableLogicalStructure extends DeferredVariable {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.variables.DeferredVariable#isShowLogicalStructure()
-	 */
-	protected boolean isShowLogicalStructure() {
-		return true;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/AbstractLaunchConfigurationAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/AbstractLaunchConfigurationAction.java
deleted file mode 100644
index d20fd0e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/AbstractLaunchConfigurationAction.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * Common function/behavior for launch configuration view actions
- */
-public abstract class AbstractLaunchConfigurationAction extends SelectionListenerAction {
-	
-	/** 
-	 * The mode this action was created in (run, debug, ...)
-	 */
-	private String fMode;
-	
-	/**
-	 * Allows a requestor to abort this action.
-	 */
-	public interface IConfirmationRequestor {
-		/**
-		 * Returns whether this action should proceed. Confirmation is requested
-		 * when an action is run.
-		 * 
-		 * @return whether this action should proceed
-		 */
-		public boolean getConfirmation();
-	}
-	
-	/**
-	 * This action's confirmation requestor or <code>null</code> if none
-	 */
-	private IConfirmationRequestor fConfirmationRequestor;
-	
-	/**
-	 * The viewer this action is working on
-	 */
-	private Viewer fViewer;
-
-	/**
-	 * Constructor for AbstractLaunchConfigurationAction.
-	 * @param text
-	 */
-	public AbstractLaunchConfigurationAction(String text, Viewer viewer, String mode) {
-		super(text);
-		fViewer = viewer;
-		fViewer.addSelectionChangedListener(this);
-		fMode = mode;
-	}
-
-	/**
-	 * Returns the shell this action is contained in.
-	 * 
-	 * @return the shell this action is contained in
-	 */
-	protected Shell getShell() {
-		return getViewer().getControl().getShell();
-	}
-	
-	/**
-	 * Returns the viewer this action is working on
-	 * 
-	 * @return the viewer this action is working on
-	 */
-	protected Viewer getViewer() {
-		return fViewer;
-	}
-	
-	/**
-	 * Performs this action once confirmation has been aquired. Subclasses
-	 * should override this method.
-	 */
-	protected abstract void performAction();
-	
-	/**
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public final void run() {
-		if (fConfirmationRequestor != null) {
-			if (!fConfirmationRequestor.getConfirmation()) {
-				return;
-			}
-		}
-		Runnable r = new Runnable() {
-			/**
-			 * @see java.lang.Runnable#run()
-			 */
-			public void run() {
-				performAction();
-			}
-		};
-		BusyIndicator.showWhile(getShell().getDisplay(), r);
-	}
-	
-	/**
-	 * Sets this action's confirmation requestor.
-	 * 
-	 * @param confirmationRequestor
-	 */
-	public void setConfirmationRequestor(IConfirmationRequestor confirmationRequestor) {
-		fConfirmationRequestor = confirmationRequestor;
-	}
-	
-	/**
-	 * Disposes this action
-	 */
-	public void dispose() {
-		fViewer.removeSelectionChangedListener(this);
-	}
-	
-	/**
-	 * Show an error dialog on the given exception.
-	 * 
-	 * @param exception
-	 */
-	protected void errorDialog(CoreException exception) {
-		ErrorDialog.openError(getShell(), null, null, exception.getStatus());
-	}
-
-	/**
-	 * Return this action's mode.
-	 * 
-	 * @return launch mode
-	 */
-	protected String getMode() {
-		return fMode;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorProjectPromptStatusHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorProjectPromptStatusHandler.java
deleted file mode 100644
index 9b131d3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorProjectPromptStatusHandler.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.widgets.Shell;
-
-
-public class CompileErrorProjectPromptStatusHandler implements IStatusHandler {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
-	 */
-	public Object handleStatus(IStatus status, Object source) throws CoreException {
-		ILaunchConfiguration config = null;
-		List projects = new ArrayList();
-		
-		if (source instanceof List) {
-			List args = (List) source;
-			Iterator iterator = args.iterator();
-			while (iterator.hasNext()) {
-				Object arg = iterator.next();
-				if (arg instanceof ILaunchConfiguration) {
-					config = (ILaunchConfiguration) arg;
-					if (DebugUITools.isPrivate(config)) {
-						return new Boolean(true);
-					}
-				} else if (arg instanceof IProject) {
-					projects.add(arg);
-				}
-			}
-		}
-				
-		Shell shell = DebugUIPlugin.getShell();
-		String title = LaunchConfigurationsMessages.CompileErrorPromptStatusHandler_0; //$NON-NLS-1$
-		StringBuffer projectMessage = new StringBuffer();
-		for (int i = 0; i < projects.size(); i++) {
-			if (i > 0) {
-				projectMessage.append(", "); //$NON-NLS-1$
-			}
-			projectMessage.append(((IProject)projects.get(i)).getName());
-		}
-		String message = MessageFormat.format(LaunchConfigurationsMessages.CompileErrorPromptStatusHandler_2, new String[]{projectMessage.toString()}); //$NON-NLS-1$
-		IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore(); 
-		
-		String pref = store.getString(IInternalDebugUIConstants.PREF_CONTINUE_WITH_COMPILE_ERROR);
-		if (pref != null) {
-			if (pref.equals(MessageDialogWithToggle.ALWAYS)) {
-				return new Boolean(true);
-			}
-		}
-
-		MessageDialogWithToggle dialog = new MessageDialogWithToggle(shell, title, null, message, MessageDialog.WARNING,
-				new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL}, 1, null, false);
-		dialog.setPrefKey(IInternalDebugUIConstants.PREF_CONTINUE_WITH_COMPILE_ERROR);
-		dialog.setPrefStore(store);
-		dialog.open();
-		
-		int returnValue = dialog.getReturnCode();
-		if (returnValue == IDialogConstants.YES_ID) {
-			return new Boolean(true);
-		}
-		return new Boolean(false);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorPromptStatusHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorPromptStatusHandler.java
deleted file mode 100644
index 9cb446c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CompileErrorPromptStatusHandler.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.widgets.Shell;
-
-
-public class CompileErrorPromptStatusHandler implements IStatusHandler {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
-	 */
-	public Object handleStatus(IStatus status, Object source) throws CoreException {
-		if (source instanceof ILaunchConfiguration) {
-			ILaunchConfiguration config = (ILaunchConfiguration)source;
-			if (DebugUITools.isPrivate(config)) {
-				return new Boolean(true);
-			}
-		}
-		
-		Shell shell = DebugUIPlugin.getShell();
-		String title = LaunchConfigurationsMessages.CompileErrorPromptStatusHandler_0; //$NON-NLS-1$
-		String message = LaunchConfigurationsMessages.CompileErrorPromptStatusHandler_1; //$NON-NLS-1$
-		IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore(); 
-		
-		String pref = store.getString(IInternalDebugUIConstants.PREF_CONTINUE_WITH_COMPILE_ERROR);
-		if (pref != null) {
-			if (pref.equals(MessageDialogWithToggle.ALWAYS)) {
-				return new Boolean(true);
-			}
-		}
-
-		MessageDialogWithToggle dialog = new MessageDialogWithToggle(shell, title, null, message, MessageDialog.WARNING,
-				new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL}, 1, null, false);
-		dialog.setPrefKey(IInternalDebugUIConstants.PREF_CONTINUE_WITH_COMPILE_ERROR);
-		dialog.setPrefStore(store);
-		dialog.open();
-		
-		int returnValue = dialog.getReturnCode();
-		if (returnValue == IDialogConstants.OK_ID) {
-			return new Boolean(true);
-		}
-		return new Boolean(false);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CreateLaunchConfigurationAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CreateLaunchConfigurationAction.java
deleted file mode 100644
index f5c3f4f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/CreateLaunchConfigurationAction.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.ILaunchConfigurationDialog;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.debug.ui.ILaunchConfigurationTabGroup;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-
-/**
- * Creates a new launch configuration based on the selection.
- */
-public class CreateLaunchConfigurationAction extends AbstractLaunchConfigurationAction {
-
-	/**
-	 * Action identifier for IDebugView#getAction(String)
-	 */
-	public static final String ID_CREATE_ACTION = DebugUIPlugin.getUniqueIdentifier() + ".ID_CREATE_ACTION"; //$NON-NLS-1$
-	
-	/**
-	 * Constructs an action to create a launch configuration 
-	 */
-	public CreateLaunchConfigurationAction(Viewer viewer, String mode) {
-		super(LaunchConfigurationsMessages.CreateLaunchConfigurationAction_Ne_w_1, viewer, mode); //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractLaunchConfigurationAction#performAction()
-	 */
-	protected void performAction() {
-		Object object = getStructuredSelection().getFirstElement();
-		ILaunchConfigurationType type= null;
-		// Construct a new config of the selected type
-		if (object instanceof ILaunchConfiguration) {
-			ILaunchConfiguration config= (ILaunchConfiguration) object;
-			try {
-				type = config.getType();
-			} catch (CoreException e) {
-				errorDialog(e);
-				return;
-			}
-		} else {
-			type = (ILaunchConfigurationType) object;
-		}
-
-		try {
-			ILaunchConfigurationWorkingCopy wc = type.newInstance(null, DebugPlugin.getDefault().getLaunchManager().generateUniqueLaunchConfigurationNameFrom(LaunchConfigurationsMessages.CreateLaunchConfigurationAction_New_configuration_2)); //$NON-NLS-1$
-			ILaunchConfigurationTabGroup tabGroup = LaunchConfigurationPresentationManager.getDefault().getTabGroup(wc.getType(), getMode());
-			// this only works because this action is only present when the dialog is open
-			ILaunchConfigurationDialog dialog = LaunchConfigurationsDialog.getCurrentlyVisibleLaunchConfigurationDialog();
-			tabGroup.createTabs(dialog, dialog.getMode());
-			ILaunchConfigurationTab[] tabs = tabGroup.getTabs();
-			for (int i = 0; i < tabs.length; i++) {
-				ILaunchConfigurationTab tab = tabs[i];
-				tab.setLaunchConfigurationDialog(dialog);
-			}
-			tabGroup.setDefaults(wc);
-			tabGroup.dispose();
-			wc.doSave();
-		} catch (CoreException e) {
-			errorDialog(e);
-			return;
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.actions.SelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		return selection.size() == 1;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DebugModePromptStatusHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DebugModePromptStatusHandler.java
deleted file mode 100644
index c261e79..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DebugModePromptStatusHandler.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.widgets.Shell;
-
-
-public class DebugModePromptStatusHandler implements IStatusHandler {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
-	 */
-	public Object handleStatus(IStatus status, Object source) throws CoreException {
-		if (source instanceof ILaunchConfiguration) {
-			ILaunchConfiguration config = (ILaunchConfiguration)source;
-			if (DebugUITools.isPrivate(config)) {
-				return new Boolean(false);
-			}	
-		}
-		
-		Shell activeShell = DebugUIPlugin.getShell();
-		String title = LaunchConfigurationsMessages.DebugModePromptStatusHandler_0; //$NON-NLS-1$
-		String message = LaunchConfigurationsMessages.DebugModePromptStatusHandler_1; //$NON-NLS-1$
-		IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore();
-		
-		ILaunchConfiguration configuration = (ILaunchConfiguration)source;
-		
-		String pref = store.getString(IInternalDebugUIConstants.PREF_RELAUNCH_IN_DEBUG_MODE); 
-		if (pref != null) {
-			if (pref.equals(MessageDialogWithToggle.NEVER)) {
-				return new Boolean(false);
-			} else if (pref.equals(MessageDialogWithToggle.ALWAYS)) { 
-				relaunchInDebugMode(configuration);
-				return new Boolean(true);
-			}
-		}
-		
-		MessageDialogWithToggle dialog = MessageDialogWithToggle.openYesNoCancelQuestion(activeShell, title, message, null, false, store, IInternalDebugUIConstants.PREF_RELAUNCH_IN_DEBUG_MODE); //$NON-NLS-1$
-		int buttonId = dialog.getReturnCode();
-		if (buttonId == IDialogConstants.YES_ID) { 
-			relaunchInDebugMode(configuration);
-			return new Boolean(true); // stops launch
-		} else if (buttonId == IDialogConstants.NO_ID) {
-			return new Boolean(false); // continue launch
-		} else { //CANCEL 
-			return new Boolean(true); // stops the launch
-		}
-	}
-	/**
-	 * @param configuration
-	 */
-	private void relaunchInDebugMode(ILaunchConfiguration configuration) {
-		DebugUITools.launch(configuration, ILaunchManager.DEBUG_MODE);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DeleteLaunchConfigurationAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DeleteLaunchConfigurationAction.java
deleted file mode 100644
index 4574ba3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DeleteLaunchConfigurationAction.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import java.util.Iterator;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-
-/**
- * Deletes the selected launch configuration(s).
- */
-public class DeleteLaunchConfigurationAction extends AbstractLaunchConfigurationAction {
-
-	/**
-	 * Action identifier for IDebugView#getAction(String)
-	 */
-	public static final String ID_DELETE_ACTION = DebugUIPlugin.getUniqueIdentifier() + ".ID_DELETE_ACTION"; //$NON-NLS-1$
-	
-	class Confirmation implements IConfirmationRequestor {
-		/**
-		 * @see org.eclipse.debug.internal.ui.launchConfigurations.AbstractLaunchConfigurationAction.IConfirmationRequestor#getConfirmation()
-		 */
-		public boolean getConfirmation() {
-			IStructuredSelection selection = getStructuredSelection();
-			// Make the user confirm the deletion
-			String dialogMessage = selection.size() > 1 ? LaunchConfigurationsMessages.LaunchConfigurationDialog_Do_you_wish_to_delete_the_selected_launch_configurations__1 : LaunchConfigurationsMessages.LaunchConfigurationDialog_Do_you_wish_to_delete_the_selected_launch_configuration__2; //$NON-NLS-1$ //$NON-NLS-2$
-			return MessageDialog.openQuestion(getShell(), LaunchConfigurationsMessages.LaunchConfigurationDialog_Confirm_Launch_Configuration_Deletion_3, dialogMessage); //$NON-NLS-1$
-		}
-
-	}
-	
-	/**
-	 * Constructs an action to delete launch configuration(s) 
-	 */
-	public DeleteLaunchConfigurationAction(Viewer viewer, String mode) {
-		super(LaunchConfigurationsMessages.DeleteLaunchConfigurationAction_Dele_te_1, viewer, mode); //$NON-NLS-1$
-		setConfirmationRequestor(new Confirmation());
-	}
-
-	/**
-	 * @see AbstractLaunchConfigurationAction#performAction()
-	 */
-	protected void performAction() {
-		IStructuredSelection selection = getStructuredSelection();
-
-		getViewer().getControl().setRedraw(false);
-		Iterator iterator = selection.iterator();
-		while (iterator.hasNext()) {
-			ILaunchConfiguration configuration = (ILaunchConfiguration)iterator.next();
-			try {
-				configuration.delete();
-			} catch (CoreException e) {
-				errorDialog(e);
-			}
-		}
-		getViewer().getControl().setRedraw(true);
-	}
-
-	/**
-	 * @see org.eclipse.ui.actions.SelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		if (selection.isEmpty()) {
-			return false;
-		}
-		Iterator items = selection.iterator();
-		while (items.hasNext()) {
-			if (!(items.next() instanceof ILaunchConfiguration)) {
-				return false;
-			}
-		}
-		return true;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DuplicateLaunchConfigurationAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DuplicateLaunchConfigurationAction.java
deleted file mode 100644
index afe9379..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/DuplicateLaunchConfigurationAction.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-
-/**
- * Duplicates the selected launch configuration.
- */
-public class DuplicateLaunchConfigurationAction extends AbstractLaunchConfigurationAction {
-	
-	/**
-	 * Action identifier for IDebugView#getAction(String)
-	 */
-	public static final String ID_DUPLICATE_ACTION = DebugUIPlugin.getUniqueIdentifier() + ".ID_DUPLICATE_ACTION"; //$NON-NLS-1$
-
-	/**
-	 * Constructs an action to duplicate a launch configuration 
-	 */
-	public DuplicateLaunchConfigurationAction(Viewer viewer, String mode) {
-		super(LaunchConfigurationsMessages.DuplicateLaunchConfigurationAction__Duplicate_1, viewer, mode); //$NON-NLS-1$
-	}
-
-	/**
-	 * @see AbstractLaunchConfigurationAction#performAction()
-	 */
-	protected void performAction() {
-		ILaunchConfiguration original = (ILaunchConfiguration)getStructuredSelection().getFirstElement();
-		String newName = DebugPlugin.getDefault().getLaunchManager().generateUniqueLaunchConfigurationNameFrom(original.getName());
-		try {
-			ILaunchConfigurationWorkingCopy newWorkingCopy = original.copy(newName);
-			newWorkingCopy.doSave();
-		} catch (CoreException e) {
-			errorDialog(e);
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.actions.SelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		return selection.size() == 1 && selection.getFirstElement() instanceof ILaunchConfiguration;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/EnvironmentVariable.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/EnvironmentVariable.java
deleted file mode 100644
index c93c3ae..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/EnvironmentVariable.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 Keith Seitz and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Keith Seitz (keiths@redhat.com) - initial implementation
- *     IBM Corporation - integration and code cleanup
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-/**
- * A key/value set whose data is passed into Runtime.exec(...)
- */
-public class EnvironmentVariable
-{
-	// The name of the environment variable
-	private String name;
-	
-	// The value of the environment variable
-	private String value;
-	
-	public EnvironmentVariable(String name, String value)
-	{
-		this.name = name;
-		this.value = value;
-	}
-
-	/**
-	 * Returns this variable's name, which serves as the key in the key/value
-	 * pair this variable represents
-	 * 
-	 * @return this variable's name
-	 */
-	public String getName()
-	{
-		return name;
-	}
-	
-	/**
-	 * Returns this variables value.
-	 * 
-	 * @return this variable's value
-	 */
-	public String getValue()
-	{
-		return value;
-	}
-		
-	/**
-	 * Sets this variable's value
-	 * @param value
-	 */
-	public void setValue(String value)
-	{
-		this.value = value;
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		return getName();
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object obj) {
-		boolean equal = false;
-		if (obj instanceof EnvironmentVariable) {
-			EnvironmentVariable var = (EnvironmentVariable)obj;
-			equal = var.getName().equals(name);
-		}
-		return equal;		
-	}
-	/* (non-Javadoc)
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return name.hashCode();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/FavoritesDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/FavoritesDialog.java
deleted file mode 100644
index 4859476..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/FavoritesDialog.java
+++ /dev/null
@@ -1,540 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DialogSettingsHelper;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.IContentProvider;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.ListSelectionDialog;
-import org.eclipse.ui.model.WorkbenchViewerSorter;
-
-/**
- * Dialog for organizing favorite launch configurations
- */
-public class FavoritesDialog extends Dialog {
-	
-	/**
-	 * Table of favorite launch configurations
-	 */
-	private TableViewer fFavoritesTable;	
-
-	// history being organized
-	private LaunchHistory fHistory;
-	
-	// favorites collection under edit
-	private List fFavorites;
-
-	// buttons
-	protected Button fAddFavoriteButton;
-	protected Button fRemoveFavoritesButton;
-	protected Button fMoveUpButton;
-	protected Button fMoveDownButton;
-
-	// button action handler
-	/**
-	 * Listener that delegates when a button is pressed
-	 */
-	private SelectionAdapter fButtonListener= new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent e) {
-			Button button = (Button) e.widget;
-			if (button == fAddFavoriteButton) {
-				handleAddConfigButtonSelected();
-			} else if (button == fRemoveFavoritesButton) {
-				removeSelectedFavorites();
-			} else if (button == fMoveUpButton) {
-				handleMoveUpButtonSelected();
-			} else if (button == fMoveDownButton) {
-				handleMoveDownButtonSelected();
-			}
-		}
-	};	
-	
-	/**
-	 * Listener that delegates when the selection changes in a table
-	 */
-	private ISelectionChangedListener fSelectionChangedListener= new ISelectionChangedListener() {
-		public void selectionChanged(SelectionChangedEvent event) {
-			handleFavoriteSelectionChanged();
-		}
-	};	
-	
-	/**
-	 * Listener that delegates when a key is pressed in a table
-	 */
-	private KeyListener fKeyListener= new KeyAdapter() {
-		public void keyPressed(KeyEvent event) {
-			if (event.character == SWT.DEL && event.stateMask == 0) {
-				removeSelectedFavorites(); 
-			}
-		}
-	};
-	
-	/**
-	 * Content provider for favorites table
-	 */
-	protected class FavoritesContentProvider implements IStructuredContentProvider {
-		
-		/**
-		 * @see IStructuredContentProvider#getElements(Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			ILaunchConfiguration[] favorites= (ILaunchConfiguration[]) getFavorites().toArray(new ILaunchConfiguration[0]);
-			return LaunchConfigurationManager.filterConfigs(favorites);
-		}
-
-		/**
-		 * @see IContentProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/**
-		 * @see IContentProvider#inputChanged(Viewer, Object, Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-
-	}
-
-	/**
-	 * Content provider for recent table
-	 */	
-	protected class LaunchConfigurationContentProvider extends FavoritesContentProvider {
-		
-		/**
-		 * @see IStructuredContentProvider#getElements(Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			ILaunchConfiguration[] all = null;
-			try {
-				all = DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurations();
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-				return new ILaunchConfiguration[0];
-			}
-			List list = new ArrayList(all.length);
-			ViewerFilter filter = new LaunchGroupFilter(getLaunchHistory().getLaunchGroup());
-			for (int i = 0; i < all.length; i++) {
-				if (filter.select(null, null, all[i])) {
-					list.add(all[i]);
-				}
-			}
-			list.removeAll(getFavorites());
-			Object[] objs = list.toArray();
-			new WorkbenchViewerSorter().sort(getFavoritesTable(), objs);
-			return objs;
-		}
-
-	}	
-	
-	/**
-	 * Constructs a favorites dialog.
-	 * 
-	 * @param parentShell shell to open the dialog on
-	 * @param history launch history to edit
-	 */
-	public FavoritesDialog(Shell parentShell, LaunchHistory history) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		fHistory = history;
-	}
-
-	/**
-	 * The 'add config' button has been pressed
-	 */
-	protected void handleAddConfigButtonSelected() {
-		
-		ListSelectionDialog dialog = new ListSelectionDialog(fFavoritesTable.getControl().getShell(),
-			getMode(), new LaunchConfigurationContentProvider(), DebugUITools.newDebugModelPresentation(),
-			LaunchConfigurationsMessages.FavoritesDialog_7); //$NON-NLS-1$
-		dialog.setTitle(MessageFormat.format(LaunchConfigurationsMessages.FavoritesDialog_0, new String[]{getModeLabel()})); //$NON-NLS-1$
-		dialog.open();
-		Object[] selection = dialog.getResult();
-		if (selection != null) {
-			for (int i = 0; i < selection.length; i++) {
-				getFavorites().add(selection[i]);
-			}
-			updateStatus();
-		}
-	}	
-	
-	/**
-	 * The 'remove favorites' button has been pressed
-	 */
-	protected void removeSelectedFavorites() {
-		IStructuredSelection sel = (IStructuredSelection)getFavoritesTable().getSelection();
-		Iterator iter = sel.iterator();
-		while (iter.hasNext()) {
-			Object config = iter.next();
-			getFavorites().remove(config);
-		}
-		getFavoritesTable().refresh();		
-	}	
-	
-	/**
-	 * The 'move up' button has been pressed
-	 */
-	protected void handleMoveUpButtonSelected() {
-		handleMove(-1);
-	}	
-	
-	/**
-	 * The 'move down' button has been pressed
-	 */
-	protected void handleMoveDownButtonSelected() {
-		handleMove(1);
-	}	
-	
-	protected void handleMove(int direction) {
-		IStructuredSelection sel = (IStructuredSelection)getFavoritesTable().getSelection();
-		List selList= sel.toList();
-		Object[] movedFavs= new Object[getFavorites().size()];
-		int i;
-		for (Iterator favs = selList.iterator(); favs.hasNext();) {
-			Object config = favs.next();
-			i= getFavorites().indexOf(config);
-			movedFavs[i + direction]= config;
-		}
-		
-		getFavorites().removeAll(selList);
-			
-		for (int j = 0; j < movedFavs.length; j++) {
-			Object config = movedFavs[j];
-			if (config != null) {
-				getFavorites().add(j, config);		
-			}
-		}
-		
-		getFavoritesTable().refresh();	
-		handleFavoriteSelectionChanged();	
-	}
-	
-	/**
-	 * Returns the table of favorite launch configurations.
-	 * 
-	 * @return table viewer
-	 */
-	protected TableViewer getFavoritesTable() {
-		return fFavoritesTable;
-	}
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		Composite composite = (Composite) super.createDialogArea(parent);
-		getShell().setText(MessageFormat.format(LaunchConfigurationsMessages.FavoritesDialog_1, new String[]{getModeLabel()})); //$NON-NLS-1$
-		createFavoritesArea(composite);
-		return composite;
-	}
-
-	/**
-	 * Returns a label to use for launch mode with accelerators removed.
-	 * 
-     * @return label to use for launch mode with accelerators removed
-     */
-    private String getModeLabel() {
-        return DebugUIPlugin.removeAccelerators(fHistory.getLaunchGroup().getLabel());
-    }
-
-    protected void createFavoritesArea(Composite parent) {
-		Composite topComp = new Composite(parent, SWT.NULL);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		layout.numColumns = 2;
-		topComp.setLayout(layout);
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		topComp.setLayoutData(gd);
-		topComp.setFont(parent.getFont());
-	
-		// Create "favorite config" area
-		createLabel(topComp, LaunchConfigurationsMessages.FavoritesDialog_2); //$NON-NLS-1$
-		fFavoritesTable = createTable(topComp, new FavoritesContentProvider());
-		Composite buttonComp = createButtonComposite(topComp);
-		fAddFavoriteButton = createPushButton(buttonComp,LaunchConfigurationsMessages.FavoritesDialog_3); //$NON-NLS-1$
-		fAddFavoriteButton.setEnabled(true);
-		fRemoveFavoritesButton = createPushButton(buttonComp, LaunchConfigurationsMessages.FavoritesDialog_4); //$NON-NLS-1$
-		fMoveUpButton = createPushButton(buttonComp, LaunchConfigurationsMessages.FavoritesDialog_5); //$NON-NLS-1$
-		fMoveDownButton = createPushButton(buttonComp, LaunchConfigurationsMessages.FavoritesDialog_6);  //$NON-NLS-1$
-	}
-	
-	/**
-	 * Creates a fully configured table with the given content provider
-	 */
-	private TableViewer createTable(Composite parent, IContentProvider contentProvider) {
-		TableViewer tableViewer= new TableViewer(parent, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
-		tableViewer.setLabelProvider(DebugUITools.newDebugModelPresentation());
-		tableViewer.setContentProvider(contentProvider);
-		tableViewer.setInput(DebugUIPlugin.getDefault());
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		gd.widthHint = 100;
-		gd.heightHint = 100;
-		tableViewer.getTable().setLayoutData(gd);
-		tableViewer.getTable().setFont(parent.getFont());
-		tableViewer.addSelectionChangedListener(fSelectionChangedListener);
-		tableViewer.getControl().addKeyListener(fKeyListener);
-		return tableViewer; 
-	}	
-	
-	/**
-	 * Creates and returns a fully configured push button in the given paren with the given label.
-	 */
-	private Button createPushButton(Composite parent, String label) {
-		Button button = new Button(parent, SWT.PUSH);
-		button.setText(label);
-		button.setFont(parent.getFont());
-		setButtonLayoutData(button);
-		button.addSelectionListener(fButtonListener);
-		button.setEnabled(false);
-		return button;
-	}
-	
-	/**
-	 * Creates a fully configured composite to add buttons to.
-	 */
-	private Composite createButtonComposite(Composite parent) {
-		Composite composite = new Composite(parent, SWT.NONE);
-		GridData gd = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);
-		composite.setLayoutData(gd);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		layout.numColumns = 1;
-		composite.setLayout(layout);
-		composite.setFont(parent.getFont());
-		return composite;
-	}
-	
-	/**
-	 * Creates a fully configured label with the given text
-	 */
-	private Label createLabel(Composite parent, String labelText) {
-		Label label = new Label(parent, SWT.LEFT);
-		label.setText(labelText);
-		GridData gd = new GridData();
-		gd.horizontalSpan = 2;
-		label.setLayoutData(gd);
-		label.setFont(parent.getFont());
-		return label;
-	}	
-	
-	/**
-	 * Returns the current list of favorites.
-	 */
-	protected List getFavorites() {
-		if (fFavorites == null) {
-			ILaunchConfiguration[] favs = getInitialFavorites();
-			fFavorites = new ArrayList(favs.length);
-			addAll(favs, fFavorites);
-		}
-		return fFavorites;
-	}	
-	
-	protected LaunchHistory getLaunchHistory() {
-		return fHistory;
-	}	
-	
-	/**
-	 * Returns the initial content for the favorites list
-	 */
-	protected ILaunchConfiguration[] getInitialFavorites() {
-		return getLaunchHistory().getFavorites();
-	}	
-	
-	/**
-	 * Returns the mode of this page - run or debug.
-	 */
-	protected String getMode() {
-		return getLaunchHistory().getLaunchGroup().getMode();
-	}
-			
-	/**
-	 * Copies the array into the list
-	 */
-	protected void addAll(Object[] array, List list) {
-		for (int i = 0; i < array.length; i++) {
-			list.add(array[i]);
-		}
-	}
-	
-	/**
-	 * Refresh all tables and buttons
-	 */
-	protected void updateStatus() {
-		getFavoritesTable().refresh();
-		handleFavoriteSelectionChanged();				
-	}	
-
-	/**
-	 * The selection in the favorites list has changed
-	 */
-	protected void handleFavoriteSelectionChanged() {
-		IStructuredSelection selection = (IStructuredSelection)getFavoritesTable().getSelection();
-		List favs = getFavorites();
-		boolean notEmpty = !selection.isEmpty();
-		Iterator elements= selection.iterator();
-		boolean first= false;
-		boolean last= false;
-		int lastFav= favs.size() - 1;
-		while (elements.hasNext()) {
-			Object element = elements.next();
-			if(!first && favs.indexOf(element) == 0) {
-				first= true;
-			}
-			if (!last && favs.indexOf(element) == lastFav) {
-				last= true;
-			}
-		}
-		
-		fRemoveFavoritesButton.setEnabled(notEmpty);
-		fMoveUpButton.setEnabled(notEmpty && !first);
-		fMoveDownButton.setEnabled(notEmpty && !last);
-	}
-	
-	/**
-	 * Method performOK.
-	 */
-	public void saveFavorites() {
-		ILaunchConfiguration[] initial = getInitialFavorites();
-		List current = getFavorites();
-		String groupId = getLaunchHistory().getLaunchGroup().getIdentifier();
-		
-		// removed favorites
-		for (int i = 0; i < initial.length; i++) {
-			ILaunchConfiguration configuration = initial[i];
-			if (current.contains(configuration)) {
-			} else {
-				// remove fav attributes
-				try {
-					ILaunchConfigurationWorkingCopy workingCopy = configuration.getWorkingCopy();
-					workingCopy.setAttribute(IDebugUIConstants.ATTR_DEBUG_FAVORITE, (String)null);
-					workingCopy.setAttribute(IDebugUIConstants.ATTR_DEBUG_FAVORITE, (String)null);
-					List groups = workingCopy.getAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, (List)null);
-					if (groups != null) {
-						groups.remove(groupId);
-						if (groups.isEmpty()) {
-							groups = null;	
-						}
-						workingCopy.setAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, groups);
-					}
-					workingCopy.doSave();
-				} catch (CoreException e) {
-					DebugUIPlugin.log(e);
-				} 
-			}
-		}
-		// update added favorites
-		Iterator favs = current.iterator();
-		while (favs.hasNext()) {
-			ILaunchConfiguration configuration = (ILaunchConfiguration)favs.next();
-			try {
-				List groups = configuration.getAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, (List)null);
-				if (groups == null) {
-					groups = new ArrayList();
-				}
-				if (!groups.contains(groupId)) {
-					groups.add(groupId);
-					ILaunchConfigurationWorkingCopy workingCopy = configuration.getWorkingCopy();
-					workingCopy.setAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, groups);
-					workingCopy.doSave();
-				}
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-		 
-		fHistory.setFavorites(getArray(current));		
-	}	
-	
-	protected ILaunchConfiguration[] getArray(List list) {
-		return (ILaunchConfiguration[])list.toArray(new ILaunchConfiguration[list.size()]);
-	} 
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		saveFavorites();
-		super.okPressed();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#close()
-	 */
-	public boolean close() {
-		DialogSettingsHelper.persistShellGeometry(getShell(), getDialogSettingsSectionName());
-		return super.close();
-	}		
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialLocation(org.eclipse.swt.graphics.Point)
-	 */
-	protected Point getInitialLocation(Point initialSize) {
-		Point initialLocation= DialogSettingsHelper.getInitialLocation(getDialogSettingsSectionName());
-		if (initialLocation != null) {
-			return initialLocation;
-		}
-		return super.getInitialLocation(initialSize);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialSize()
-	 */
-	protected Point getInitialSize() {
-		Point size = super.getInitialSize();
-		return DialogSettingsHelper.getInitialSize(getDialogSettingsSectionName(), size);
-	}
-	
-	/**
-	 * Returns the name of the section that this dialog stores its settings in
-	 * 
-	 * @return String
-	 */
-	private String getDialogSettingsSectionName() {
-		return "FAVORITES_DIALOG_SECTION"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationDialog.java
deleted file mode 100644
index 0f157fa..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationDialog.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * A dialog used to edit & launch a single launch configuration.
- */
-public class LaunchConfigurationDialog extends LaunchConfigurationPropertiesDialog {
-
-	/**
-	 * Constructs a dialog
-	 * 
-	 * @param shell
-	 * @param launchConfiguration
-	 * @param group
-	 */
-	public LaunchConfigurationDialog(Shell shell, ILaunchConfiguration launchConfiguration, LaunchGroupExtension group) {
-		super(shell, launchConfiguration, group);
-	}
-
-	/**
-	 * This dialog has 'Launch' and 'Close' buttons.
-	 * 
-	 * @see org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(Composite)
-	 */
-	protected void createButtonsForButtonBar(Composite parent) {
-		createButton(parent, ID_LAUNCH_BUTTON, getLaunchButtonText(), true);
-		createButton(parent, ID_CLOSE_BUTTON, LaunchConfigurationsMessages.LaunchConfigurationDialog_Close_1, false);  //$NON-NLS-1$
-	}
-	
-	protected String getShellTitle() {
-		return getLaunchConfiguration().getName();
-	}
-	
-	protected String getTitleAreaTitle() {
-		return LaunchConfigurationsMessages.LaunchConfigurationDialog_Modify_attributes_and_launch__1; //$NON-NLS-1$
-	}
-	/**
-	 * @see ILaunchConfigurationDialog#updateButtons()
-	 */
-	public void updateButtons() {
-		// Launch button
-		getTabViewer().refresh();
-		getButton(ID_LAUNCH_BUTTON).setEnabled(getTabViewer().canLaunch());
-		
-	}
-		
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.SINGLE_LAUNCH_CONFIGURATION_DIALOG;
-	}
-	
-	protected void initializeContent() {
-		getTabViewer().setInput(getLaunchConfiguration());
-		IStatus status = getInitialStatus();
-		if (status != null) {
-			handleStatus(status);
-		}		
-	}
-		
-	/**
-	 * Returns the name of the section that this dialog stores its settings in
-	 *
-	 * @return String
-	 */
-	protected String getDialogSettingsSectionName() {
-		return IDebugUIConstants.PLUGIN_ID + ".SINGLE_LAUNCH_CONFIGURATION_DIALOG_SECTION"; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationManager.java
deleted file mode 100644
index e539b5a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationManager.java
+++ /dev/null
@@ -1,793 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.ILaunchMode;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.ILaunchHistoryChangedListener;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.activities.IWorkbenchActivitySupport;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-public class LaunchConfigurationManager implements ILaunchListener {
-	/**
-	 * Launch group extensions, keyed by launch group identifier.
-	 */
-	protected Map fLaunchGroups;
-	
-	/**
-	 * Launch histories keyed by launch group identifier
-	 */	
-	protected Map fLaunchHistories;
-		
-	/**
-	 * The list of registered implementors of <code>ILaunchHistoryChangedListener</code>
-	 */
-	protected List fLaunchHistoryChangedListeners = new ArrayList(3);	
-
-	/**
-	 * Launch shortcuts
-	 */
-	private List fLaunchShortcuts = null;
-	
-	/**
-	 * Launch shortcuts, cached by perspective ids
-	 */
-	private Map fLaunchShortcutsByPerspective = null;
-		
-	/**
-	 * Cache of launch configuration tab images with error overlays
-	 */
-	protected ImageRegistry fErrorImages = null;
-	
-	/**
-	 * true when restoring launch history
-	 */
-	protected boolean fRestoring = false;
-	
-	/**
-	 * A set containing the launch modes supported by
-	 * current configurations.
-	 */
-	private Set fLoadedModes = null;
-		
-	/**
-	 * The name of the file used to persist the launch history.
-	 */
-	private static final String LAUNCH_CONFIGURATION_HISTORY_FILENAME = "launchConfigurationHistory.xml"; //$NON-NLS-1$
-	
-	/**
-	 * The 'HISTORY_' fields are constants that represent node & attribute names used when
-	 * writing out the launch history XML file.
-	 */
-	private static final String HISTORY_ROOT_NODE = "launchHistory"; //$NON-NLS-1$
-	private static final String HISTORY_LAUNCH_NODE = "launch"; //$NON-NLS-1$
-	private static final String HISTORY_LAST_LAUNCH_NODE = "lastLaunch"; //$NON-NLS-1$
-	private static final String HISTORY_MEMENTO_ATT = "memento"; //$NON-NLS-1$
-	private static final String HISTORY_MODE_ATT = "mode"; //$NON-NLS-1$
-	
-	public void startup() {				
-		ILaunchManager launchManager= DebugPlugin.getDefault().getLaunchManager();
-		launchManager.addLaunchListener(this);	
-
-		//update histories for launches already registered
-		ILaunch[] launches= launchManager.getLaunches();
-		for (int i = 0; i < launches.length; i++) {
-			launchAdded(launches[i]);
-		}
-	}
-	
-	/**
-	 * Returns whether any launch config supports the given mode.
-	 * 
-	 * @param mode launch mode
-	 * @return whether any launch config supports the given mode
-	 */
-	public boolean launchModeAvailable(String mode) {
-		if (fLoadedModes == null) {
-			ILaunchManager launchManager = DebugPlugin.getDefault().getLaunchManager();
-			ILaunchConfigurationType[] types = launchManager.getLaunchConfigurationTypes();
-			ILaunchMode[] modes = launchManager.getLaunchModes();
-			fLoadedModes = new HashSet(3);
-			for (int i = 0; i < types.length; i++) {
-				ILaunchConfigurationType type = types[i];
-				for (int j = 0; j < modes.length; j++) {
-					ILaunchMode launchMode = modes[j];
-					if (type.supportsMode(launchMode.getIdentifier())) {
-						fLoadedModes.add(launchMode.getIdentifier());
-					}
-				}
-			}
-		}
-		return fLoadedModes.contains(mode);
-	}
-	
-	/**
-	 * Returns whether the given launch configuraiton should be visible in the
-	 * debug ui. If the config is marked as private, or belongs to a different
-	 * category (i.e. non-null), then this configuration should not be displayed
-	 * in the debug ui.
-	 * 
-	 * @param launchConfiguration
-	 * @return boolean
-	 */
-	public static boolean isVisible(ILaunchConfiguration launchConfiguration) {
-		try {
-			return !(launchConfiguration.getAttribute(IDebugUIConstants.ATTR_PRIVATE, false));
-		} catch (CoreException e) {
-		}
-		return false;
-	}
-	
-	/**
-	 * Returns a collection of launch configurations that does not contain
-	 * configs from disabled activities.
-	 * 
-	 * @param configurations a collection of configurations
-	 * @return the given collection minus any configurations from disabled activities
-	 */
-	public static ILaunchConfiguration[] filterConfigs(ILaunchConfiguration[] configurations) {
-		IWorkbenchActivitySupport activitySupport= PlatformUI.getWorkbench().getActivitySupport();
-		if (activitySupport == null) {
-			return configurations;
-		}
-
-		List filteredConfigs= new ArrayList();
-		for (int i = 0; i < configurations.length; i++) {
-			ILaunchConfiguration configuration= configurations[i];
-			ILaunchConfigurationType type= null;
-			try {
-				type= configuration.getType();
-				LaunchConfigurationTypeContribution contribution = new LaunchConfigurationTypeContribution(type);				
-				if (!WorkbenchActivityHelper.filterItem(contribution))
-					filteredConfigs.add(configuration);
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e.getStatus());
-			}
-		}
-		return (ILaunchConfiguration[]) filteredConfigs.toArray(new ILaunchConfiguration[filteredConfigs.size()]);
-	}
-	
-	public void shutdown() {
-		ILaunchManager launchManager= DebugPlugin.getDefault().getLaunchManager();
-		launchManager.removeLaunchListener(this);
-		if (fLaunchHistories != null) {
-			Iterator histories = fLaunchHistories.values().iterator();
-			while (histories.hasNext()) {
-				LaunchHistory history = (LaunchHistory)histories.next();
-				history.dispose();
-			}
-		}
-	}
-	
-	/**
-	 * @see ILaunchListener#launchRemoved(ILaunch)
-	 */
-	public void launchRemoved(ILaunch launch) {
-	}
-	
-	/**
-	 * @see ILaunchListener#launchChanged(ILaunch)
-	 */
-	public void launchChanged(ILaunch launch) {	
-
-	}
-
-	/**
-	 * Must not assume that will only be called from the UI thread.
-	 *
-	 * @see ILaunchListener#launchAdded(ILaunch)
-	 */
-	public void launchAdded(final ILaunch launch) {
-		removeTerminatedLaunches(launch);
-	}
-	
-	protected void removeTerminatedLaunches(final ILaunch newLaunch) {
-		if (DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugUIConstants.PREF_AUTO_REMOVE_OLD_LAUNCHES)) {
-		    Job launchRemovalJob = new Job(LaunchConfigurationsMessages.LaunchConfigurationManager_0) { //$NON-NLS-1$
-		        protected IStatus run(IProgressMonitor monitor) {
-		            ILaunchManager lManager= DebugPlugin.getDefault().getLaunchManager();
-					Object[] launches= lManager.getLaunches();
-					for (int i= 0; i < launches.length; i++) {
-						ILaunch launch= (ILaunch)launches[i];
-						if (launch != newLaunch && launch.isTerminated()) {
-							lManager.removeLaunch(launch);
-						}
-					}
-					return Status.OK_STATUS;
-		        }
-		        
-		    };
-		    launchRemovalJob.setPriority(Job.DECORATE);
-		    launchRemovalJob.schedule();
-		}
-	}
-	
-	/**
-	 * Returns the most recent launch for the given group, or <code>null</code>
-	 * if none.
-	 *	
-	 * @return the last launch, or <code>null</code> if none
-	 */	
-	public ILaunchConfiguration getLastLaunch(String groupId) {
-		LaunchHistory history = getLaunchHistory(groupId);
-		if (history != null) {
-			return history.getRecentLaunch();
-		}
-		return null;
-	}
-	
-	/**
-	 * Add the specified listener to the list of listeners that will be notified when the
-	 * launch history changes.
-	 */
-	public void addLaunchHistoryListener(ILaunchHistoryChangedListener listener) {
-		if (!fLaunchHistoryChangedListeners.contains(listener)) {
-			fLaunchHistoryChangedListeners.add(listener);
-		}
-	}
-	
-	/**
-	 * Remove the specified listener from the list of listeners that will be notified when the
-	 * launch history changes.
-	 */
-	public void removeLaunchHistoryListener(ILaunchHistoryChangedListener listener) {
-		fLaunchHistoryChangedListeners.remove(listener);
-	}
-	
-	/**
-	 * Notify all launch history listeners that the launch history has changed in some way.
-	 */
-	protected void fireLaunchHistoryChanged() {
-		Iterator iterator = fLaunchHistoryChangedListeners.iterator();
-		while (iterator.hasNext()) {
-			ILaunchHistoryChangedListener listener = (ILaunchHistoryChangedListener) iterator.next();
-			listener.launchHistoryChanged();
-		}
-	}
-
-	protected String getHistoryAsXML() throws CoreException, ParserConfigurationException, TransformerException, IOException {
-		Document doc = DebugUIPlugin.getDocument();
-		Element historyRootElement = doc.createElement(HISTORY_ROOT_NODE); 
-		doc.appendChild(historyRootElement);
-		
-		Iterator histories = fLaunchHistories.values().iterator();
-		while (histories.hasNext()) {
-			LaunchHistory history = (LaunchHistory)histories.next();
-			createEntry(doc, historyRootElement, history.getLaunchGroup().getMode(), history.getHistory());
-			createEntry(doc, historyRootElement, history.getLaunchGroup().getMode(), history.getFavorites());
-			ILaunchConfiguration configuration = history.getRecentLaunch();
-			if (configuration != null && configuration.exists()) {
-				Element last = doc.createElement(HISTORY_LAST_LAUNCH_NODE);
-				last.setAttribute(HISTORY_MEMENTO_ATT, configuration.getMemento());
-				last.setAttribute(HISTORY_MODE_ATT, history.getLaunchGroup().getMode());
-				historyRootElement.appendChild(last);
-			}
-		}
-		
-		return DebugUIPlugin.serializeDocument(doc);
-	}
-
-	protected void createEntry(Document doc, Element historyRootElement, String mode, ILaunchConfiguration[] configurations) throws CoreException {
-		for (int i = 0; i < configurations.length; i++) {
-			ILaunchConfiguration configuration = configurations[i];
-			if (configuration.exists()) {
-				Element launch = doc.createElement(HISTORY_LAUNCH_NODE);
-				launch.setAttribute(HISTORY_MEMENTO_ATT, configuration.getMemento());
-				launch.setAttribute(HISTORY_MODE_ATT, mode);
-				historyRootElement.appendChild(launch);
-			}
-		}
-	}
-				
-	protected IPath getHistoryFilePath() {
-		return DebugUIPlugin.getDefault().getStateLocation().append(LAUNCH_CONFIGURATION_HISTORY_FILENAME); 
-	}
-
-	/**
-	 * Write out an XML file indicating the entries on the run & debug history lists and
-	 * the most recent launch.
-	 */
-	protected void persistLaunchHistory() throws IOException, CoreException, TransformerException, ParserConfigurationException {
-		if (fRestoring) {
-			return;
-		}
-		IPath historyPath = getHistoryFilePath();
-		String osHistoryPath = historyPath.toOSString();
-		String xml = getHistoryAsXML();
-		File file = new File(osHistoryPath);
-		file.createNewFile();
-		
-		FileOutputStream stream = new FileOutputStream(file);
-		stream.write(xml.getBytes("UTF8")); //$NON-NLS-1$
-		stream.close();
-		fireLaunchHistoryChanged();
-	}
-	
-	/**
-	 * Find the XML history file and parse it.  Place the corresponding configs
-	 * in the appropriate history, and set the most recent launch.
-	 */
-	private void restoreLaunchHistory() {
-		// Find the history file
-		IPath historyPath = getHistoryFilePath();
-		String osHistoryPath = historyPath.toOSString();
-		File file = new File(osHistoryPath);
-		
-		// If no history file, nothing to do
-		if (!file.exists()) {
-			return;
-		}
-		
-		FileInputStream stream= null;
-		Element rootHistoryElement= null;
-		try {
-			// Parse the history file
-			stream = new FileInputStream(file);
-			rootHistoryElement = null;
-			try {
-				DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
-				parser.setErrorHandler(new DefaultHandler());
-				rootHistoryElement = parser.parse(new InputSource(stream)).getDocumentElement();
-			} catch (SAXException e) {
-				DebugUIPlugin.log(e);
-				return;
-			} catch (ParserConfigurationException e) {
-				DebugUIPlugin.log(e);
-				return;
-			} finally {
-				stream.close();
-			}
-		} catch (IOException exception) {
-			DebugUIPlugin.log(exception);
-			return;
-		}
-		
-		// If root node isn't what we expect, return
-		if (!rootHistoryElement.getNodeName().equalsIgnoreCase(HISTORY_ROOT_NODE)) { 
-			return;
-		}
-
-		// For each child of the root node, construct a launch config handle and add it to
-		// the appropriate history, or set the most recent launch
-		Collection l = fLaunchHistories.values();
-		LaunchHistory[] histories = (LaunchHistory[])l.toArray(new LaunchHistory[l.size()]);
-		NodeList list = rootHistoryElement.getChildNodes();
-		int length = list.getLength();
-		for (int i = 0; i < length; ++i) {
-			Node node = list.item(i);
-			short type = node.getNodeType();
-			if (type == Node.ELEMENT_NODE) {
-				Element entry = (Element) node;
-				if (entry.getNodeName().equalsIgnoreCase(HISTORY_LAUNCH_NODE)) { 
-					createHistoryElement(entry, histories);
-				} else if (entry.getNodeName().equalsIgnoreCase(HISTORY_LAST_LAUNCH_NODE)) {
-					createRecentElement(entry, histories);
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Construct a launch configuration corresponding to the specified XML
-	 * element, and place it in the approriate history.
-	 */
-	private void createHistoryElement(Element entry, LaunchHistory[] histories) {
-		String memento = entry.getAttribute(HISTORY_MEMENTO_ATT); 
-		String mode = entry.getAttribute(HISTORY_MODE_ATT);     
-		try {
-			ILaunchConfiguration launchConfig = DebugPlugin.getDefault().getLaunchManager().getLaunchConfiguration(memento);
-			if (launchConfig.exists()) {
-				for (int i = 0; i < histories.length; i++) {
-					LaunchHistory history = histories[i];
-					if (history.accepts(launchConfig) && history.getLaunchGroup().getMode().equals(mode)) {
-						history.addHistory(launchConfig, false);
-					}
-				}
-			}
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}	
-	}
-	
-	/**
-	 * Construct a launch configuration corresponding to the specified XML
-	 * element, and place it in the approriate history's recent launch
-	 */
-	private void createRecentElement(Element entry, LaunchHistory[] histories) {
-		String memento = entry.getAttribute(HISTORY_MEMENTO_ATT); 
-		String mode = entry.getAttribute(HISTORY_MODE_ATT);     
-		try {
-			ILaunchConfiguration launchConfig = DebugPlugin.getDefault().getLaunchManager().getLaunchConfiguration(memento);
-			if (launchConfig.exists()) {
-				for (int i = 0; i < histories.length; i++) {
-					LaunchHistory history = histories[i];
-					if (history.accepts(launchConfig) && history.getLaunchGroup().getMode().equals(mode)) {
-						history.setRecentLaunch(launchConfig);
-					}
-				}
-			}
-		} catch (CoreException e) {
-			if (e.getStatus().getCode() != DebugException.MISSING_LAUNCH_CONFIGURATION_TYPE) {
-				// only log the error if it's not a missing type definition
-				DebugUIPlugin.log(e);
-			}
-		}	
-	}	
-	
-	/**
-	 * Load all registered extensions of the 'launch shortcut' extension point.
-	 */
-	private void loadLaunchShortcuts() {
-		// Get the configuration elements
-		IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_LAUNCH_SHORTCUTS);
-		IConfigurationElement[] infos= extensionPoint.getConfigurationElements();
-
-		// Load the configuration elements into a Map 
-		fLaunchShortcuts = new ArrayList(infos.length);
-		for (int i = 0; i < infos.length; i++) {
-			LaunchShortcutExtension ext = new LaunchShortcutExtension(infos[i]);
-			fLaunchShortcuts.add(ext);
-		}
-		Collections.sort(fLaunchShortcuts, new ShortcutComparator());
-	}
-	
-	/**
-	 * Load all registered extensions of the 'launch groups' extension point.
-	 */
-	private void loadLaunchGroups() {
-		if (fLaunchGroups == null) {
-			// Get the configuration elements
-			IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_LAUNCH_GROUPS);
-			IConfigurationElement[] infos= extensionPoint.getConfigurationElements();
-	
-			// Load the configuration elements into a Map 
-			fLaunchGroups = new HashMap(infos.length);
-			for (int i = 0; i < infos.length; i++) {
-				LaunchGroupExtension ext = new LaunchGroupExtension(infos[i]);
-				fLaunchGroups.put(ext.getIdentifier(), ext);
-			}
-		}
-	}	
-	
-	/**
-	 * Returns all launch shortcuts
-	 * 
-	 * @return all launch shortcuts
-	 */
-	public List getLaunchShortcuts() {
-		if (fLaunchShortcuts == null) {
-			loadLaunchShortcuts();
-		}
-		return fLaunchShortcuts;
-	}
-	
-	/**
-	 * Returns all launch shortcuts for the given category
-	 *
-	 * @return all launch shortcuts
-	 */
-	public List getLaunchShortcuts(String category) {
-		return filterShortcuts(getLaunchShortcuts(), category);
-	}	
-	
-	/**
-	 * Return a list of filtered launch shortcuts, based on the given category.
-	 *  
-	 * @param unfiltered
-	 * @param category
-	 * @return List
-	 */
-	protected List filterShortcuts(List unfiltered, String category) {
-		List filtered = new ArrayList(unfiltered.size());
-		Iterator iter = unfiltered.iterator();
-		while (iter.hasNext()){
-			LaunchShortcutExtension extension = (LaunchShortcutExtension)iter.next();
-			if (category == null) {
-				if (extension.getCategory() == null) {
-					filtered.add(extension);
-				}
-			} else if (category.equals(extension.getCategory())){
-				filtered.add(extension);
-			}
-		}
-		return filtered;		
-	}
-	
-	/**
-	 * Returns all launch shortcuts defined for the given perspective,
-	 * empty list if none.
-	 * 
-	 * @param perpsective perspective identifier
-	 * @return all launch shortcuts defined for the given perspective,
-	 * empty list if none.
-	 */
-	public List getLaunchShortcuts(String perpsective, String category) {
-		if (fLaunchShortcutsByPerspective == null) {
-			Iterator shortcuts = getLaunchShortcuts().iterator();
-			fLaunchShortcutsByPerspective = new HashMap(10);
-			while (shortcuts.hasNext()) {
-				LaunchShortcutExtension ext = (LaunchShortcutExtension)shortcuts.next();
-				Iterator perspectives = ext.getPerspectives().iterator();
-				while (perspectives.hasNext()) {
-					String id = (String)perspectives.next();
-					List list = (List)fLaunchShortcutsByPerspective.get(id);
-					if (list == null) {
-						list = new ArrayList(4);
-						fLaunchShortcutsByPerspective.put(id, list);
-					}
-					list.add(ext);
-				}
-			}
-		}
-		List list = (List)fLaunchShortcutsByPerspective.get(perpsective); 
-		if (list == null) {
-			return new ArrayList();
-		} 
-		return filterShortcuts(list, category);
-	}
-	
-	/**
-	 * Returns the image used to display an error in the given tab
-	 */
-	public Image getErrorTabImage(ILaunchConfigurationTab tab) {
-		if (fErrorImages == null) {
-			fErrorImages = new ImageRegistry();
-		}
-		String key = tab.getClass().getName();
-		Image image = fErrorImages.get(key);
-		if (image == null) {
-			// create image
-			Image base = tab.getImage();
-			if (base == null) {
-				base = DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_OVR_TRANSPARENT);
-			}
-			base = new Image(Display.getCurrent(), base, SWT.IMAGE_COPY);
-			LaunchConfigurationTabImageDescriptor desc = new LaunchConfigurationTabImageDescriptor(base, LaunchConfigurationTabImageDescriptor.ERROR);
-			image = desc.createImage();
-			fErrorImages.put(key, image);
-		}
-		return image;
-	}
-	
-	/**
-	 * Return the launch group with the given id, or <code>null</code>
-	 * 
-	 * @return the launch group with the given id, or <code>null</code>
-	 */
-	public LaunchGroupExtension getLaunchGroup(String id) {
-		if (fLaunchGroups == null) {
-			loadLaunchGroups();
-		}
-		return (LaunchGroupExtension)fLaunchGroups.get(id);
-	}
-	
-	/**
-	 * Return all defined launch groups
-	 * 
-	 * @return all defined launch groups
-	 */
-	public ILaunchGroup[] getLaunchGroups() {
-		if (fLaunchGroups == null) {
-			loadLaunchGroups();
-		}
-		Collection groups = fLaunchGroups.values();
-		return (ILaunchGroup[])groups.toArray(new ILaunchGroup[groups.size()]);
-	}	
-	
-	/**
-	 * Return the launch history with the given group id, or <code>null</code>
-	 * 
-	 * @return the launch history with the given group id, or <code>null</code>
-	 */
-	public LaunchHistory getLaunchHistory(String id) {
-		if (fLaunchHistories == null) {
-			loadLaunchHistories();
-		}
-		return (LaunchHistory)fLaunchHistories.get(id);
-	}	
-	
-	/**
-	 * Restore launch history
-	 */
-	private void loadLaunchHistories() {
-		if (fLaunchHistories == null) {
-			fRestoring = true;
-			ILaunchGroup[] groups = getLaunchGroups();
-			fLaunchHistories = new HashMap(groups.length);
-			for (int i = 0; i < groups.length; i++) {
-				ILaunchGroup extension = groups[i];
-				if (extension.isPublic()) {
-					fLaunchHistories.put(extension.getIdentifier(), new LaunchHistory(extension));
-				}
-			}
-			restoreLaunchHistory();
-			fRestoring = false;
-		}
-	}
-	
-	/**
-	 * Returns the default launch group for the given mode.
-	 * 
-	 * @param mode
-	 * @return launch group
-	 */
-	public LaunchGroupExtension getDefaultLanuchGroup(String mode) {
-		if (mode.equals(ILaunchManager.DEBUG_MODE)) {
-			return getLaunchGroup(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP);
-		}
-		return getLaunchGroup(IDebugUIConstants.ID_RUN_LAUNCH_GROUP);
-	}
-	
-	/**
-	 * Returns the launch group the given launch configuration belongs to, in
-	 * the specified mode, or <code>null</code> if none.
-	 * 
-	 * @param configuration
-	 * @param mode
-	 * @return the launch group the given launch configuration belongs to, in
-	 * the specified mode, or <code>null</code> if none
-	 */
-	public ILaunchGroup getLaunchGroup(ILaunchConfiguration configuration, String mode) {
-		try {
-			String category = configuration.getCategory();
-			ILaunchGroup[] groups = getLaunchGroups();
-			for (int i = 0; i < groups.length; i++) {
-				ILaunchGroup extension = groups[i];
-				if (category == null) {
-					if (extension.getCategory() == null && extension.getMode().equals(mode)) {
-						return extension;
-					}
-				} else if (category.equals(extension.getCategory())) {
-					if (extension.getMode().equals(mode)) {
-						return extension;
-					}
-				}
-			}
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the private launch configuration used as a placeholder to represent/store
-	 * the information associated with a launch configuration type.
-	 * 
-	 * @param type launch configuration type
-	 * @return launch configuration
-	 * @since 3.0
-	 */
-	public static ILaunchConfiguration getSharedTypeConfig(ILaunchConfigurationType type) throws CoreException {
-		String id = type.getIdentifier();
-		String name = id + ".SHARED_INFO"; //$NON-NLS-1$
-		ILaunchConfiguration shared = null;
-		ILaunchConfiguration[] configurations = DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurations(type);
-		for (int i = 0; i < configurations.length; i++) {
-			ILaunchConfiguration configuration = configurations[i];
-			if (configuration.getName().equals(name)) {
-				shared = configuration;
-				break;
-			}
-		}
-		
-		if (shared == null) {
-			// create a new shared config
-			ILaunchConfigurationWorkingCopy workingCopy;
-			workingCopy = type.newInstance(null, name);
-			workingCopy.setAttribute(IDebugUIConstants.ATTR_PRIVATE, true);
-			// null entries indicate default settings
-			// save
-			shared = workingCopy.doSave();
-		}
-		return shared;
-	}
-
-}
-
-class ShortcutComparator implements Comparator {
-	/**
-	 * @see Comparator#compare(Object, Object)
-	 */
-	public int compare(Object a, Object b) {
-		LaunchShortcutExtension shorcutA = (LaunchShortcutExtension)a;
-		String labelA = shorcutA.getLabel();
-		String pathA = shorcutA.getMenuPath();
-		LaunchShortcutExtension shortcutB = (LaunchShortcutExtension)b;
-		String labelB = shortcutB.getLabel();
-		String pathB = shortcutB.getMenuPath();
-		
-		// group by path, then sort by label
-		// a null path sorts last (i.e. highest)
-		if (nullOrEqual(pathA, pathB)) {
-			// null labels sort last (i.e. highest)
-			if (labelA == labelB) {
-				return 0;
-			}
-			if (labelA == null) {
-				return 1;
-			}
-			if (labelB == null) {
-				return -1;
-			}
-			return labelA.compareToIgnoreCase(labelB);
-		}
-		// compare paths
-		if (pathA == null) {
-			return 1;
-		}
-		if (pathB == null) {
-			return -1;
-		}
-		return pathA.compareToIgnoreCase(pathB);
-	}
-	
-	private boolean nullOrEqual(String a, String b) {
-		if (a == null) {
-			return b == null;
-		}
-		return a.equals(b);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPresentationManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPresentationManager.java
deleted file mode 100644
index cc6bcf2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPresentationManager.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
- 
-import java.text.MessageFormat;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchConfigurationTabGroup;
-
-/**
- * Manages contributed launch configuration tabs
- */ 
-public class LaunchConfigurationPresentationManager {
-	
-	/**
-	 * The singleton launch configuration presentation manager
-	 */
-	private static LaunchConfigurationPresentationManager fgDefault;
-			
-	/**
-	 * Collection of launch configuration tab group extensions
-	 * defined in plug-in xml. Entries are keyed by launch
-	 * configuration type identifier (<code>String</code>),
-	 * and entires are tables of launch modes (<code>String</code>)
-	 * to <code>LaunchConfigurationTabGroupExtension</code>. "*" is
-	 * used to represent the default tab group (i.e. unspecified mode).
-	 */
-	private Hashtable fTabGroupExtensions;	
-			
-	/**
-	 * Constructs the singleton launch configuration presentation
-	 * manager.
-	 */
-	private LaunchConfigurationPresentationManager() {
-		fgDefault = this;
-		initializeTabGroupExtensions();
-	}
-
-	/**
-	 * Returns the launch configuration presentation manager
-	 */
-	public static LaunchConfigurationPresentationManager getDefault() {
-		if (fgDefault == null) {
-			fgDefault = new LaunchConfigurationPresentationManager();
-		}
-		return fgDefault;
-	}
-		
-	/**
-	 * Creates launch configuration tab group extensions for each extension
-	 * defined in XML, and adds them to the table of tab group extensions.
-	 */
-	private void initializeTabGroupExtensions() {
-		fTabGroupExtensions = new Hashtable();
-		IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_LAUNCH_CONFIGURATION_TAB_GROUPS);
-		IConfigurationElement[] groups = extensionPoint.getConfigurationElements();
-		for (int i = 0; i < groups.length; i++) {
-			LaunchConfigurationTabGroupExtension group = new LaunchConfigurationTabGroupExtension(groups[i]);
-			String typeId = group.getTypeIdentifier();
-			if (typeId == null) {
-				IExtension ext = groups[i].getDeclaringExtension();
-				IStatus status = new Status(IStatus.ERROR, IDebugUIConstants.PLUGIN_ID, IDebugUIConstants.STATUS_INVALID_EXTENSION_DEFINITION,
-					 MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationPresentationManager_Launch_configuration_tab_group_extension__0__does_not_specify_launch_configuration_type_1, (new String[] {ext.getUniqueIdentifier()})), null); //$NON-NLS-1$
-					DebugUIPlugin.log(status);
-			} else {
-				// verify it references a valid launch configuration type
-				ILaunchConfigurationType lct = DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurationType(typeId);
-				if (lct == null) {
-					IExtension ext = groups[i].getDeclaringExtension();
-					IStatus status = new Status(IStatus.ERROR, IDebugUIConstants.PLUGIN_ID, IDebugUIConstants.STATUS_INVALID_EXTENSION_DEFINITION,
-					 MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationPresentationManager_Launch_configuration_tab_group_extension__0__refers_to_non_existant_launch_configuration_type__1__2, (new String[] {ext.getUniqueIdentifier(), typeId})), null); //$NON-NLS-1$
-					DebugUIPlugin.log(status);
-				}
-			}
-			if (typeId != null) {
-				// get the map for the config type
-				Map map = (Map)fTabGroupExtensions.get(typeId);
-				if (map == null) {
-					map = new Hashtable();
-					fTabGroupExtensions.put(typeId, map);
-				}
-				Set modes = group.getModes();
-				if (modes == null) {
-					// default tabs - store with "*"
-					map.put("*", group); //$NON-NLS-1$
-				} else {
-					// store per mode
-					Iterator iterator = modes.iterator();
-					while (iterator.hasNext()) {
-						map.put(iterator.next(), group);
-					}
-				}
-			}
-		}
-	}	
-	
-	/**
-	 * Returns the tab group for the given launch configuration type and mode.
-	 * 
-	 * @param type launch configuration type
-	 * @param mode launch mode
-	 * @return the tab group for the given type of launch configuration
-	 * @exception CoreException if an exception occurs creating the group
-	 */
-	public ILaunchConfigurationTabGroup getTabGroup(ILaunchConfigurationType type, String mode) throws CoreException {
-		LaunchConfigurationTabGroupExtension ext = getExtension(type.getIdentifier(), mode);
-		if (ext == null) {
-			IStatus status = new Status(IStatus.ERROR, IDebugUIConstants.PLUGIN_ID, IDebugUIConstants.INTERNAL_ERROR,
-			 MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationPresentationManager_No_tab_group_defined_for_launch_configuration_type__0__3, (new String[] {type.getIdentifier()})), null);  //$NON-NLS-1$
-			 throw new CoreException(status);
-		} 
-		return ext.newTabGroup();		
-	}
-	
-	/**
-	 * Returns the launch tab group extension for the given type and mode, or
-	 * <code>null</code> if none
-	 * 
-	 * @param type launch configuration type identifier
-	 * @param mode launch mode identifier
-	 * @return launch tab group extension or <code>null</code>
-	 */
-	protected LaunchConfigurationTabGroupExtension getExtension(String type, String mode) {
-		// get the map for the config type
-		Map map = (Map)fTabGroupExtensions.get(type);
-		if (map != null) {
-			// try the specific mode
-			Object extension = map.get(mode);
-			if (extension == null) {
-				// get the default tabs
-				extension = map.get("*"); //$NON-NLS-1$
-			}
-			return (LaunchConfigurationTabGroupExtension)extension;
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the identifier of the help context that is associated with the
-	 * specified launch configuration type and mode, or <code>null</code> if none.
-	 * 
-	 * @param type launch config type
-	 * @param mode launch mode
-	 * @return the identifier for the help context associated with the given
-	 * type of launch configuration, or <code>null</code>
-	 * @exception CoreException if an exception occurs creating the group
-	 * @since 2.1
-	 */
-	public String getHelpContext(ILaunchConfigurationType type, String mode) throws CoreException {
-		LaunchConfigurationTabGroupExtension ext = getExtension(type.getIdentifier(), mode);
-		if (ext == null) {
-			IStatus status = new Status(IStatus.ERROR, IDebugUIConstants.PLUGIN_ID, IDebugUIConstants.INTERNAL_ERROR,
-			 MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationPresentationManager_No_tab_group_defined_for_launch_configuration_type__0__3, (new String[] {type.getIdentifier()})), null); //$NON-NLS-1$
-			 throw new CoreException(status);
-		} 
-		return ext.getHelpContextId();		
-	}
-	
-	/**
-	 * Returns the description of the given configuration type
-	 * in the specified mode or <code>null</code> if none.
-	 * 
-	 * @param configType the config type
-	 * @param mode the launch mode
-	 * @return the description of the given configuration type, possible <code>null</code>
-	 */
-	public String getDescription(ILaunchConfigurationType configType, String mode) {
-		LaunchConfigurationPresentationManager manager = LaunchConfigurationPresentationManager.getDefault();
-		LaunchConfigurationTabGroupExtension extension = manager.getExtension(configType.getAttribute("id"), mode); //$NON-NLS-1$
-		return extension.getDescription(mode);
-	}	
-	
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPropertiesDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPropertiesDialog.java
deleted file mode 100644
index 92cfbbc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationPropertiesDialog.java
+++ /dev/null
@@ -1,283 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationListener;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.PixelConverter;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.debug.ui.ILaunchConfigurationTabGroup;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
- 
-
-/**
- * A dialog used to edit a single launch configuration.
- */
-public class LaunchConfigurationPropertiesDialog extends LaunchConfigurationsDialog implements ILaunchConfigurationListener {
-	
-	/**
-	 * The launch configuration to display
-	 */
-	private ILaunchConfiguration fLaunchConfiguration;
-
-	/**
-	 * Constructs a new launch configuration dialog on the given
-	 * parent shell.
-	 * 
-	 * @param shell the parent shell
-	 * @param selection the selection used to initialize this dialog, typically the 
-	 *  current workbench selection
-	 * @param group launch group
-	 */
-	public LaunchConfigurationPropertiesDialog(Shell shell, ILaunchConfiguration launchConfiguration, LaunchGroupExtension group) {
-		super(shell, group);
-		setLaunchConfiguration(launchConfiguration);
-		DebugPlugin.getDefault().getLaunchManager().addLaunchConfigurationListener(this);
-	}
-	
-	/**
-	 * Sets the launch configration to be displayed.
-	 * 
-	 * @param configuration
-	 */
-	private void setLaunchConfiguration(ILaunchConfiguration configuration) {
-		fLaunchConfiguration = configuration;
-	}
-	
-	/**
-	 * Returns the launch configuration being displayed.
-	 * 
-	 * @return ILaunchConfiguration
-	 */
-	protected ILaunchConfiguration getLaunchConfiguration() {
-		return fLaunchConfiguration;
-	}
-
-	protected void initializeContent() {
-		getTabViewer().setInput(getLaunchConfiguration());
-		IStatus status = getInitialStatus();
-		if (status != null) {
-			handleStatus(status);
-		}
-	}
-			
-	/**
-	 * @see Window#close()
-	 */
-	public boolean close() {
-	    if (!isSafeToClose()) {
-	        return false;
-	    }
-		persistShellGeometry();
-		getBannerImage().dispose();
-		getTabViewer().dispose();
-		DebugPlugin.getDefault().getLaunchManager().removeLaunchConfigurationListener(this);
-		return super.close();
-	}
-		
-	/**
-	 * Adds content to the dialog area
-	 */
-	protected void addContent(Composite dialogComp) {
-		GridData gd;
-		Composite topComp = new Composite(dialogComp, SWT.NONE);
-		gd = new GridData(GridData.FILL_BOTH);
-		topComp.setLayoutData(gd);
-		GridLayout topLayout = new GridLayout();
-		topLayout.numColumns = 1;
-		topLayout.marginHeight = 5;
-		topLayout.marginWidth = 0;
-		topComp.setLayout(topLayout);
-		topComp.setFont(dialogComp.getFont());
-	
-		// Set the things that TitleAreaDialog takes care of 
-		setTitle(getTitleAreaTitle());
-		setMessage(""); //$NON-NLS-1$
-		setModeLabelState();
-	
-		// Build the launch configuration edit area and put it into the composite.
-		Composite editAreaComp = createLaunchConfigurationEditArea(topComp);
-		setEditArea(editAreaComp);
-		gd = new GridData(GridData.FILL_BOTH);
-		editAreaComp.setLayoutData(gd);
-		editAreaComp.setFont(dialogComp.getFont());
-			
-		// Build the separator line that demarcates the button bar
-		Label separator = new Label(topComp, SWT.HORIZONTAL | SWT.SEPARATOR);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 1;
-		separator.setLayoutData(gd);
-		
-		dialogComp.layout(true);
-		applyDialogFont(dialogComp);
-	}
-	
-	protected String getTitleAreaTitle() {
-		return LaunchConfigurationsMessages.LaunchConfigurationPropertiesDialog_Edit_launch_configuration_properties_1; //$NON-NLS-1$
-	}
-			
-	protected void createButtonsForButtonBar(Composite parent) {
-		// create OK and Cancel buttons by default
-		createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
-		createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
-	}
-					
-	protected String getShellTitle() {
-		return MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationPropertiesDialog_Properties_for__0__2, new String[]{getLaunchConfiguration().getName()}); //$NON-NLS-1$
-	}
-	
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.LAUNCH_CONFIGURATION_PROPERTIES_DIALOG;
-	}
-		  	
-  	protected void resize() {
-  		// determine the maximum tab dimensions
-  		PixelConverter pixelConverter = new PixelConverter(getEditArea());
-  		int runningTabWidth = 0;
-  		ILaunchConfigurationTabGroup group = getTabGroup();
-  		if (group == null) {
-  			return;
-  		}
-  		ILaunchConfigurationTab[] tabs = group.getTabs();
-  		Point contentSize = new Point(0, 0);
-  		for (int i = 0; i < tabs.length; i++) {
-  			String name = tabs[i].getName();
-  			Image image = tabs[i].getImage();
-  			runningTabWidth += pixelConverter.convertWidthInCharsToPixels(name.length() + 5);
-  			if (image != null) {
-  				runningTabWidth += image.getBounds().width;
-  			}
-  			Control control = tabs[i].getControl();
-  			if (control != null) {
-  				Point size = control.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
-  				if (size.x > contentSize.x) {
-  					contentSize.x = size.x;
-  				}
-  				if (size.y > contentSize.y) {
-  					contentSize.y = size.y;
-  				}
-  			}
-  		}
-
-  		// Determine if more space is needed to show all tab labels across the top of the
-  		// tab folder.  If so, only increase size of dialog to some percent of the available
-  		// screen real estate.
-  		if (runningTabWidth > contentSize.x) {
-  			int maxAllowedWidth = (int) (getDisplay().getBounds().width * MAX_DIALOG_WIDTH_PERCENT);
-  			if (runningTabWidth > maxAllowedWidth) {
-  				contentSize.x = maxAllowedWidth;
-  			} else {
-  				contentSize.x = runningTabWidth;
-  			}
-  		}
-
-  		// Adjust the maximum tab dimensions to account for the extra space required for the tab labels
-  		Rectangle tabFolderBoundingBox = getEditArea().computeTrim(0, 0, contentSize.x, contentSize.y);
-  		contentSize.x = tabFolderBoundingBox.width;
-  		contentSize.y = tabFolderBoundingBox.height;
-
-  		// Force recalculation of sizes
-  		getEditArea().layout(true);
-
-  		// Calculate difference between required space for tab folder and current size,
-  		// then increase size of this dialog's Shell by that amount
-  		Rectangle rect = getEditArea().getClientArea();
-  		Point containerSize= new Point(rect.width, rect.height);
-  		int hdiff= contentSize.x - containerSize.x;
-  		int vdiff= contentSize.y - containerSize.y;
-  		// Only increase size of dialog, never shrink it
-  		if (hdiff > 0 || vdiff > 0) {
-  			hdiff= Math.max(0, hdiff);
-  			vdiff= Math.max(0, vdiff);
-  			Shell shell= getShell();
-  			Point shellSize= shell.getSize();
-  			setShellSize(shellSize.x + hdiff, shellSize.y + vdiff);
-  		}  		
-  	}
-  	 	 	 	 	
-	/**
-	 * @see ILaunchConfigurationDialog#updateButtons()
-	 */
-	public void updateButtons() {
-		// apply/revert buttons
-		getTabViewer().refresh();
-		getButton(IDialogConstants.OK_ID).setEnabled(getTabViewer().canSave());
-		
-	}
-		
-	/**
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		getTabViewer().handleApplyPressed();
-		super.okPressed();
-	}
-
-	/**
-	 * @see org.eclipse.jface.window.Window#open()
-	 */
-	public int open() {
-		setOpenMode(-1);
-		return super.open();
-	}
-
-	/**
-	 * Returns the name of the section that this dialog stores its settings in
-	 *
-	 * @return String
-	 */
-	protected String getDialogSettingsSectionName() {
-		return IDebugUIConstants.PLUGIN_ID + ".LAUNCH_CONFIGURATION_PROPERTIES_DIALOG_SECTION"; //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationAdded(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationAdded(ILaunchConfiguration configuration) {
-		ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager();
-		if (getLaunchConfiguration().equals(manager.getMovedFrom(configuration))) {
-			// this config was re-named, update the dialog with the new config
-			setLaunchConfiguration(configuration);
-			getTabViewer().setInput(getLaunchConfiguration());
-		}
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationChanged(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationChanged(ILaunchConfiguration configuration) {
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationRemoved(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationRemoved(ILaunchConfiguration configuration) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupExtension.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupExtension.java
deleted file mode 100644
index cbb5635..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupExtension.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
- 
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.debug.ui.ILaunchConfigurationTabGroup;
-
-
-/**
- * Proxy to a launch configuration tab group element
- */
-public class LaunchConfigurationTabGroupExtension {
-	
-	/**
-	 * The configuration element defining this tab group.
-	 */
-	private IConfigurationElement fConfig;
-	
-	/**
-	 * Modes this tab group is applicable to or, <code>null</code> if
-	 * default.
-	 */
-	private Set fModes;
-	
-	/**
-	 * Perspectives for each mode
-	 */
-	private Map fPerspectives;
-		
-	/**
-	 * Constructs a launch configuration tab extension based
-	 * on the given configuration element
-	 * 
-	 * @param element the configuration element defining the
-	 *  attribtues of this launch configuration tab extension
-	 * @return a new launch configuration tab extension
-	 */
-	public LaunchConfigurationTabGroupExtension(IConfigurationElement element) {
-		setConfigurationElement(element);
-	}
-	
-	/**
-	 * Sets the configuration element that defines the attributes
-	 * for this launch configuration tab group extension.
-	 * 
-	 * @param element configuration element
-	 */
-	private void setConfigurationElement(IConfigurationElement element) {
-		fConfig = element;
-	}
-	
-	/**
-	 * Returns the configuration element that defines the attributes
-	 * for this launch configuration tab group extension.
-	 * 
-	 * @param configuration element that defines the attributes
-	 *  for this launch configuration tab extension
-	 */
-	protected IConfigurationElement getConfigurationElement() {
-		return fConfig;
-	}
-	
-	/**
-	 * Returns the set of modes specified in the configuration data, or <code>null</code>
-	 * if none (i.e. default tab group)
-	 * 
-	 * @return the set of modes specified in the configuration data, or
-	 *  <code>null</code>
-	 */
-	protected Set getModes() {
-		if (fModes == null) {
-			IConfigurationElement[] modes= getConfigurationElement().getChildren("launchMode"); //$NON-NLS-1$
-			if (modes.length > 0) {
-				fModes = new HashSet(modes.length);
-				fPerspectives = new Hashtable(modes.length);
-				for (int i = 0; i < modes.length; i++) {
-					IConfigurationElement element = modes[i];
-					String mode = element.getAttribute("mode"); //$NON-NLS-1$
-					fModes.add(mode);
-					String perspective = element.getAttribute("perspective"); //$NON-NLS-1$
-					if (perspective != null) {
-						fPerspectives.put(mode, perspective);
-					}
-				}
-			}
-		}
-		return fModes;
-	}
-	
-	/**
-	 * Returns the perspective associated with the given launch
-	 * mode, as specified in plug-in XML, or <code>null</code> if none.
-	 * 
-	 * @param mode launch mode
-	 * @return perspective identifier, or <code>null</code>
-	 */
-	protected String getPerspective(String mode) {
-		// ensure modes are initialized
-		getModes();
-		String id = null;
-		if (fPerspectives != null) {
-			id = (String)fPerspectives.get(mode);
-		}
-		return id;
-	}
-	
-	/**
-	 * Returns the identifier of the type of launch configuration this
-	 * tab group is associated with
-	 * 
-	 * @return the identifier of the type of launch configuration this
-	 *  tab group is associated with
-	 */	
-	protected String getTypeIdentifier() {
-		return getConfigurationElement().getAttribute("type"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns the identifier of the help context associated with this tab
-	 * group, or <code>null</code> if one was not specified.
-	 * 
-	 * @return the identifier of this tab group's help context or
-	 * <code>null</code>
-	 * @since 2.1
-	 */	
-	protected String getHelpContextId() {
-		return getConfigurationElement().getAttribute("helpContextId"); //$NON-NLS-1$		
-	}
-	
-	/**
-	 * Returns a new tab group defined by this extension
-	 * 
-	 * @return a new tab group defined by this extension
-	 * @exception CoreException if an exception occurs instantiating
-	 * 	the tab group
-	 */
-	public ILaunchConfigurationTabGroup newTabGroup() throws CoreException {
-		return (ILaunchConfigurationTabGroup)getConfigurationElement().createExecutableExtension("class"); //$NON-NLS-1$
-	}
-
-	/**
-	 * Returns this tab group's description in the given mode.
-	 *
-	 * @param mode the mode
-	 * @return a description of the Launch Mode if available. If not available, attempts to return
-	 * a description of the Launch Configuration. If no appropriate description is found an empty string is returned.
-	 */
-	public String getDescription(String mode) {
-		String description = null;
-		
-		IConfigurationElement[] children = fConfig.getChildren("launchMode"); //$NON-NLS-1$
-		if (children!= null && children.length != 0) {
-			for (int i=0; i<children.length; i++) {
-				IConfigurationElement child = children[i];
-				if (child.getAttribute("mode").equals(mode)) { //$NON-NLS-1$
-					description = child.getAttribute("description"); //$NON-NLS-1$
-				}
-			}
-		} 
-		if (description == null){
-			description = fConfig.getAttribute("description"); //$NON-NLS-1$
-		}
-		
-		if (description == null)
-			description = ""; //$NON-NLS-1$
-		
-		return description;
-	}
-	
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupViewer.java
deleted file mode 100644
index cdd2e20..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabGroupViewer.java
+++ /dev/null
@@ -1,1295 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.debug.ui.ILaunchConfigurationDialog;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.debug.ui.ILaunchConfigurationTabGroup;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-import org.eclipse.swt.widgets.Text;
-
-/**
- * A viewer that displays tabs for a launch configuration, with apply and revert
- * buttons.
- */
-public class LaunchConfigurationTabGroupViewer extends Viewer {
-	
-	/**
-	 * Containing launch dialog
-	 */
-	private ILaunchConfigurationDialog fDialog;
-	
-	/**
-	 * The this viewer's input
-	 */
-	private Object fInput;
-	
-	/**
-	 * The launch configuration (original) being edited
-	 */
-	private ILaunchConfiguration fOriginal;
-	
-	/**
-	 * The working copy of the original
-	 */
-	private ILaunchConfigurationWorkingCopy fWorkingCopy;
-	
-	/**
-	 * This view's control, which contains a composite area of controls
-	 */
-	private Composite fViewerControl;
-	
-	/**
-	 * The composite which is hidden/displayed as tabs are required.
-	 */
-	private Composite fVisibleArea;
-	
-	/**
-	 * Name label widget
-	 */
-	private Label fNameLabel;
-	
-	/**
-	 * Name text widget
-	 */
-	private Text fNameWidget;
-	
-	/**
-	 * Composite containing the launch config tab widgets
-	 */
-	private Composite fTabComposite;
-	
-	/**
-	 * Tab folder
-	 */
-	private TabFolder fTabFolder;
-	
-	/**
-	 * The current tab group being displayed
-	 */
-	private ILaunchConfigurationTabGroup fTabGroup;
-
-	/**
-	 * The type of config tabs are currently displayed
-	 * for
-	 */
-	private ILaunchConfigurationType fTabType;	
-	
-	/**
-	 * Index of the active tab
-	 */
-	private int fCurrentTabIndex = -1;
-	
-	/**
-	 * Apply & Revert buttons
-	 */
-	private Button fApplyButton;
-	private Button fRevertButton;
-	
-	/**
-	 * Whether tabs are currently being disposed or initialized
-	 */
-	private boolean fDisposingTabs = false;
-	private boolean fInitializingTabs = false;
-
-	/**
-	 * Controls when the redraw flag is set on the visible area
-	 */
-	private boolean fRedraw = true;
-
-	/**
-	 * The description of the currently selected launch configuration or
-	 * launch configuration type or <code>null</code> if none.
-	 */
-	private String fDescription = null;
-
-	/**
-	 * Constructs a viewer in the given composite, contained by the given
-	 * launch configuration dialog.
-	 * 
-	 * @param parent composite containing this viewer
-	 * @param dialog containing launch configuration dialog
-	 */
-	public LaunchConfigurationTabGroupViewer(Composite parent, ILaunchConfigurationDialog dialog) {
-		super();
-		fDialog = dialog;
-		createControl(parent);
-	}
-	
-	/**
-	 * Cleanup
-	 */
-	public void dispose() {
-		disposeTabGroup();
-	}
-
-	/**
-	 * Dispose the active tab group, if any.
-	 */
-	protected void disposeTabGroup() {
-		if (getTabGroup() != null) {
-			getTabGroup().dispose();
-			setTabGroup(null);
-			setTabType(null);
-		}
-	}	
-	
-	/**
-	 * Creates this viewer's control This area displays the name of the launch
-	 * configuration currently being edited, as well as a tab folder of tabs
-	 * that are applicable to the launch configuration.
-	 *
-	 * @return the composite used for launch configuration editing
-	 */
-	private void createControl(Composite parent) {
-		Font font = parent.getFont();
-		fViewerControl = new Composite(parent, SWT.NONE);
-		GridLayout outerCompLayout = new GridLayout();
-		outerCompLayout.numColumns = 1;
-		outerCompLayout.marginHeight = 0;
-		outerCompLayout.marginWidth = 0;
-		fViewerControl.setLayout(outerCompLayout);
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		fViewerControl.setLayoutData(gd);
-		
-		Composite container = new Composite(fViewerControl, SWT.NONE);
-		outerCompLayout = new GridLayout();
-		outerCompLayout.numColumns = 2;
-		outerCompLayout.marginHeight = 0;
-		outerCompLayout.marginWidth = 5;
-		container.setLayout(outerCompLayout);
-		gd = new GridData(GridData.FILL_BOTH);
-		container.setLayoutData(gd);
-		setVisibleArea(container);
-
-		fNameLabel = new Label(container, SWT.HORIZONTAL | SWT.LEFT);
-		fNameLabel.setText(LaunchConfigurationsMessages.LaunchConfigurationDialog__Name__16); //$NON-NLS-1$
-		gd = new GridData(GridData.BEGINNING);
-		fNameLabel.setLayoutData(gd);
-		fNameLabel.setFont(font);
-		
-		Text nameText = new Text(container, SWT.SINGLE | SWT.BORDER);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		nameText.setLayoutData(gd);
-		nameText.setFont(font);
-		setNameWidget(nameText);
-
-		getNameWidget().addModifyListener(
-			new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					handleNameModified();
-				}
-			}
-		);
-
-		Label spacer = new Label(container, SWT.NONE);
-		gd = new GridData();
-		gd.horizontalSpan = 2;
-		spacer.setLayoutData(gd);
-
-		fTabComposite = new Composite(container, SWT.NONE);
-		GridLayout outerTabCompositeLayout = new GridLayout();
-		outerTabCompositeLayout.marginHeight = 0;
-		outerTabCompositeLayout.marginWidth = 0;
-		fTabComposite.setLayout(outerTabCompositeLayout);
-		gd = new GridData(GridData.FILL_BOTH);
-		gd.horizontalSpan = 2;
-		fTabComposite.setLayoutData(gd);
-
-		createTabFolder(fTabComposite);
-
-		Composite buttonComp = new Composite(container, SWT.NONE);
-		GridLayout buttonCompLayout = new GridLayout();
-		buttonCompLayout.numColumns = 2;
-		buttonComp.setLayout(buttonCompLayout);
-		gd = new GridData(GridData.HORIZONTAL_ALIGN_END);
-		gd.horizontalSpan = 2;
-		buttonComp.setLayoutData(gd);
-
-		setApplyButton(new Button(buttonComp, SWT.PUSH));
-		getApplyButton().setText(LaunchConfigurationsMessages.LaunchConfigurationDialog__Apply_17); //$NON-NLS-1$
-		gd = new GridData(GridData.HORIZONTAL_ALIGN_END);
-		getApplyButton().setLayoutData(gd);
-		getApplyButton().setFont(font);
-		SWTUtil.setButtonDimensionHint(getApplyButton());
-		getApplyButton().addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent evt) {
-				handleApplyPressed();
-			}
-		});
-
-		setRevertButton(new Button(buttonComp, SWT.PUSH));
-		getRevertButton().setText(LaunchConfigurationsMessages.LaunchConfigurationDialog_Revert_2);   //$NON-NLS-1$
-		gd = new GridData(GridData.HORIZONTAL_ALIGN_END);
-		getRevertButton().setLayoutData(gd);
-		getRevertButton().setFont(font);
-		SWTUtil.setButtonDimensionHint(getRevertButton());
-		getRevertButton().addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent evt) {
-				handleRevertPressed();
-			}
-		});
-
-	}
-	
-	private void createTabFolder(Composite parent) {
-		Point size = null;
-		if (fTabFolder != null) {
-			size = fTabFolder.getSize();
-			fTabFolder.dispose();
-		}
-		fTabFolder = new TabFolder(parent, SWT.NONE);
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		fTabFolder.setLayoutData(gd);
-		fTabFolder.setFont(parent.getFont());
-		if (size != null) {
-			fTabFolder.setSize(size);
-		}
-		getTabFolder().addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				if (!isInitializingTabs()) {
-					handleTabSelected();
-				}
-			}
-		});		
-	}
-	
-	/**
-	 * Sets the apply button
-	 */
-	private void setApplyButton(Button button) {
-		fApplyButton = button;
-	}
-	
-	/**
-	 * Returns the apply button
-	 */
-	protected Button getApplyButton() {
-		return fApplyButton;
-	}	
-	
-	/**
-	 * Sets the revert button
-	 */
-	private void setRevertButton(Button button) {
-		fRevertButton = button;
-	}	
-	
-	/**
-	 * Returns the revert button
-	 */
-	protected Button getRevertButton() {
-		return fRevertButton;
-	}	
-	
-	/**
-	 * Sets the tab folder
-	 */
-	protected TabFolder getTabFolder() {
-		return fTabFolder;
-	}
-		
-	/**
-	 * Returns the name widget
-	 */
-	private Text getNameWidget() {
-		return fNameWidget;
-	}
-	
-	/**
-	 * Sets the name widget
-	 */
-	private void setNameWidget(Text nameText) {
-		fNameWidget = nameText;
-	}
-	
-	/**
-	 * Sets the current name
-	 */
-	public void setName(String name) {
-		if (getWorkingCopy() != null) {
-			if (name == null) {
-				name = ""; //$NON-NLS-1$
-			}
-			getNameWidget().setText(name.trim());
-			refreshStatus();
-		}
-	}	
-
-	/**
-	 * @see org.eclipse.jface.viewers.Viewer#getControl()
-	 */
-	public Control getControl() {
-		return fViewerControl;
-	}
-	
-	/**
-	 * Returns the shell this viewer is contained in.
-	 */
-	protected Shell getShell() {
-		return getControl().getShell();
-	}
-
-	/**
-	 * @see org.eclipse.jface.viewers.IInputProvider#getInput()
-	 */
-	public Object getInput() {
-		return fInput;
-	}
-
-	/**
-	 * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection()
-	 */
-	public ISelection getSelection() {
-		if (getActiveTab() == null) {
-			return new StructuredSelection();
-		} 
-		return new StructuredSelection(getActiveTab());
-	}
-
-	/**
-	 * @see org.eclipse.jface.viewers.Viewer#refresh()
-	 */
-	public void refresh() {
-		if (isInitializingTabs()) {
-			return;
-		}
-		
-		ILaunchConfigurationTab[] tabs = getTabs();
-		if (!isInitializingTabs() && tabs != null) {
-			// update the working copy from the active tab
-			getActiveTab().performApply(getWorkingCopy());
-			updateButtons();
-			// update error ticks
-			TabFolder folder = getTabFolder();
-			for (int i = 0; i < tabs.length; i++) {
-				ILaunchConfigurationTab tab = tabs[i];
-				tab.isValid(getWorkingCopy());
-				boolean error = tab.getErrorMessage() != null;
-				TabItem item = folder.getItem(i);
-				setTabIcon(item, error, tab);
-			}		
-		}
-	}
-
-	private void updateButtons() {
-		boolean dirty = isDirty();
-		getApplyButton().setEnabled(dirty && canSave());
-		getRevertButton().setEnabled(dirty);
-	}
-	
-	/**
-	 * Set the specified tab item's icon to an error icon if <code>error</code> is true,
-	 * or a transparent icon of the same size otherwise.
-	 */
-	private void setTabIcon(TabItem tabItem, boolean error, ILaunchConfigurationTab tab) {
-		Image image = null;
-		if (error) {
-			image = DebugUIPlugin.getDefault().getLaunchConfigurationManager().getErrorTabImage(tab);
-		} else {
-			image = tab.getImage();
-		}
-		tabItem.setImage(image);
-	}	
-
-	/**
-	 * @see org.eclipse.jface.viewers.Viewer#setInput(java.lang.Object)
-	 */
-	public void setInput(Object input) {
-		if (input == null) {
-			if (fInput == null) {
-				return;
-			}
-			inputChanged(input);
-		} else {
-			if (!input.equals(fInput)) {
-				inputChanged(input);
-			}
-		}
-	}
-	
-	/**
-	 * The input has changed to the given object, possibly <code>null</code>.
-	 * 
-	 * @param input the new input, possibly <code>null</code>
-	 */
-	protected void inputChanged(Object input) {
-		fInput = input;
-		Runnable r = new Runnable() {
-			public void run() {
-				try {
-					if (fInput instanceof ILaunchConfiguration) {
-						ILaunchConfiguration configuration = (ILaunchConfiguration)fInput;
-						setOriginal(configuration);
-						setWorkingCopy(configuration.getWorkingCopy());
-						displayInstanceTabs();
-					} else if (fInput instanceof ILaunchConfigurationType) {
-						ILaunchConfiguration configuration = LaunchConfigurationManager.getSharedTypeConfig((ILaunchConfigurationType)fInput);
-						setOriginal(configuration);
-						setWorkingCopy(configuration.getWorkingCopy());
-						displaySharedTabs();
-					} else {
-						setNoInput();
-					}
-					setRedraw(true);
-				} catch (CoreException ce) {
-					errorDialog(ce);
-					setNoInput();
-					setRedraw(true);
-				}
-			}
-		};
-		BusyIndicator.showWhile(getShell().getDisplay(), r);
-	}
-	
-	private void setNoInput() {
-		setOriginal(null);
-		setWorkingCopy(null);
-		getVisibleArea().setVisible(false);
-		disposeExistingTabs();				
-	}
-	
-    protected void setFocusOnName() {
-        fNameWidget.setFocus();
-        
-    }
-    
-	private void setRedraw(boolean b) {
-		if (fRedraw != b) {
-			fRedraw = b;
-			getVisibleArea().setRedraw(fRedraw);
-		}	
-	}	
-	/**
-	 * Displays tabs for the current working copy
-	 */
-	protected void displayInstanceTabs() {
-		// Turn on initializing flag to ignore message updates
-		setInitializingTabs(true);
-
-		ILaunchConfigurationType type = null;
-		try {
-			type = getWorkingCopy().getType();
-			showInstanceTabsFor(type);
-		} catch (CoreException e) {
-			errorDialog(e);
-			setInitializingTabs(false);
-			return;
-		}
-
-		// show the name area
-		fNameLabel.setVisible(true);
-		fNameWidget.setVisible(true);
-		// Update the name field before to avoid verify error
-		getNameWidget().setText(getWorkingCopy().getName());
-
-		// Retrieve the current tab group.  If there is none, clean up and leave
-		ILaunchConfigurationTabGroup tabGroup = getTabGroup();
-		if (tabGroup == null) {
-			IStatus status = new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), 0, MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationTabGroupViewer_No_tabs_defined_for_launch_configuration_type__0__1, new String[]{type.getName()}), null); //$NON-NLS-1$
-			CoreException e = new CoreException(status);
-			errorDialog(e);
-			setInitializingTabs(false);
-			return;
-		}
-
-		// Update the tabs with the new working copy
-		tabGroup.initializeFrom(getWorkingCopy());
-
-		// Update the name field after in case client changed it
-		getNameWidget().setText(getWorkingCopy().getName());
-		
-		fCurrentTabIndex = getTabFolder().getSelectionIndex();
-
-		// Turn off initializing flag to update message
-		setInitializingTabs(false);
-		
-		if (!getVisibleArea().isVisible()) {
-			getVisibleArea().setVisible(true);
-		}
-		
-		refreshStatus();		
-	}
-	
-	/**
-	 * Displays tabs for the current config type
-	 */
-	protected void displaySharedTabs() {
-		// Turn on initializing flag to ignore message updates
-		setInitializingTabs(true);
-
-		ILaunchConfigurationType type = null;
-		try {
-			type = getWorkingCopy().getType();
-			showSharedTabsFor(type);
-		} catch (CoreException e) {
-			errorDialog(e);
-			setInitializingTabs(false);
-			return;
-		}
-
-		// hide the name area
-		fNameLabel.setVisible(false);
-		fNameWidget.setVisible(false);
-		// Update the name field before to avoid verify error
-		getNameWidget().setText(getWorkingCopy().getName());
-
-		// Retrieve the current tab group.  If there is none, clean up and leave
-		ILaunchConfigurationTabGroup tabGroup = getTabGroup();
-		if (tabGroup == null) {
-			IStatus status = new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), 0, MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationTabGroupViewer_No_tabs_defined_for_launch_configuration_type__0__1, new String[]{type.getName()}), null); //$NON-NLS-1$
-			CoreException e = new CoreException(status);
-			errorDialog(e);
-			setInitializingTabs(false);
-			return;
-		}
-
-		// Update the tabs with the new working copy
-		tabGroup.initializeFrom(getWorkingCopy());
-
-		// Update the name field after in case client changed it
-		getNameWidget().setText(getWorkingCopy().getName());
-		
-		fCurrentTabIndex = getTabFolder().getSelectionIndex();
-
-		// Turn off initializing flag to update message
-		setInitializingTabs(false);
-		
-		if (!getVisibleArea().isVisible()) {
-			getVisibleArea().setVisible(true);
-		}
-		
-		fDescription = getDescription(null);
-		
-		refreshStatus();		
-	}	
-	
-	/**
-	 * Populate the tabs in the configuration edit area to be appropriate to the current
-	 * launch configuration type.
-	 */
-	private void showInstanceTabsFor(ILaunchConfigurationType configType) {
-
-		// Don't do any work if the current tabs are for the current config type
-		if (getTabType() != null && getTabType().equals(configType) && !(getTabGroup() instanceof PerspectiveTabGroup)) {
-			return;
-		}
-		
-		// try to keep on same tab
-		Class tabKind = null;
-		if (getActiveTab() != null) {
-			tabKind = getActiveTab().getClass();
-		}
-		
-		// Build the new tabs
-		ILaunchConfigurationTabGroup group = null;
-		try {
-			group = createGroup(configType);
-		} catch (CoreException ce) {
-			DebugUIPlugin.errorDialog(getShell(), LaunchConfigurationsMessages.LaunchConfigurationDialog_Error_19, LaunchConfigurationsMessages.LaunchConfigurationDialog_Exception_occurred_creating_launch_configuration_tabs_27,ce); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-
-		showTabsFor(group);
-		setTabGroup(group);
-		setTabType(configType);
-		
-		// select same tab as before, if possible
-		ILaunchConfigurationTab[] tabs = getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			ILaunchConfigurationTab tab = tabs[i];
-			if (tab.getClass().equals(tabKind)) {
-				setActiveTab(tab);
-				break;
-			}
-		}
-		
-		fDescription = getDescription(configType);
-	}	
-
-	/**
-	 * Returns the description of the given configuration type
-	 * in the current mode or <code>null</code> if none.
-	 * 
-	 * @param configType the config type
-	 * @return the description of the given configuration type or <code>null</code>
-	 */
-	private String getDescription(ILaunchConfigurationType configType) {
-		String description = null;
-		if(configType != null) {
-			String mode = fDialog.getMode();
-			description = LaunchConfigurationPresentationManager.getDefault().getDescription(configType, mode);
-		}	
-		if (description == null)
-			description = ""; //$NON-NLS-1$
-		return description;
-	}
-	
-	/**
-	 * Populate the tabs in the configuration edit area for the shared info
-	 * for the given launch config type.
-	 */
-	private void showSharedTabsFor(ILaunchConfigurationType configType) {
-
-		// Don't do any work if the current tabs are for the current config type
-		if (getTabType() != null && getTabType().equals(configType) && (getTabGroup() instanceof PerspectiveTabGroup)) {
-			return;
-		}		
-		
-		// Build the new tabs
-		ILaunchConfigurationTabGroup group = new PerspectiveTabGroup(configType);
-		group.createTabs(getLaunchConfigurationDialog(), getLaunchConfigurationDialog().getMode());
-		ILaunchConfigurationTab[] tabs = group.getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			tabs[i].setLaunchConfigurationDialog(getLaunchConfigurationDialog());
-		}
-				
-		showTabsFor(group);
-		setTabType(configType);
-		setTabGroup(group);		
-	}		
-
-	/**
-	 * Create the tabs in the configuration edit area for the given tab group.
-	 */
-	private void showTabsFor(ILaunchConfigurationTabGroup tabGroup) {
-		// turn off redraw
-		setRedraw(false);
-		// Dispose the current tabs
-		disposeExistingTabs();
-
-		setTabGroup(tabGroup);
-
-		// Create the Control for each tab
-		ILaunchConfigurationTab[] tabs = tabGroup.getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			TabItem tab = new TabItem(getTabFolder(), SWT.NONE);
-			String name = tabs[i].getName();
-			if (name == null) {
-				name = LaunchConfigurationsMessages.LaunchConfigurationDialog_unspecified_28; //$NON-NLS-1$
-			}
-			tab.setText(name);
-			Image image = tabs[i].getImage();
-			tab.setImage(image);
-			tabs[i].createControl(tab.getParent());
-			Control control = tabs[i].getControl();
-			if (control != null) {
-				tab.setControl(control);
-			}
-		}
-
-	}	
-	
-	/**
-	 * Returns tab group for the given type of launch configuration.
-	 * Tabs are initialized to be contained in this dialog.
-	 *
-	 * @exception CoreException if unable to instantiate a tab group
-	 */
-	protected ILaunchConfigurationTabGroup createGroup(final ILaunchConfigurationType configType) throws CoreException {
-		// Use a final Object array to store the tab group and any exception that
-		// results from the Runnable
-		final Object[] finalArray = new Object[2];
-		Runnable runnable = new Runnable() {
-			public void run() {
-				ILaunchConfigurationTabGroup tabGroup = null;
-				try {
-					tabGroup = LaunchConfigurationPresentationManager.getDefault().getTabGroup(configType, getLaunchConfigurationDialog().getMode());
-					finalArray[0] = tabGroup;
-				} catch (CoreException ce) {
-					finalArray[1] = ce;
-					return;
-				}
-				tabGroup.createTabs(getLaunchConfigurationDialog(), getLaunchConfigurationDialog().getMode());
-				ILaunchConfigurationTab[] tabs = tabGroup.getTabs();
-				for (int i = 0; i < tabs.length; i++) {
-					tabs[i].setLaunchConfigurationDialog(getLaunchConfigurationDialog());
-				}
-			}
-		};
-
-		// Creating the tabs can result in plugin loading, so we show the busy cursor
-		BusyIndicator.showWhile(getControl().getDisplay(), runnable);
-
-		// Re-throw any CoreException if there was one
-		if (finalArray[1] != null) {
-			throw (CoreException)finalArray[1];
-		}
-
-		// Otherwise return the tab group
-		return (ILaunchConfigurationTabGroup)finalArray[0];
-	}	
-
-	/**
-	 * @see org.eclipse.jface.viewers.Viewer#setSelection(org.eclipse.jface.viewers.ISelection, boolean)
-	 */
-	public void setSelection(ISelection selection, boolean reveal) {
-		if (getWorkingCopy() != null) {
-			if (selection instanceof IStructuredSelection) {
-				IStructuredSelection structuredSelection = (IStructuredSelection)selection;
-				Object object = structuredSelection.getFirstElement();
-				if (object instanceof ILaunchConfigurationTab) {
-					ILaunchConfigurationTab[] tabs = getTabs();
-					for (int i = 0; i < tabs.length; i++) {
-						ILaunchConfigurationTab tab = tabs[i];
-						if (tab.equals(object)) {
-							fCurrentTabIndex = i;
-							getTabFolder().setSelection(i);
-						}
-						return;
-					}
-				}
-			}
-		}
-			
-	}
-
-	/**
-	 * Returns the tabs currently being displayed, or
-	 * <code>null</code> if none.
-	 *
-	 * @return currently displayed tabs, or <code>null</code>
-	 */
-	public ILaunchConfigurationTab[] getTabs() {
-		if (getTabGroup() != null) {
-			return getTabGroup().getTabs();
-		}
-		return null;
-	}
-
-	/**
-	 * Returns the currently active <code>ILaunchConfigurationTab</code>
-	 * being displayed, or <code>null</code> if there is none.
-	 *
-	 * @return currently active <code>ILaunchConfigurationTab</code>, or <code>null</code>.
-	 */
-	public ILaunchConfigurationTab getActiveTab() {
-		TabFolder folder = getTabFolder();
-		ILaunchConfigurationTab[] tabs = getTabs();
-		if (folder != null && tabs != null) {
-			int pageIndex = folder.getSelectionIndex();
-			if (pageIndex >= 0) {
-				return tabs[pageIndex];
-			}
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns whether the launch configuration being edited is dirty (i.e.
-	 * needs saving)
-	 * 
-	 * @return whether the launch configuration being edited needs saving
-	 */
-	public boolean isDirty() {
-		ILaunchConfigurationWorkingCopy workingCopy = getWorkingCopy();
-		if (workingCopy == null) {
-			return false;
-		}
-
-		// Working copy hasn't been saved
-		if (workingCopy.getOriginal() == null) {
-			return true;
-		}
-
-		ILaunchConfiguration original = getOriginal();
-		return !original.contentsEqual(workingCopy);
-	}
-	
-	/**
-	 * Update apply & revert buttons, as well as buttons and message on the
-	 * launch config dialog.
-	 */
-	protected void refreshStatus() {
-		if (!isInitializingTabs()) {
-			getLaunchConfigurationDialog().updateButtons();
-			getLaunchConfigurationDialog().updateMessage();
-		}
-	}	
-	
-	/**
-	 * Returns the containing launch dialog
-	 */
-	protected ILaunchConfigurationDialog getLaunchConfigurationDialog() {
-		return fDialog;
-	}
-	
-	/**
-	 * Sets the launch configuration being displayed/edited, possilby
-	 * <code>null</code>.
-	 */
-	private void setOriginal(ILaunchConfiguration configuration) {
-		fOriginal = configuration;
-	}
-	
-	/**
-	 * Returns the original launch configuration being edited, possibly
-	 * <code>null</code>.
-	 * 
-	 * @return ILaunchConfiguration
-	 */
-	protected ILaunchConfiguration getOriginal() {
-		return fOriginal;
-	}
-	
-	/**
-	 * Sets the working copy used to edit the original.
-	 */
-	private void setWorkingCopy(ILaunchConfigurationWorkingCopy workingCopy) {
-		fWorkingCopy = workingCopy;
-	}
-	
-	/**
-	 * Returns the working copy used to edit the original, possibly
-	 * <code>null</code>.
- 	 */
-	protected ILaunchConfigurationWorkingCopy getWorkingCopy() {
-		return fWorkingCopy;
-	}
-	
-	/**
-	 * Return whether the current configuration can be saved.
-	 * <p>
-	 * Note this is NOT the same thing as the config simply being valid. It
-	 * is possible to save a config that does not validate. This method
-	 * determines whether the config can be saved without causing a serious
-	 * error. For example, a shared config that has no specified location would
-	 * cause this method to return <code>false</code>.
-	 * </p>
-	 */
-	public boolean canSave() {
-		if (isInitializingTabs()) {
-			return false;
-		}
-		// First make sure that name doesn't prevent saving the config
-		try {
-			verifyName();
-		} catch (CoreException ce) {
-			return false;
-		}
-
-		// Next, make sure none of the tabs object to saving the config
-		ILaunchConfigurationTab[] tabs = getTabs();
-		if (tabs == null) {
-			return false;
-		}
-		for (int i = 0; i < tabs.length; i++) {
-			if (!tabs[i].canSave()) {
-				return false;
-			}
-		}
-		return true;
-	}	
-	
-	/**
-	 * @see ILaunchConfigurationDialog#canLaunch()
-	 */
-	public boolean canLaunch() {
-		if(isInitializingTabs()) {
-			return false;
-		}
-		
-		if (getActiveTab() instanceof PerspectivesTab) {
-			return false;
-		}
-		
-		if (getWorkingCopy() == null) {
-			return false;
-		}
-		try {
-			verifyName();
-		} catch (CoreException e) {
-			return false;
-		}
-
-		ILaunchConfigurationTab[] tabs = getTabs();
-		if (tabs == null) {
-			return false;
-		}
-		for (int i = 0; i < tabs.length; i++) {
-			if (!tabs[i].isValid(getWorkingCopy())) {
-				return false;
-			}
-		}
-		return true;
-	}	
-	
-	/**
-	 * Returns the current error message or <code>null</code> if none.
-	 */
-	public String getErrorMesssage() {
-		if (isInitializingTabs()) {
-			return null;
-		}
-		
-		if (getWorkingCopy() == null) {
-			return null;
-		}
-		try {
-			verifyName();
-		} catch (CoreException ce) {
-			return ce.getStatus().getMessage();
-		}
-	
-		String message = null;
-		ILaunchConfigurationTab activeTab = getActiveTab();
-		if (activeTab == null) {
-			return null;
-		} 
-		message = activeTab.getErrorMessage();
-		if (message != null) {
-			return message;
-		}
-		
-		ILaunchConfigurationTab[] allTabs = getTabs();
-		for (int i = 0; i < allTabs.length; i++) {
-			ILaunchConfigurationTab tab = allTabs[i];
-			if (tab == activeTab) {
-				continue;
-			}
-			message = tab.getErrorMessage();
-			if (message != null) {
-				StringBuffer temp= new StringBuffer();
-				temp.append('[');
-				temp.append(removeAmpersandsFrom(tab.getName()));
-				temp.append("]: "); //$NON-NLS-1$
-				temp.append(message);
-				return temp.toString();
-			}
-		}
-		return null;
-	}
-	
-	/**
-	 * Return a copy of the specified string without ampersands.
-	 */
-	private String removeAmpersandsFrom(String string) {
-		String newString = new String(string);
-		int index = newString.indexOf('&');
-		while (index != -1) {
-			newString = string.substring(0, index) + newString.substring(index + 1, newString.length());
-			index = newString.indexOf('&');
-		}
-		return newString;
-	}	
-	
-	/**
-	 * Returns the current message or <code>null</code> if none.
-	 * @return Returns an appropriate message for display to user. The message returned will be:
-	 * The message defined by the visible tab,
-	 * or The tab group description for the particular launch mode,
-	 * or The generic tab group description,
-	 * or <code>null</code> if no message is defined 
-	 */
-	public String getMessage() {
-		if (isInitializingTabs()) {
-			return null;
-		}
-		
-		String message = fDescription;
-		
-		ILaunchConfigurationTab tab = getActiveTab();
-		if (tab != null) {
-			String tabMessage = tab.getMessage();
-			if (tabMessage != null) {
-				message = tabMessage;
-			}
-		}
-		
-		return message;
-	}	
-		
-	/**
-	 * Verify that the launch configuration name is valid.
-	 */
-	protected void verifyName() throws CoreException {
-		if (fNameWidget.isVisible()) {
-			String currentName = getNameWidget().getText().trim();
-	
-			// If there is no name, complain
-			if (currentName.length() < 1) {
-				throw new CoreException(new Status(IStatus.ERROR,
-													 DebugUIPlugin.getUniqueIdentifier(),
-													 0,
-													 LaunchConfigurationsMessages.LaunchConfigurationDialog_Name_required_for_launch_configuration_11, //$NON-NLS-1$
-													 null));
-			}
-	
-			// See if name contains any 'illegal' characters
-			IStatus status = ResourcesPlugin.getWorkspace().validateName(currentName, IResource.FILE);
-			if (status.getCode() != IStatus.OK) {
-				throw new CoreException(new Status(IStatus.ERROR,
-													 DebugUIPlugin.getUniqueIdentifier(),
-													 0,
-													 status.getMessage(),
-													 null));
-			}
-			
-			// See if name contains any characters that we deem illegal.
-			// '@' and '&' are disallowed because they corrupt menu items.
-			char[] disallowedChars = new char[] { '@', '&' };
-			for (int i = 0; i < disallowedChars.length; i++) {
-				char c = disallowedChars[i];
-				if (currentName.indexOf(c) > -1) {
-					throw new CoreException(new Status(IStatus.ERROR,
-														DebugUIPlugin.getUniqueIdentifier(),
-														0,
-														MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationTabGroupViewer_0, new String[] { new String(new char[] {c}), currentName }), //$NON-NLS-1$
-														null));
-				}
-			}
-	
-			// Otherwise, if there's already a config with the same name, complain
-			if (!getOriginal().getName().equals(currentName)) {
-				if (getLaunchManager().isExistingLaunchConfigurationName(currentName)) {
-					throw new CoreException(new Status(IStatus.ERROR,
-														 DebugUIPlugin.getUniqueIdentifier(),
-														 0,
-														 LaunchConfigurationsMessages.LaunchConfigurationDialog_Launch_configuration_already_exists_with_this_name_12, //$NON-NLS-1$
-														 null));
-				}
-			}
-		}
-	}
-	
-	private void setDisposingTabs(boolean disposing) {
-		fDisposingTabs = disposing;
-	}
-
-	private boolean isDisposingTabs() {
-		return fDisposingTabs;
-	}
-	
-	private void setInitializingTabs(boolean initializing) {
-		fInitializingTabs = initializing;
-	}
-
-	private boolean isInitializingTabs() {
-		return fInitializingTabs;
-	}		
-	
-	private void disposeExistingTabs() {
-		setDisposingTabs(true);
-		TabItem[] oldTabs = getTabFolder().getItems();
-		for (int i = 0; i < oldTabs.length; i++) {
-			oldTabs[i].dispose();
-		}
-		createTabFolder(fTabComposite);
-		disposeTabGroup();
-		setDisposingTabs(false);
-	}	
-	
-	private ILaunchManager getLaunchManager() {
-		return DebugPlugin.getDefault().getLaunchManager();
-	}
-	
-	/**
-	 * Returns the type that tabs are currently displayed
-	 * for, or <code>null</code> if none.
-	 *
-	 * @return launch configuration type or <code>null</code>
-	 */
-	private ILaunchConfigurationType getTabType() {
-		return fTabType;
-	}
-
-	/**
-	 * Sets the type that tabs are currently displayed
-	 * for, or <code>null</code> if none.
-	 *
-	 * @param tabType launch configuration type
-	 */
-	private void setTabType(ILaunchConfigurationType tabType) {
-		fTabType = tabType;
-	}	
-	
-	/**
-	 * Sets the current tab group being displayed
-	 *
-	 * @param group the current tab group being displayed
-	 */
-	private void setTabGroup(ILaunchConfigurationTabGroup group) {
-		fTabGroup = group;
-	}
-
-	/**
-	 * Returns the current tab group
-	 *
-	 * @return the current tab group, or <code>null</code> if none
-	 */
-	public ILaunchConfigurationTabGroup getTabGroup() {
-		return fTabGroup;
-	}
-	
-	/**
-	 * Notification that a tab has been selected
-	 *
-	 * Disallow tab changing when the current tab is invalid.
-	 * Update the config from the tab being left, and refresh
-	 * the tab being entered.
-	 */
-	protected void handleTabSelected() {
-		if (isDisposingTabs() || isInitializingTabs()) {
-			return;
-		}
-		ILaunchConfigurationTab[] tabs = getTabs();
-		if (fCurrentTabIndex == getTabFolder().getSelectionIndex() || tabs == null || tabs.length == 0 || fCurrentTabIndex > (tabs.length - 1)) {
-			return;
-		}
-		if (fCurrentTabIndex != -1) {
-			ILaunchConfigurationTab tab = tabs[fCurrentTabIndex];
-			ILaunchConfigurationWorkingCopy wc = getWorkingCopy();
-			if (wc != null) {
-				tab.deactivated(wc);
-				getActiveTab().activated(wc);
-			}
-		}
-		fCurrentTabIndex = getTabFolder().getSelectionIndex();
-		SelectionChangedEvent event = new SelectionChangedEvent(this, getSelection());
-		fireSelectionChanged(event);
-	}
-	
-	/**
-	 * Notification the name field has been modified
-	 */
-	protected void handleNameModified() {
-		getWorkingCopy().rename(getNameWidget().getText().trim());
-		refreshStatus();
-	}		
-	
-	/**
-	 * Notification that the 'Apply' button has been pressed
-	 */
-	protected void handleApplyPressed() {
-		try {
-			// trim name
-			Text widget = getNameWidget();
-			String name = widget.getText();
-			String trimmed = name.trim();
-
-			// update launch config
-			setInitializingTabs(true);
-			if (!name.equals(trimmed)) {
-				widget.setText(trimmed);
-			}
-			getWorkingCopy().rename(trimmed);
-			getTabGroup().performApply(getWorkingCopy());
-			setInitializingTabs(false);
-			//
-			
-			if (isDirty()) {
-				getWorkingCopy().doSave();
-			}
-			updateButtons();
-		} catch (CoreException e) {
-			DebugUIPlugin.errorDialog(getShell(), LaunchConfigurationsMessages.LaunchConfigurationDialog_Launch_Configuration_Error_46, LaunchConfigurationsMessages.LaunchConfigurationDialog_Exception_occurred_while_saving_launch_configuration_47, e); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-	}
-
-	/**
-	 * Notification that the 'Revert' button has been pressed
-	 */
-	protected void handleRevertPressed() {
-		if (getActiveTab() instanceof PerspectivesTab) {
-			inputChanged(getTabType());	
-		} else {
-			inputChanged(getOriginal());
-		}
-	}	
-	
-	/**
-	 * Show an error dialog on the given exception.
-	 *
-	 * @param exception
-	 */
-	protected void errorDialog(CoreException exception) {
-		ErrorDialog.openError(getShell(), null, null, exception.getStatus());
-	}	
-	
-	protected void setVisibleArea(Composite control) {
-		fVisibleArea = control;
-	}
-	
-	protected Composite getVisibleArea() {
-		return fVisibleArea;
-	}
-	
-	/**
-	 * Sets the displayed tab to the given tab. Has no effect if the specified
-	 * tab is not one of the tabs being displayed in the dialog currently.
-	 * 
-	 * @param tab the tab to display/activate
-	 */
-	public void setActiveTab(ILaunchConfigurationTab tab) {
-		ILaunchConfigurationTab[] tabs = getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			ILaunchConfigurationTab configurationTab = tabs[i];
-			if (configurationTab.equals(tab)) {
-				setActiveTab(i);
-				return;
-			}
-		}
-	}
-	
-	/**
-	 * Sets the displayed tab to the tab with the given index. Has no effect if
-	 * the specified index is not within the limits of the tabs returned by
-	 * <code>getTabs()</code>.
-	 * 
-	 * @param index the index of the tab to dispay
-	 */
-	public void setActiveTab(int index) {
-		ILaunchConfigurationTab[] tabs = getTabs();
-		if (index >= 0 && index < tabs.length) {
-			getTabFolder().setSelection(index);
-			handleTabSelected();
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabImageDescriptor.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabImageDescriptor.java
deleted file mode 100644
index 1cb7e16..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTabImageDescriptor.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-
-/**
- * A JDIImageDescriptor consists of a main icon and several adornments. The adornments
- * are computed according to flags set on creation of the descriptor.
- */
-public class LaunchConfigurationTabImageDescriptor extends CompositeImageDescriptor {
-	
-	/** Flag to render the error adornment */
-	public final static int ERROR= 		0x001;
-
-	private Image fBaseImage;
-	private int fFlags;
-	private Point fSize;
-	
-	/**
-	 * Create a new JDIImageDescriptor.
-	 * 
-	 * @param baseImage an image descriptor used as the base image
-	 * @param flags flags indicating which adornments are to be rendered
-	 * 
-	 */
-	public LaunchConfigurationTabImageDescriptor(Image baseImage, int flags) {
-		setBaseImage(baseImage);
-		setFlags(flags);
-	}
-	
-	/**
-	 * @see CompositeImageDescriptor#getSize()
-	 */
-	protected Point getSize() {
-		if (fSize == null) {
-			ImageData data= getBaseImage().getImageData();
-			setSize(new Point(data.width, data.height));
-		}
-		return fSize;
-	}
-	
-	/**
-	 * @see Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object object) {
-		if (!(object instanceof LaunchConfigurationTabImageDescriptor)){
-			return false;
-		}
-			
-		LaunchConfigurationTabImageDescriptor other= (LaunchConfigurationTabImageDescriptor)object;
-		return (getBaseImage().equals(other.getBaseImage()) && getFlags() == other.getFlags());
-	}
-	
-	/**
-	 * @see Object#hashCode()
-	 */
-	public int hashCode() {
-		return getBaseImage().hashCode() | getFlags();
-	}
-	
-	/**
-	 * @see CompositeImageDescriptor#drawCompositeImage(int, int)
-	 */
-	protected void drawCompositeImage(int width, int height) {
-		ImageData bg= getBaseImage().getImageData();
-		if (bg == null) {
-			bg= DEFAULT_IMAGE_DATA;
-		}
-		drawImage(bg, 0, 0);
-		drawOverlays();
-	}
-
-	/**
-	 * Add any overlays to the image as specified in the flags.
-	 */
-	protected void drawOverlays() {
-		int flags= getFlags();
-		ImageData data= null;
-		if ((flags & ERROR) != 0) {
-			data= DebugUITools.getImage(IDebugUIConstants.IMG_OVR_ERROR).getImageData();
-			drawImage(data, 0, 0);
-		}
-	}
-	
-	protected Image getBaseImage() {
-		return fBaseImage;
-	}
-
-	protected void setBaseImage(Image baseImage) {
-		fBaseImage = baseImage;
-	}
-
-	protected int getFlags() {
-		return fFlags;
-	}
-
-	protected void setFlags(int flags) {
-		fFlags = flags;
-	}
-
-	protected void setSize(Point size) {
-		fSize = size;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTreeContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTreeContentProvider.java
deleted file mode 100644
index fadcead..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTreeContentProvider.java
+++ /dev/null
@@ -1,207 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
- 
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-
-/**
- * Content provider for representing launch configuration types & launch configurations in a tree.
- * 
- * @since 2.1
- */
-public class LaunchConfigurationTreeContentProvider implements ITreeContentProvider {
-
-	/**
-	 * Empty Object array
-	 */
-	private static final Object[] EMPTY_ARRAY = new Object[0];	
-	
-	/**
-	 * The mode in which the tree is being shown, one of <code>RUN_MODE</code> 
-	 * or <code>DEBUG_MODE</code> defined in <code>ILaunchManager</code>.
-	 * If this is <code>null</code>, then it means both modes are being shown.
-	 */
-	private String fMode;
-	
-	/**
-	 * The Shell context
-	 */
-	private Shell fShell;
-	
-	public LaunchConfigurationTreeContentProvider(String mode, Shell shell) {
-		setMode(mode);
-		setShell(shell);
-	}
-
-	/**
-	 * Actual launch configurations have no children.  Launch configuration types have
-	 * all configurations of that type as children, minus any configurations that are 
-	 * marked as private.
-	 * <p>
-	 * In 2.1, the <code>category</code> attribute was added to launch config
-	 * types. The debug UI only displays those configs that do not specify a
-	 * category.
-	 * </p>
-	 * 
-	 * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object parentElement) {
-		if (parentElement instanceof ILaunchConfiguration) {
-			return EMPTY_ARRAY;
-		} else if (parentElement instanceof ILaunchConfigurationType) {
-			try {
-				ILaunchConfigurationType type = (ILaunchConfigurationType)parentElement;
-				return getLaunchManager().getLaunchConfigurations(type);
-			} catch (CoreException e) {
-				DebugUIPlugin.errorDialog(getShell(), LaunchConfigurationsMessages.LaunchConfigurationDialog_Error_19, LaunchConfigurationsMessages.LaunchConfigurationDialog_An_exception_occurred_while_retrieving_launch_configurations_20, e); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		} else {
-			return getLaunchManager().getLaunchConfigurationTypes();
-		}
-		return EMPTY_ARRAY;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object element) {
-		if (element instanceof ILaunchConfiguration) {
-			if (!((ILaunchConfiguration)element).exists()) {
-				return null;
-			}
-			try {
-				return ((ILaunchConfiguration)element).getType();
-			} catch (CoreException e) {
-				DebugUIPlugin.errorDialog(getShell(), LaunchConfigurationsMessages.LaunchConfigurationDialog_Error_19, LaunchConfigurationsMessages.LaunchConfigurationDialog_An_exception_occurred_while_retrieving_launch_configurations_20, e); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		} else if (element instanceof ILaunchConfigurationType) {
-			return ResourcesPlugin.getWorkspace().getRoot();
-		}
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-	 */
-	public boolean hasChildren(Object element) {
-		if (element instanceof ILaunchConfiguration) {
-			return false;
-		} 
-		return getChildren(element).length > 0;
-	}
-
-	/**
-	 * Return only the launch configuration types that support the current mode AND
-	 * are marked as 'public'.
-	 * 
-	 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-	 */
-	public Object[] getElements(Object inputElement) {
-		ILaunchConfigurationType[] allTypes = getLaunchManager().getLaunchConfigurationTypes();
-		return filterTypes(allTypes).toArray();
-	}
-
-	/**
-	 * Returns a list containing the given types minus any types that
-	 * should not be visible. A type should not be visible if it doesn't match
-	 * the current mode or if it matches a disabled activity.
-	 * 
-	 * @param allTypes the types
-	 * @return the given types minus any types that should not be visible.
-	 */
-	private List filterTypes(ILaunchConfigurationType[] allTypes) {
-		List filteredTypes= new ArrayList();
-		String mode = getMode();
-		LaunchConfigurationTypeContribution contribution;
-		for (int i = 0; i < allTypes.length; i++) {
-			ILaunchConfigurationType type = allTypes[i];
-			contribution= new LaunchConfigurationTypeContribution(type);
-			if (isVisible(type, mode) && !WorkbenchActivityHelper.filterItem(contribution)) {
-				filteredTypes.add(type);
-			}
-		}
-		return filteredTypes;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-	 */
-	public void dispose() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-	 */
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-	}
-	
-	/**
-	 * Return <code>true</code> if the specified launch configuration type should
-	 * be visible in the specified mode, <code>false</code> otherwise.
-	 */
-	private boolean isVisible(ILaunchConfigurationType configType, String mode) {
-		if (!configType.isPublic()) {
-			return false;
-		}
-		if (mode == null) {
-			return true;
-		}
-		return configType.supportsMode(mode);
-	}
-
-	/**
-	 * Convenience method to get the singleton launch manager.
-	 */
-	private ILaunchManager getLaunchManager() {
-		return DebugPlugin.getDefault().getLaunchManager();
-	}
-
-	/**
-	 * Write accessor for the mode value
-	 */
-	private void setMode(String mode) {
-		fMode = mode;
-	}
-	
-	/**
-	 * Read accessor for the mode value
-	 */
-	private String getMode() {
-		return fMode;
-	}
-
-	/**
-	 * Write accessor for the shell value
-	 */
-	private void setShell(Shell shell) {
-		fShell = shell;
-	}
-	
-	/**
-	 * Read accessor for the shell value
-	 */
-	private Shell getShell() {
-		return fShell;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypeContribution.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypeContribution.java
deleted file mode 100644
index 8a7b3c6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypeContribution.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.ui.IPluginContribution;
-
-/**
- * A plug-in contribution (UI element) which contains a launch configuration
- * type (Core element). Plug-in contributions are passed to the workbench
- * activity support to filter elements from the UI.
- */
-class LaunchConfigurationTypeContribution implements IPluginContribution {
-	
-	protected ILaunchConfigurationType type;
-	
-	/**
-	 * Creates a new plug-in contribution for the given type
-	 * 
-	 * @param type the launch configuration type
-	 */
-	public LaunchConfigurationTypeContribution(ILaunchConfigurationType type) {
-		this.type= type;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPluginContribution#getLocalId()
-	 */
-	public String getLocalId() {
-		return type.getIdentifier();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPluginContribution#getPluginId()
-	 */
-	public String getPluginId() {
-		return type.getPluginIdentifier();
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypesViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypesViewer.java
deleted file mode 100644
index 8b368bb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationTypesViewer.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * A viewer that displays launch configuration types, filtered by
- * workbench capabilities.
- * 
- * @since 3.1
- */
-public class LaunchConfigurationTypesViewer extends TableViewer {
-	
-	class ContentProvider implements IStructuredContentProvider {
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			return DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurationTypes();
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-		
-	}
-
-	/**
-	 * Constructs a viewer to display launch configuration types
-	 * 
-	 * @param parent composite this viewer is contained in
-	 * @param launchGroup the launch group being displayed
-	 */
-	public LaunchConfigurationTypesViewer(Composite parent, ILaunchGroup launchGroup) {
-		super(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
-		setContentProvider(new ContentProvider());
-		setLabelProvider(DebugUITools.newDebugModelPresentation());
-		setSorter(new ViewerSorter());
-		addFilter(new LaunchGroupFilter(launchGroup));
-		setInput(DebugPlugin.getDefault().getLaunchManager());
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationView.java
deleted file mode 100644
index 26569bc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationView.java
+++ /dev/null
@@ -1,419 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationListener;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.ui.AbstractDebugView;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.help.HelpSystem;
-import org.eclipse.help.IContext;
-import org.eclipse.help.IContextProvider;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.events.HelpEvent;
-import org.eclipse.swt.events.HelpListener;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.model.WorkbenchViewerSorter;
-
-/**
- * A tree view of launch configurations
- */
-public class LaunchConfigurationView extends AbstractDebugView implements ILaunchConfigurationListener {
-	
-	private Viewer fViewer;
-	
-	/**
-	 * The launch group to display
-	 */
-	private LaunchGroupExtension fLaunchGroup;
-	
-	/**
-	 * Actions
-	 */
-	private CreateLaunchConfigurationAction fCreateAction;
-	private DeleteLaunchConfigurationAction fDeleteAction;
-	private DuplicateLaunchConfigurationAction fDuplicateAction;
-	
-	/**
-	 * Whether to automatically select configs that are added
-	 */
-	private boolean fAutoSelect = true;
-	
-	/**
-	 * Constructs a launch configuration view for the given launch group
-	 */
-	public LaunchConfigurationView(LaunchGroupExtension launchGroup) {
-		super();
-		fLaunchGroup = launchGroup;
-	}
-	
-	/**
-	 * Returns the launch group this view is displaying.
-	 * 
-	 * @return the launch group this view is displaying
-	 */
-	protected LaunchGroupExtension getLaunchGroup() {
-		return fLaunchGroup;
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#createViewer(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Viewer createViewer(Composite parent) {
-		TreeViewer treeViewer = new TreeViewer(parent);
-		treeViewer.setLabelProvider(DebugUITools.newDebugModelPresentation());
-		treeViewer.setSorter(new WorkbenchViewerSorter());
-		treeViewer.setContentProvider(new LaunchConfigurationTreeContentProvider(fLaunchGroup.getMode(), parent.getShell()));
-		treeViewer.addFilter(new LaunchGroupFilter(getLaunchGroup()));
-		treeViewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
-		treeViewer.expandAll();
-		treeViewer.getControl().addHelpListener(new HelpListener() {
-			public void helpRequested(HelpEvent evt) {
-				handleHelpRequest(evt);
-			}
-		});
-		getLaunchManager().addLaunchConfigurationListener(this);
-		return treeViewer;
-	}
-	
-	/**
-	 * Handle help events locally rather than deferring to WorkbenchHelp.  This
-	 * allows help specific to the selected config type to be presented.
-	 * 
-	 * @since 2.1
-	 */
-	protected void handleHelpRequest(HelpEvent evt) {
-		if (getTreeViewer().getTree() != evt.getSource()) {
-			return;
-		}
-		String id = computeContextId();
-		if (id!=null)
-			PlatformUI.getWorkbench().getHelpSystem().displayHelp(id);
-	}
-	
-	/*
-	 * Adds support for dynamic help
-	 */
-	
-	public Object getAdapter(Class key) {
-		if (key == IContextProvider.class) {
-			return new IContextProvider () {
-				public int getContextChangeMask() {
-					return SELECTION;
-				}
-
-				public IContext getContext(Object target) {
-					String id = computeContextId();
-					if (id!=null)
-						return HelpSystem.getContext(id);
-					return null;
-				}
-
-				public String getSearchExpression(Object target) {
-					return null;
-				}
-			};
-		}
-		return super.getAdapter(key);
-	}
-	
-	private String computeContextId() {
-		try {
-			ISelection selection = getViewer().getSelection();
-			if (!selection.isEmpty() && selection instanceof IStructuredSelection ) {
-				IStructuredSelection structuredSelection = (IStructuredSelection) selection;
-				Object firstSelected = structuredSelection.getFirstElement();
-				ILaunchConfigurationType configType = null;
-				if (firstSelected instanceof ILaunchConfigurationType) {
-					configType = (ILaunchConfigurationType) firstSelected;
-				} else if (firstSelected instanceof ILaunchConfiguration) {
-					configType = ((ILaunchConfiguration) firstSelected).getType();
-				}
-				if (configType != null) {
-					String helpContextId = LaunchConfigurationPresentationManager.getDefault().getHelpContext(configType, getLaunchGroup().getMode());
-					if (helpContextId != null) {
-						return helpContextId;
-					}
-				}
-			}
-		} catch (CoreException ce) {
-			DebugUIPlugin.log(ce);
-		}
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#createActions()
-	 */
-	protected void createActions() {
-		
-		fCreateAction = new CreateLaunchConfigurationAction(getViewer(), getLaunchGroup().getMode());
-		setAction(CreateLaunchConfigurationAction.ID_CREATE_ACTION, fCreateAction);
-		
-		fDeleteAction = new DeleteLaunchConfigurationAction(getViewer(), getLaunchGroup().getMode());
-		setAction(DeleteLaunchConfigurationAction.ID_DELETE_ACTION, fDeleteAction);
-		setAction(IDebugView.REMOVE_ACTION, fDeleteAction);
-		
-		fDuplicateAction = new DuplicateLaunchConfigurationAction(getViewer(), getLaunchGroup().getMode());
-		setAction(DuplicateLaunchConfigurationAction.ID_DUPLICATE_ACTION, fDuplicateAction);
-		
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
-	 */
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.LAUNCH_CONFIGURATION_VIEW;
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#fillContextMenu(org.eclipse.jface.action.IMenuManager)
-	 */
-	protected void fillContextMenu(IMenuManager menu) {
-		menu.add(fCreateAction);
-		menu.add(fDuplicateAction);
-		menu.add(fDeleteAction);
-		menu.add(new Separator());
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#configureToolBar(org.eclipse.jface.action.IToolBarManager)
-	 */
-	protected void configureToolBar(IToolBarManager tbm) {
-	}
-	
-	/**
-	 * Returns this view's tree viewer
-	 * 
-	 * @return this view's tree viewer 
-	 */
-	protected TreeViewer getTreeViewer() {
-		return (TreeViewer)getViewer();
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-		fCreateAction.dispose();
-		fDeleteAction.dispose();
-		fDuplicateAction.dispose();
-		getLaunchManager().removeLaunchConfigurationListener(this);
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationAdded(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationAdded(final ILaunchConfiguration configuration) {
-		try {
-			if (configuration.getAttribute(IDebugUIConstants.ATTR_PRIVATE, false)) {
-				return;
-			}
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-			return;
-		}
-		Display display = DebugUIPlugin.getStandardDisplay();
-		if (display.getThread() == Thread.currentThread()) {
-		    // If we're already in the UI thread (user pressing New in the
-		    // dialog), update the tree immediately.
-		    handleConfigurationAdded(configuration);
-		} else {
-	        display.asyncExec(new Runnable() {
-	            public void run() {
-	                handleConfigurationAdded(configuration);
-	            }
-	        });
-		}
-	}
-
-    /**
-     * The given launch configuration has been added. Add it to the tree.
-     * @param configuration the added configuration
-     */
-    private void handleConfigurationAdded(final ILaunchConfiguration configuration) {
-        TreeViewer viewer = getTreeViewer();
-        if (viewer != null) {
-			try {
-                viewer.add(configuration.getType(), configuration);
-                viewer.setSelection(new StructuredSelection(configuration));
-                // if moved, remove original now
-                ILaunchConfiguration from = getLaunchManager().getMovedFrom(configuration);
-                if (from != null) {
-                    viewer.remove(from);
-                }
-			} catch (CoreException e) {
-			}
-            
-			if (isAutoSelect()) {
-				getTreeViewer().setSelection(new StructuredSelection(configuration), true);
-			}
-        }
-    }
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationChanged(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationChanged(ILaunchConfiguration configuration) {
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationRemoved(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationRemoved(final ILaunchConfiguration configuration) {
-		// if moved, ignore
-		ILaunchConfiguration to = getLaunchManager().getMovedTo(configuration);
-		if (to != null) {
-			return;
-		}
-		Display display = DebugUIPlugin.getStandardDisplay();
-		if (display.getThread() == Thread.currentThread()) {
-		    // If we're already in the UI thread (user pressing Delete in the
-		    // dialog), update the tree immediately.
-            handleConfigurationRemoved(configuration);
-		} else {
-			display.asyncExec(new Runnable() {
-		        public void run() {
-		            handleConfigurationRemoved(configuration);
-		        }
-			});
-		}
-	}
-
-	/**
-	 * The given launch configuration has been removed. Remove it from the tree.
-     * @param configuration the deleted configuration
-     */
-    private void handleConfigurationRemoved(ILaunchConfiguration configuration) {
-        ILaunchConfigurationType type = null;
-		int typeIndex= -1; // The index of the deleted configuration's type
-		int configIndex= -1; // The index of the deleted configuration		
-		// Initialize data used to set the selection after deletion
-		TreeItem[] items= getTreeViewer().getTree().getItems();
-		TreeItem typeItem;
-		for (int i= 0, numTypes= items.length; (i < numTypes && type == null); i++) {
-			typeItem= items[i];
-			typeIndex= i;
-			TreeItem[] configs= typeItem.getItems();
-			for (int j= 0, numConfigs= configs.length; j < numConfigs; j++) {
-				if (configuration.equals(configs[j].getData())) {
-					configIndex= j;
-					type = (ILaunchConfigurationType)typeItem.getData();
-					break;
-				}
-			}
-		}			
-			
-		getTreeViewer().remove(configuration);
-		if (getViewer().getSelection().isEmpty()) {
-			IStructuredSelection newSelection= null;
-			if (typeIndex != -1 && configIndex != -1) {
-				// Reset selection to the next config
-				TreeItem[] configItems= getTreeViewer().getTree().getItems()[typeIndex].getItems();
-				int numItems= configItems.length;
-				Object data= null;
-				if (numItems > configIndex) { // Select the item at the same index as the deleted
-					data= configItems[configIndex].getData();
-				} else if (numItems > 0) { // Deleted the last item(s). Select the last item
-					data= configItems[numItems - 1].getData();
-				}
-				if (data != null) {
-					newSelection= new StructuredSelection(data);
-				}
-			}
-			if (newSelection == null && type != null) {
-				// Reset selection to the config type of the first selected configuration
-				newSelection = new StructuredSelection(type);
-			}
-			getTreeViewer().setSelection(newSelection);
-		}
-    }
-
-    /**
-	 * This is similar to IWorkbenchPart#createPartControl(Composite), but it is
-	 * called by the launch dialog when creating the launch config tree view.
-	 * Since this view is not contained in the workbench, we cannot do all the
-	 * usual initialzation (toolbars, etc).
-	 */
-	public void createLaunchDialogControl(Composite parent) {
-		fViewer = createViewer(parent);
-		createActions();
-		createContextMenu(getViewer().getControl());
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, getHelpContextId());
-		getViewer().getControl().addKeyListener(new KeyAdapter() {
-			public void keyPressed(KeyEvent e) {
-				handleKeyPressed(e);
-			}
-		});
-		if (getViewer() instanceof StructuredViewer) {
-			((StructuredViewer)getViewer()).addDoubleClickListener(this);
-		}
-	}
-	
-	
-
-	/**
-	 * @see org.eclipse.debug.ui.IDebugView#getViewer()
-	 */
-	public Viewer getViewer() {
-		return fViewer;
-	}
-	
-	protected ILaunchManager getLaunchManager() {
-		return DebugPlugin.getDefault().getLaunchManager();
-	}
-	
-	/**
-	 * Sets whether to automatically select configs that are
-	 * added into the view (newly created).
-	 * 
-	 * @param select whether to automatically select configs that are
-	 * added into the view (newly created)
-	 */
-	public void setAutoSelect(boolean select) {
-		fAutoSelect = select;
-	}
-	
-	/**
-	 * Returns whether this view is currently configured to
-	 * automatically select newly created configs that are
-	 * added into the view.
-	 * 
-	 * @return whether this view is currently configured to
-	 * automatically select newly created configs
-	 */
-	protected boolean isAutoSelect() {
-		return fAutoSelect;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java
deleted file mode 100644
index d80d2ce..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsDialog.java
+++ /dev/null
@@ -1,1699 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import java.lang.reflect.InvocationTargetException;
-import java.text.MessageFormat;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DialogSettingsHelper;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.PixelConverter;
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.debug.ui.ILaunchConfigurationDialog;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-import org.eclipse.debug.ui.ILaunchConfigurationTabGroup;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.dialogs.ControlEnableState;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.jface.dialogs.IPageChangeProvider;
-import org.eclipse.jface.dialogs.IPageChangedListener;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.dialogs.PageChangedEvent;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.jface.operation.IRunnableWithProgress;
-import org.eclipse.jface.operation.ModalContext;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.util.ListenerList;
-import org.eclipse.jface.util.SafeRunnable;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.wizard.ProgressMonitorPart;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
- 
-
-/**
- * The dialog used to edit and launch launch configurations.
- */
-public class LaunchConfigurationsDialog extends TitleAreaDialog implements ILaunchConfigurationDialog, IPageChangeProvider {
-
-	/**
-	 * Keep track of the currently visible dialog instance
-	 */
-	private static ILaunchConfigurationDialog fgCurrentlyVisibleLaunchConfigurationDialog;
-		
-	/**
-	 * The label appearing above tree of configs & config types.
-	 */
-	private Label fTreeLabel;
-	
-	/**
-	 * The Composite used to insert an adjustable 'sash' between the tree and the tabs.
-	 */
-	private SashForm fSashForm;
-	
-	/**
-	 * Default weights for the SashForm that specify how wide the selection and
-	 * edit areas aree relative to each other.
-	 */
-	private static final int[] DEFAULT_SASH_WEIGHTS = new int[] {11, 30};
-	
-	/**
-	 * The launch configuration selection area.
-	 */
-	private Composite fSelectionArea;
-	
-	/**
-	 * Tree view of launch configurations
-	 */
-	private LaunchConfigurationView fLaunchConfigurationView;	
-	
-	/**
-	 * Tab edit area
-	 */
-	private LaunchConfigurationTabGroupViewer fTabViewer;
-		
-	/**
-	 * The launch configuration edit area.
-	 */
-	private Composite fEditArea;
-	
-	/**
-	 * The 'New configuration' action.
-	 */
-	private ButtonAction fButtonActionNew;
-		
-	/**
-	 * The 'Delete configuration' action.
-	 */
-	private ButtonAction fButtonActionDelete;
-		
-	/**
-	 * The 'cancel' button that appears when the in-dialog progress monitor is shown.
-	 */
-	private Button fProgressMonitorCancelButton;
-		
-	/**
-	 * When this dialog is opened in <code>LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_SELECTION</code>
-	 * mode, this specifies the selection that is initially shown in the dialog.
-	 */
-	private IStructuredSelection fInitialSelection;
-	
-	/**
-	 * The status to open the dialog on, or <code>null</code> if none.
-	 */
-	private IStatus fInitialStatus;
-		
-	private ProgressMonitorPart fProgressMonitorPart;
-	private Cursor waitCursor;
-	private Cursor arrowCursor;
-	private ListenerList changeListeners = new ListenerList(3);
-	
-	/**
-	 * The number of 'long-running' operations currently taking place in this dialog
-	 */	
-	private long fActiveRunningOperations = 0;
-	
-	/**
-	 * The launch groupd being displayed
-	 */
-	private LaunchGroupExtension fGroup;
-	
-	/**
-	 * Banner image
-	 */
-	private Image fBannerImage;
-	
-	/**
-	 * Double-click action
-	 */
-	private IAction fDoubleClickAction;
-			
-	/**
-	 * Id for 'Launch' button.
-	 */
-	protected static final int ID_LAUNCH_BUTTON = IDialogConstants.CLIENT_ID + 1;
-	
-	/**
-	 * Id for 'Close' button.
-	 */
-	protected static final int ID_CLOSE_BUTTON = IDialogConstants.CLIENT_ID + 2;
-	
-	/**
-	 * Id for 'Cancel' button.
-	 */
-	protected static final int ID_CANCEL_BUTTON = IDialogConstants.CLIENT_ID + 3;
-	
-	/**
-	 * Constrant String used as key for setting and retrieving current Control with focus
-	 */
-	private static final String FOCUS_CONTROL = "focusControl";//$NON-NLS-1$
-
-	/**
-	 * Constant specifying how wide this dialog is allowed to get (as a percentage of
-	 * total available screen width) as a result of tab labels in the edit area.
-	 */
-	protected static final float MAX_DIALOG_WIDTH_PERCENT = 0.50f;
-	
-	/**
-	 * Constant specifying how tall this dialog is allowed to get (as a percentage of
-	 * total available screen height) as a result of preferred tab size.
-	 */
-	protected static final float MAX_DIALOG_HEIGHT_PERCENT = 0.50f;	
-
-	/**
-	 * Empty array
-	 */
-	protected static final Object[] EMPTY_ARRAY = new Object[0];	
-	
-	/**
-	 * Size of this dialog if there is no preference specifying a size.
-	 */
-	protected static final Point DEFAULT_INITIAL_DIALOG_SIZE = new Point(620, 560);
-		
-	/**
-	 * Constant specifying that this dialog should be opened with the last configuration launched
-	 * in the workspace selected.
-	 */
-	public static final int LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_LAST_LAUNCHED = 2;
-
-	/**
-	 * Constant specifying that this dialog should be opened with the value specified via 
-	 * <code>setInitialSelection()</code> selected.
-	 */
-	public static final int LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_SELECTION = 3;
-	
-	/**
-	 * Constant specifying that a new launch configuration dialog was not opened.  Instead
-	 * an existing launch configuration dialog was used.
-	 */
-	public static final int LAUNCH_CONFIGURATION_DIALOG_REUSE_OPEN = 4;
-	
-	/**
-	 * Specifies how this dialog behaves when opened.  Value is one of the 
-	 * 'LAUNCH_CONFIGURATION_DIALOG' constants defined in this class.
-	 */
-	private int fOpenMode = LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_LAST_LAUNCHED;
-	
-	/**
-	 * Constructs a new launch configuration dialog on the given
-	 * parent shell.
-	 * 
-	 * @param shell the parent shell
-	 * @param group the group of launch configuration to display
-	 */
-	public LaunchConfigurationsDialog(Shell shell, LaunchGroupExtension group) {
-		super(shell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		setLaunchGroup(group);
-	}
-	
-	/**
-	 * Set the flag indicating how this dialog behaves when the <code>open()</code> method is called.
-	 * Valid values are defined by the LAUNCH_CONFIGURATION_DIALOG... constants in this class.
-	 */
-	public void setOpenMode(int mode) {
-		fOpenMode = mode;
-	}
-	
-	protected int getOpenMode() {
-		return fOpenMode;
-	}
-	
-	/**
-	 * A launch configuration dialog overrides this method
-	 * to create a custom set of buttons in the button bar.
-	 * This dialog has 'Launch' and 'Cancel'
-	 * buttons.
-	 * 
-	 * @see org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(org.eclipse.swt.widgets.Composite)
-	 */
-	protected void createButtonsForButtonBar(Composite parent) {
-		createButton(parent, ID_LAUNCH_BUTTON, getLaunchButtonText(), true);
-		createButton(parent, ID_CLOSE_BUTTON, LaunchConfigurationsMessages.LaunchConfigurationDialog_Close_1, false);  //$NON-NLS-1$
-	}
-	
-	/**
-	 * Handle the 'save and launch' & 'launch' buttons here, all others are handled
-	 * in <code>Dialog</code>
-	 * 
-	 * @see org.eclipse.jface.dialogs.Dialog#buttonPressed(int)
-	 */
-	protected void buttonPressed(int buttonId) {
-		if (buttonId == ID_LAUNCH_BUTTON) {
-			handleLaunchPressed();
-		} else if (buttonId == ID_CLOSE_BUTTON) {
-			handleClosePressed();
-		} else {
-			super.buttonPressed(buttonId);
-		}
-	}
-
-	/**
-	 * Returns the appropriate text for the launch button - run or debug.
-	 */
-	protected String getLaunchButtonText() {
-		return DebugPlugin.getDefault().getLaunchManager().getLaunchMode(getMode()).getLabel();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Control contents = super.createContents(parent);
-		initializeContent();
-		return contents;
-	}
-
-	protected void initializeContent() {
-		doInitialTreeSelection();
-		IStatus status = getInitialStatus();
-		if (status != null) {
-			handleStatus(status);
-		}
-	}
-	
-
-	/**
-	 * Initialize the relative weights (widths) of the 2 sides of the sash.
-	 */
-	private void initializeSashForm() {
-		if (getSashForm() != null) {
-			IDialogSettings settings = getDialogSettings();
-			int[] sashWeights;
-			try {
-				int w1, w2;
-				w1 = settings.getInt(IDebugPreferenceConstants.DIALOG_SASH_WEIGHTS_1);
-				w2 = settings.getInt(IDebugPreferenceConstants.DIALOG_SASH_WEIGHTS_2);
-				sashWeights = new int[] {w1, w2};
-			} catch (NumberFormatException e) {
-				sashWeights = DEFAULT_SASH_WEIGHTS;
-			}
-			getSashForm().setWeights(sashWeights);
-		}
-	}
-
-	/**
-	 * Check if the selection area is currently wide enough so that both the 'New' &
-	 * 'Delete' buttons are shown without truncation.  If so, do nothing.  Otherwise,
-	 * increase the width of this dialog's Shell just enough so that both buttons 
-	 * are shown cleanly.
-	 */
-	private void ensureSelectionAreaWidth() {
-		if (fLaunchConfigurationView != null) {
-			Button newButton = getButtonActionNew().getButton();
-			Button deleteButton = getButtonActionDelete().getButton();		
-			int requiredWidth = newButton.getBounds().width + deleteButton.getBounds().width;
-			int marginWidth = ((GridLayout)getSelectionArea().getLayout()).marginWidth;
-			int horizontalSpacing = ((GridLayout)getSelectionArea().getLayout()).horizontalSpacing;
-			requiredWidth += (2 * marginWidth) + horizontalSpacing;
-			int currentWidth = getSelectionArea().getBounds().width;
-	
-			if (requiredWidth > currentWidth) {
-				int[] newSashWeights = new int[2];
-				newSashWeights[0] = requiredWidth;
-				newSashWeights[1] = getEditArea().getBounds().width;
-				Shell shell= getShell();
-				Point shellSize= shell.getSize();
-				setShellSize(shellSize.x + (requiredWidth - currentWidth), shellSize.y);
-				getSashForm().setWeights(newSashWeights);			
-			}
-		}
-	}
-	
-	/**
-	 * Set the initial selection in the tree.
-	 */
-	public void doInitialTreeSelection() {
-		fLaunchConfigurationView.getViewer().setSelection(getInitialSelection());
-	}
-	
-	/**
-	 * Write out this dialog's Shell size, location to the preference store.
-	 */
-	protected void persistShellGeometry() {
-		DialogSettingsHelper.persistShellGeometry(getShell(), getDialogSettingsSectionName());
-	}
-	
-	protected void persistSashWeights() {
-		IDialogSettings settings = getDialogSettings();
-		SashForm sashForm = getSashForm();
-		if (sashForm != null) {
-			int[] sashWeights = getSashForm().getWeights();
-			settings.put(IDebugPreferenceConstants.DIALOG_SASH_WEIGHTS_1, sashWeights[0]);
-			settings.put(IDebugPreferenceConstants.DIALOG_SASH_WEIGHTS_2, sashWeights[1]);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#close()
-	 */
-	public boolean close() {
-	    if (!isSafeToClose()) {
-	        return false;
-	    }
-		persistShellGeometry();
-		persistSashWeights();
-		setCurrentlyVisibleLaunchConfigurationDialog(null);
-		getBannerImage().dispose();
-		getTabViewer().dispose();
-		if (fLaunchConfigurationView != null) {
-			fLaunchConfigurationView.dispose();
-		}
-		return super.close();
-	}
-	
-	/**
-	 * Returns whether the dialog can be closed
-	 * 
-	 * @return whether the dialog can be closed
-	 */
-	protected boolean isSafeToClose() {
-	    return fActiveRunningOperations == 0;
-	}
-	
-	/**
-	 * Determine the initial configuration for this dialog.
-	 * Open the dialog in the mode set using #setOpenMode(int) and return one of
-	 * <code>Window. OK</code> or <code>Window.CANCEL</code>.
-	 * 
-	 * @see org.eclipse.jface.window.Window#open()
-	 */
-	public int open() {		
-		int mode = getOpenMode();
-		setCurrentlyVisibleLaunchConfigurationDialog(this);	
-		if (mode == LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_LAST_LAUNCHED) {
-			ILaunchConfiguration lastLaunchedConfig = getLastLaunchedWorkbenchConfiguration();
-			if (lastLaunchedConfig != null) {
-				setInitialSelection(new StructuredSelection(lastLaunchedConfig));
-			}			
-		}	
-		return super.open();
-	}
-	
-	/**
-	 * Return the last launched configuration in the workspace.
-	 */
-	protected ILaunchConfiguration getLastLaunchedWorkbenchConfiguration() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLastLaunch(getLaunchGroup().getIdentifier());
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		Composite dialogComp = (Composite)super.createDialogArea(parent);
-		addContent(dialogComp);
-		return dialogComp;
-	}
-
-	/**
-	 * Adds content to the dialog area
-	 * 
-	 * @param dialogComp
-	 */
-	protected void addContent(Composite dialogComp) {
-		GridData gd;
-		Composite topComp = new Composite(dialogComp, SWT.NONE);
-		gd = new GridData(GridData.FILL_BOTH);
-		topComp.setLayoutData(gd);
-		GridLayout topLayout = new GridLayout();
-		topLayout.numColumns = 2;
-		topLayout.marginHeight = 5;
-		topLayout.marginWidth = 0;
-		topComp.setLayout(topLayout);
-		
-		// Set the things that TitleAreaDialog takes care of 
-		setTitle(LaunchConfigurationsMessages.LaunchConfigurationDialog_Create__manage__and_run_launch_configurations_8); //$NON-NLS-1$
-		setMessage(LaunchConfigurationsMessages.LaunchConfigurationDialog_Ready_to_launch_2); //$NON-NLS-1$
-		setModeLabelState();
-		
-		// Create the SashForm that contains the selection area on the left,
-		// and the edit area on the right
-		setSashForm(new SashForm(topComp, SWT.NONE));
-		getSashForm().setOrientation(SWT.HORIZONTAL);
-		gd = new GridData(GridData.FILL_BOTH);
-		gd.horizontalSpan = 2;
-		getSashForm().setLayoutData(gd);
-		getSashForm().setFont(dialogComp.getFont());
-		
-		// Build the launch configuration selection area and put it into the composite.
-		Control launchConfigSelectionArea = createLaunchConfigurationSelectionArea(getSashForm());
-		gd = new GridData(GridData.FILL_VERTICAL);
-		launchConfigSelectionArea.setLayoutData(gd);
-		
-		// Build the launch configuration edit area and put it into the composite.
-		Composite editAreaComp = createLaunchConfigurationEditArea(getSashForm());
-		setEditArea(editAreaComp);
-		gd = new GridData(GridData.FILL_BOTH);
-		editAreaComp.setLayoutData(gd);
-			
-		// Build the separator line that demarcates the button bar
-		Label separator = new Label(topComp, SWT.HORIZONTAL | SWT.SEPARATOR);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		separator.setLayoutData(gd);
-		
-		dialogComp.layout(true);
-		applyDialogFont(dialogComp);
-	}
-	
-	/**
-	 * Set the title area image based on the mode this dialog was initialized with
-	 */
-	protected void setModeLabelState() {
-		setTitleImage(getBannerImage());
-	}
-	
-	/**
-	 * Update buttons and message.
-	 */
-	protected void refreshStatus() {
-		updateMessage();
-		updateButtons();
-	}
-			
-	protected Display getDisplay() {
-		Shell shell = getShell();
-		if (shell != null) {
-			return shell.getDisplay();
-		} 
-		return Display.getDefault();
-	}
-		
-	/**
-	 * Creates the launch configuration selection area of the dialog.
-	 * This area displays a tree of launch configurations that the user
-	 * may select, and allows users to create new configurations, and
-	 * delete and duplicate existing configurations.
-	 * 
-	 * @return the composite used for launch configuration selection area
-	 */ 
-	protected Control createLaunchConfigurationSelectionArea(Composite parent) {
-		Font font = parent.getFont();
-		Composite comp = new Composite(parent, SWT.NONE);
-		setSelectionArea(comp);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 1;
-		layout.marginHeight = 0;
-		layout.marginWidth = 5;
-		comp.setLayout(layout);
-		comp.setFont(font);
-		
-		setTreeLabel(new Label(comp, SWT.NONE));
-		getTreeLabel().setFont(font);
-		getTreeLabel().setText(LaunchConfigurationsMessages.LaunchConfigurationDialog_Launch_Con_figurations__1); //$NON-NLS-1$
-		
-		fLaunchConfigurationView = new LaunchConfigurationView(getLaunchGroup());
-		fLaunchConfigurationView.createLaunchDialogControl(comp);
-		Viewer viewer = fLaunchConfigurationView.getViewer();
-		Control control = viewer.getControl();
-		
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		control.setLayoutData(gd);
-		control.setFont(font);
-		
-		fDoubleClickAction = new DoubleClickAction();
-		fLaunchConfigurationView.setAction(IDebugView.DOUBLE_CLICK_ACTION, fDoubleClickAction);
-		
-		Composite buttonComposite= new Composite(comp, SWT.NONE);
-		layout= new GridLayout(2, false);
-		layout.marginHeight= 0;
-		layout.marginWidth= 0;
-		buttonComposite.setLayout(layout);
-		gd= new GridData(GridData.FILL_HORIZONTAL);
-		buttonComposite.setLayoutData(gd);
-		buttonComposite.setFont(comp.getFont());
-		
-		final Button newButton = SWTUtil.createPushButton(buttonComposite, LaunchConfigurationsMessages.LaunchConfigurationDialog_Ne_w_13, null); //$NON-NLS-1$
-		setButtonActionNew(new ButtonActionNew(newButton.getText(), newButton));
-		
-		final Button deleteButton = SWTUtil.createPushButton(buttonComposite, LaunchConfigurationsMessages.LaunchConfigurationDialog_Dele_te_14, null); //$NON-NLS-1$
-		setButtonActionDelete(new ButtonActionDelete(deleteButton.getText(), deleteButton));
-		
-		AbstractLaunchConfigurationAction.IConfirmationRequestor requestor =
-			new AbstractLaunchConfigurationAction.IConfirmationRequestor() {
-					/**
-					 * @see org.eclipse.debug.internal.ui.launchConfigurations.AbstractLaunchConfigurationAction.IConfirmationRequestor#getConfirmation()
-					 */
-					public boolean getConfirmation() {
-						return canDiscardCurrentConfig();
-					}
-			};
-			
-		// confirmation requestors
-		getDuplicateAction().setConfirmationRequestor(requestor);
-		getNewAction().setConfirmationRequestor(requestor);
-							
-		((StructuredViewer) viewer).addPostSelectionChangedListener(new ISelectionChangedListener() {
-			/**
-			 * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-			 */
-			public void selectionChanged(SelectionChangedEvent event) {
-				handleLaunchConfigurationSelectionChanged(event);
-				newButton.setEnabled(getNewAction().isEnabled());
-				deleteButton.setEnabled(getDeleteAction().isEnabled());
-			}
-		});
-		return comp;
-	}	
-	
-	/**
-	 * Creates the launch configuration edit area of the dialog.
-	 * This area displays the name of the launch configuration
-	 * currently being edited, as well as a tab folder of tabs
-	 * that are applicable to the launch configuration.
-	 * 
-	 * @return the composite used for launch configuration editing
-	 */ 
-	protected Composite createLaunchConfigurationEditArea(Composite parent) {
-		setTabViewer(new LaunchConfigurationTabGroupViewer(parent, this));
-		getTabViewer().addSelectionChangedListener(new ISelectionChangedListener() {
-			/**
-			 * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-			 */
-			public void selectionChanged(SelectionChangedEvent event) {
-				handleTabSelectionChanged();
-			}
-		});
-		return (Composite)getTabViewer().getControl();
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createButtonBar(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createButtonBar(Composite parent) {
-		Font font = parent.getFont();
-		Composite composite= new Composite(parent, SWT.NULL);
-		
-		GridLayout layout= new GridLayout();
-		layout.numColumns= 2;
-		layout.marginHeight= 0;
-		layout.marginWidth= 0;
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		composite.setFont(font);
-		
-		Composite monitorComposite = new Composite(composite, SWT.NULL);
-		layout = new GridLayout();
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		layout.numColumns = 2;
-		monitorComposite.setLayout(layout);
-		monitorComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-		GridLayout pmLayout = new GridLayout();
-		setProgressMonitorPart(new ProgressMonitorPart(monitorComposite, pmLayout));
-		Button cancelButton = createButton(monitorComposite, ID_CANCEL_BUTTON, LaunchConfigurationsMessages.LaunchConfigurationDialog_Cancel_3, true); //$NON-NLS-1$
-		setProgressMonitorCancelButton(cancelButton);
-		getProgressMonitorCancelButton().setFont(font);
-		getProgressMonitorPart().setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		getProgressMonitorPart().setFont(font);
-		monitorComposite.setVisible(false);
-
-		return super.createButtonBar(composite);
-	}
-	
-	/**
-	 * Sets the title for the dialog, and establishes the help context.
-	 * 
-	 * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell);
-	 */
-	protected void configureShell(Shell shell) {
-		super.configureShell(shell);
-		shell.setText(getShellTitle());
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(shell, getHelpContextId());
-	}
-	
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.LAUNCH_CONFIGURATION_DIALOG;
-	}
-	
-	protected String getShellTitle() {
-		String title = DebugUIPlugin.removeAccelerators(getLaunchGroup().getLabel());
-		if (title == null) {
-			title = LaunchConfigurationsMessages.LaunchConfigurationDialog_Launch_Configurations_18; //$NON-NLS-1$
-		}
-		return title;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialLocation(org.eclipse.swt.graphics.Point)
-	 */
-	protected Point getInitialLocation(Point initialSize) {
-		IDialogSettings settings = getDialogSettings();
-		try {
-			int x, y;
-			x = settings.getInt(IDebugPreferenceConstants.DIALOG_ORIGIN_X);
-			y = settings.getInt(IDebugPreferenceConstants.DIALOG_ORIGIN_Y);
-			return new Point(x,y);
-		} catch (NumberFormatException e) {
-		}
-		return super.getInitialLocation(initialSize);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialSize()
-	 */
-	protected Point getInitialSize() {		
-		IDialogSettings settings = getDialogSettings();
-		try {
-			int x, y;
-			x = settings.getInt(IDebugPreferenceConstants.DIALOG_WIDTH);
-			y = settings.getInt(IDebugPreferenceConstants.DIALOG_HEIGHT);
-			return new Point(x, y);
-		} catch (NumberFormatException e) {
-		}
-		return DEFAULT_INITIAL_DIALOG_SIZE;
-	}
-		
-	private void setSashForm(SashForm sashForm) {
-		fSashForm = sashForm;
-	}
-	
-	private SashForm getSashForm() {
-		return fSashForm;
-	}
-
-	/**
-	 * Returns the launch manager.
-	 * 
-	 * @return the launch manager
-	 */
-	private ILaunchManager getLaunchManager() {
-		return DebugPlugin.getDefault().getLaunchManager();
-	}
-
-	/**
-	 * Returns whether this dialog is currently open
-	 */
-	private boolean isVisible() {
-		return getShell() != null && getShell().isVisible();
-	}	
-		
-	/**
-	 * Notification that selection has changed in the launch configuration tree.
-	 * <p>
-	 * If the currently displayed configuration is not saved,
-	 * prompt for saving before moving on to the new selection.
-	 * </p>
-	 * 
-	 * @param event selection changed event
-	 */
- 	protected void handleLaunchConfigurationSelectionChanged(SelectionChangedEvent event) {
- 		
- 		Object input = getTabViewer().getInput();
- 		Object newInput = null;
- 		ISelection selection = event.getSelection();
- 		if (!selection.isEmpty()) {
- 			if (selection instanceof IStructuredSelection) {
- 				IStructuredSelection structuredSelection = (IStructuredSelection)selection;
- 				if (structuredSelection.size() == 1) {
- 					newInput = structuredSelection.getFirstElement();
- 				}
- 			}
- 		}
- 		ILaunchConfiguration original = getTabViewer().getOriginal();
- 		if (original != null && newInput == null && getLaunchManager().getMovedTo(original) != null) {
-			// the current config is about to be deleted ignore this change
-			return;
-		}
- 		
- 		if (!isEqual(input, newInput)) {
- 			ILaunchConfigurationTabGroup group = getTabGroup();
- 			if (original != null) {
- 				boolean deleted = !original.exists();
- 				boolean renamed = false;
- 				if (newInput instanceof ILaunchConfiguration) {
- 					ILaunchConfiguration lc = (ILaunchConfiguration)newInput;
- 					renamed = getLaunchManager().getMovedFrom(lc) != null;
- 				}
-	 			if (getTabViewer().isDirty() && !deleted && !renamed) {
-	 				boolean canReplace = showUnsavedChangesDialog();
-	 				if (!canReplace) {
-	 					// restore the original selection
-	 					IStructuredSelection sel = new StructuredSelection(input);
-	 					fLaunchConfigurationView.getViewer().setSelection(sel);
-	 					return;
-	 				}
-	 			}
- 			}
- 			getTabViewer().setInput(newInput);
-
- 			// bug 14758 - if the newly selected config is dirty, save its changes
- 			if (getTabViewer().isDirty()) {
- 				getTabViewer().handleApplyPressed();
- 			} 
- 			// bug 14758			
- 			ILaunchConfigurationTabGroup newGroup = getTabGroup();
- 			if (!isEqual(group, newGroup)) {
- 				if (isVisible()) {
- 					resize();
- 				}
- 			}
- 		}
-  	}
-  	
-  	protected boolean isEqual(Object o1, Object o2) {
-  		if (o1 == o2) {
-  			return true;
-  		} else if (o1 == null) {
-  			return false;
-  		} else {
-  			return o1.equals(o2);
-  		}
-  	}
-  	
-  	
-  	protected void resize() {
-		// determine the maximum tab dimensions
-		PixelConverter pixelConverter = new PixelConverter(getEditArea());
-		int runningTabWidth = 0;
-		ILaunchConfigurationTabGroup group = getTabGroup();
-		if (group == null) {
-			return;
-		}
-		ILaunchConfigurationTab[] tabs = group.getTabs();
-		Point contentSize = new Point(0, 0);
-		for (int i = 0; i < tabs.length; i++) {
-			String name = tabs[i].getName();
-			Image image = tabs[i].getImage();
-			runningTabWidth += pixelConverter.convertWidthInCharsToPixels(name.length() + 5);
-			if (image != null) {
-				runningTabWidth += image.getBounds().width;
-			}
-			Control control = tabs[i].getControl();
-			if (control != null) {
-				Point size = control.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
-				if (size.x > contentSize.x) {
-					contentSize.x = size.x;
-				}
-				if (size.y > contentSize.y) {
-					contentSize.y = size.y;
-				}
-			}
-		}
-	
-		// Determine if more space is needed to show all tab labels across the top of the
-		// tab folder.  If so, only increase size of dialog to some percent of the available
-		// screen real estate.
-		if (runningTabWidth > contentSize.x) {
-			int maxAllowedWidth = (int) (getDisplay().getBounds().width * MAX_DIALOG_WIDTH_PERCENT);
-			int otherWidth = getSashForm().SASH_WIDTH + getSelectionArea().getBounds().width;
-			int totalWidth = runningTabWidth + otherWidth;
-			if (totalWidth > maxAllowedWidth) {
-				contentSize.x = maxAllowedWidth - otherWidth;
-			} else {
-				contentSize.x = runningTabWidth;
-			}
-		}
-		
-		int maxAllowedHeight =(int) (getDisplay().getBounds().height * MAX_DIALOG_HEIGHT_PERCENT);
-		contentSize.y = Math.min(contentSize.y, maxAllowedHeight);
-	
-		// Adjust the maximum tab dimensions to account for the extra space required for the tab labels
-		Rectangle tabFolderBoundingBox = getEditArea().computeTrim(0, 0, contentSize.x, contentSize.y);
-		contentSize.x = tabFolderBoundingBox.width;
-		contentSize.y = tabFolderBoundingBox.height;
-	
-		// Force recalculation of sizes
-		getEditArea().layout(true);
-	
-		// Calculate difference between required space for the tab folder's client area 
-		// and it's current size, then increase size of this dialog's Shell by that amount
-		Rectangle rect = getTabViewer().getTabFolder().getClientArea();
-		Point containerSize= new Point(rect.width, rect.height);
-		int hdiff= contentSize.x - containerSize.x;
-		int vdiff= contentSize.y - containerSize.y;
-		// Only increase size of dialog, never shrink it
-		if (hdiff > 0 || vdiff > 0) {
-			int[] newSashWeights = null;
-			if (hdiff > 0) {
-				newSashWeights = calculateNewSashWeights(hdiff);
-			}
-			hdiff= Math.max(0, hdiff);
-			vdiff= Math.max(0, vdiff);
-			Shell shell= getShell();
-			Point shellSize= shell.getSize();
-			setShellSize(shellSize.x + hdiff, shellSize.y + vdiff);
-			// Adjust the sash weights so that all of the increase in width
-			// is given to the tab area
-			if (newSashWeights != null) {
-				getSashForm().setWeights(newSashWeights);
-			}
-		}  		
-	}
-  	
-	/**
-	 * Notification that tab selection has changed.
-	 *
-	 */
-	protected void handleTabSelectionChanged() {
-		updateMessage();
-		firePageChanged(new PageChangedEvent(this, getSelectedPage()));
-	}
-	 	 	
- 	private void setProgressMonitorPart(ProgressMonitorPart part) {
- 		fProgressMonitorPart = part;
- 	}
- 	
- 	private ProgressMonitorPart getProgressMonitorPart() {
- 		return fProgressMonitorPart;
- 	}
- 	
- 	private void setProgressMonitorCancelButton(Button button) {
- 		fProgressMonitorCancelButton = button;
- 	}
- 	
- 	private Button getProgressMonitorCancelButton() {
- 		return fProgressMonitorCancelButton;
- 	}
- 	 	 	
- 	/**
- 	 * Calculate & return a 2 element integer array that specifies the relative 
- 	 * weights of the selection area and the edit area, based on the specified
- 	 * increase in width of the owning shell.  The point of this method is calculate 
- 	 * sash weights such that when the shell gets wider, all of the increase in width
- 	 * is given to the edit area (tab folder), and the selection area (tree) stays
- 	 * the same width.
- 	 */
-	private int[] calculateNewSashWeights(int widthIncrease) {
-		int[] newWeights = new int[2];
-		newWeights[0] = getSelectionArea().getBounds().width;
-		newWeights[1] = getEditArea().getBounds().width + widthIncrease;
-		return newWeights;
-	}
-
- 	/**
- 	 * Increase the size of this dialog's <code>Shell</code> by the specified amounts.
- 	 * Do not increase the size of the Shell beyond the bounds of the Display.
- 	 */
-	protected void setShellSize(int width, int height) {
-		Rectangle bounds = getShell().getDisplay().getBounds();
-		getShell().setSize(Math.min(width, bounds.width), Math.min(height, bounds.height));
-	}
- 	 
- 	/* (non-Javadoc)
- 	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#getMode()
- 	 */
- 	public String getMode() {
- 		return getLaunchGroup().getMode();
- 	}
- 	 	 	
- 	/**
- 	 * Returns the current tab group
- 	 * 
- 	 * @return the current tab group, or <code>null</code> if none
- 	 */
- 	public ILaunchConfigurationTabGroup getTabGroup() {
- 		if (getTabViewer() != null) {
- 			return getTabViewer().getTabGroup();
- 		}
- 		return null;
- 	}
- 	
- 	/* (non-Javadoc)
- 	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#getTabs()
- 	 */
- 	public ILaunchConfigurationTab[] getTabs() {
- 		if (getTabGroup() == null) {
- 			return null;
- 		} 
- 		return getTabGroup().getTabs();
- 	} 	
- 	
-	/**
-	 * Return whether the current configuration can be discarded.  This involves determining
-	 * if it is dirty, and if it is, asking the user what to do.
-	 */
-	private boolean canDiscardCurrentConfig() {				
-		if (getTabViewer().isDirty()) {
-			return showUnsavedChangesDialog();
-		}
-		return true;
-	}
-	
-	/**
-	 * Show the user a dialog appropriate to whether the unsaved changes in the current config
-	 * can be saved or not.  Return <code>true</code> if the user indicated that they wish to replace
-	 * the current config, either by saving changes or by discarding the, return <code>false</code>
-	 * otherwise.
-	 */
-	private boolean showUnsavedChangesDialog() {
-		if (getTabViewer().canSave()) {
-			return showSaveChangesDialog();
-		}
-		return showDiscardChangesDialog();
-	}
-	
-	/**
-	 * Create and return a dialog that asks the user whether they want to save
-	 * unsaved changes.  Return <code>true </code> if they chose to save changes,
-	 * <code>false</code> otherwise.
-	 */
-	private boolean showSaveChangesDialog() {
-		String message = null;
-		if (getActiveTab() instanceof PerspectivesTab) {
-			try {
-				message = MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationsDialog_45, new String[]{getTabViewer().getWorkingCopy().getType().getName()}); //$NON-NLS-1$
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		} else {
-			message = MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationDialog_The_configuration___29, new String[]{getTabViewer().getWorkingCopy().getName()}); //$NON-NLS-1$
-		}
-		MessageDialog dialog = new MessageDialog(getShell(), 
-												 LaunchConfigurationsMessages.LaunchConfigurationDialog_Save_changes__31, //$NON-NLS-1$
-												 null,
-												 message,
-												 MessageDialog.QUESTION,
-												 new String[] {LaunchConfigurationsMessages.LaunchConfigurationDialog_Yes_32, LaunchConfigurationsMessages.LaunchConfigurationDialog_No_33, LaunchConfigurationsMessages.LaunchConfigurationDialog_Cancel_34}, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-												 0);
-		// If user clicked 'Cancel' or closed dialog, return false
-		int selectedButton = dialog.open();
-		if ((selectedButton < 0) || (selectedButton == 2)) {
-			return false;
-		}
-		
-		// If they hit 'Yes', save the working copy 
-		if (selectedButton == 0) {
-			// Turn off auto select if prompting to save changes. The user
-			// has made another selection and we don't want a 'rename' to
-			// cause an auto-select.
-			if (fLaunchConfigurationView != null) {
-				fLaunchConfigurationView.setAutoSelect(false);
-			}
-			getTabViewer().handleApplyPressed();
-			if (fLaunchConfigurationView != null) {
-				fLaunchConfigurationView.setAutoSelect(true);
-			}
-		}
-		
-		return true;
-	}
-	
-	/**
-	 * Create and return a dialog that asks the user whether they want to discard
-	 * unsaved changes.  Return <code>true</code> if they chose to discard changes,
-	 * <code>false</code> otherwise.
-	 */
-	private boolean showDiscardChangesDialog() {
-		StringBuffer buffer = new StringBuffer(MessageFormat.format(LaunchConfigurationsMessages.LaunchConfigurationDialog_The_configuration___35, new String[]{getTabViewer().getWorkingCopy().getName()})); //$NON-NLS-1$
-		buffer.append(getTabViewer().getErrorMesssage());
-		buffer.append(LaunchConfigurationsMessages.LaunchConfigurationDialog_Do_you_wish_to_discard_changes_37); //$NON-NLS-1$
-		MessageDialog dialog = new MessageDialog(getShell(), 
-												 LaunchConfigurationsMessages.LaunchConfigurationDialog_Discard_changes__38, //$NON-NLS-1$
-												 null,
-												 buffer.toString(),
-												 MessageDialog.QUESTION,
-												 new String[] {LaunchConfigurationsMessages.LaunchConfigurationDialog_Yes_32, LaunchConfigurationsMessages.LaunchConfigurationDialog_No_33}, //$NON-NLS-1$ //$NON-NLS-2$
-												 1);
-		// If user clicked 'Yes', return true
-		int selectedButton = dialog.open();
-		if (selectedButton == 0) {
-			return true;
-		}
-		return false;
-	}
-			
-	/**
-	 * Notification the 'Close' button has been pressed.
-	 */
-	protected void handleClosePressed() {
-		if (canDiscardCurrentConfig()) {
-			cancelPressed();
-		}
-	}
-	
-	/**
-	 * Notification the 'launch' button has been pressed.
-	 * Save and launch.
-	 */
-	protected void handleLaunchPressed() {
-		ILaunchConfiguration config = getTabViewer().getOriginal(); 
-		if (getTabViewer().isDirty()) {
-			getTabViewer().handleApplyPressed();
-			config = getTabViewer().getOriginal();
-		}
-		String mode = getMode();
-		close();
-		DebugUITools.launch(config, mode);
-	}
-	
-	/***************************************************************************************
-	 * 
-	 * ProgressMonitor & IRunnableContext related methods
-	 * 
-	 ***************************************************************************************/
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.operation.IRunnableContext#run(boolean, boolean, org.eclipse.jface.operation.IRunnableWithProgress)
-	 */
-	public void run(boolean fork, boolean cancelable, IRunnableWithProgress runnable) throws InvocationTargetException, InterruptedException {
-		if (isVisible()) {
-			// The operation can only be canceled if it is executed in a separate thread.
-			// Otherwise the UI is blocked anyway.
-			Object state = aboutToStart();
-			fActiveRunningOperations++;
-			try {
-				ModalContext.run(runnable, fork, fProgressMonitorPart, getShell().getDisplay());
-			} finally {
-				fActiveRunningOperations--;
-				stopped(state);
-			}
-		} else {
-			PlatformUI.getWorkbench().getProgressService().run(fork, cancelable, runnable);
-		}
-	}
-	
-	/**
-	 * About to start a long running operation triggered through
-	 * the dialog. Shows the progress monitor and disables the dialog's
-	 * buttons and controls.
-	 *
-	 * @return the saved UI state
-	 */
-	private Object aboutToStart() {
-		Map savedState = null;
-		if (getShell() != null) {
-			// Save focus control
-			Control focusControl = getShell().getDisplay().getFocusControl();
-			if (focusControl != null && focusControl.getShell() != getShell()) {
-				focusControl = null;
-			}
-			
-			// Set the busy cursor to all shells.
-			Display d = getShell().getDisplay();
-			waitCursor = new Cursor(d, SWT.CURSOR_WAIT);
-			setDisplayCursor(waitCursor);
-					
-			// Set the arrow cursor to the cancel component.
-			arrowCursor= new Cursor(d, SWT.CURSOR_ARROW);
-			getProgressMonitorCancelButton().setCursor(arrowCursor);
-	
-			// Deactivate shell
-			savedState = saveUIState();
-			if (focusControl != null) {
-				savedState.put(FOCUS_CONTROL, focusControl);
-			}
-				
-			// Attach the progress monitor part to the cancel button
-			getProgressMonitorCancelButton().setEnabled(true);
-			getProgressMonitorPart().attachToCancelComponent(getProgressMonitorCancelButton());
-			getProgressMonitorPart().getParent().setVisible(true);
-			getProgressMonitorCancelButton().setFocus();
-		}
-		return savedState;
-	}
-
-	/**
-	 * A long running operation triggered through the dialog
-	 * was stopped either by user input or by normal end.
-	 * Hides the progress monitor and restores the enable state
-	 * of the dialog's buttons and controls.
-	 *
-	 * @param savedState the saved UI state as returned by <code>aboutToStart</code>
-	 * @see #aboutToStart
-	 */
-	private void stopped(Object savedState) {
-		if (getShell() != null) {
-			getProgressMonitorPart().getParent().setVisible(false);
-			getProgressMonitorPart().removeFromCancelComponent(getProgressMonitorCancelButton());
-			Map state = (Map)savedState;
-			restoreUIState(state);
-	
-			setDisplayCursor(null);	
-			waitCursor.dispose();
-			waitCursor = null;
-			arrowCursor.dispose();
-			arrowCursor = null;
-			Control focusControl = (Control)state.get(FOCUS_CONTROL);
-			if (focusControl != null) {
-				focusControl.setFocus();
-			}
-		}
-	}
-
-	/**
-	 * Captures and returns the enabled/disabled state of the wizard dialog's
-	 * buttons and the tree of controls for the currently showing page. All
-	 * these controls are disabled in the process, with the possible excepton of
-	 * the Cancel button.
-	 *
-	 * @return a map containing the saved state suitable for restoring later
-	 *   with <code>restoreUIState</code>
-	 * @see #restoreUIState
-	 */
-	private Map saveUIState() {
-		Map savedState= new HashMap(4);
-		saveEnableStateAndSet(getButton(ID_LAUNCH_BUTTON), savedState, "launch", false);//$NON-NLS-1$
-		saveEnableStateAndSet(getButton(ID_CLOSE_BUTTON), savedState, "close", false);//$NON-NLS-1$
-		if (getSelectionArea() != null) {
-			savedState.put("selectionarea", ControlEnableState.disable(getSelectionArea()));//$NON-NLS-1$
-		}
-		savedState.put("editarea", ControlEnableState.disable(getEditArea()));//$NON-NLS-1$
-		return savedState;
-	}
-
-	/**
-	 * Saves the enabled/disabled state of the given control in the
-	 * given map, which must be modifiable.
-	 *
-	 * @param w the control, or <code>null</code> if none
-	 * @param h the map (key type: <code>String</code>, element type:
-	 *   <code>Boolean</code>)
-	 * @param key the key
-	 * @param enabled <code>true</code> to enable the control, 
-	 *   and <code>false</code> to disable it
-	 * @see #restoreEnableStateAndSet
-	 */
-	private void saveEnableStateAndSet(Control w, Map h, String key, boolean enabled) {
-		if (w != null) {
-			h.put(key, new Boolean(w.isEnabled()));
-			w.setEnabled(enabled);
-		}
-	}
-
-	/**
-	 * Restores the enabled/disabled state of the wizard dialog's
-	 * buttons and the tree of controls for the currently showing page.
-	 *
-	 * @param state a map containing the saved state as returned by 
-	 *   <code>saveUIState</code>
-	 * @see #saveUIState
-	 */
-	private void restoreUIState(Map state) {
-		restoreEnableState(getButton(ID_LAUNCH_BUTTON), state, "launch");//$NON-NLS-1$
-		restoreEnableState(getButton(ID_CLOSE_BUTTON), state, "close");//$NON-NLS-1$
-		ControlEnableState treeState = (ControlEnableState) state.get("selectionarea");//$NON-NLS-1$
-		if (treeState != null) {
-			treeState.restore();
-		}
-		ControlEnableState tabState = (ControlEnableState) state.get("editarea");//$NON-NLS-1$
-		tabState.restore();
-	}
-
-	/**
-	 * Restores the enabled/disabled state of the given control.
-	 *
-	 * @param w the control
-	 * @param h the map (key type: <code>String</code>, element type:
-	 *   <code>Boolean</code>)
-	 * @param key the key
-	 * @see #saveEnableStateAndSet
-	 */
-	private void restoreEnableState(Control w, Map h, String key) {
-		if (w != null) {
-			Boolean b = (Boolean) h.get(key);
-			if (b != null)
-				w.setEnabled(b.booleanValue());
-		}
-	}
-	
-	/**
-	 * Sets the given cursor for all shells currently active
-	 * for this window's display.
-	 *
-	 * @param cursor the cursor
-	 */
-	private void setDisplayCursor(Cursor cursor) {
-		Shell[] shells = getShell().getDisplay().getShells();
-		for (int i = 0; i < shells.length; i++) {
-			shells[i].setCursor(cursor);
-		}
-	}
-	
-	/**
-	 * Convenience method that replies whether the tab viewer is in a launchable state.
-	 */
-	private boolean canLaunch() {
-		return getTabViewer().canLaunch();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#updateButtons()
-	 */
-	public void updateButtons() {
-		// New & Delete buttons
- 		getButtonActionNew().setEnabled(getNewAction().isEnabled());
-		getButtonActionDelete().setEnabled(getDeleteAction().isEnabled());
-
-		// Launch button
-		getTabViewer().refresh();
-		getButton(ID_LAUNCH_BUTTON).setEnabled(canLaunch());
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#getActiveTab()
-	 */
-	public ILaunchConfigurationTab getActiveTab() {
-		return getTabViewer().getActiveTab();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#updateMessage()
-	 */
-	public void updateMessage() {
-		setErrorMessage(getTabViewer().getErrorMesssage());
-		setMessage(getTabViewer().getMessage());				
-	}
-	
-	/**
-	 * Returns the launch configuration selection area control.
-	 * 
-	 * @return control
-	 */
-	private Composite getSelectionArea() {
-		return fSelectionArea;
-	}
-
-	/**
-	 * Sets the launch configuration selection area control.
-	 * 
-	 * @param selectionArea control
-	 */
-	private void setSelectionArea(Composite selectionArea) {
-		fSelectionArea = selectionArea;
-	}
-
-	/**
-	 * Returns the launch configuration edit area control.
-	 * 
-	 * @return control
-	 */
-	protected Composite getEditArea() {
-		return fEditArea;
-	}
-
-	/**
-	 * Sets the launch configuration edit area control.
-	 * 
-	 * @param editArea control
-	 */
-	protected void setEditArea(Composite editArea) {
-		fEditArea = editArea;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#setName(java.lang.String)
-	 */
-	public void setName(String name) {
-		getTabViewer().setName(name);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#generateName(java.lang.String)
-	 */
-	public String generateName(String name) {
-		if (name == null) {
-			name = ""; //$NON-NLS-1$
-		}
-		return getLaunchManager().generateUniqueLaunchConfigurationNameFrom(name);
-	}
-	
-	/**
-	 * Returns the initial selection shown in this dialog when opened in
-	 * <code>LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_SELECTION</code> mode.
-	 */
-	private IStructuredSelection getInitialSelection() {
-		return fInitialSelection;
-	}
-	
-	/**
-	 * Sets the initial selection for the dialog when opened in 
-	 * <code>LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_SELECTION</code> mode.
-	 */
-	public void setInitialSelection(IStructuredSelection selection) {
-		fInitialSelection = selection;
-	}
-	
-	private void setButtonActionNew(ButtonAction action) {
-		fButtonActionNew = action;
-	}
-	
-	private ButtonAction getButtonActionNew() {
-		return fButtonActionNew;
-	}
-
-	private void setButtonActionDelete(ButtonAction action) {
-		fButtonActionDelete = action;
-	}
-	
-	private ButtonAction getButtonActionDelete() {
-		return fButtonActionDelete;
-	}
-
-	private void setTreeLabel(Label treeLabel) {
-		fTreeLabel = treeLabel;
-	}
-
-	private Label getTreeLabel() {
-		return fTreeLabel;
-	}
-
-	public static void setCurrentlyVisibleLaunchConfigurationDialog(ILaunchConfigurationDialog dialog) {
-		fgCurrentlyVisibleLaunchConfigurationDialog = dialog;
-	}
-
-	public static ILaunchConfigurationDialog getCurrentlyVisibleLaunchConfigurationDialog() {
-		return fgCurrentlyVisibleLaunchConfigurationDialog;
-	}
-
-	/**
-	 * Extension of <code>Action</code> that manages a <code>Button</code>
-	 * widget.  This allows common handling for actions that must appear in
-	 * a pop-up menu and also as a (non-toolbar) button in the UI.
-	 */
-	private abstract class ButtonAction extends Action {
-		
-		protected Button fButton;
-		
-		/**
-		 * Construct a ButtonAction handler.  All details of the specified
-		 * <code>Button</code>'s layout and appearance should be handled 
-		 * external to this class.
-		 */
-		public ButtonAction(String text, Button button) {
-			super(text);
-			fButton = button;
-			if (fButton != null) {
-				fButton.addSelectionListener(new SelectionAdapter() {
-					public void widgetSelected(SelectionEvent evt) {
-						ButtonAction.this.run();
-					}
-				});
-			}
-		}
-		
-		public Button getButton() {
-			return fButton;
-		}
-		
-		/**
-		 * @see IAction#setEnabled(boolean)
-		 */
-		public void setEnabled(boolean enabled) {
-			super.setEnabled(enabled);
-			if (fButton != null) {
-				fButton.setEnabled(enabled);
-			}
-		}
-	}
-	
-	/**
-	 * Handler for creating a new configuration.
-	 */
-	private class ButtonActionNew extends ButtonAction {
-		
-		public ButtonActionNew(String text, Button button) {
-			super(text, button);
-		}
-		
-		public void run() {
-			getNewAction().run();
-            getTabViewer().setFocusOnName();
-		}
-	}
-
-	/**
-	 * Handler for deleting a configuration.
-	 */
-	private class ButtonActionDelete extends ButtonAction {
-		
-		public ButtonActionDelete(String text, Button button) {
-			super(text, button);
-		}
-		
-		public void run() {
-			getDeleteAction().run();
-		}
-	}
-	
-	private class DoubleClickAction extends Action {
-		/**
-		 * @see org.eclipse.jface.action.IAction#run()
-		 */
-		public void run() {
-			IStructuredSelection selection = (IStructuredSelection)fLaunchConfigurationView.getViewer().getSelection();
-			Object target = selection.getFirstElement();
-			if (target instanceof ILaunchConfiguration) {
-				if (canLaunch()) {
-					handleLaunchPressed();
-				}
-			} else {
-				getNewAction().run();
-			}
-		}
-
-	}
-	
-	/**
-	 * Returns the banner image to display in the title area
-	 */
-	protected Image getBannerImage() {
-		if (fBannerImage == null) {
-			ImageDescriptor descriptor = getLaunchGroup().getBannerImageDescriptor(); 
-			if (descriptor != null) {
-				fBannerImage = descriptor.createImage();
-			} 		
-		}
-		return fBannerImage;
-	}
-	
-	/**
-	 * Sets the launch group to display.
-	 * 
-	 * @param group launch group
-	 */
-	protected void setLaunchGroup(LaunchGroupExtension group) {
-		fGroup = group;
-	}
-	
-	/**
-	 * Returns the launch group being displayed.
-	 * 
-	 * @return launch group
-	 */
-	public LaunchGroupExtension getLaunchGroup() {
-		return fGroup;
-	}
-	
-	protected AbstractLaunchConfigurationAction getNewAction() {
-		return (AbstractLaunchConfigurationAction)fLaunchConfigurationView.getAction(CreateLaunchConfigurationAction.ID_CREATE_ACTION);
-	}
-	
-	protected AbstractLaunchConfigurationAction getDeleteAction() {
-		return (AbstractLaunchConfigurationAction)fLaunchConfigurationView.getAction(DeleteLaunchConfigurationAction.ID_DELETE_ACTION);
-	}
-	
-	protected AbstractLaunchConfigurationAction getDuplicateAction() {
-		return (AbstractLaunchConfigurationAction)fLaunchConfigurationView.getAction(DuplicateLaunchConfigurationAction.ID_DUPLICATE_ACTION);
-	}		
-
-	/**
-	 * Returns the dialog settings for this dialog. Subclasses should override
-	 * <code>getDialogSettingsKey()</code>.
-	 * 
-	 * @return IDialogSettings
-	 */
-	protected IDialogSettings getDialogSettings() {
-		IDialogSettings settings = DebugUIPlugin.getDefault().getDialogSettings();
-		IDialogSettings section = settings.getSection(getDialogSettingsSectionName());
-		if (section == null) {
-			section = settings.addNewSection(getDialogSettingsSectionName());
-		} 
-		return section;
-	}
-	
-	/**
-	 * Returns the name of the section that this dialog stores its settings in
-	 * 
-	 * @return String
-	 */
-	protected String getDialogSettingsSectionName() {
-		return IDebugUIConstants.PLUGIN_ID + ".LAUNCH_CONFIGURATIONS_DIALOG_SECTION"; //$NON-NLS-1$
-	}
-	
-	/**
-	 * Sets the viewer used to display the tabs for a launch configuration.
-	 * 
-	 * @param viewer
-	 */
-	protected void setTabViewer(LaunchConfigurationTabGroupViewer viewer) {
-		fTabViewer = viewer;
-	}
-	
-	/**
-	 * Returns the viewer used to display the tabs for a launch configuration.
-	 * 
-	 * @return LaunchConfigurationTabGroupViewer
-	 */
-	protected LaunchConfigurationTabGroupViewer getTabViewer() {
-		return fTabViewer;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#initializeBounds()
-	 */
-	protected void initializeBounds() {
-		super.initializeBounds();
-		initializeSashForm();
-		ensureSelectionAreaWidth();
-		resize();			
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#create()
-	 */
-	public void create() {
-		super.create();
-		// bug 27011
-		if (getTabViewer().getInput() == null) {
-			getTabViewer().inputChanged(null);
-		}			
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#setActiveTab(org.eclipse.debug.ui.ILaunchConfigurationTab)
-	 */
-	public void setActiveTab(ILaunchConfigurationTab tab) {
-		getTabViewer().setActiveTab(tab);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationDialog#setActiveTab(int)
-	 */
-	public void setActiveTab(int index) {
-		getTabViewer().setActiveTab(index);
-	}
-	
-	/**
-	 * Sets the status to open the dialog on.
-	 * 
-	 * @param status the intial status for the dialog
-	 */
-	public void setInitialStatus(IStatus status) {
-		fInitialStatus = status;
-	}
-	
-	/**
-	 * Returns the status the dialog was opened on or <code>null</code> if none.
-	 * 
-	 * @return IStatus
-	 */
-	protected IStatus getInitialStatus() {
-		return fInitialStatus;
-	}
-
-	/**
-	 * Consult a status handler for the given status, if any. The status handler
-	 * is passed this launch config dialog as an argument.
-	 * 
-	 * @param status the status to be handled
-	 */
-	public void handleStatus(IStatus status) {		
-		IStatusHandler handler = DebugPlugin.getDefault().getStatusHandler(status);
-		if (handler != null) {
-			try {
-				handler.handleStatus(status, this);
-				return;
-			} catch (CoreException e) {
-				status = e.getStatus();
-			} 
-		}
-		// if no handler, or handler failed, display error/warning dialog
-		String title = null;
-		switch (status.getSeverity()) {
-			case IStatus.ERROR:
-				title = LaunchConfigurationsMessages.LaunchConfigurationsDialog_Error_1; //$NON-NLS-1$
-				break;
-			case IStatus.WARNING:
-				title = LaunchConfigurationsMessages.LaunchConfigurationsDialog_Warning_2; //$NON-NLS-1$
-				break;
-			default:
-				title = LaunchConfigurationsMessages.LaunchConfigurationsDialog_Information_3; //$NON-NLS-1$
-				break;
-		}
-		ErrorDialog.openError(getShell(), title, null, status);
-	}
-
-	public Object getSelectedPage() {
-		return getActiveTab();
-	}
-
-	public void addPageChangedListener(IPageChangedListener listener) {
-		changeListeners.add(listener);
-	}
-
-	public void removePageChangedListener(IPageChangedListener listener) {
-		changeListeners.remove(listener);
-	}
-
-	/**
-     * Notifies any selection changed listeners that the selected page
-     * has changed.
-     * Only listeners registered at the time this method is called are notified.
-     *
-     * @param event a selection changed event
-     *
-     * @see IPageChangedListener#pageChanged
-     */
-    protected void firePageChanged(final PageChangedEvent event) {
-        Object[] listeners = changeListeners.getListeners();
-        for (int i = 0; i < listeners.length; ++i) {
-            final IPageChangedListener l = (IPageChangedListener) listeners[i];
-            Platform.run(new SafeRunnable() {
-                public void run() {
-                    l.pageChanged(event);
-                }
-            });
-        }
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.java
deleted file mode 100644
index 1fdee80..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.osgi.util.NLS;
-
-public class LaunchConfigurationsMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsMessages";//$NON-NLS-1$
-
-	public static String CommonTab__Browse_6;
-	public static String CommonTab__Common_15;
-	public static String CommonTab_Display_in_favorites_menu__10;
-	public static String CommonTab_Invalid_shared_configuration_location_14;
-	public static String CommonTab_L_ocal_3;
-	public static String CommonTab_S_hared_4;
-	public static String CommonTab_Select_a_location_for_the_launch_configuration_13;
-	public static String CommonTab_Cannot_save_launch_configuration_in_a_closed_project__1;
-	public static String CommonTab_10;
-	public static String CommonTab_11;
-	public static String CommonTab_12;
-	public static String CommonTab_13;
-	public static String CommonTab_14;
-	public static String CommonTab_0;
-	public static String CommonTab_1;
-	public static String CommonTab_2;
-	public static String CommonTab_3;
-	public static String CommonTab_4;
-	public static String CommonTab_5;
-	public static String CommonTab_6;
-	public static String CommonTab_7;
-	public static String CommonTab_8;
-	public static String CommonTab_9;
-
-	public static String CompileErrorPromptStatusHandler_0;
-	public static String CompileErrorPromptStatusHandler_1;
-	public static String CompileErrorPromptStatusHandler_2;
-
-	public static String EnvironmentTab_22;
-
-	public static String LaunchConfigurationDialog__Apply_17;
-	public static String LaunchConfigurationDialog__Name__16;
-	public static String LaunchConfigurationDialog_An_exception_occurred_while_retrieving_launch_configurations_20;
-	public static String LaunchConfigurationDialog_Cancel_34;
-	public static String LaunchConfigurationTabGroupViewer_0;
-	public static String LaunchConfigurationDialog_Create__manage__and_run_launch_configurations_8;
-	public static String LaunchConfigurationDialog_Dele_te_14;
-	public static String LaunchConfigurationDialog_Discard_changes__38;
-	public static String LaunchConfigurationDialog_Do_you_wish_to_discard_changes_37;
-	public static String LaunchConfigurationDialog_Error_19;
-	public static String LaunchConfigurationDialog_Exception_occurred_creating_launch_configuration_tabs_27;
-	public static String LaunchConfigurationDialog_Exception_occurred_while_saving_launch_configuration_47;
-	public static String LaunchConfigurationDialog_Launch_configuration_already_exists_with_this_name_12;
-	public static String LaunchConfigurationDialog_Launch_Configuration_Error_46;
-	public static String LaunchConfigurationDialog_Launch_Configurations_18;
-	public static String LaunchConfigurationDialog_Name_required_for_launch_configuration_11;
-	public static String LaunchConfigurationDialog_Ne_w_13;
-	public static String LaunchConfigurationDialog_No_33;
-	public static String LaunchConfigurationDialog_Ready_to_launch_2;
-	public static String LaunchConfigurationDialog_Save_changes__31;
-	public static String LaunchConfigurationDialog_The_configuration___29;
-	public static String LaunchConfigurationDialog_The_configuration___35;
-	public static String LaunchConfigurationDialog_unspecified_28;
-	public static String LaunchConfigurationDialog_Yes_32;
-	public static String LaunchConfigurationDialog_Do_you_wish_to_delete_the_selected_launch_configurations__1;
-	public static String LaunchConfigurationDialog_Do_you_wish_to_delete_the_selected_launch_configuration__2;
-	public static String LaunchConfigurationDialog_Confirm_Launch_Configuration_Deletion_3;
-	public static String LaunchConfigurationDialog_Close_1;
-	public static String LaunchConfigurationDialog_Revert_2;
-	public static String LaunchConfigurationDialog_Cancel_3;
-	public static String LaunchConfigurationDialog_Launch_Con_figurations__1;
-	public static String LaunchConfigurationsDialog_Error_1;
-	public static String LaunchConfigurationsDialog_Warning_2;
-	public static String LaunchConfigurationsDialog_Information_3;
-	public static String LaunchConfigurationsDialog_45;
-	public static String LaunchConfigurationManager_0;
-
-	public static String LaunchConfigurationPresentationManager_Launch_configuration_tab_group_extension__0__does_not_specify_launch_configuration_type_1;
-	public static String LaunchConfigurationPresentationManager_Launch_configuration_tab_group_extension__0__refers_to_non_existant_launch_configuration_type__1__2;
-	public static String LaunchConfigurationPresentationManager_No_tab_group_defined_for_launch_configuration_type__0__3;
-
-	public static String PerspectiveManager_Error_1;
-	public static String PerspectiveManager_Unable_to_switch_perpsectives_as_specified_by_launch___0__4;
-	public static String PerspectiveManager_Unable_to_switch_to_perspective___0__2;
-	public static String PerspectiveManager_9;
-
-	public static String LaunchShortcutExtension_Error_4;
-	public static String LaunchShortcutExtension_Unable_to_use_launch_shortcut_5;
-
-	public static String LaunchConfigurationPropertiesDialog_Edit_launch_configuration_properties_1;
-	public static String LaunchConfigurationPropertiesDialog_Properties_for__0__2;
-
-	public static String LaunchConfigurationDialog_Modify_attributes_and_launch__1;
-
-	public static String LaunchConfigurationTabGroupViewer_No_tabs_defined_for_launch_configuration_type__0__1;
-
-	public static String DuplicateLaunchConfigurationAction__Duplicate_1;
-
-	public static String DeleteLaunchConfigurationAction_Dele_te_1;
-
-	public static String CreateLaunchConfigurationAction_Ne_w_1;
-	public static String CreateLaunchConfigurationAction_New_configuration_2;
-
-	public static String EnvironmentTab_Variable_1;
-	public static String EnvironmentTab_Value_2;
-	public static String EnvironmentTab_Environment_variables_to_set__3;
-	public static String EnvironmentTab_New_4;
-	public static String EnvironmentTab_Edit_5;
-	public static String EnvironmentTab_Remove_6;
-	public static String EnvironmentTab_Environment_7;
-	public static String EnvironmentTab_8;
-	public static String EnvironmentTab_9;
-	public static String EnvironmentTab_11;
-	public static String EnvironmentTab_12;
-	public static String EnvironmentTab_13;
-	public static String EnvironmentTab_16;
-	public static String EnvironmentTab_17;
-	public static String EnvironmentTab_18;
-	public static String EnvironmentTab_19;
-	public static String EnvironmentTab_20;
-
-	public static String PerspectivesTab_0;
-	public static String PerspectivesTab_1;
-	public static String PerspectivesTab_2;
-	public static String PerspectivesTab_3;
-	public static String PerspectivesTab_7;
-
-	public static String FavoritesDialog_1;
-	public static String FavoritesDialog_2;
-	public static String FavoritesDialog_3;
-	public static String FavoritesDialog_4;
-	public static String FavoritesDialog_5;
-	public static String FavoritesDialog_6;
-	public static String FavoritesDialog_7;
-	public static String FavoritesDialog_0;
-
-	public static String OrganizeFavoritesAction_0;
-	public static String PerspectiveManager_12;
-	public static String PerspectiveManager_13;
-	public static String PerspectiveManager_15;
-
-	public static String DebugModePromptStatusHandler_0;
-	public static String DebugModePromptStatusHandler_1;
-
-    public static String CommonTab_No_Encoding_Selected;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, LaunchConfigurationsMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.properties
deleted file mode 100644
index af03d56..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsMessages.properties
+++ /dev/null
@@ -1,145 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-CommonTab_No_Encoding_Selected=Console encoding not selected
-CommonTab__Browse_6=&Browse...
-CommonTab__Common_15=&Common
-CommonTab_Display_in_favorites_menu__10=Display in favor&ites menu
-CommonTab_Invalid_shared_configuration_location_14=Invalid shared configuration location
-CommonTab_L_ocal_3=L&ocal file
-CommonTab_S_hared_4=S&hared file:
-CommonTab_Select_a_location_for_the_launch_configuration_13=Select a location for the launch configuration
-CommonTab_Cannot_save_launch_configuration_in_a_closed_project__1=Cannot save launch configuration in a closed project.
-CommonTab_10=Launch in bac&kground
-CommonTab_11=A&ppend
-CommonTab_12=Browse Worksp&ace...
-CommonTab_13=Select a Resource:
-CommonTab_14=Select a resource to redirect output to:
-CommonTab_0=Save as
-CommonTab_1=Console Encoding
-CommonTab_2=Defa&ult ({0})
-CommonTab_3=Oth&er
-CommonTab_4=Standard Input and Output
-CommonTab_5=Allocate &Console (necessary for input)
-CommonTab_6=Fi&le:
-CommonTab_7=Browse File Syste&m...
-CommonTab_8=No file specified for process output
-CommonTab_9=Variable&s...
-
-CompileErrorPromptStatusHandler_0=Errors in Project
-CompileErrorPromptStatusHandler_1=Errors exist in a required project. Continue launch?
-CompileErrorPromptStatusHandler_2=Errors exist in required project(s): {0}.\nContinue launch?
-
-EnvironmentTab_22=New Environment Variable
-
-LaunchConfigurationDialog__Apply_17=Appl&y
-LaunchConfigurationDialog__Name__16=&Name:
-LaunchConfigurationDialog_An_exception_occurred_while_retrieving_launch_configurations_20=An exception occurred while retrieving launch configurations
-LaunchConfigurationDialog_Cancel_34=Cancel
-LaunchConfigurationTabGroupViewer_0={0} is an invalid character in launch configuration name {1}
-LaunchConfigurationDialog_Create__manage__and_run_launch_configurations_8=Create, manage, and run configurations
-LaunchConfigurationDialog_Dele_te_14=Dele&te
-LaunchConfigurationDialog_Discard_changes__38=Discard changes?
-LaunchConfigurationDialog_Do_you_wish_to_discard_changes_37=\nDo you wish to discard changes?\n
-LaunchConfigurationDialog_Error_19=Error
-LaunchConfigurationDialog_Exception_occurred_creating_launch_configuration_tabs_27=Exception occurred creating launch configuration tabs
-LaunchConfigurationDialog_Exception_occurred_while_saving_launch_configuration_47=Exception occurred while saving launch configuration
-LaunchConfigurationDialog_Launch_configuration_already_exists_with_this_name_12=Launch configuration already exists with this name
-LaunchConfigurationDialog_Launch_Configuration_Error_46=Launch Configuration Error
-LaunchConfigurationDialog_Launch_Configurations_18=Launch Configurations
-LaunchConfigurationDialog_Name_required_for_launch_configuration_11=Name required for launch configuration
-LaunchConfigurationDialog_Ne_w_13=Ne&w
-LaunchConfigurationDialog_No_33=No
-LaunchConfigurationDialog_Ready_to_launch_2=Ready to launch
-LaunchConfigurationDialog_Save_changes__31=Save changes?
-LaunchConfigurationDialog_The_configuration___29=The configuration "{0}" has unsaved changes.  Do you wish to save them?
-LaunchConfigurationDialog_The_configuration___35=The configuration "{0}" has unsaved changes that CANNOT be saved because of the following error:\n
-LaunchConfigurationDialog_unspecified_28=unspecified
-LaunchConfigurationDialog_Yes_32=Yes
-LaunchConfigurationDialog_Do_you_wish_to_delete_the_selected_launch_configurations__1=Do you wish to delete the selected launch configurations?
-LaunchConfigurationDialog_Do_you_wish_to_delete_the_selected_launch_configuration__2=Do you wish to delete the selected launch configuration?
-LaunchConfigurationDialog_Confirm_Launch_Configuration_Deletion_3=Confirm Launch Configuration Deletion
-LaunchConfigurationDialog_Close_1=Close
-LaunchConfigurationDialog_Revert_2=Re&vert
-LaunchConfigurationDialog_Cancel_3=Cance&l
-LaunchConfigurationDialog_Launch_Con_figurations__1=Con&figurations:
-LaunchConfigurationsDialog_Error_1=Error
-LaunchConfigurationsDialog_Warning_2=Warning
-LaunchConfigurationsDialog_Information_3=Information
-LaunchConfigurationsDialog_45=Perspective settings for {0} have unsaved changes. Do you wish to save them?
-LaunchConfigurationManager_0=Remove Terminated Launches
-
-LaunchConfigurationPresentationManager_Launch_configuration_tab_group_extension__0__does_not_specify_launch_configuration_type_1=Launch configuration tab group extension {0} does not specify launch configuration type
-LaunchConfigurationPresentationManager_Launch_configuration_tab_group_extension__0__refers_to_non_existant_launch_configuration_type__1__2=Launch configuration tab group extension {0} refers to non-existent launch configuration type {1}
-LaunchConfigurationPresentationManager_No_tab_group_defined_for_launch_configuration_type__0__3=No tab group defined for launch configuration type {0}
-
-PerspectiveManager_Error_1=Error
-PerspectiveManager_Unable_to_switch_perpsectives_as_specified_by_launch___0__4=Unable to open perspectives as specified by launch: {0}
-PerspectiveManager_Unable_to_switch_to_perspective___0__2=Unable to open perspective: {0}
-PerspectiveManager_9=Exception occurred while generating launch perspectives preference XML
-
-LaunchShortcutExtension_Error_4=Error
-LaunchShortcutExtension_Unable_to_use_launch_shortcut_5=Unable to use launch shortcut
-
-LaunchConfigurationPropertiesDialog_Edit_launch_configuration_properties_1=Edit launch configuration properties
-LaunchConfigurationPropertiesDialog_Properties_for__0__2=Properties for {0}
-
-LaunchConfigurationDialog_Modify_attributes_and_launch__1=Modify attributes and launch.
-
-LaunchConfigurationTabGroupViewer_No_tabs_defined_for_launch_configuration_type__0__1=No tabs defined for launch configuration type {0}
-
-DuplicateLaunchConfigurationAction__Duplicate_1=&Duplicate
-
-DeleteLaunchConfigurationAction_Dele_te_1=Dele&te
-
-CreateLaunchConfigurationAction_Ne_w_1=Ne&w
-CreateLaunchConfigurationAction_New_configuration_2=New_configuration
-
-EnvironmentTab_Variable_1=Variable
-EnvironmentTab_Value_2=Value
-EnvironmentTab_Environment_variables_to_set__3=Environment variables to &set:
-EnvironmentTab_New_4=N&ew...
-EnvironmentTab_Edit_5=E&dit...
-EnvironmentTab_Remove_6=&Remove
-EnvironmentTab_Environment_7=Environment
-EnvironmentTab_8=&Name:
-EnvironmentTab_9=&Value:
-EnvironmentTab_11=Edit Environment Variable
-EnvironmentTab_12=Overwrite variable?
-EnvironmentTab_13=A variable named {0} already exists. Overwrite?
-EnvironmentTab_16=&Append environment to native environment
-EnvironmentTab_17=Re&place native environment with specified environment
-EnvironmentTab_18=Se&lect...
-EnvironmentTab_19=Select &environment variables to add:
-EnvironmentTab_20=Select Environment Variables
-
-PerspectivesTab_0=These settings associate a perspective with {0} launch configurations. A different perspective may be associated with each supported launch mode, and can optionally be opened when a configuration is launched or when an application suspends via the Debug preferences. To indicate that a perspective should not be opened, select "None".
-PerspectivesTab_1=None
-PerspectivesTab_2={0}:
-PerspectivesTab_3=R&estore Defaults
-PerspectivesTab_7=Perspectives
-
-FavoritesDialog_1=Organize {0} Favorites
-FavoritesDialog_2=Fa&vorites:
-FavoritesDialog_3=Ad&d...
-FavoritesDialog_4=Re&move
-FavoritesDialog_5=U&p
-FavoritesDialog_6=Do&wn
-FavoritesDialog_7=Select &Launch Configurations:
-FavoritesDialog_0=Add {0} Favorites
-
-OrganizeFavoritesAction_0=Organize Fa&vorites...
-PerspectiveManager_12=Confirm Perspective Switch
-PerspectiveManager_13=This kind of launch is configured to open the {0} perspective when it suspends. Do you want to open this perspective now?
-PerspectiveManager_15=This kind of launch is associated with the {0} perspective. Do you want to open this perspective now?
-
-DebugModePromptStatusHandler_0=Breakpoints in Workspace
-DebugModePromptStatusHandler_1=There are breakpoints enabled in the workspace. Would you rather launch in debug mode?
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsViewer.java
deleted file mode 100644
index 7ae46b1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchConfigurationsViewer.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * A viewer that displays launch configurations of a specific type, filtered by
- * workbench capabilities and PRIVATE attribute.
- * 
- * @since 3.1
- */
-public class LaunchConfigurationsViewer extends TableViewer {
-	
-	class ContentProvider implements IStructuredContentProvider {
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			if (inputElement instanceof ILaunchConfigurationType) {
-				try {
-					return DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurations((ILaunchConfigurationType) inputElement);
-				} catch (CoreException e) {
-				}
-			}
-			return new Object[0];
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-		
-	}
-
-	/**
-	 * Constructs a viewer to display launch configuration types
-	 * 
-	 * @param parent composite this viewer is contained in
-	 * @param launchGroup the launch group being displayed
-	 */
-	public LaunchConfigurationsViewer(Composite parent, ILaunchGroup launchGroup) {
-		super(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
-		setContentProvider(new ContentProvider());
-		setLabelProvider(DebugUITools.newDebugModelPresentation());
-		setSorter(new ViewerSorter());
-		addFilter(new LaunchGroupFilter(launchGroup));
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupExtension.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupExtension.java
deleted file mode 100644
index 5023330..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupExtension.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
- 
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.osgi.framework.Bundle;
-
-
-/**
- * Proxy to a launch group extension
- */
-public class LaunchGroupExtension implements ILaunchGroup {
-	
-	/**
-	 * The configuration element defining this launch group.
-	 */
-	private IConfigurationElement fConfig;
-	
-	/**
-	 * The image for this group
-	 */
-	private ImageDescriptor fImageDescriptor;
-	
-	/**
-	 * The banner image for this group
-	 */
-	private ImageDescriptor fBannerImageDescriptor;
-	
-	/**
-	 * Constructs a launch group extension based on the given configuration
-	 * element
-	 * 
-	 * @param element the configuration element defining the
-	 *  attribtues of this launch group extension
-	 * @return a new launch group extension
-	 */
-	public LaunchGroupExtension(IConfigurationElement element) {
-		setConfigurationElement(element);
-	}
-	
-	/**
-	 * Sets the configuration element that defines the attributes
-	 * for this launch group extension.
-	 * 
-	 * @param element configuration element
-	 */
-	private void setConfigurationElement(IConfigurationElement element) {
-		fConfig = element;
-	}
-	
-	/**
-	 * Returns the configuration element that defines the attributes
-	 * for this launch group extension.
-	 * 
-	 * @param configuration element that defines the attributes
-	 *  for this launch group extension
-	 */
-	protected IConfigurationElement getConfigurationElement() {
-		return fConfig;
-	}
-	
-	/**
-	 * Returns the image for this launch group, or <code>null</code> if none
-	 * 
-	 * @return the image for this launch group, or <code>null</code> if none
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		if (fImageDescriptor == null) {
-			fImageDescriptor = createImageDescriptor("image"); //$NON-NLS-1$
-		}
-		return fImageDescriptor;
-	}
-	
-	/**
-	 * Returns the banner image for this launch group, or <code>null</code> if
-	 * none
-	 * 
-	 * @return the banner image for this launch group, or <code>null</code> if
-	 * none
-	 */
-	public ImageDescriptor getBannerImageDescriptor() {
-		if (fBannerImageDescriptor == null) {
-			fBannerImageDescriptor = createImageDescriptor("bannerImage"); //$NON-NLS-1$
-		}
-		return fBannerImageDescriptor;
-	}	
-	
-	/**
-	 * Returns the label for this launch group
-	 * 
-	 * @return the label for this launch group
-	 */
-	public String getLabel() {
-		return getConfigurationElement().getAttribute("label"); //$NON-NLS-1$
-	}	
-		
-	/**
-	 * Returns the id for this launch group
-	 * 
-	 * @return the id for this launch group
-	 */
-	public String getIdentifier() {
-		return getConfigurationElement().getAttribute("id"); //$NON-NLS-1$
-	}	
-	
-	/**
-	 * Returns the category for this launch group, possibly <code>null</code>
-	 * 
-	 * @return the category for this launch group, possibly <code>null</code>
-	 */
-	public String getCategory() {
-		return getConfigurationElement().getAttribute("category"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns the mode for this launch group
-	 * 
-	 * @return the mode for this launch group
-	 */
-	public String getMode() {
-		return getConfigurationElement().getAttribute("mode"); //$NON-NLS-1$
-	}					
-	
-	/**
-	 * Creates an image descriptor based on the given attribute name
-	 * 
-	 * @param attribute
-	 * @return ImageDescriptor
-	 */
-	protected ImageDescriptor createImageDescriptor(String attribute) {
-		Bundle bundle = Platform.getBundle(getConfigurationElement().getNamespace());
-		URL iconURL = bundle.getEntry("/"); //$NON-NLS-1$
-		String iconPath = getConfigurationElement().getAttribute(attribute);
-		if (iconPath != null) {
-			try {
-				iconURL = new URL(iconURL, iconPath);
-				return ImageDescriptor.createFromURL(iconURL);
-			} catch (MalformedURLException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns whether this launch group is public
-	 *  
-	 * @return boolean
-	 */
-	public boolean isPublic() {
-		String string = getConfigurationElement().getAttribute("public"); //$NON-NLS-1$
-		if (string == null) {
-			return true;
-		}
-		return string.equals("true"); //$NON-NLS-1$
-	}
-
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupFilter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupFilter.java
deleted file mode 100644
index b97b23c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchGroupFilter.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-
-/**
- * Displays launch configurations for a specific launch group
- */
-public class LaunchGroupFilter extends ViewerFilter {
-	
-	private ILaunchGroup fGroup;
-
-	/**
-	 * Constructor for ExternalToolsLaunchConfigurationFilter.
-	 */
-	public LaunchGroupFilter(ILaunchGroup groupExtension) {
-		super();
-		fGroup = groupExtension;
-	}
-
-	/**
-	 * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-	 */
-	public boolean select(
-		Viewer viewer,
-		Object parentElement,
-		Object element) {
-			ILaunchConfigurationType type = null;
-			ILaunchConfiguration config = null;
-			if (parentElement instanceof ILaunchConfigurationType) {
-				type = (ILaunchConfigurationType)parentElement;
-			}
-			if (element instanceof ILaunchConfigurationType) {
-				type = (ILaunchConfigurationType)element;
-			}
-			if (element instanceof ILaunchConfiguration) {
-				config = (ILaunchConfiguration)element;
-				try {
-					type = config.getType();
-				} catch (CoreException e) {
-				}
-			}
-			boolean priv = false;
-			if (config != null) {
-				try {
-					priv = config.getAttribute(IDebugUIConstants.ATTR_PRIVATE, false);
-				} catch (CoreException e) {
-				}
-			}
-			if (type != null) {
-				return !priv && type.supportsMode(fGroup.getMode()) && equalCategories(type.getCategory(), fGroup.getCategory()) && !WorkbenchActivityHelper.filterItem(new LaunchConfigurationTypeContribution(type));
-			}
-			return false;
-	}
-	
-	/**
-	 * Returns whether the given categories are equal.
-	 * 
-	 * @param c1 category identifier or <code>null</code>
-	 * @param c2 category identifier or <code>null</code>
-	 * @return boolean
-	 */
-	private boolean equalCategories(String c1, String c2) {
-		if (c1 == null || c2 == null) {
-			return c1 == c2;
-		}
-		return c1.equals(c2);
-	} 
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchHistory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchHistory.java
deleted file mode 100644
index efa6741..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchHistory.java
+++ /dev/null
@@ -1,434 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationListener;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ILaunchGroup;
-
-/**
- * A history of launches and favorites for a launch group
- */
-public class LaunchHistory implements ILaunchListener, ILaunchConfigurationListener {
-
-	private ILaunchGroup fGroup;
-	
-	private List fHistory = new ArrayList();
-	private List fFavorites = new ArrayList();
-	private boolean fDirty = false;
-	private ILaunchConfiguration fRecentLaunch;
-	
-	private static List launchHistoryInstances= new ArrayList();
-	
-	/**
-	 * Creates a new launch history for the given launch group
-	 */
-	public LaunchHistory(ILaunchGroup group) {
-		fGroup = group;
-		ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager(); 
-		manager.addLaunchListener(this);
-		manager.addLaunchConfigurationListener(this);
-		launchHistoryInstances.add(this);
-	}
-	
-	/**
-	 * Disposes this history
-	 */
-	public void dispose() {
-		ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager();
-		manager.removeLaunchListener(this);
-		manager.removeLaunchConfigurationListener(this);
-		launchHistoryInstances.remove(this);
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchListener#launchAdded(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchAdded(ILaunch launch) {
-		ILaunchConfiguration configuration = launch.getLaunchConfiguration();
-		if (configuration != null && !configuration.isWorkingCopy() && accepts(configuration)) {
-			addHistory(configuration, true);
-			setRecentLaunch(configuration);
-		}
-	}
-	
-	/**
-	 * Adds the givev configuration to this hisotry
-	 * 
-	 * @param configuration
-	 * @param prepend whether the configuration should be added to the beginning of
-	 * the history list
-	 */
-	protected void addHistory(ILaunchConfiguration configuration, boolean prepend) {
-		clearDirty();
-		if (fFavorites.contains(configuration)) {
-			return;
-		}
-		// might be reconstructing history
-		if (checkIfFavorite(configuration)) {
-			return;
-		}
-		int index = fHistory.indexOf(configuration);
-		if (index < 0) {
-			if (prepend) {
-				fHistory.add(0, configuration);
-			} else {
-				fHistory.add(configuration);
-			}
-			resizeHistory();
-			setDirty();
-		} else if (index > 0) {
-			// move to first
-			for (int i = index; i > 0; i--) {
-				fHistory.set(i, fHistory.get(i -1));
-			}
-			fHistory.set(0, configuration);
-			setDirty();
-		}	
-		save();
-	}
-	
-	/**
-	 * Saves if dirty
-	 */
-	private void save() {
-		if (isDirty()) {
-			try {
-				DebugUIPlugin.getDefault().getLaunchConfigurationManager().persistLaunchHistory();
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			} catch (IOException e) {
-				DebugUIPlugin.log(e);
-			} catch (ParserConfigurationException e) {
-				DebugUIPlugin.log(e);
-			} catch (TransformerException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-	}
-	
-	/**
-	 * Clears the dirty flag
-	 */
-	private void clearDirty() {
-		fDirty = false;
-	}
-	
-	/**
-	 * Sets the dirty flag
-	 */
-	private void setDirty() {
-		fDirty = true;
-	}
-	
-	/**
-	 * Returns the dirty state
-	 */
-	private boolean isDirty() {
-		return fDirty;
-	}	
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchListener#launchChanged(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchChanged(ILaunch launch) {
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchListener#launchRemoved(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchRemoved(ILaunch launch) {
-	}
-
-	/**
-	 * Returns the most recently launched configuration in this history, or
-	 * <code>null</code> if none.
-	 * 
-	 * @return the most recently launched configuration in this history, or
-	 * <code>null</code> if none 
-	 */
-	public ILaunchConfiguration getRecentLaunch() {
-		return fRecentLaunch;
-	}
-	
-	/**
-	 * Sets the most recently launched configuration in this history, or
-	 * <code>null</code> if none.
-	 */
-	protected void setRecentLaunch(ILaunchConfiguration configuration) {
-		if (accepts(configuration)) {
-			if (!configuration.equals(fRecentLaunch)) {
-				fRecentLaunch = configuration;
-				setDirty();
-				save();
-			}
-		}
-	}	
-	
-	/**
-	 * Returns the launch configuration in this history, in most recently
-	 * launched order.
-	 * 
-	 * @return launch history
-	 */
-	public ILaunchConfiguration[] getHistory() {
-		return (ILaunchConfiguration[])fHistory.toArray(new ILaunchConfiguration[fHistory.size()]);
-	}
-	
-	/**
-	 * Returns the favorite launch configurations in this history, in the order
-	 * they were created.
-	 * 
-	 * @return launch favorites
-	 */
-	public ILaunchConfiguration[] getFavorites() {
-		return (ILaunchConfiguration[])fFavorites.toArray(new ILaunchConfiguration[fFavorites.size()]);
-	}
-	
-	/**
-	 * Sets this container's favorites.
-	 * 
-	 * @param favorites
-	 */
-	public void setFavorites(ILaunchConfiguration[] favorites) {
-		fFavorites = new ArrayList(favorites.length);
-		for (int i = 0; i < favorites.length; i++) {
-			fFavorites.add(favorites[i]);
-		}
-		setDirty();
-		save();
-	}	
-	
-	/**
-	 * Adds the given configuration to the favorites list.
-	 * 
-	 * @param configuration
-	 */
-	public void addFavorite(ILaunchConfiguration configuration) {
-		clearDirty();
-		if (!fFavorites.contains(configuration)) {
-			fFavorites.add(configuration);
-			fHistory.remove(configuration);
-			setDirty();
-		}
-		save();
-	}
-	
-	/**
-	 * Returns the launch group associated with this history
-	 * 
-	 * @return group
-	 */
-	public ILaunchGroup getLaunchGroup() {
-		return fGroup;
-	}
-	
-	/**
-	 * Returns whether the given configruation is included in the group
-	 * associated with this launch history.
-	 * 
-	 * @param launch
-	 * @return boolean
-	 */
-	public boolean accepts(ILaunchConfiguration configuration) {
-		try {
-			if (!LaunchConfigurationManager.isVisible(configuration)) {
-				return false;
-			}
-			if (configuration.getType().supportsMode(getLaunchGroup().getMode())) {
-				String launchCategory = null;
-				launchCategory = configuration.getCategory();
-				String category = getLaunchGroup().getCategory();
-				if (launchCategory == null || category == null) {
-					return launchCategory == category;
-				}
-				return category.equals(launchCategory);
-			}
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}
-		return false;
-	}	
-	
-	/**
-	 * Notifies all launch histories that the launch history size has changed.
-	 */
-	public static void launchHistoryChanged() {
-		Iterator iter= launchHistoryInstances.iterator();
-		while (iter.hasNext()) {
-			LaunchHistory history= (LaunchHistory) iter.next();
-			history.resizeHistory();
-			history.save();			
-		}
-
-	}
-	
-	/**
-	 * The max history size has changed - remove any histories if current
-	 * collection is too long.
-	 */
-	protected void resizeHistory() {
-		int max = getMaxHistorySize();
-		while (fHistory.size() > max) {
-			fHistory.remove(fHistory.size() - 1);
-			setDirty();
-		}
-	}
-
-	/**
-	 * Returns the maximum number of entries allowed in this history
-	 * 
-	 * @return the maximum number of entries allowed in this history
-	 */
-	protected int getMaxHistorySize() {
-		return DebugUIPlugin.getDefault().getPreferenceStore().getInt(IDebugUIConstants.PREF_MAX_HISTORY_SIZE);
-	}
-	
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationAdded(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationAdded(ILaunchConfiguration configuration) {
-		ILaunchConfiguration movedFrom = DebugPlugin.getDefault().getLaunchManager().getMovedFrom(configuration);
-		if (movedFrom == null) {
-			checkIfFavorite(configuration);
-		} else {
-			String movedFromName= movedFrom.getName();
-			ILaunchConfiguration[] history = getHistory();
-			for (int i = 0; i < history.length; i++) {
-				if (history[i].getName().equals(movedFromName)) {
-					if (i == 0) {
-						fRecentLaunch= configuration;
-					}
-					setDirty();
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Adds the given config to the favorites list if it is a favorite, and
-	 * returns whether the config was added to the favorites list.
-	 * 
-	 * @param configuration
-	 * @return whether added to the favorites list
-	 */
-	protected boolean checkIfFavorite(ILaunchConfiguration configuration) {
-		// update favorites
-		if (configuration.isWorkingCopy()) {
-			return false;
-		}
-		try {
-			List favoriteGroups = configuration.getAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, (List)null);
-			if (favoriteGroups == null) {
-				// check deprecated attributes for backwards compatibility
-				String groupId = getLaunchGroup().getIdentifier();
-				boolean fav = false;
-				if (groupId.equals(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP)) {
-					fav = configuration.getAttribute(IDebugUIConstants.ATTR_DEBUG_FAVORITE, false);
-				} else if (groupId.equals(IDebugUIConstants.ID_RUN_LAUNCH_GROUP)) {
-					fav = configuration.getAttribute(IDebugUIConstants.ATTR_RUN_FAVORITE, false);
-				}
-				if (fav) {
-					addFavorite(configuration);
-					return true;
-				} 
-				removeFavorite(configuration);
-				return false;
-			} else if (favoriteGroups.contains(getLaunchGroup().getIdentifier())) {
-				addFavorite(configuration);
-				return true;
-			} else {
-				removeFavorite(configuration);
-				return false;
-			}
-		} catch (CoreException e) {
-		}		
-		return false;
-	}
-	
-	/**
-	 * Revmoves the given config from the favorites list, if needed.
-	 * 
-	 * @param configuration
-	 */
-	protected void removeFavorite(ILaunchConfiguration configuration) {
-		if (fFavorites.contains(configuration)) {
-			fFavorites.remove(configuration);
-			setDirty();
-			save();
-		}
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationChanged(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationChanged(ILaunchConfiguration configuration) {
-		checkIfFavorite(configuration);
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationRemoved(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationRemoved(ILaunchConfiguration configuration) {
-		boolean changed = false;
-		ILaunchConfiguration newConfig = DebugPlugin.getDefault().getLaunchManager().getMovedTo(configuration);
-		if (newConfig == null) {
-			// deleted
-			changed = fHistory.remove(configuration);
-			changed = fFavorites.remove(configuration) || changed;
-		} else {
-			// moved/renamed
-			int index = fHistory.indexOf(configuration);
-			if (index >= 0) {
-				fHistory.remove(index);
-				fHistory.add(index, newConfig);
-				changed = true;
-			} else {
-				index = fFavorites.indexOf(configuration);
-				if (index >= 0) {
-					fFavorites.remove(index);
-					fFavorites.add(index, newConfig);
-				}
-			}
-			checkIfFavorite(newConfig);
-		}
-		if (changed) {
-			setDirty();
-			if (configuration.equals(fRecentLaunch)) {
-				if (!fHistory.isEmpty()) {
-					fRecentLaunch = (ILaunchConfiguration)fHistory.get(0);
-				} else if (!fFavorites.isEmpty()) {
-					fRecentLaunch = (ILaunchConfiguration)fFavorites.get(0);
-				} else {
-					fRecentLaunch = null;
-				}
-			}
-			save();
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchShortcutExtension.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchShortcutExtension.java
deleted file mode 100644
index af85bf5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/LaunchShortcutExtension.java
+++ /dev/null
@@ -1,451 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
- 
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.expressions.EvaluationResult;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.ExpressionConverter;
-import org.eclipse.core.expressions.ExpressionTagNames;
-import org.eclipse.core.expressions.IEvaluationContext;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.Pair;
-import org.eclipse.debug.internal.ui.actions.LaunchShortcutAction;
-import org.eclipse.debug.ui.ILaunchShortcut;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IPluginContribution;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.commands.AbstractHandler;
-import org.eclipse.ui.commands.ExecutionException;
-import org.eclipse.ui.commands.HandlerSubmission;
-import org.eclipse.ui.commands.IHandler;
-import org.eclipse.ui.commands.IWorkbenchCommandSupport;
-import org.eclipse.ui.commands.Priority;
-import org.osgi.framework.Bundle;
-
-
-/**
- * Proxy to a launch shortcut extension
- */
-public class LaunchShortcutExtension implements ILaunchShortcut, IPluginContribution {
-	
-	private ImageDescriptor fImageDescriptor = null;
-	private List fPerspectives = null;
-	private ILaunchShortcut fDelegate = null;
-	private Set fModes = null;
-	private IConfigurationElement fContextualLaunchConfigurationElement = null;
-	private Expression fContextualLaunchExpr = null;
-	private Expression fStandardLaunchExpr = null;
-	
-	/**
-	 * Command handler for launch shortcut key binding.
-	 */
-	private class LaunchCommandHandler extends AbstractHandler {
-	    // the shortcut to invoke
-	    private LaunchShortcutExtension fShortcut;
-	    private String fMode;
-	    
-	    /**
-	     * Constructs a new command handler for the given shortcut
-	     * 
-	     * @param shortcut
-	     */
-	    public LaunchCommandHandler(LaunchShortcutExtension shortcut, String mode) {
-	        fShortcut = shortcut;
-	        fMode = mode;
-	    }
-
-        /* (non-Javadoc)
-         * @see org.eclipse.ui.commands.IHandler#execute(java.util.Map)
-         */
-        public Object execute(Map parameterValuesByName) throws ExecutionException {
-            LaunchShortcutAction action = new LaunchShortcutAction(fMode, fShortcut);
-            if (action.isEnabled()) {
-                action.run();
-            } else {
-                fShortcut.launch(new StructuredSelection(), fMode);
-            }
-            return null;
-        }
-	}
-	
-	/**
-	 * The configuration element defining this tab.
-	 */
-	private IConfigurationElement fConfig;
-	private /* <Pair> */ List fContextLabels;
-	
-	/**
-	 * Constructs a launch configuration tab extension based
-	 * on the given configuration element
-	 * 
-	 * @param element the configuration element defining the
-	 *  attribtues of this launch configuration tab extension
-	 * @return a new launch configuration tab extension
-	 */
-	public LaunchShortcutExtension(IConfigurationElement element) {
-		setConfigurationElement(element);
-		registerLaunchCommandHandlers();
-	}
-	
-	/**
-	 * Registers command handlers for launch shortcut key bindings
-	 */
-    private void registerLaunchCommandHandlers() {
-        Iterator modes = getModes().iterator();
-        IWorkbenchCommandSupport commandSupport = PlatformUI.getWorkbench().getCommandSupport();
-        while (modes.hasNext()) {
-            String mode = (String) modes.next();
-            String id = getId() + "." + mode; //$NON-NLS-1$
-	        IHandler handler = new LaunchCommandHandler(this, mode);
-	        HandlerSubmission submission = new HandlerSubmission(null, null, null, id, handler, Priority.MEDIUM);
-            commandSupport.addHandlerSubmission(submission);
-        }
-    }	
-	
-	/**
-	 * Sets the configuration element that defines the attributes
-	 * for this extension.
-	 * 
-	 * @param element configuration element
-	 */
-	private void setConfigurationElement(IConfigurationElement element) {
-		fConfig = element;
-	}
-	
-	/**
-	 * Returns the configuration element that defines the attributes
-	 * for this extension.
-	 * 
-	 * @param configuration element that defines the attributes
-	 *  for this launch configuration tab extension
-	 */
-	public IConfigurationElement getConfigurationElement() {
-		return fConfig;
-	}
-	
-	/**
-	 * Returns the label of this shortcut
-	 * 
-	 * @return the label of this shortcut, or <code>null</code> if not
-	 *  specified
-	 */
-	public String getLabel() {
-		return getConfigurationElement().getAttribute("label"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns the configuration element for the optional Contextual Launch
-	 * element of this Launch Configuration description.
-	 * @return contextualLaunch element
-	 */
-	public IConfigurationElement getContextualLaunchConfigurationElement() {
-		if (fContextualLaunchConfigurationElement == null) {
-			IConfigurationElement[] elements = getConfigurationElement().getChildren("contextualLaunch"); //$NON-NLS-1$
-			if (elements.length > 0) {
-				// remember so we don't have to hunt again
-				fContextualLaunchConfigurationElement = elements[0];
-			}
-		}
-		return fContextualLaunchConfigurationElement;
-	}
-	/**
-	 * Returns the contextual launch label of this shortcut for the named mode.
-	 * <p>
-	 * <samp>
-	 * <launchShortcut...>
-	 *   <contextualLaunch>
-	 *     <contextLabel mode="run" label="Run Java Application"/>
-	 *     <contextLabel mode="debug" label="Debug Java Application"/>
-	 *     ...
-	 *   </contextualLaunch>
-	 * </launchShortcut>
-	 * </samp>
-	 * 
-	 * @return the contextual label of this shortcut, or <code>null</code> if not
-	 *  specified
-	 */
-	public String getContextLabel(String mode) {
-		// remember the list of context labels for this shortcut
-		if (fContextLabels == null) {
-			IConfigurationElement context = getContextualLaunchConfigurationElement();
-			if (context == null) {
-				return null;
-			}
-			IConfigurationElement[] labels = context.getChildren("contextLabel"); //$NON-NLS-1$
-			fContextLabels = new ArrayList(labels.length);
-			for (int i = 0; i < labels.length; i++) {
-				fContextLabels.add(new Pair(labels[i].getAttribute("mode"), //$NON-NLS-1$
-						labels[i].getAttribute("label"))); //$NON-NLS-1$
-			}
-		}
-		// pick out the first occurance of the "name" bound to "mode"
-		Iterator iter = fContextLabels.iterator();
-		while (iter.hasNext()) {
-			Pair p = (Pair) iter.next();
-			if (p.firstAsString().equals(mode)) {
-				return p.secondAsString();
-			}
-		}
-		return getLabel();
-	}
-	
-	/**
-	 * Evaluate the given expression within the given context and return
-	 * the result. Returns <code>true</code> iff result is either TRUE or NOT_LOADED.
-	 * This allows optimistic inclusion of shortcuts before plugins are loaded.
-	 * Returns <code>false</code> if exp is <code>null</code>.
-	 * 
-	 * @param exp the enablement expression to evaluate or <code>null</code>
-	 * @param context the context of the evaluation. Usually, the
-	 *  user's selection.
-	 * @return the result of evaluating the expression
-	 * @throws CoreException
-	 */
-	public boolean evalEnablementExpression(IEvaluationContext context, Expression exp) throws CoreException {
-		return (exp != null) ? ((exp.evaluate(context)) != EvaluationResult.FALSE) : false;
-	}
-	
-	/**
-	 * Returns an expression that represents the enablement logic for the
-	 * contextual launch element of this launch shortcut description or
-	 * <code>null</code> if none.
-	 * @return an evaluatable expression or <code>null</code>
-	 * @throws CoreException if the configuration element can't be
-	 *  converted. Reasons include: (a) no handler is available to
-	 *  cope with a certain configuration element or (b) the XML
-	 *  expression tree is malformed.
-	 */
-	public Expression getContextualLaunchEnablementExpression() throws CoreException {
-		// all of this stuff is optional, so...tedius testing is required
-		if (fContextualLaunchExpr == null) {
-			IConfigurationElement contextualLaunchElement = getContextualLaunchConfigurationElement();
-			if (contextualLaunchElement == null) {
-				// not available
-				return null;
-			}
-			IConfigurationElement[] elements = contextualLaunchElement.getChildren(ExpressionTagNames.ENABLEMENT);
-			IConfigurationElement enablement = elements.length > 0 ? elements[0] : null; 
-
-			if (enablement != null) {
-				fContextualLaunchExpr= ExpressionConverter.getDefault().perform(enablement);
-			}
-		}
-		return fContextualLaunchExpr;
-	}
-	
-	/**
-	 * Returns an expression that represents the enablement logic for the
-	 * launch shortcut description or <code>null</code> if none.
-	 * @return an evaluatable expression or <code>null</code>
-	 * @throws CoreException if the configuration element can't be
-	 *  converted. Reasons include: (a) no handler is available to
-	 *  cope with a certain configuration element or (b) the XML
-	 *  expression tree is malformed.
-	 */
-	public Expression getShortcutEnablementExpression() throws CoreException {
-		// all of this stuff is optional, so...tedius testing is required
-		if (fStandardLaunchExpr == null) {
-			IConfigurationElement[] elements = getConfigurationElement().getChildren(ExpressionTagNames.ENABLEMENT);
-			IConfigurationElement enablement = elements.length > 0 ? elements[0] : null; 
-			if (enablement != null) {
-				fStandardLaunchExpr= ExpressionConverter.getDefault().perform(enablement);
-			}
-		}
-		return fStandardLaunchExpr;
-	}	
-	
-	/**
-	 * Returns the id of this shortcut
-	 * 
-	 * @return the id of this shortcut, or <code>null</code> if not specified
-	 */
-	public String getId() {
-		return getConfigurationElement().getAttribute("id"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns the path of the icon for this shortcut, or <code>null</code>
-	 * if none.
-	 * 
-	 * @return the path of the icon for this shortcut, or <code>null</code>
-	 * if none
-	 */
-	protected String getIconPath() {
-		return getConfigurationElement().getAttribute("icon"); //$NON-NLS-1$
-	}	
-	
-	/**
-	 * Returns the identifier of the help context associated with this launch
-	 * shortcut, or <code>null</code> if one was not specified.
-	 * 
-	 * @return the identifier of this launch shortcut's help context or
-	 * <code>null</code>
-	 * @since 2.1
-	 */	
-	public String getHelpContextId() {
-		return getConfigurationElement().getAttribute("helpContextId"); //$NON-NLS-1$		
-	}
-	
-	/**
-	 * Returns the category of this shortcut
-	 *
-	 * @return the category of this shortcut, or <code>null</code> if not
-	 *  specified
-	 */
-	public String getCategory() {
-		return getConfigurationElement().getAttribute("category"); //$NON-NLS-1$
-	}	
-	
-	/**
-	 * Returns the image for this shortcut, or <code>null</code> if none
-	 * 
-	 * @return the image for this shortcut, or <code>null</code> if none
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		if (fImageDescriptor == null) {
-			String iconPath = getIconPath();
-			// iconPath may be null because imageIcon is optional
-			if (iconPath != null) {
-				try {
-					Bundle bundle = Platform.getBundle(getConfigurationElement().getNamespace());
-					URL iconURL = bundle.getEntry("/"); //$NON-NLS-1$
-					iconURL = new URL(iconURL, iconPath);
-					fImageDescriptor = ImageDescriptor.createFromURL(iconURL);
-				} catch (MalformedURLException e) {
-					DebugUIPlugin.log(e);
-				}
-			}
-		}
-		return fImageDescriptor;
-	}
-	
-	/**
-	 * Returns the perspectives this shortcut is registered for.
-	 * 
-	 * @return list of Strings representing perspective identifiers 
-	 */
-	public List getPerspectives() {
-		if (fPerspectives == null) {
-			IConfigurationElement[] perspectives = getConfigurationElement().getChildren("perspective"); //$NON-NLS-1$
-			fPerspectives = new ArrayList(perspectives.length);
-			for (int i = 0; i < perspectives.length; i++) {
-				fPerspectives.add(perspectives[i].getAttribute("id")); //$NON-NLS-1$
-			}
-		}
-		return fPerspectives;
-	}
-	
-	/**
-	 * Returns this shortcut's delegate, or <code>null</code> if none
-	 * 
-	 * @return this shortcut's delegate, or <code>null</code> if none
-	 */
-	protected ILaunchShortcut getDelegate() {
-		if (fDelegate == null) {
-			try {
-				fDelegate = (ILaunchShortcut)fConfig.createExecutableExtension("class"); //$NON-NLS-1$
-			} catch (CoreException e) {
-				DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), LaunchConfigurationsMessages.LaunchShortcutExtension_Error_4, LaunchConfigurationsMessages.LaunchShortcutExtension_Unable_to_use_launch_shortcut_5, e.getStatus()); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-		return fDelegate;
-	}
-	
-	/**
-	 * @see ILaunchShortcut#launch(IEditorPart, String)
-	 */
-	public void launch(IEditorPart editor, String mode) {
-		ILaunchShortcut shortcut = getDelegate();
-		if (shortcut != null) {
-			shortcut.launch(editor, mode);
-		}
-	}
-
-	/**
-	 * @see ILaunchShortcut#launch(ISelection, String)
-	 */
-	public void launch(ISelection selection, String mode) {
-		ILaunchShortcut shortcut = getDelegate();
-		if (shortcut != null) {
-			shortcut.launch(selection, mode);
-		}		
-	}
-	
-	/**
-	 * Returns the set of modes this shortcut supports.
-	 * 
-	 * @return the set of modes this shortcut supports
-	 */
-	public Set getModes() {
-		if (fModes == null) {
-			String modes= getConfigurationElement().getAttribute("modes"); //$NON-NLS-1$
-			if (modes == null) {
-				return new HashSet(0);
-			}
-			StringTokenizer tokenizer= new StringTokenizer(modes, ","); //$NON-NLS-1$
-			fModes = new HashSet(tokenizer.countTokens());
-			while (tokenizer.hasMoreTokens()) {
-				fModes.add(tokenizer.nextToken().trim());
-			}
-		}
-		return fModes;
-	}
-	
-	/**
-	 * Returns the menu path attribute this shortcut, or <code>null</code> if none
-	 * 
-	 * @return the menu path attribute this shortcut, or <code>null</code> if none
-	 * @since 3.0.1
-	 */
-	public String getMenuPath() {
-		return getConfigurationElement().getAttribute("path"); //$NON-NLS-1$
-	}	
-	
-	/*
-	 * Only for debugging
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString() {
-		return getId();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPluginContribution#getLocalId()
-	 */
-	public String getLocalId() {
-		return getId();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPluginContribution#getPluginId()
-	 */
-	public String getPluginId() {
-		return fConfig.getNamespace();
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/OrganizeFavoritesAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/OrganizeFavoritesAction.java
deleted file mode 100644
index ce9407b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/OrganizeFavoritesAction.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.Action;
-
-/**
- * OrganizeFavoritesAction
- */
-public class OrganizeFavoritesAction extends Action {
-	
-	// launch group identifier
-	private String fGroupId; 
-	
-	/**
-	 * @param text
-	 */
-	public OrganizeFavoritesAction(String launchGroupId) {
-		super(LaunchConfigurationsMessages.OrganizeFavoritesAction_0); //$NON-NLS-1$
-		fGroupId = launchGroupId;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		LaunchHistory history = DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchHistory(fGroupId);
-		FavoritesDialog dialog = new FavoritesDialog(DebugUIPlugin.getShell(), history);
-		dialog.open();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationFactory.java
deleted file mode 100644
index 4b5ce34..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationFactory.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
- 
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.ui.IElementFactory;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IPersistableElement;
-
-/**
- * This is a combination factory and persistable element for launch configurations.
- * This is necessary because the IPersistableElement/IElementFactory framework used by
- * the platform working set support live in the UI plugin.  Launch configurations are
- * defined in a non-UI plugin, thus we need this class to handle persistence and 
- * recreation on behalf of launch configs.
- * 
- */
-public class PersistableLaunchConfigurationFactory implements IPersistableElement, IElementFactory {
-
-	private ILaunchConfiguration fConfig;
-	
-	private static final String KEY = "launchConfigMemento"; //$NON-NLS-1$
-	private static final String FACTORY_ID = "org.eclipse.debug.ui.PersistableLaunchConfigurationFactory"; //$NON-NLS-1$
-
-	public PersistableLaunchConfigurationFactory() {
-	}
-
-	public PersistableLaunchConfigurationFactory(ILaunchConfiguration config) {
-		setConfig(config);
-	}
-
-	/**
-	 * @see org.eclipse.ui.IPersistableElement#getFactoryId()
-	 */
-	public String getFactoryId() {
-		return FACTORY_ID;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IPersistableElement#saveState(IMemento)
-	 */
-	public void saveState(IMemento memento) {
-		try {
-			String configMemento = getConfig().getMemento();
-			memento.putString(KEY, configMemento);		
-		} catch (CoreException ce) {
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IElementFactory#createElement(IMemento)
-	 */
-	public IAdaptable createElement(IMemento memento) {
-		try {
-			String launchConfigMemento = memento.getString(KEY);
-			return getLaunchManager().getLaunchConfiguration(launchConfigMemento);
-		} catch (CoreException ce) {
-		}
-		return null;
-	}
-
-	private void setConfig(ILaunchConfiguration config) {
-		fConfig = config;
-	}
-
-	private ILaunchConfiguration getConfig() {
-		return fConfig;
-	}
-	
-	private ILaunchManager getLaunchManager() {
-		return DebugPlugin.getDefault().getLaunchManager();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationTypeFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationTypeFactory.java
deleted file mode 100644
index 4f8b24a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PersistableLaunchConfigurationTypeFactory.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
- 
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.ui.IElementFactory;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IPersistableElement;
-
-/**
- * This is a combination factory and persistable element for launch configuration types.
- * This is necessary because the IPersistableElement/IElementFactory framework used by
- * the platform working set support live in the UI plugin.  Launch configuration types are
- * defined in a non-UI plugin, thus we need this class to handle persistence and 
- * recreation on behalf of launch config types.
- * 
- */
-public class PersistableLaunchConfigurationTypeFactory implements IPersistableElement, IElementFactory {
-
-	private ILaunchConfigurationType fConfigType;
-
-	private static final String KEY = "launchConfigTypeID"; //$NON-NLS-1$
-	private static final String FACTORY_ID = "org.eclipse.debug.ui.PersistableLaunchConfigurationTypeFactory"; //$NON-NLS-1$
-
-	public PersistableLaunchConfigurationTypeFactory() {
-	}
-
-	public PersistableLaunchConfigurationTypeFactory(ILaunchConfigurationType configType) {
-		setConfigType(configType);
-	}
-
-	/**
-	 * @see org.eclipse.ui.IPersistableElement#getFactoryId()
-	 */
-	public String getFactoryId() {
-		return FACTORY_ID;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IPersistableElement#saveState(IMemento)
-	 */
-	public void saveState(IMemento memento) {
-		String configTypeID = getConfigType().getIdentifier();
-		memento.putString(KEY, configTypeID);
-	}
-
-	/**
-	 * @see org.eclipse.ui.IElementFactory#createElement(IMemento)
-	 */
-	public IAdaptable createElement(IMemento memento) {
-		String configTypeID = memento.getString(KEY);
-		return getLaunchManager().getLaunchConfigurationType(configTypeID);
-	}
-
-	private void setConfigType(ILaunchConfigurationType configType) {
-		fConfigType = configType;
-	}
-
-	private ILaunchConfigurationType getConfigType() {
-		return fConfigType;
-	}
-
-	private ILaunchManager getLaunchManager() {
-		return DebugPlugin.getDefault().getLaunchManager();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveManager.java
deleted file mode 100644
index 93917df..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveManager.java
+++ /dev/null
@@ -1,819 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.WorkbenchException;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-/**
- * The perspective manager manages the 'perspective' settings
- * defined by launch configurations. Specifically it: <ul>
- * <li>changes perspectives as launches are registered</li>
- * <li>change perspective when a thread suspends</li>
- * </ul>
- * 
- * @see IDebugUIContants.ATTR_RUN_PERSPECTIVE
- * @see IDebugUIContants.ATTR_DEBUG_PERSPECTIVE
- */
-public class PerspectiveManager implements ILaunchListener, IDebugEventSetListener {
-		
-	/**
-	 * Table of config types to tables of user specified perspective settings (mode ids
-	 * to perspective ids).
-	 */	
-	private Map fPreferenceMap;
-	
-	// XML tags
-	private static final String ELEMENT_PERSPECTIVES = "launchPerspectives"; //$NON-NLS-1$
-	private static final String ELEMENT_PERSPECTIVE = "launchPerspective"; //$NON-NLS-1$
-	private static final String ATTR_TYPE_ID = "configurationType"; //$NON-NLS-1$
-	private static final String ATTR_MODE_ID = "mode"; //$NON-NLS-1$
-	private static final String ATTR_PERSPECTIVE_ID = "perspective";  //$NON-NLS-1$
-
-	/**
-	 * Flag used to indicate that the user is already being prompted to
-	 * switch perspectives. This flag allows us to not open multiple
-	 * prompts at the same time.
-	 */
-	private boolean fPrompting;
-	private PerspectiveSwitchLock fPerspectiveSwitchLock = new PerspectiveSwitchLock();
-	
-	/**
-	 * Lock used to synchronize perspective switching with view activation.
-	 * Clients wanting to perform an action after a perspective switch should
-	 * schedule jobs with the perspective manager via #schedulePostSwitch(..)
-	 */
-	public class PerspectiveSwitchLock
-	{
-
-		private int fSwitch = 0;
-		private List fJobs = new ArrayList();
-		
-		public synchronized void startSwitch() {
-			fSwitch++;
-		}
-		
-		public synchronized void endSwitch() {
-			fSwitch--;
-			if (fSwitch == 0) {
-				Iterator jobs = fJobs.iterator();
-				while (jobs.hasNext()) {
-					((Job)jobs.next()).schedule();
-				}
-				fJobs.clear();
-			}
-		}
-				
-		public synchronized void schedulePostSwitch(Job job) {
-			if (fSwitch > 0) {
-				fJobs.add(job);	
-			} else {
-				job.schedule();
-			}
-		}
-	}
-	
-	
-	/**
-	 * Called by the debug ui plug-in on startup.
-	 * The perspective manager starts listening for
-	 * launches to be registered.
-	 */
-	public void startup() {
-		DebugPlugin plugin = DebugPlugin.getDefault();
-		plugin.getLaunchManager().addLaunchListener(this);
-		plugin.addDebugEventListener(this);
-	}
-
-	/**
-	 * Called by the debug ui plug-in on shutdown.
-	 * The perspective manager de-registers as a 
-	 * launch listener.
-	 */
-	public void shutdown() {
-		DebugPlugin plugin = DebugPlugin.getDefault();
-		plugin.getLaunchManager().removeLaunchListener(this);
-		plugin.removeDebugEventListener(this);
-	}
-
-	/**
-	 * Do nothing.
-	 * 
-	 * @see ILaunchListener#launchRemoved(ILaunch)
-	 */
-	public void launchRemoved(ILaunch launch) {
-	}
-	
-	/**
-	 * Do nothing.
-	 * 
-	 * @see ILaunchListener#launchChanged(ILaunch)
-	 */
-	public void launchChanged(ILaunch launch) {
-	}	
-
-	/** 
-	 * Switch to the perspective specified by the
-	 * launch configuration.
-	 * 
-	 * @see ILaunchListener#launchAdded(ILaunch)
-	 */
-	public void launchAdded(ILaunch launch) {
-		
-		fPerspectiveSwitchLock.startSwitch();
-		
-		String perspectiveId = null;
-		// check event filters
-		try {
-			perspectiveId = getPerspectiveId(launch);
-		} catch (CoreException e) {
-			String name = DebugUIPlugin.getModelPresentation().getText(launch);
-			switchFailed(e, name);
-		}
-		
-		// don't switch if a private config
-		ILaunchConfiguration configuration = launch.getLaunchConfiguration();
-		if (configuration != null) {
-			if (!LaunchConfigurationManager.isVisible(configuration)) {
-				perspectiveId = null;
-			}
-		}
-		
-		final String id= perspectiveId;
-		// switch
-		async(new Runnable() {
-			public void run() {
-				try
-				{
-					IWorkbenchWindow window = getWindowForPerspective(id);
-					if (id != null && window != null && shouldSwitchPerspectiveForLaunch(window, id)) {
-						switchToPerspective(window, id);
-					}
-				}
-				finally
-				{
-					fPerspectiveSwitchLock.endSwitch();
-				}
-			}
-		});
-	}
-
-
-	/**
-	 * Switches to the specified perspective
-	 * 
-	 * @param id perspective identifier
-	 */
-	protected void switchToPerspective(IWorkbenchWindow window, String id) {
-		try {
-			window.getWorkbench().showPerspective(id, window);
-		} catch (WorkbenchException e) {
-			DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(),
-			LaunchConfigurationsMessages.PerspectiveManager_Error_1,  //$NON-NLS-1$
-			MessageFormat.format(LaunchConfigurationsMessages.PerspectiveManager_Unable_to_switch_to_perspective___0__2, new String[]{id}), //$NON-NLS-1$
-			e);
-		}
-	}
-	
-	/**
-	 * Utility method to submit an asnychronous runnable to the UI
-	 */
-	protected void async(Runnable r) {
-		Display d = DebugUIPlugin.getStandardDisplay();
-		if (d != null && !d.isDisposed()) {
-			d.asyncExec(r);
-		}
-	}
-	
-	/**
-	 * Utility method to submit a synchronous runnable to the UI
-	 */
-	protected void sync(Runnable r) {
-		Display d = DebugUIPlugin.getStandardDisplay();
-		if (d != null && !d.isDisposed()) {
-			d.syncExec(r);
-		}
-	}	
-
-	/**
-	 * Reports failure to switch perspectives to the user
-	 * 
-	 * @param status exception status describing failure
-	 * @param launchName the name of the launch that the
-	 *  failure is associated with
-	 */
-	protected void switchFailed(final Throwable t, final String launchName) {
-		sync(new Runnable() {
-			public void run() {
-				DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), LaunchConfigurationsMessages.PerspectiveManager_Error_1,  //$NON-NLS-1$
-				 MessageFormat.format(LaunchConfigurationsMessages.PerspectiveManager_Unable_to_switch_perpsectives_as_specified_by_launch___0__4, new String[] {launchName}), //$NON-NLS-1$
-				 t);
-			}});
-	}
-	
-	/**
-	 * On a SUSPEND event, show the debug view. If no debug view is open,
-	 * switch to the perspective specified by the launcher.
-	 *
-	 * @see IDebugEventSetListener#handleDebugEvents(DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		// open the debugger if this is a suspend event and the debug view is not yet open
-		// and the preferences are set to switch
-		for (int i = 0; i < events.length; i++) {
-			DebugEvent event = events[i];
-			if (event.getKind() == DebugEvent.SUSPEND && !event.isEvaluation() &&
-			        event.getDetail() != DebugEvent.STEP_END) {
-			    // Don't switch perspective for evaluations or stepping
-				handleBreakpointHit(event);
-			}
-		}
-	}
-	
-	/**
-	 * Makes the debug view visible.
-	 */
-	protected void showDebugView(final IWorkbenchWindow window) {
-		if (fPrompting) {
-			// Wait until the user has dismissed the perspective
-			// switching dialog before opening the view.
-			Thread thread= new Thread(new Runnable() {
-				public void run() {
-					if (fPrompting) {
-						synchronized (PerspectiveManager.this) {
-							try {
-								PerspectiveManager.this.wait();
-							} catch (InterruptedException e) {
-							}
-						}
-					}
-					async(new Runnable() {
-						public void run() {
-							doShowDebugView(window);
-						}
-					});
-				}
-			});
-            thread.setDaemon(true);
-			thread.start();
-			return;
-		}
-		doShowDebugView(window);
-	}
-	
-	/**
-	 * Shows the debug view in the given workbench window.
-	 */
-	private void doShowDebugView(IWorkbenchWindow window) {
-		IWorkbenchPage page = window.getActivePage();
-		if (page != null) {
-			try {
-				page.showView(IDebugUIConstants.ID_DEBUG_VIEW, null, IWorkbenchPage.VIEW_VISIBLE);
-			} catch (PartInitException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-	}
-	/**
-	 * A breakpoint has been hit. Carry out perspective switching
-	 * as appropriate for the given debug event. 
-	 * 
-	 * @param event the suspend event
-	 */
-	private void handleBreakpointHit(DebugEvent event) {
-		
-		// Must be called here to indicate that the perspective
-		// may be switching.
-		// Putting this in the async UI call will cause the Perspective
-		// Manager to turn on the lock too late.  Consequently, LaunchViewContextListener
-		// may not know that the perspective will switch and will open view before
-		// the perspective switch.
-		fPerspectiveSwitchLock.startSwitch();
-		
-		// apply event filters
-		ILaunch launch= null;
-		Object source = event.getSource();
-		if (source instanceof IDebugElement) {
-			launch = ((IDebugElement)source).getLaunch();
-		} else if (source instanceof IProcess) {
-			launch = ((IProcess)source).getLaunch();
-		}
-		String perspectiveId = null;
-		try {
-			perspectiveId = getPerspectiveId(launch);
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}
-		// if no perspective specified, always switch to debug
-		// perspective 
-
-		// this has to be done in an asynch, such that the workbench
-		// window can be accessed
-		final String targetId = perspectiveId;
-		Runnable r = new Runnable() {
-			public void run() {
-				IWorkbenchWindow window = null;
-				try{
-				if (targetId != null) {
-						window = getWindowForPerspective(targetId);
-						if (window == null) {
-							return;
-						}
-						
-						if (shouldSwitchPerspectiveForSuspend(window, targetId)) {
-							switchToPerspective(window, targetId);
-							// Showing the perspective can open a new window
-							// (based on user prefs). So check again in case a
-							// new window has been opened.
-							window = getWindowForPerspective(targetId);
-							if (window == null) {
-								return;
-							}
-						}
-						// re-open the window if minimized 
-						Shell shell= window.getShell();
-						if (shell != null) {
-							if (shell.getMinimized()) {
-								shell.setMinimized(false);
-							}
-							if (DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugUIConstants.PREF_ACTIVATE_WORKBENCH)) {
-								shell.forceActive();
-							}
-						}
-					}
-					if (window != null && DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IInternalDebugUIConstants.PREF_ACTIVATE_DEBUG_VIEW)) {
-						showDebugView(window);
-					}
-				}
-				finally
-				{
-					fPerspectiveSwitchLock.endSwitch();
-				}
-			}
-		};
-		async(r);
-	}
-	
-	/**
-	 * Returns the workbench window in which the given perspective
-	 * should be shown. First, check the current window to see if it
-	 * is already showing the perspective. Then check any other windows.
-	 * 
-	 * @param perspectiveId the perspective identifier
-	 * @return which window the given perspective should be shown in
-	 *  or <code>null</code> if there are no windows available
-	 */
-	private IWorkbenchWindow getWindowForPerspective(String perspectiveId) {
-		// Check the active window first
-		IWorkbenchWindow window = DebugUIPlugin.getActiveWorkbenchWindow();
-		if (isWindowShowingPerspective(window, perspectiveId)) {
-			return window;
-		}
-		// Then check all other windows
-		IWorkbenchWindow[] windows = PlatformUI.getWorkbench().getWorkbenchWindows();
-		for (int i = 0; i < windows.length; i++) {
-			window = windows[i];
-			if (isWindowShowingPerspective(window, perspectiveId)) {
-				return window;
-			}
-		}
-		// Finally, just return a window in which the perspective
-		// should be created
-		window = DebugUIPlugin.getActiveWorkbenchWindow();
-		if (window != null) {
-			return window;
-		}
-		if (windows.length > 0) {
-			return windows[0];
-		}
-		return null;
-	}
-	
-	private boolean isWindowShowingPerspective(IWorkbenchWindow window, String perspectiveId) {
-		if (window != null) {
-			IWorkbenchPage page = window.getActivePage();
-			if (page != null) {
-				IPerspectiveDescriptor perspectiveDescriptor = page.getPerspective();
-				if (perspectiveDescriptor != null && perspectiveDescriptor.getId().equals(perspectiveId)) {
-					return true;
-				}
-			}
-		}
-		return false;
-	}
-	
-	/**
-	 * Returns whether or not the user wishes to switch to the specified
-	 * perspective when a suspend occurs.
-	 * 
-	 * @param perspectiveName the name of the perspective that will be presented
-	 *  to the user for confirmation if they've asked to be prompted about
-	 *  perspective switching for suspension
-	 * @return whether or not the user wishes to switch to the specified perspective
-	 *  automatically when the given launch suspends
-	 */
-	protected boolean shouldSwitchPerspectiveForSuspend(IWorkbenchWindow window, String perspectiveId) {
-		return shouldSwitchPerspective(window, perspectiveId, LaunchConfigurationsMessages.PerspectiveManager_13, IInternalDebugUIConstants.PREF_SWITCH_PERSPECTIVE_ON_SUSPEND); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns whether or not the user wishes to switch to the specified
-	 * perspective when a launch occurs.
-	 * 
-	 * @param perspectiveName the name of the perspective that will be presented
-	 *  to the user for confirmation if they've asked to be prompted about
-	 *  perspective switching
-	 * @return whether or not the user wishes to switch to the specified perspective
-	 *  automatically when a launch occurs
-	 */
-	protected boolean shouldSwitchPerspectiveForLaunch(IWorkbenchWindow window, String perspectiveId) {
-		return shouldSwitchPerspective(window, perspectiveId, LaunchConfigurationsMessages.PerspectiveManager_15, IInternalDebugUIConstants.PREF_SWITCH_TO_PERSPECTIVE); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns whether or not the user wishes to switch to the specified
-	 * perspective when a launch occurs.
-	 * 
-	 * @param perspectiveName the name of the perspective that will be presented
-	 *  to the user for confirmation if they've asked to be prompted about
-	 *  perspective switching
-	 * @param message a message to be presented to the user. This message is expected to
-	 *  contain a slot for the perspective name to be inserted ("{0}").
-	 * @param preferenceKey the preference key of the perspective switching preference
-	 * @return whether or not the user wishes to switch to the specified perspective
-	 *  automatically
-	 */
-	private boolean shouldSwitchPerspective(IWorkbenchWindow window, String perspectiveId, String message, String preferenceKey) {
-		if (isCurrentPerspective(window, perspectiveId)) {
-			return false;
-		}
-		String perspectiveName= getPerspectiveLabel(perspectiveId);
-		if (perspectiveName == null) {
-			return false;
-		}
-		String switchPerspective= DebugUIPlugin.getDefault().getPreferenceStore().getString(preferenceKey);
-		if (MessageDialogWithToggle.ALWAYS.equals(switchPerspective)) {
-			return true;
-		} else if (MessageDialogWithToggle.NEVER.equals(switchPerspective)) {
-			return false;
-		}
-		
-		Shell shell= window.getShell();
-		if (shell == null || fPrompting) {
-			return false;
-		}
-		fPrompting= true;
-		// Activate the shell if necessary so the prompt is visible
-		if (shell.getMinimized()) {
-			shell.setMinimized(false);
-		}
-		if (DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugUIConstants.PREF_ACTIVATE_WORKBENCH)) {
-			shell.forceActive();
-		}
-		MessageDialogWithToggle dialog = MessageDialogWithToggle.openYesNoQuestion(shell, LaunchConfigurationsMessages.PerspectiveManager_12, MessageFormat.format(message, new String[] { perspectiveName }), null, false, DebugUIPlugin.getDefault().getPreferenceStore(), preferenceKey); //$NON-NLS-1$
-		boolean answer = (dialog.getReturnCode() == IDialogConstants.YES_ID);
-		synchronized (this) {
-			fPrompting= false;
-			notifyAll();
-		}
-		if (isCurrentPerspective(window, perspectiveId)) {
-			// While prompting in response to one event (say, a launch),
-			// another event can occur which changes the perspective.
-			// Double-check that we're not in the right perspective.
-			answer= false;
-		}
-		return answer;
-	}
-	
-	/**
-	 * Returns whether the given perspective identifier matches the
-	 * identifier of the current perspective.
-	 * 
-	 * @param perspectiveId the identifier
-	 * @return whether the given perspective identifier matches the
-	 *  identifier of the current perspective
-	 */
-	protected boolean isCurrentPerspective(IWorkbenchWindow window, String perspectiveId) {
-		boolean isCurrent= false;
-		if (window != null) {
-			IWorkbenchPage page = window.getActivePage();
-			if (page != null) {
-				IPerspectiveDescriptor perspectiveDescriptor = page.getPerspective();
-				if (perspectiveDescriptor != null) {
-					isCurrent= perspectiveId.equals(perspectiveDescriptor.getId());
-				}
-			}
-		}
-		return isCurrent;
-	}
-	
-	/**
-	 * Returns the label of the perspective with the given identifier or
-	 * <code>null</code> if no such perspective exists.
-	 * 
-	 * @param perspectiveId the identifier
-	 * @return the label of the perspective with the given identifier or
-	 *  <code>null</code> if no such perspective exists 
-	 */
-	protected String getPerspectiveLabel(String perspectiveId) {
-		IPerspectiveDescriptor newPerspective = PlatformUI.getWorkbench().getPerspectiveRegistry().findPerspectiveWithId(perspectiveId);
-		if (newPerspective == null) {
-			return null;
-		}
-		return newPerspective.getLabel();
-	}
-
-	/** 
-	 * Returns the perspective associated with the
-	 * given launch, or <code>null</code> if none.
-	 * 
-	 * @param launch a launch
-	 * @return the perspective associated with the launch,
-	 * 	or <code>null</code>
-	 * @exception CoreException if unable to retrieve a required
-	 *  launch configuration attribute
-	 */
-	protected String getPerspectiveId(ILaunch launch) throws CoreException {
-		if (launch == null) {
-			return null;
-		}
-		ILaunchConfiguration config = launch.getLaunchConfiguration();
-		if (config == null) {
-			return null;
-		}
-		String perspectiveId = null;
-		perspectiveId = DebugUITools.getLaunchPerspective(config.getType(), launch.getLaunchMode());
-		if (perspectiveId != null && perspectiveId.equals(IDebugUIConstants.PERSPECTIVE_NONE)) {
-			perspectiveId = null;
-		}
-		return perspectiveId;
-	}
-	
-	/**
-	 * Returns the perspective to switch to when a configuration of the given type
-	 * is launched in the given mode, or <code>null</code> if no switch should take
-	 * place.
-	 * 
-	 * @param type launch configuration type
-	 * @param mode launch mode identifier
-	 * @return perspective identifier or <code>null</code>
-	 * @since 3.0
-	 */
-	public String getLaunchPerspective(ILaunchConfigurationType type, String mode) {
-		String id = getUserSpecifiedLaunchPerspective(type, mode);
-		if (id == null) {
-			// get the default
-			id = getDefaultLaunchPerspective(type, mode);
-		} else if (id.equals(IDebugUIConstants.PERSPECTIVE_NONE)) {
-			// translate NONE to null
-			id = null;
-		}
-		return id;
-	}
-	
-	/**
-	 * Sets the perspective to switch to when a configuration of the given type
-	 * is launched in the given mode. <code>PERSPECTIVE_NONE</code> indicates no
-	 * perspective switch should take place. <code>PERSPECTIVE_DEFAULT</code> indicates
-	 * a default perspective switch should take place, as defined by the associated
-	 * launch tab group extension. Saves plug-in preferences.
-	 * 
-	 * @param type launch configuration type
-	 * @param mode launch mode identifier
-	 * @param perspective identifier, <code>PERSPECTIVE_NONE</code>, or
-	 *   <code>PERSPECTIVE_DEFAULT</code>
-	 * @since 3.0
-	 */
-	public void setLaunchPerspective(ILaunchConfigurationType type, String mode, String perspective) {
-		internalSetLaunchPerspective(type.getIdentifier(), mode, perspective);
-		// update preference
-		String xml;
-		try {
-			xml = generatePerspectiveXML();
-			DebugUIPlugin.getDefault().getPreferenceStore().putValue(IInternalDebugUIConstants.PREF_LAUNCH_PERSPECTIVES, xml);
-			DebugUIPlugin.getDefault().savePluginPreferences();				
-		} catch (IOException e) {
-			DebugUIPlugin.log(DebugUIPlugin.newErrorStatus(LaunchConfigurationsMessages.PerspectiveManager_9, e)); //$NON-NLS-1$
-		} catch (ParserConfigurationException e) {
-			DebugUIPlugin.log(DebugUIPlugin.newErrorStatus(LaunchConfigurationsMessages.PerspectiveManager_9, e)); //$NON-NLS-1$
-		} catch (TransformerException e) {
-			DebugUIPlugin.log(DebugUIPlugin.newErrorStatus(LaunchConfigurationsMessages.PerspectiveManager_9, e)); //$NON-NLS-1$
-		}
-	}
-	
-	/**
-	 * Sets the perspective to switch to when a configuration of the given type
-	 * is launched in the given mode. <code>PERSPECTIVE_NONE</code> indicates no
-	 * perspective switch should take place. <code>PERSPECTIVE_DEFAULT</code> indicates
-	 * a default perspective switch should take place, as defined by the associated
-	 * launch tab group extension.
-	 * 
-	 * @param type launch configuration type identifier
-	 * @param mode launch mode identifier
-	 * @param perspective identifier, <code>PERSPECTIVE_NONE</code>, or
-	 *   <code>PERSPECTIVE_DEFAULT</code>
-	 * @since 3.0
-	 */
-	private void internalSetLaunchPerspective(String type, String mode, String perspective) {
-		if (fPreferenceMap == null) {
-			initPerspectives();
-		}		
-		Map modeMap = (Map)fPreferenceMap.get(type);
-		if (modeMap == null) {
-			modeMap = new HashMap();
-			fPreferenceMap.put(type, modeMap);
-		}
-		if (perspective.equals(IDebugUIConstants.PERSPECTIVE_DEFAULT)) {
-			// remove user preference setting
-			modeMap.remove(mode);
-		} else {
-			// override default setting
-			modeMap.put(mode, perspective);
-		}
-	}
-	
-	/**
-	 * Generates XML for the user specified perspective settings.
-	 *  
-	 * @return XML
-	 * @exception IOException if unable to generate the XML
-     * @exception TransformerException if unable to generate the XML
-     * @exception ParserConfigurationException if unable to generate the XML
-	 */
-	private String generatePerspectiveXML() throws ParserConfigurationException, TransformerException, IOException {
-		
-		Document doc = DebugUIPlugin.getDocument();
-		Element configRootElement = doc.createElement(ELEMENT_PERSPECTIVES);
-		doc.appendChild(configRootElement);
-		
-		Iterator configTypes = fPreferenceMap.keySet().iterator();
-		while (configTypes.hasNext()) {
-			String type = (String)configTypes.next();
-			Map modeMap = (Map)fPreferenceMap.get(type);
-			if (modeMap != null && !modeMap.isEmpty()) {
-				Iterator modes = modeMap.keySet().iterator();
-				while (modes.hasNext()) {
-					String mode = (String)modes.next();
-					String perspective = (String)modeMap.get(mode);
-					Element element = doc.createElement(ELEMENT_PERSPECTIVE);
-					element.setAttribute(ATTR_TYPE_ID, type);
-					element.setAttribute(ATTR_MODE_ID, mode);
-					element.setAttribute(ATTR_PERSPECTIVE_ID, perspective);
-					configRootElement.appendChild(element);
-				}
-			}			
-		}
-
-		return DebugUIPlugin.serializeDocument(doc);		
-	}
-
-	/**
-	 * Returns the default perspective to switch to when a configuration of the given
-	 * type is launched in the given mode, or <code>null</code> if none.
-	 * 
-	 * @param type launch configuration type
-	 * @param mode launch mode
-	 * @return perspective identifier, or <code>null</code>
-	 */
-	protected String getDefaultLaunchPerspective(ILaunchConfigurationType type, String mode) {
-		LaunchConfigurationTabGroupExtension extension = LaunchConfigurationPresentationManager.getDefault().getExtension(type.getIdentifier(), mode);
-		if (extension != null) {
-			String id = extension.getPerspective(mode);
-			if (id == null) {
-				// revert to hard coded default (for backwards compatibility)
-				// since nothing is specified in XML
-				if (mode.equals(ILaunchManager.DEBUG_MODE)) {
-					return IDebugUIConstants.ID_DEBUG_PERSPECTIVE;
-				}	
-			} else {
-				return id;
-			}
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the user specified perspective to switch to when a configuration of the
-	 * given type is launched in the given mode, or <code>null</code> if unspecified.
-	 * Returns <code>PERSPECTIVE_NONE</code> to indicate no switch
-	 * 
-	 * @param type launch configuration type
-	 * @param mode launch mode
-	 * @return perspective identifier, <code>PERSPECTIVE_NONE</code>, or <code>null</code>
-	 */
-	protected String getUserSpecifiedLaunchPerspective(ILaunchConfigurationType type, String mode) {
-		String id = null;
-		if (fPreferenceMap == null) {
-			initPerspectives();
-		}
-		Map modeMap = (Map)fPreferenceMap.get(type.getIdentifier());
-		if (modeMap != null) {
-			id = (String)modeMap.get(mode);
-		}
-		return id;
-	}
-
-	/**
-	 * Initialize the preference map with settings from user preference
-	 */
-	private void initPerspectives() {
-		fPreferenceMap = new HashMap();
-		String xml = DebugUIPlugin.getDefault().getPreferenceStore().getString(IInternalDebugUIConstants.PREF_LAUNCH_PERSPECTIVES);
-		if (xml != null && xml.length() > 0) {
-			try {
-				Element root = null;
-				DocumentBuilder parser = DocumentBuilderFactory.newInstance().newDocumentBuilder();
-				parser.setErrorHandler(new DefaultHandler());
-				StringReader reader = new StringReader(xml);
-				InputSource source = new InputSource(reader);
-				root = parser.parse(source).getDocumentElement();
-				
-				NodeList list = root.getChildNodes();
-				int length = list.getLength();
-				for (int i = 0; i < length; ++i) {
-					Node node = list.item(i);
-					short nt = node.getNodeType();
-					if (nt == Node.ELEMENT_NODE) {
-						Element element = (Element) node;
-						String nodeName = element.getNodeName();
-						if (nodeName.equalsIgnoreCase(ELEMENT_PERSPECTIVE)) {
-							String type = element.getAttribute(ATTR_TYPE_ID);
-							String mode = element.getAttribute(ATTR_MODE_ID);
-							String perpsective = element.getAttribute(ATTR_PERSPECTIVE_ID);
-							internalSetLaunchPerspective(type, mode, perpsective);
-						}
-					}
-				}				
-			} catch (ParserConfigurationException e) {
-				DebugUIPlugin.log(e);			
-			} catch (SAXException e) {
-				DebugUIPlugin.log(e);
-			} catch (IOException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-		
-	}
-	
-	/**
-	 * Schedules the given job after perspective switching is complete, or
-	 * immediately if a perspective switch is not in progress.
-	 * 
-	 * @param job job to run after perspective switching
-	 */
-	public void schedulePostSwitch(Job job) {
-		fPerspectiveSwitchLock.schedulePostSwitch(job);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveTabGroup.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveTabGroup.java
deleted file mode 100644
index cd7eae0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectiveTabGroup.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.ui.AbstractLaunchConfigurationTabGroup;
-import org.eclipse.debug.ui.ILaunchConfigurationDialog;
-import org.eclipse.debug.ui.ILaunchConfigurationTab;
-
-/**
- * PerspectiveTabGroup
- */
-public class PerspectiveTabGroup extends AbstractLaunchConfigurationTabGroup {
-	
-	private ILaunchConfigurationType fType;
-
-	public PerspectiveTabGroup(ILaunchConfigurationType type) {
-		fType = type;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTabGroup#createTabs(org.eclipse.debug.ui.ILaunchConfigurationDialog, java.lang.String)
-	 */
-	public void createTabs(ILaunchConfigurationDialog dialog, String mode) {
-		ILaunchConfigurationTab[] tabs = new ILaunchConfigurationTab[] {new PerspectivesTab(fType)}; 
-		setTabs(tabs);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectivesTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectivesTab.java
deleted file mode 100644
index 43ef008..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/PerspectivesTab.java
+++ /dev/null
@@ -1,392 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Map;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationListener;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchMode;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ControlAdapter;
-import org.eclipse.swt.events.ControlEvent;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IPerspectiveRegistry;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * PerspectivesTab
- */
-public class PerspectivesTab extends AbstractLaunchConfigurationTab implements ILaunchConfigurationListener {
-	
-	/**
-	 * The launch config type this tab pertains to
-	 */
-	private ILaunchConfigurationType fType = null;
-	
-	/**
-	 * Array containing modes this config type supports
-	 */
-	private String[] fModeIds = null;
-			
-	/**
-	 * Array of all perspective labels for combo box (including 'None')
-	 */
-	private String[] fPerspectiveLabels = null;
-	
-	/**
-	 * Map of perspective labels to ids
-	 */
-	private Map fPerspectiveIds = null;
-
-	/**
-	 * Combo boxes corresponding to modes
-	 */
-	private Combo[] fCombos = null;
-	
-	private Button fRestoreDefaults;
-	
-	/**
-	 * A selection adapter which responds to widget selections in this tab
-	 */
-	private SelectionAdapter fSelectionAdapter= new SelectionAdapter() {
-		public void widgetSelected(SelectionEvent e) {
-			Object source= e.getSource();
-			if (source == fRestoreDefaults) {
-				handleRestoreDefaultsSelected();
-			}
-			updateLaunchConfigurationDialog();
-		}
-		private void handleRestoreDefaultsSelected() {
-			for (int i = 0; i < fCombos.length; i++) {
-				String mode = (String)fCombos[i].getData();
-				String def = DebugUIPlugin.getDefault().getPerspectiveManager().getDefaultLaunchPerspective(getLaunchConfigurationType(), mode);
-				if (def == null) {
-					fCombos[i].setText(LaunchConfigurationsMessages.PerspectivesTab_1); //$NON-NLS-1$
-				} else {
-					IPerspectiveRegistry registry = PlatformUI.getWorkbench().getPerspectiveRegistry();
-					IPerspectiveDescriptor descriptor = registry.findPerspectiveWithId(def);
-					fCombos[i].setText(descriptor.getLabel());
-				}
-			}
-		}
-	};
-	
-	/**
-	 * Flag indicating the UI is updating from the config, and should not
-	 * update the config in response to the change.
-	 */
-	private boolean fInitializing = false;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		DebugPlugin.getDefault().getLaunchManager().removeLaunchConfigurationListener(this);		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationAdded(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationAdded(ILaunchConfiguration configuration) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationChanged(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationChanged(ILaunchConfiguration configuration) {
-		if (!configuration.isWorkingCopy()) {
-			if (configuration.getName().startsWith(getLaunchConfigurationType().getIdentifier())) {
-				for (int i = 0; i < fModeIds.length; i++) {
-					String mode = fModeIds[i];
-					try {
-						String persp = configuration.getAttribute(mode, (String)null);
-						if (persp == null) {
-							// default
-							persp = IDebugUIConstants.PERSPECTIVE_DEFAULT;
-						}
-						DebugUITools.setLaunchPerspective(getLaunchConfigurationType(), mode, persp);
-					} catch (CoreException e) {
-						DebugUIPlugin.log(e);
-					}
-				}
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.ILaunchConfigurationListener#launchConfigurationRemoved(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void launchConfigurationRemoved(ILaunchConfiguration configuration) {
-	}
-
-	/**
-	 * Constructs a new tab
-	 * 
-	 * @param type
-	 */
-	public PerspectivesTab(ILaunchConfigurationType type) {
-		super();
-		fType = type;
-		DebugPlugin.getDefault().getLaunchManager().addLaunchConfigurationListener(this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getImage()
-	 */
-	public Image getImage() {
-		return DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_OBJS_PERSPECTIVE_TAB);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		final Composite composite = new Composite(parent, SWT.NONE);
-		setControl(composite);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IDebugHelpContextIds.LAUNCH_CONFIGURATION_DIALOG_PERSPECTIVE_TAB);
-		final GridLayout layout = new GridLayout(2, false);
-		composite.setLayout(layout);
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		composite.setLayoutData(gd);
-		composite.setFont(parent.getFont());
-		
-		Label label = new Label(composite, SWT.LEFT + SWT.WRAP);
-		label.setFont(parent.getFont());
-		label.setText(MessageFormat.format(LaunchConfigurationsMessages.PerspectivesTab_0, new String[]{getLaunchConfigurationType().getName()})); //$NON-NLS-1$
-		final GridData finalGd = new GridData();
-		finalGd.horizontalSpan = 2;
-		label.setLayoutData(finalGd);
-		composite.addControlListener(new ControlAdapter(){
-			public void controlResized(ControlEvent e){
-				finalGd.widthHint = composite.getClientArea().width - 2*layout.marginWidth;
-				composite.layout(true);
-			}
-		});
-
-		
-		// init modes
-		ILaunchMode[] modes = DebugPlugin.getDefault().getLaunchManager().getLaunchModes();
-		ArrayList supported = new ArrayList();
-		for (int i = 0; i < modes.length; i++) {
-			ILaunchMode mode = modes[i];
-			if (getLaunchConfigurationType().supportsMode(mode.getIdentifier())) {
-				supported.add(mode.getIdentifier());
-			}
-		}
-		fModeIds = (String[])supported.toArray(new String[supported.size()]);
-		
-		// init perspective labels
-		IPerspectiveRegistry registry = PlatformUI.getWorkbench().getPerspectiveRegistry();
-		IPerspectiveDescriptor[] descriptors = registry.getPerspectives();
-		fPerspectiveLabels = new String[descriptors.length + 1];
-		fPerspectiveLabels[0] = LaunchConfigurationsMessages.PerspectivesTab_1; //$NON-NLS-1$
-		fPerspectiveIds = new HashMap(descriptors.length);
-		for (int i = 0; i < descriptors.length; i++) {
-			IPerspectiveDescriptor descriptor = descriptors[i];
-			fPerspectiveLabels[i + 1] = descriptor.getLabel();
-			fPerspectiveIds.put(descriptor.getLabel(), descriptor.getId());
-		}
-		
-		// spacer
-		createVerticalSpacer(composite, 2);
-		
-		fCombos = new Combo[fModeIds.length];
-		for (int i = 0; i < fModeIds.length; i++) {
-			label = new Label(composite, SWT.NONE);
-			label.setFont(composite.getFont());
-			gd = new GridData(GridData.BEGINNING);
-			gd.horizontalSpan= 1;
-			label.setLayoutData(gd);
-			String text = DebugPlugin.getDefault().getLaunchManager().getLaunchMode(fModeIds[i]).getLabel();
-			label.setText(MessageFormat.format(LaunchConfigurationsMessages.PerspectivesTab_2, new String[]{text})); //$NON-NLS-1$
-			
-			Combo combo = new Combo(composite, SWT.READ_ONLY);
-			combo.setFont(composite.getFont());
-			combo.setItems(fPerspectiveLabels);
-			combo.setData(fModeIds[i]);
-			gd = new GridData(GridData.BEGINNING);
-			combo.setLayoutData(gd);
-			fCombos[i] = combo;
-			combo.addSelectionListener(fSelectionAdapter);
-		}
-		
-		createVerticalSpacer(composite, 2);
-		
-		fRestoreDefaults = createPushButton(composite, LaunchConfigurationsMessages.PerspectivesTab_3, null); //$NON-NLS-1$
-		gd= new GridData(GridData.FILL_BOTH);
-		gd.horizontalSpan= 2;
-		gd.horizontalAlignment= SWT.END;
-		gd.verticalAlignment= SWT.END;
-		fRestoreDefaults.setLayoutData(gd);
-		fRestoreDefaults.addSelectionListener(fSelectionAdapter);
-		
-		Dialog.applyDialogFont(composite);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {
-		for (int i = 0; i < fModeIds.length; i++) {
-			String mode = fModeIds[i];
-			// null indicates default
-			configuration.setAttribute(mode, (String)null);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration) {
-		// each perspective is stored with its mode identifier
-		fInitializing = true;
-		IPerspectiveRegistry registry = PlatformUI.getWorkbench().getPerspectiveRegistry();
-		for (int i = 0; i < fModeIds.length; i++) {
-			String mode = fModeIds[i];
-			String persp;
-			try {
-				persp = configuration.getAttribute(mode, (String)null);
-				if (persp == null) {
-					// null indicates default
-					persp = DebugUITools.getLaunchPerspective(getLaunchConfigurationType(), mode);
-				}
-				if (IDebugUIConstants.PERSPECTIVE_NONE.equals(persp)) {
-					persp = null;
-				}
-				IPerspectiveDescriptor descriptor = null;
-				if (persp != null) {
-					descriptor = registry.findPerspectiveWithId(persp);
-				}
-				if (descriptor == null) {
-					// select none
-					fCombos[i].setText(LaunchConfigurationsMessages.PerspectivesTab_1); //$NON-NLS-1$
-				} else {
-					fCombos[i].setText(descriptor.getLabel());
-				}
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-		fInitializing = false;
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {
-		for (int i = 0; i < fCombos.length; i++) {
-			updateConfigFromCombo(fCombos[i], configuration);
-		}
-	}
-	
-	/**
-	 * Updates the configuration based on the user's selection in the
-	 * perspective combo by setting the given configurations perspective
-	 * attribute.
-	 * 
-	 * @param combo the combo widget
-	 * @param workingCopy the launch configuration to update
-	 */
-	protected void updateConfigFromCombo(Combo combo, ILaunchConfigurationWorkingCopy workingCopy) {
-		if (!fInitializing) {
-			String mode = (String)combo.getData();
-			String persp = combo.getText();
-			if (persp.equals(LaunchConfigurationsMessages.PerspectivesTab_1)) { //$NON-NLS-1$
-				persp = IDebugUIConstants.PERSPECTIVE_NONE;
-			} else {
-				persp = (String)fPerspectiveIds.get(persp);
-			}
-			// if the same as default, use null which indicates default
-			String def = DebugUIPlugin.getDefault().getPerspectiveManager().getDefaultLaunchPerspective(getLaunchConfigurationType(), mode);
-			if (def == null) {
-				def = IDebugUIConstants.PERSPECTIVE_NONE;
-			}
-			if (persp.equals(def)) {
-				persp = null;
-			}
-			workingCopy.setAttribute(mode, persp);
-		}		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName()
-	 */
-	public String getName() {
-		return LaunchConfigurationsMessages.PerspectivesTab_7; //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns the launch configuration type this tab was opened on.
-	 * 
-	 * @return launch config type
-	 */
-	protected ILaunchConfigurationType getLaunchConfigurationType() {
-		return fType;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing on activation
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#deactivated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void deactivated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing on deactivation
-	}
-
-	/**
-	 * Returns the description associated with the current launch configuration
-	 * type in the current mode or <code>null</code> if none.
-	 * 
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getMessage()
-	 */
-	public String getMessage() {
-		String description = super.getMessage();
-		if(fType != null) {
-			String mode = getLaunchConfigurationDialog().getMode();
-			LaunchConfigurationPresentationManager manager = LaunchConfigurationPresentationManager.getDefault();
-			LaunchConfigurationTabGroupExtension extension = manager.getExtension(fType.getAttribute("id"), mode); //$NON-NLS-1$
-			description = extension.getDescription(mode);
-		}		
-		return description;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/WorkingSetComparator.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/WorkingSetComparator.java
deleted file mode 100644
index d1a89c6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/launchConfigurations/WorkingSetComparator.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.launchConfigurations;
-
-import java.util.Comparator;
-
-import org.eclipse.debug.ui.RefreshTab;
-import org.eclipse.ui.IWorkingSet;
-
-/**
- * Comparator for refresh scope launch configuration attribute
- * <code>ATTR_REFRESH_SCOPE</code>.
- */
-public class WorkingSetComparator implements Comparator {
-
-	/* (non-Javadoc)
-	 * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
-	 */
-	public int compare(Object o1, Object o2) {
-		String one= (String)o1;
-		String two= (String)o2;
-		if (one == null || two == null) {
-			if (one == two) {
-				return 0;
-			}
-			return -1;
-		}
-		if (one.startsWith("${working_set:") && two.startsWith("${working_set:")) {		  //$NON-NLS-1$//$NON-NLS-2$
-			IWorkingSet workingSet1 = RefreshTab.getWorkingSet(one);
-			IWorkingSet workingSet2 = RefreshTab.getWorkingSet(two);
-			if (workingSet1 == null || workingSet2 == null) {
-				if (workingSet1 == workingSet2) {
-					return 0;
-				}
-				return -1;
-			}
-			if (workingSet1.equals(workingSet2)) {
-				return 0;
-			}
-			return -1;
-		} 
-		return one.compareTo(two);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryBlockConnection.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryBlockConnection.java
deleted file mode 100644
index 2a30b8d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryBlockConnection.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.memory;
-
-/**
- * Represents a connection to a memory block.  An IMemoryRenderingUpdater can call
- * a connection to update instead of relying on a rendering to listen
- * for CHANGE / SUSPEND debug event to trigger an update.
- * 
- * This interface is EXPERIMENTAL.
- *
- */
-public interface IMemoryBlockConnection {
-	
-	/**
-	 * Update the content of a memory block in a connection.
-	 */
-	public void update();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryRenderingUpdater.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryRenderingUpdater.java
deleted file mode 100644
index 874a436..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/IMemoryRenderingUpdater.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.memory;
-
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-
-
-/**
- * Represents an object that will manage the update of an IMemoryRendering
- * based on connections.  If the memory block implements this interface or returns
- * an object of this type when getAdapter(...) is called, a rendering would
- * call #supportsManagedUpdate to determine if it should handle and refresh
- * upon a debug event.  
- * 
- * If the client wants to manage its own update, it would return true when
- * #supportsManagedUpdate is called.  The rendering will not get refreshed
- * upon any debug events.  Instead, the rendering will update when 
- * <code>IMemoryBlockConnection.update</code> is called.
- * 
- * This interface is EXPERIMENTAL.
- *
- */
-public interface IMemoryRenderingUpdater extends IMemoryBlockExtension {
-	
-	/**
-	 * @return true if the updater will manage the update of a rendering
-	 */
-	public boolean supportsManagedUpdate(IMemoryRendering rendering);
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingManager.java
deleted file mode 100644
index 9118472..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingManager.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.memory;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractMemoryRenderingBindingsProvider;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingBindingsListener;
-import org.eclipse.debug.ui.memory.IMemoryRenderingManager;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-
-/**
- * The memory rendering manager.
- * 
- * @see org.eclipse.debug.ui.memory.IMemoryRenderingManager
- * @since 3.1
- */
-public class MemoryRenderingManager extends AbstractMemoryRenderingBindingsProvider implements IMemoryRenderingManager {
-    
-    // map of rendering type ids to valid rendering types
-    private Map fRenderingTypes = new HashMap();
-    
-    // list of renderingBindings
-    private List fBindings = new ArrayList();
-        
-    // singleton manager
-    private static MemoryRenderingManager fgDefault;
-	
-    // elements in the memory renderings extension point
-    public static final String ELEMENT_MEMORY_RENDERING_TYPE = "renderingType"; //$NON-NLS-1$
-    public static final String ELEMENT_RENDERING_BINDINGS = "renderingBindings"; //$NON-NLS-1$
-    
-    /**
-     * Returns the memory rendering manager.
-     * 
-     * @return the memory rendering manager
-     */
-    public static IMemoryRenderingManager getDefault() {
-        if (fgDefault == null) {
-            fgDefault = new MemoryRenderingManager();
-        }
-        return fgDefault;
-    }
-    /**
-     * Construts a new memory rendering manager. Only to be called by DebugUIPlugin.
-     */
-    private MemoryRenderingManager() {
-        initializeRenderings();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingManager#createRendering(java.lang.String)
-     */
-    public IMemoryRendering createRendering(String id) throws CoreException {
-        IMemoryRenderingType type = getRenderingType(id);
-        if (type != null) {
-            return type.createRendering();
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingManager#getRenderingTypes()
-     */
-    public IMemoryRenderingType[] getRenderingTypes() {
-        Collection types = fRenderingTypes.values();
-        return (IMemoryRenderingType[]) types.toArray(new IMemoryRenderingType[types.size()]);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingManager#getRenderingType(java.lang.String)
-     */
-    public IMemoryRenderingType getRenderingType(String id) {
-        return (IMemoryRenderingType) fRenderingTypes.get(id);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#getDefaultRenderingTypes(org.eclipse.debug.core.model.IMemoryBlock)
-     */
-    public IMemoryRenderingType[] getDefaultRenderingTypes(IMemoryBlock block) {
-        List allTypes = new ArrayList();
-        Iterator iterator = fBindings.iterator();
-        while (iterator.hasNext()) {
-            RenderingBindings binding = (RenderingBindings)iterator.next();
-            IMemoryRenderingType[] renderingTypes = binding.getDefaultRenderingTypes(block);
-            for (int i = 0; i < renderingTypes.length; i++) {
-                IMemoryRenderingType type = renderingTypes[i];
-                if (!allTypes.contains(type)) {
-                    allTypes.add(type);
-                }
-            }
-        }
-        return (IMemoryRenderingType[]) allTypes.toArray(new IMemoryRenderingType[allTypes.size()]);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#getPrimaryRenderingType(org.eclipse.debug.core.model.IMemoryBlock)
-     */
-    public IMemoryRenderingType getPrimaryRenderingType(IMemoryBlock block) {
-        Iterator iterator = fBindings.iterator();
-        while (iterator.hasNext()) {
-            RenderingBindings binding = (RenderingBindings)iterator.next();
-            IMemoryRenderingType renderingType = binding.getPrimaryRenderingType(block);
-            if (renderingType != null) {
-                return renderingType;
-            }
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#getRenderingTypes(org.eclipse.debug.core.model.IMemoryBlock)
-     */
-    public IMemoryRenderingType[] getRenderingTypes(IMemoryBlock block) {
-        List allTypes = new ArrayList();
-        Iterator iterator = fBindings.iterator();
-        while (iterator.hasNext()) {
-            RenderingBindings binding = (RenderingBindings)iterator.next();
-            IMemoryRenderingType[] renderingTypes = binding.getRenderingTypes(block);
-            for (int i = 0; i < renderingTypes.length; i++) {
-                IMemoryRenderingType type = renderingTypes[i];
-                if (!allTypes.contains(type)) {
-                    allTypes.add(type);
-                }
-            }
-        }
-        return (IMemoryRenderingType[]) allTypes.toArray(new IMemoryRenderingType[allTypes.size()]);
-    }
-    
-    /**
-     * Processes memory rendering contributions.
-     */
-    private void initializeRenderings() {
-        IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_MEMORY_RENDERIGNS);
-        IConfigurationElement[] configurationElements = extensionPoint.getConfigurationElements();
-        for (int i = 0; i < configurationElements.length; i++) {
-            IConfigurationElement element= configurationElements[i];
-            String name = element.getName();
-            if (name.equals(ELEMENT_MEMORY_RENDERING_TYPE)) {
-                MemoryRenderingType type = new MemoryRenderingType(element);
-                try {
-                    type.validate();
-                    fRenderingTypes.put(type.getId(), type);
-                } catch (CoreException e) {
-                    DebugUIPlugin.log(e);
-                }
-            } else if (name.equals(ELEMENT_RENDERING_BINDINGS)) {
-                RenderingBindings bindings = new RenderingBindings(element);
-                try {
-                    bindings.validate();
-                    fBindings.add(bindings);
-					bindings.addListener(new IMemoryRenderingBindingsListener() {
-						public void memoryRenderingBindingsChanged() {
-							fireBindingsChanged();
-						}});
-                } catch (CoreException e) {
-                    DebugUIPlugin.log(e);
-                }
-            }
-        }        
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingType.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingType.java
deleted file mode 100644
index 85a743e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/MemoryRenderingType.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.memory;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate;
-
-/**
- * A contributed memory rendering type.
- * 
- * @since 3.1
- */
-class MemoryRenderingType implements IMemoryRenderingType {
-    
-    private IConfigurationElement fConfigurationElement;
-    private IMemoryRenderingTypeDelegate fDelegate;
-    
-    // attributes for a memoryRenderingType
-    static final String ATTR_MEM_RENDERING_TYPE_NAME = "name"; //$NON-NLS-1$
-    static final String ATTR_MEM_RENDERING_TYPE_ID = "id"; //$NON-NLS-1$
-    static final String ATTR_MEM_RENDERING_TYPE_DELEGATE = "class"; //$NON-NLS-1$
-    
-    /**
-     * Constructs a rendering type from a contribution. 
-     */
-    MemoryRenderingType(IConfigurationElement element) {
-        fConfigurationElement = element;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingType#getLabel()
-     */
-    public String getLabel() {
-        return fConfigurationElement.getAttribute(ATTR_MEM_RENDERING_TYPE_NAME);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingType#getId()
-     */
-    public String getId() {
-        return fConfigurationElement.getAttribute(ATTR_MEM_RENDERING_TYPE_ID);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingType#createRendering()
-     */
-    public IMemoryRendering createRendering() throws CoreException {
-        if (fDelegate == null) {
-            fDelegate = (IMemoryRenderingTypeDelegate) fConfigurationElement.createExecutableExtension(ATTR_MEM_RENDERING_TYPE_DELEGATE);
-        }
-        return fDelegate.createRendering(getId());
-    }
-
-    /**
-     * Validates this contribution.
-     * 
-     * @exception CoreException if invalid
-     */
-    void validate() throws CoreException {
-        verifyPresent(ATTR_MEM_RENDERING_TYPE_ID);
-        verifyPresent(ATTR_MEM_RENDERING_TYPE_NAME);
-        verifyPresent(ATTR_MEM_RENDERING_TYPE_DELEGATE);
-    }
-    
-    private void verifyPresent(String attrName) throws CoreException {
-        if (fConfigurationElement.getAttribute(attrName) == null) {
-            Status status = new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.INTERNAL_ERROR,
-                    "<memoryRenderingType> element missing required attribute: " + attrName, null); //$NON-NLS-1$
-            throw new CoreException(status);
-        }
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/RenderingBindings.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/RenderingBindings.java
deleted file mode 100644
index 3a4f15b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/memory/RenderingBindings.java
+++ /dev/null
@@ -1,296 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.memory;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.EvaluationResult;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.ExpressionConverter;
-import org.eclipse.core.expressions.ExpressionTagNames;
-import org.eclipse.core.expressions.IEvaluationContext;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractMemoryRenderingBindingsProvider;
-import org.eclipse.debug.ui.memory.IMemoryRenderingBindingsListener;
-import org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider;
-import org.eclipse.debug.ui.memory.IMemoryRenderingManager;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-
-/**
- * Represents a renderingBindings element of a memoryRenderings
- * contribution.
- * 
- * @since 3.1
- */
-class RenderingBindings extends AbstractMemoryRenderingBindingsProvider implements IMemoryRenderingBindingsProvider {
-    
-    // element
-    protected IConfigurationElement fConfigurationElement;
-    
-    // cached rendering ids
-    private IMemoryRenderingType[] fAllTypes;
-    private IMemoryRenderingType[] fRenderingTypes;
-    private IMemoryRenderingType[] fDefaultTypes;
-    
-    // rendering type provider, or null (optional)
-    private IMemoryRenderingBindingsProvider fProvider;
-    
-    // optional exprssion
-    private Expression fExpression;
-	
-    // element attribute
-    public static final String ATTR_RENDERING_IDS = "renderingIds"; //$NON-NLS-1$
-    public static final String ATTR_DEFAULT_IDS = "defaultIds"; //$NON-NLS-1$
-    public static final String ATTR_PRIMARY = "primaryId"; //$NON-NLS-1$
-    public static final String ATTR_PROVIDER = "class"; //$NON-NLS-1$
-    
-    // empty bindings
-    private static final IMemoryRenderingType[] EMPTY = new IMemoryRenderingType[0]; 
-    
-    /**
-     * Constructs a bindings element from the given contribution.
-     * 
-     * @param element contribution
-     */
-    RenderingBindings(IConfigurationElement element) {
-        fConfigurationElement = element;
-    }
-    
-    /**
-     * Returns the non-default bindings specified by this contribution.
-     * 
-     * @return the non-default bindings specified by this contribution
-     */
-    private IMemoryRenderingType[] getBindings() {
-        if (fRenderingTypes == null) {
-            String ids = fConfigurationElement.getAttribute(ATTR_RENDERING_IDS);
-            List list = new ArrayList();
-            IMemoryRenderingManager manager = getManager();
-            if (ids != null) {
-                String[] strings = ids.split(","); //$NON-NLS-1$
-                for (int i = 0; i < strings.length; i++) {
-                    String id = strings[i].trim();
-                    IMemoryRenderingType type = manager.getRenderingType(id);
-                    if (type != null) {
-                        list.add(type);
-                    }
-                }
-            }
-            // remove any default bindings, in case of duplicate specification
-            IMemoryRenderingType[] defaultBindings = getDefaultBindings();
-            for (int i = 0; i < defaultBindings.length; i++) {
-                list.remove(defaultBindings[i]);
-            }
-            fRenderingTypes = (IMemoryRenderingType[]) list.toArray(new IMemoryRenderingType[list.size()]);
-        }
-        return fRenderingTypes;
-    }
-    
-    /**
-     * Returns the default bindings specified by this contribution.
-     * 
-     * @return the default bindings specified by this contribution
-     */
-    private IMemoryRenderingType[] getDefaultBindings() {
-        if (fDefaultTypes == null) {
-            String ids = fConfigurationElement.getAttribute(ATTR_DEFAULT_IDS);
-            List list = new ArrayList();
-            IMemoryRenderingManager manager = getManager();
-            if (ids != null) {
-                String[] strings = ids.split(","); //$NON-NLS-1$
-                for (int i = 0; i < strings.length; i++) {
-                    String id = strings[i].trim();
-                    IMemoryRenderingType type = manager.getRenderingType(id);
-                    if (type != null) {
-                        list.add(type);
-                    }
-                }
-            }
-            // the primary is also considered a default rendering
-            String primaryId = getPrimaryId();
-            if (primaryId != null) {
-                IMemoryRenderingType type = manager.getRenderingType(primaryId);
-                if (type != null) {
-                    list.add(type);
-                }
-            }
-            fDefaultTypes = (IMemoryRenderingType[]) list.toArray(new IMemoryRenderingType[list.size()]);
-        }
-        return fDefaultTypes;
-    }  
-    
-    /**
-     * Returns the primary id, or <code>null</code> if none.
-     * 
-     * @return the primary id, or <code>null</code> if none
-     */
-    private String getPrimaryId() {
-        return fConfigurationElement.getAttribute(ATTR_PRIMARY);
-    }
-    
-    /**
-     * Returns the provider for this binding or <code>null</code> of none.
-     * 
-     * @return the provider for this binding or <code>null</code> of none
-     */
-    protected IMemoryRenderingBindingsProvider getProvider(IMemoryBlock memoryBlock) {
-		if (isBound(memoryBlock))
-		{
-	        if (fProvider == null) {
-	            String name = fConfigurationElement.getAttribute(ATTR_PROVIDER);
-	            if (name != null) {
-	                try {
-	                    fProvider = (IMemoryRenderingBindingsProvider) fConfigurationElement.createExecutableExtension(ATTR_PROVIDER);
-	                } catch (CoreException e) {
-	                    DebugUIPlugin.log(e);
-	                }
-	            }
-				
-				if (fProvider != null)
-				{
-					fProvider.addListener(new IMemoryRenderingBindingsListener() {
-						public void memoryRenderingBindingsChanged() {
-							fireBindingsChanged();
-						}});
-				}
-	        }
-		}
-		return fProvider;
-    }
-    
-    /**
-     * Returns whether this binding is applies to the given memory block.
-     * 
-     * @param block memory block
-     * @return whether this binding is applies to the given memory block
-     */
-    private boolean isBound(IMemoryBlock block) {
-        Expression expression = getExpression();
-        if (expression != null) {
-            IEvaluationContext context = new EvaluationContext(null, block);
-            try {
-                return expression.evaluate(context) == EvaluationResult.TRUE;
-            } catch (CoreException e) {
-                DebugUIPlugin.log(e);
-                return false;
-            }
-        }
-        return true;
-    }
-    
-    /**
-     * Validates this contribution.
-     * 
-     * @exception CoreException if invalid
-     */
-    void validate() throws CoreException {
-        if (fConfigurationElement.getAttribute(ATTR_PROVIDER) != null) {
-            if (fConfigurationElement.getAttribute(ATTR_RENDERING_IDS) != null ||
-                    fConfigurationElement.getAttribute(ATTR_DEFAULT_IDS) != null ||
-                    fConfigurationElement.getAttribute(ATTR_PRIMARY) != null) {
-                Status status = new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.INTERNAL_ERROR,
-                        "<renderingBindings> element cannot specify other attributes when " + ATTR_PROVIDER + " is present", null); //$NON-NLS-1$ //$NON-NLS-2$
-                throw new CoreException(status);
-            }
-        }
-    }
-    
-    /**
-     * Returns this binding's enablement expression, or <code>null</code> if none.
-     * 
-     * @return enablement expression, or <code>null</code> if none
-     */
-    private Expression getExpression() {
-        if (fExpression == null) {
-            IConfigurationElement[] elements = fConfigurationElement.getChildren(ExpressionTagNames.ENABLEMENT);
-            IConfigurationElement enablement = elements.length > 0 ? elements[0] : null; 
-            if (enablement != null) {
-                try {
-                    fExpression = ExpressionConverter.getDefault().perform(enablement);
-                } catch (CoreException e) {
-                    DebugUIPlugin.log(e);
-                }
-            }
-        }
-        return fExpression;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#getRenderingTypes(org.eclipse.debug.core.model.IMemoryBlock)
-     */
-    public IMemoryRenderingType[] getRenderingTypes(IMemoryBlock block) {
-        if (isBound(block)) {
-            IMemoryRenderingBindingsProvider provider = getProvider(block);
-            if (provider == null) {
-                if (fAllTypes == null) {
-                    IMemoryRenderingType[] defaultBindings = getDefaultBindings();
-                    IMemoryRenderingType[] bindings = getBindings();
-                    fAllTypes = new IMemoryRenderingType[defaultBindings.length + bindings.length];
-                    for (int i = 0; i < defaultBindings.length; i++) {
-                        fAllTypes[i] = defaultBindings[i];
-                    }
-                    for (int i = 0, j = defaultBindings.length; i < bindings.length; i++, j++) {
-                        fAllTypes[j] = bindings[i];
-                    }
-                }
-                return fAllTypes;
-            }
-            return provider.getRenderingTypes(block);
-        }
-        return EMPTY;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#getDefaultRenderingTypes(org.eclipse.debug.core.model.IMemoryBlock)
-     */
-    public IMemoryRenderingType[] getDefaultRenderingTypes(IMemoryBlock block) {
-        if (isBound(block)) {
-            IMemoryRenderingBindingsProvider provider = getProvider(block);
-            if (provider == null) {
-                return getDefaultBindings();
-            }
-            return provider.getDefaultRenderingTypes(block);
-        }
-        return EMPTY;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#getPrimaryRenderingType(org.eclipse.debug.core.model.IMemoryBlock)
-     */
-    public IMemoryRenderingType getPrimaryRenderingType(IMemoryBlock block) {
-        if (isBound(block)) {
-            IMemoryRenderingBindingsProvider provider = getProvider(block);
-            if (provider == null) {
-                String primaryId = getPrimaryId();
-                if (primaryId != null) {
-                    return getManager().getRenderingType(primaryId);
-                }
-            } else {
-                return provider.getPrimaryRenderingType(block);
-            }
-        }
-        return null;
-    }
-    
-    private IMemoryRenderingManager getManager() { 
-        return DebugUITools.getMemoryRenderingManager();
-    }
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/BooleanFieldEditor2.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/BooleanFieldEditor2.java
deleted file mode 100644
index 91e4342..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/BooleanFieldEditor2.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
- 
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * A boolean field editor that provides access to this editors boolean
- * button.
- */
-public class BooleanFieldEditor2 extends BooleanFieldEditor {
-	
-	private  Button fChangeControl;
-
-	/**
-	 * @see BooleanFieldEditor#BooleanFieldEditor(java.lang.String, java.lang.String, int, org.eclipse.swt.widgets.Composite)
-	 */
-	public BooleanFieldEditor2(
-		String name,
-		String labelText,
-		int style,
-		Composite parent) {
-		super(name, labelText, style, parent);
-	}
-
-	/**
-	 * @see org.eclipse.jface.preference.BooleanFieldEditor#getChangeControl(Composite)
-	 */
-	public Button getChangeControl(Composite parent) {
-		if (fChangeControl == null) {
-			fChangeControl = super.getChangeControl(parent);
-		} 
-		return fChangeControl;
-	}
-
-
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ConsolePreferencePage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ConsolePreferencePage.java
deleted file mode 100644
index 3e3ddd6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ConsolePreferencePage.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.jface.preference.ColorFieldEditor;
-import org.eclipse.jface.preference.FieldEditor;
-import org.eclipse.jface.preference.FieldEditorPreferencePage;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.IntegerFieldEditor;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * A page to set the preferences for the console
- */
-public class ConsolePreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
-	
-	/**
-	 * This class exists to provide visibility to the
-	 * <code>refreshValidState</code> method and to perform more intelligent
-	 * clearing of the error message.
-	 */
-	protected class ConsoleIntegerFieldEditor extends IntegerFieldEditor {						
-		
-		public ConsoleIntegerFieldEditor(String name, String labelText, Composite parent) {
-			super(name, labelText, parent);
-		}
-		
-		/**
-		 * @see org.eclipse.jface.preference.FieldEditor#refreshValidState()
-		 */
-		protected void refreshValidState() {
-			super.refreshValidState();
-		}
-		
-		/**
-		 * Clears the error message from the message line if the error
-		 * message is the error message from this field editor.
-		 */
-		protected void clearErrorMessage() {
-			if (canClearErrorMessage()) {
-				super.clearErrorMessage();
-			}
-		}
-	}
-	
-	private BooleanFieldEditor2 fWrapEditor = null;
-	private ConsoleIntegerFieldEditor fWidthEditor = null;
-	
-	private BooleanFieldEditor2 fUseBufferSize = null;
-	private ConsoleIntegerFieldEditor fBufferSizeEditor = null;
-	
-	private ConsoleIntegerFieldEditor fTabSizeEditor = null;
-	
-	/**
-	 * Create the console page.
-	 */
-	public ConsolePreferencePage() {
-		super(GRID);
-		setDescription(DebugPreferencesMessages.ConsolePreferencePage_Console_settings); //$NON-NLS-1$
-		setPreferenceStore(DebugUIPlugin.getDefault().getPreferenceStore());
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createControl(Composite)
-	 */
-	public void createControl(Composite parent) {
-		super.createControl(parent);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(
-			getControl(),
-			IDebugHelpContextIds.CONSOLE_PREFERENCE_PAGE );
-	}
-	
-	/**
-	 * Create all field editors for this page
-	 */
-	public void createFieldEditors() {
-		
-		fWrapEditor = new BooleanFieldEditor2(IDebugPreferenceConstants.CONSOLE_WRAP, DebugPreferencesMessages.ConsolePreferencePage_Wrap_text_1, SWT.NONE, getFieldEditorParent()); //$NON-NLS-1$
-		addField(fWrapEditor);
-		
-		fWidthEditor = new ConsoleIntegerFieldEditor(IDebugPreferenceConstants.CONSOLE_WIDTH, DebugPreferencesMessages.ConsolePreferencePage_Console_width, getFieldEditorParent()); //$NON-NLS-1$
-		addField(fWidthEditor);
-		fWidthEditor.setValidRange(80, 1000);
-		fWidthEditor.setErrorMessage(DebugPreferencesMessages.ConsolePreferencePage_console_width); //$NON-NLS-1$
-		
-		fWrapEditor.getChangeControl(getFieldEditorParent()).addSelectionListener(
-			new SelectionAdapter() {
-				public void widgetSelected(SelectionEvent e) {
-					updateWidthEditor();
-				}
-			}
-		);
-		
-		fUseBufferSize = new BooleanFieldEditor2(IDebugPreferenceConstants.CONSOLE_LIMIT_CONSOLE_OUTPUT, DebugPreferencesMessages.ConsolePreferencePage_Limit_console_output_1, SWT.NONE, getFieldEditorParent()); //$NON-NLS-1$
-		addField(fUseBufferSize);
-		
-		fBufferSizeEditor = new ConsoleIntegerFieldEditor(IDebugPreferenceConstants.CONSOLE_LOW_WATER_MARK, DebugPreferencesMessages.ConsolePreferencePage_Console_buffer_size__characters___2, getFieldEditorParent()); //$NON-NLS-1$
-		addField(fBufferSizeEditor);
-		fBufferSizeEditor.setValidRange(1000, 1000000);
-		fBufferSizeEditor.setErrorMessage(DebugPreferencesMessages.ConsolePreferencePage_The_console_buffer_size_must_be_at_least_1000_characters__1); //$NON-NLS-1$
-		
-		fUseBufferSize.getChangeControl(getFieldEditorParent()).addSelectionListener(
-			new SelectionAdapter() {
-				public void widgetSelected(SelectionEvent e) {
-					updateBufferSizeEditor();
-				}
-			}
-		);
-		
-		fTabSizeEditor = new ConsoleIntegerFieldEditor(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH, DebugPreferencesMessages.ConsolePreferencePage_12, getFieldEditorParent()); //$NON-NLS-1$
-		addField(fTabSizeEditor);
-		fTabSizeEditor.setValidRange(1,100);
-		fTabSizeEditor.setErrorMessage(DebugPreferencesMessages.ConsolePreferencePage_13); //$NON-NLS-1$
-		
-		addField(new BooleanFieldEditor(IDebugPreferenceConstants.CONSOLE_OPEN_ON_OUT, DebugPreferencesMessages.ConsolePreferencePage_Show__Console_View_when_there_is_program_output_3, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-		addField(new BooleanFieldEditor(IDebugPreferenceConstants.CONSOLE_OPEN_ON_ERR, DebugPreferencesMessages.ConsolePreferencePage_Show__Console_View_when_there_is_program_error_3, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-
-		ColorFieldEditor sysout= new ColorFieldEditor(IDebugPreferenceConstants.CONSOLE_SYS_OUT_COLOR, DebugPreferencesMessages.ConsolePreferencePage_Standard_Out__2, getFieldEditorParent()); //$NON-NLS-1$
-		ColorFieldEditor syserr= new ColorFieldEditor(IDebugPreferenceConstants.CONSOLE_SYS_ERR_COLOR, DebugPreferencesMessages.ConsolePreferencePage_Standard_Error__3, getFieldEditorParent()); //$NON-NLS-1$
-		ColorFieldEditor sysin= new ColorFieldEditor(IDebugPreferenceConstants.CONSOLE_SYS_IN_COLOR, DebugPreferencesMessages.ConsolePreferencePage_Standard_In__4, getFieldEditorParent()); //$NON-NLS-1$
-		
-		addField(sysout);
-		addField(syserr);
-		addField(sysin);
-	}
-	
-	/**
-	 * @see IWorkbenchPreferencePage#init(IWorkbench)
-	 */
-	public void init(IWorkbench workbench) {
-	}
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
-	 */
-	public boolean performOk() {
-		boolean ok= super.performOk();
-		// update high water mark to be (about) 100 lines (100 * 80 chars) greater than low water mark
-		IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore();
-		int low = store.getInt(IDebugPreferenceConstants.CONSOLE_LOW_WATER_MARK);
-		int high = low + 8000;
-		store.setValue(IDebugPreferenceConstants.CONSOLE_HIGH_WATER_MARK, high);
-		DebugUIPlugin.getDefault().savePluginPreferences();
-		return ok;
-	}
-
-	/**
-	 * @see org.eclipse.jface.preference.FieldEditorPreferencePage#initialize()
-	 */
-	protected void initialize() {
-		super.initialize();
-		updateWidthEditor();
-		updateBufferSizeEditor();
-	}
-	
-	/**
-	 * Update enablement of width editor based on enablement of 'fixed width' editor.
-	 */
-	protected void updateWidthEditor() {
-		Button b = fWrapEditor.getChangeControl(getFieldEditorParent());
-		fWidthEditor.getTextControl(getFieldEditorParent()).setEnabled(b.getSelection());
-		fWidthEditor.getLabelControl(getFieldEditorParent()).setEnabled(b.getSelection());				
-	}
-
-	/**
-	 * Update enablement of buffer size editor based on enablement of 'limit
-	 * console output' editor.
-	 */
-	protected void updateBufferSizeEditor() {
-		Button b = fUseBufferSize.getChangeControl(getFieldEditorParent());
-		fBufferSizeEditor.getTextControl(getFieldEditorParent()).setEnabled(b.getSelection());
-		fBufferSizeEditor.getLabelControl(getFieldEditorParent()).setEnabled(b.getSelection());
-	}
-	
-	/**
-	 * @see org.eclipse.jface.preference.PreferencePage#performDefaults()
-	 */
-	protected void performDefaults() {
-		super.performDefaults();
-		updateWidthEditor();
-		updateBufferSizeEditor();
-	}
-	
-	protected boolean canClearErrorMessage() {
-		if (fWidthEditor.isValid() && fBufferSizeEditor.isValid()) {
-			return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-
-		if (event.getProperty().equals(FieldEditor.IS_VALID)) {
-			boolean newValue = ((Boolean) event.getNewValue()).booleanValue();
-			// If the new value is true then we must check all field editors.
-			// If it is false, then the page is invalid in any case.
-			if (newValue) {
-				if (fWidthEditor != null && event.getSource() != fWidthEditor) {
-					fWidthEditor.refreshValidState();
-				} 
-				if (fBufferSizeEditor != null && event.getSource() != fBufferSizeEditor) {
-					fBufferSizeEditor.refreshValidState();
-				}
-				checkState();
-			} else {
-				super.propertyChange(event);
-			}
-
-		} else {
-			super.propertyChange(event);
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencePage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencePage.java
deleted file mode 100644
index 599688e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencePage.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.jface.preference.ColorFieldEditor;
-import org.eclipse.jface.preference.FieldEditorPreferencePage;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.RadioGroupFieldEditor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-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.PlatformUI;
-
-/**
- * The page for setting debugger preferences.  Built on the 'field editor' infrastructure.
- */
-public class DebugPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage, IDebugPreferenceConstants {
-	
-	public DebugPreferencePage() {
-		super(GRID);
-
-		IPreferenceStore store= DebugUIPlugin.getDefault().getPreferenceStore();
-		setPreferenceStore(store);
-		setDescription(DebugPreferencesMessages.DebugPreferencePage_1); //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createControl(Composite)
-	 */
-	public void createControl(Composite parent) {
-		super.createControl(parent);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IDebugHelpContextIds.DEBUG_PREFERENCE_PAGE);
-	}
-	
-	/**
-	 * @see FieldEditorPreferencePage#createFieldEditors
-	 */
-	protected void createFieldEditors() {
-		addField(new BooleanFieldEditor(IDebugUIConstants.PREF_REUSE_EDITOR, DebugPreferencesMessages.DebugPreferencePage_2, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-		
-		createSpacer(getFieldEditorParent(), 2);
-		
-		addField(new BooleanFieldEditor(IDebugUIConstants.PREF_ACTIVATE_WORKBENCH, DebugPreferencesMessages.DebugPreferencePage_3, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-		addField(new BooleanFieldEditor(IInternalDebugUIConstants.PREF_ACTIVATE_DEBUG_VIEW, DebugPreferencesMessages.DebugPreferencePage_26, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-		createSwitchPerspectiveOnSuspendEditor();
-
-		createSpacer(getFieldEditorParent(), 2);
-		
-		addField(new BooleanFieldEditor(IDebugUIConstants.PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE, DebugPreferencesMessages.DebugPreferencePage_25, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-		
-		createSpacer(getFieldEditorParent(), 2);
-		ColorFieldEditor mem= new ColorFieldEditor(IDebugPreferenceConstants.CHANGED_VARIABLE_COLOR, DebugPreferencesMessages.DebugPreferencePage_4, getFieldEditorParent()); //$NON-NLS-1$
-		addField(mem);
-		mem= new ColorFieldEditor(IDebugPreferenceConstants.MEMORY_VIEW_UNBUFFERED_LINE_COLOR, DebugPreferencesMessages.DebugPreferencePage_0, getFieldEditorParent()); //$NON-NLS-1$
-		addField(mem);
-		mem= new ColorFieldEditor(IDebugPreferenceConstants.MEMORY_VIEW_BUFFERED_LINE_COLOR, DebugPreferencesMessages.DebugPreferencePage_27, getFieldEditorParent()); //$NON-NLS-1$
-		addField(mem);
-	}
-
-	/**
-	 * @see IWorkbenchPreferencePage#init(IWorkbench)
-	 */
-	public void init(IWorkbench workbench) {
-	}
-	
-	private void createSwitchPerspectiveOnSuspendEditor() {
-		addField(new RadioGroupFieldEditor(IInternalDebugUIConstants.PREF_SWITCH_PERSPECTIVE_ON_SUSPEND,
-				DebugPreferencesMessages.DebugPreferencePage_21, 3, //$NON-NLS-1$
-				new String[][] {{DebugPreferencesMessages.DebugPreferencePage_22, MessageDialogWithToggle.ALWAYS}, //$NON-NLS-1$
-								{DebugPreferencesMessages.DebugPreferencePage_23, MessageDialogWithToggle.NEVER}, //$NON-NLS-1$
-								{DebugPreferencesMessages.DebugPreferencePage_24, MessageDialogWithToggle.PROMPT}}, //$NON-NLS-1$
-				getFieldEditorParent(),
-				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);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
-	 */
-	public boolean performOk() {
-		boolean ok= super.performOk();
-		DebugUIPlugin.getDefault().savePluginPreferences();
-		return ok;
-	}			
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.java
deleted file mode 100644
index d2ab51a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-import org.eclipse.osgi.util.NLS;
-
-public class DebugPreferencesMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.preferences.DebugPreferencesMessages";//$NON-NLS-1$
-
-	public static String ConsolePreferencePage_Console_settings;
-	public static String ConsolePreferencePage_Show__Console_View_when_there_is_program_error_3;
-	public static String ConsolePreferencePage_Show__Console_View_when_there_is_program_output_3;
-	public static String ConsolePreferencePage_Standard_Error__3;
-	public static String ConsolePreferencePage_Standard_In__4;
-	public static String ConsolePreferencePage_Standard_Out__2;
-	public static String ConsolePreferencePage_Wrap_text_1;
-	public static String ConsolePreferencePage_Console_width;
-	public static String ConsolePreferencePage_Limit_console_output_1;
-	public static String ConsolePreferencePage_Console_buffer_size__characters___2;
-	public static String ConsolePreferencePage_The_console_buffer_size_must_be_at_least_1000_characters__1;
-	public static String ConsolePreferencePage_console_width;
-	public static String ConsolePreferencePage_12;
-	public static String ConsolePreferencePage_13;
-
-	public static String DebugPreferencePage_1;
-	public static String DebugPreferencePage_2;
-	public static String DebugPreferencePage_3;
-	public static String DebugPreferencePage_0;
-	public static String DebugPreferencePage_4;
-	public static String DebugPreferencePage_10;
-	public static String DebugPreferencePage_11;
-	public static String DebugPreferencePage_21;
-	public static String DebugPreferencePage_22;
-	public static String DebugPreferencePage_23;
-	public static String DebugPreferencePage_24;
-	public static String DebugPreferencePage_25;
-	public static String DebugPreferencePage_26;
-	public static String DebugPreferencePage_27;
-
-	public static String LaunchingPreferencePage_1;
-	public static String LaunchingPreferencePage_2;
-	public static String LaunchingPreferencePage_3;
-	public static String LaunchingPreferencePage_4;
-	public static String LaunchingPreferencePage_5;
-	public static String LaunchingPreferencePage_6;
-	public static String LaunchingPreferencePage_7;
-	public static String LaunchingPreferencePage_8;
-	public static String LaunchingPreferencePage_9;
-	public static String LaunchingPreferencePage_10;
-	public static String LaunchingPreferencePage_11;
-	public static String LaunchingPreferencePage_12;
-	public static String LaunchingPreferencePage_13;
-	public static String LaunchingPreferencePage_14;
-	public static String LaunchingPreferencePage_15;
-	public static String LaunchingPreferencePage_16;
-	public static String LaunchingPreferencePage_17;
-	public static String LaunchingPreferencePage_18;
-	public static String LaunchingPreferencePage_20;
-	public static String LaunchingPreferencePage_21;
-	public static String LaunchingPreferencePage_22;
-	public static String LaunchingPreferencePage_23;
-
-	public static String ProcessPropertyPage_Command_Line__1;
-
-	public static String SimpleVariablePreferencePage_3;
-	public static String SimpleVariablePreferencePage_4;
-	public static String SimpleVariablePreferencePage_5;
-	public static String SimpleVariablePreferencePage_6;
-	public static String SimpleVariablePreferencePage_7;
-	public static String SimpleVariablePreferencePage_8;
-	public static String SimpleVariablePreferencePage_9;
-	public static String SimpleVariablePreferencePage_10;
-	public static String SimpleVariablePreferencePage_11;
-	public static String SimpleVariablePreferencePage_12;
-	public static String SimpleVariablePreferencePage_13;
-	public static String SimpleVariablePreferencePage_14;
-	public static String SimpleVariablePreferencePage_15;
-	public static String SimpleVariablePreferencePage_16;
-	public static String SimpleLaunchVariablePreferencePage_21;
-	public static String SimpleLaunchVariablePreferencePage_22;
-	public static String SimpleLaunchVariablePreferencePage_23;
-	public static String StringVariablePreferencePage_24;
-	public static String StringVariablePreferencePage_25;
-	public static String StringVariablePreferencePage_0;
-	public static String ViewManagementPreferencePage_0;
-	public static String ViewManagementPreferencePage_1;
-	public static String ViewManagementPreferencePage_2;
-	public static String ViewManagementPreferencePage_3;
-	public static String ViewManagementPreferencePage_4;
-	public static String ViewManagementPreferencePage_5;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, DebugPreferencesMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.properties
deleted file mode 100644
index 2af5cce..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/DebugPreferencesMessages.properties
+++ /dev/null
@@ -1,92 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ConsolePreferencePage_Console_settings=Debug Console Settings.
-ConsolePreferencePage_Show__Console_View_when_there_is_program_error_3=Show when &program writes to standard error
-ConsolePreferencePage_Show__Console_View_when_there_is_program_output_3=&Show when program writes to standard out
-ConsolePreferencePage_Standard_Error__3=Standard &Error text color:
-ConsolePreferencePage_Standard_In__4=Standard &In text color:
-ConsolePreferencePage_Standard_Out__2=Standard &Out text color:
-ConsolePreferencePage_Wrap_text_1=Fixed &width console
-ConsolePreferencePage_Console_width=&Maximum character width:
-ConsolePreferencePage_Limit_console_output_1=&Limit console output
-ConsolePreferencePage_Console_buffer_size__characters___2=Console &buffer size (characters):
-ConsolePreferencePage_The_console_buffer_size_must_be_at_least_1000_characters__1=The console buffer size must be between 1000 and 1000000 characters inclusive.
-ConsolePreferencePage_console_width=The console character width must be between 80 and 1000 characters inclusive.
-ConsolePreferencePage_12=Displayed &tab width:
-ConsolePreferencePage_13=Tab width must be between 1 and 100 inclusive.
-
-DebugPreferencePage_1=General Settings for Running and Debugging.
-DebugPreferencePage_2=Re&use editor when displaying source code
-DebugPreferencePage_3=Activate the workbenc&h when a breakpoint is hit
-DebugPreferencePage_0=&Memory View unbufferred lines color:
-DebugPreferencePage_4=&Variables View changed value color:
-DebugPreferencePage_10=Si&ze of recently launched applications list:
-DebugPreferencePage_11=The size of recently launched applications should be between {0} and {1}
-DebugPreferencePage_21=Open the associated perspective when an application suspends
-DebugPreferencePage_22=A&lways
-DebugPreferencePage_23=&Never
-DebugPreferencePage_24=&Prompt
-DebugPreferencePage_25=Skip &breakpoints during a "Run To Line" operation.
-DebugPreferencePage_26=A&ctivate the debug view when a breakpoint is hit
-DebugPreferencePage_27=Memory View buffered lines color:
-
-LaunchingPreferencePage_1=&Build (if required) before launching
-LaunchingPreferencePage_2=Save dirty editors before launching
-LaunchingPreferencePage_3=Alwa&ys
-LaunchingPreferencePage_4=&Never
-LaunchingPreferencePage_5=&Prompt
-LaunchingPreferencePage_6=Wait for ongoing build to complete before launching
-LaunchingPreferencePage_7=A&lways
-LaunchingPreferencePage_8=N&ever
-LaunchingPreferencePage_9=Pro&mpt
-LaunchingPreferencePage_10=Remove term&inated launches when a new launch is created
-LaunchingPreferencePage_11=Open the associated perspective when launching
-LaunchingPreferencePage_12=Al&ways
-LaunchingPreferencePage_13=Ne&ver
-LaunchingPreferencePage_14=Pr&ompt
-LaunchingPreferencePage_15=Launch in debug mode when workspace contains breakpoints
-LaunchingPreferencePage_16=Alway&s
-LaunchingPreferencePage_17=Neve&r
-LaunchingPreferencePage_18=Promp&t
-LaunchingPreferencePage_20=General Settings for Launching
-LaunchingPreferencePage_21=&Continue launch if project contains errors
-LaunchingPreferencePage_22=Always
-LaunchingPreferencePage_23=Prompt
-
-ProcessPropertyPage_Command_Line__1=Command Line:
-
-SimpleVariablePreferencePage_3=Variable
-SimpleVariablePreferencePage_4=Value
-SimpleVariablePreferencePage_5=Description
-SimpleVariablePreferencePage_6=&Create and configure string substitution variables.
-SimpleVariablePreferencePage_7=&New...
-SimpleVariablePreferencePage_8=&Edit...
-SimpleVariablePreferencePage_9=&Remove
-SimpleVariablePreferencePage_10=&Name:
-SimpleVariablePreferencePage_11=&Value:
-SimpleVariablePreferencePage_12=&Description:
-SimpleVariablePreferencePage_13=New String Substitution Variable
-SimpleVariablePreferencePage_14=Edit String Substitution Variable
-SimpleVariablePreferencePage_15=Overwrite variable?
-SimpleVariablePreferencePage_16=A variable named {0} already exists. Overwrite?
-SimpleLaunchVariablePreferencePage_21=Remove Contributed Variables
-SimpleLaunchVariablePreferencePage_22=The following variables were contributed by plug-ins. Removing them may cause unknown problems.\n{0}\nProceed?
-SimpleLaunchVariablePreferencePage_23=\ [contributed]
-StringVariablePreferencePage_24=Error
-StringVariablePreferencePage_25=Unable to save changes
-StringVariablePreferencePage_0=\ [contributed by {0}]
-ViewManagementPreferencePage_0=The Debug View can automatically open and close views based on selection. Choose in which perspectives this feature should be enabled:
-ViewManagementPreferencePage_1=View Management
-ViewManagementPreferencePage_2=&Perspectives:
-ViewManagementPreferencePage_3=Do &not automatically open/close views which have been manually closed/opened.
-ViewManagementPreferencePage_4=The list of views that have been manually opened/closed is persisted between sessions.
-ViewManagementPreferencePage_5=&Reset
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/IDebugPreferenceConstants.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/IDebugPreferenceConstants.java
deleted file mode 100644
index 44cd483..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/IDebugPreferenceConstants.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-
-import org.eclipse.debug.ui.IDebugUIConstants;
- 
-/**
- * Constants defining the keys to be used for accessing preferences
- * inside the debug ui plugin's preference bundle.
- *
- * In descriptions (of the keys) below describe the preference 
- * stored at the given key. The type indicates type of the stored preferences
- *
- * The preference store is loaded by the plugin (DebugUIPlugin).
- * @see DebugUIPlugin.initializeDefaultPreferences(IPreferenceStore) - for initialization of the store
- */
-public interface IDebugPreferenceConstants {
-
-	/**
-	 * The symbolic names for colors for displaying the content in the Console
-	 * @see org.eclipse.jface.resource.ColorRegistry
-	 */
-	public static final String CONSOLE_SYS_ERR_COLOR= "org.eclipse.debug.ui.errorColor"; //$NON-NLS-1$
-	public static final String CONSOLE_SYS_OUT_COLOR= "org.eclipse.debug.ui.outColor"; //$NON-NLS-1$
-	public static final String CONSOLE_SYS_IN_COLOR= "org.eclipse.debug.ui.inColor"; //$NON-NLS-1$
-	
-	public static final String MEMORY_VIEW_UNBUFFERED_LINE_COLOR = IDebugUIConstants.PLUGIN_ID + ".MemoryViewLineColor"; //$NON-NLS-1$
-	public static final String MEMORY_VIEW_BUFFERED_LINE_COLOR = IDebugUIConstants.PLUGIN_ID + ".MemoryViewBufferedLineColor"; //$NON-NLS-1$
-	
-	/**
-	 * (boolean) Whether or not the text in the console will wrap
-	 */
-	public static final String CONSOLE_WRAP= "Console.wrap"; //$NON-NLS-1$
-	
-	/**
-	 * (int) The maximum console character width, if wrapping. 
-	 */ 
-	public static final String CONSOLE_WIDTH = "Console.width"; //$NON-NLS-1$
-	
-	/**
-	 * (boolean) Whether or not the console view is shown 
-	 * when there is program output.
-  	 */
-	public static final String CONSOLE_OPEN_ON_OUT= "DEBUG.consoleOpenOnOut"; //$NON-NLS-1$
-	/**
-	 * (boolean) Whether or not the console view is shown 
-	 * when there is program error.
-  	 */
-	public static final String CONSOLE_OPEN_ON_ERR= "DEBUG.consoleOpenOnErr"; //$NON-NLS-1$
-	
-	/**
-	 * Console buffer high and low water marks
-	 */
-	public static final String CONSOLE_LIMIT_CONSOLE_OUTPUT = "Console.limitConsoleOutput"; //$NON-NLS-1$
-	public static final String CONSOLE_LOW_WATER_MARK = "Console.lowWaterMark"; //$NON-NLS-1$ 
-	public static final String CONSOLE_HIGH_WATER_MARK = "Console.highWaterMark"; //$NON-NLS-1$
-	
-	/**
-	 * Integer preference specifying the number of spaces composing a
-	 * tab in the console.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String CONSOLE_TAB_WIDTH= "Console.console_tab_width"; //$NON-NLS-1$
-	
-	/**
-	 * Font preference setting for the process console.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String CONSOLE_FONT= "org.eclipse.debug.ui.consoleFont"; //$NON-NLS-1$
-	
-	/**
-	 * The orientation of the detail view in the VariablesView
-	 */
-	public static final String VARIABLES_DETAIL_PANE_ORIENTATION = "Variables.detail.orientation"; //$NON-NLS-1$
-	public static final String EXPRESSIONS_DETAIL_PANE_ORIENTATION = "Expressions.detail.orientation"; //$NON-NLS-1$
-	public static final String REGISTERS_DETAIL_PANE_ORIENTATION = "Registers.detail.orientation"; //$NON-NLS-1$
-	public static final String VARIABLES_DETAIL_PANE_RIGHT = "Variables.detail.orientation.right"; //$NON-NLS-1$
-	public static final String VARIABLES_DETAIL_PANE_UNDERNEATH = "Variables.detail.orientation.underneath"; //$NON-NLS-1$
-	public static final String VARIABLES_DETAIL_PANE_HIDDEN = "Variables.detail.orientation.hidden"; //$NON-NLS-1$
-	
-	/**
-	 * The symbolic name for the color to indicate a changed variable
-	 * @see org.eclipse.jface.resource.ColorRegistry
-	 */
-	public static final String CHANGED_VARIABLE_COLOR= "org.eclipse.debug.ui.changedVariableColor"; //$NON-NLS-1$
-	
-	/**
-	 * Memento for the last selected launch config in the
-	 * launch config dialog.
-	 * 
-	 * @deprecated no longer supported
-	 */
-	public static final String PREF_LAST_LAUNCH_CONFIGURATION_SELECTION = IDebugUIConstants.PLUGIN_ID + ".lastLaunchConfigSelection"; //$NON-NLS-1$
-		
-	/**
-	 * The maximum size of the launch history list
-	 */
-	public static int MAX_LAUNCH_HISTORY_SIZE= 20;
-	
-	/**
-	 * Common dialog settings
-	 */
-	public static final String DIALOG_ORIGIN_X = IDebugUIConstants.PLUGIN_ID + ".DIALOG_ORIGIN_X"; //$NON-NLS-1$
-	public static final String DIALOG_ORIGIN_Y = IDebugUIConstants.PLUGIN_ID + ".DIALOG_ORIGIN_Y"; //$NON-NLS-1$
-	public static final String DIALOG_WIDTH = IDebugUIConstants.PLUGIN_ID + ".DIALOG_WIDTH"; //$NON-NLS-1$
-	public static final String DIALOG_HEIGHT = IDebugUIConstants.PLUGIN_ID + ".DIALOG_HEIGHT"; //$NON-NLS-1$
-	public static final String DIALOG_SASH_WEIGHTS_1 = IDebugUIConstants.PLUGIN_ID + ".DIALOG_SASH_WEIGHTS_1"; //$NON-NLS-1$
-	public static final String DIALOG_SASH_WEIGHTS_2 = IDebugUIConstants.PLUGIN_ID + ".DIALOG_SASH_WEIGHTS_2"; //$NON-NLS-1$
-
-
-	/**
-	 * Boolean preference controlling whether the text in the detail panes is
-	 * wrapped. When <code>true</code> the text in the detail panes will be
-	 * wrapped in new variable view.
-	 *
-	 * @since 2.1
-	 */
-	public static final String PREF_DETAIL_PANE_WORD_WRAP = IDebugUIConstants.PLUGIN_ID + ".detail_pane_word_wrap"; //$NON-NLS-1$
-	
-	/**
-	 * Column size preference for the Memory View
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_COLUMN_SIZE = "org.eclipse.debug.ui.memory.columnSize"; //$NON-NLS-1$
-	
-	/**
-	 * Default column size for the Memory View
-	 * 
-	 * @since 3.0
-	 */
-	public static final int PREF_COLUMN_SIZE_DEFAULT = 4;
-		
-	/**
-	 * Default padded string for renderings
-	 * 
-	 * @since 3.1
-	 */
-	public static final String PREF_PADDED_STR_DEFAULT = "??"; //$NON-NLS-1$
-	
-	/**
-	 * Default ASCII code page if ASCII code page preference is not set.
-	 * @since 3.1
-	 */
-	public static final String DEFAULT_ASCII_CP = "CP1252"; //$NON-NLS-1$
-	
-	
-	/**
-	 * Default EBCDIC code page if EBCDIC code page preference is not set.
-	 * @since 3.1
-	 */
-	public static final String DEFAULT_EBCDIC_CP = "CP037"; //$NON-NLS-1$
-	
-	/**
-	 * Preference to determine if table rendering should dynamically load
-	 * memory as the user scrolls
-	 * 
-	 * @since 3.1
-	 */
-	public static final String PREF_DYNAMIC_LOAD_MEM = "org.eclpise.debug.ui.memory.dynamicLoad"; //$NON-NLS-1$
-	
-	
-	/**
-	 * Size of buffer in a table rendering when dynamic loading mode is off.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String PREF_TABLE_RENDERING_PAGE_SIZE = "org.eclispe.debug.ui.memory.pageSize"; //$NON-NLS-1$
-	
-	/**
-	 * Default page size when dynamic loading mode is off.  This preference is stored
-	 * in number of lines.
-	 * 
-	 * @since 3.1
-	 */
-	public static final int DEFAULT_PAGE_SIZE = 20;
-}
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/LaunchingPreferencePage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/LaunchingPreferencePage.java
deleted file mode 100644
index 0af3854..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/LaunchingPreferencePage.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-import java.text.MessageFormat;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.MessageDialogWithToggle;
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.jface.preference.FieldEditor;
-import org.eclipse.jface.preference.FieldEditorPreferencePage;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.IntegerFieldEditor;
-import org.eclipse.jface.preference.RadioGroupFieldEditor;
-import org.eclipse.jface.preference.StringFieldEditor;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-
-/**
- * A preference page for configuring launching preferences.
- */
-public class LaunchingPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
-	
-	public LaunchingPreferencePage() {
-		super(GRID);
-
-		IPreferenceStore store= DebugUIPlugin.getDefault().getPreferenceStore();
-		setPreferenceStore(store);
-		setDescription(DebugPreferencesMessages.LaunchingPreferencePage_20); //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.FieldEditorPreferencePage#createFieldEditors()
-	 */
-	protected void createFieldEditors() {
-		addField(new BooleanFieldEditor(IDebugUIConstants.PREF_BUILD_BEFORE_LAUNCH, DebugPreferencesMessages.LaunchingPreferencePage_1, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-		createSaveBeforeLaunchEditors();
-		createWaitForBuildEditor();
-		
-		createSpacer(getFieldEditorParent(), 2);
-
-		addField(new BooleanFieldEditor(IDebugUIConstants.PREF_AUTO_REMOVE_OLD_LAUNCHES, DebugPreferencesMessages.LaunchingPreferencePage_10, SWT.NONE, getFieldEditorParent())); //$NON-NLS-1$
-		createSwitchPerspectiveEditor();
-		createRelaunchInDebugMode();
-		createContinueWithCompileErrors();
-		
-		createLaunchHistoryEditor();
-	}
-	
-
-	protected void createSpacer(Composite composite, int columnSpan) {
-		Label label = new Label(composite, SWT.NONE);
-		GridData gd = new GridData();
-		gd.horizontalSpan = columnSpan;
-		label.setLayoutData(gd);
-	}
-	
-	private void createLaunchHistoryEditor() {
-		final IntegerFieldEditor editor = new IntegerFieldEditor(IDebugUIConstants.PREF_MAX_HISTORY_SIZE, DebugPreferencesMessages.DebugPreferencePage_10, getFieldEditorParent()); //$NON-NLS-1$
-		int historyMax = IDebugPreferenceConstants.MAX_LAUNCH_HISTORY_SIZE;
-		editor.setTextLimit(Integer.toString(historyMax).length());
-		editor.setErrorMessage(MessageFormat.format(DebugPreferencesMessages.DebugPreferencePage_11, new Object[] { new Integer(1), new Integer(historyMax)})); //$NON-NLS-1$
-		editor.setValidateStrategy(StringFieldEditor.VALIDATE_ON_KEY_STROKE);
-		editor.setValidRange(1, historyMax);		
-		editor.setPropertyChangeListener(new IPropertyChangeListener() {
-			public void propertyChange(PropertyChangeEvent event) {
-				if (event.getProperty().equals(FieldEditor.IS_VALID)) 
-					setValid(editor.isValid());
-			}
-		});
-		addField(editor);
-	}
-	
-	private void createSaveBeforeLaunchEditors() {
-		addField(new RadioGroupFieldEditor(IInternalDebugUIConstants.PREF_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH, DebugPreferencesMessages.LaunchingPreferencePage_2, 3,  //$NON-NLS-1$
-										new String[][] {{DebugPreferencesMessages.LaunchingPreferencePage_3, MessageDialogWithToggle.ALWAYS}, //$NON-NLS-1$
-											{DebugPreferencesMessages.LaunchingPreferencePage_4, MessageDialogWithToggle.NEVER}, //$NON-NLS-1$
-											{DebugPreferencesMessages.LaunchingPreferencePage_5, MessageDialogWithToggle.PROMPT}}, //$NON-NLS-1$
-										getFieldEditorParent(),
-										true));	
-	}	
-	
-	private void createWaitForBuildEditor() {
-		addField(new RadioGroupFieldEditor(IInternalDebugUIConstants.PREF_WAIT_FOR_BUILD, 
-						DebugPreferencesMessages.LaunchingPreferencePage_6, 3,  //$NON-NLS-1$
-						new String[][] {{DebugPreferencesMessages.LaunchingPreferencePage_7, MessageDialogWithToggle.ALWAYS}, //$NON-NLS-1$
-							{DebugPreferencesMessages.LaunchingPreferencePage_8, MessageDialogWithToggle.NEVER}, //$NON-NLS-1$
-							{DebugPreferencesMessages.LaunchingPreferencePage_9, MessageDialogWithToggle.PROMPT}}, //$NON-NLS-1$
-						getFieldEditorParent(),
-						true));
-	}
-	
-	private void createSwitchPerspectiveEditor() {
-		addField(new RadioGroupFieldEditor(IInternalDebugUIConstants.PREF_SWITCH_TO_PERSPECTIVE,
-				DebugPreferencesMessages.LaunchingPreferencePage_11, 3, //$NON-NLS-1$
-				new String[][] {{DebugPreferencesMessages.LaunchingPreferencePage_12, MessageDialogWithToggle.ALWAYS}, //$NON-NLS-1$
-								{DebugPreferencesMessages.LaunchingPreferencePage_13, MessageDialogWithToggle.NEVER}, //$NON-NLS-1$
-								{DebugPreferencesMessages.LaunchingPreferencePage_14, MessageDialogWithToggle.PROMPT}}, //$NON-NLS-1$
-				getFieldEditorParent(),
-				true));
-	}
-	
-	private void createRelaunchInDebugMode() {
-		addField(new RadioGroupFieldEditor(IInternalDebugUIConstants.PREF_RELAUNCH_IN_DEBUG_MODE,
-				DebugPreferencesMessages.LaunchingPreferencePage_15, 3, //$NON-NLS-1$
-				new String[][] {{DebugPreferencesMessages.LaunchingPreferencePage_16, MessageDialogWithToggle.ALWAYS}, //$NON-NLS-1$
-					{DebugPreferencesMessages.LaunchingPreferencePage_17, MessageDialogWithToggle.NEVER}, //$NON-NLS-1$
-					{DebugPreferencesMessages.LaunchingPreferencePage_18, MessageDialogWithToggle.PROMPT}}, //$NON-NLS-1$
-				getFieldEditorParent(),
-				true));
-	}	
-
-	private void createContinueWithCompileErrors() {
-		addField(new RadioGroupFieldEditor(IInternalDebugUIConstants.PREF_CONTINUE_WITH_COMPILE_ERROR,
-				DebugPreferencesMessages.LaunchingPreferencePage_21, 2, //$NON-NLS-1$
-				new String[][] {{DebugPreferencesMessages.LaunchingPreferencePage_22, MessageDialogWithToggle.ALWAYS},  //$NON-NLS-1$
-					{DebugPreferencesMessages.LaunchingPreferencePage_23, MessageDialogWithToggle.PROMPT}},  //$NON-NLS-1$
-				getFieldEditorParent(),
-				true));
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
-	 */
-	public void init(IWorkbench workbench) {
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ProcessPropertyPage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ProcessPropertyPage.java
deleted file mode 100644
index 183e8e6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ProcessPropertyPage.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.PropertyPage;
-
-public class ProcessPropertyPage extends PropertyPage {
-
-	/**
-	 * Constructor for ProcessPropertyPage
-	 */
-	public ProcessPropertyPage() {
-		super();
-	}
-
-	/**
-	 * @see PreferencePage#createContents(Composite)
-	 */
-	protected Control createContents(Composite ancestor) {
-
-		Font font = ancestor.getFont();
-		noDefaultAndApplyButton();
-		
-		Composite parent= new Composite(ancestor, SWT.NULL);
-		GridLayout layout= new GridLayout();
-		layout.numColumns= 2;
-		parent.setLayout(layout);
-		
-		Label l1= new Label(parent, SWT.NULL);
-		l1.setText(DebugPreferencesMessages.ProcessPropertyPage_Command_Line__1); //$NON-NLS-1$
-		
-		GridData gd= new GridData();
-		gd.verticalAlignment= GridData.BEGINNING;
-		l1.setLayoutData(gd);
-		l1.setFont(font);
-		Text l2= new Text(parent, SWT.WRAP | SWT.BORDER | SWT.V_SCROLL | SWT.READ_ONLY);
-		gd= new GridData(GridData.FILL_HORIZONTAL);
-		gd.widthHint= convertWidthInCharsToPixels(80);
-		gd.heightHint= convertHeightInCharsToPixels(15);
-		l2.setLayoutData(gd);
-		l2.setFont(font);
-		initCommandLineLabel(l2);
-		
-		return parent;
-	}
-	
-	private void initCommandLineLabel(Text l) {
-		Object o= getElement();
-		if (o instanceof IDebugElement)
-			o= ((IDebugElement)o).getDebugTarget().getProcess();
-		if (o instanceof IProcess) {
-			IProcess process= (IProcess)o;
-			String cmdLine= process.getAttribute(IProcess.ATTR_CMDLINE);
-			if (cmdLine != null)
-				l.setText(cmdLine);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		super.createControl(parent);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(
-			getControl(),
-			IDebugHelpContextIds.PROCESS_PROPERTY_PAGE);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/StringVariablePreferencePage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/StringVariablePreferencePage.java
deleted file mode 100644
index 54f5f0a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/StringVariablePreferencePage.java
+++ /dev/null
@@ -1,527 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.variables.IStringVariableManager;
-import org.eclipse.core.variables.IValueVariable;
-import org.eclipse.core.variables.VariablesPlugin;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.MultipleInputDialog;
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jface.viewers.ColumnLayoutData;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Preference page for creating and configuring simple
- * launch variables.
- * 
- * @see org.eclipse.debug.core.variables.IValueVariable
- * @see org.eclipse.debug.core.variables.ISimpleVariableRegistry
- */
-public class StringVariablePreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
-	
-	private TableViewer variableTable;
-	protected Button envAddButton;
-	protected Button envEditButton;
-	protected Button envRemoveButton;
-	
-	protected SimpleVariableContentProvider variableContentProvider= new SimpleVariableContentProvider();
-	
-	protected static final String NAME_LABEL= DebugPreferencesMessages.SimpleVariablePreferencePage_10; //$NON-NLS-1$
-	protected static final String VALUE_LABEL = DebugPreferencesMessages.SimpleVariablePreferencePage_11; //$NON-NLS-1$
-	protected static final String DESCRIPTION_LABEL = DebugPreferencesMessages.SimpleVariablePreferencePage_12; //$NON-NLS-1$
-	
-	protected static String[] variableTableColumnProperties= {
-		"variable", //$NON-NLS-1$
-		"value", //$NON-NLS-1$
-		"description" //$NON-NLS-1$
-	};
-	protected String[] variableTableColumnHeaders= {
-		DebugPreferencesMessages.SimpleVariablePreferencePage_3, //$NON-NLS-1$
-		DebugPreferencesMessages.SimpleVariablePreferencePage_4, //$NON-NLS-1$
-		DebugPreferencesMessages.SimpleVariablePreferencePage_5
-	};
-	protected ColumnLayoutData[] variableTableColumnLayouts= {
-		new ColumnWeightData(33),
-		new ColumnWeightData(33),
-		new ColumnWeightData(34)
-	};
-	
-	public StringVariablePreferencePage() {
-		setDescription(DebugPreferencesMessages.SimpleVariablePreferencePage_6); //$NON-NLS-1$
-	}
-
-	/**
-	 * @see PreferencePage#createControl(Composite)
-	 */
-	public void createControl(Composite parent) {
-		super.createControl(parent);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IDebugHelpContextIds.SIMPLE_VARIABLE_PREFERENCE_PAGE);
-	}
-
-	protected Control createContents(Composite parent) {
-		noDefaultAndApplyButton();
-		Font font= parent.getFont();
-		//The main composite
-		Composite composite = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight=0;
-		layout.marginWidth=0;
-		layout.numColumns= 2;
-		composite.setLayout(layout);
-		composite.setFont(font);
-		
-		createTable(composite);
-		createButtons(composite);
-		return composite;
-	}
-	
-	/**
-	 * Creates and configures the table containing launch configuration variables
-	 * and their associated value.
-	 */
-	private void createTable(Composite parent) {
-		Font font= parent.getFont();
-		// Create table composite
-		Composite tableComposite = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		layout.numColumns = 1;
-		GridData gridData = new GridData(GridData.FILL_BOTH);
-		gridData.heightHint = 150;
-		gridData.widthHint = 400;
-		tableComposite.setLayout(layout);
-		tableComposite.setLayoutData(gridData);
-		tableComposite.setFont(font);
-		// Create table
-		variableTable = new TableViewer(tableComposite, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION);
-		Table table = variableTable.getTable();
-		TableLayout tableLayout = new TableLayout();
-		table.setLayout(tableLayout);
-		table.setHeaderVisible(true);
-		table.setLinesVisible(true);
-		table.setFont(font);
-		gridData = new GridData(GridData.FILL_BOTH);
-		variableTable.getControl().setLayoutData(gridData);
-		variableTable.setContentProvider(variableContentProvider);
-		variableTable.setColumnProperties(variableTableColumnProperties);
-		variableTable.setSorter(new ViewerSorter() {
-			public int compare(Viewer iViewer, Object e1, Object e2) {
-				if (e1 == null) {
-					return -1;
-				} else if (e2 == null) {
-					return 1;
-				} else {
-					return ((IValueVariable)e1).getName().compareToIgnoreCase(((IValueVariable)e2).getName());
-				}
-			}
-		});
-		
-		variableTable.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				handleTableSelectionChanged(event);
-			}
-		});
-		
-		variableTable.addDoubleClickListener(new IDoubleClickListener() {
-			public void doubleClick(DoubleClickEvent event) {
-				if (!variableTable.getSelection().isEmpty()) {
-					handleEditButtonPressed();
-				}
-			}
-		});
-		variableTable.getTable().addKeyListener(new KeyAdapter() {
-			public void keyPressed(KeyEvent event) {
-				if (event.character == SWT.DEL && event.stateMask == 0) {
-					handleRemoveButtonPressed();
-				}
-			}
-		});
-				
-		// Create columns
-		for (int i = 0; i < variableTableColumnHeaders.length; i++) {
-			tableLayout.addColumnData(variableTableColumnLayouts[i]);
-			TableColumn tc = new TableColumn(table, SWT.NONE, i);
-			tc.setResizable(variableTableColumnLayouts[i].resizable);
-			tc.setText(variableTableColumnHeaders[i]);
-		}
-		variableTable.setInput(getVariableManager());
-		variableTable.setLabelProvider(new SimpleVariableLabelProvider());
-	}
-	
-	/**
-	 * Creates the new/edit/remove buttons for the variable table
-	 * @param parent the composite in which the buttons should be created
-	 */
-	private void createButtons(Composite parent) {
-		// Create button composite
-		Composite buttonComposite = new Composite(parent, SWT.NONE);
-		GridLayout glayout = new GridLayout();
-		glayout.marginHeight = 0;
-		glayout.marginWidth = 0;
-		glayout.numColumns = 1;
-		GridData gdata = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);
-		buttonComposite.setLayout(glayout);
-		buttonComposite.setLayoutData(gdata);
-		buttonComposite.setFont(parent.getFont());
-		
-		// Create buttons
-		envAddButton = SWTUtil.createPushButton(buttonComposite, DebugPreferencesMessages.SimpleVariablePreferencePage_7, null); //$NON-NLS-1$
-		envAddButton.addSelectionListener(new SelectionAdapter()
-		{
-			public void widgetSelected(SelectionEvent event) {
-				handleAddButtonPressed();
-			}
-		});
-		envEditButton = SWTUtil.createPushButton(buttonComposite, DebugPreferencesMessages.SimpleVariablePreferencePage_8, null); //$NON-NLS-1$
-		envEditButton.addSelectionListener(new SelectionAdapter()
-		{
-			public void widgetSelected(SelectionEvent event) {
-				handleEditButtonPressed();
-			}
-		});
-		envEditButton.setEnabled(false);
-		envRemoveButton = SWTUtil.createPushButton(buttonComposite, DebugPreferencesMessages.SimpleVariablePreferencePage_9, null); //$NON-NLS-1$
-		envRemoveButton.addSelectionListener(new SelectionAdapter()
-		{
-			public void widgetSelected(SelectionEvent event) {
-				handleRemoveButtonPressed();
-			}
-		});
-		envRemoveButton.setEnabled(false);
-	}
-	
-	private void handleAddButtonPressed() {
-		MultipleInputDialog dialog= new MultipleInputDialog(getShell(), DebugPreferencesMessages.SimpleVariablePreferencePage_13); //$NON-NLS-1$
-		dialog.addTextField(NAME_LABEL, null, false);
-		dialog.addBrowseField(VALUE_LABEL, null, true);
-		dialog.addTextField(DESCRIPTION_LABEL, null, true);
-
-		if (dialog.open() != Window.OK) {
-			return;
-		}
-
-		String name= dialog.getStringValue(NAME_LABEL).trim();
-		if (name != null && name.length() > 0) {
-			String description= dialog.getStringValue(DESCRIPTION_LABEL);
-			IValueVariable variable= getVariableManager().newValueVariable(name, description);
-			variable.setValue(dialog.getStringValue(VALUE_LABEL));	
-			addVariable(variable);
-		}
-	}
-	
-	/**
-	 * Attempts to add the given variable. Returns whether the variable
-	 * was added or not (as when the user answers not to overwrite an
-	 * existing variable).
-	 * @param variable the variable to add
-	 * @return whether the variable was added
-	 */
-	public boolean addVariable(IValueVariable variable) {
-		String name= variable.getName();
-		List editedVariables= variableContentProvider.getVariables();
-		Iterator iter= editedVariables.iterator();
-		while (iter.hasNext()) {
-			IValueVariable currentVariable = (IValueVariable) iter.next();
-			String variableName = currentVariable.getName();
-			if (variableName.equals(name)) {
-				boolean overWrite= MessageDialog.openQuestion(getShell(), DebugPreferencesMessages.SimpleVariablePreferencePage_15, MessageFormat.format(DebugPreferencesMessages.SimpleVariablePreferencePage_16, new String[] {name}));  //$NON-NLS-1$ //$NON-NLS-2$
-				if (!overWrite) {
-					return false;
-				}
-				variableContentProvider.removeVariables(new IValueVariable[]{currentVariable});
-				break;
-			}
-		}
-		variableContentProvider.addVariables(new IValueVariable[]{variable});
-		variableTable.refresh();
-		return true;
-	}
-	
-	private void handleEditButtonPressed() {
-		IStructuredSelection selection= (IStructuredSelection) variableTable.getSelection();
-		IValueVariable variable= (IValueVariable) selection.getFirstElement();
-		if (variable == null) {
-			return;
-		}
-		String value= variable.getValue();
-		if (value == null) {
-			value= ""; //$NON-NLS-1$
-		}
-		String description= variable.getDescription();
-		if (description == null) {
-			description= ""; //$NON-NLS-1$
-		}
-		String originalName= variable.getName();
-		MultipleInputDialog dialog= new MultipleInputDialog(getShell(), DebugPreferencesMessages.SimpleVariablePreferencePage_14); //$NON-NLS-1$
-		dialog.addTextField(NAME_LABEL, originalName, false);
-		dialog.addBrowseField(VALUE_LABEL, value, true);
-		dialog.addTextField(DESCRIPTION_LABEL, description, true);
-	
-		if (dialog.open() == Window.OK) {
-			String name= dialog.getStringValue(NAME_LABEL);
-			value= dialog.getStringValue(VALUE_LABEL);
-			description= dialog.getStringValue(DESCRIPTION_LABEL);
-			if (!name.equals(originalName)) {
-				IValueVariable newVariable = getVariableManager().newValueVariable(name, description);
-				newVariable.setValue(value);
-				if (addVariable(newVariable)) {
-					variableContentProvider.removeVariables(new IValueVariable[]{variable});
-					variableTable.refresh();
-				}
-			} else {
-				if (value != null) {
-					variable.setValue(value);
-				}
-				if (description != null) {
-					variable.setDescription(description);
-				}
-				variableTable.update(variable, null);
-			}
-		}
-	}
-	
-	/**
-	 * Remove the selection variables.
-	 */
-	private void handleRemoveButtonPressed() {
-		IStructuredSelection selection= (IStructuredSelection) variableTable.getSelection();
-		List variablesToRemove= selection.toList();
-		StringBuffer contributedVariablesToRemove= new StringBuffer();
-		Iterator iter= variablesToRemove.iterator();
-		while (iter.hasNext()) {
-			IValueVariable variable = (IValueVariable) iter.next();
-			if (variable.isContributed()) {
-				contributedVariablesToRemove.append('\t').append(variable.getName()).append('\n');
-			}
-		}
-		if (contributedVariablesToRemove.length() > 0) {
-			boolean remove= MessageDialog.openQuestion(getShell(), DebugPreferencesMessages.SimpleLaunchVariablePreferencePage_21, MessageFormat.format(DebugPreferencesMessages.SimpleLaunchVariablePreferencePage_22, new String[] {contributedVariablesToRemove.toString()})); //$NON-NLS-1$ //$NON-NLS-2$
-			if (!remove) {
-				return;
-			}
-		}
-		IValueVariable[] variables= (IValueVariable[]) variablesToRemove.toArray(new IValueVariable[0]);
-		variableContentProvider.removeVariables(variables); 
-		variableTable.refresh();
-	}
-	
-	/**
-	 * Responds to a selection changed event in the variable table
-	 * @param event the selection change event
-	 */
-	protected void handleTableSelectionChanged(SelectionChangedEvent event) {
-		int size = ((IStructuredSelection)event.getSelection()).size();
-		envEditButton.setEnabled(size == 1);
-		envRemoveButton.setEnabled(size > 0);
-	}
-
-	public void init(IWorkbench workbench) {
-	}
-
-	/**
-	 * Clear the variables.
-	 */
-	protected void performDefaults() {
-		variableContentProvider.discardChanges();
-		variableTable.refresh();
-		super.performDefaults();
-	}
-	
-	/**
-	 * Sets the saved state for reversion.
-	 */
-	public boolean performOk() {
-		variableContentProvider.saveChanges();
-		return super.performOk();
-	}
-
-	/**
-	 * Returns the DebugPlugin's singleton instance of the
-	 * launch variable manager
-	 * @return the singleton instance of the simple variable registry.
-	 */
-	private IStringVariableManager getVariableManager() {
-		return VariablesPlugin.getDefault().getStringVariableManager();
-	}
-	
-	private class SimpleVariableContentProvider implements IStructuredContentProvider {
-		/**
-		 * The content provider stores a copy of the variables for use during editing.
-		 * The edited variables are saved to the launch manager when saveChanges()
-		 * is called.
-		 */
-		private List fVariables = new ArrayList();
-		
-		public Object[] getElements(Object inputElement) {
-			return fVariables.toArray();
-		}
-		
-		/**
-		 * Removes the given variables from the 'copied list'
-		 * 
-		 * @param variables variables to remove
-		 */
-		public void removeVariables(IValueVariable[] variables) {
-			for (int i = 0; i < variables.length; i++) {
-				fVariables.remove(variables[i]);
-			}			
-		}
-		
-		/**
-		 * Adds the given variables to the 'copied list'
-		 * 
-		 * @param variables variables to add
-		 */
-		public void addVariables(IValueVariable[] variables) {
-			for (int i = 0; i < variables.length; i++) {
-				fVariables.add(variables[i]);
-			}			
-		}		
-
-		public void dispose() {
-		}
-		
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-			if (newInput == null || !(newInput instanceof IStringVariableManager)){
-				return;
-			}
-			discardChanges();
-		}
-
-		/**
-		 * Saves the edited variable state to the variable manager.
-		 */
-		public void saveChanges() {
-			IStringVariableManager manager = getVariableManager();
-			manager.removeVariables(manager.getValueVariables());
-			try {
-				manager.addVariables((IValueVariable[]) fVariables.toArray(new IValueVariable[0]));
-			} catch (CoreException e) {
-				DebugUIPlugin.errorDialog(getShell(), DebugPreferencesMessages.StringVariablePreferencePage_24, DebugPreferencesMessages.StringVariablePreferencePage_25, e.getStatus()); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-		
-		/**
-		 * Re-initializes to the variables currently stored in the manager.
-		 */
-		public void discardChanges() {
-			IStringVariableManager manager = getVariableManager();
-			IValueVariable[] variables = manager.getValueVariables();
-			for (int i = 0; i < variables.length; i++) {
-				IValueVariable variable = variables[i];
-				IValueVariable copy = manager.newValueVariable(variable.getName(), variable.getDescription());
-				copy.setValue(variable.getValue());
-				fVariables.add(copy);
-			}			
-		}
-		
-		/**
-		 * Returns the 'working set' of variables
-		 * 
-		 * @return the working set of variables (not yet saved)
-		 */
-		public List getVariables() {
-			return fVariables;
-		}
-	}
-	
-	private class SimpleVariableLabelProvider extends LabelProvider implements ITableLabelProvider, IColorProvider {
-		public Image getColumnImage(Object element, int columnIndex) {
-			return null;
-		}
-		public String getColumnText(Object element, int columnIndex) {
-			if (element instanceof IValueVariable) {
-				IValueVariable variable= (IValueVariable) element;
-				switch (columnIndex) {
-					case 0 :
-						StringBuffer buffer= new StringBuffer(variable.getName());
-						if (variable.isContributed()) {
-                            String pluginId = getVariableManager().getContributingPluginId(variable);
-                            if (pluginId != null) {
-                                buffer.append(MessageFormat.format(DebugPreferencesMessages.StringVariablePreferencePage_0, new String[] {pluginId})); //$NON-NLS-1$
-                            } else {
-                                buffer.append(DebugPreferencesMessages.SimpleLaunchVariablePreferencePage_23); //$NON-NLS-1$
-                            }
-						}
-						return buffer.toString();
-					case 1:
-						String value= variable.getValue(); 
-						if (value == null) {
-							value= ""; //$NON-NLS-1$
-						}
-						return value;
-					case 2:
-						String description= variable.getDescription();
-						if (description == null) {
-							description= ""; //$NON-NLS-1$
-						}
-						return description;
-				}
-			}
-			return null;
-		}
-		public Color getForeground(Object element) {
-			return null;
-		}
-		public Color getBackground(Object element) {
-			if (element instanceof IValueVariable) {
-				if (((IValueVariable) element).isContributed()) {
-					Display display= Display.getCurrent();
-					return display.getSystemColor(SWT.COLOR_INFO_BACKGROUND);		
-				}
-			}
-			return null;
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ViewManagementPreferencePage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ViewManagementPreferencePage.java
deleted file mode 100644
index 81eb387..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/preferences/ViewManagementPreferencePage.java
+++ /dev/null
@@ -1,244 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.preferences;
-
-import java.util.Iterator;
-
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.debug.internal.ui.views.launch.LaunchViewContextListener;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jface.viewers.CheckboxTableViewer;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IPerspectiveRegistry;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.model.PerspectiveLabelProvider;
-
-/**
- * Preference page for configuring the debugger's automatic
- * view management.
- */
-public class ViewManagementPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
-
-	private CheckboxTableViewer fPerspectiveViewer;
-	private Button fTrackViewsButton;
-	private Button fResetViewsButton;
-    // This flag indicates whether or not the user has pressed the reset button
-	private boolean fResetPressed= false;
-	private PerspectiveLabelProvider fLabelProvider= null;
-    private SelectionListener fSelectionListener= new SelectionAdapter() {
-    
-        public void widgetSelected(SelectionEvent e) {
-            Object source = e.getSource();
-            if (source == fResetViewsButton) {
-                handleResetPressed();
-            } else if (source == fTrackViewsButton) {
-                handleTrackViewsToggled();
-            }
-        }
-    
-    };
-	
-	public ViewManagementPreferencePage() {
-		super();
-		setTitle(DebugPreferencesMessages.ViewManagementPreferencePage_1); //$NON-NLS-1$
-		setDescription(DebugPreferencesMessages.ViewManagementPreferencePage_0); //$NON-NLS-1$
-		setPreferenceStore(DebugUITools.getPreferenceStore());
-	}
-
-    /* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		Composite composite= new Composite(parent, SWT.NONE);
-		composite.setLayout(new GridLayout());
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-		composite.setFont(parent.getFont());
-		
-		createPerspectiveViewer(composite);
-		
-		createViewTrackingOptions(composite);
-		
-		Dialog.applyDialogFont(composite);
-		
-		return composite;
-	}
-
-	/**
-	 * @param composite
-	 */
-	private void createViewTrackingOptions(Composite composite) {
-		fTrackViewsButton= new Button(composite, SWT.CHECK);
-		fTrackViewsButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		fTrackViewsButton.setText(DebugPreferencesMessages.ViewManagementPreferencePage_3); //$NON-NLS-1$
-		fTrackViewsButton.setSelection(DebugUITools.getPreferenceStore().getBoolean(IInternalDebugUIConstants.PREF_TRACK_VIEWS));
-        fTrackViewsButton.addSelectionListener(fSelectionListener);
-		
-		Label label= new Label(composite, SWT.WRAP);
-		label.setText(DebugPreferencesMessages.ViewManagementPreferencePage_4); //$NON-NLS-1$
-		label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		
-		fResetViewsButton= SWTUtil.createPushButton(composite, DebugPreferencesMessages.ViewManagementPreferencePage_5, null); //$NON-NLS-1$
-		((GridData) fResetViewsButton.getLayoutData()).horizontalAlignment= GridData.BEGINNING;
-		fResetViewsButton.addSelectionListener(fSelectionListener);
-		updateResetButton();
-	}
-    
-    private void handleResetPressed() {
-        fResetPressed= true;
-        fResetViewsButton.setEnabled(false);
-    }
-    
-    protected void handleTrackViewsToggled() {
-        if (fTrackViewsButton.getSelection()) {
-            // When toggled on, possibly re-enable the reset button
-            updateResetButton();
-        } else {
-            // When toggled off, disable the reset button
-            fResetViewsButton.setEnabled(false);
-        }
-    }
-
-	/**
-	 * @param parent
-	 */
-	private void createPerspectiveViewer(Composite parent) {
-		Label label= new Label(parent, SWT.WRAP);
-		label.setText(DebugPreferencesMessages.ViewManagementPreferencePage_2); //$NON-NLS-1$
-		label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		
-		Table table= new Table(parent, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
-		table.setLayout(new GridLayout());
-		table.setLayoutData(new GridData(GridData.FILL_BOTH));
-		
-		fPerspectiveViewer= new CheckboxTableViewer(table);
-		PerspectiveProvider provider= new PerspectiveProvider();
-		fPerspectiveViewer.setContentProvider(provider);
-		fLabelProvider= new PerspectiveLabelProvider();
-		fPerspectiveViewer.setLabelProvider(fLabelProvider);
-		fPerspectiveViewer.setInput(this);
-		
-		checkPerspectives(getPreferenceStore().getString(IDebugUIConstants.PREF_MANAGE_VIEW_PERSPECTIVES));
-	}
-	
-	private void checkPerspectives(String perspectiveList) {
-		fPerspectiveViewer.setAllChecked(false);
-		IPerspectiveRegistry registry= PlatformUI.getWorkbench().getPerspectiveRegistry();
-		Iterator perspectiveIds= LaunchViewContextListener.parseList(perspectiveList).iterator();
-		while (perspectiveIds.hasNext()) {
-			IPerspectiveDescriptor descriptor = registry.findPerspectiveWithId((String) perspectiveIds.next());
-            if (descriptor != null) {
-                fPerspectiveViewer.setChecked(descriptor, true);
-            }
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.IPreferencePage#performOk()
-	 */
-	public boolean performOk() {
-		StringBuffer buffer= new StringBuffer();
-		Object[] descriptors = fPerspectiveViewer.getCheckedElements();
-		for (int i = 0; i < descriptors.length; i++) {
-			buffer.append(((IPerspectiveDescriptor) descriptors[i]).getId()).append(',');
-		}
-		
-		getPreferenceStore().setValue(IDebugUIConstants.PREF_MANAGE_VIEW_PERSPECTIVES, buffer.toString());
-		boolean trackViews = fTrackViewsButton.getSelection();
-        getPreferenceStore().setValue(IInternalDebugUIConstants.PREF_TRACK_VIEWS, trackViews);
-		if (fResetPressed || !trackViews) {
-            // Reset if the user has pressed reset or chosen to no longer track views
-			getPreferenceStore().setValue(LaunchViewContextListener.PREF_VIEWS_TO_NOT_OPEN, ""); //$NON-NLS-1$
-			getPreferenceStore().setValue(LaunchViewContextListener.PREF_OPENED_VIEWS, ""); //$NON-NLS-1$
-		}
-		return super.performOk();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#performDefaults()
-	 */
-	protected void performDefaults() {
-		checkPerspectives(getPreferenceStore().getDefaultString(IDebugUIConstants.PREF_MANAGE_VIEW_PERSPECTIVES));
-		fTrackViewsButton.setSelection(getPreferenceStore().getDefaultBoolean(IInternalDebugUIConstants.PREF_TRACK_VIEWS));
-		fResetPressed= false;
-		updateResetButton();
-		super.performDefaults();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
-	 */
-	public void init(IWorkbench workbench) {
-	}
-	
-	/**
-	 * Updates enablement of the reset button.
-	 * Enable if either persisted view collection is not empty.
-     * Always disable if "track views" is turned off.
-	 */
-	private void updateResetButton() {
-		boolean enableReset= !"".equals(getPreferenceStore().getString(LaunchViewContextListener.PREF_VIEWS_TO_NOT_OPEN)) || //$NON-NLS-1$
-			!"".equals(getPreferenceStore().getString(LaunchViewContextListener.PREF_OPENED_VIEWS)); //$NON-NLS-1$
-        // Only enable the button if there are views to clear, the user hasn't pressed the reset
-        // button, and the option to "track views" is turned on.
-		fResetViewsButton.setEnabled(enableReset && !fResetPressed && fTrackViewsButton.getSelection());
-	}
-
-	private static class PerspectiveProvider implements IStructuredContentProvider {
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			return PlatformUI.getWorkbench().getPerspectiveRegistry().getPerspectives();
-		}
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-		
-        /* (non-Javadoc)
-         * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-         */
-        public void dispose() {
-        }
-		
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.IDialogPage#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		if (fLabelProvider != null) {
-			fLabelProvider.dispose();
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddContainerAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddContainerAction.java
deleted file mode 100644
index b94454b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddContainerAction.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action to add a new source container.
- * Used by the CommonSourceNotFoundEditor, the launch configuration source tab,
- * and the EditSourceLookupPathDialog.
- */
-public class AddContainerAction extends SourceContainerAction {
-	
-	private ISourceLookupDirector fDirector;
-	
-	public AddContainerAction() {
-		super(SourceLookupUIMessages.sourceTab_addButton); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Prompts for a project to add.
-	 * 
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */	
-	public void run() {
-		AddSourceContainerDialog dialog = new AddSourceContainerDialog(getShell(), getViewer(), fDirector);
-		dialog.open();			
-	}
-	
-	public void setSourceLookupDirector(ISourceLookupDirector director) {
-		fDirector = director;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.actions.BaseSelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		if(selection == null || selection.isEmpty()) {
-			return true;
-		} 
-		return getViewer().getTree().getSelection()[0].getParentItem()==null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java
deleted file mode 100644
index b28ccdf..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/AddSourceContainerDialog.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.ArrayList;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.sourcelookup.ISourceContainerBrowser;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.jface.viewers.ArrayContentProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * The dialog for adding new source containers. Presents the user with a list of
- * source container types and allows them to select one.
- * 
- * @since 3.0
- */
-public class AddSourceContainerDialog extends TitleAreaDialog {
-	
-	private TableViewer fViewer;
-	private SourceContainerViewer fSourceContainerViewer;
-	private boolean fDoubleClickSelects = true;
-	private ISourceLookupDirector fDirector;
-	
-	/**
-	 * Constructor
-	 */
-	public AddSourceContainerDialog(Shell shell, SourceContainerViewer viewer, ISourceLookupDirector director) {		
-		super(shell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		fSourceContainerViewer=viewer;		
-		fDirector = director;
-	}
-	
-	/**
-	 * Creates the dialog area to display source container types that are "browseable"
-	 */
-	protected Control createDialogArea(Composite ancestor) {			
-		
-		getShell().setText(SourceLookupUIMessages.addSourceLocation_title); //$NON-NLS-1$
-		setTitle(SourceLookupUIMessages.addSourceLocation_description); //$NON-NLS-1$
-		setTitleImage(DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_ADD_SRC_LOC_WIZ));
-		
-		Composite parent = new Composite(ancestor, SWT.NULL);
-		GridData gd= new GridData(GridData.FILL_BOTH);
-		GridLayout topLayout = new GridLayout();
-		topLayout.numColumns = 1;
-		parent.setLayout(topLayout);
-		parent.setLayoutData(gd);	
-				
-		ISourceContainerType[] types = filterTypes(DebugPlugin.getDefault().getLaunchManager().getSourceContainerTypes());
-		
-		fViewer = new TableViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.SINGLE);
-		final Table table = fViewer.getTable();
-		gd = new GridData(GridData.FILL_BOTH);
-		table.setLayoutData(gd);
-
-		if (fDoubleClickSelects) {
-			table.addSelectionListener(new SelectionAdapter() {
-				public void widgetDefaultSelected(SelectionEvent e) {
-					if (table.getSelectionCount() == 1)
-						okPressed();
-				}
-			});
-		}
-		
-		fViewer.setLabelProvider(new SourceContainerLabelProvider());
-		fViewer.setContentProvider(new ArrayContentProvider());			
-		fViewer.setSorter(new ViewerSorter());
-		fViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				ISelection selection = event.getSelection();
-				String desc = null;
-				if (!selection.isEmpty()) {
-					ISourceContainerType type = (ISourceContainerType) ((IStructuredSelection)selection).getFirstElement();
-					desc = type.getDescription();
-				}
-				setMessage(desc);
-			}
-		});
-		if(types.length != 0) {	
-			fViewer.setInput(types);
-		}
-		Dialog.applyDialogFont(parent);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getShell(), IDebugHelpContextIds.ADD_SOURCE_CONTAINER_DIALOG);
-		return parent;
-	}	
-	
-	/**
-	 * Removes types without browsers from the provided list of types.
-	 * @param types the complete list of source container types
-	 * @return the list of source container types that have browsers
-	 */
-	private ISourceContainerType[] filterTypes(ISourceContainerType[] types){
-		ArrayList validTypes = new ArrayList();
-		for (int i=0; i< types.length; i++) {
-			ISourceContainerType type = types[i];
-			if (fDirector.supportsSourceContainerType(type)) {
-				ISourceContainerBrowser sourceContainerBrowser = SourceLookupUIUtils.getSourceContainerBrowser(type.getId());
-				if(sourceContainerBrowser != null && sourceContainerBrowser.canAddSourceContainers(fDirector)) {
-					validTypes.add(type);
-				}
-			}
-		}	
-		return (ISourceContainerType[]) validTypes.toArray(new ISourceContainerType[validTypes.size()]);
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		//single selection dialog, so take first item in array
-		//there will always be a selected item since we set it with viewer.setSelection
-		ISourceContainerType type = (ISourceContainerType) ((StructuredSelection) fViewer.getSelection()).getFirstElement();
-		ISourceContainerBrowser browser = SourceLookupUIUtils.getSourceContainerBrowser(type.getId());
-		if (browser != null) {
-			ISourceContainer[] results = browser.addSourceContainers(getShell(), fDirector);
-			if(results != null) {
-				fSourceContainerViewer.addEntries(results);
-			}
-		}
-		super.okPressed();
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/BasicContainerContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/BasicContainerContentProvider.java
deleted file mode 100644
index b629d96..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/BasicContainerContentProvider.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.ArrayList;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-/**
- * Provides content for a tree viewer that shows only containers.
- * 
- * @since 3.0
- */
-public class BasicContainerContentProvider implements ITreeContentProvider {
-
-	private boolean fShowClosedProjects = true;
-	/**
-	 * Creates a new ResourceContentProvider.
-	 */
-	public BasicContainerContentProvider() {
-	}
-	/**
-	 * The visual part that is using this content provider is about
-	 * to be disposed. Deallocate all allocated SWT resources.
-	 */
-	public void dispose() {
-	}
-	
-	/**
-	 * @see ITreeContentProvider#getChildren
-	 */
-	public Object[] getChildren(Object element) {
-		if (element instanceof IWorkspaceRoot) {
-			// check if closed projects should be shown
-			IProject[] allProjects = ((IWorkspaceRoot) element).getProjects();
-			if (fShowClosedProjects)
-				return allProjects;
-			
-			ArrayList accessibleProjects = new ArrayList();
-			for (int i = 0; i < allProjects.length; i++) {
-				if (allProjects[i].isOpen()) {
-					accessibleProjects.add(allProjects[i]);
-				}
-			}
-			return accessibleProjects.toArray();
-		}
-		return new Object[0];
-	}
-	
-	/**
-	 * @see ITreeContentProvider#getElements
-	 */
-	public Object[] getElements(Object element) {
-		return getChildren(element);
-	}
-	
-	/**
-	 * @see ITreeContentProvider#getParent
-	 */
-	public Object getParent(Object element) {
-		if (element instanceof IResource)
-			return ((IResource) element).getParent();
-		return null;
-	}
-	
-	/**
-	 * @see ITreeContentProvider#hasChildren
-	 */
-	public boolean hasChildren(Object element) {
-		return getChildren(element).length > 0;
-	}
-	
-	/**
-	 * @see IContentProvider#inputChanged
-	 */
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditor.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditor.java
deleted file mode 100644
index b4deef5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditor.java
+++ /dev/null
@@ -1,433 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.views.launch.LaunchView;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.sourcelookup.SourceLookupDialog;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.resource.JFaceColors;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IReusableEditor;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.EditorPart;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Editor for when source is not found. Shows the source name and has 
- * a button to add new containers.
- * Editor ID: IInternalDebugUIConstants.ID_COMMON_SOURCE_NOT_FOUND_EDITOR = org.eclipse.debug.ui.sourcelookup.CommonSourceNotFoundEditor
- * 
- * May be subclassed if a debugger requires additional buttons on the editor. For example,
- * a button may be added if the user has the additional option of using generated source
- * for debugging.
- * 
- * @see AbstractSourceLookupDirector
- * @see CommonSourceNotFoundEditorInput
- * @since 3.0
- */
-public class CommonSourceNotFoundEditor extends EditorPart implements IReusableEditor, IDebugEventSetListener {
-	
-	/**
-	 * Text widgets used for this editor
-	 */
-	private Text fText;	
-    /**
-     * object for which the source is showing for (i.e., stackframe, breakpoint)
-     */
-	protected Object fObject; 
-	
-	/**
-	 * @see org.eclipse.ui.IEditorPart#doSave(IProgressMonitor)
-	 */
-	public void doSave(IProgressMonitor monitor) {
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorPart#doSaveAs()
-	 */
-	public void doSaveAs() {
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorPart#gotoMarker(IMarker)
-	 */
-	public void gotoMarker(IMarker marker) {
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorPart#init(IEditorSite, IEditorInput)
-	 */
-	public void init(IEditorSite site, IEditorInput input) throws PartInitException {
-		setSite(site);
-		setInput(input);
-		DebugPlugin.getDefault().addDebugEventListener(this);
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorPart#isDirty()
-	 */
-	public boolean isDirty() {
-		return false;
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorPart#isSaveAsAllowed()
-	 */
-	public boolean isSaveAsAllowed() {
-		return false;
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IWorkbenchPart#createPartControl(Composite)
-	 */
-	public void createPartControl(Composite parent) {
-		GridLayout topLayout = new GridLayout();
-		GridData data = new GridData();	
-		topLayout.numColumns = 1;
-		topLayout.verticalSpacing = 10;
-		parent.setLayout(topLayout);
-		parent.setLayoutData(data);		
-		parent.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_WHITE));
-		
-		fText = new Text(parent,SWT.READ_ONLY|SWT.WRAP);
-		fText.setForeground(JFaceColors.getErrorText(fText.getDisplay()));	
-		fText.setBackground(parent.getDisplay().getSystemColor(SWT.COLOR_WHITE));	
-		if (getEditorInput() != null) {
-			setInput(getEditorInput());
-		}
-		
-		
-		Button button = new Button(parent, SWT.PUSH);
-		data = new GridData();
-		data.grabExcessHorizontalSpace = false;
-		data.grabExcessVerticalSpace = false;
-		data.heightHint = 50;
-		data.widthHint=50;
-		button.setData(data);
-		button.setText(SourceLookupUIMessages.addSourceLocation_addButton2); //$NON-NLS-1$
-		button.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent evt) {
-				buttonSelected();
-			}
-		});		
-		
-		Dialog.applyDialogFont(parent);
-		
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IDebugHelpContextIds.NO_SOURCE_EDITOR);
-	}
-	
-	/**
-	 * Handles the event when the "add source container" button is selected.
-	 * Displays the <code>EditSourceLookupPathDialog</code> so the user 
-	 * can add additional source containers that should be searched.
-	 */
-	private void buttonSelected(){
-		ISourceLocator locator = null;		
-		ILaunch launch = null;		
-		IAdaptable selection = DebugUITools.getDebugContext();
-		
-		if(selection == null) return;
-		
-		if (selection.getAdapter(ILaunch.class) != null ) {
-			launch = (ILaunch) selection.getAdapter(ILaunch.class);
-			locator = launch.getSourceLocator();			
-		} 
-		else if (selection.getAdapter(IDebugElement.class) != null ) {
-			launch = ((IDebugElement)selection.getAdapter(IDebugElement.class)).getLaunch();
-			locator = launch.getSourceLocator();					
-		}
-		else return;  //should not occur
-		if (locator == null || !(locator instanceof AbstractSourceLookupDirector))
-			return; 
-		
-		final SourceLookupDialog dialog =
-			new SourceLookupDialog(DebugUIPlugin.getShell(),(AbstractSourceLookupDirector) locator);
-		
-		int result = dialog.open();		
-		if(result == Window.OK) {
-			resetEditor();				
-		}
-	}
-	/**
-	 * Clears the (source not found) editor inputs associated with the stack and
-	 * opening the editor again, if the item is not a stackframe. A marker will be added
-	 * and the editor will be told to scroll to the marker.
-	 * 
-	 * If it is a stackframe, the launch view will pick up the change event and open a new
-	 * editor automatically.
-	 * 
-	 */
-	public void resetEditor()
-	{
-		fireChangeEventsOnStack();
-		
-		if(fObject instanceof IStackFrame) {
-			return; //launch view will pick up from here
-		}
-
-		// close this editor and open a new editor
-		final int lineNumber = getLineNumber();
-		Runnable open = new Runnable() {
-			public void run() {
-				IWorkbenchWindow dwindow= DebugUIPlugin.getActiveWorkbenchWindow();
-				if (dwindow != null) {
-					IWorkbenchPage page= dwindow.getActivePage();
-					if (page != null) {
-						IDebugModelPresentation modelPres = DebugUITools.newDebugModelPresentation();	
-						IEditorInput input = modelPres.getEditorInput(fObject);
-						if (input != null) {
-							String id = modelPres.getEditorId(input, fObject);
-							if (id != null) {
-								try {
-									IEditorPart editorPart = page.openEditor(input, id);
-									if (editorPart instanceof ITextEditor && lineNumber >= 0) {
-										// position to line number
-										ITextEditor textEditor = (ITextEditor) editorPart;
-										IRegion region= getLineInformation(textEditor, lineNumber);
-										if (region != null) {
-											textEditor.selectAndReveal(region.getOffset(), 0);
-										}
-									}
-								} catch (PartInitException e1) {
-								}		
-							}
-						}
-						modelPres.dispose();
-					}
-				}
-			}
-		};
-		closeEditor();	
-		// get new editor input
-		DebugUIPlugin.getStandardDisplay().asyncExec(open);
-	}
-	
-	/**
-	 * Returns the line information for the given line in the given editor
-	 */
-	private IRegion getLineInformation(ITextEditor editor, int lineNumber) {
-		IDocumentProvider provider= editor.getDocumentProvider();
-		IEditorInput input= editor.getEditorInput();
-		try {
-			provider.connect(input);
-		} catch (CoreException e) {
-			return null;
-		}
-		try {
-			IDocument document= provider.getDocument(input);
-			if (document != null)
-				return document.getLineInformation(lineNumber);
-		} catch (BadLocationException e) {
-		} finally {
-			provider.disconnect(input);
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the line number associated with the breakpoint (marker).
-	 * @return the line number to scroll to
-	 */
-	protected int getLineNumber(){
-		int line = -1;
-		if(fObject instanceof IMarker) {
-			try{
-				line=((Integer)((IMarker)fObject).getAttribute(IMarker.LINE_NUMBER)).intValue();							
-			} catch(CoreException e){}
-		}
-		return line;
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IWorkbenchPart#setFocus()
-	 */
-	public void setFocus() {
-		if (fText != null) {
-			fText.setFocus();
-		}
-	}
-	
-	/**
-	 * @see IReusableEditor#setInput(org.eclipse.ui.IEditorInput)
-	 */
-	public void setInput(IEditorInput input) {
-		super.setInput(input);
-		if(input instanceof CommonSourceNotFoundEditorInput) {
-			fObject = ((CommonSourceNotFoundEditorInput)input).getObject();
-		}
-		setPartName(input.getName());
-		if (fText != null) {			
-			fText.setText(input.getToolTipText()+"\n"); //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * Fires change event(s) to clear the source file history of the items in the stack.
-	 */
-	protected void fireChangeEventsOnStack(){
-		if(fObject instanceof IStackFrame) {
-			fireChangeEvent(DebugEvent.CONTENT, (IStackFrame)fObject);				
-		} else if(fObject instanceof IDebugElement) { //loop through all threads and clear the cached source files
-			try{		
-				IThread[] threads =((IDebugElement)fObject).getDebugTarget().getThreads();
-				for(int i=0; i< threads.length; i++)
-				{
-					fireChangeEvent(DebugEvent.CONTENT, threads[i].getTopStackFrame());
-				}
-			} catch(DebugException e){}
-		}			
-	}
-	
-	/**
-	 * Fire a debug change event with detail
-	 * @param detail @see DebugEvent
-	 */
-	public void fireChangeEvent(int detail, IDebugElement source) {
-		fireEvent(new DebugEvent(source, DebugEvent.CHANGE, detail));
-	}		
-	
-	
-	/**
-	 * Fire a debug event
-	 */
-	private void fireEvent(DebugEvent event) {
-		if(DebugPlugin.getDefault() != null)
-			DebugPlugin.getDefault().fireDebugEventSet(new DebugEvent[] {event});
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		for (int i = 0; i < events.length; i++) {
-			DebugEvent event = events[i];
-			Object source= event.getSource();			
-			switch (event.getKind()) {
-			case DebugEvent.TERMINATE :
-				if(checkIfEditorShouldClose(source))
-					closeEditor();			 
-				break;
-				
-			case DebugEvent.CHANGE :
-				if(!source.equals(fObject))
-					return;
-				//	Trigger a selectionChange event
-				IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-				if (window == null) {
-					return;
-				}
-				IWorkbenchPage p= window.getActivePage();
-				if (p == null) {
-					return;
-				}
-				IViewPart fLaunchView= p.findView(IDebugUIConstants.ID_DEBUG_VIEW);
-				if (fLaunchView instanceof ISelectionChangedListener) {						
-					ISelection fSelection = ((LaunchView)fLaunchView).getViewer().getSelection();
-					//	To clear the stackframe stored in the launchView
-					((LaunchView)fLaunchView).clearSourceSelection(((IStackFrame)source).getThread());
-					((LaunchView)fLaunchView).getViewer().setSelection(fSelection, true);					
-				}			
-				break;
-			}					
-		}
-	}
-	
-	
-	/**
-	 * Checks if the source of the terminate event is associated with this editor
-	 * object.
-	 * @param source the source of the event
-	 * @return true if the <code>source</code> is related to this editor, false otherwise
-	 */
-	protected boolean checkIfEditorShouldClose(Object source) {
-		//Make sure terminate event is for me
-		if (fObject instanceof IDebugElement && source instanceof IDebugElement) {
-			IDebugElement element = (IDebugElement)fObject;
-			IDebugElement sourceElement = (IDebugElement)source;
-			return sourceElement.equals(element.getDebugTarget());
-		}
-		return false;
-	}
-	
-	/**
-	 * Closes this editor.
-	 */
-	protected void closeEditor()
-	{
-		final IEditorPart editor = this;
-		DebugUIPlugin.getStandardDisplay().syncExec(
-				new Runnable() {
-					public void run() {											
-						IWorkbenchWindow activeWorkbenchWindow = DebugUIPlugin.getActiveWorkbenchWindow();
-						if (activeWorkbenchWindow != null) {
-							IWorkbenchPage activePage = activeWorkbenchWindow.getActivePage();
-							if (activePage != null) {
-								activePage.closeEditor(editor,false);
-							}
-						}										
-					}						
-				});			
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-		DebugPlugin.getDefault().removeDebugEventListener(this);
-		super.dispose();
-	}
-	
-	
-}
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditorInput.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditorInput.java
deleted file mode 100644
index f9a472b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/CommonSourceNotFoundEditorInput.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-
-/**
- * Editor input for the <code>CommonSourceNotFoundEditor</code>. The editor
- * input can be created on a debug element or breakpoint.
- * 
- * @see CommonSourceNotFoundEditor
- * 
- * @since 3.0
- */
-public class CommonSourceNotFoundEditorInput extends PlatformObject implements IEditorInput {
-	
-	/**
-	 * input element label (cached on creation)
-	 */
-	protected String fLabel;
-	/**
-	 * the object that the editor is being brought up for
-	 */
-	protected Object fObject;
-	
-	/**
-	 * Constructs an editor input for the given debug element
-	 * or breakpoint.
-	 *
-	 * @param object debug element or breakpoint
-	 */
-	public CommonSourceNotFoundEditorInput(Object object) {
-		fObject = object;
-		if (object != null) {
-			IDebugModelPresentation pres = DebugUITools.newDebugModelPresentation();
-			fLabel = pres.getText(object);
-			pres.dispose();
-		}
-		if (fLabel == null) {
-			fLabel = "";  //$NON-NLS-1$
-		}
-	}	
-	
-	/**
-	 * @see org.eclipse.ui.IEditorInput#exists()
-	 */
-	public boolean exists() {
-		return false;
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		return DebugUITools.getDefaultImageDescriptor(fObject);
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getName()
-	 */
-	public String getName() {
-		return fLabel;		
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getPersistable()
-	 */
-	public IPersistableElement getPersistable() {
-		return null;
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getToolTipText()
-	 */
-	public String getToolTipText() {
-		return MessageFormat.format(SourceLookupUIMessages.addSourceLocation_editorMessage, new String[] { fLabel }); //$NON-NLS-1$
-	}
-		
-	/**
-	 * Returns the object that was the reason why source was being searched for (i.e., it was clicked on)
-	 * @return the object.
-	 */
-	public Object getObject(){
-		return fObject;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/DownAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/DownAction.java
deleted file mode 100644
index c38bc5e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/DownAction.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.List;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action for sorting the order of source containers in the dialog.
- * 
- */
-public class DownAction	extends SourceContainerAction {
-	
-	public DownAction() {
-		super(SourceLookupUIMessages.sourceTab_downButton);  //$NON-NLS-1$
-	}
-	/**
-	 * @see IAction#run()
-	 */
-	public void run() {
-		List targets = getOrderedSelection();
-		if (targets.isEmpty()) {
-			return;
-		}
-		List list = getEntriesAsList();
-		int bottom = list.size() - 1;
-		int index = 0;
-		for (int i = targets.size() - 1; i >= 0; i--) {
-			Object target = targets.get(i);
-			index = list.indexOf(target);
-			if (index < bottom) {
-				bottom = index + 1;
-				Object temp = list.get(bottom);
-				list.set(bottom, target);
-				list.set(index, temp);
-			}
-			bottom = index;
-		} 
-		setEntries(list);
-	}
-	
-	/**
-	 * @see SelectionListenerAction#updateSelection(IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		return !selection.isEmpty() && !isIndexSelected(selection, getEntriesAsList().size() - 1) && getViewer().getTree().getSelection()[0].getParentItem()==null;	
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditContainerAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditContainerAction.java
deleted file mode 100644
index 7a64f76..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditContainerAction.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.Iterator;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.ui.sourcelookup.ISourceContainerBrowser;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * Action used to edit source containers on a source lookup path
- */
-public class EditContainerAction extends SourceContainerAction {
-	
-	private ISourceLookupDirector fDirector;
-	private ISourceContainer[] fContainers;
-	private ISourceContainerBrowser fBrowser;
-	
-	public EditContainerAction() {
-		super(SourceLookupUIMessages.EditContainerAction_0); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Prompts for a project to add.
-	 * 
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */	
-	public void run() {
-		ISourceContainer[] replacements = fBrowser.editSourceContainers(getShell(), fDirector, fContainers);
-		int j = 0;
-		ISourceContainer[] existing = getViewer().getEntries();
-		for (int i = 0; i < existing.length && j < replacements.length; i++) {
-			ISourceContainer toBeReplaced = fContainers[j];
-			ISourceContainer container = existing[i];
-			if (container.equals(toBeReplaced)) {
-				existing[i] = replacements[j];
-				j++;
-			}
-		}
-		getViewer().setEntries(existing);
-	}
-	
-	public void setSourceLookupDirector(ISourceLookupDirector director) {
-		fDirector = director;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.actions.BaseSelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		if(selection == null || selection.isEmpty()) {
-			return false;
-		}
-		if (getViewer().getTree().getSelection()[0].getParentItem()==null) {
-			// can only edit top level items of same type
-			fContainers = new ISourceContainer[selection.size()];
-			Iterator iterator = selection.iterator();
-			ISourceContainer container = (ISourceContainer) iterator.next();
-			ISourceContainerType type = container.getType();
-			fContainers[0] = container;
-			int i = 1;
-			while (iterator.hasNext()) {
-				container = (ISourceContainer) iterator.next();
-				fContainers[i] = container;
-				i++;
-				if (!container.getType().equals(type)) {
-					return false;
-				}
-			}
-			// all the same type, see if editing is supported
-			fBrowser = SourceLookupUIUtils.getSourceContainerBrowser(type.getId());
-			if (fBrowser != null) {
-				return fBrowser.canEditSourceContainers(fDirector, fContainers);
-			}
-		}
-		return false;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditSourceLookupPathAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditSourceLookupPathAction.java
deleted file mode 100644
index 54dfe3a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/EditSourceLookupPathAction.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.views.launch.LaunchView;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.sourcelookup.SourceLookupDialog;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * The action for editing the source lookup path. Brings up the 
- * EditSourceLookupPathDialog.
- * 
- * @since 3.0
- */
-public class EditSourceLookupPathAction extends SelectionListenerAction {
-	
-	private ISourceLookupDirector director = null;
-	private LaunchView fView = null;
-	
-	public EditSourceLookupPathAction(LaunchView view) {
-		super(SourceLookupUIMessages.EditSourceLookupPathAction_0); //$NON-NLS-1$
-		setEnabled(false);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.EDIT_SOURCELOOKUP_ACTION);
-		setImageDescriptor(DebugUITools.getImageDescriptor(IInternalDebugUIConstants.IMG_SRC_LOOKUP_MENU));
-		fView = view;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.actions.BaseSelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		director = null;
-		if (selection.size() == 1) {
-			Object object = selection.getFirstElement();
-			ILaunch launch = null;
-			if (object instanceof IDebugElement) {
-				launch = ((IDebugElement)object).getLaunch();
-			} else if (object instanceof ILaunch) {
-				launch = (ILaunch)object;
-			}
-			if (launch != null && launch.getLaunchConfiguration() != null &&
-					launch.getSourceLocator() instanceof ISourceLookupDirector) {
-				director = (ISourceLookupDirector) launch.getSourceLocator();
-			}
-		}
-		return director != null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		Shell shell = DebugUIPlugin.getShell();		
-		SourceLookupDialog dialog = new SourceLookupDialog(shell, director);
-		if (dialog.open() == Window.OK) {
-			fView.redoSourceLookup();
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/LookupSourceAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/LookupSourceAction.java
deleted file mode 100644
index 17ec227..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/LookupSourceAction.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.views.launch.LaunchView;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * Does source lookup for the selected stack frame again.
- * 
- * @since 3.0
- */
-public class LookupSourceAction extends SelectionListenerAction {
-	
-	private ISourceLookupDirector director = null;
-	private LaunchView fView = null;
-	private IStackFrame frame = null;
-	
-	public LookupSourceAction(LaunchView view) {
-		super(SourceLookupUIMessages.LookupSourceAction_0); //$NON-NLS-1$
-		setEnabled(false);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.LOOKUP_SOURCE_ACTION);
-		fView = view;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.actions.BaseSelectionListenerAction#updateSelection(org.eclipse.jface.viewers.IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		director = null;
-		frame = null;
-		if (selection.size() == 1) {
-			Object object = selection.getFirstElement();
-			if (object instanceof IStackFrame) {
-				frame = (IStackFrame)object;
-				ILaunch launch = frame.getLaunch();
-				if (launch != null && launch.getLaunchConfiguration() != null &&
-						launch.getSourceLocator() instanceof ISourceLookupDirector) {
-					director = (ISourceLookupDirector) launch.getSourceLocator();
-				}
-			}
-		}
-		return director != null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		director.clearSourceElements(frame);
-		fView.redoSourceLookup();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/Prompter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/Prompter.java
deleted file mode 100644
index 9ebab29..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/Prompter.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Prompts the user in the UI (asyncronously), on behalf of a non-UI client,
- * blocking the calling thread until a response is received.
- * <p>
- * This status handler is registered for for the debug UI plug-in,
- * with a status code of <code>STATUS_HANDLER_PROMPT</code>.
- * </p>
- * @since 3.0
- */
-public class Prompter implements IStatusHandler {
-	/**
-	 * Prompts the user for input based on the given status and source
-	 * object, blocking the calling thread until the status is resolved.
-	 * 
-	 * @param status client status code for which a status handler must
-	 *  be registered
-	 * @param source object requesting the status to be resolved
-	 * @return result of resolving the givne status
-	 * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
-	 */
-	public Object handleStatus(final IStatus status, final Object source) throws CoreException {
-		final IStatusHandler handler = DebugPlugin.getDefault().getStatusHandler(status);
-		if (handler == null) {
-			// TODO: throw exception
-		}
-		Display display = DebugUIPlugin.getStandardDisplay();
-		if (display.getThread().equals(Thread.currentThread())) {
-			return handler.handleStatus(status, source);
-		}
-		final Object[] result = new Object[1];
-		final CoreException[] exception = new CoreException[1];
-		final Object lock = this;		
-		Runnable r = new Runnable() {
-			public void run() {
-				try {
-					result[0] = handler.handleStatus(status, source);
-				} catch (CoreException e) {
-					exception[0] = e;
-				}
-				synchronized (lock) {
-					lock.notifyAll();
-				}
-			}
-		};
-		synchronized (lock) {
-			DebugUIPlugin.getStandardDisplay().asyncExec(r);
-			try {
-				lock.wait();
-			} catch (InterruptedException e) {
-			}
-		}
-		
-		if (exception[0] != null ) {
-			throw exception[0];
-		}
-		return result[0];
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RemoveAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RemoveAction.java
deleted file mode 100644
index 55ff9bd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RemoveAction.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.List;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action used to remove source containers in the source location dialog/tab.
- * 
- */
-public class RemoveAction extends SourceContainerAction {
-	public RemoveAction() {
-		super(SourceLookupUIMessages.sourceTab_removeButton); //$NON-NLS-1$
-	}
-	/**
-	 * Removes all selected entries.
-	 * 
-	 * @see IAction#run()
-	 */
-	public void run() {
-		List targets = getOrderedSelection();
-		List list = getEntriesAsList();
-		list.removeAll(targets);
-		setEntries(list);
-	}
-	
-	/**
-	 * @see SelectionListenerAction#updateSelection(IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		//check that something is selected and it is a root tree node.
-		return !selection.isEmpty() && getViewer().getTree().getSelection()[0].getParentItem()==null;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/ResolveDuplicatesHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/ResolveDuplicatesHandler.java
deleted file mode 100644
index 5788047..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/ResolveDuplicatesHandler.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.core.IStatusHandler;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.window.Window;
-import org.eclipse.ui.dialogs.ElementListSelectionDialog;
-
-/**
- * Status handler to prompt for dupicate source element resolution.
- * 
- * @since 3.0
- */
-public class ResolveDuplicatesHandler implements IStatusHandler {
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IStatusHandler#handleStatus(org.eclipse.core.runtime.IStatus, java.lang.Object)
-	 */
-	public Object handleStatus(IStatus status, Object source) throws CoreException {
-		Object[] args = (Object[])source;
-		List sources = (List) args[1];
-		return resolveSourceElement(sources);
-	}
-	
-	public Object resolveSourceElement(List sources) {
-		Object file = null;
-		sources = removeSourceNotFoundEditors(sources);
-		if(sources.size() == 1) {
-			return sources.get(0);
-		} else if(sources.size() == 0) {
-			return null;
-		}
-		ElementListSelectionDialog dialog = new ElementListSelectionDialog(DebugUIPlugin.getShell(), new SourceElementLabelProvider());
-		dialog.setMultipleSelection(false);
-		dialog.setTitle(SourceLookupUIMessages.ResolveDuplicatesHandler_0); //$NON-NLS-1$
-		dialog.setMessage(SourceLookupUIMessages.ResolveDuplicatesHandler_1); //$NON-NLS-1$
-		dialog.setElements(sources.toArray());
-		dialog.open();											
-		if(dialog.getReturnCode() == Window.OK) {
-			file = dialog.getFirstResult();		
-		}
-		return file;
-	}
-	
-	/**
-	 * Remove extra source not found editors, if any.
-	 * If multiple source not found editors and no "real" source inputs,
-	 * return the first source not found editor.
-	 * @param sources the list to be filtered
-	 * @return the filtered list, may be empty
-	 */
-	private List removeSourceNotFoundEditors(List sources){
-		Iterator iterator = sources.iterator();
-		List filteredList = new ArrayList();
-		Object next;
-		while(iterator.hasNext()) {
-			next = iterator.next();
-			if (!(next instanceof CommonSourceNotFoundEditor)) {
-				filteredList.add(next);
-			}
-		}
-		if (filteredList.isEmpty() && sources.get(0) != null) {
-			filteredList.add(sources.get(0));
-		}
-		return filteredList;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RestoreDefaultAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RestoreDefaultAction.java
deleted file mode 100644
index 1bafc1c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/RestoreDefaultAction.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.DefaultSourceContainer;
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action for adding the default container to the list.
- * 
- * @since 3.0
- */
-public class RestoreDefaultAction extends SourceContainerAction {
-	
-	private ISourceLookupDirector fDirector;
-
-	public RestoreDefaultAction() {
-		super(SourceLookupUIMessages.sourceTab_defaultButton); //$NON-NLS-1$
-	}
-	/**
-	 * @see IAction#run()
-	 */
-	public void run() {		
-		ISourceContainer[] containers = new ISourceContainer[1];
-		containers[0] = new DefaultSourceContainer();
-		containers[0].init(fDirector);
-		getViewer().setEntries(containers);
-		setEnabled(false);
-	}
-
-	public void setSourceLookupDirector(ISourceLookupDirector director) {
-		fDirector = director;
-	}
-
-	/**
-	 * @see SelectionListenerAction#updateSelection(IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		//disable if selection is empty, default already present, or non-root node selected
-		ISourceContainer[] containers = getViewer().getEntries();
-		if(containers != null && containers.length == 1) {
-			if(containers[0] instanceof DefaultSourceContainer) {
-				return false;
-			}
-		}		
-		return true;	
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAction.java
deleted file mode 100644
index e9acaf1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAction.java
+++ /dev/null
@@ -1,180 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.actions.SelectionListenerAction;
-
-/**
- * The abstract class for all source lookup actions.
- * 
- * @since 3.0
- */
-public abstract class SourceContainerAction extends SelectionListenerAction {
-	//the viewer that the action is operating on
-	private SourceContainerViewer fViewer;
-	//the button that is used to invoke the action
-	private Button fButton;
-	//the shell used to realize this action's dialog (if any)
-	private Shell fShell;
-	
-	/**
-	 * The constructor for the action
-	 * @param label the label for the action's button
-	 */
-	public SourceContainerAction(String label) {
-		super(label);		
-	}
-	
-	/**
-	 * Sets the viewer on which this action operates.
-	 * 
-	 * @param viewer the viewer on which this action operates
-	 */
-	public void setViewer(SourceContainerViewer viewer) {
-		if (fViewer != null) {
-			fViewer.removeSelectionChangedListener(this);
-		}
-		fViewer = viewer;
-		if (fViewer != null) {
-			fViewer.addSelectionChangedListener(this);
-			update();
-		}
-	}
-	
-	/**
-	 * Returns the viewer on which this action operates.
-	 * 
-	 * @return the viewer on which this action operates
-	 */
-	protected SourceContainerViewer getViewer() {
-		return fViewer;
-	}
-	
-	/**
-	 * Returns the selected items in the list, in the order they are
-	 * displayed.
-	 * 
-	 * @return targets for an action
-	 */
-	protected List getOrderedSelection() {
-		List targets = new ArrayList();
-		List selection =
-			((IStructuredSelection) getViewer().getSelection()).toList();
-		ISourceContainer[] entries = getViewer().getEntries();
-		for (int i = 0; i < entries.length; i++) {
-			ISourceContainer target = entries[i];
-			if (selection.contains(target)) {
-				targets.add(target);
-			}
-		}
-		return targets;
-	}
-	
-	/**
-	 * Returns a list (copy) of the entries in the viewer
-	 */
-	protected List getEntriesAsList() {
-		ISourceContainer[] entries = getViewer().getEntries();
-		List list = new ArrayList(entries.length);
-		for (int i = 0; i < entries.length; i++) {
-			list.add(entries[i]);
-		}
-		return list;
-	}
-	
-	/**
-	 * Updates the entries to the entries in the given list
-	 */
-	protected void setEntries(List list) {
-		getViewer().setEntries(
-				(ISourceContainer[]) list.toArray(new ISourceContainer[list.size()]));
-		// update all selection listeners
-		getViewer().setSelection(getViewer().getSelection());
-	}
-	
-	/**
-	 * Returns whether the item at the given index in the list
-	 * (visually) is selected.
-	 */
-	protected boolean isIndexSelected(
-			IStructuredSelection selection,
-			int index) {
-		if (selection.isEmpty()) {
-			return false;
-		}
-		Iterator entries = selection.iterator();
-		List list = getEntriesAsList();
-		while (entries.hasNext()) {
-			Object next = entries.next();
-			if (list.indexOf(next) == index) {
-				return true;
-			}
-		}
-		return false;
-	}
-	
-	/**
-	 * Sets the button that invokes this action
-	 */
-	public void setButton(Button button) {
-		fButton = button;
-		button.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent evt) {
-				run();
-			}
-		});
-	}
-	
-	/**
-	 * @see IAction#setEnabled(boolean)
-	 */
-	public void setEnabled(boolean enabled) {
-		super.setEnabled(enabled);
-		if (fButton != null) {
-			fButton.setEnabled(enabled);
-		}
-	}
-	
-	/**
-	 * Updates the enabled state.
-	 */
-	protected void update() {
-		selectionChanged((IStructuredSelection) getViewer().getSelection());
-	}
-	
-	/**
-	 * Returns the shell used to realize this action's dialog (if any).
-	 */
-	protected Shell getShell() {
-		if (fShell == null) {
-			fShell = getViewer().getControl().getShell();
-		}
-		return fShell;
-	}
-	
-	/**
-	 * Sets the shell used to realize this action's dialog (if any).
-	 */
-	public void setShell(Shell shell) {
-		fShell = shell;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java
deleted file mode 100644
index cc690aa..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerAdapterFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Adapter factory for standard source containers.
- * 
- * @since 3.0
- */
-public class SourceContainerAdapterFactory implements IAdapterFactory {
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
-	 */
-	public Object getAdapter(Object adaptableObject, Class adapterType) {
-		if (adapterType.equals(IWorkbenchAdapter.class)) {
-			return new SourceContainerWorkbenchAdapter();
-		}
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
-	 */
-	public Class[] getAdapterList() {
-		return new Class[] {IWorkbenchAdapter.class};
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java
deleted file mode 100644
index 469e84c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerLabelProvider.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-
-/**
- * Label provider for source containers and source container types.
- * 
- * @since 3.0
- */
-public class SourceContainerLabelProvider extends LabelProvider {
-	
-	private ILabelProvider fLabelProvider = null;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-	 */
-	public Image getImage(Object element) {
-		// first allow workbench adapter to provide image
-		Image image = getWorkbenchLabelProvider().getImage(element);
-		if (image == null) {
-			ISourceContainerType type = null;
-			if (element instanceof ISourceContainer) {
-				type = ((ISourceContainer)element).getType();
-			} else if (element instanceof ISourceContainerType) {
-				type = (ISourceContainerType) element;
-			}
-			if (type != null) {
-				// next consult contributed image
-				image = SourceLookupUIUtils.getSourceContainerImage(type.getId());
-			}
-		}		
-		if (image != null) {
-			return image;
-		}
-		return super.getImage(element);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-	 */
-	public String getText(Object element) {
-		// first, allo workbench adapter to provide label
-		String label = getWorkbenchLabelProvider().getText(element);
-		if (label == null || label.length() == 0) {
-			if (element instanceof ISourceContainer) {
-				return ((ISourceContainer) element).getName(); 
-			} else if (element instanceof ISourceContainerType) {
-				return ((ISourceContainerType)element).getName();
-			}
-		} else {
-			return label;
-		}
-		return super.getText(element);
-	}
-	
-	private ILabelProvider getWorkbenchLabelProvider() {
-		if (fLabelProvider == null) {
-			fLabelProvider = new WorkbenchLabelProvider();
-		}
-		return fLabelProvider;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		if (fLabelProvider != null) {
-			fLabelProvider.dispose();
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerViewer.java
deleted file mode 100644
index a31362a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerViewer.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Composite;
-
-/**
- * The viewer containing the source containers in the 
- * SourceContainerLookupTab and the EditSourceLookupPathDialog.
- * It is a tree viewer since the containers are represented in tree form.
- * 
- * @since 3.0
- */
-public class SourceContainerViewer extends TreeViewer {
-	
-	/**
-	 * Whether enabled/editable.
-	 */
-	private boolean fEnabled = true;
-	/**
-	 * The parent panel
-	 */
-	private SourceLookupPanel fPanel;	
-	/**
-	 * The source container entries displayed in this viewer
-	 */
-	protected List fEntries = new ArrayList();
-	
-	class ContentProvider implements ITreeContentProvider {
-		
-		/**
-		 * @see IStructuredContentProvider#getElements(Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			return getEntries();
-		}
-		
-		/**
-		 * @see IContentProvider#dispose()
-		 */
-		public void dispose() {
-		}
-		
-		/**
-		 * @see IContentProvider#inputChanged(Viewer, Object, Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-		
-		/** 
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
-		 */
-		public Object[] getChildren(Object parentElement) {
-			try {
-				return ((ISourceContainer)parentElement).getSourceContainers();
-			} catch (CoreException e) {
-				return new Object[0];
-			}
-		}
-		
-		/**
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
-		 */
-		public Object getParent(Object element) {
-			// TODO:
-			return null;
-		}
-		
-		/**
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-		 */
-		public boolean hasChildren(Object element) {
-			return ((ISourceContainer)element).isComposite();				
-		}
-		
-	}
-	
-	/**
-	 * Creates a runtime classpath viewer with the given parent.
-	 *
-	 * @param parent the parent control
-	 * @param panel the panel hosting this viewer
-	 */
-	public SourceContainerViewer(Composite parent, SourceLookupPanel panel) {
-		super(parent);
-		setContentProvider(new ContentProvider());
-		SourceContainerLabelProvider lp = new SourceContainerLabelProvider();
-		setLabelProvider(lp);		
-		fPanel = panel;
-	}	
-	
-	/**
-	 * Sets the entries in this viewer 
-	 * 
-	 * @param entries source container entries
-	 */
-	public void setEntries(ISourceContainer[] entries) {
-		fEntries.clear();
-		for (int i = 0; i < entries.length; i++) {
-			if(entries[i] != null)
-				fEntries.add(entries[i]);
-		}
-		if (getInput() == null) {
-			setInput(fEntries);
-			//select first item in list
-			if(!fEntries.isEmpty() && fEntries.get(0)!=null)
-				setSelection(new StructuredSelection(fEntries.get(0)));			
-		} else {
-			refresh();
-		}
-		fPanel.setDirty(true);
-		fPanel.updateLaunchConfigurationDialog(); 
-	}
-	
-	/**
-	 * Returns the entries in this viewer
-	 * 
-	 * @return the entries in this viewer
-	 */
-	public ISourceContainer[] getEntries() {
-		return (ISourceContainer[])fEntries.toArray(new ISourceContainer[fEntries.size()]);
-	}
-	
-	/**
-	 * Adds the given entries to the list. If there is no selection
-	 * in the list, the entries are added at the end of the list, 
-	 * otherwise the new entries are added before the (first) selected
-	 * entry. The new entries are selected.
-	 * 
-	 * @param entries additions
-	 */
-	public void addEntries(ISourceContainer[] entries) {
-		IStructuredSelection sel = (IStructuredSelection)getSelection();
-		if (sel.isEmpty()) {
-			for (int i = 0; i < entries.length; i++) {
-				if (!fEntries.contains(entries[i])) {
-					fEntries.add(i, entries[i]);
-				}
-			}
-		} 
-		else { 
-			int index = fEntries.indexOf(sel.getFirstElement());
-			for (int i = 0; i < entries.length; i++) {
-				if (!fEntries.contains(entries[i])) {
-					fEntries.add(index, entries[i]);
-					index++;
-				}
-			}
-		}		
-		
-		refresh();
-		if(entries.length > 0)
-			setSelection(new StructuredSelection(entries));
-		fPanel.setDirty(true);
-		fPanel.updateLaunchConfigurationDialog();
-	}	
-	
-	/**
-	 * Enables/disables this viewer. Note the control is not disabled, since
-	 * we still want the user to be able to scroll if required to see the
-	 * existing entries. Just actions should be disabled.
-	 */
-	public void setEnabled(boolean enabled) {
-		fEnabled = enabled;
-		// fire selection change to upate actions
-		setSelection(getSelection());
-	}	
-	
-	/**
-	 * Returns whether this viewer is enabled
-	 */
-	public boolean isEnabled() {
-		return fEnabled;
-	}	
-		
-	/**
-	 * Returns the index of an equivalent entry, or -1 if none.
-	 * 
-	 * @return the index of an equivalent entry, or -1 if none
-	 */
-	public int indexOf(ISourceContainer entry) {
-		return fEntries.indexOf(entry);
-	}
-	
-	/**
-	 * Returns the source locator associated with the parent panel.
-	 * 
-	 * @return the source locator
-	 */
-	public ISourceLookupDirector getSourceLocator()
-	{
-		return fPanel.fLocator;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java
deleted file mode 100644
index 7190bd5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceContainerWorkbenchAdapter.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.io.File;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.containers.ArchiveSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.ExternalArchiveSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Workbench adapter for standard source containers.
- * 
- * @since 3.0
- */
-public class SourceContainerWorkbenchAdapter implements IWorkbenchAdapter {
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object o) {
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-	 */
-	public ImageDescriptor getImageDescriptor(Object object) {
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-	 */
-	public String getLabel(Object o) {
-		if (o instanceof DirectorySourceContainer) {
-			DirectorySourceContainer container = (DirectorySourceContainer) o;
-			File file = container.getDirectory();
-			IPath path = new Path(file.getAbsolutePath());
-			return SourceElementWorkbenchAdapter.getQualifiedName(path);
-		}
-		if (o instanceof FolderSourceContainer) {
-			FolderSourceContainer container = (FolderSourceContainer) o;
-			return SourceElementWorkbenchAdapter.getQualifiedName(container.getContainer().getFullPath());
-		}
-		if (o instanceof ArchiveSourceContainer) {
-			ArchiveSourceContainer container = (ArchiveSourceContainer)o;
-			return SourceElementWorkbenchAdapter.getQualifiedName(container.getFile().getFullPath());
-		}		
-		if (o instanceof ExternalArchiveSourceContainer) {
-			ExternalArchiveSourceContainer container = (ExternalArchiveSourceContainer)o;
-			IPath path = new Path(container.getName());
-			return SourceElementWorkbenchAdapter.getQualifiedName(path);
-		}		
-		return ""; //$NON-NLS-1$
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object o) {
-		return null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementAdapterFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementAdapterFactory.java
deleted file mode 100644
index 6c76f83..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementAdapterFactory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Adapter factory for source elements.
- * 
- * @since 3.0
- */
-public class SourceElementAdapterFactory implements IAdapterFactory {
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
-	 */
-	public Object getAdapter(Object adaptableObject, Class adapterType) {
-		if (adapterType.equals(IWorkbenchAdapter.class)) {
-			return new SourceElementWorkbenchAdapter();
-		}
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
-	 */
-	public Class[] getAdapterList() {
-		return new Class[] {IWorkbenchAdapter.class};
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementLabelProvider.java
deleted file mode 100644
index ea9c105..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementLabelProvider.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-
-/**
- * A label provider for source elements.
- * 
- * @since 3.0
- */
-public class SourceElementLabelProvider extends LabelProvider {
-	
-	private ILabelProvider fLabelProvider = null;
-	
-	
-	
-	private ILabelProvider getWorkbenchLabelProvider() {
-		if (fLabelProvider == null) {
-			fLabelProvider = new WorkbenchLabelProvider();
-		}
-		return fLabelProvider;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		if (fLabelProvider != null) {
-			fLabelProvider.dispose();
-		}
-	}	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-	 */
-	public Image getImage(Object element) {
-		return getWorkbenchLabelProvider().getImage(element);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-	 */
-	public String getText(Object element) {
-		if (element instanceof IResource) {
-			return SourceElementWorkbenchAdapter.getQualifiedName(((IResource)element).getFullPath());
-		}
-		return getWorkbenchLabelProvider().getText(element);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementWorkbenchAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementWorkbenchAdapter.java
deleted file mode 100644
index f993e2f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceElementWorkbenchAdapter.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.io.File;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage;
-import org.eclipse.debug.core.sourcelookup.containers.ZipEntryStorage;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.ISharedImages;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Workbench adapter for source elements.
- * 
- * @since 3.0
- */
-public class SourceElementWorkbenchAdapter implements IWorkbenchAdapter {
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object o) {
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-	 */
-	public ImageDescriptor getImageDescriptor(Object o) {
-		if (o instanceof LocalFileStorage || o instanceof ZipEntryStorage) {
-			return PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_OBJ_FILE);
-		}
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-	 */
-	public String getLabel(Object o) {
-		if (o instanceof LocalFileStorage) {
-			LocalFileStorage storage = (LocalFileStorage) o;
-			IPath path = storage.getFullPath();
-			return getQualifiedName(path);
-		}
-		if (o instanceof ZipEntryStorage) {
-			ZipEntryStorage storage = (ZipEntryStorage)o;
-			StringBuffer buffer = new StringBuffer();
-			buffer.append(storage.getZipEntry().getName());
-			buffer.append(" - "); //$NON-NLS-1$
-			buffer.append(storage.getArchive().getName());
-			return buffer.toString();
-		}
-		return ""; //$NON-NLS-1$
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object o) {
-		return null;
-	}
-	
-	public static String getQualifiedName(IPath path) {
-		StringBuffer buffer = new StringBuffer();
-		String[] segments = path.segments();
-		if (segments.length > 0) {
-			buffer.append(path.lastSegment());
-			if (segments.length > 1) {
-				buffer.append(" - "); //$NON-NLS-1$
-				if (path.getDevice() != null) {
-					buffer.append(path.getDevice());	
-				}
-				for (int i = 0; i < segments.length - 1; i++) {
-					buffer.append(File.separatorChar);
-					buffer.append(segments[i]);
-				}
-			}
-			return buffer.toString();
-		}
-		return ""; //$NON-NLS-1$
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupFacility.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupFacility.java
deleted file mode 100644
index 46b28e6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupFacility.java
+++ /dev/null
@@ -1,489 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.InstructionPointerManager;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.internal.ui.views.launch.Decoration;
-import org.eclipse.debug.internal.ui.views.launch.DecorationManager;
-import org.eclipse.debug.internal.ui.views.launch.SourceNotFoundEditorInput;
-import org.eclipse.debug.internal.ui.views.launch.StandardDecoration;
-import org.eclipse.debug.ui.IDebugEditorPresentation;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.ISourcePresentation;
-import org.eclipse.debug.ui.sourcelookup.ISourceLookupResult;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorReference;
-import org.eclipse.ui.IPageListener;
-import org.eclipse.ui.IPartListener2;
-import org.eclipse.ui.IReusableEditor;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Utility methods for looking up and displaying source.
- * 
- * @since 3.1
- */
-public class SourceLookupFacility implements IPageListener, IPartListener2, IPropertyChangeListener {
-    
-    /**
-     * Singleton source lookup facility
-     */
-    private static SourceLookupFacility fgDefault;
-    
-    /**
-     * Contains a map of the editor to use for each workbench
-     * page, when the 'resuse editor' preference is on. 
-     */
-    private Map fEditorsByPage;
-    
-    /**
-     * Whether to re-use editors when displaying source.
-     */
-    private boolean fReuseEditor = DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugUIConstants.PREF_REUSE_EDITOR);
-	
-    /**
-     * Returns the source lookup facility
-     * @return
-     */
-    public static SourceLookupFacility getDefault() {
-        if (fgDefault == null) {
-            fgDefault = new SourceLookupFacility();
-        }
-        return fgDefault;
-    }
-    
-    /**
-     * Performs cleanup
-     */
-    public static void shutdown() {
-        if (fgDefault != null) {
-            fgDefault.dispose();
-        }
-    }
-    
-    /**
-     * Constructs a source lookup facility.
-     */
-    private SourceLookupFacility() {
-        fEditorsByPage = new HashMap();
-        DebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this);
-    }
-    
-    /**
-     * Performs source lookup for the given artifact and returns the result.
-     *  
-     * @param artifact object for which source is to be resolved
-     * @param locator the source locator to use, or <code>null</code>. When <code>null</code>
-     *   a source locator is determined from the artifact, if possible. If the artifact
-     *   is a debug element, the source locator from its associated launch is used. 
-     * @return a source lookup result
-     */
-    public SourceLookupResult lookup(Object artifact, ISourceLocator locator) {
-        SourceLookupResult result = new SourceLookupResult(artifact, null, null, null);
-        IDebugElement debugElement = null;
-        if (artifact instanceof IDebugElement) {
-            debugElement = (IDebugElement)artifact;
-        }
-		if (locator == null) {
-		    ILaunch launch = null;
-		    if (debugElement != null) {
-		        launch = debugElement.getLaunch();
-		    }
-		    if (launch != null) {
-		        locator = launch.getSourceLocator();
-		    }
-		}
-		if (locator != null) {
-			String editorId =null;
-			IEditorInput editorInput = null;
-			Object sourceElement = null;
-			if (locator instanceof ISourceLookupDirector) {
-			    ISourceLookupDirector director = (ISourceLookupDirector)locator;
-			    sourceElement = director.getSourceElement(artifact);
-			} else {
-			    if (artifact instanceof IStackFrame) {
-			        sourceElement = locator.getSourceElement((IStackFrame)artifact);
-			    }
-			}
-			if (sourceElement == null) {
-				if (locator instanceof AbstractSourceLookupDirector) {
-				    editorInput = new CommonSourceNotFoundEditorInput(artifact);
-					editorId = IInternalDebugUIConstants.ID_COMMON_SOURCE_NOT_FOUND_EDITOR;
-				} else {
-				    if (artifact instanceof IStackFrame) {
-				        IStackFrame frame = (IStackFrame)artifact;
-					    editorInput = new SourceNotFoundEditorInput(frame);
-						editorId = IInternalDebugUIConstants.ID_SOURCE_NOT_FOUND_EDITOR;
-				    }
-				}
-			} else {
-				ISourcePresentation presentation= null;
-				if (locator instanceof ISourcePresentation) {
-					presentation= (ISourcePresentation) locator;
-				} else {
-				    if (debugElement != null) {
-				        presentation= getPresentation(debugElement.getModelIdentifier());
-				    }
-				}
-				if (presentation != null) {
-					editorInput= presentation.getEditorInput(sourceElement);
-				}
-				if (editorInput != null) {
-					editorId= presentation.getEditorId(editorInput, sourceElement);
-				}				
-			}
-			result.setEditorInput(editorInput);
-			result.setEditorId(editorId);
-			result.setSourceElement(sourceElement);
-		}
-		return result;
-    }
-    
-    /**
-     * Rerturns the model presentation for the given debug model, or <code>null</code>
-     * if none.
-     * 
-     * @param id debug model id
-     * @return presentation for the model, or <code>null</code> if none.
-     */
-	protected IDebugModelPresentation getPresentation(String id) {
-		return ((DelegatingModelPresentation)DebugUIPlugin.getModelPresentation()).getPresentation(id);
-	}   
-	
-	/**
-	 * Returns an editor presentation.
-	 * 
-	 * @return an editor presentation
-	 */
-	protected IDebugEditorPresentation getEditorPresentation() {
-	    return (DelegatingModelPresentation)DebugUIPlugin.getModelPresentation();
-	}
-    
-    /**
-     * Opens an editor in the given workbench page for the given source lookup
-     * result. Has no effect if the result has an unknown editor id or editor input.
-     * The editor is opened, positioned, and annotated.
-     * <p>
-     * Honors the user preference of whether to re-use editors when displaying source.
-     * </p> 
-     * @param result source lookup result to display
-     * @param page the page to display the result in
-     */
-    public void display(ISourceLookupResult result, IWorkbenchPage page) {
-		IEditorPart editor= openEditor(result, page);
-		if (editor == null) {
-			return;
-		}
-		IStackFrame frame = null;
-        if (result.getArtifact() instanceof IStackFrame) {
-            frame = (IStackFrame) result.getArtifact();
-        }		
-		// position and annotate editor for stack frame
-        if (frame != null) {
-			IDebugEditorPresentation editorPresentation = getEditorPresentation();
-            if (editorPresentation.addAnnotations(editor, frame)) {
-				Decoration decoration = new StandardDecoration(editorPresentation, editor, frame.getThread());
-				DecorationManager.addDecoration(decoration);				
-			} else {
-				// perform standard positioning and annotations
-				ITextEditor textEditor = null;
-				if (editor instanceof ITextEditor) {					
-					textEditor = (ITextEditor)editor;
-				} else {
-					textEditor = (ITextEditor) editor.getAdapter(ITextEditor.class);
-				}
-				if (textEditor != null) {
-					positionEditor(textEditor, frame);
-					InstructionPointerManager.getDefault().addAnnotation(textEditor, frame);
-				}
-			}
-		}        
-    }
-    
-	/**
-	 * Opens the editor used to display the source for an element selected in
-	 * this view and returns the editor that was opened or <code>null</code> if
-	 * no editor could be opened.
-	 */
-	private IEditorPart openEditor(ISourceLookupResult result, IWorkbenchPage page) {
-		IEditorPart editor = null;
-		IEditorInput input= result.getEditorInput();
-		String id= result.getEditorId();
-		if (input == null || id == null) {
-			return null;
-		}
-		
-		// TODO: persist/restore the editor to use per page
-		
-		if (fReuseEditor) {
-			editor = page.getActiveEditor();
-			if (editor != null) {
-				// The active editor is the one we want to reuse
-				if (!editor.getEditorInput().equals(input)) {
-					editor = null;
-				}
-			}
-			if (editor == null) {
-				// Try to find the editor we want to reuse and activate it
-				IEditorReference[] refs = page.getEditorReferences();
-				for (int i = 0; i < refs.length; i++) {
-					IEditorPart refEditor= refs[i].getEditor(false);
-					if (refEditor != null && input.equals(refEditor.getEditorInput())) {
-						editor = refEditor;
-						page.bringToTop(editor);
-						break;
-					}
-				}
-			}
-			if (editor == null) {
-			    IEditorPart editorForPage = getEditor(page);
-				if (editorForPage == null || editorForPage.isDirty() || page.isEditorPinned(editorForPage)) {
-				    // open a new editor
-					editor = openEditor(page, input, id);
-					editorForPage = editor;
-				} else if (editorForPage instanceof IReusableEditor && editorForPage.getSite().getId().equals(id)) {
-				    // re-use editor
-					((IReusableEditor)editorForPage).setInput(input);
-					editor = editorForPage;
-                    if(!page.isPartVisible(editor)) {
-                        page.bringToTop(editor);
-                    }
-				} else {
-				    // close editor, open a new one
-					editor = openEditor(page, input, id);
-					page.closeEditor(editorForPage, false);
-					editorForPage = editor;
-				}
-				setEditor(page, editorForPage);
-			}
-		} else {
-			// Open a new editor
-			editor = openEditor(page, input, id);
-		}
-		return editor;
-	}   
-	
-	/**
-	 * Positions the text editor for the given stack frame
-	 */
-	private void positionEditor(ITextEditor editor, IStackFrame frame) {
-		try {
-			int charStart = frame.getCharStart();
-			if (charStart > 0) {
-				editor.selectAndReveal(charStart, 0);
-				return;
-			}
-			int lineNumber = frame.getLineNumber();
-			lineNumber--; // Document line numbers are 0-based. Debug line numbers are 1-based.
-			IRegion region= getLineInformation(editor, lineNumber);
-			if (region != null) {
-				editor.selectAndReveal(region.getOffset(), 0);
-			}
-		} catch (DebugException e) {
-		}
-	}
-	
-	/**
-	 * Returns the line information for the given line in the given editor
-	 */
-	private IRegion getLineInformation(ITextEditor editor, int lineNumber) {
-		IDocumentProvider provider= editor.getDocumentProvider();
-		IEditorInput input= editor.getEditorInput();
-		try {
-			provider.connect(input);
-		} catch (CoreException e) {
-			return null;
-		}
-		try {
-			IDocument document= provider.getDocument(input);
-			if (document != null)
-				return document.getLineInformation(lineNumber);
-		} catch (BadLocationException e) {
-		} finally {
-			provider.disconnect(input);
-		}
-		return null;
-	}	
-	/**
-	 * Opens an editor in the workbench and returns the editor that was opened
-	 * or <code>null</code> if an error occurred while attempting to open the
-	 * editor.
-	 */
-	private IEditorPart openEditor(final IWorkbenchPage page, final IEditorInput input, final String id) {
-		final IEditorPart[] editor = new IEditorPart[] {null};
-		Runnable r = new Runnable() {
-			public void run() {
-				try {
-					editor[0] = page.openEditor(input, id, false);
-				} catch (PartInitException e) {
-					DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), 
-						DebugUIViewsMessages.LaunchView_Error_1,  //$NON-NLS-1$
-						DebugUIViewsMessages.LaunchView_Exception_occurred_opening_editor_for_debugger__2,  //$NON-NLS-1$
-						e);
-				}					
-			}
-		}; 
-		BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), r);
-		return editor[0];
-	}	
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPageListener#pageActivated(org.eclipse.ui.IWorkbenchPage)
-     */
-    public void pageActivated(IWorkbenchPage page) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPageListener#pageClosed(org.eclipse.ui.IWorkbenchPage)
-     */
-    public void pageClosed(IWorkbenchPage page) {
-        fEditorsByPage.remove(page);
-        page.removePartListener(this);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPageListener#pageOpened(org.eclipse.ui.IWorkbenchPage)
-     */
-    public void pageOpened(IWorkbenchPage page) {
-    	page.addPartListener(this);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partActivated(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partActivated(IWorkbenchPartReference partRef) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partBroughtToTop(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partBroughtToTop(IWorkbenchPartReference partRef) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partClosed(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partClosed(IWorkbenchPartReference partRef) {
-        // clear the cached editor for the page if it has been closed
-        IWorkbenchPage page = partRef.getPage();
-        IEditorPart editor = getEditor(page);
-        IWorkbenchPart part = partRef.getPart(false);
-		if (part != null && part.equals(editor)) {
-			fEditorsByPage.remove(page);
-		}
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partDeactivated(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partDeactivated(IWorkbenchPartReference partRef) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partOpened(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partOpened(IWorkbenchPartReference partRef) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partHidden(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partHidden(IWorkbenchPartReference partRef) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partVisible(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partVisible(IWorkbenchPartReference partRef) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPartListener2#partInputChanged(org.eclipse.ui.IWorkbenchPartReference)
-     */
-    public void partInputChanged(IWorkbenchPartReference partRef) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-     */
-    public void propertyChange(PropertyChangeEvent event) {
-        String property = event.getProperty();
-		if (property.equals(IDebugUIConstants.PREF_REUSE_EDITOR)) {
-			fReuseEditor = DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugUIConstants.PREF_REUSE_EDITOR);
-		}
-    }
-    
-    /**
-     * Returns the editor to use to display source in the given page, or
-     * <code>null</code> if a new editor should be opened.
-     * 
-     * @param page workbench page
-     * @return the editor to use to display source in the given page, or
-     * <code>null</code> if a new editor should be opened
-     */
-    protected IEditorPart getEditor(IWorkbenchPage page) {
-        return (IEditorPart) fEditorsByPage.get(page);
-    }
-    
-    /**
-     * Sets the editor to use to display source in the given page, or
-     * <code>null</code> if a new editor should be opened.
-     * 
-     * @param page workbench page
-     * @return the editor to use to display source in the given page, or
-     * <code>null</code> if a new editor should be opened
-     */
-    protected void setEditor(IWorkbenchPage page, IEditorPart editorPart) {
-        if (editorPart == null) {
-            fEditorsByPage.remove(page);
-        } else {
-            fEditorsByPage.put(page, editorPart);
-        }
-        page.addPartListener(this);
-        page.getWorkbenchWindow().addPageListener(this);
-    } 
-  
-    /**
-     * Performs cleanup.
-     */
-    protected void dispose() {
-        DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-        fEditorsByPage.clear();
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupPanel.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupPanel.java
deleted file mode 100644
index 5b29b9d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupPanel.java
+++ /dev/null
@@ -1,496 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Bug 89748
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.DefaultSourceContainer;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;
-import org.eclipse.debug.ui.sourcelookup.WorkingSetSourceContainer;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontMetrics;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.IWorkingSetManager;
-
-/**
- * The panel that contains the list of source containers.
- * 
- * @since 3.0
- */
-public class SourceLookupPanel extends AbstractLaunchConfigurationTab implements IPropertyChangeListener {
-	//the configuration being edited
-	protected ILaunchConfiguration fConfig;
-	//the viewer displaying the containers
-	protected SourceContainerViewer fPathViewer;
-	//the duplicates checkbox
-	protected Button fDuplicatesButton;
-	//the source actions - up, down, add, remove, restore
-	protected List fActions = new ArrayList(6);
-	//the director that will be used by the tab to manage/store the containers
-	protected ISourceLookupDirector fLocator;
-	
-	protected AddContainerAction fAddAction; 
-	protected EditContainerAction fEditAction;
-	protected RestoreDefaultAction fRestoreDefaultAction;
-	
-	/**
-	 * Creates and returns the source lookup control.
-	 * 
-	 * @param parent the parent widget of this control
-	 */
-	public void createControl(Composite parent) {
-		Font font = parent.getFont();
-		
-		Composite comp = new Composite(parent, SWT.NONE);
-		GridLayout topLayout = new GridLayout();
-		topLayout.numColumns = 2;
-		comp.setLayout(topLayout);
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		comp.setLayoutData(gd);
-		
-		Label viewerLabel = new Label(comp, SWT.LEFT);
-		viewerLabel.setText(
-				SourceLookupUIMessages.sourceTab_lookupLabel); //$NON-NLS-1$
-		gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		gd.horizontalSpan = 2;
-		viewerLabel.setLayoutData(gd);
-		viewerLabel.setFont(font);
-		
-		fPathViewer = new SourceContainerViewer(comp, this);
-		
-		gd = new GridData(GridData.FILL_BOTH);
-		fPathViewer.getControl().setLayoutData(gd);
-		fPathViewer.getControl().setFont(font);
-		
-		IWorkingSetManager workingSetMgr =DebugUIPlugin.getDefault().getWorkbench().getWorkingSetManager();
-		//listen to changes user made to the working sets, if a working set is being removed
-		//check current list to validate working sets  
-		workingSetMgr.addPropertyChangeListener(this);
-		
-		Composite pathButtonComp = new Composite(comp, SWT.NONE);
-		GridLayout pathButtonLayout = new GridLayout();
-		pathButtonLayout.marginHeight = 0;
-		pathButtonLayout.marginWidth = 0;
-		pathButtonComp.setLayout(pathButtonLayout);
-		gd =
-			new GridData(
-					GridData.VERTICAL_ALIGN_BEGINNING
-					| GridData.HORIZONTAL_ALIGN_FILL);
-		pathButtonComp.setLayoutData(gd);
-		pathButtonComp.setFont(font);
-		
-		createVerticalSpacer(comp, 2);
-		
-		fDuplicatesButton = new Button(comp, SWT.CHECK);
-		fDuplicatesButton.setText(
-				SourceLookupUIMessages.sourceTab_searchDuplicateLabel); //$NON-NLS-1$
-		gd = new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING);
-		gd.horizontalSpan = 2;
-		fDuplicatesButton.setLayoutData(gd);
-		fDuplicatesButton.setFont(font);
-		fDuplicatesButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent evt) {
-				setDirty(true);
-				updateLaunchConfigurationDialog();
-			}
-		});
-		
-		GC gc = new GC(parent);
-		gc.setFont(parent.getFont());
-		FontMetrics fontMetrics = gc.getFontMetrics();
-		gc.dispose();
-		
-		fAddAction = new AddContainerAction();
-		Button button =
-			createPushButton(pathButtonComp, fAddAction.getText(), fontMetrics);
-		fAddAction.setButton(button);
-		addAction(fAddAction);
-		
-		fEditAction = new EditContainerAction();
-		button =
-			createPushButton(pathButtonComp, fEditAction.getText(), fontMetrics);
-		fEditAction.setButton(button);
-		addAction(fEditAction);
-		
-		SourceContainerAction action = new RemoveAction();
-		button =
-			createPushButton(pathButtonComp, action.getText(), fontMetrics);
-		action.setButton(button);
-		addAction(action);
-		
-		action = new UpAction();
-		button =
-			createPushButton(pathButtonComp, action.getText(), fontMetrics);
-		action.setButton(button);
-		addAction(action);
-		
-		action = new DownAction();
-		button =
-			createPushButton(pathButtonComp, action.getText(), fontMetrics);
-		action.setButton(button);
-		addAction(action);		
-		
-		fRestoreDefaultAction = new RestoreDefaultAction();
-		button = createPushButton(pathButtonComp, fRestoreDefaultAction.getText(), fontMetrics);
-		fRestoreDefaultAction.setButton(button);
-		addAction(fRestoreDefaultAction);
-		
-		retargetActions(fPathViewer);
-		
-		Dialog.applyDialogFont(comp);
-		setControl(comp);
-	}	
-	
-	/**
-	 * Creates and returns a button 
-	 * 
-	 * @param parent parent widget
-	 * @param label label
-	 * @return Button
-	 */
-	protected Button createPushButton(
-			Composite parent,
-			String label,
-			FontMetrics fontMetrics) {
-		Button button = new Button(parent, SWT.PUSH);
-		button.setFont(parent.getFont());
-		button.setText(label);
-		GridData gd = getButtonGridData(button, fontMetrics);
-		button.setLayoutData(gd);
-		return button;
-	}
-	
-	private GridData getButtonGridData(
-			Button button,
-			FontMetrics fontMetrics) {
-		GridData gd =
-			new GridData(
-					GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING);
-		
-		int widthHint =
-			Dialog.convertHorizontalDLUsToPixels(
-					fontMetrics,
-					IDialogConstants.BUTTON_WIDTH);
-		gd.widthHint =
-			Math.max(
-					widthHint,
-					button.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);
-		
-		return gd;
-	}
-	
-	/**
-	 * Create some empty space 
-	 */
-	protected void createVerticalSpacer(Composite comp, int colSpan) {
-		Label label = new Label(comp, SWT.NONE);
-		GridData gd = new GridData();
-		gd.horizontalSpan = colSpan;
-		label.setLayoutData(gd);
-	}
-	
-	/**
-	 * Adds the given action to the action collection in this tab
-	 */
-	protected void addAction(SourceContainerAction action) {
-		fActions.add(action);
-	}
-	
-	/**
-	 * Re-targets actions to the given viewer
-	 */
-	protected void retargetActions(SourceContainerViewer viewer) {
-		Iterator actions = fActions.iterator();
-		while (actions.hasNext()) {
-			SourceContainerAction action = (SourceContainerAction) actions.next();
-			action.setViewer(viewer);
-		}
-	}
-	
-	/**
-	 * Initializes this control based on the settings in the given
-	 * launch configuration.
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration) {
-		if (fLocator != null) {
-			fLocator.dispose();
-			fLocator = null;
-		}
-		setErrorMessage(null);
-		setMessage(null);
-		String memento = null;	
-		String type = null;
-		try{
-			memento = configuration.getAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_MEMENTO, (String)null);
-			type = configuration.getAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_ID, (String)null);
-			if (type == null) {
-				type = configuration.getType().getSourceLocatorId();
-			}
-		}catch(CoreException e){
-			setErrorMessage(e.getMessage());
-			return;
-		}	
-		
-		if(type == null) {
-			setErrorMessage(SourceLookupUIMessages.sourceLookupPanel_2); //$NON-NLS-1$
-			return;
-		}
-		
-		boolean migration = false;
-		try {
-			ISourceLocator locator = getLaunchManager().newSourceLocator(type);
-			if(!(locator instanceof AbstractSourceLookupDirector)) {
-				// migrate to the new source lookup infrastructure
-				memento = null; // don't use old memento
-				type = configuration.getType().getSourceLocatorId();
-				if(type == null) {
-					setErrorMessage(SourceLookupUIMessages.sourceLookupPanel_2); //$NON-NLS-1$
-					return;
-				}
-				locator = getLaunchManager().newSourceLocator(type);
-				if (!(locator instanceof AbstractSourceLookupDirector)) {
-					setErrorMessage(SourceLookupUIMessages.sourceLookupPanel_2); //$NON-NLS-1$
-					return;
-				}
-				migration = true;
-			}
-			fLocator = (AbstractSourceLookupDirector)locator;			
-			if (memento == null) {
-				fLocator.initializeDefaults(configuration);
-			} else {				
-				fLocator.initializeFromMemento(memento, configuration);				 
-			}			
-		} catch (CoreException e) {
-			setErrorMessage(e.getMessage());
-			return;
-		}	
-		
-		initializeFrom(fLocator);
-		if (migration && configuration.isWorkingCopy()) {
-			// ensure perform apply actual updates the config
-			setDirty(true);
-			performApply((ILaunchConfigurationWorkingCopy)configuration);
-		}
-	}
-	
-	/**
-	 * Initializes this control based on the settings in the given
-	 * AbstractSourceLookupDirector
-	 */
-	public void initializeFrom(ISourceLookupDirector locator) {
-		if(fConfig == null)
-			fConfig = locator.getLaunchConfiguration();
-		fPathViewer.setEntries(locator.getSourceContainers());		
-		fDuplicatesButton.setSelection(locator.isFindDuplicates());
-		fLocator = locator;
-		fAddAction.setSourceLookupDirector(locator);
-		fEditAction.setSourceLookupDirector(locator);
-		fRestoreDefaultAction.setSourceLookupDirector(locator);
-		setDirty(false);
-	}
-	
-	/**
-	 * Saves the containers and duplicate policy into the given working copy of the configuration.  
-	 * Saving the configuration will result in a change event, which will be picked up by the director 
-	 * and used to refresh its internal list.
-	 * 
-	 * @param containers the list of containers entered by the user
-	 * @param duplicates true if the user checked the duplicates check box, false otherwise
-	 * @param workingCopy the working copy of the configuration that these values should be stored in, may be null.
-	 * 	If null, will be written into a working copy of the configuration referenced by the director.
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {		
-		if (isDirty()) {
-			if (fLocator == null) {
-				configuration.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_MEMENTO, (String)null);
-				configuration.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_ID, (String)null);
-				return;
-			}
-			ILaunchConfigurationWorkingCopy workingCopy = null;			
-			if(configuration == null) {
-				try{
-					workingCopy = fLocator.getLaunchConfiguration().getWorkingCopy();
-				}catch(CoreException e){ 
-					DebugUIPlugin.log(e);
-					setErrorMessage(SourceLookupUIMessages.sourceLookupPanel_1); //$NON-NLS-1$
-					return;
-				}
-			}
-			else workingCopy = configuration;	
-			if(workingCopy == null) {
-				DebugUIPlugin.logErrorMessage(SourceLookupUIMessages.sourceLookupPanel_1); //$NON-NLS-1$
-				return;
-			}
-			//set new values in director so memento returned is correct
-			fLocator.setSourceContainers(fPathViewer.getEntries());
-			fLocator.setFindDuplicates(fDuplicatesButton.getSelection());
-						
-			//writing to the file will cause a change event and the listeners will be updated
-			try{			
-				if (isDefault(workingCopy)) {
-					workingCopy.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_MEMENTO, (String)null);
-					workingCopy.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_ID, (String)null);
-				} else {
-					workingCopy.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_MEMENTO, fLocator.getMemento());
-					workingCopy.setAttribute(ILaunchConfiguration.ATTR_SOURCE_LOCATOR_ID, fLocator.getId());
-				}
-				if(configuration == null) 
-					workingCopy.doSave(); 
-				setDirty(false);
-			}catch(CoreException e){
-				DebugUIPlugin.log(e);
-				setErrorMessage(SourceLookupUIMessages.sourceLookupPanel_1); //$NON-NLS-1$
-			}
-			
-		}			
-	}
-	
-	protected boolean isDefault(ILaunchConfiguration configuration) {
-		ISourceContainer[] current = getEntries();
-		return !isFindDuplicates() && current.length == 1 && current[0] instanceof DefaultSourceContainer;
-	}
-
-	private boolean isFindDuplicates() {
-		return fDuplicatesButton.getSelection();
-	}
-
-	/**
-	 * Returns the entries visible in the viewer
-	 */
-	public ISourceContainer[] getEntries() {
-		return fPathViewer.getEntries();
-	}
-	/**
-	 * Marks the panel as dirty.
-	 */
-	public void setDirty(boolean dirty) {
-		super.setDirty(dirty);
-		
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName()
-	 */
-	public String getName() {
-		return SourceLookupUIMessages.sourceTab_tabTitle; //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractLaunchConfigurationTab#updateLaunchConfigurationDialog()
-	 */
-	protected void updateLaunchConfigurationDialog() {
-		if (getLaunchConfigurationDialog() != null) {
-			super.updateLaunchConfigurationDialog();
-		}
-	}
-		
-	/**
-	 * This is called whenever a working set has been removed. Loops through the original list
-	 * of working sets the user stores in the configuration. If the one being removed is in the
-	 * list, remove it from the list
-	 * @param affectedWorkingSet - the working set being removed
-	 */
-	private void validateWorkingSetSourceContainers(IWorkingSet affectedWorkingSet) {
-		List sourceContainers = (List) fPathViewer.getInput();
-		
-		if (sourceContainers != null) {
-			for (int i = 0; i < sourceContainers.size(); i++) {
-				if (sourceContainers.get(i)
-						instanceof WorkingSetSourceContainer) {
-					WorkingSetSourceContainer wsSrcContainer =
-						(WorkingSetSourceContainer) sourceContainers.get(i);
-					if (wsSrcContainer
-							.getName()
-							.equals(affectedWorkingSet.getName())) {
-						sourceContainers.remove(i);
-					}
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Listen to working set changes
-	 * @param event
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		//if the PropertyChangeEvent has changeId CHANGE_WORKING_SET_REMOVE, 
-		//validate the list to make sure all working sets are valid 
-		if (event.getProperty().equals(IWorkingSetManager.CHANGE_WORKING_SET_REMOVE))
-			validateWorkingSetSourceContainers((IWorkingSet) event.getOldValue());
-		
-		//if the PropertyChangeEvent has changeId CHANGE_WORKING_SET_NAME_CHANGE,
-		//do nothing because the event only has newValue, since oldValue is not provided
-		//there is no way to identify which working set does the newValue corresponds to									
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy) {
-		initializeFrom(workingCopy);
-	}
-	
-	/**
-	 * Returns the source lookup director associated with this
-	 * panel, or <code>null</code> if none.
-	 * 
-	 * @return the source lookup director associated with this
-	 * panel, or <code>null</code> if none
-	 */
-	public ISourceLookupDirector getDirector() {
-		return fLocator;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		IWorkingSetManager workingSetMgr =DebugUIPlugin.getDefault().getWorkbench().getWorkingSetManager();
-		//listen to changes user made to the working sets, if a working set is being removed
-		//check current list to validate working sets  
-		workingSetMgr.removePropertyChangeListener(this);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupResult.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupResult.java
deleted file mode 100644
index ffa6f7e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupResult.java
+++ /dev/null
@@ -1,129 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.debug.ui.sourcelookup.ISourceLookupResult;
-import org.eclipse.ui.IEditorInput;
-
-/**
- * The result of a source lookup contains the source element, editor id, and 
- * editor input resolved for a debug artifact.
- * 
- * @since 3.1
- */
-public class SourceLookupResult implements ISourceLookupResult {
-    
-    /** 
-     * Element that source was resolved for.
-     */
-    private Object fArtifact;
-    /**
-     * Corresponding source element, or <code>null</code>
-     * if unknown.
-     */
-    private Object fSourceElement;
-    /**
-     * Associated editor id, used to display the source element,
-     * or <code>null</code> if unknown.
-     */
-    private String fEditorId;
-    /**
-     * Associatd editor input, used to display the source element,
-     * or <code>null</code> if unknown.
-     */
-    private IEditorInput fEditorInput;
-
-    /**
-     * Creates a source lookup result on the given artifact, source element, 
-     * editor id, and editor input.
-     */
-    public SourceLookupResult(Object artifact, Object sourceElement, String editorId, IEditorInput editorInput) {
-        fArtifact = artifact;
-        setSourceElement(sourceElement);
-        setEditorId(editorId);
-        setEditorInput(editorInput);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.sourcelookup.ISourceLookupResult#getArtifact()
-     */
-    public Object getArtifact() {
-        return fArtifact;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.sourcelookup.ISourceLookupResult#getSourceElement()
-     */
-    public Object getSourceElement() {
-        return fSourceElement;
-    }
-    
-    /**
-     * Sets the source element resolved for the artifact that source
-     * lookup was performed for, or <code>null</code> if a source element
-     * was not resolved.
-     * 
-     * @param element resolved source element or <code>null</code> if unknown
-     */    
-    protected void setSourceElement(Object element) {
-        fSourceElement = element;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.sourcelookup.ISourceLookupResult#getEditorId()
-     */
-    public String getEditorId() {
-        return fEditorId;
-    }
-    
-    /**
-     * Sets the identifier of the editor used to display this source
-     * lookup result's source element, or <code>null</code> if unknown.
-     * 
-     * @param id the identifier of the editor used to display this source
-     * lookup result's source element, or <code>null</code> if unknown
-     */
-    protected void setEditorId(String id) {
-        fEditorId = id;
-    }    
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.sourcelookup.ISourceLookupResult#getEditorInput()
-     */
-    public IEditorInput getEditorInput() {
-        return fEditorInput;
-    }
-    
-    /**
-     * Sets the editor input used to display this source lookup
-     * result's source element, or <code>null</code> if unknown.
-     * 
-     * @param input the editor input used to display this source lookup
-     * result's source element, or <code>null</code> if unknown
-     */
-    protected void setEditorInput(IEditorInput input) {
-        fEditorInput = input;
-    }    
-	
-	/**
-	 * Updates the artifact to refer to the given artifact
-	 * if equal. For example, when a source lookup result is resued
-	 * for the same stack frame, we still need to update in case
-	 * the stack frame is not identical.
-	 * 
-	 * @param artifact new artifact state
-	 */
-	public void updateArtifact(Object artifact) {
-		if (fArtifact.equals(artifact)) {
-			fArtifact = artifact;
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java
deleted file mode 100644
index 685a73c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import org.eclipse.osgi.util.NLS;
-
-public class SourceLookupUIMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages";//$NON-NLS-1$
-
-	// Source search launch configuration tab/errors/dialogs
-	public static String EditContainerAction_0;
-	public static String sourceTab_lookupLabel;
-	public static String sourceTab_searchDuplicateLabel;
-	public static String sourceTab_upButton;
-	public static String sourceTab_downButton;
-	public static String sourceTab_removeButton;
-	public static String sourceTab_addButton;
-	public static String sourceTab_tabTitle;
-	public static String sourceTab_defaultButton;
-
-	public static String addSourceLocation_title;
-	public static String addSourceLocation_description;
-
-	public static String addSourceLocation_addButton2;
-	public static String addSourceLocation_editorMessage;
-
-	public static String sourceSearch_folderSelectionError;
-	public static String sourceSearch_initError;
-
-	public static String projectSelection_chooseLabel;
-	public static String projectSelection_requiredLabel;
-
-	public static String folderSelection_title;
-	public static String folderSelection_label;
-
-	public static String manageSourceDialog_title;
-	public static String manageSourceDialog_description;
-
-	public static String sourceLookupPanel_1;
-	public static String sourceLookupPanel_2;
-	public static String ResolveDuplicatesHandler_0;
-	public static String ResolveDuplicatesHandler_1;
-	public static String EditSourceLookupPathAction_0;
-	public static String LookupSourceAction_0;
-	public static String ExternalArchiveSourceContainerBrowser_2;
-	public static String ArchiveSourceContainerBrowser_3;
-	public static String ArchiveSourceContainerBrowser_4;
-	public static String DirectorySourceContainerDialog_0;
-	public static String DirectorySourceContainerDialog_1;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, SourceLookupUIMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties
deleted file mode 100644
index 0d05fc3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIMessages.properties
+++ /dev/null
@@ -1,51 +0,0 @@
-###############################################################################

-# Copyright (c) 2003, 2005 IBM Corporation and others.

-# All rights reserved. This program and the accompanying materials

-# are made available under the terms of the Eclipse Public License v1.0

-# which accompanies this distribution, and is available at

-# http://www.eclipse.org/legal/epl-v10.html

-#

-# Contributors:

-#     IBM Corporation - initial API and implementation

-###############################################################################

-

-# Source search launch configuration tab/errors/dialogs

-EditContainerAction_0=&Edit...

-sourceTab_lookupLabel = S&ource Lookup Path:

-sourceTab_searchDuplicateLabel = Searc&h for duplicate source files on the path

-sourceTab_upButton = U&p

-sourceTab_downButton = &Down

-sourceTab_removeButton = Re&move

-sourceTab_addButton = &Add...

-sourceTab_tabTitle = Source

-sourceTab_defaultButton = Restore Defa&ult

-

-addSourceLocation_title = Add Source

-addSourceLocation_description = Select the type of source to add to the source lookup path

-

-addSourceLocation_addButton2 = &Edit Source Lookup Path...

-addSourceLocation_editorMessage = Source not found.

-

-sourceSearch_folderSelectionError = Selection must be a folder.

-sourceSearch_initError = Unable to initialize source container.

-

-projectSelection_chooseLabel = Choose &project(s) to add:

-projectSelection_requiredLabel = Add &required projects of selected projects

-

-folderSelection_title=Folder Selection

-folderSelection_label=&Choose folders to add:

-

-manageSourceDialog_title = Edit Source Lookup Path

-manageSourceDialog_description = Edit the path used to locate source files.

-

-sourceLookupPanel_1 = Error occurred - unable to apply source lookup path changes.

-sourceLookupPanel_2 = Launch configuration does not support source lookup

-ResolveDuplicatesHandler_0=Select Source File

-ResolveDuplicatesHandler_1=Choose a source file (? = any character, * = any string)

-EditSourceLookupPathAction_0=Edit Source Loo&kup...

-LookupSourceAction_0=Lookup &Source

-ExternalArchiveSourceContainerBrowser_2=Select Source Archive

-ArchiveSourceContainerBrowser_3=Archive Selection

-ArchiveSourceContainerBrowser_4=Choose archives to add:

-DirectorySourceContainerDialog_0=Directory Selection

-DirectorySourceContainerDialog_1=Choose directory to add:

diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIUtils.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIUtils.java
deleted file mode 100644
index 7f00cb4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/SourceLookupUIUtils.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.Hashtable;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.sourcelookup.ISourceContainerBrowser;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
-import org.osgi.framework.Bundle;
-
-/**
- * Utility methods for the UI portion of the source lookup solution.
- * 
- * @since 3.0
- */
-public class SourceLookupUIUtils {
-	/**
-	 * Constant for the container presentation extension id.
-	 * @since 3.0
-	 */
-	public static final String CONTAINER_PRESENTATION_EXTENSION = "sourceContainerPresentations"; //$NON-NLS-1$
-	/**
-	 * Constant for the container presentation icon attribute.
-	 * @since 3.0
-	 */
-	public static final String ICON_ATTRIBUTE = "icon";	 //$NON-NLS-1$
-	/**
-	 * Constant for the container presentation browser attribute.
-	 * @since 3.0
-	 */
-	public static final String BROWSER_CLASS_ATTRIBUTE = "browserClass"; //$NON-NLS-1$
-	/**
-	 * Constant for the container presentation type id attribute.
-	 * @since 3.0
-	 */
-	public static final String CONTAINER_ID_ATTRIBUTE = "containerTypeID";	//$NON-NLS-1$
-	
-	private static Hashtable fSourceContainerPresentationHashtable;
-	
-	/**
-	 * Constructor. Reads in Source Container Presentation extension implementations.
-	 */
-	public SourceLookupUIUtils(){
-		IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), CONTAINER_PRESENTATION_EXTENSION);		
-		//read in SourceContainer presentation extensions
-		IConfigurationElement[] sourceContainerPresentationExtensions =extensionPoint.getConfigurationElements();
-		fSourceContainerPresentationHashtable = new Hashtable();
-		for (int i = 0; i < sourceContainerPresentationExtensions.length; i++) {
-			fSourceContainerPresentationHashtable.put(
-					sourceContainerPresentationExtensions[i].getAttribute(CONTAINER_ID_ATTRIBUTE),
-					sourceContainerPresentationExtensions[i]);
-			registerContainerImages(sourceContainerPresentationExtensions[i]);			
-		}		
-	}	
-	
-	
-	/**
-	 * Retrieves the icon associated with a source container type.
-	 * @param id the container type id
-	 * @return the image for the type specified
-	 */
-	public static Image getSourceContainerImage(String id){
-		if(fSourceContainerPresentationHashtable == null)
-			new SourceLookupUIUtils();
-		return DebugPluginImages.getImage(id);
-	}
-	
-	/**
-	 * Retrieves the browser class associated with the source container type specified.
-	 * @param typeID the source container type id
-	 * @return the browser class
-	 */
-	public static ISourceContainerBrowser getSourceContainerBrowser(String typeID)
-	{
-		if(fSourceContainerPresentationHashtable == null)
-			new SourceLookupUIUtils();
-		IConfigurationElement element = (IConfigurationElement)fSourceContainerPresentationHashtable.get(typeID);
-		ISourceContainerBrowser browser = null;
-		try{
-			if(element!= null && element.getAttribute(BROWSER_CLASS_ATTRIBUTE) != null)
-				browser = (ISourceContainerBrowser) element.createExecutableExtension(BROWSER_CLASS_ATTRIBUTE);
-		}catch(CoreException e){}
-		return browser;
-	}
-	
-	private void registerContainerImages(IConfigurationElement configElement){
-		Bundle bundle = Platform.getBundle(configElement.getNamespace());
-		URL iconURL = bundle.getEntry("/"); //$NON-NLS-1$
-		String iconPath = configElement.getAttribute(ICON_ATTRIBUTE);
-		ImageDescriptor imageDescriptor = ImageDescriptor.getMissingImageDescriptor();
-		String configTypeID = configElement.getAttribute(CONTAINER_ID_ATTRIBUTE);
-		ImageRegistry imageRegistry = DebugPluginImages.getImageRegistry();
-		DebugPluginImages.getImageRegistry();
-		if(iconPath != null)
-		{
-			try {
-				iconURL = new URL(iconURL, iconPath);
-				imageDescriptor = ImageDescriptor.createFromURL(iconURL);
-			} catch (MalformedURLException mue) {
-				DebugUIPlugin.log(mue);
-			}	
-			
-			imageRegistry.put(configTypeID, imageDescriptor);			
-		}		
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/UpAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/UpAction.java
deleted file mode 100644
index c25339b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/UpAction.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.jface.viewers.IStructuredSelection;
-
-/**
- * The action used to move source containers up in the list 
- */
-public class UpAction extends SourceContainerAction {
-	
-	public UpAction() {
-		super(SourceLookupUIMessages.sourceTab_upButton);  //$NON-NLS-1$
-	}
-	/**
-	 * Moves all selected entries up one position (if possible).
-	 * 
-	 * @see IAction#run()
-	 */
-	public void run() {
-		List targets = getOrderedSelection();
-		if (targets.isEmpty()) {
-			return;
-		}
-		int top = 0;
-		int index = 0;
-		List list = getEntriesAsList();
-		Iterator entries = targets.iterator();
-		while (entries.hasNext()) {
-			Object target = entries.next();
-			index = list.indexOf(target);
-			if (index > top) {
-				top = index - 1;
-				Object temp = list.get(top);
-				list.set(top, target);
-				list.set(index, temp);
-			}
-			top = index;
-		} 
-		setEntries(list);
-	}
-	
-	/**
-	 * @see SelectionListenerAction#updateSelection(IStructuredSelection)
-	 */
-	protected boolean updateSelection(IStructuredSelection selection) {
-		//check that something is selected, it's not first in the list, and it is a root tree node.
-		return !selection.isEmpty() && !isIndexSelected(selection, 0) && getViewer().getTree().getSelection()[0].getParentItem()==null;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/WorkingSetSourceContainerType.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/WorkingSetSourceContainerType.java
deleted file mode 100644
index 40cb6b1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/WorkingSetSourceContainerType.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup;
-
-import java.io.IOException;
-import java.io.StringReader;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.ParserConfigurationException;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.AbstractSourceContainerTypeDelegate;
-import org.eclipse.debug.ui.sourcelookup.WorkingSetSourceContainer;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.PlatformUI;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.xml.sax.InputSource;
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.DefaultHandler;
-
-/**
- * The factory for creating/restoring working set source containers.
- * 
- * @since 3.0
- */
-public class WorkingSetSourceContainerType extends AbstractSourceContainerTypeDelegate {
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.sourcelookup.ISourceContainerTypeDelegate#getMemento(org.eclipse.debug.internal.core.sourcelookup.ISourceContainer)
-	 */	
-	public String getMemento(ISourceContainer container) throws CoreException {
-		WorkingSetSourceContainer workingSet = (WorkingSetSourceContainer) container;
-		Document doc = newDocument();		
-		Element node = doc.createElement("workingSet"); //$NON-NLS-1$
-		node.setAttribute("name", workingSet.getName()); //$NON-NLS-1$
-		doc.appendChild(node);
-		return serializeDocument(doc);	 
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.sourcelookup.ISourceContainerType#createSourceContainer(java.lang.String)
-	 */
-	public ISourceContainer createSourceContainer(String memento)throws CoreException {
-		IWorkingSet workingSet = null;
-		Exception ex = null;
-		try {
-			Element root = null;
-			DocumentBuilder parser =
-				DocumentBuilderFactory.newInstance().newDocumentBuilder();
-			parser.setErrorHandler(new DefaultHandler());
-			StringReader reader = new StringReader(memento);
-			InputSource source = new InputSource(reader);
-			root = parser.parse(source).getDocumentElement();
-			
-			String name = root.getAttribute("name");//$NON-NLS-1$
-			
-			if (isEmpty(name)) {
-				abort(SourceLookupUIMessages.sourceSearch_initError,null);//$NON-NLS-1$
-			}
-			workingSet = PlatformUI.getWorkbench().getWorkingSetManager().getWorkingSet(name);
-			//check that set still exists
-			if (workingSet == null) {				
-				abort(SourceLookupUIMessages.sourceSearch_initError, null); //$NON-NLS-1$
-			}				
-			return new WorkingSetSourceContainer(workingSet);	
-			
-		} catch (ParserConfigurationException e) {
-			ex = e;
-		} catch (SAXException e) {
-			ex = e;
-		} catch (IOException e) {
-			ex = e;
-		}
-		
-		abort(SourceLookupUIMessages.sourceSearch_initError, ex);	//$NON-NLS-1$
-		return null;	
-	}
-
-	private boolean isEmpty(String string) {
-		return string == null || string.length() == 0;
-	}
-	
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveFilter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveFilter.java
deleted file mode 100644
index c5d5565..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveFilter.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.custom.BusyIndicator;
-
-/**
- * ArchiveFilter
- */
-public class ArchiveFilter extends ViewerFilter {
-	
-	/**
-	 * Collection of archives and containers to display
-	 */
-	private Set fArchives;
-	
-	/**
-	 * Collection of already existing archives
-	 */
-	private List fExisting;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-	 */
-	public boolean select(Viewer viewer, Object parentElement, Object element) {
-		return fArchives.contains(element) && !fExisting.contains(element);
-	}
-
-	/**
-	 * Constructs a new filter to display archives and their containers,
-	 * excluding the resources in the given list.
-	 * 
-	 * @param objects resources to exclude
-	 */
-	public ArchiveFilter(List objects) {
-		fExisting = objects;
-		init();
-	}
-	
-	/**
-	 * Search for all archives in the workspace.
-	 */
-	private void init() {
-		BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), new Runnable() {
-			public void run() {
-				fArchives = new HashSet();
-				traverse(ResourcesPlugin.getWorkspace().getRoot(), fArchives);
-			}
-		});
-	}
-
-	/**
-	 * Traverse the given container, adding archives to the given set.
-	 * Returns whether any files were added
-	 * 
-	 * @param root
-	 */
-	private boolean traverse(IContainer container, Set set) {
-		boolean added = false;
-		try {	
-			IResource[] resources = container.members();
-			for (int i = 0; i < resources.length; i++) {
-				IResource resource = resources[i];
-				if (resource instanceof IFile) {
-					IFile file = (IFile)resource;
-					String ext = file.getFileExtension();
-					if (ext != null && (ext.equalsIgnoreCase("jar") || ext.equalsIgnoreCase("zip"))) { //$NON-NLS-1$ //$NON-NLS-2$
-						set.add(file);
-						added = true;
-					}
-				} else if (resource instanceof IContainer) {
-					if (traverse((IContainer)resource, set)) {
-						set.add(resource);	
-						added = true;
-					}
-				}
-			}
-		} catch (CoreException e) {
-		}
-		return added;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveSourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveSourceContainerBrowser.java
deleted file mode 100644
index ca45c53..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ArchiveSourceContainerBrowser.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.ArchiveSourceContainer;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
-import org.eclipse.ui.dialogs.ISelectionStatusValidator;
-import org.eclipse.ui.model.WorkbenchContentProvider;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-import org.eclipse.ui.views.navigator.ResourceSorter;
-
-/**
- * Adds an internal jar to the runtime class path.
- */
-public class ArchiveSourceContainerBrowser extends AbstractSourceContainerBrowser {
-
-	private ISelectionStatusValidator validator= new ISelectionStatusValidator() {
-		public IStatus validate(Object[] selection) {
-			if (selection.length == 0) {
-				return new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), 0, "", null); //$NON-NLS-1$
-			}
-			for (int i= 0; i < selection.length; i++) {
-				if (!(selection[i] instanceof IFile)) {
-					return new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), 0, "", null); //$NON-NLS-1$
-				}					
-			}
-			return new Status(IStatus.OK, DebugUIPlugin.getUniqueIdentifier(), 0, "", null); //$NON-NLS-1$
-		}			
-	};
-
-	/**
-	 * Returns internal jars (source containers) currently used by the
-	 * given source lookup director.
-	 * 
-	 * @param director source lookup director jars are being added to
-	 */
-	protected List getSelectedJars(ISourceLookupDirector director) {
-		ISourceContainer[] containers = director.getSourceContainers();
-		List jars = new ArrayList();
-		for (int i = 0; i < containers.length; i++) {
-			ISourceContainer container = containers[i];
-			if (container.getType().getId().equals(ArchiveSourceContainer.TYPE_ID)) {
-				jars.add(container);
-			}
-		}
-		return jars;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#createSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.internal.core.sourcelookup.ISourceLookupDirector)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		ViewerFilter filter= new ArchiveFilter(getSelectedJars(director));
-		
-		ILabelProvider lp= new WorkbenchLabelProvider();
-		ITreeContentProvider cp= new WorkbenchContentProvider();
-
-		ElementTreeSelectionDialog dialog= new ElementTreeSelectionDialog(shell, lp, cp);
-		dialog.setValidator(validator);
-		dialog.setTitle(SourceLookupUIMessages.ArchiveSourceContainerBrowser_3); //$NON-NLS-1$
-		dialog.setMessage(SourceLookupUIMessages.ArchiveSourceContainerBrowser_4); //$NON-NLS-1$
-		dialog.addFilter(filter);
-		dialog.setInput(ResourcesPlugin.getWorkspace().getRoot());	
-		dialog.setSorter(new ResourceSorter(ResourceSorter.NAME));
-
-		if (dialog.open() == Window.OK) {
-			Object[] result = dialog.getResult();
-			ISourceContainer[] containers = new ISourceContainer[result.length];
-			for (int i = 0; i < containers.length; i++) {
-				containers[i] = new ArchiveSourceContainer((IFile)result[i], true);
-			}
-			return containers;
-		}	
-		return new ISourceContainer[0];
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerBrowser.java
deleted file mode 100644
index d4255b2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerBrowser.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.DirectorySourceContainer;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * The browser for adding an external folder source container.
- * @since 3.0
- */
-public class DirectorySourceContainerBrowser extends AbstractSourceContainerBrowser {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#createSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		ISourceContainer[] containers = new ISourceContainer[1];
-		DirectorySourceContainerDialog dialog = new DirectorySourceContainerDialog(shell);
-		String result = dialog.getResult();
-		if(result !=null)
-		{	//TODO add boolean to dialog instead of hard coding
-			containers[0] = new DirectorySourceContainer(new Path(result), true);			
-			return containers;			
-		}
-		
-		return new ISourceContainer[0];
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerDialog.java
deleted file mode 100644
index 60b8719..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/DirectorySourceContainerDialog.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.DirectoryDialog;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * The dialog for selecting the external folder for which a source container will be created.
- * 
- * @since 3.0
- */
-public class DirectorySourceContainerDialog {
-	
-	private String fRes;
-	private static final String LAST_PATH_SETTING = "EXT_FOLDER_LAST_PATH_SETTING"; //$NON-NLS-1$
-	
-	public DirectorySourceContainerDialog(Shell shell) {
-		
-		String lastUsedPath= DebugUIPlugin.getDefault().getDialogSettings().get(LAST_PATH_SETTING);
-		if (lastUsedPath == null) {
-			lastUsedPath= "";  //$NON-NLS-1$
-		}
-		//TODO not supposed to subclass DirectoryDialog, but need a checkbox added for subfolder searching
-		DirectoryDialog dialog = new DirectoryDialog(shell, SWT.MULTI);
-		dialog.setText(SourceLookupUIMessages.DirectorySourceContainerDialog_0); //$NON-NLS-1$
-		dialog.setFilterPath(lastUsedPath);
-		dialog.setMessage(SourceLookupUIMessages.DirectorySourceContainerDialog_1); //$NON-NLS-1$
-		fRes = dialog.open();
-		
-		if (fRes == null) {
-			return;
-		}
-		
-		IPath filterPath= new Path(dialog.getFilterPath());		
-		DebugUIPlugin.getDefault().getDialogSettings().put(LAST_PATH_SETTING, filterPath.toOSString());		
-	}
-	
-	/**
-	 * Returns the result of the dialog.open() operation
-	 * @return the dialog.open() result
-	 */
-	public String getResult() {
-		return fRes;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ExternalArchiveSourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ExternalArchiveSourceContainerBrowser.java
deleted file mode 100644
index aa17b15..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ExternalArchiveSourceContainerBrowser.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.ExternalArchiveSourceContainer;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * The browser for adding an external archive.
- * @since 3.0
- */
-public class ExternalArchiveSourceContainerBrowser extends AbstractSourceContainerBrowser {
-	
-	private static final String ROOT_DIR = ExternalArchiveSourceContainerBrowser.class.getName() + ".rootDir";   //$NON-NLS-1$
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#createSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		FileDialog dialog = new FileDialog(shell, SWT.OPEN | SWT.MULTI);
-		String rootDir = DebugUIPlugin.getDefault().getDialogSettings().get(ROOT_DIR);
-		dialog.setText(SourceLookupUIMessages.ExternalArchiveSourceContainerBrowser_2); //$NON-NLS-1$
-		dialog.setFilterExtensions(new String[]{"*.jar;*.zip"});  //$NON-NLS-1$//$NON-NLS-2$
-		if (rootDir != null) {
-			dialog.setFilterPath(rootDir);
-		}
-		dialog.open();
-		String[] fileNames= dialog.getFileNames();
-		int nChosen= fileNames.length;			
-		if (nChosen > 0) {
-			rootDir = dialog.getFilterPath();
-			IPath filterPath= new Path(rootDir);
-			ISourceContainer[] containers= new ISourceContainer[nChosen];
-			for (int i= 0; i < nChosen; i++) {
-				IPath path= filterPath.append(fileNames[i]).makeAbsolute();	
-				// TODO: configure auto-detect
-				containers[i]= new ExternalArchiveSourceContainer(path.toOSString(), true);
-			}
-			DebugUIPlugin.getDefault().getDialogSettings().put(ROOT_DIR, rootDir);
-			return containers;
-		}
-		return new ISourceContainer[0];
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerBrowser.java
deleted file mode 100644
index e1df33f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerBrowser.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import java.util.ArrayList;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
-import org.eclipse.ui.model.WorkbenchContentProvider;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-
-/**
- * The browser for adding a folder source container.
- * 
- * @since 3.0
- */
-public class FolderSourceContainerBrowser extends AbstractSourceContainerBrowser {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#createSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		Dialog dialog =new FolderSourceContainerDialog(shell,  new WorkbenchLabelProvider(), new WorkbenchContentProvider());
-		
-		if (dialog.open() == Window.OK) {
-			Object[] selection= ((ElementTreeSelectionDialog)dialog).getResult();
-			ArrayList containers = new ArrayList();			
-			for (int i= 0; i < selection.length; i++) {
-				if(!(selection[i] instanceof IFolder))
-					continue;			
-				//TODO add boolean to dialog instead of hard coding
-				containers.add(new FolderSourceContainer((IFolder)selection[i], true));				
-			}
-			return (ISourceContainer[])containers.toArray(new ISourceContainer[containers.size()]);	
-		}			
-		return new ISourceContainer[0];
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerDialog.java
deleted file mode 100644
index 6bf4432..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/FolderSourceContainerDialog.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
-import org.eclipse.ui.dialogs.ISelectionStatusValidator;
-import org.eclipse.ui.views.navigator.ResourceSorter;
-
-/**
- * The dialog for selecting the folder for which a source container will be created.
- * 
- * @since 3.0
- */
-public class FolderSourceContainerDialog extends ElementTreeSelectionDialog { 
-	
-	public FolderSourceContainerDialog(
-			Shell parent,
-			ILabelProvider labelProvider,
-			ITreeContentProvider contentProvider) {
-		super(parent, labelProvider, contentProvider);
-		setTitle(SourceLookupUIMessages.folderSelection_title);	//$NON-NLS-1$	
-		setInput(ResourcesPlugin.getWorkspace().getRoot());
-		setSorter(new ResourceSorter(ResourceSorter.NAME));
-		ISelectionStatusValidator validator= new ISelectionStatusValidator() {
-			public IStatus validate(Object[] selection) {
-				for (int i= 0; i < selection.length; i++) {
-					if (!(selection[i] instanceof IFolder)) {
-						return new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), -1, SourceLookupUIMessages.sourceSearch_folderSelectionError, null); //$NON-NLS-1$ 
-					} 				
-				}
-				return new Status(IStatus.OK, DebugUIPlugin.getUniqueIdentifier(), 0, "", null); //$NON-NLS-1$
-			}			
-		};
-		setValidator(validator);	
-		setDoubleClickSelects(true);
-		setAllowMultiple(true);
-		setMessage(SourceLookupUIMessages.folderSelection_label); //$NON-NLS-1$
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent,  IDebugHelpContextIds.ADD_FOLDER_CONTAINER_DIALOG);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerBrowser.java
deleted file mode 100644
index 789da21..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerBrowser.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import java.util.ArrayList;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-import org.eclipse.debug.internal.ui.sourcelookup.BasicContainerContentProvider;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.ListSelectionDialog;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-
-/**
- * The browser for creating project source containers.
- * 
- * @since 3.0
- */
-public class ProjectSourceContainerBrowser extends AbstractSourceContainerBrowser {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#createSourceContainers(org.eclipse.swt.widgets.Shell,org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		Object input = ResourcesPlugin.getWorkspace().getRoot();
-		IStructuredContentProvider contentProvider=new BasicContainerContentProvider();
-		ILabelProvider labelProvider = new WorkbenchLabelProvider();
-		Dialog dialog = new ProjectSourceContainerDialog(shell,input, contentProvider, labelProvider,
-				SourceLookupUIMessages.projectSelection_chooseLabel); //$NON-NLS-1$
-		if(dialog.open() == Window.OK){		
-			Object[] elements= ((ListSelectionDialog)dialog).getResult();
-			ArrayList res= new ArrayList();
-			for (int i= 0; i < elements.length; i++) {
-				if(!(elements[i] instanceof IProject))
-					continue;				
-				res.add(new ProjectSourceContainer((IProject)elements[i], ((ProjectSourceContainerDialog)dialog).isAddRequiredProjects()));				
-			}
-			return (ISourceContainer[])res.toArray(new ISourceContainer[res.size()]);	
-		}	
-		return new ISourceContainer[0];
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerDialog.java
deleted file mode 100644
index 3dba75b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/ProjectSourceContainerDialog.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.ListSelectionDialog;
-
-/**
- * The dialog for selecting the project for which a source container will be created.
- * 
- * @since 3.0
- */
-public class ProjectSourceContainerDialog extends ListSelectionDialog {
-	
-	private boolean fAddRequiredProjects = false;
-	
-	public ProjectSourceContainerDialog(
-			Shell parentShell,
-			Object input,
-			IStructuredContentProvider contentProvider,
-			ILabelProvider labelProvider,
-			String message) {
-		super(parentShell, input, contentProvider, labelProvider, message);
-	}
-	
-	
-	/**
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		Font font = parent.getFont();
-		
-		Composite composite = (Composite)super.createDialogArea(parent);
-		
-		final Button addRequired = new Button(composite, SWT.CHECK);
-		addRequired.setText(SourceLookupUIMessages.projectSelection_requiredLabel);  //$NON-NLS-1$
-		addRequired.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				fAddRequiredProjects = addRequired.getSelection();
-			}
-		});
-		addRequired.setSelection(fAddRequiredProjects);
-		addRequired.setFont(font);		
-		
-		applyDialogFont(composite);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getShell(),  IDebugHelpContextIds.ADD_PROJECT_CONTAINER_DIALOG);
-		return composite;
-	}
-	
-	
-	/**
-	 * Returns whether the user has selected to add required projects.
-	 * 
-	 * @return whether the user has selected to add required projects
-	 */
-	public boolean isAddRequiredProjects() {
-		return fAddRequiredProjects;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkingSetSourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkingSetSourceContainerBrowser.java
deleted file mode 100644
index ea7a914..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkingSetSourceContainerBrowser.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import java.util.ArrayList;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.debug.ui.sourcelookup.WorkingSetSourceContainer;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.IWorkingSetSelectionDialog;
-
-/**
- * The browser for creating working set source containers.
- * 
- * @since 3.0
- */
-public class WorkingSetSourceContainerBrowser extends AbstractSourceContainerBrowser {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#createSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		ArrayList containers = new ArrayList();		
-		IWorkingSetSelectionDialog dialog = PlatformUI.getWorkbench().getWorkingSetManager().createWorkingSetSelectionDialog(shell,true);
-		
-		if(dialog.open() == Window.OK)
-		{
-			IWorkingSet[] selections = dialog.getSelection();
-			if(selections != null)
-			{				
-				for(int i=0; i<selections.length; i++)
-				{
-					containers.add(new WorkingSetSourceContainer(selections[i]));					
-				}	
-			}		
-		}
-		
-		return (ISourceContainer[])containers.toArray(new ISourceContainer[containers.size()]);
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkspaceSourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkspaceSourceContainerBrowser.java
deleted file mode 100644
index 6375892..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/sourcelookup/browsers/WorkspaceSourceContainerBrowser.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.sourcelookup.browsers;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.core.sourcelookup.containers.WorkspaceSourceContainer;
-import org.eclipse.debug.ui.sourcelookup.AbstractSourceContainerBrowser;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * The browser for creating workspace source containers.
- * 
- * @since 3.0
- */
-public class WorkspaceSourceContainerBrowser extends AbstractSourceContainerBrowser {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#createSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		ISourceContainer[] containers = new ISourceContainer[1];
-		
-		containers[0] = new WorkspaceSourceContainer();
-		
-		return containers;		
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ContainerResolver.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ContainerResolver.java
deleted file mode 100644
index fa14d10..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ContainerResolver.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * Resolver for the <code>${container_*}</code> variables. Accepts an optional
- * argument that is interpretted as a full path to a container in the workspace.  
- * 
- * @since 3.0
- */
-public class ContainerResolver extends ResourceResolver {
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.stringsubstitution.ResourceResolver#translateSelectedResource(org.eclipse.core.resources.IResource)
-	 */
-	protected IResource translateSelectedResource(IResource resource) {
-		return resource.getParent();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FilePrompt.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FilePrompt.java
deleted file mode 100644
index 418c69f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FilePrompt.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 Matt Conway and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Matt Conway - initial implementation
- *     IBM Corporation - integration and code cleanup
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.swt.widgets.FileDialog;
-
-/**
- * Prompts the user to choose a file and expands the selection
- */
-public class FilePrompt extends PromptingResolver {
-
-	/**
-	 * Prompts the user to choose a file
-	 * @see PromptExpanderBase#prompt()
-	 */
-	public void prompt() {
-		FileDialog dialog = new FileDialog(getShell());
-		dialog.setText(dialogMessage);
-		dialog.setFileName(lastValue == null ? defaultValue : lastValue);
-		dialogResultString = dialog.open();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FolderPrompt.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FolderPrompt.java
deleted file mode 100644
index 861fceb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/FolderPrompt.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 Matt Conway and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Matt Conway - initial implementation
- *     IBM Corporation - integration and code cleanup
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.swt.widgets.DirectoryDialog;
-
-/**
- * Prompts the user to choose a folder and expands the selection
- */
-public class FolderPrompt extends PromptingResolver {
-
-	/**
-	 * Prompts the user to choose a folder.
-	 * @see PromptExpanderBase#prompt()
-	 */
-	public void prompt() {
-		DirectoryDialog dialog = new DirectoryDialog(getShell());
-		dialog.setText(dialogMessage);
-		dialog.setFilterPath(lastValue == null ? defaultValue : lastValue);
-		dialogResultString = dialog.open();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/IArgumentSelector.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/IArgumentSelector.java
deleted file mode 100644
index 025697c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/IArgumentSelector.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.core.variables.IStringVariable;
-import org.eclipse.swt.widgets.Shell;
-
-
-/**
- * A variable presentation extension can contribute an argument selector
- * which is use to configure the argument for a string substitution 
- * variable.
- * 
- * @since 3.0
- */
-public interface IArgumentSelector {
-
-	/**
-	 * Selects and returns an argument for the given variable, 
-	 * or <code>null</code> if none.
-	 * 
-	 * @param variable the variable an arugment is being seleted for
-	 * @param the shell to create any dialogs on, or <code>null</code> if none
-	 * @return argument for the given variable or <code>null</code>
-	 *  if none
-	 */
-	public String selectArgument(IStringVariable variable, Shell shell);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ProjectResolver.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ProjectResolver.java
deleted file mode 100644
index 7291661..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ProjectResolver.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.core.resources.IResource;
-
-/**
- * Resolver for the <code>${project_*}</code> variables. Accepts an optional argument
- * that is interpretted as the name of a project.  
- * 
- * @since 3.0
- */
-public class ProjectResolver extends ResourceResolver {
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.stringsubstitution.ResourceResolver#translateSelectedResource(org.eclipse.core.resources.IResource)
-	 */
-	protected IResource translateSelectedResource(IResource resource) {
-		return resource.getProject();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/PromptingResolver.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/PromptingResolver.java
deleted file mode 100644
index 46a8a5f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/PromptingResolver.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 Matt Conway and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Matt Conway - initial implementation
- *     IBM Corporation - integration and code cleanup
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.variables.IDynamicVariable;
-import org.eclipse.core.variables.IDynamicVariableResolver;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Base implementation for variable resolvers that prompt the user
- * for their value.
- */
-abstract class PromptingResolver implements IDynamicVariableResolver {
-
-	/**
-	 * A hint that helps the user choose their input. If a prompt
-	 * hint is provider the user will be prompted:
-	 * 	Please input a value for <code>promptHint</code>
-	 */
-	protected String promptHint = null;
-	/**
-	 * The prompt displayed to the user.
-	 */
-	protected String dialogMessage = null;
-	/**
-	 * The default value selected when the prompt is displayed
-	 */
-	protected String defaultValue = null;
-	/**
-	 * The last value chosen by the user for this variable 
-	 */
-	protected String lastValue = null;
-	/**
-	 * The result returned from the prompt dialog
-	 */
-	protected String dialogResultString = null;
-	
-	/**
-	 * Presents the user with the appropriate prompt for the variable to be expanded
-	 * and sets the <code>dialogResultString</code> based on the user's selection.
-	 */
-	public abstract void prompt();
-
-	/**
-	 * Initializes values displayed when the user is prompted. If
-	 * a prompt hint and default value are supplied in the given
-	 * variable value, these are extracted for presentation
-	 * 
-	 * @param varValue the value of the variable from which the prompt
-	 * hint and default value will be extracted
-	 */
-	protected void setupDialog(String varValue) {
-		promptHint = null;
-		defaultValue = null;
-		dialogResultString = null;
-		if (varValue != null) {
-			int idx = varValue.indexOf(':');
-			if (idx != -1) {
-				promptHint = varValue.substring(0, idx);
-				defaultValue = varValue.substring(idx + 1);
-			} else {
-				promptHint = varValue;
-			}
-		}
-
-		if (promptHint != null) {
-			dialogMessage = MessageFormat.format(StringSubstitutionMessages.PromptExpanderBase_0, new String[] {promptHint}); //$NON-NLS-1$
-		} else {
-			dialogMessage = StringSubstitutionMessages.PromptExpanderBase_1; //$NON-NLS-1$
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IContextVariableResolver#resolveValue(org.eclipse.debug.internal.core.stringsubstitution.IContextVariable, java.lang.String)
-	 */
-	public String resolveValue(IDynamicVariable variable, String argument) throws CoreException {
-		String value = null;
-		setupDialog(argument);
-
-		DebugUIPlugin.getStandardDisplay().syncExec(new Runnable() {
-			public void run() {
-				prompt();
-			}
-		});
-		if (dialogResultString != null) {
-			value = dialogResultString;
-			lastValue = dialogResultString;
-		} else {
-			// dialogResultString == null means prompt was cancelled
-			throw new DebugException(new Status(IStatus.CANCEL, DebugUIPlugin.getUniqueIdentifier(), IStatus.CANCEL, MessageFormat.format(StringSubstitutionMessages.PromptingResolver_0, new String[] { variable.getName() }), null)); //$NON-NLS-1$
-		}
-		return value;
-	}
-	
-	protected Shell getShell() {
-		Shell shell = DebugUIPlugin.getStandardDisplay().getActiveShell();
-		if (shell == null) {
-			shell = DebugUIPlugin.getShell();
-		}
-		return shell;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceResolver.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceResolver.java
deleted file mode 100644
index b082de6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceResolver.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.variables.IDynamicVariable;
-import org.eclipse.core.variables.IDynamicVariableResolver;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Common function of variable resolvers.
- * 
- * @since 3.0
- */
-public class ResourceResolver implements IDynamicVariableResolver {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.stringsubstitution.IContextVariableResolver#resolveValue(org.eclipse.debug.internal.core.stringsubstitution.IContextVariable, java.lang.String)
-	 */
-	public String resolveValue(IDynamicVariable variable, String argument) throws CoreException {
-		IResource resource = null;
-		if (argument == null) {
-			resource = getSelectedResource(variable);
-		} else {
-			resource = getWorkspaceRoot().findMember(new Path(argument));
-		}
-		if (resource != null && resource.exists()) {
-			resource = translateSelectedResource(resource);
-			if (resource != null && resource.exists()) {
-				return translateToValue(resource, variable);
-			}
-		}
-		abort(MessageFormat.format(StringSubstitutionMessages.ResourceResolver_6, new String[]{getReferenceExpression(variable, argument)}), null);				 //$NON-NLS-1$
-		return null;
-	}
-	
-	/**
-	 * Returns the resource applicable to this resolver, relative to the selected
-	 * resource. This method is called when no argument is present in a variable
-	 * expression. For, example, this method might return the project for the
-	 * selected resource.
-	 * 
-	 * @param resource selected resource
-	 * @return resource applicable to this variable resolver
-	 */
-	protected IResource translateSelectedResource(IResource resource) {
-		return resource;
-	}
-	
-	/**
-	 * Returns the workspace root
-	 * 
-	 * @return workspace root
-	 */
-	protected IWorkspaceRoot getWorkspaceRoot() {
-		return ResourcesPlugin.getWorkspace().getRoot();
-	}
-
-	/**
-	 * Returns an expression used to reference the given variable and optional argument.
-	 * For example, <code>${var_name:arg}</code>.
-	 * 
-	 * @param variable referenced variable
-	 * @param argument referenced argument or <code>null</code>
-	 * @return vraiable reference expression
-	 */
-	protected String getReferenceExpression(IDynamicVariable variable, String argument) {
-		StringBuffer reference = new StringBuffer();
-		reference.append("${"); //$NON-NLS-1$
-		reference.append(variable.getName());
-		if (argument != null) {
-			reference.append(":"); //$NON-NLS-1$
-			reference.append(argument);
-		}
-		reference.append("}"); //$NON-NLS-1$
-		return reference.toString();
-	}
-	
-	/**
-	 * Throws an exception with the given message and underlying exception.
-	 *  
-	 * @param message exception message
-	 * @param exception underlying exception or <code>null</code> 
-	 * @throws CoreException
-	 */
-	protected void abort(String message, Throwable exception) throws CoreException {
-		throw new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.INTERNAL_ERROR, message, exception));
-	}
-	
-	/**
-	 * Returns the selected resource.
-	 * 
-	 * @param variable variable referencing a resource
-	 * @return selected resource
-	 * @throws CoreException if there is no selection
-	 */
-	protected IResource getSelectedResource(IDynamicVariable variable) throws CoreException {
-		IResource resource = SelectedResourceManager.getDefault().getSelectedResource();
-		if (resource == null) {
-			abort(MessageFormat.format(StringSubstitutionMessages.ResourceResolver_7, new String[]{getReferenceExpression(variable, null)}), null); //$NON-NLS-1$
-		}
-		return resource;	
-	}
-
-	/**
-	 * Translates the given resource into a value for this variable resolver.
-	 * 
-	 * @param resource the resource applicable to this resolver's variable
-	 * @param variable the variable being resolved
-	 * @return variable value
-	 * @throws CoreException if the variable name is not recognized
-	 */
-	protected String translateToValue(IResource resource, IDynamicVariable variable) throws CoreException {
-		String name = variable.getName();
-		if (name.endsWith("_loc")) { //$NON-NLS-1$
-			return resource.getLocation().toOSString();
-		} else if (name.endsWith("_path")) { //$NON-NLS-1$
-			return resource.getFullPath().toOSString();
-		} else if (name.endsWith("_name")) { //$NON-NLS-1$
-			return resource.getName();
-		}
-		abort(MessageFormat.format(StringSubstitutionMessages.ResourceResolver_8, new String[]{getReferenceExpression(variable, null)}), null); //$NON-NLS-1$
-		return null;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceSelector.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceSelector.java
deleted file mode 100644
index 78efd71..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/ResourceSelector.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.variables.IStringVariable;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.dialogs.ResourceListSelectionDialog;
-
-/**
- * Selects a resource argument for a string substitution variable
- */
-public class ResourceSelector implements IArgumentSelector {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.stringsubstitution.IArgumentSelector#selectArgument(org.eclipse.debug.internal.core.stringsubstitution.IStringVariable)
-	 */
-	public String selectArgument(IStringVariable variable, Shell shell) {
-		ResourceListSelectionDialog dialog = new ResourceListSelectionDialog(shell, ResourcesPlugin.getWorkspace().getRoot(), IResource.FILE | IResource.FOLDER | IResource.PROJECT);
-		dialog.setTitle(StringSubstitutionMessages.ResourceSelector_0); //$NON-NLS-1$
-		if (dialog.open() == Window.OK) {
-			Object[] objects = dialog.getResult();
-			if (objects.length == 1) {
-				return ((IResource)objects[0]).getFullPath().toString();
-			}
-		}
-		return null;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedResourceManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedResourceManager.java
deleted file mode 100644
index 920b17a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedResourceManager.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import java.util.Stack;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.ISelectionService;
-import org.eclipse.ui.IWindowListener;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Maintains the context used to expand variables. The context is based on
- * the selected resource.
- */
-public class SelectedResourceManager implements IWindowListener, ISelectionListener {
-
-	// singleton
-	private static SelectedResourceManager fgDefault;
-	
-	private IResource fSelectedResource = null;
-	private ITextSelection fSelectedText = null;
-	private Stack fWindowStack = new Stack();
-	private ContextListner fDebugListener = new ContextListner();
-	private IAdaptable fDebugContext = null;
-	
-	private SelectedResourceManager() {
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		if (workbench != null) { //may be running headless
-			workbench.addWindowListener(this);
-			IWorkbenchWindow activeWindow = workbench.getActiveWorkbenchWindow();
-			if (activeWindow != null) {
-				windowActivated(activeWindow);
-			}
-		} 
-	}
-	
-	/**
-	 * Listens to selection changes in the debug view to update the debug context
-	 */
-	class ContextListner implements ISelectionListener {
-
-        /* (non-Javadoc)
-         * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-         */
-        public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-            fDebugContext = null;
-            if (selection instanceof IStructuredSelection) {
-                IStructuredSelection ss = (IStructuredSelection) selection;
-                Object firstElement = ss.getFirstElement();
-                if (firstElement instanceof IAdaptable) {
-                    fDebugContext = (IAdaptable) firstElement;
-                }
-            }
-        }
-	    
-	}
-	
-	/**
-	 * Returns the singleton resource selection manager
-	 * 
-	 * @return VariableContextManager
-	 */
-	public static SelectedResourceManager getDefault() {
-		if (fgDefault == null) {
-			fgDefault = new SelectedResourceManager(); 
-		}
-		return fgDefault;
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IWindowListener#windowActivated(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void windowActivated(IWorkbenchWindow window) {
-		fWindowStack.remove(window);
-		fWindowStack.push(window);
-		ISelectionService service = window.getSelectionService(); 
-		service.addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, fDebugListener);
-		service.addSelectionListener(this);
-		IWorkbenchPage page = window.getActivePage();
-		if (page != null) {
-			IWorkbenchPart part = page.getActivePart();
-			if (part != null) {				
-				ISelection selection = service.getSelection();
-				if (selection != null) {
-					selectionChanged(part, selection);
-				}
-			}
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWindowListener#windowClosed(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void windowClosed(IWorkbenchWindow window) {
-		ISelectionService selectionService = window.getSelectionService();
-        selectionService.removeSelectionListener(this);
-		selectionService.removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, fDebugListener);
-		fWindowStack.remove(window);
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWindowListener#windowDeactivated(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void windowDeactivated(IWorkbenchWindow window) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWindowListener#windowOpened(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void windowOpened(IWorkbenchWindow window) {
-		windowActivated(window);
-	}
-
-	/**
-	 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		IWorkbenchWindow window = part.getSite().getWorkbenchWindow();
-		if (fWindowStack.isEmpty() || !fWindowStack.peek().equals(window)) {
-			// selection is not in the active window
-			return;
-		}
-		IResource selectedResource = null;
-		if (selection instanceof IStructuredSelection) {
-			Object result = ((IStructuredSelection)selection).getFirstElement();
-			if (result instanceof IResource) {
-				selectedResource = (IResource) result;
-			} else if (result instanceof IAdaptable) {
-			    IAdaptable adaptable = (IAdaptable) result;
-				selectedResource = (IResource)adaptable.getAdapter(IResource.class);
-			}
-		}
-		
-		if (selectedResource == null) {
-			// If the active part is an editor, get the file resource used as input.
-			if (part instanceof IEditorPart) {
-				IEditorPart editorPart = (IEditorPart) part;
-				IEditorInput input = editorPart.getEditorInput();
-				selectedResource = (IResource) input.getAdapter(IResource.class);
-			} 
-		}
-		
-		if (selectedResource != null) {
-			fSelectedResource = selectedResource;
-		}
-		
-		if (selection instanceof ITextSelection) {
-			fSelectedText = (ITextSelection)selection;
-		}
-	}
-	
-	/**
-	 * Returns the currently selected resource in the active workbench window,
-	 * or <code>null</code> if none. If an editor is active, the resource adapater
-	 * associated with the editor is returned.
-	 * 
-	 * @return selected resource or <code>null</code>
-	 */
-	public IResource getSelectedResource() {
-		return fSelectedResource;
-	}
-	
-	/**
-	 * Returns the current text selection as a <code>String</code>, or <code>null</code> if
-	 * none.
-	 * 
-	 * @return the current text selection as a <code>String</code> or <code>null</code>
-	 */
-	public String getSelectedText() {
-		return fSelectedText.getText();
-	}
-	
-	/**
-	 * Returns the selected object in the debug view, or <code>null</code> if none.
-	 * 
-	 * @return the selected object in the debug view, or <code>null</code> if none
-	 */
-	public IAdaptable getDebugContext() {
-	    return fDebugContext;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedTextResolver.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedTextResolver.java
deleted file mode 100644
index e2726b8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/SelectedTextResolver.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.core.variables.IDynamicVariable;
-import org.eclipse.core.variables.IDynamicVariableResolver;
-
-public class SelectedTextResolver implements IDynamicVariableResolver {
-	private SelectedResourceManager selectedResourceManager;
-	
-	public SelectedTextResolver() {
-		selectedResourceManager = SelectedResourceManager.getDefault();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.variables.IDynamicVariableResolver#resolveValue(org.eclipse.core.variables.IDynamicVariable, java.lang.String)
-	 */
-	public String resolveValue(IDynamicVariable variable, String argument) {
-		String selection = selectedResourceManager.getSelectedText();
-		String selectedText = argument;
-		if (selection != null && selection.length() > 0) {
-			selectedText = selection;
-		}
-		return selectedText;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringPrompt.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringPrompt.java
deleted file mode 100644
index 1ec7ba5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringPrompt.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 Matt Conway and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Matt Conway - initial implementation
- *     IBM Corporation - integration and code cleanup
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.jface.dialogs.InputDialog;
-import org.eclipse.jface.window.Window;
-
-/**
- * Prompts the user to input a string and expands to the value entered
- */
-public class StringPrompt extends PromptingResolver {
-	
-	/**
-	 * Prompts the user to input a string.
-	 * @see PromptExpanderBase#prompt()
-	 */
-	public void prompt() {
-		InputDialog dialog = new InputDialog(null, StringSubstitutionMessages.StringPromptExpander_0, dialogMessage, lastValue == null ? defaultValue : lastValue, null); //$NON-NLS-1$
-		int dialogResult = dialog.open();
-		if (dialogResult == Window.OK) {
-			dialogResultString = dialog.getValue();
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.java
deleted file mode 100644
index ef76ef9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.osgi.util.NLS;
-
-public class StringSubstitutionMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.stringsubstitution.StringSubstitutionMessages";//$NON-NLS-1$
-
-	public static String PromptExpanderBase_0;
-	public static String PromptExpanderBase_1;
-	public static String PromptingResolver_0;
-
-	public static String RefreshTab_0;
-	public static String RefreshTab_6;
-	public static String RefreshTab_7;
-	public static String RefreshTab_8;
-	public static String RefreshTab_31;
-	public static String RefreshTab_32;
-	public static String RefreshTab_33;
-	public static String RefreshTab_34;
-	public static String RefreshTab_35;
-	public static String RefreshTab_36;
-	public static String RefreshTab_37;
-	public static String RefreshTab_38;
-	public static String RefreshTab_39;
-	public static String RefreshTab_40;
-	public static String RefreshTab_42;
-
-	public static String ResourceResolver_6;
-	public static String ResourceResolver_7;
-	public static String ResourceResolver_8;
-
-	public static String ResourceSelector_0;
-
-	public static String StringPromptExpander_0;
-
-	public static String StringVariableSelectionDialog_2;
-	public static String StringVariableSelectionDialog_3;
-	public static String StringVariableSelectionDialog_6;
-	public static String StringVariableSelectionDialog_7;
-	public static String StringVariableSelectionDialog_8;
-	public static String StringVariableSelectionDialog_0;
-	public static String StringVariableSelectionDialog_1;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, StringSubstitutionMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.properties
deleted file mode 100644
index 3148ddb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringSubstitutionMessages.properties
+++ /dev/null
@@ -1,46 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2005 IBM Corporation and others.

-# All rights reserved. This program and the accompanying materials

-# are made available under the terms of the Eclipse Public License v1.0

-# which accompanies this distribution, and is available at

-# http://www.eclipse.org/legal/epl-v10.html

-#

-# Contributors:

-#     IBM Corporation - initial API and implementation

-###############################################################################

-

-PromptExpanderBase_0=Please input a value for {0}

-PromptExpanderBase_1=Please input a value

-PromptingResolver_0=Failed to expand {0}. Input was cancelled.

-

-RefreshTab_0=Recursively &include sub-folders

-RefreshTab_6=Refresh

-RefreshTab_7=Refresh resources...

-RefreshTab_8=Exception(s) occurred during refresh.

-RefreshTab_31=Refresh resources &upon completion.

-RefreshTab_32=The &entire workspace

-RefreshTab_33=The se&lected resource

-RefreshTab_34=The &project containing the selected resource

-RefreshTab_35=The f&older containing the selected resource

-RefreshTab_36=&Specific resources

-RefreshTab_37=Specify &Resources...

-RefreshTab_38=Refresh scope refers to non-existent resource {0}

-RefreshTab_39=Refresh scope invalid

-RefreshTab_40=workingSet

-RefreshTab_42=Must select resources to refresh.

-

-ResourceResolver_6=Variable references non-existent resource : {0}

-ResourceResolver_7=Variable references empty selection: {0}

-ResourceResolver_8=Variable not recognized: {0}

-

-ResourceSelector_0=Select Resource

-

-StringPromptExpander_0=Variable input

-

-StringVariableSelectionDialog_2=Select Variable

-StringVariableSelectionDialog_3=&Choose a variable (? = any character, * = any string):

-StringVariableSelectionDialog_6=&Argument:

-StringVariableSelectionDialog_7=C&onfigure...

-StringVariableSelectionDialog_8=&Variable Description:

-StringVariableSelectionDialog_0=&Edit Variables...

-StringVariableSelectionDialog_1=String Substitution

diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariableLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariableLabelProvider.java
deleted file mode 100644
index ca12e41..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariableLabelProvider.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import org.eclipse.core.variables.IStringVariable;
-import org.eclipse.jface.viewers.LabelProvider;
-
-
-public class StringVariableLabelProvider extends LabelProvider {
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-		 */
-		public String getText(Object element) {
-			if (element instanceof IStringVariable) {
-				IStringVariable variable = (IStringVariable)element;
-				return variable.getName();
-			}
-			return super.getText(element);
-		}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariablePresentationManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariablePresentationManager.java
deleted file mode 100644
index e3584dc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/StringVariablePresentationManager.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-import java.text.MessageFormat;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.variables.IStringVariable;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-
-/**
- * Manages argument selectors (choosers) for string variables.
- * 
- * @since 3.0
- */
-public class StringVariablePresentationManager {
-	
-	/**
-	 * String variable presentation extension point identifier
-	 * (value <code>"stringVariablePresentations"</code>).
-	 * 
-	 * @since 3.0
-	 */
-	public static final String EXTENSION_POINT_STRING_VARIABLE_PRESENTATIONS = "stringVariablePresentations"; //$NON-NLS-1$
-	
-	// default manager
-	private static StringVariablePresentationManager fgManager;
-	
-	// extension point attributes
-	public static final String ATTR_NAME = "variableName"; //$NON-NLS-1$
-	public static final String ATTR_ARGUMENT_SELECTOR = "argumentSelector"; //$NON-NLS-1$
-	
-	/**
-	 * Table of configuration elements for variable presentations,
-	 * keyed by variable name.
-	 */
-	private Map fConfigurations;
-	
-	/**
-	 * Returns the singleton string variable presentation manager.
-	 * 
-	 * @return the singleton string variable presentation manager
-	 */
-	public static StringVariablePresentationManager getDefault() {
-		if (fgManager == null) {
-			fgManager = new StringVariablePresentationManager();
-		}
-		return fgManager;
-	}
-	
-	/**
-	 * Returns an argument selector contributed for the given
-	 * variable, or <code>null</code> if none.
-	 * 
-	 * @param variable string substitution variable
-	 * @return argument selector or <code>null</code>
-	 */
-	public IArgumentSelector getArgumentSelector(IStringVariable variable) {
-		IConfigurationElement element = (IConfigurationElement) fConfigurations.get(variable.getName());
-		if (element != null) {
-			try {
-				return (IArgumentSelector)element.createExecutableExtension(ATTR_ARGUMENT_SELECTOR);
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-		return null;
-	}
-	
-	/**
-	 * Constructs the manager, loading extensions.
-	 */
-	private StringVariablePresentationManager() {
-		initialize();
-	}
-
-	/**
-	 * Load extensions 
-	 */
-	private void initialize() {
-		fConfigurations = new HashMap();
-		IExtensionPoint point= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), EXTENSION_POINT_STRING_VARIABLE_PRESENTATIONS);
-		IConfigurationElement elements[]= point.getConfigurationElements();
-		for (int i = 0; i < elements.length; i++) {
-			IConfigurationElement element = elements[i];
-			String name= element.getAttribute(ATTR_NAME);
-			if (name == null) {
-				DebugUIPlugin.logErrorMessage(MessageFormat.format("String variable presentation extension missing required 'variableName' attribute: {0}", new String[] {element.getDeclaringExtension().getLabel()})); //$NON-NLS-1$
-				continue;
-			}
-			fConfigurations.put(name, element);
-		}		
-	}
-	
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/WorkspaceResolver.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/WorkspaceResolver.java
deleted file mode 100644
index 79d24fd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/stringsubstitution/WorkspaceResolver.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.stringsubstitution;
-
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.variables.IDynamicVariable;
-
-/**
- * Resolves the <code>${workspace_loc}</code> variable. The variable resolves to the
- * location of the workspace. If an argument is provided, it is interpretted as a
- * workspace relative path to a specific resource.
- * 
- * @since 3.0
- */
-public class WorkspaceResolver extends ResourceResolver {
-
-	/**
-	 * The <code>${workspace_loc}</code> variable does not use the selected resource.
-	 * 
-	 * @see org.eclipse.debug.internal.ui.stringsubstitution.ResourceResolver#getSelectedResource(org.eclipse.debug.internal.core.stringsubstitution.IContextVariable)
-	 */
-	protected IResource getSelectedResource(IDynamicVariable variable) {
-		return getWorkspaceRoot();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandler.java
deleted file mode 100644
index 155ace6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandler.java
+++ /dev/null
@@ -1,352 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.ui.AbstractDebugView;
-import org.eclipse.jface.viewers.IBasicPropertyConstants;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.progress.UIJob;
-
-/**
- * Handles debug events, updating a view and viewer.
- */
-public abstract class AbstractDebugEventHandler implements IDebugEventSetListener {
-	
-	/**
-	 * This event handler's view
-	 */
-	private AbstractDebugView fView;
-	
-	/**
-	 * Queued debug event sets (arrays of events) to process.
-	 */
-	private List fEventSetQueue = new ArrayList();
-	
-	/**
-	 * Queued data associated with event sets. Entries may be <code>null</code>.
-	 */
-	private List fDataQueue = new ArrayList();
-	
-	/**
-	 * Lock to add to/remove from data and event queues.
-	 */
-	private Object LOCK = new Object();
-	
-	/**
-	 * Update job 
-	 */
-	private EventProcessingJob fUpdateJob = new EventProcessingJob();
-	
-	/**
-	 * Empty event set constant
-	 */
-	protected static final DebugEvent[] EMPTY_EVENT_SET = new DebugEvent[0];
-	
-	private Object NULL = new Object();
-	
-	/**
-	 * Job to dispatch debug event sets
-	 */
-	private class EventProcessingJob extends UIJob {
-
-        private static final int TIMEOUT = 200;
-        
-	    public EventProcessingJob() {
-	        super(DebugUIViewsMessages.AbstractDebugEventHandler_0); //$NON-NLS-1$
-	        setSystem(true);
-	        setPriority(Job.INTERACTIVE);
-	    }
-	    
-        /* (non-Javadoc)
-         * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        public IStatus runInUIThread(IProgressMonitor monitor) {
-            boolean more = true;
-            long start = System.currentTimeMillis();
-            // to avoid blocking the UI thread, process a max of 50 event sets at once
-            while (more) {
-                DebugEvent[] eventSet = null;
-                Object data = null;
-			    synchronized (LOCK) {
-			        if (fEventSetQueue.isEmpty()) {
-			            return Status.OK_STATUS;
-			        }
-			        eventSet = (DebugEvent[]) fEventSetQueue.remove(0);
-			        more = !fEventSetQueue.isEmpty();
-			        data = fDataQueue.remove(0);
-			        if (data == NULL) {
-			            data = null;
-			        }
-			    }
-				if (isAvailable()) {
-					if (isViewVisible()) {
-						doHandleDebugEvents(eventSet, data);
-					}
-					updateForDebugEvents(eventSet, data);
-				}
-                
-                if (more) {
-                    long current = System.currentTimeMillis();
-                    if (current - start > TIMEOUT) {
-                        break;
-                    }
-                }
-            }
-            if (more) {
-                // re-schedule with a delay if there are still events to process 
-                schedule(50);
-            }
-            return Status.OK_STATUS;
-        }
-	    
-	}
-	/**
-	 * Constructs an event handler for the given view.
-	 * 
-	 * @param view debug view
-	 */
-	public AbstractDebugEventHandler(AbstractDebugView view) {
-		setView(view);
-		DebugPlugin plugin= DebugPlugin.getDefault();
-		plugin.addDebugEventListener(this);
-	}
-
-	/**
-	 * @see IDebugEventSetListener#handleDebugEvents(DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		if (!isAvailable()) {
-			return;
-		}
-		// filter events
-		events = filterEvents(events);
-		if (events.length == 0) {
-		    return;
-		}
-		synchronized (LOCK) {
-			events = doPreprocessEvents(events);
-			if (events.length == 0) {
-			    return;
-			}
-			// add the event set to the queue and schedule update
-		    fEventSetQueue.add(events);
-	        if (fDataQueue.size() < fEventSetQueue.size()) {
-	            fDataQueue.add(NULL);
-	        }
-		}
-		fUpdateJob.schedule();
-	}
-	
-	protected void queueData(Object data) {
-	    synchronized (LOCK) {
-	        fDataQueue.add(data);
-        }
-	}
-	
-	protected DebugEvent[] doPreprocessEvents(DebugEvent[] events) {
-	    return events;
-	}
-	
-	/**
-	 * Filters the given events before processing.
-	 *  
-	 * @param events event set received for processing
-	 * @return events to be processed
-	 */
-	protected DebugEvent[] filterEvents(DebugEvent[] events) {
-	    return events;
-	}
-	
-	/**
-	 * Updates this view for the given debug events. Unlike
-	 * doHandleDebugEvents(DebugEvent[]) which is only called if the view is
-	 * visible, this method is always called. This allows the view to perform
-	 * updating that must always be performed, even when the view is not
-	 * visible.
-	 */
-	protected void updateForDebugEvents(DebugEvent[] events, Object data) {
-	}
-	
-	/**
-	 * Implementation specific handling of debug events.
-	 * Subclasses should override.
-	 */
-	protected abstract void doHandleDebugEvents(DebugEvent[] events, Object data);	
-		
-	/**
-	 * Helper method for inserting the given element - must be called in UI thread
-	 */
-	protected void insert(Object element) {
-		if (isAvailable()) {
-			Object parent= ((ITreeContentProvider)getTreeViewer().getContentProvider()).getParent(element);
-			// a parent can be null for a debug target or process that has not yet been associated
-			// with a launch
-			if (parent != null) {
-				getView().showViewer();
-				getTreeViewer().add(parent, element);
-			}
-		}
-	}
-
-	/**
-	 * Helper method to remove the given element - must be called in UI thread.
-	 */
-	protected void remove(Object element) {
-		if (isAvailable()) {
-			getView().showViewer();
-			getTreeViewer().remove(element);
-		}
-	}
-
-	/**
-	 * Helper method to update the label of the given element - must be called in UI thread
-	 */
-	protected void labelChanged(Object element) {
-		if (isAvailable()) {
-			getView().showViewer();
-			getTreeViewer().update(element, new String[] {IBasicPropertyConstants.P_TEXT});
-		}
-	}
-
-	/**
-	 * Refresh the given element in the viewer - must be called in UI thread.
-	 */
-	protected void refresh(Object element) {
-		if (isAvailable()) {
-			 getView().showViewer();
-			 getTreeViewer().refresh(element);
-		}
-	}
-	
-	/**
-	 * Refresh the viewer - must be called in UI thread.
-	 */
-	public void refresh() {
-		if (isAvailable()) {
-			 getView().showViewer();
-			 getTreeViewer().refresh();
-		}
-	}	
-
-	/**
-	 * Helper method to select and reveal the given element - must be called in UI thread
-	 */
-	protected void selectAndReveal(Object element) {
-		if (isAvailable()) {
-			getViewer().setSelection(new StructuredSelection(element), true);
-		}
-	}
-	
-	/**
-	 * De-registers this event handler from the debug model.
-	 */
-	public void dispose() {
-		DebugPlugin plugin= DebugPlugin.getDefault();
-		plugin.removeDebugEventListener(this);
-		synchronized (LOCK) {
-			fEventSetQueue.clear();
-			fDataQueue.clear();
-		}
-	}
-	
-	/**
-	 * Returns the view this event handler is
-	 * updating.
-	 * 
-	 * @return debug view
-	 */
-	protected AbstractDebugView getView() {
-		return fView;
-	}
-	
-	/**
-	 * Sets the view this event handler is updating.
-	 * 
-	 * @param view debug view
-	 */
-	private void setView(AbstractDebugView view) {
-		fView = view;
-	}
-
-	/**
-	 * Returns the viewer this event handler is 
-	 * updating.
-	 * 
-	 * @return viewer
-	 */	
-	protected Viewer getViewer() {
-		return getView().getViewer();
-	}
-	
-	/**
-	 * Returns this event handler's viewer as a tree
-	 * viewer or <code>null</code> if none.
-	 * 
-	 * @return this event handler's viewer as a tree
-	 * viewer or <code>null</code> if none
-	 */
-	protected TreeViewer getTreeViewer() {
-		if (getViewer() instanceof TreeViewer) {
-			return (TreeViewer)getViewer();
-		} 
-		return null;
-	}
-	
-	/**
-	 * Returns whether this event handler's viewer is
-	 * currently available.
-	 * 
-	 * @return whether this event handler's viewer is
-	 * currently available
-	 */
-	protected boolean isAvailable() {
-		return getView().isAvailable();
-	}
-	
-	/**
-	 * Returns whether this event handler's view is currently visible.
-	 * 
-	 * @return whether this event handler's view is currently visible
-	 */
-	protected boolean isViewVisible() {
-		return getView().isVisible();	
-	}	
-	
-	/**
-	 * Called when this event handler's view becomes visible. Default behavior
-	 * is to refresh the view.
-	 */
-	protected void viewBecomesVisible() {
-		refresh();
-	}
-	
-	/**
-	 * Called when this event handler's view becomes hidden. Default behavior is
-	 * to do nothing. Subclasses may override.
-	 */
-	protected void viewBecomesHidden() {
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandlerView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandlerView.java
deleted file mode 100644
index 8cb5f39..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractDebugEventHandlerView.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
- 
-import org.eclipse.debug.ui.AbstractDebugView;
-import org.eclipse.jface.action.IStatusLineManager;
-
-/**
- * A debug view that uses an event handler to update its
- * view/viewer.
- */
-public abstract class AbstractDebugEventHandlerView extends AbstractDebugView {
-
-	/**
-	 * Event handler for this view
-	 */
-	private AbstractDebugEventHandler fEventHandler;
-
-	/**
-	 * Sets the event handler for this view
-	 * 
-	 * @param eventHandler event handler
-	 */
-	protected void setEventHandler(AbstractDebugEventHandler eventHandler) {
-		fEventHandler = eventHandler;
-	}
-	
-	/**
-	 * Returns the event handler for this view
-	 * 
-	 * @return The event handler for this view
-	 */
-	protected AbstractDebugEventHandler getEventHandler() {
-		return fEventHandler;
-	}	
-	
-	/**
-	 * @see IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		if (getEventHandler() != null) {
-			getEventHandler().dispose();
-		}	
-	}
-	
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#becomesHidden()
-	 */
-	protected void becomesHidden() {
-		super.becomesHidden();
-		getEventHandler().viewBecomesHidden();
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
-	 */
-	protected void becomesVisible() {
-		super.becomesVisible();
-		getEventHandler().viewBecomesVisible();
-	}
-	
-	protected void clearStatusLine() {
-		IStatusLineManager manager = getViewSite().getActionBars().getStatusLineManager(); 
-		manager.setErrorMessage(null);
-		manager.setMessage(null);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractViewerState.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractViewerState.java
deleted file mode 100644
index 1019181..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/AbstractViewerState.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * QNX Software Systems - Initial API and implementation
-***********************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.widgets.TreeItem;
-
-/**
- * The abstract superclass for mementos of the expanded and 
- * selected items in a tree viewer.
- */
-public abstract class AbstractViewerState {
-
-	// paths to expanded elements
-	private List fSavedExpansion = null;
-	private IPath[] fSelection;
-	
-	/**
-	 * Constructs a memento for the given viewer.
-	 */
-	public AbstractViewerState(TreeViewer viewer) {
-		saveState(viewer);
-	}
-
-	/**
-	 * Saves the current state of the given viewer into
-	 * this memento.
-	 * 
-	 * @param viewer viewer of which to save the state
-	 */
-	public void saveState(TreeViewer viewer) {
-		List expanded = new ArrayList();
-		fSavedExpansion = null;
-		TreeItem[] items = viewer.getTree().getItems();
-		try {
-			for (int i = 0; i < items.length; i++) {
-				collectExpandedItems(items[i], expanded);
-			}
-			if (expanded.size() > 0) {
-				fSavedExpansion = expanded;
-			}
-		} catch (DebugException e) {
-			fSavedExpansion = null;
-		}
-		TreeItem[] selection = viewer.getTree().getSelection();
-		fSelection = new IPath[selection.length];
-		try {
-		    for (int i = 0; i < selection.length; i++) {
-		        fSelection[i] = encodeElement(selection[i]);
-		        if (fSelection[i] == null) {
-		            fSelection = null;
-		            return;
-		        }
-		    }
-		} catch (DebugException e) {
-		    fSelection = null;
-		}
-	}
-
-	protected void collectExpandedItems(TreeItem item, List expanded) throws DebugException {
-        if (item.getExpanded()) {
-            IPath path = encodeElement(item);
-            if (path != null) {
-                expanded.add(path);
-                TreeItem[] items = item.getItems();
-                for (int i = 0; i < items.length; i++) {
-                    collectExpandedItems(items[i], expanded);
-                }
-            }
-        }
-    }
-
-	/**
-	 * Constructs a path representing the given tree item. The segments in the
-	 * path denote parent items, and the last segment is the name of
-	 * the given item.
-	 *   
-	 * @param item tree item to encode
-	 * @return path encoding the given item
-	 * @throws DebugException if unable to generate a path
-	 */
-	protected abstract IPath encodeElement(TreeItem item) throws DebugException;
-
-	/**
-	 * Restores the state of the given viewer to this memento's
-	 * saved state.
-	 * 
-	 * @param viewer viewer to which state is restored
-	 */
-	public void restoreState(TreeViewer viewer) {
-	    boolean expansionComplete = true;
-	    if (fSavedExpansion != null && fSavedExpansion.size() > 0) {		
-	        for (int i = 0; i < fSavedExpansion.size(); i++) {
-	            IPath path = (IPath) fSavedExpansion.get(i);
-	            if (path != null) {
-	                Object obj;
-	                try {
-	                    obj = decodePath(path, viewer);
-	                    if (obj != null) {
-	                        viewer.expandToLevel(obj, 1);
-	                    } else {
-	                        expansionComplete = false;                  
-	                    }
-	                } catch (DebugException e) {
-	                }
-	            }
-	        }
-	        if (expansionComplete) {
-	            fSavedExpansion = null;
-	        }
-	    }
-	    
-	    boolean selectionComplete = true;
-	    if (fSelection != null && fSelection.length > 0) {
-	        List selection = new ArrayList(fSelection.length);
-	        for (int i = 0; i < fSelection.length; i++) {
-	            IPath path = fSelection[i];
-	            Object obj;
-	            try {
-	                obj = decodePath(path, viewer);
-	                if (obj != null) {
-	                    selection.add(obj);
-	                } else {
-	                    selectionComplete = false;               
-	                }
-	            } catch (DebugException e) {
-	            }
-	        }
-            if (selection.size() > 0) {
-                viewer.setSelection(new StructuredSelection(selection));
-            }
-	        if (selectionComplete) {
-	            fSelection = null;
-	        }
-	    }
-	}
-	
-	/**
-	 * Returns an element in the given viewer that corresponds to the given
-	 * path, or <code>null</code> if none.
-	 * 
-	 * @param path encoded element path
-	 * @param viewer viewer to search for the element in
-	 * @return element represented by the path, or <code>null</code> if none
-	 * @throws DebugException if unable to locate a variable
-	 */
-	protected abstract Object decodePath(IPath path, TreeViewer viewer) throws DebugException;
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.java
deleted file mode 100644
index a0e1723..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-import org.eclipse.osgi.util.NLS;
-
-public class DebugUIViewsMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.views.DebugUIViewsMessages";//$NON-NLS-1$
-
-	public static String ExpressionInformationControl_5;
-	public static String find_replace_action_label;
-	public static String find_replace_action_tooltip;
-	public static String find_replace_action_image;
-	public static String find_replace_action_description;
-
-	public static String ConsoleView__Copy_Ctrl_C_6;
-	public static String ConsoleView__Paste_Ctrl_V_9;
-	public static String ConsoleView_Copy_7;
-	public static String ConsoleView_Cu_t_Ctrl_X_3;
-	public static String ConsoleView_Cut_4;
-	public static String ConsoleView_Paste_10;
-	public static String ConsoleView_Paste_Clipboard_Text_11;
-	public static String ConsoleView_Select__All_Ctrl_A_12;
-	public static String ConsoleView_Select_All;
-
-	public static String LaunchView_Error_1;
-	public static String LaunchViewer_0;
-	public static String LaunchViewer_1;
-	public static String LaunchView_0;
-	public static String LaunchView_1;
-	public static String LaunchView_2;
-	public static String LaunchView_Exception_occurred_opening_editor_for_debugger__2;
-	public static String LaunchView_Terminate_and_Remove_1;
-	public static String LaunchView_Terminate_and_remove_selected__2;
-	public static String LaunchView_Exceptions_occurred_attempting_to_terminate_and_remove_3;
-	public static String LaunchView_Terminate_and_Remove_4;
-	public static String LaunchView_Terminate_and_remove_failed_5;
-
-	public static String SourceNotFoundEditorInput_Source_Not_Found_1;
-	public static String SourceNotFoundEditorInput_Source_not_found_for__0__2;
-
-	public static String BreakpointsView_6;
-	public static String BreakpointsView_7;
-	public static String BreakpointsView_8;
-	public static String BreakpointsView_9;
-	public static String BreakpointsView_0;
-	public static String BreakpointsView_10;
-	public static String BreakpointsView_11;
-	public static String BreakpointsView_1;
-	public static String BreakpointWorkingSetPage_0;
-	public static String BreakpointWorkingSetPage_1;
-	public static String BreakpointWorkingSetPage_2;
-	public static String BreakpointWorkingSetPage_3;
-	public static String BreakpointWorkingSetPage_4;
-	public static String BreakpointWorkingSetPage_5;
-	public static String BreakpointWorkingSetPage_6;
-	public static String BreakpointWorkingSetPage_selectAll_label;
-	public static String BreakpointWorkingSetPage_selectAll_toolTip;
-	public static String BreakpointWorkingSetPage_deselectAll_label;
-	public static String BreakpointWorkingSetPage_deselectAll_toolTip;
-	public static String DebugViewLabelDecorator_0;
-	public static String AbstractDebugEventHandler_0;
-	public static String IncrementalDeferredTreeContentManager_0;
-	public static String IncrementalDeferredTreeContentManager_1;
-	public static String OtherBreakpointOrganizer_0;
-	public static String WorkingSetCategory_0;
-	public static String RemoteTreeViewer_0;
-	public static String RemoteTreeContentManager_0;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, DebugUIViewsMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.properties
deleted file mode 100644
index 3544bfe..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugUIViewsMessages.properties
+++ /dev/null
@@ -1,70 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-ExpressionInformationControl_5=Move to Expressions View
-find_replace_action_label=&Find/Replace...@Ctrl+F
-find_replace_action_tooltip=Find/Replace
-find_replace_action_image=
-find_replace_action_description=Find/Replace
-
-ConsoleView__Copy_Ctrl_C_6=&Copy@Ctrl+C
-ConsoleView__Paste_Ctrl_V_9=&Paste@Ctrl+V
-ConsoleView_Copy_7=Copy
-ConsoleView_Cu_t_Ctrl_X_3=Cu&t@Ctrl+X
-ConsoleView_Cut_4=Cut
-ConsoleView_Paste_10=Paste
-ConsoleView_Paste_Clipboard_Text_11=Paste Clipboard Text
-ConsoleView_Select__All_Ctrl_A_12=Select &All@Ctrl+A
-ConsoleView_Select_All=Select All
-
-LaunchView_Error_1=Error
-LaunchViewer_0=Selection Job
-LaunchViewer_1=Expansion Job
-LaunchView_0=Debug Source Lookup
-LaunchView_1=Debug Display Source
-LaunchView_2=Initialize Debug View
-LaunchView_Exception_occurred_opening_editor_for_debugger__2=Exception occurred opening editor for debugger.
-LaunchView_Terminate_and_Remove_1=Terminate and Remove
-LaunchView_Terminate_and_remove_selected__2=Terminate and remove selected?
-LaunchView_Exceptions_occurred_attempting_to_terminate_and_remove_3=Exceptions occurred attempting to terminate and remove
-LaunchView_Terminate_and_Remove_4=Terminate and Remove
-LaunchView_Terminate_and_remove_failed_5=Terminate and remove failed
-
-SourceNotFoundEditorInput_Source_Not_Found_1=Source Not Found
-SourceNotFoundEditorInput_Source_not_found_for__0__2=Source not found for {0}
-
-BreakpointsView_6=Enabling
-BreakpointsView_7=Disabling
-BreakpointsView_8=enable
-BreakpointsView_9=disable
-BreakpointsView_0=Enable Breakpoint
-BreakpointsView_10=Error {0} Breakpoint
-BreakpointsView_11=An exception occurred while attempting to {0} the breakpoint.
-BreakpointsView_1=Disable Breakpoint
-BreakpointWorkingSetPage_0=Breakpoint Working Set
-BreakpointWorkingSetPage_1=Enter a working set name and select breakpoints.
-BreakpointWorkingSetPage_2=&Working set name:
-BreakpointWorkingSetPage_3=Brea&kpoints:
-BreakpointWorkingSetPage_4=The name must not have leading or trailing whitespace
-BreakpointWorkingSetPage_5=The name must not be empty
-BreakpointWorkingSetPage_6=A working set with that name already exists
-BreakpointWorkingSetPage_selectAll_label=Select &All
-BreakpointWorkingSetPage_selectAll_toolTip=Select all of the breakpoints for this working set.
-BreakpointWorkingSetPage_deselectAll_label=Dese&lect All
-BreakpointWorkingSetPage_deselectAll_toolTip=Deselect all of the breakpoints for this working set.
-DebugViewLabelDecorator_0=Debug
-AbstractDebugEventHandler_0=Update Debug View
-IncrementalDeferredTreeContentManager_0=Replace children
-IncrementalDeferredTreeContentManager_1=Prune children
-OtherBreakpointOrganizer_0=Others
-WorkingSetCategory_0=\ (default)
-RemoteTreeViewer_0=Restore Viewer State
-RemoteTreeContentManager_0=Fetching children from debug target
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewDecoratingLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewDecoratingLabelProvider.java
deleted file mode 100644
index d0d96d6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewDecoratingLabelProvider.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-import java.util.HashMap;
-import java.util.Map;
-import org.eclipse.jface.viewers.DecoratingLabelProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.StructuredViewer;
-
-/**
- * A label provider which receives notification of labels computed in
- * the background by a LaunchViewLabelDecorator.
- */
-public class DebugViewDecoratingLabelProvider extends DecoratingLabelProvider {
-	
-	/**
-	 * A map of text computed for elements. Items are added to this map
-	 * when notification is received that text has been computed for an element
-	 * and they are removed the first time the text is returned for an
-	 * element.
-	 * key: Object the element
-	 * value: String the label text
-	 */
-	private Map computedText= new HashMap();
-	private StructuredViewer viewer= null;
-	private boolean disposed= false;
-	
-	/**
-	 * @see DecoratingLabelProvider#DecoratingLabelProvider(org.eclipse.jface.viewers.ILabelProvider, org.eclipse.jface.viewers.ILabelDecorator)
-	 */
-	public DebugViewDecoratingLabelProvider(StructuredViewer viewer, ILabelProvider provider, DebugViewLabelDecorator decorator) {
-		super(provider, decorator);
-		decorator.setLabelProvider(this);
-		this.viewer= viewer;
-	}
-	
-	/**
-	 * Notifies this label provider that the given text was computed
-	 * for the given element. The given text will be returned the next
-	 * time its text is requested.
-	 * 
-	 * @param element the element whose label was computed
-	 * @param text the label
-	 */
-	public void textComputed(Object element, String text) {
-		computedText.put(element, text);
-	}
-	
-	/**
-	 * Labels have been computed for the given block of elements.
-	 * This method tells the label provider to update the
-	 * given elements in the view.
-	 * 
-	 * @param elements the elements which have had their text computed
-	 */
-	public void labelsComputed(Object[] elements) {
-		if (!disposed) {
-			viewer.update(elements, null);
-		}
-		for (int i = 0; i < elements.length; i++) {
-			computedText.remove(elements[i]);
-		}
-	}
-	
-	/**
-	 * Returns the stored text computed by the background decorator
-	 * or delegates to the decorating label provider to compute text.
-	 * The stored value is not cleared - the value is cleared when
-	 * #lablesComputed(...) has completed the update of its elements.  
-	 * 
-	 * @see DecoratingLabelProvider#getText(java.lang.Object) 
-	 */
-	public String getText(Object element) {
-		String text= (String) computedText.get(element);
-		if (text != null) {
-			return text;
-		}
-		return super.getText(element);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		disposed= true;
-		super.dispose();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewInterimLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewInterimLabelProvider.java
deleted file mode 100644
index 6ae164b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewInterimLabelProvider.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.jface.viewers.IFontProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * A label provider that provide interim text labels. When queried for text, the label provider
- * returns a default string ("<pending...>"). When queried for images, the label provider
- * queries a debug model presentation. This label provider is intended to be passed to
- * a <code>DebugViewDecoratingLabelProvider</code>.
- */
-public class DebugViewInterimLabelProvider implements ILabelProvider, IColorProvider, IFontProvider {
-
-	/**
-	 * The text label returned by this label provider (value: "...").
-	 */
-	public final static String PENDING_LABEL= "..."; //$NON-NLS-1$
-	
-	/**
-	 * The debug model presentation used for computing images.
-	 */
-	protected IDebugModelPresentation presentation;
-
-	/**
-	 * Creates a new interim label provider with the given model presentation.
-	 * 
-	 * @param presentation the model presentation to use for computing images
-	 */
-	public DebugViewInterimLabelProvider(IDebugModelPresentation presentation) {
-		this.presentation= presentation;
-	}
-	
-	/**
-	 * Returns the debug model presentation used by this label provider
-	 * to compute images.
-	 * 
-	 * @return this label provider's model presentation
-	 */
-	public IDebugModelPresentation getPresentation() {
-		return presentation;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-	 */
-	public Image getImage(Object element) {
-		return presentation.getImage(element);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-	 */
-	public String getText(Object element) {
-		return DebugViewInterimLabelProvider.PENDING_LABEL;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
-	 */
-	public void addListener(ILabelProviderListener listener) {
-		presentation.addListener(listener);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		presentation.dispose();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
-	 */
-	public boolean isLabelProperty(Object element, String property) {
-		return presentation.isLabelProperty(element, property);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
-	 */
-	public void removeListener(ILabelProviderListener listener) {
-		presentation.removeListener(listener);
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IColorProvider#getForeground(java.lang.Object)
-     */
-    public Color getForeground(Object element) {
-        if (presentation instanceof IColorProvider) {
-            IColorProvider colorProvider = (IColorProvider) presentation;
-            return colorProvider.getForeground(element);
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IColorProvider#getBackground(java.lang.Object)
-     */
-    public Color getBackground(Object element) {
-        if (presentation instanceof IColorProvider) {
-            IColorProvider colorProvider = (IColorProvider) presentation;
-            return colorProvider.getBackground(element);
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IFontProvider#getFont(java.lang.Object)
-     */
-    public Font getFont(Object element) {
-        if (presentation instanceof IFontProvider) {
-            IFontProvider fontProvider = (IFontProvider) presentation;
-            return fontProvider.getFont(element);
-        }
-        return null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewLabelDecorator.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewLabelDecorator.java
deleted file mode 100644
index 6b39ec0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/DebugViewLabelDecorator.java
+++ /dev/null
@@ -1,342 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Set;
-import java.util.Vector;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jface.viewers.ILabelDecorator;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * A label decorator which computes text for debug elements
- * in the background and updates them asynchronously.
- */
-public class DebugViewLabelDecorator extends LabelProvider implements ILabelDecorator, IDebugEventSetListener {
-
-	/**
-	 * The presentation used to compute text.
-	 */
-	private IDebugModelPresentation fPresentation;
-	/**
-	 * The label provider notified when text is computed.
-	 */
-	private DebugViewDecoratingLabelProvider fLabelProvider;
-	/**
-	 * The job which will be executed next. All new label requests
-	 * are appended to this job.
-	 */
-	protected LabelJob fNextJob= null;
-	/**
-	 * A collection of threads that were resumed while their stack
-	 * frames' labels were being computed. By maintaining this collection,
-	 * the label decorator can refresh stack frame labels for these
-	 * threads when they suspend again.
-	 */
-	private Set resumedThreads= new HashSet();
-	/**
-	 * The stack frame whose label is currently being computed
-	 * or <code>null</code> if no stack frame label is being computed.
-	 */
-	private IStackFrame fCurrentStackFrame= null;
-	/**
-	 * An object to be used as a lock for thread-safe access to the
-	 * current frame.
-	 */
-	private Object fCurrentStackFrameLock= new Object();
-	
-	/**
-	 * Creates a new label decorator which will query the
-	 * given model presentation for text in the background.
-	 * @param presentation
-	 */
-	public DebugViewLabelDecorator(IDebugModelPresentation presentation) {
-		fPresentation= presentation;
-		DebugPlugin.getDefault().addDebugEventListener(this);
-	}
-	
-	/**
-	 * Sets the label provider which will be notified when a
-	 * label has been computed in the background.
-	 * 
-	 * @param labelProvider the label provider to notify when text
-	 *  is computed
-	 */
-	public void setLabelProvider(DebugViewDecoratingLabelProvider labelProvider) {
-		fLabelProvider= labelProvider;
-	}
-	
-	/**
-	 * @see org.eclipse.jface.viewers.ILabelDecorator#decorateImage(org.eclipse.swt.graphics.Image, java.lang.Object)
-	 */
-	public Image decorateImage(Image image, Object element) {
-		return image;
-	}
-
-	/**
-	 * @see org.eclipse.jface.viewers.ILabelDecorator#decorateText(java.lang.String, java.lang.Object)
-	 */
-	public String decorateText(String text, final Object element) {
-		computeText(element);
-		return text;
-	}
-	
-	/**
-	 * Queues up computation of text for the given element.
-	 *  
-	 * @param element
-	 */
-	public void computeText(Object element) {
-		synchronized(this) {
-			if (fNextJob == null) {
-				fNextJob= new LabelJob(DebugUIViewsMessages.DebugViewLabelDecorator_0, fPresentation); //$NON-NLS-1$
-			}
-			fNextJob.computeText(element);
-		}
-	}
-	
-	/**
-	 * Labels have been computed for the given elements. Fire notification
-	 * asynchronously.
-	 * 
-	 * @param computedElements the elements whose labels have been
-	 *  computed.
-	 */
-	public void labelsComputed(final Object[] computedElements) {
-		DebugUIPlugin.getStandardDisplay().asyncExec(new Runnable() {
-			public void run() {
-				fLabelProvider.labelsComputed(computedElements);
-			}
-		});
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		for (int i = 0; i < events.length; i++) {
-			DebugEvent event= events[i];
-			if (event.getKind() == DebugEvent.SUSPEND) {
-				handleSuspendEvent(event);
-			} else if (event.getKind() == DebugEvent.TERMINATE) {
-				handleTerminateEvent(event);
-			} else if (event.getKind() == DebugEvent.RESUME) {
-				handleResumeEvent(event);
-			}
-		}
-	}
-
-	/**
-	 * When a thread resumes for an evaluation or step while computing
-	 * labels for one of that thread's stack frames, add the thread to the
-	 * collection of "resumed threads". This allows any stack frames whose
-	 * label computation was interrupted when the thread was resumed
-	 * to be cleaned up later.
-	 * 
-	 * @param event the resume event
-	 */
-	private void handleResumeEvent(DebugEvent event) {
-		if (event.getSource() instanceof IThread && (event.isEvaluation() || event.isStepStart())) {
-			IThread thread= (IThread) event.getSource();
-			IStackFrame frame;
-			synchronized (fCurrentStackFrameLock) {
-				if (fCurrentStackFrame == null) {
-					return;
-				}
-				frame= fCurrentStackFrame;
-			}
-			if (thread == frame.getThread()) {
-				resumedThreads.add(thread);
-			}
-		}
-	}
-
-	/**
-	 * When a thread suspends after an evaluation or step, recompute labels
-	 * for its stack frames. This ensures that any stack frames whose
-	 * label computation was interrupted when the thread was resumed
-	 * will be cleaned up.
-	 * 
-	 * @param event the suspend event
-	 */
-	private void handleSuspendEvent(DebugEvent event) {
-		Object source= event.getSource();
-		synchronized (resumedThreads) {
-			if (!resumedThreads.remove(source)) {
-				return;
-			}
-		}
-		if (!event.isEvaluation() && (event.getDetail() & DebugEvent.STEP_END) == 0) {
-			return;
-		}
-		IThread thread= (IThread) source;
-		try {
-			IStackFrame[] frames= thread.getStackFrames();
-			for (int i = 0; i < frames.length; i++) {
-				computeText(frames[i]);
-			}
-		} catch (DebugException e) {
-		}
-	}
-
-	/**
-	 * When a terminate event is received for a debug target, remove
-	 * any of its threads from the resumed threads collection. This not only
-	 * prevents unnecessary stack frame label computations, it is a
-	 * backstop for cleaning up threads in the collection.
-	 * 
-	 * @param event the terminate event
-	 */
-	private void handleTerminateEvent(DebugEvent event) {
-		Object source= event.getSource();
-		if (source instanceof IDebugTarget) {
-			List copiedThreads= new ArrayList(resumedThreads);
-			ListIterator iterator = copiedThreads.listIterator();
-			while (iterator.hasNext()) {
-				IThread thread = (IThread) iterator.next();
-				if (thread.getDebugTarget() == source) {
-					iterator.remove();
-				}
-			}
-			synchronized(resumedThreads) {
-				resumedThreads.retainAll(copiedThreads);
-			}
-		}
-	}
-	
-	/**
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		DebugPlugin.getDefault().removeDebugEventListener(this);
-	}
-	
-	/**
-	 * A job which computes text for a queue of elements. The job's label
-	 * decorator is notified when text has been computed for some number
-	 * of elements.
-	 */
-	protected class LabelJob extends Job implements ISchedulingRule {
-		private Vector fElementQueue= new Vector();
-		private IDebugModelPresentation fJobPresentation;
-		
-		/**
-		 * Creates a new job with the given name which will use the given
-		 * presentation to compute labels in the background
-		 * @param name the job's name
-		 * @param presentation the presentation to use for label
-		 *  computation
-		 */
-		public LabelJob(String name, IDebugModelPresentation presentation) {
-			super(name);
-			fJobPresentation= presentation;
-			// TODO: why was this rule needed?
-			//setRule(this);
-			setSystem(true);
-		}
-		
-		/**
-		 * Queues up the given element to have its text computed.
-		 * @param element the element whose text should be computed
-		 *  in this background job
-		 */
-		public void computeText(Object element) {
-			if (!fElementQueue.contains(element)) {
-				if (element instanceof IStackFrame) {
-					fElementQueue.add(element);
-				} else {
-					// Add non-stack frame elements (debug target, thread, etc.)
-					// to the beginning of the queue so they're computed first.
-					fElementQueue.add(0, element);
-				}
-			}
-			schedule();
-		}
-
-		/**
-		 * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
-		 */
-		public IStatus run(IProgressMonitor monitor) {
-			while (!fElementQueue.isEmpty() && !monitor.isCanceled()) {
-				int blockSize= 10;
-				if (fElementQueue.size() < blockSize) {
-					blockSize= fElementQueue.size();
-				}
-				final List computedElements= new ArrayList();
-				for (int i= 0; i < blockSize; i++) {
-					Object element= fElementQueue.remove(0);
-					if (element == null) {
-						break;
-					}
-					if (element instanceof IStackFrame) {
-						synchronized (fCurrentStackFrameLock) {
-							fCurrentStackFrame= (IStackFrame) element;
-						}
-						// If a stack frame's thread has been resumed, make sure it is added to the collection
-						// of resumed threads. There's a (small) chance of a race condition here if
-						// the thread manages to resume after we check its suspended status and then
-						// suspend before we check the status for the next frame.
-						IThread thread= fCurrentStackFrame.getThread();
-						synchronized(resumedThreads) {
-							if (!thread.isTerminated() && !thread.isSuspended()) {
-								resumedThreads.add(thread);
-								// no need to compute label for "running" stack frame
-								continue;
-							}
-						}
-					}
-					fLabelProvider.textComputed(element, fJobPresentation.getText(element));
-					synchronized (fCurrentStackFrameLock) {
-						fCurrentStackFrame= null;
-					}
-					computedElements.add(element);
-				}
-				labelsComputed(computedElements.toArray());
-			}
-			monitor.done();
-			return Status.OK_STATUS;
-		}
-
-		/*
-		 * @see org.eclipse.core.runtime.jobs.ISchedulingRule#contains(org.eclipse.core.runtime.jobs.ISchedulingRule)
-		 */
-		public boolean contains(ISchedulingRule rule) {
-			return (rule instanceof LabelJob) && fJobPresentation == ((LabelJob)rule).fJobPresentation;
-		}
-
-		/*
-		 * @see org.eclipse.core.runtime.jobs.ISchedulingRule#isConflicting(org.eclipse.core.runtime.jobs.ISchedulingRule)
-		 */
-		public boolean isConflicting(ISchedulingRule rule) {
-			return (rule instanceof LabelJob) && fJobPresentation == ((LabelJob)rule).fJobPresentation;
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IDebugExceptionHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IDebugExceptionHandler.java
deleted file mode 100644
index 4bc7087..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IDebugExceptionHandler.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-
-import org.eclipse.debug.core.DebugException;
- 
-/**
- * A plugable  exception handler.
- */
-public interface IDebugExceptionHandler {
-	
-	/**
-	 * Handles the given debug exception.
-	 * 
-	 * @param e debug exception
-	 */
-	public abstract void handleException(DebugException e);
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IRemoteTreeViewerUpdateListener.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IRemoteTreeViewerUpdateListener.java
deleted file mode 100644
index 34d56f8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/IRemoteTreeViewerUpdateListener.java
+++ /dev/null
@@ -1,15 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-public interface IRemoteTreeViewerUpdateListener {
-    public void treeUpdated();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeContentManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeContentManager.java
deleted file mode 100644
index 7d251d1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeContentManager.java
+++ /dev/null
@@ -1,331 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.internal.progress.PendingUpdateAdapter;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.progress.DeferredTreeContentManager;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-import org.eclipse.ui.progress.IElementCollector;
-import org.eclipse.ui.progress.IWorkbenchSiteProgressService;
-import org.eclipse.ui.progress.WorkbenchJob;
-import org.osgi.framework.Bundle;
-/**
- * A remote content manager that merges content into a tree rather then replacing
- * its children with a "pending" node, and then the real children when they are available.
- * This avoids collapsing the viewer when a refresh is performed. This implementation is
- * currently tied to the <code>RemoteTreeViewer</code>.
- * 
- * @since 3.1
- */
-public class RemoteTreeContentManager extends DeferredTreeContentManager {
-
-    private RemoteTreeViewer fViewer;
-    private IWorkbenchSiteProgressService progressService;
-    
-    /**
-     * Job to fetch children
-     */
-    private Job fFetchJob = new FetchJob();
-    
-    /**
-     * Queue of parents to fetch children for, and
-     * associated element collectors and deferred adapters.
-     */
-    private List fElementQueue = new ArrayList();
-    private List fCollectors = new ArrayList();
-    private List fAdapaters = new ArrayList();
-    
-    /**
-     * Fetching children is done in a single background job.
-     * This makes fetching single threaded/serial per view.
-     */
-    class FetchJob extends Job {
-    	
-        public FetchJob() {
-            super(DebugUIViewsMessages.RemoteTreeContentManager_0);
-            setSystem(true);
-        }
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
-		 */
-		protected IStatus run(IProgressMonitor monitor) {
-			while (!fElementQueue.isEmpty() && !monitor.isCanceled()) {
-				Object element = null;
-				IElementCollector collector = null;
-				IDeferredWorkbenchAdapter adapter = null;
-				synchronized (fElementQueue) {
-					element = fElementQueue.remove(0);
-					collector = (IElementCollector) fCollectors.remove(0);
-					adapter = (IDeferredWorkbenchAdapter) fAdapaters.remove(0);
-				}
-				adapter.fetchDeferredChildren(element, collector, monitor);
-			}
-			if (monitor.isCanceled()) {
-				return Status.CANCEL_STATUS;
-			}
-			return Status.OK_STATUS;
-		}
-    	
-    }
-    
-    /**
-     * Element collector
-     */
-    public class Collector implements IElementCollector {            
-        // number of children added to the tree
-        int offset = 0;
-        Object fParent;
-        
-        public Collector(Object parent) {
-        	fParent = parent;
-        }
-        /*
-         *  (non-Javadoc)
-         * @see org.eclipse.jface.progress.IElementCollector#add(java.lang.Object, org.eclipse.core.runtime.IProgressMonitor)
-         */
-        public void add(Object element, IProgressMonitor monitor) {
-            add(new Object[] { element }, monitor);
-        }
-
-        /*
-         *  (non-Javadoc)
-         * @see org.eclipse.jface.progress.IElementCollector#add(java.lang.Object[], org.eclipse.core.runtime.IProgressMonitor)
-         */
-        public void add(Object[] elements, IProgressMonitor monitor) {
-            Object[] filtered = fViewer.filter(elements);
-            if (filtered.length > 0) {
-                replaceChildren(fParent, filtered, offset, monitor);
-                offset = offset + filtered.length;
-            }
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see org.eclipse.jface.progress.IElementCollector#done()
-         */
-        public void done() {
-            prune(fParent, offset);
-        }
-    }
-    
-    /**
-     * Contructs a new content manager.
-     * 
-     * @param provider content provider
-     * @param viewer viewer
-     * @param site part site
-     */
-    public RemoteTreeContentManager(ITreeContentProvider provider, RemoteTreeViewer viewer, IWorkbenchPartSite site) {
-        super(provider, viewer, site);
-        fViewer = viewer;
-        Object siteService = site.getAdapter(IWorkbenchSiteProgressService.class);
-        if (siteService != null) {
-        	progressService = (IWorkbenchSiteProgressService) siteService;
-        }
-    }
-    
-    /**
-     * Create the element collector for the receiver.
-     *@param parent
-     *            The parent object being filled in,
-     * @param placeholder
-     *            The adapter that will be used to indicate that results are
-     *            pending, possibly <code>null</code>
-     * @return IElementCollector
-     */
-    protected IElementCollector createElementCollector(Object parent, PendingUpdateAdapter placeholder) {
-        return new Collector(parent);
-    }
-    
-    /**
-     * Returns the child elements of the given element, or in the case of a
-     * deferred element, returns a placeholder. If a deferred element is used, a
-     * job is created to fetch the children in the background.
-     * 
-     * @param parent
-     *            The parent object.
-     * @return Object[] or <code>null</code> if parent is not an instance of
-     *         IDeferredWorkbenchAdapter.
-     */
-    public Object[] getChildren(final Object parent) {
-        IDeferredWorkbenchAdapter element = getAdapter(parent);
-        if (element == null)
-            return null;
-        Object[] currentChildren = fViewer.getCurrentChildren(parent);
-        PendingUpdateAdapter placeholder = null;
-        if (currentChildren == null || currentChildren.length == 0) {
-            placeholder = new PendingUpdateAdapter();
-        }
-        startFetchingDeferredChildren(parent, element, placeholder);
-        if (placeholder == null) {
-            return currentChildren;
-        }
-        return new Object[] { placeholder };
-    }
-    
-    /**
-     * Create a UIJob to replace the children of the parent in the tree viewer.
-     * 
-     * @param parent the parent for which children are to be replaced
-     * @param children the replacement children
-     * @param offset the offset at which to start replacing children
-     * @param monitor progress monitor
-     */
-    protected void replaceChildren(final Object parent, final Object[] children, final int offset, IProgressMonitor monitor) {
-    	if (monitor.isCanceled()) {
-    		return;
-    	}
-        WorkbenchJob updateJob = new WorkbenchJob(DebugUIViewsMessages.IncrementalDeferredTreeContentManager_0) { //$NON-NLS-1$
-            /*
-             * (non-Javadoc)
-             * 
-             * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-             */
-            public IStatus runInUIThread(IProgressMonitor updateMonitor) {
-                //Cancel the job if the tree viewer got closed
-                if (fViewer.getControl().isDisposed())
-                    return Status.CANCEL_STATUS;
-                fViewer.replace(parent, children, offset);
-                return Status.OK_STATUS;
-            }
-        };
-        updateJob.setSystem(true);
-        updateJob.setPriority(Job.INTERACTIVE);
-        updateJob.schedule();
-    } 
-    
-    /**
-     * Create a UIJob to prune the children of the parent in the tree viewer, starting
-     * at the given offset.
-     * 
-     * @param parent the parent for which children should be pruned
-     * @param offset the offset at which children should be pruned. All children at and after
-     *  this index will be removed from the tree. 
-     * @param monitor
-     */
-    protected void prune(final Object parent, final int offset) {
-        WorkbenchJob updateJob = new WorkbenchJob(DebugUIViewsMessages.IncrementalDeferredTreeContentManager_1) { //$NON-NLS-1$
-            /*
-             * (non-Javadoc)
-             * 
-             * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-             */
-            public IStatus runInUIThread(IProgressMonitor updateMonitor) {
-                //Cancel the job if the tree viewer got closed
-                if (fViewer.getControl().isDisposed())
-                    return Status.CANCEL_STATUS;
-                fViewer.prune(parent, offset);
-                return Status.OK_STATUS;
-            }
-        };
-        updateJob.setSystem(true);
-        updateJob.setPriority(Job.INTERACTIVE);
-        updateJob.schedule();
-    }     
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.DeferredTreeContentManager#runClearPlaceholderJob(org.eclipse.ui.internal.progress.PendingUpdateAdapter)
-	 */
-	protected void runClearPlaceholderJob(PendingUpdateAdapter placeholder) {
-	    // the placeholder is not used when there were already children in the tree (null)
-		if (placeholder != null) {
-			super.runClearPlaceholderJob(placeholder);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.DeferredTreeContentManager#getFetchJobName(java.lang.Object, org.eclipse.ui.progress.IDeferredWorkbenchAdapter)
-	 */
-	protected String getFetchJobName(Object parent, IDeferredWorkbenchAdapter adapter) {
-		return DebugUIViewsMessages.RemoteTreeContentManager_0; //$NON-NLS-1$
-	}
-	
-	
-    /**
-     * Returns the IDeferredWorkbenchAdapter for the element, or <code>null</code>.
-     * If a client has contributed an IWorkbenchAdapter for the element, it 
-     * should be used in place of the debug platform's IDeferredWorkbenchAdapter,
-     * in which case, <code>null</code> is returned.
-     * 
-     * @param element
-     * @return IDeferredWorkbenchAdapter or <code>null</code>
-     */
-    protected IDeferredWorkbenchAdapter getAdapter(Object element) {
-        if (element instanceof IDeferredWorkbenchAdapter)
-            return (IDeferredWorkbenchAdapter) element;
-        if (!(element instanceof IAdaptable))
-            return null;
-        IAdaptable adaptable = (IAdaptable) element;
-		IDeferredWorkbenchAdapter deferred = (IDeferredWorkbenchAdapter) adaptable.getAdapter(IDeferredWorkbenchAdapter.class);
-        if (deferred == null)
-            return null;
-        
-        DebugUIPlugin plugin = DebugUIPlugin.getDefault();
-    	Bundle bundle = plugin.getBundle(deferred.getClass());
-		Bundle debugBundle = plugin.getBundle();
-		if (!debugBundle.equals(bundle)) {
-    		// if client contributed, use it 
-    		return deferred;
-    	}
-    	// if the client provided an IWorkbenchAdapter, use it
-    	IWorkbenchAdapter nonDeferred = (IWorkbenchAdapter) adaptable.getAdapter(IWorkbenchAdapter.class);
-    	if (nonDeferred != null) {
-    		bundle = plugin.getBundle(nonDeferred.getClass());
-    		if (!debugBundle.equals(bundle)) {
-    			// by returning null, we'll revert to using the the object's workbench adapter
-    			// by pretending it has no deffered adapter
-    			return null;
-    		}
-    	}
-        return deferred;
-    }	
-	
-    protected void startFetchingDeferredChildren(final Object parent, final IDeferredWorkbenchAdapter adapter, PendingUpdateAdapter placeholder) {
-		final IElementCollector collector = createElementCollector(parent, placeholder);
-		synchronized (fElementQueue) {
-			if (!fElementQueue.contains(parent)) {
-				fElementQueue.add(parent);
-				fCollectors.add(collector);
-				fAdapaters.add(adapter);
-			}
-		}
-		if (progressService == null)
-			fFetchJob.schedule();
-		else
-			progressService.schedule(fFetchJob);
-	}
-    
-    /**
-     * Cancels any content this provider is currently fetching.
-     */
-    public void cancel() {
-    	synchronized (fElementQueue) {
-    		fFetchJob.cancel();
-    		fElementQueue.clear();
-    		fAdapaters.clear();
-    		fCollectors.clear();
-    	}
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeViewer.java
deleted file mode 100644
index 8f5cb60..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/RemoteTreeViewer.java
+++ /dev/null
@@ -1,471 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.jface.viewers.IFontProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Item;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.progress.UIJob;
-
-/**
- * A tree viewer that displays remote content. Content is retrieved in a background
- * job, and the viewer is updated incrementally on a refresh.
- * 
- * @since 3.1
- */
-public class RemoteTreeViewer extends TreeViewer {
-
-    private ExpansionJob fExpansionJob = null;
-    private SelectionJob fSelectionJob = null;
-    
-
-    class ExpansionJob extends UIJob {
-        
-        private Object element;
-        private List parents = new ArrayList(); // top down
-        
-        /**
-         * Constucts a job to expand the given element.
-         * 
-         * @param target the element to expand
-         */
-        public ExpansionJob() {
-            super(DebugUIViewsMessages.LaunchViewer_1); //$NON-NLS-1$
-            setPriority(Job.INTERACTIVE);
-            setSystem(true);
-        }
-
-        /* (non-Javadoc)
-         * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        public IStatus runInUIThread(IProgressMonitor monitor) {
-            if (getControl().isDisposed() || element == null) {
-                return Status.OK_STATUS;
-            }            
-            synchronized (RemoteTreeViewer.this) {
-                boolean allParentsExpanded = true;
-                Iterator iterator = parents.iterator();
-                while (iterator.hasNext() && !monitor.isCanceled()) {
-                    Object parent = iterator.next();
-                    Widget item = findItem(parent);
-                    if (item != null) {
-                        expandToLevel(parent, 1);
-                    } else {
-                        allParentsExpanded = false;
-                        break;
-                    }
-                }
-                if (allParentsExpanded) {
-                    Widget item = findItem(element); 
-                    if (item != null) {
-                        if (isExpandable(element)) {
-    	                    expandToLevel(element, 1);
-                        }
-                        element = null;
-                        parents.clear();
-                        return Status.OK_STATUS;
-                    }
-                }
-                return Status.OK_STATUS;
-            }
-        }
-        
-        public void validate(Object object) {
-            if (element != null) {   
-                if (element.equals(object) || parents.contains(object)) {
-                    cancel();
-                    element = null;
-                }
-            }
-        }
-
-        public void setDeferredExpansion(Object toExpand) {
-            element = toExpand;
-            parents.clear();
-            addAllParents(parents, element);
-        }
-        
-    }
-
-    class SelectionJob extends UIJob {
-        
-        private IStructuredSelection selection;
-        private Object first;
-        private List parents = new ArrayList(); // top down
-        
-        /**
-         * Constucts a job to select the given element.
-         * 
-         * @param target the element to select
-         */
-        public SelectionJob() {
-            super(DebugUIViewsMessages.LaunchViewer_0); //$NON-NLS-1$
-            setPriority(Job.INTERACTIVE);
-            setSystem(true);
-        }
-
-        /* (non-Javadoc)
-         * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        public IStatus runInUIThread(IProgressMonitor monitor) {
-            if (getControl().isDisposed() || selection == null) {
-                return Status.OK_STATUS;
-            }
-            synchronized (RemoteTreeViewer.this) {
-                boolean allParentsExpanded = true;
-                Iterator iterator = parents.iterator();
-                while (iterator.hasNext() && !monitor.isCanceled()) {
-                    Object parent = iterator.next();
-                    Widget item = findItem(parent);
-                    if (item != null) {
-                        expandToLevel(parent, 1);
-                    } else {
-                        allParentsExpanded = false;
-                        break;
-                    }
-                }
-                if (allParentsExpanded) {
-                    if (findItem(first) != null) {
-                        setSelection(selection, true);
-                        selection = null;
-                        first = null;
-                        parents.clear();
-                        return Status.OK_STATUS;
-                    }
-                }
-
-                return Status.OK_STATUS;
-            }
-        }
-        
-        public void setDeferredSelection(IStructuredSelection sel) {
-            selection = sel;
-            first = selection.getFirstElement();
-            parents.clear();
-            addAllParents(parents, first);
-        }
-        
-        public void validate(Object object) {
-            if (first != null) {
-                if (first.equals(object) || parents.contains(object)) {
-                    cancel();
-                    selection = null;
-                }
-            }
-        }
-    }
-    
-
-    /**
-     * Constructs a remote tree viewer parented by the given composite.
-     *   
-     * @param parent parent composite
-     */
-    public RemoteTreeViewer(Composite parent) {
-        super(parent);
-        addDisposeListener();
-        fExpansionJob = new ExpansionJob();
-        fSelectionJob = new SelectionJob();
-    }
-
-    /**
-     * Constructs a remote tree viewer parented by the given composite
-     * with the given style.
-     * 
-     * @param parent parent composite
-     * @param style style bits
-     */
-    public RemoteTreeViewer(Composite parent, int style) {
-        super(parent, style);
-        addDisposeListener();
-        fExpansionJob = new ExpansionJob();
-        fSelectionJob = new SelectionJob();
-    }
-
-    /**
-     * Constructs a remote tree viewer with the given tree.
-     * 
-     * @param tree tree widget
-     */
-    public RemoteTreeViewer(Tree tree) {
-        super(tree);
-        addDisposeListener();
-        fExpansionJob = new ExpansionJob();
-        fSelectionJob = new SelectionJob();
-    }
-    
-    private void addDisposeListener() {
-        getControl().addDisposeListener(new DisposeListener() {
-            public void widgetDisposed(DisposeEvent e) {
-                cancelJobs();
-            }
-        });
-    }
-    
-    protected void runDeferredUpdates() {
-        if (fExpansionJob != null) {
-            fExpansionJob.schedule();
-        }
-        if (fSelectionJob != null) {
-            fSelectionJob.schedule();
-        }        
-    }
-    
-    /**
-     * The given element is being removed from the tree. Cancel
-     * any deferred updates for the element.
-     * 
-     * @param element
-     */
-    protected void validateDeferredUpdates(Object element) {
-        if (element != null) {
-	        if (fExpansionJob != null) {
-	            fExpansionJob.validate(element);
-	        }
-	        if (fSelectionJob != null) {
-	            fSelectionJob.validate(element);
-	        }
-        }
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.AbstractTreeViewer#add(java.lang.Object, java.lang.Object)
-     */
-    public synchronized void add(Object parentElement, Object childElement) {
-        super.add(parentElement, childElement);
-        runDeferredUpdates();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.AbstractTreeViewer#add(java.lang.Object, java.lang.Object[])
-     */
-    public synchronized void add(Object parentElement, Object[] childElements) {
-        super.add(parentElement, childElements);
-        runDeferredUpdates();
-    }
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.AbstractTreeViewer#remove(java.lang.Object)
-	 */
-	public synchronized void remove(Object element) {
-	    validateDeferredUpdates(element);
-		super.remove(element);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.AbstractTreeViewer#remove(java.lang.Object[])
-	 */
-	public synchronized void remove(Object[] elements) {
-	    for (int i = 0; i < elements.length; i++) {
-            validateDeferredUpdates(elements[i]);
-        }
-		super.remove(elements);
-	}    
-
-    /**
-     * Cancels any deferred updates currently scheduled/running.
-     */
-    public void cancelJobs() {
-        cancel(fSelectionJob);
-        cancel(fExpansionJob);
-    }
-
-    public synchronized void deferExpansion(Object element) {
-        TreeItem treeItem = (TreeItem) findItem(element);
-        if (treeItem == null) {
-            fExpansionJob.setDeferredExpansion(element);
-            fExpansionJob.schedule();
-        } else {
-            if (!getExpanded(treeItem)) {
-                fExpansionJob.setDeferredExpansion(element);
-                fExpansionJob.schedule();
-            }
-        }
-    }
-    
-    public synchronized void deferSelection(IStructuredSelection selection) {
-        if (fSelectionJob == null) {
-            fSelectionJob = new SelectionJob();
-        }
-        
-        fSelectionJob.setDeferredSelection(selection);
-        fSelectionJob.schedule();        
-    }    
-    
-    public IStructuredSelection getDeferredSelection() {
-        if (fSelectionJob != null) {
-            return fSelectionJob.selection;
-        }
-        return null;
-    }
-
-    private void cancel(Job job) {
-        if (job != null) {
-            job.cancel();
-        }	    
-    }
-
-    private void addAllParents(List list, Object element) {
-        if (element instanceof IAdaptable) {
-            IAdaptable adaptable = (IAdaptable) element;
-            IWorkbenchAdapter adapter = (IWorkbenchAdapter) adaptable.getAdapter(IWorkbenchAdapter.class);
-            if (adapter != null) {
-                Object parent = adapter.getParent(element);
-                if (parent != null) {
-                    list.add(0, parent);
-                    if (!(parent instanceof ILaunch))
-                    addAllParents(list, parent);
-                }
-            }
-        }
-    }
-
-    public Object[] filter(Object[] elements) {
-        return super.filter(elements);
-    }
-    
-    public Object[] getCurrentChildren(Object parent) {
-        Widget widget = findItem(parent);
-        if (widget != null) {
-            Item[] items = getChildren(widget);
-            Object[] children = new Object[items.length];
-            for (int i = 0; i < children.length; i++) {
-                Object data = items[i].getData();
-                if (data == null) {
-                    return null;
-                }
-                children[i] = data;
-    		}
-            return children;
-        }
-        return null;
-    }
-
-    public synchronized void prune(final Object parent, final int offset) {
-        Widget widget = findItem(parent);
-        if (widget != null) {
-            final Item[] currentChildren = getChildren(widget);
-            if (offset < currentChildren.length) {
-                preservingSelection(new Runnable() {
-                    public void run() {
-                        for (int i = offset; i < currentChildren.length; i++) {
-                            if (currentChildren[i].getData() != null) {
-                                disassociate(currentChildren[i]);
-                            } 
-                            currentChildren[i].dispose();
-                        }
-                    }
-                });
-            }
-        }
-    }
-
-    public synchronized void replace(final Object parent, final Object[] children, final int offset) {
-        preservingSelection(new Runnable() {
-            public void run() {
-                Widget widget = findItem(parent);
-                if (widget == null) {
-                    add(parent, children);
-                    return;
-                }
-                Item[] currentChildren = getChildren(widget);
-                int pos = offset;
-                if (pos >= currentChildren.length) {
-                    // append
-                    add(parent, children);
-                } else {
-                    // replace
-                    for (int i = 0; i < children.length; i++) {
-                        Object child = children[i];
-                        if (pos < currentChildren.length) {
-                            // replace
-                            Item item = currentChildren[pos];
-                            Object data = item.getData();
-                            if (!child.equals(data)) {
-                                // no need to cancel pending updates here, the child may have shifted up/down
-                                internalRefresh(item, child, true, true);
-                            } else {
-                            	// If it's the same child, the label/content may still have changed
-                                doUpdateItem(item, child);
-                            	updatePlus(item, child);
-                            }
-                        } else {
-                            // add
-                        	int numLeft = children.length - i;
-                        	if (numLeft > 1) {
-                        		Object[] others = new Object[numLeft];
-                        		System.arraycopy(children, i, others, 0, numLeft);
-                        		add(parent, others);
-                        	} else {
-                        		add(parent, child);
-                        	}
-                        	return;
-                        }
-                        pos++;
-                    }
-                }
-                runDeferredUpdates();
-            }
-        });
-    }
-
-	protected void doUpdateItem(Item item, Object element) {
-		// update icon and label
-		ILabelProvider provider= (ILabelProvider) getLabelProvider();
-		String text= provider.getText(element);
-		if ("".equals(item.getText()) || !DebugViewInterimLabelProvider.PENDING_LABEL.equals(text)) { //$NON-NLS-1$
-			// If an element already has a label, don't set the label to
-			// the pending label. This avoids labels flashing when they're
-			// updated.
-			item.setText(text);
-		}
-		Image image = provider.getImage(element);
-		if (item.getImage() != image) {
-			item.setImage(image);
-		}
-		if (provider instanceof IColorProvider) {
-			IColorProvider cp = (IColorProvider) provider;
-			TreeItem treeItem = (TreeItem) item;
-			treeItem.setForeground(cp.getForeground(element));
-			treeItem.setBackground(cp.getBackground(element));
-		}
-		if (provider instanceof IFontProvider) {
-			IFontProvider fontProvider= (IFontProvider) provider;
-			TreeItem treeItem = (TreeItem) item;
-			treeItem.setFont(fontProvider.getFont(element));
-		}
-	    
-	}
-    
-}
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainer.java
deleted file mode 100644
index 6b852f3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainer.java
+++ /dev/null
@@ -1,199 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.debug.core.model.IBreakpoint;
-
-/**
- * A container of breakpoints, based on a category.
- */
-public class BreakpointContainer extends PlatformObject    {
-
-    private IAdaptable fCategory;
-    private IBreakpointOrganizer fOrganizer;
-    private List fBreakpoints;
-    private Map fCategoriesToContainers;
-    private IBreakpointOrganizer[] fNesting;
-    
-    /**
-     * Constructs a container of breakpoints for the given category,
-     * created by the given organizer.
-     * 
-     * @param category breakpoint category
-     * @param organizer breakpoint organizer
-     * @param nesting nested organizers or <code>null</code> if none
-     */
-    public BreakpointContainer(IAdaptable category, IBreakpointOrganizer organizer, IBreakpointOrganizer[] nesting) {
-        fCategory = category;
-        fOrganizer = organizer;
-        fBreakpoints = new ArrayList();
-        fNesting = nesting;
-        fCategoriesToContainers = new HashMap();
-        // seed with all nested categories
-        if (nesting != null && nesting.length > 0) {
-            IAdaptable[] emptyCategories = nesting[0].getCategories();
-            if (emptyCategories != null) {
-                for (int i = 0; i < emptyCategories.length; i++) {
-                    IAdaptable empty = emptyCategories[i];
-                    BreakpointContainer container = (BreakpointContainer) fCategoriesToContainers.get(empty);
-                    if (container == null) {
-                        container = new BreakpointContainer(empty, nesting[0], null);
-                        fCategoriesToContainers.put(empty, container);
-                    }
-                }
-            }
-        }
-    }
-    
-    /**
-     * Adds a breakpoint to this container and its nested containers.
-     * 
-     * @param breakpoint breakpoint to add  
-     */
-    public void addBreakpoint(IBreakpoint breakpoint) {
-        fBreakpoints.add(breakpoint);
-        if (fNesting != null && fNesting.length > 0) {
-            IBreakpointOrganizer organizer = fNesting[0];
-            IAdaptable[] categories = organizer.getCategories(breakpoint);
-            if (categories== null || categories.length == 0) {
-            	categories = OtherBreakpointCategory.getCategories(organizer);
-            }
-            for (int i = 0; i < categories.length; i++) {
-                IAdaptable category = categories[i];
-                BreakpointContainer container = (BreakpointContainer) fCategoriesToContainers.get(category);
-                if (container == null) {
-                    IBreakpointOrganizer[] nesting = null;
-                    if (fNesting.length > 1) {
-                        nesting = new IBreakpointOrganizer[fNesting.length - 1];
-                        System.arraycopy(fNesting, 1, nesting, 0, nesting.length);
-                    }
-                    container = new BreakpointContainer(category, organizer, nesting);
-                    fCategoriesToContainers.put(category, container);
-                }
-                container.addBreakpoint(breakpoint);
-            }
-        }
-    }
-    
-    /**
-     * Returns the breakpoints in this container
-     * 
-     * @return the breakpoints in this container
-     */
-    public IBreakpoint[] getBreakpoints() {
-        return (IBreakpoint[]) fBreakpoints.toArray(new IBreakpoint[fBreakpoints.size()]);
-    }
-    
-    /**
-     * Returns this container's category.
-     * 
-     * @return container category
-     */
-    public IAdaptable getCategory() {
-        return fCategory;
-    }
-    
-    /**
-     * Returns children as breakpoints or nested containers.
-     * 
-     * @return children as breakpoints or nested containers
-     */
-    public Object[] getChildren() {
-        if (fCategoriesToContainers.isEmpty()) {
-            return getBreakpoints();
-        }
-        return getContainers(); 
-    }
-    
-    /**
-     * Returns the containers nested in this container, possibly empty.
-     * 
-     * @return the containers nested in this container, possibly empty
-     */
-    public BreakpointContainer[] getContainers() {
-        Collection collection = fCategoriesToContainers.values();
-        return (BreakpointContainer[]) collection.toArray(new BreakpointContainer[collection.size()]);
-    }
-    
-    /**
-     * Returns this container's organizer.
-     * 
-     * @return this container's organizer
-     */
-    public IBreakpointOrganizer getOrganizer() {
-        return fOrganizer;
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    public boolean equals(Object obj) {
-        if (obj instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) obj;
-            return getCategory().equals(container.getCategory());
-        }
-        return super.equals(obj);
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#hashCode()
-     */
-    public int hashCode() {
-        return getCategory().hashCode();
-    }
-    
-    /**
-     * Returns whether this container contains the given breakpoint.
-     * 
-     * @param breakpoint
-     * @return whether this container contains the given breakpoint
-     */
-    public boolean contains(IBreakpoint breakpoint) {
-        return fBreakpoints.contains(breakpoint);
-    }
-    
-    /**
-     * Returns the leaf containers the given breakpoint is contained in, or <code>null</code>
-     * if none.
-     *  
-     * @param breakpoint
-     * @return leaf containers the given breakpoint is contained in, or <code>null</code>
-     * if none
-     */
-    public BreakpointContainer[] getContainers(IBreakpoint breakpoint) {
-        if (contains(breakpoint)) {
-            BreakpointContainer[] containers = getContainers();
-            if (containers.length == 0) {
-                return new BreakpointContainer[]{this};
-            }
-            List list = new ArrayList();
-            for (int i = 0; i < containers.length; i++) {
-                BreakpointContainer container = containers[i];
-                BreakpointContainer[] subcontainers = container.getContainers(breakpoint);
-                if (subcontainers != null) {
-                    for (int j = 0; j < subcontainers.length; j++) {
-                        list.add(subcontainers[j]);
-                    }
-                }
-            }
-            return (BreakpointContainer[]) list.toArray(new BreakpointContainer[list.size()]);
-        }
-        return null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainerWorkbenchAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainerWorkbenchAdapter.java
deleted file mode 100644
index 9026b3d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointContainerWorkbenchAdapter.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.model.IWorkbenchAdapter2;
-
-/**
- * BreakpointContainerWorkbenchAdapter
- */
-public class BreakpointContainerWorkbenchAdapter implements IWorkbenchAdapter, IWorkbenchAdapter2{
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-     */
-    public Object[] getChildren(Object o) {
-        // not used
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-     */
-    public ImageDescriptor getImageDescriptor(Object object) {
-        if (object instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) object;
-            IAdaptable category = container.getCategory();
-            IWorkbenchAdapter adapter = (IWorkbenchAdapter) category.getAdapter(IWorkbenchAdapter.class);
-            if (adapter != null) {
-                return adapter.getImageDescriptor(category);
-            }
-            return container.getOrganizer().getImageDescriptor();
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-     */
-    public String getLabel(Object object) {
-        if (object instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) object;
-            IAdaptable category = container.getCategory();
-            IWorkbenchAdapter adapter = (IWorkbenchAdapter) category.getAdapter(IWorkbenchAdapter.class);
-            if (adapter != null) {
-                return adapter.getLabel(category);
-            }
-            return container.getOrganizer().getLabel();
-        }
-        return ""; //$NON-NLS-1$
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-     */
-    public Object getParent(Object o) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getForeground(java.lang.Object)
-     */
-    public RGB getForeground(Object object) {
-        if (object instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) object;
-            IAdaptable category = container.getCategory();
-            IWorkbenchAdapter2 adapter = (IWorkbenchAdapter2) category.getAdapter(IWorkbenchAdapter2.class);
-            if (adapter != null) {
-                return adapter.getForeground(category);
-            }
-        }        
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getBackground(java.lang.Object)
-     */
-    public RGB getBackground(Object object) {
-        if (object instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) object;
-            IAdaptable category = container.getCategory();
-            IWorkbenchAdapter2 adapter = (IWorkbenchAdapter2) category.getAdapter(IWorkbenchAdapter2.class);
-            if (adapter != null) {
-                return adapter.getBackground(category);
-            }
-        }        
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getFont(java.lang.Object)
-     */
-    public FontData getFont(Object object) {
-        if (object instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) object;
-            IAdaptable category = container.getCategory();
-            IWorkbenchAdapter2 adapter = (IWorkbenchAdapter2) category.getAdapter(IWorkbenchAdapter2.class);
-            if (adapter != null) {
-                return adapter.getFont(category);
-            }
-        }        
-        return null;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointFactory.java
deleted file mode 100644
index 221587f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointFactory.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.ui.IElementFactory;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Factory to restore breakpoints from mementos for breakpoint working sets.
- */
-public class BreakpointFactory implements IElementFactory {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IElementFactory#createElement(org.eclipse.ui.IMemento)
-     */
-    public IAdaptable createElement(IMemento memento) {
-        String longString = memento.getString(BreakpointPersistableElementAdapter.TAG_MARKER_ID);
-        String factoryId = memento.getString(BreakpointPersistableElementAdapter.TAG_RESOURCE_FACTORY_ID);
-        if (factoryId != null && longString != null) {
-            IElementFactory elementFactory = PlatformUI.getWorkbench().getElementFactory(factoryId);
-            if (elementFactory != null) {
-                IAdaptable adaptable = elementFactory.createElement(memento);
-                if (adaptable instanceof IResource) {
-                    IResource resource = (IResource) adaptable;
-                    try {
-                        long id = Long.parseLong(longString);
-                        IMarker marker = resource.findMarker(id);
-                        if (marker != null) {
-                            return DebugPlugin.getDefault().getBreakpointManager().getBreakpoint(marker);
-                        }
-                    } catch (NumberFormatException e) {
-                    } catch (CoreException e) {
-                    }
-                }
-            }
-        }
-        return null;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerExtension.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerExtension.java
deleted file mode 100644
index e3f4d0b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerExtension.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.ui.IBreakpointOrganizerDelegate;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.osgi.framework.Bundle;
-
-/**
- * A contributed breakpoint organizer.
- */
-public class BreakpointOrganizerExtension implements IBreakpointOrganizer {
-	
-	private IConfigurationElement fElement;
-	private IBreakpointOrganizerDelegate fDelegate;
-	private ImageDescriptor fDescriptor;
-	
-	// attributes
-	public static final String ATTR_LABEL = "label"; //$NON-NLS-1$
-	public static final String ATTR_CLASS = "class"; //$NON-NLS-1$
-	public static final String ATTR_ID = "id"; //$NON-NLS-1$
-	public static final String ATTR_ICON = "icon"; //$NON-NLS-1$
-    public static final String ATTR_OTHERS_LABEL = "othersLabel"; //$NON-NLS-1$
-	
-	public BreakpointOrganizerExtension(IConfigurationElement element) {
-		fElement = element;
-	}
-	
-	/**
-	 * Returns the image descriptor for this organizer.
-	 * 
-	 * @return image descriptor
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		if (fDescriptor == null) {
-			String iconPath = fElement.getAttribute(ATTR_ICON);
-			// iconPath may be null because icon is optional
-			if (iconPath != null) {
-				try {
-					Bundle bundle = Platform.getBundle(fElement.getNamespace());
-					URL iconURL = bundle.getEntry("/"); //$NON-NLS-1$
-					iconURL = new URL(iconURL, iconPath);
-					fDescriptor = ImageDescriptor.createFromURL(iconURL);
-				} catch (MalformedURLException e) {
-					DebugUIPlugin.log(e);
-				}
-			}
-		}
-		return fDescriptor;		
-	}
-	
-	/**
-	 * Returns this organizer's label.
-	 * 
-	 * @return this organizer's label
-	 */
-	public String getLabel() {
-		return fElement.getAttribute(ATTR_LABEL);
-	}
-    
-    /**
-     * Returns this organizer's identifier.
-     * 
-     * @return this organizer's identifier
-     */
-    public String getIdentifier() {
-        return fElement.getAttribute(ATTR_ID);
-    }
-	
-	/**
-	 * Returns this organizer's delegate, instantiating it if required.
-	 * 
-	 * @return this organizer's delegate
-	 */
-	protected IBreakpointOrganizerDelegate getOrganizer() {
-		if (fDelegate == null) {
-			try {
-				fDelegate = (IBreakpointOrganizerDelegate) fElement.createExecutableExtension(ATTR_CLASS);
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-		return fDelegate;
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories(org.eclipse.debug.core.model.IBreakpoint)
-     */
-    public IAdaptable[] getCategories(IBreakpoint breakpoint) {
-        return getOrganizer().getCategories(breakpoint);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-     */
-    public void addPropertyChangeListener(IPropertyChangeListener listener) {
-        getOrganizer().addPropertyChangeListener(listener);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-     */
-    public void removePropertyChangeListener(IPropertyChangeListener listener) {
-        getOrganizer().removePropertyChangeListener(listener);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#addBreakpoint(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public void addBreakpoint(IBreakpoint breakpoint, IAdaptable category) {
-        getOrganizer().addBreakpoint(breakpoint, category);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#removeBreakpoint(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public void removeBreakpoint(IBreakpoint breakpoint, IAdaptable category) {
-        getOrganizer().removeBreakpoint(breakpoint, category);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#canAdd(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public boolean canAdd(IBreakpoint breakpoint, IAdaptable category) {
-        return getOrganizer().canAdd(breakpoint, category);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#canRemove(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public boolean canRemove(IBreakpoint breakpoint, IAdaptable category) {
-        return getOrganizer().canRemove(breakpoint, category);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#dispose()
-     */
-    public void dispose() {
-        getOrganizer().dispose();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.breakpoints.IBreakpointOrganizer#getOthersLabel()
-     */
-    public String getOthersLabel() {
-        String attribute = fElement.getAttribute(ATTR_OTHERS_LABEL);
-        if (attribute == null) {
-            return DebugUIViewsMessages.OtherBreakpointOrganizer_0; //$NON-NLS-1$
-        }
-        return attribute;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories()
-     */
-    public IAdaptable[] getCategories() {
-        return getOrganizer().getCategories();
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerManager.java
deleted file mode 100644
index 617ff70..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointOrganizerManager.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-
-/**
- * Manager which provides access to the breakpoint organizers
- * contributed via the org.eclipse.debug.ui.breakpointOrganizers
- * extension point.
- * <p>
- * Manages the default breakpoint working set and places newly
- * create breakpoints in to that set.
- * </p>
- * @since 3.1
- */
-public class BreakpointOrganizerManager {
-	
-	private static BreakpointOrganizerManager fgManager;
-	
-	// map for lookup by id
-    private Map fOrganizers = new HashMap();
-    // cached sorted list by label
-    private List fSorted = null;
-
-	/**
-	 * Returns the singleton instance of the breakpoint container
-	 * factory manager.
-	 */
-	public static BreakpointOrganizerManager getDefault() {
-		if (fgManager == null) {
-			fgManager= new BreakpointOrganizerManager();
-		}
-		return fgManager;
-	}
-	
-	/**
-	 * Creates and initializes a new breakpoint container factory.
-	 */
-	private BreakpointOrganizerManager() {
-        loadOrganizers();
-        // force the working set organizers to initialize their listeners
-        start("org.eclipse.debug.ui.workingSetOrganizer"); //$NON-NLS-1$
-        start("org.eclipse.debug.ui.breakpointWorkingSetOrganizer"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Forces instantiation of orgranizer delegate.
-	 * 
-	 * @param organizerId organizer to start
-	 */
-	private void start(String organizerId) {
-        IBreakpointOrganizer organizer = getOrganizer(organizerId);
-        IPropertyChangeListener listener = new IPropertyChangeListener() {
-            public void propertyChange(PropertyChangeEvent event) {
-            }
-        };
-        organizer.addPropertyChangeListener(listener);
-        organizer.removePropertyChangeListener(listener);		
-	}
-    
-    /**
-     * Loads all contributed breakpoint organizers.
-     */
-    private void loadOrganizers() {
-        IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_BREAKPOINT_ORGANIZERS);
-        IConfigurationElement[] configurationElements = extensionPoint.getConfigurationElements();
-        for (int i = 0; i < configurationElements.length; i++) {
-            IConfigurationElement element= configurationElements[i];
-            IBreakpointOrganizer organizer = new BreakpointOrganizerExtension(element);
-            if (validateOrganizer(organizer)) {
-                fOrganizers.put(organizer.getIdentifier(), organizer);
-            }
-        }
-    }    
-	
-    /**
-     * Validates the given organizer. Checks that certain required attributes
-     * are available.
-     * @param extension the organizer to validate
-     * @return whether the given organizer is valid
-     */
-    protected static boolean validateOrganizer(IBreakpointOrganizer organizer) {
-        String id = organizer.getIdentifier();
-        String label = organizer.getLabel();
-        return id != null && id.length() > 0 && label != null && label.length() > 0;
-    }    
-	
-    /**
-     * Returns all contributed breakpoint organizers.
-     * 
-     * @return all contributed breakpoint organizers
-     */
-    public IBreakpointOrganizer[] getOrganizers() {
-    	if (fSorted == null) {
-	        Collection collection = fOrganizers.values();
-	        fSorted = new ArrayList();
-	        fSorted.addAll(collection);
-	        Collections.sort(fSorted, new Comparator() {
-				public int compare(Object o1, Object o2) {
-					IBreakpointOrganizer b1 = (IBreakpointOrganizer)o1;
-					IBreakpointOrganizer b2 = (IBreakpointOrganizer)o2;
-					return b1.getLabel().compareTo(b2.getLabel());
-				}
-
-				public boolean equals(Object obj) {
-					return this == obj;
-				}
-			});
-    	}
-    	return (IBreakpointOrganizer[]) fSorted.toArray(new IBreakpointOrganizer[fSorted.size()]);
-    }
-    
-    /**
-     * Returns the specified breakpoint organizer or <code>null</code>
-     * @param id organizer identifier
-     * @return breakpoint organizer or <code>null</code>
-     */
-    public IBreakpointOrganizer getOrganizer(String id) {
-        return (IBreakpointOrganizer) fOrganizers.get(id);
-    }
-    
-    /**
-     * Shuts down the organizer manager, disposing organizers.
-     */
-    public void shutdown() {
-        IBreakpointOrganizer[] organizers = getOrganizers();
-        for (int i = 0; i < organizers.length; i++) {
-            IBreakpointOrganizer organizer = organizers[i];
-            organizer.dispose();
-        }
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointPersistableElementAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointPersistableElementAdapter.java
deleted file mode 100644
index d0c8361..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointPersistableElementAdapter.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IPersistableElement;
-
-/**
- * Adapter to save and restore breakpoints for a working set.
- */
-public class BreakpointPersistableElementAdapter implements IPersistableElement {
-    
-    private IBreakpoint fBreakpoint;
-    
-    public static final String TAG_MARKER_ID = "TAG_MARKER_ID"; //$NON-NLS-1$
-    public static final String TAG_RESOURCE_FACTORY_ID = "TAG_RESOURCE_FACTORY_ID"; //$NON-NLS-1$
-    
-    /**
-     * Constructs a new persitable element adapter for the given breakpoint.
-     * 
-     * @param breakpoint
-     */
-    public BreakpointPersistableElementAdapter(IBreakpoint breakpoint) {
-        fBreakpoint = breakpoint;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPersistableElement#getFactoryId()
-     */
-    public String getFactoryId() {
-        return "org.eclipse.debug.ui.elementFactory.breakpoints"; //$NON-NLS-1$
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPersistableElement#saveState(org.eclipse.ui.IMemento)
-     */
-    public void saveState(IMemento memento) {
-        IMarker marker = fBreakpoint.getMarker();
-        if (marker != null) {
-            IResource resource = marker.getResource();
-            IPersistableElement pe = (IPersistableElement) resource.getAdapter(IPersistableElement.class);
-            if (pe != null) {
-                long id = marker.getId();
-                String longString = Long.toString(id);
-                memento.putString(TAG_MARKER_ID, longString);
-                memento.putString(TAG_RESOURCE_FACTORY_ID, pe.getFactoryId());
-                pe.saveState(memento);
-            }            
-        }
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointSetOrganizer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointSetOrganizer.java
deleted file mode 100644
index e076e61..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointSetOrganizer.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.AbstractBreakpointOrganizerDelegate;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.IWorkingSetManager;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Breakpoint organizers for breakpoint working sets.
- * 
- * @since 3.1
- */
-public class BreakpointSetOrganizer extends AbstractBreakpointOrganizerDelegate implements IPropertyChangeListener, IBreakpointsListener {
-    
-    IWorkingSetManager fWorkingSetManager = PlatformUI.getWorkbench().getWorkingSetManager();
-    /**
-     * Constructs a working set breakpoint organizer. Listens for changes in
-     * working sets and fires property change notification.
-     */
-    public BreakpointSetOrganizer() {
-        fWorkingSetManager.addPropertyChangeListener(this);
-        DebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this);
-        DebugPlugin.getDefault().getBreakpointManager().addBreakpointListener(this);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories(org.eclipse.debug.core.model.IBreakpoint)
-     */
-    public IAdaptable[] getCategories(IBreakpoint breakpoint) {
-    	List result = new ArrayList();
-        IWorkingSet[] workingSets = fWorkingSetManager.getWorkingSets();
-        for (int i = 0; i < workingSets.length; i++) {
-            IWorkingSet set = workingSets[i];
-            if (IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(set.getId())) {
-	            IAdaptable[] elements = set.getElements();
-	            for (int j = 0; j < elements.length; j++) {
-	                IAdaptable adaptable = elements[j];
-	                if (adaptable.equals(breakpoint)) {
-	                	result.add(new WorkingSetCategory(set));
-	                	break;
-	                }
-	            }
-            }
-        }
-        return (IAdaptable[]) result.toArray(new IAdaptable[result.size()]);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#dispose()
-     */
-    public void dispose() {
-        fWorkingSetManager.removePropertyChangeListener(this);
-        fWorkingSetManager = null;
-        DebugPlugin.getDefault().getBreakpointManager().removeBreakpointListener(this);
-        DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-        super.dispose();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-     */
-    public void propertyChange(PropertyChangeEvent event) {
-        IWorkingSet set = null;
-        if (event.getNewValue() instanceof IWorkingSet) {
-            set = (IWorkingSet) event.getNewValue();
-        } else if (event.getOldValue() instanceof IWorkingSet) {
-            set = (IWorkingSet) event.getOldValue();
-        }
-        if (set != null && IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(set.getId())) {
-            fireCategoryChanged(new WorkingSetCategory(set));
-        }
-        if (event.getProperty().equals(IInternalDebugUIConstants.MEMENTO_BREAKPOINT_WORKING_SET_NAME)) {
-            IWorkingSet defaultWorkingSet = getDefaultWorkingSet();
-            if (defaultWorkingSet != null) {
-                fireCategoryChanged(new WorkingSetCategory(defaultWorkingSet));
-            } else {
-                fireCategoryChanged(null);
-            }
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsAdded(org.eclipse.debug.core.model.IBreakpoint[])
-     */
-    public void breakpointsAdded(IBreakpoint[] breakpoints) {
-        IWorkingSet set = getDefaultWorkingSet();
-        if (set != null) {
-            IAdaptable[] elements = set.getElements();
-            IAdaptable[] newElements = new IAdaptable[elements.length + breakpoints.length];
-            System.arraycopy(elements, 0, newElements, 0, elements.length);
-            System.arraycopy(breakpoints, 0, newElements, elements.length, breakpoints.length);
-            set.setElements(newElements);
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsRemoved(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
-     */
-    public void breakpointsRemoved(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-        IWorkingSet[] workingSets = fWorkingSetManager.getWorkingSets();
-        for (int i = 0; i < workingSets.length; i++) {
-            IWorkingSet set = workingSets[i];
-            if (IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(set.getId())) { //$NON-NLS-1$
-                clean(set);
-            }
-        }
-    }
-    
-    /**
-     * Removes deleted breakpoints from the given working set.
-     * 
-     * @param workingSet breakpoint working set
-     */
-    private void clean(IWorkingSet workingSet) {
-        IAdaptable[] elements = workingSet.getElements();
-        IBreakpointManager manager = DebugPlugin.getDefault().getBreakpointManager();
-        boolean update = false;
-        for (int i = 0; i < elements.length; i++) {
-            IAdaptable adaptable = elements[i];
-            if (adaptable instanceof IBreakpoint) {
-                IBreakpoint breakpoint = (IBreakpoint) adaptable;
-                if (!manager.isRegistered(breakpoint)) {
-                    update = true;
-                    elements[i] = null;
-                }
-            }
-        }
-        if (update) {
-            List newElements = new ArrayList(elements.length);
-            for (int i = 0; i < elements.length; i++) {
-                IAdaptable adaptable = elements[i];
-                if (adaptable != null) {
-                    newElements.add(adaptable);
-                }
-            }
-            workingSet.setElements((IAdaptable[]) newElements.toArray(new IAdaptable[newElements.size()]));
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.IBreakpointsListener#breakpointsChanged(org.eclipse.debug.core.model.IBreakpoint[], org.eclipse.core.resources.IMarkerDelta[])
-     */
-    public void breakpointsChanged(IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-    }
-    
-    /**
-     * Returns the active default breakpoint working set, or <code>null</code>
-     * if none.
-     * 
-     * @return the active default breakpoint working set, or <code>null</code>
-     */
-    public static IWorkingSet getDefaultWorkingSet() {
-        IPreferenceStore preferenceStore = DebugUIPlugin.getDefault().getPreferenceStore();
-        String name = preferenceStore.getString(IInternalDebugUIConstants.MEMENTO_BREAKPOINT_WORKING_SET_NAME);
-        if (name != null) {
-            return PlatformUI.getWorkbench().getWorkingSetManager().getWorkingSet(name);
-        }
-        return null;
-    }
-    
-    /**
-     * Sets the active default breakpoint working set, or <code>null</code>
-     * if none.
-     * 
-     * @param set default working set or <code>null</code>
-     */
-    public static void setDefaultWorkingSet(IWorkingSet set) {
-        String name = ""; //$NON-NLS-1$
-        if (set != null) {
-            // only consider breakpoint working sets
-            if (IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(set.getId())) { //$NON-NLS-1$
-                name = set.getName();
-            }
-        }
-        DebugUIPlugin.getDefault().getPluginPreferences().setValue(IInternalDebugUIConstants.MEMENTO_BREAKPOINT_WORKING_SET_NAME, name);
-    }    
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#canRemove(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public boolean canRemove(IBreakpoint breakpoint, IAdaptable category) {
-        if (category instanceof WorkingSetCategory) {
-            WorkingSetCategory wsc = (WorkingSetCategory) category;
-            return IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(wsc.getWorkingSet().getId());
-        }
-        return super.canRemove(breakpoint, category);
-    }
-    
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#canAdd(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public boolean canAdd(IBreakpoint breakpoint, IAdaptable category) {
-        if (category instanceof WorkingSetCategory) {
-            WorkingSetCategory wsc = (WorkingSetCategory) category;
-            return IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(wsc.getWorkingSet().getId());
-        }
-        return super.canAdd(breakpoint, category);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#addBreakpoint(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public void addBreakpoint(IBreakpoint breakpoint, IAdaptable category) {
-        if (category instanceof WorkingSetCategory) {
-            IWorkingSet workingSet = ((WorkingSetCategory) category).getWorkingSet();
-            IAdaptable[] elements = workingSet.getElements();
-            IAdaptable[] newElements = new IAdaptable[elements.length + 1];
-            System.arraycopy(elements, 0, newElements, 0, elements.length);
-            newElements[elements.length] = breakpoint;
-            workingSet.setElements(newElements);
-        }
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#removeBreakpoint(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public void removeBreakpoint(IBreakpoint breakpoint, IAdaptable category) {
-        if (category instanceof WorkingSetCategory) {
-            IWorkingSet workingSet = ((WorkingSetCategory) category).getWorkingSet();
-            IAdaptable[] elements = workingSet.getElements();
-            List list = new ArrayList();
-            for (int i = 0; i < elements.length; i++) {
-                IAdaptable adaptable = elements[i];
-                if (!adaptable.equals(breakpoint)) {
-                    list.add(adaptable);
-                }
-            }
-            workingSet.setElements((IAdaptable[]) list.toArray(new IAdaptable[list.size()]));
-        }
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories()
-     */
-    public IAdaptable[] getCategories() {
-        IWorkingSet[] workingSets = fWorkingSetManager.getWorkingSets();
-        List all = new ArrayList();
-        for (int i = 0; i < workingSets.length; i++) {
-            IWorkingSet set = workingSets[i];
-            if (IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(set.getId())) {
-                all.add(new WorkingSetCategory(set));
-            }
-        }
-        return (IAdaptable[]) all.toArray(new IAdaptable[all.size()]);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointTypeOrganizer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointTypeOrganizer.java
deleted file mode 100644
index cc39f54..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointTypeOrganizer.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.ui.AbstractBreakpointOrganizerDelegate;
-import org.eclipse.debug.ui.BreakpointTypeCategory;
-import org.eclipse.debug.ui.IBreakpointTypeCategory;
-
-/**
- * Breakpoint organizers for breakpoint types.
- * 
- * @since 3.1
- */
-public class BreakpointTypeOrganizer extends AbstractBreakpointOrganizerDelegate {
-	
-	private Map fTypes = new HashMap();
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories(org.eclipse.debug.core.model.IBreakpoint)
-     */
-    public IAdaptable[] getCategories(IBreakpoint breakpoint) {
-        IBreakpointTypeCategory category = (IBreakpointTypeCategory) breakpoint.getAdapter(IBreakpointTypeCategory.class);
-        if (category != null) {
-            return new IAdaptable[]{category};
-        }
-    	String name = DebugPlugin.getDefault().getBreakpointManager().getTypeName(breakpoint);
-    	if (name != null) {
-    		IAdaptable[] categories = (IAdaptable[]) fTypes.get(name);
-    		if (category == null) {
-    			categories = new IAdaptable[]{new BreakpointTypeCategory(name)};
-    			fTypes.put(name, category);
-    		}
-    		return categories;
-    	}
-    	return null;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#dispose()
-     */
-    public void dispose() {
-    	fTypes.clear();
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointWorkingSetPage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointWorkingSetPage.java
deleted file mode 100644
index 80b50c8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointWorkingSetPage.java
+++ /dev/null
@@ -1,328 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.wizard.WizardPage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.IWorkingSetManager;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.IWorkingSetPage;
-
-/**
- * The Breakpoint working set page allows the user to create
- * and edit a Breakpoint working set.
- * 
- * @since 3.1
- */
-public class BreakpointWorkingSetPage extends WizardPage implements IWorkingSetPage {
-
-	final private static String PAGE_TITLE= DebugUIViewsMessages.BreakpointWorkingSetPage_0; //$NON-NLS-1$
-	final private static String PAGE_ID= "breakpointWorkingSetPage"; //$NON-NLS-1$
-	
-	private Text fWorkingSetName;
-	private CheckboxTreeViewer fTree;
-	private ITreeContentProvider fTreeContentProvider;
-	
-	class ContentProvider implements ITreeContentProvider {
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
-		 */
-		public Object[] getChildren(Object parentElement) {
-			return DebugPlugin.getDefault().getBreakpointManager().getBreakpoints();
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
-		 */
-		public Object getParent(Object element) {
-			return null;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-		 */
-		public boolean hasChildren(Object element) {
-			return element instanceof IBreakpointManager;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			return getChildren(inputElement);
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-		
-	}
-	
-	private boolean fFirstCheck;
-	private IWorkingSet fWorkingSet;
-
-	/**
-	 * Default constructor.
-	 */
-	public BreakpointWorkingSetPage() {
-		super(PAGE_ID, PAGE_TITLE, DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_WIZBAN_DEBUG));
-		setDescription(DebugUIViewsMessages.BreakpointWorkingSetPage_1); //$NON-NLS-1$
-		fFirstCheck= true;
-	}
-
-	/*
-	 * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		initializeDialogUnits(parent);
-		
-		Composite composite= new Composite(parent, SWT.NONE);
-		composite.setLayout(new GridLayout());
-		composite.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-		setControl(composite);
-
-		Label label= new Label(composite, SWT.WRAP);
-		label.setText(DebugUIViewsMessages.BreakpointWorkingSetPage_2); //$NON-NLS-1$
-		GridData gd= new GridData(GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_CENTER);
-		label.setLayoutData(gd);
-
-		fWorkingSetName= new Text(composite, SWT.SINGLE | SWT.BORDER);
-		fWorkingSetName.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL));
-		fWorkingSetName.addModifyListener(
-			new ModifyListener() {
-				public void modifyText(ModifyEvent e) {
-					validateInput();
-				}
-			}
-		);
-		fWorkingSetName.setFocus();
-		
-		label= new Label(composite, SWT.WRAP);
-		label.setText(DebugUIViewsMessages.BreakpointWorkingSetPage_3); //$NON-NLS-1$
-		gd= new GridData(GridData.GRAB_HORIZONTAL | GridData.HORIZONTAL_ALIGN_FILL | GridData.VERTICAL_ALIGN_CENTER);
-		label.setLayoutData(gd);
-
-		fTree= new CheckboxTreeViewer(composite, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
-		gd= new GridData(GridData.FILL_BOTH | GridData.GRAB_VERTICAL);
-		gd.heightHint= convertHeightInCharsToPixels(15);
-		fTree.getControl().setLayoutData(gd);
-		
-		fTreeContentProvider= new ContentProvider();
-		fTree.setContentProvider(fTreeContentProvider);
-				
-		fTree.setLabelProvider(DebugUITools.newDebugModelPresentation());
-		fTree.setSorter(new BreakpointsSorter());
-		fTree.setUseHashlookup(true);
-		fTree.setInput(DebugPlugin.getDefault().getBreakpointManager());
-		fTree.addCheckStateListener(new ICheckStateListener() {
-			public void checkStateChanged(CheckStateChangedEvent event) {
-				validateInput();
-			}
-		});
-
-		// Add select / deselect all buttons for bug 46669
-		Composite buttonComposite = new Composite(composite, SWT.NONE);
-		buttonComposite.setLayout(new GridLayout(2, false));
-		buttonComposite.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL));
-		
-		Button selectAllButton = SWTUtil.createPushButton(buttonComposite, DebugUIViewsMessages.BreakpointWorkingSetPage_selectAll_label, null);
-		selectAllButton.setToolTipText(DebugUIViewsMessages.BreakpointWorkingSetPage_selectAll_toolTip);
-		selectAllButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent selectionEvent) {
-				fTree.setCheckedElements(fTreeContentProvider.getElements(fTree.getInput()));
-				validateInput();
-			}
-		});
-		
-		Button deselectAllButton = SWTUtil.createPushButton(buttonComposite, DebugUIViewsMessages.BreakpointWorkingSetPage_deselectAll_label, null);
-		deselectAllButton.setToolTipText(DebugUIViewsMessages.BreakpointWorkingSetPage_deselectAll_toolTip);
-		deselectAllButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent selectionEvent) {
-				fTree.setCheckedElements(new Object[0]);
-				validateInput();
-			}
-		});
-		
-		if (fWorkingSet != null)
-			fWorkingSetName.setText(fWorkingSet.getName());
-		initializeCheckedState();
-		validateInput();
-
-		Dialog.applyDialogFont(composite);
-	}
-
-	/*
-	 * Implements method from IWorkingSetPage
-	 */
-	public IWorkingSet getSelection() {
-		return fWorkingSet;
-	}
-
-	/*
-	 * Implements method from IWorkingSetPage
-	 */
-	public void setSelection(IWorkingSet workingSet) {
-		Assert.isNotNull(workingSet, "Working set must not be null"); //$NON-NLS-1$
-		fWorkingSet= workingSet;
-		if (getContainer() != null && getShell() != null && fWorkingSetName != null) {
-			fFirstCheck= false;
-			fWorkingSetName.setText(fWorkingSet.getName());
-			initializeCheckedState();
-			validateInput();
-		}
-	}
-
-	/*
-	 * Implements method from IWorkingSetPage
-	 */
-	public void finish() {
-		String workingSetName= fWorkingSetName.getText();
-		ArrayList elements= new ArrayList(10);
-		findCheckedElements(elements, fTree.getInput());
-		if (fWorkingSet == null) {
-			IWorkingSetManager workingSetManager= PlatformUI.getWorkbench().getWorkingSetManager();
-			fWorkingSet= workingSetManager.createWorkingSet(workingSetName, (IAdaptable[])elements.toArray(new IAdaptable[elements.size()]));
-		} else {
-			fWorkingSet.setName(workingSetName);
-			fWorkingSet.setElements((IAdaptable[]) elements.toArray(new IAdaptable[elements.size()]));
-		}
-	}
-
-	private void validateInput() {
-		String errorMessage= null; //$NON-NLS-1$
-		String newText= fWorkingSetName.getText();
-
-		if (newText.equals(newText.trim()) == false)
-			errorMessage = DebugUIViewsMessages.BreakpointWorkingSetPage_4; //$NON-NLS-1$
-		if (newText.equals("")) { //$NON-NLS-1$
-			if (fFirstCheck) {
-				setPageComplete(false);
-				fFirstCheck= false;
-				return;
-			}		
-			errorMessage= DebugUIViewsMessages.BreakpointWorkingSetPage_5; //$NON-NLS-1$
-		}
-
-		fFirstCheck= false;
-
-		if (errorMessage == null && (fWorkingSet == null || newText.equals(fWorkingSet.getName()) == false)) {
-			IWorkingSet[] workingSets= PlatformUI.getWorkbench().getWorkingSetManager().getWorkingSets();
-			for (int i= 0; i < workingSets.length; i++) {
-				if (newText.equals(workingSets[i].getName())) {
-					errorMessage= DebugUIViewsMessages.BreakpointWorkingSetPage_6; //$NON-NLS-1$
-				}
-			}
-		}
-
-		setErrorMessage(errorMessage);
-		setPageComplete(errorMessage == null);
-	}
-		
-	private void findCheckedElements(List checkedResources, Object parent) {
-		Object[] children= fTreeContentProvider.getChildren(parent);
-		for (int i= 0; i < children.length; i++) {
-			if (fTree.getGrayed(children[i]))
-				findCheckedElements(checkedResources, children[i]);
-			else if (fTree.getChecked(children[i]))
-				checkedResources.add(children[i]);
-		}
-	}
-
-	private void initializeCheckedState() {
-
-		BusyIndicator.showWhile(getShell().getDisplay(), new Runnable() {
-			public void run() {
-				Object[] elements = new Object[0];
-				if (fWorkingSet == null) {
-					// Use current part's selection for initialization
-					IWorkbenchPage page= DebugUIPlugin.getActiveWorkbenchWindow().getActivePage();
-					if (page == null) {
-						return;
-					}
-					
-					IWorkbenchPart part= page.getActivePart();
-					if (part == null) {
-						return;
-					}
-					
-					ISelectionProvider provider = part.getSite().getSelectionProvider();
-					if (provider == null) {
-						return;
-					}
-					
-					ISelection selection = provider.getSelection();
-					if (selection instanceof IStructuredSelection) {
-						IStructuredSelection ss = (IStructuredSelection) selection;
-						List list = new ArrayList();
-						Object[] objects = ss.toArray();
-						for (int i= 0; i < objects.length; i++) {
-							if (objects[i] instanceof IBreakpoint) {
-								list.add(objects[i]);
-							}
-						}
-						elements = list.toArray();
-					}
-				} else {
-					elements= fWorkingSet.getElements();
-				}
-
-				fTree.setCheckedElements(elements);
-			}
-		});
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsContentProvider.java
deleted file mode 100644
index 376f691..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsContentProvider.java
+++ /dev/null
@@ -1,281 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.ui.IBreakpointOrganizerDelegate;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.AbstractTreeViewer;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-
-/**
- * Content provider for the breakpoints view
- */
-public class BreakpointsContentProvider implements ITreeContentProvider, IPropertyChangeListener {
-    
-    private IBreakpointOrganizer[] fOrganizers = null;
-    private TreeViewer fViewer;
-    private BreakpointsView fView;
-    private Object[] fElements;
-    private boolean fDisposed = false;
-
-    /** 
-     * Constucts a new content provider for the given view.
-     * 
-     * @param view
-     */
-    public BreakpointsContentProvider(BreakpointsView view) {
-        fView = view;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
-     */
-    public Object[] getChildren(Object parentElement) {
-        if (parentElement.equals(DebugPlugin.getDefault().getBreakpointManager())) {
-        	return fElements;
-        } else if (parentElement instanceof BreakpointContainer) {
-        	return ((BreakpointContainer)parentElement).getChildren();
-        }
-        return new Object[0];
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
-     */
-    public Object getParent(Object element) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-     */
-    public boolean hasChildren(Object element) {
-    	return getChildren(element).length > 0;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-     */
-    public Object[] getElements(Object inputElement) {
-        return getChildren(inputElement);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-     */
-    public void dispose() {
-        fDisposed = true;
-        fElements = null;
-        setOrganizers(null);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-     */
-    public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-    	fViewer = (TreeViewer)viewer;
-        if (newInput != null) {
-            reorganize();
-        }
-    }
-    
-    /**
-     * Sets the nested order of breakpoint organizers, or <code>null</code>
-     * if none.
-     * 
-     * @param organizers the nested order of breakpoint organizers, or <code>null</code>
-     * if none 
-     */
-    void setOrganizers(IBreakpointOrganizer[] organizers) {
-        if (organizers != null && organizers.length == 0) {
-            organizers = null;
-        }
-    	// remove previous listeners
-    	if (fOrganizers != null) {
-    		for (int i = 0; i < fOrganizers.length; i++) {
-				fOrganizers[i].removePropertyChangeListener(this);
-			}
-    	}
-        fOrganizers = organizers;
-        // add listeners
-        if (fOrganizers != null) {
-        	for (int i = 0; i < fOrganizers.length; i++) {
-				fOrganizers[i].addPropertyChangeListener(this);
-			}
-        }
-        if (!fDisposed) {
-            fViewer.getControl().setRedraw(false);
-            // maintain expandsion based on visible breakpoints
-            IBreakpoint[] breakpoints = null;
-            if (isShowingGroups()) {
-                breakpoints = ((BreakpointsViewer)fViewer).getVisibleBreakpoints();
-            }
-            reorganize();
-            if (isShowingGroups()) {
-                // restore expansion
-                for (int i = 0; i < fElements.length; i++) {
-                    BreakpointContainer container = (BreakpointContainer) fElements[i];
-                    for (int j = 0; j < breakpoints.length; j++) {
-                        if (container.contains(breakpoints[j])) {
-                            fViewer.expandToLevel(container, AbstractTreeViewer.ALL_LEVELS);
-                            fView.updateCheckedState(container);
-                            break;
-                        }
-                    }
-                    
-                }
-            }
-            fViewer.getControl().setRedraw(true);
-        }
-    }
-    
-    /**
-     * Returns the root containers containing the given breakpoint, or <code>null</code>
-     * if none
-     * 
-     * @param breakpoint
-     * @return root containers containing the given breakpoint or <code>null</code>
-     */
-    public BreakpointContainer[] getRoots(IBreakpoint breakpoint) {
-        if (isShowingGroups()) {
-            List list = new ArrayList();
-            for (int i = 0; i < fElements.length; i++) {
-                BreakpointContainer container = (BreakpointContainer) fElements[i];
-                if (container.contains(breakpoint)) {
-                    list.add(container);
-                }
-            }
-            return (BreakpointContainer[]) list.toArray(new BreakpointContainer[list.size()]);
-        }
-        return null;
-    }
-    
-    /**
-     * Returns the nested order of breakpoint organizers being used, or <code>null</code>
-     * if none.
-     * 
-     * @return the nested order of breakpoint organizers being used, or <code>null</code>
-     * if none
-     */
-    IBreakpointOrganizer[] getOrganizers() {
-        return fOrganizers;
-    }
-    
-    /**
-     * Organizes the breakpoints based on nested categories, if any.
-     */
-    protected void reorganize() {
-        IBreakpoint[] breakpoints = DebugPlugin.getDefault().getBreakpointManager().getBreakpoints();
-        if (fOrganizers == null) {
-            fElements = breakpoints;
-        } else {
-            IBreakpointOrganizer organizer = fOrganizers[0];
-            Map categoriesToContainers = new HashMap();
-            for (int i = 0; i < breakpoints.length; i++) {
-                IBreakpoint breakpoint = breakpoints[i];
-                IAdaptable[] categories = organizer.getCategories(breakpoint);
-                if (categories == null || categories.length == 0) {
-                	categories = OtherBreakpointCategory.getCategories(organizer);
-                }
-                for (int j = 0; j < categories.length; j++) {
-                    IAdaptable category = categories[j];
-                    BreakpointContainer container = (BreakpointContainer) categoriesToContainers.get(category);
-                    if (container == null) {
-                        IBreakpointOrganizer[] nesting = null;
-                        if (fOrganizers.length > 1) {
-                            nesting = new IBreakpointOrganizer[fOrganizers.length - 1];
-                            System.arraycopy(fOrganizers, 1, nesting, 0, nesting.length);
-                        }
-                        container = new BreakpointContainer(category, organizer, nesting);
-                        categoriesToContainers.put(category, container);
-                    }
-                    container.addBreakpoint(breakpoint);
-                }
-            }
-            // add empty categories
-            IAdaptable[] emptyCategories = organizer.getCategories();
-            if (emptyCategories != null) {
-                for (int i = 0; i < emptyCategories.length; i++) {
-                    IAdaptable category = emptyCategories[i];
-                    BreakpointContainer container = (BreakpointContainer) categoriesToContainers.get(category);
-                    if (container == null) {
-                        container = new BreakpointContainer(category, organizer, null);
-                        categoriesToContainers.put(category, container);
-                    }
-                }
-            }
-            fElements = categoriesToContainers.values().toArray();
-        }
-        fViewer.getControl().setRedraw(false);
-        fViewer.refresh();
-        fView.initializeCheckedState();
-        fViewer.getControl().setRedraw(true);
-    }
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		if (event.getProperty().equals(IBreakpointOrganizerDelegate.P_CATEGORY_CHANGED)) {
-			// TODO: only re-organize if showing the changed category
-			reorganize();
-		}
-	}
-    
-    /**
-     * Returns the existing containers the given breakpoint is contained in, or <code>null</code>.
-     * 
-     * @param breakpoint
-     * @return the existing containers the given breakpoint is contained in, or <code>null</code>
-     */
-    protected BreakpointContainer[] getContainers(IBreakpoint breakpoint) {
-        if (isShowingGroups()) {
-            IAdaptable[] categories = fOrganizers[0].getCategories(breakpoint);
-            if (categories == null || categories.length == 0) {
-                categories = OtherBreakpointCategory.getCategories(fOrganizers[0]);
-            }
-            BreakpointContainer[] containers = new BreakpointContainer[categories.length];
-            int index = 0;
-            for (int i = 0; i < fElements.length; i++) {
-                BreakpointContainer container = (BreakpointContainer)fElements[i];
-                for (int j = 0; j < categories.length; j++) {
-                    IAdaptable category = categories[j];
-                    if (container.getCategory().equals(category)) {
-                        containers[index] = container;
-                        index++;
-                    }
-                }
-            }
-            return containers;
-        }
-        return null;
-    }
-
-    /**
-     * Returns whether content is grouped by categories.
-     * 
-     * @return whether content is grouped by categories
-     */
-    protected boolean isShowingGroups() {
-        return fOrganizers != null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDragAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDragAdapter.java
deleted file mode 100644
index ee8378f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDragAdapter.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.jface.util.Assert;
-import org.eclipse.jface.util.TransferDragSourceListener;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.DragSourceAdapter;
-import org.eclipse.swt.dnd.DragSourceEvent;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.ui.views.navigator.LocalSelectionTransfer;
-
-public class BreakpointsDragAdapter extends DragSourceAdapter implements TransferDragSourceListener {
-    
-    private ISelectionProvider fProvider;
-    private BreakpointsView fView;
-    private BreakpointContainer[] fContainers;
-    
-    public BreakpointsDragAdapter(BreakpointsView view, ISelectionProvider provider) {
-        Assert.isNotNull(provider);
-        fProvider= provider;
-        fView = view;
-    }
-
-    /**
-     * @see TransferDragSourceListener#getTransfer
-     */
-    public Transfer getTransfer() {
-        return LocalSelectionTransfer.getInstance();
-    }
-    
-    /* non Java-doc
-     * @see org.eclipse.swt.dnd.DragSourceListener#dragStart
-     */
-    public void dragStart(DragSourceEvent event) {
-        ISelection selection= fProvider.getSelection();
-        LocalSelectionTransfer.getInstance().setSelection(selection);
-        LocalSelectionTransfer.getInstance().setSelectionSetTime(event.time & 0xFFFFFFFFL);
-        event.doit= isDragable(selection);
-    }
-    
-    /**
-     * Checks if the elements contained in the given selection can
-     * be dragged.
-     * <p>
-     * Subclasses may override.
-     * 
-     * @param selection containing the elements to be dragged
-     */
-    protected boolean isDragable(ISelection selection) {
-        if (fView.canMove(selection)) {
-            fContainers = fView.getMovedFromContainers(selection);
-            return true;
-        }
-        return false;
-    }
-
-
-    /* non Java-doc
-     * @see org.eclipse.swt.dnd.DragSourceListener#dragSetData
-     */     
-    public void dragSetData(DragSourceEvent event) {
-        // For consistency set the data to the selection even though
-        // the selection is provided by the LocalSelectionTransfer
-        // to the drop target adapter.
-        event.data= LocalSelectionTransfer.getInstance().getSelection();
-    }
-
-
-    /* non Java-doc
-     * @see org.eclipse.swt.dnd.DragSourceListener#dragFinished
-     */ 
-    public void dragFinished(DragSourceEvent event) {
-        if (event.detail == DND.DROP_MOVE) {
-            // remove from source on move operation
-            fView.performRemove(fContainers, LocalSelectionTransfer.getInstance().getSelection());
-        }
-        LocalSelectionTransfer.getInstance().setSelection(null);
-        LocalSelectionTransfer.getInstance().setSelectionSetTime(0);
-    }   
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDropAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDropAdapter.java
deleted file mode 100644
index a726067..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsDropAdapter.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerDropAdapter;
-import org.eclipse.swt.dnd.TransferData;
-import org.eclipse.ui.views.navigator.LocalSelectionTransfer;
-
-/**
- * BreakpointsDropAdapter
- */
-public class BreakpointsDropAdapter extends ViewerDropAdapter {
-    
-    private BreakpointsView fView;
-
-    /**
-     * @param viewer
-     */
-    protected BreakpointsDropAdapter(BreakpointsView view, Viewer viewer) {
-        super(viewer);
-        fView = view;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ViewerDropAdapter#performDrop(java.lang.Object)
-     */
-    public boolean performDrop(Object data) {
-        return fView.performPaste(getCurrentTarget(), LocalSelectionTransfer.getInstance().getSelection());
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ViewerDropAdapter#validateDrop(java.lang.Object, int, org.eclipse.swt.dnd.TransferData)
-     */
-    public boolean validateDrop(Object target, int operation, TransferData transferType) {
-        return fView.canPaste(target, LocalSelectionTransfer.getInstance().getSelection());
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsLabelProvider.java
deleted file mode 100644
index 626d311..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsLabelProvider.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.CompositeDebugImageDescriptor;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jface.viewers.IFontProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-
-/**
- * Label provider for the breakpoints view
- */
-public class BreakpointsLabelProvider extends LabelProvider implements IFontProvider {
-
-    private WorkbenchLabelProvider fWorkbenchLabelProvider;
-    private IDebugModelPresentation fPresentation;
-    
-    /**
-     * Constructs a new label provide for the breakpoints view.
-     */
-    public BreakpointsLabelProvider() {
-        fWorkbenchLabelProvider = new WorkbenchLabelProvider();
-        fPresentation = DebugUITools.newDebugModelPresentation();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-     */
-    public void dispose() {
-        fWorkbenchLabelProvider.dispose();
-        fPresentation.dispose();
-        super.dispose();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-     */
-    public Image getImage(Object element) {
-        if (element instanceof IBreakpoint) {
-            return fPresentation.getImage(element);
-        }
-        Image image = fWorkbenchLabelProvider.getImage(element);
-        if (image != null) {
-            int flags= computeAdornmentFlags();
-            if (flags > 0) {
-                CompositeDebugImageDescriptor descriptor= new CompositeDebugImageDescriptor(image, flags);
-                return DebugUIPlugin.getImageDescriptorRegistry().get(descriptor);
-            }
-        }
-        return image;        
-    }
-    
-	/**
-     * Computes and return common adornment flags for the given category.
-     * 
-     * @param element breakoint category
-     * @return adornment flags defined in CompositeDebugImageDescriptor
-     */
-    private int computeAdornmentFlags() {
-        if (!DebugPlugin.getDefault().getBreakpointManager().isEnabled()) {
-            return CompositeDebugImageDescriptor.SKIP_BREAKPOINT;
-        }
-        return 0;
-    }    
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-     */
-    public String getText(Object element) {
-        if (element instanceof IBreakpoint) {
-            return fPresentation.getText(element);
-        }
-        return fWorkbenchLabelProvider.getText(element);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IFontProvider#getFont(java.lang.Object)
-     */
-    public Font getFont(Object element) {
-        if (element instanceof IBreakpoint) {
-            return null;
-        }
-        return fWorkbenchLabelProvider.getFont(element);
-    }
-    
-    /**
-     * Returns the debug model presentation used by this label provider.
-     * 
-     * @return the debug model presentation used by this label provider
-     */
-    protected IDebugModelPresentation getPresentation() {
-        return fPresentation;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsSorter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsSorter.java
deleted file mode 100644
index 523ebf9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsSorter.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.ILineBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.viewers.IBasicPropertyConstants;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-
-public class BreakpointsSorter extends ViewerSorter {
-		/**
-		 * @see ViewerSorter#isSorterProperty(Object, String)
-		 */
-		public boolean isSorterProperty(Object element,String propertyId) {
-			return propertyId.equals(IBasicPropertyConstants.P_TEXT);
-		}
-		
-		/**
-		 * Returns a negative, zero, or positive number depending on whether
-		 * the first element is less than, equal to, or greater than
-		 * the second element.
-		 * <p>
-		 * Group breakpoints by debug model
-		 * 	within debug model, group breakpoints by type 
-		 * 		within type groups, sort by line number (if applicable) and then
-		 * 		alphabetically by label
-		 * 
-		 * @param viewer the viewer
-		 * @param e1 the first element
-		 * @param e2 the second element
-		 * @return a negative number if the first element is less than the 
-		 *  second element; the value <code>0</code> if the first element is
-		 *  equal to the second element; and a positive number if the first
-		 *  element is greater than the second element
-		 */
-		public int compare(Viewer viewer, Object e1, Object e2) {
-            if (!(e1 instanceof IBreakpoint)) {
-                return super.compare(viewer, e1, e2);
-            }
-	
-			IBreakpoint b1= (IBreakpoint)e1;
-			IBreakpoint b2= (IBreakpoint)e2;
-			String modelId1= b1.getModelIdentifier();
-			String modelId2= b2.getModelIdentifier();
-			int result= modelId1.compareTo(modelId2);
-			if (result != 0) {
-				return result;
-			}
-			String type1= ""; //$NON-NLS-1$
-			String type2= ""; //$NON-NLS-1$
-			IMarker marker1= b1.getMarker();
-			if (!marker1.exists()) {
-				return 0;
-			}
-			try {
-				type1= marker1.getType();
-			} catch (CoreException ce) {
-				DebugUIPlugin.log(ce);
-			}
-			try {
-				IMarker marker2= b2.getMarker();
-				if (!marker2.exists()) {
-					return 0;
-				}
-				type2= marker2.getType();	
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		
-			result= type1.compareTo(type2);
-			if (result != 0) {
-				return result;
-			}
-			// model and type are the same
-		
-			ILabelProvider lprov = (ILabelProvider) ((StructuredViewer)viewer).getLabelProvider();
-			String name1= lprov.getText(e1);
-			String name2= lprov.getText(e2);
-	
-			boolean lineBreakpoint= false;
-			try {
-				lineBreakpoint= marker1.isSubtypeOf(IBreakpoint.LINE_BREAKPOINT_MARKER);
-			} catch (CoreException ce) {
-			}
-			if (lineBreakpoint) {
-				return compareLineBreakpoints(b1, b2, name1,name2);
-			} 
-			
-			return name1.compareTo(name2);		
-		}
-		
-		protected int compareLineBreakpoints(IBreakpoint b1, IBreakpoint b2, String name1, String name2) {
-			int colon1= name1.indexOf(':');
-			if (colon1 != -1) {
-				int colon2= name2.indexOf(':');
-				if (colon2 != -1) {
-					String upToColon1= name1.substring(0, colon1);
-					if (name2.startsWith(upToColon1)) {
-						int l1= 0;
-						int l2= 0;
-						try {
-							l1= ((ILineBreakpoint)b1).getLineNumber();	
-						} catch (CoreException e) {
-							DebugUIPlugin.log(e);
-						}
-						try {
-							l2= ((ILineBreakpoint)b2).getLineNumber();	
-						} catch (CoreException e) {
-							DebugUIPlugin.log(e);
-						}
-						return l1 - l2;
-					}
-				}
-			}
-			return name1.compareTo(name2);
-		}
-	}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java
deleted file mode 100644
index 7c1f47c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsView.java
+++ /dev/null
@@ -1,957 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Brock Janiczak - bug 78494
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
- 
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointManagerListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.LazyModelPresentation;
-import org.eclipse.debug.internal.ui.actions.OpenBreakpointMarkerAction;
-import org.eclipse.debug.internal.ui.actions.ShowSupportedBreakpointsAction;
-import org.eclipse.debug.internal.ui.actions.SkipAllBreakpointsAction;
-import org.eclipse.debug.internal.ui.actions.breakpointGroups.CopyBreakpointsAction;
-import org.eclipse.debug.internal.ui.actions.breakpointGroups.PasteBreakpointsAction;
-import org.eclipse.debug.internal.ui.actions.breakpointGroups.RemoveFromWorkingSetAction;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.ui.AbstractDebugView;
-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.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IBaseLabelProvider;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.ITreeViewerListener;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.TreeExpansionEvent;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.dnd.Clipboard;
-import org.eclipse.swt.dnd.DND;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Item;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IPerspectiveListener2;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.ISharedImages;
-import org.eclipse.ui.IViewReference;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.XMLMemento;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.actions.SelectionListenerAction;
-import org.eclipse.ui.texteditor.IWorkbenchActionDefinitionIds;
-import org.eclipse.ui.views.navigator.LocalSelectionTransfer;
-
-/**
- * This view shows the breakpoints registered with the breakpoint manager
- */
-public class BreakpointsView extends AbstractDebugView implements ISelectionListener, IBreakpointManagerListener, IPerspectiveListener2 {
-
-    private BreakpointsViewEventHandler fEventHandler;
-	private ICheckStateListener fCheckListener= new ICheckStateListener() {
-		public void checkStateChanged(CheckStateChangedEvent event) {
-			handleCheckStateChanged(event);
-		}
-	};
-	private boolean fIsTrackingSelection= false;
-	// Persistance constants
-	private static String KEY_IS_TRACKING_SELECTION= "isTrackingSelection"; //$NON-NLS-1$
-	private static String KEY_VALUE="value"; //$NON-NLS-1$
-    private static final String ACTION_REMOVE_FROM_GROUP = "RemoveFromGroup"; //$NON-NLS-1$
-	private BreakpointsContentProvider fContentProvider;
-    private Clipboard fClipboard;
-    
-	/**
-	 * This memento allows the Breakpoints view to save and restore state
-	 * when it is closed and opened within a session. A different
-	 * memento is supplied by the platform for persistance at
-	 * workbench shutdown.
-	 */
-	private static IMemento fgMemento;
-	
-	/**
-	 * @see org.eclipse.ui.IWorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createPartControl(Composite parent) {
-		super.createPartControl(parent);
-		DebugPlugin.getDefault().getBreakpointManager().addBreakpointManagerListener(this);
-		getSite().getWorkbenchWindow().addPerspectiveListener(this);
-	}
-
-	/**
-	 * @see AbstractDebugView#createViewer(Composite)
-	 */
-	protected Viewer createViewer(Composite parent) {
-		fContentProvider= new BreakpointsContentProvider(this);
-		CheckboxTreeViewer viewer = new BreakpointsViewer(new Tree(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.CHECK));
-        setViewer(viewer);
-		viewer.setContentProvider(fContentProvider);
-		viewer.setSorter(new BreakpointsSorter());
-		viewer.setInput(DebugPlugin.getDefault().getBreakpointManager());
-		viewer.addCheckStateListener(fCheckListener);
-		viewer.addTreeListener(new ITreeViewerListener() {
-			public void treeExpanded(TreeExpansionEvent event) {
-				updateCheckedState(event.getElement());
-			}
-			public void treeCollapsed(TreeExpansionEvent event) {
-			}
-		});
-	    viewer.setLabelProvider(new BreakpointsLabelProvider());
-		
-		// Necessary so that the PropertySheetView hears about selections in this view
-		getSite().setSelectionProvider(viewer);
-		initIsTrackingSelection();
-		initBreakpointOrganizers();
-		setEventHandler(new BreakpointsViewEventHandler(this));
-        initializeCheckedState();
-        initDragAndDrop();
-		return viewer;
-	}
-    
-    private void initDragAndDrop() {
-        StructuredViewer viewer = (StructuredViewer)getViewer();
-        int ops= DND.DROP_MOVE | DND.DROP_COPY;
-        // drop
-        Transfer[] dropTransfers= new Transfer[] {
-            LocalSelectionTransfer.getInstance()
-        };
-        viewer.addDropSupport(ops, dropTransfers, new BreakpointsDropAdapter(this, viewer));
-        
-        // Drag 
-        Transfer[] dragTransfers= new Transfer[] {
-            LocalSelectionTransfer.getInstance()
-        };
-        viewer.addDragSupport(ops, dragTransfers, new BreakpointsDragAdapter(this, viewer));
-    }    
-	
-	/**
-	 * Initializes whether this view tracks selection in the
-	 * debug view from the persisted state.
-	 */
-	private void initIsTrackingSelection() {
-		IMemento memento= getMemento();
-		if (memento != null) {
-			IMemento node= memento.getChild(KEY_IS_TRACKING_SELECTION);
-			if (node != null) {
-				setTrackSelection(Boolean.valueOf(node.getString(KEY_VALUE)).booleanValue());
-				return;
-			}
-		}
-		setTrackSelection(false);
-	}
-	
-	private void initBreakpointOrganizers() {
-		IMemento memento = getMemento();
-		if (memento != null) {
-			IMemento node = memento.getChild(IDebugUIConstants.EXTENSION_POINT_BREAKPOINT_ORGANIZERS);
-			if (node == null) {
-                fContentProvider.setOrganizers(null);
-            } else {
-				String value = node.getString(KEY_VALUE);
-                if (value != null) {
-                    String[] ids = value.split(","); //$NON-NLS-1$
-    				BreakpointOrganizerManager manager = BreakpointOrganizerManager.getDefault();
-    				List organziers= new ArrayList();
-                    for (int i = 0; i < ids.length; i++) {
-                        IBreakpointOrganizer organizer = manager.getOrganizer(ids[i]);
-                        if (organizer != null) {
-                            organziers.add(organizer);
-                        }
-                    }
-    				fContentProvider.setOrganizers((IBreakpointOrganizer[]) organziers.toArray(new IBreakpointOrganizer[organziers.size()]));
-                }
-			}
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#getMemento()
-	 */
-	protected IMemento getMemento() {
-		if (fgMemento != null) {
-		    return fgMemento;
-		}
-		return super.getMemento();
-	}
-
-	/**
-	 * Sets the initial checked state of the items in the viewer.
-	 */
-	public void initializeCheckedState() {
-		IBreakpointManager manager= DebugPlugin.getDefault().getBreakpointManager();
-		Object[] elements= getTreeContentProvider().getElements(manager);
-		for (int i = 0; i < elements.length; i++) {
-			updateCheckedState(elements[i]);
-		}
-	}
-	
-    /**
-     * Update the checked state up the given element and all of its children.
-     * 
-     * @param element
-     */
-	public void updateCheckedState(Object element) {
-        BreakpointsViewer viewer = (BreakpointsViewer) getViewer();
-        Widget widget = viewer.searchItem(element);
-        if (widget != null) {
-            updateCheckedState((TreeItem)widget);
-        }
-	}
-    
-    /**
-     * Update the checked state up the given element and all of its children.
-     * 
-     * @param element
-     */
-    public void updateCheckedState(TreeItem item) {
-        BreakpointsViewer viewer = (BreakpointsViewer) getViewer();
-        Object element = item.getData();
-        if (element instanceof IBreakpoint) {
-            try {
-                item.setChecked(((IBreakpoint) element).isEnabled());
-                viewer.refreshItem(item);
-            } catch (CoreException e) {
-                DebugUIPlugin.log(e);
-            }
-        } else if (element instanceof BreakpointContainer) {
-            IBreakpoint[] breakpoints = ((BreakpointContainer) element).getBreakpoints();
-            int enabledChildren= 0;
-            for (int i = 0; i < breakpoints.length; i++) {
-                IBreakpoint breakpoint = breakpoints[i];
-                try {
-                    if (breakpoint.isEnabled()) {
-                        enabledChildren++;
-                    }
-                } catch (CoreException e) {
-                    DebugUIPlugin.log(e);
-                }
-            }
-            if (enabledChildren == 0) {
-                // Uncheck the container node if no children are enabled
-                item.setGrayed(false);
-                item.setChecked(false);
-            } else if (enabledChildren == breakpoints.length) {
-                // Check the container if all children are enabled
-                item.setGrayed(false);
-                item.setChecked(true);
-            } else {
-                // If some but not all children are enabled, gray the container node
-                item.setGrayed(true);
-                item.setChecked(true);
-            }
-            // Update any children (breakpoints and containers)
-            TreeItem[] items = item.getItems();
-            for (int i = 0; i < items.length; i++) {
-                updateCheckedState(items[i]);
-            }
-        }
-    }    
-		
-	/**
-	 * Returns this view's viewer as a checkbox tree viewer.
-	 * @return this view's viewer as a checkbox tree viewer
-	 */
-	public CheckboxTreeViewer getCheckboxViewer() {
-		return (CheckboxTreeViewer) getViewer();
-	}
-	
-	/**
-	 * Returns this view's content provider as a tree content provider.
-	 * @return this view's content provider as a tree content provider
-	 */
-	public ITreeContentProvider getTreeContentProvider() {
-	    return fContentProvider;
-	}
-
-	/**
-	 * Responds to the user checking and unchecking breakpoints by enabling
-	 * and disabling them.
-	 * 
-	 * @param event the check state change event
-	 */
-	private void handleCheckStateChanged(CheckStateChangedEvent event) {
-		Object source= event.getElement();
-		if (source instanceof BreakpointContainer) {
-			handleContainerChecked(event, (BreakpointContainer) source);
-		} else if (source instanceof IBreakpoint) {
-			handleBreakpointChecked(event, (IBreakpoint) source);
-		}
-	}
-	/**
-	 * A breakpoint has been checked/unchecked. Update the group
-	 * element's checked/grayed state as appropriate.
-	 */
-	private void handleBreakpointChecked(final CheckStateChangedEvent event, final IBreakpoint breakpoint) {
-		final boolean enable= event.getChecked();
-        String jobName = enable ? DebugUIViewsMessages.BreakpointsView_0 : DebugUIViewsMessages.BreakpointsView_1; //$NON-NLS-1$ //$NON-NLS-2$
-        new Job(jobName) {
-            protected IStatus run(IProgressMonitor monitor) {
-                try {
-                    breakpoint.setEnabled(enable);
-                    return Status.OK_STATUS;
-                } catch (final CoreException e) {
-                    Display.getDefault().asyncExec(new Runnable() {
-                        public void run() {
-                            String titleState= enable ? DebugUIViewsMessages.BreakpointsView_6 : DebugUIViewsMessages.BreakpointsView_7; //$NON-NLS-1$ //$NON-NLS-2$
-                            String messageState= enable ? DebugUIViewsMessages.BreakpointsView_8 : DebugUIViewsMessages.BreakpointsView_9;  //$NON-NLS-1$ //$NON-NLS-2$
-                            DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), MessageFormat.format(DebugUIViewsMessages.BreakpointsView_10, new String[] { titleState }), MessageFormat.format(DebugUIViewsMessages.BreakpointsView_11, new String[] { messageState }), e); //$NON-NLS-1$ //$NON-NLS-2$
-                            // If the breakpoint fails to update, reset its check state.
-                            getCheckboxViewer().removeCheckStateListener(fCheckListener);
-                            event.getCheckable().setChecked(breakpoint, !event.getChecked());
-                            getCheckboxViewer().addCheckStateListener(fCheckListener);                            
-                        }
-                    });
-                }
-                return Status.CANCEL_STATUS;
-            }
-        }.schedule();
-    }
-
-	/**
-	 * A group has been checked or unchecked. Enable/disable all of the
-	 * breakpoints in that group to match.
-	 */
-	private void handleContainerChecked(CheckStateChangedEvent event, BreakpointContainer container) {
-		final IBreakpoint[] breakpoints = container.getBreakpoints();
-		final boolean enable= event.getChecked();
-		IWorkspaceRunnable runnable = new IWorkspaceRunnable() {
-            public void run(IProgressMonitor monitor) throws CoreException {
-                for (int i = 0; i < breakpoints.length; i++) {
-                    IBreakpoint breakpoint = breakpoints[i];
-                    breakpoint.setEnabled(enable);
-                }
-            }
-        };
-        try {
-            // TODO: should use scheduling rule
-            ResourcesPlugin.getWorkspace().run(runnable, null);
-        } catch (CoreException e) {
-            DebugUIPlugin.log(e);
-        }
-	}
-
-	/**
-	 * @see AbstractDebugView#getHelpContextId()
-	 */
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.BREAKPOINT_VIEW;
-	}
-
-	/**
-	 * @see IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-        disposeAction(IWorkbenchActionDefinitionIds.COPY);
-        disposeAction(IWorkbenchActionDefinitionIds.PASTE);
-        disposeAction(ACTION_REMOVE_FROM_GROUP); //$NON-NLS-1$
-        
-	    if (getCheckboxViewer() != null) {
-	        getCheckboxViewer().removeCheckStateListener(fCheckListener);
-	    }
-		IAction action= getAction("ShowBreakpointsForModel"); //$NON-NLS-1$
-		if (action != null) {
-			((ShowSupportedBreakpointsAction)action).dispose(); 
-		}
-		getSite().getPage().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		DebugPlugin.getDefault().getBreakpointManager().removeBreakpointManagerListener(this);
-		super.dispose();
-		
-		if (getEventHandler() != null) {
-			getEventHandler().dispose();
-		}
-        
-        if (fClipboard != null) {
-            fClipboard.dispose();
-        }
-        
-		getSite().getWorkbenchWindow().removePerspectiveListener(this);
-	}
-
-	/**
-	 * @see AbstractDebugView#createActions()
-	 */
-	protected void createActions() {
-		IAction action = new OpenBreakpointMarkerAction(getViewer());
-		setAction("GotoMarker", action); //$NON-NLS-1$
-		setAction(DOUBLE_CLICK_ACTION, action);
-		setAction("ShowBreakpointsForModel", new ShowSupportedBreakpointsAction(getStructuredViewer(),this)); //$NON-NLS-1$
-		setAction("SkipBreakpoints", new SkipAllBreakpointsAction()); //$NON-NLS-1$
-        
-        fClipboard= new Clipboard(getSite().getShell().getDisplay());
-        
-        PasteBreakpointsAction paste = new PasteBreakpointsAction(this);
-        configure(paste, IWorkbenchActionDefinitionIds.PASTE, ActionFactory.PASTE.getId(),ISharedImages.IMG_TOOL_PASTE);
-        SelectionListenerAction copy = new CopyBreakpointsAction(this, fClipboard, paste);
-        configure(copy, IWorkbenchActionDefinitionIds.COPY, ActionFactory.COPY.getId(), ISharedImages.IMG_TOOL_COPY);
-        
-        SelectionListenerAction remove = new RemoveFromWorkingSetAction(this);
-        setAction(ACTION_REMOVE_FROM_GROUP, remove); //$NON-NLS-1$
-        getViewer().addSelectionChangedListener(remove);
-	}
-
-	/**
-     * Configures the action to override the global action, registers
-     * the action for selection change notification, and registers
-     * the action with this view.
-     * 
-     * @param sla action
-     * @param defId action definition id
-     * @param globalId global action id
-     * @param imgId image identifier
-     */
-    private void configure(SelectionListenerAction action, String defId, String globalId, String imgId) {
-        setAction(defId, action);
-        action.setActionDefinitionId(defId);
-        getViewSite().getActionBars().setGlobalActionHandler(globalId, action);
-        getViewer().addSelectionChangedListener(action);
-        action.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(imgId));
-    }
-    
-    /**
-     * Cleans up selection listener action
-     * 
-     * @param id action id
-     */
-    private void disposeAction(String id) {
-        IAction action = getAction(id);
-        if (action instanceof SelectionListenerAction) {
-            SelectionListenerAction sla = (SelectionListenerAction) action;
-            if (getViewer() != null) {
-                getViewer().removeSelectionChangedListener(sla);
-            }
-        }
-    }
-
-    /**
-	 * Adds items to the context menu.
-	 * 
-	 * @param menu The menu to contribute to
-	 */
-	protected void fillContextMenu(IMenuManager menu) {
-		updateObjects();
-		menu.add(new Separator(IDebugUIConstants.EMPTY_NAVIGATION_GROUP));
-		menu.add(new Separator(IDebugUIConstants.NAVIGATION_GROUP));
-		menu.add(getAction("GotoMarker")); //$NON-NLS-1$
-		menu.add(new Separator(IDebugUIConstants.EMPTY_BREAKPOINT_GROUP));
-		menu.add(new Separator(IDebugUIConstants.BREAKPOINT_GROUP));
-        menu.add(getAction(IWorkbenchActionDefinitionIds.COPY));
-        menu.add(getAction(IWorkbenchActionDefinitionIds.PASTE));
-        IAction action = getAction(ACTION_REMOVE_FROM_GROUP);
-        if (action.isEnabled()) {
-            menu.add(action);
-        }
-		menu.add(new Separator(IDebugUIConstants.EMPTY_RENDER_GROUP));
-		menu.add(new Separator(IDebugUIConstants.BREAKPOINT_GROUP_GROUP));
-		
-		menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-	}
-	
-	/**
-	 * @see AbstractDebugView#configureToolBar(IToolBarManager)
-	 */
-	protected void configureToolBar(IToolBarManager tbm) {
-		tbm.add(new Separator(IDebugUIConstants.BREAKPOINT_GROUP));
-		tbm.add(getAction("ShowBreakpointsForModel")); //$NON-NLS-1$
-		tbm.add(getAction("GotoMarker")); //$NON-NLS-1$
-		tbm.add(getAction("SkipBreakpoints")); //$NON-NLS-1$
-		tbm.add(new Separator(IDebugUIConstants.RENDER_GROUP));
-	}
-	
-	/**
-	 * Returns this view's event handler
-	 * 
-	 * @return a breakpoint view event handler
-	 */
-	protected BreakpointsViewEventHandler getEventHandler() {
-		return fEventHandler;
-	}
-
-	/**
-	 * Sets this view's event handler.
-	 * 
-	 * @param eventHandler a breakpoint view event handler
-	 */
-	private void setEventHandler(BreakpointsViewEventHandler eventHandler) {
-		fEventHandler = eventHandler;
-	}
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
-	 */
-	protected void becomesVisible() {
-		super.becomesVisible();
-        CheckboxTreeViewer viewer = getCheckboxViewer();
-        ISelection selection = viewer.getSelection();
-        viewer.getControl().setRedraw(false);
-        ((BreakpointsContentProvider)viewer.getContentProvider()).reorganize();
-        initializeCheckedState();
-        viewer.setSelection(new StructuredSelection(selection));
-        viewer.getControl().setRedraw(true);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection sel) {
-		if (sel.isEmpty() || !isTrackingSelection()) {
-			return;
-		}
-		IStructuredSelection selection= (IStructuredSelection) sel;
-		Iterator iter= selection.iterator();
-		Object firstElement= iter.next();
-		if (firstElement == null || iter.hasNext()) {
-			return;
-		}
-		IThread thread= null;
-		if (firstElement instanceof IStackFrame) {
-			thread= ((IStackFrame) firstElement).getThread();
-		} else if (firstElement instanceof IThread) {
-			thread= (IThread) firstElement;
-		} else {
-			return;
-		}
-		IBreakpoint[] breakpoints= thread.getBreakpoints();
-		getViewer().setSelection(new StructuredSelection(breakpoints), true);
-	}
-	
-	/**
-	 * Returns whether this view is currently tracking the
-	 * selection from the debug view.
-	 * 
-	 * @return whether this view is currently tracking the
-	 *   debug view's selection
-	 */
-	public boolean isTrackingSelection() {
-		return fIsTrackingSelection;
-	}
-	
-	/**
-	 * Sets whether this view should track the selection from
-	 * the debug view.
-	 * 
-	 * @param trackSelection whether or not this view should
-	 *   track the debug view's selection.
-	 */
-	public void setTrackSelection(boolean trackSelection) {
-		fIsTrackingSelection= trackSelection;
-		if (trackSelection) {
-			getSite().getPage().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		} else {
-			getSite().getPage().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewPart#saveState(org.eclipse.ui.IMemento)
-	 */
-	public void saveState(IMemento memento) {
-		super.saveState(memento);
-		IMemento node= memento.createChild(KEY_IS_TRACKING_SELECTION);
-		node.putString(KEY_VALUE, String.valueOf(fIsTrackingSelection));
-		
-		StringBuffer buffer= new StringBuffer();
-		IBreakpointOrganizer[] organizers = getBreakpointOrganizers();
-        if (organizers != null) {
-            for (int i = 0; i < organizers.length; i++) {
-                IBreakpointOrganizer organizer = organizers[i];
-                buffer.append(organizer.getIdentifier());
-                if (i < (organizers.length - 1)) {
-                    buffer.append(',');
-                }
-            }
-            node = memento.createChild(IDebugUIConstants.EXTENSION_POINT_BREAKPOINT_ORGANIZERS);
-            node.putString(KEY_VALUE, buffer.toString());
-        }
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IBreakpointManagerListener#breakpointManagerEnablementChanged(boolean)
-	 */
-	public void breakpointManagerEnablementChanged(boolean enabled) {
-		DebugUIPlugin.getStandardDisplay().asyncExec(new Runnable() {
-			public void run() {
-				IAction action = getAction("SkipBreakpoints"); //$NON-NLS-1$
-				if (action != null) {
-					((SkipAllBreakpointsAction) action).updateActionCheckedState();
-				}
-			}
-		});
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IDoubleClickListener#doubleClick(org.eclipse.jface.viewers.DoubleClickEvent)
-	 */
-	public void doubleClick(DoubleClickEvent event) {
-		  IStructuredSelection selection= (IStructuredSelection) event.getSelection();
-          if (selection.size() == 1) {
-              Object element = selection.getFirstElement();
-              if (element instanceof BreakpointContainer) {
-                  getCheckboxViewer().setExpandedState(element, !getCheckboxViewer().getExpandedState(element));
-                  return;
-              }
-          }
-		super.doubleClick(event);
-	}
-
-	/**
-	 * @param selectedContainers
-	 */
-	public void setBreakpointOrganizers(IBreakpointOrganizer[] organizers) {
-        Viewer viewer = getViewer();
-        ISelection selection = viewer.getSelection();
-		fContentProvider.setOrganizers(organizers);
-		viewer.setSelection(selection);
-	}
-	
-	public IBreakpointOrganizer[] getBreakpointOrganizers() {
-		return fContentProvider.getOrganizers();
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPerspectiveListener2#perspectiveChanged(org.eclipse.ui.IWorkbenchPage, org.eclipse.ui.IPerspectiveDescriptor, org.eclipse.ui.IWorkbenchPartReference, java.lang.String)
-     */
-    public void perspectiveChanged(IWorkbenchPage page, IPerspectiveDescriptor perspective, IWorkbenchPartReference partRef, String changeId) {
-		if (partRef instanceof IViewReference && changeId.equals(IWorkbenchPage.CHANGE_VIEW_HIDE)) {
-			String id = ((IViewReference) partRef).getId();
-			if (id.equals(getViewSite().getId())) {
-				// BreakpointsView closed. Persist settings.
-				fgMemento= XMLMemento.createWriteRoot("BreakpointsViewMemento"); //$NON-NLS-1$
-				saveState(fgMemento);
-			}
-		}
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPerspectiveListener#perspectiveActivated(org.eclipse.ui.IWorkbenchPage, org.eclipse.ui.IPerspectiveDescriptor)
-     */
-    public void perspectiveActivated(IWorkbenchPage page, IPerspectiveDescriptor perspective) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPerspectiveListener#perspectiveChanged(org.eclipse.ui.IWorkbenchPage, org.eclipse.ui.IPerspectiveDescriptor, java.lang.String)
-     */
-    public void perspectiveChanged(IWorkbenchPage page, IPerspectiveDescriptor perspective, String changeId) {
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IDebugView#getPresentation(java.lang.String)
-     */
-    public IDebugModelPresentation getPresentation(String id) {
-        if (getViewer() instanceof StructuredViewer) {
-            IBaseLabelProvider lp = ((StructuredViewer)getViewer()).getLabelProvider();
-            if (lp instanceof BreakpointsLabelProvider) {
-                BreakpointsLabelProvider blp = (BreakpointsLabelProvider) lp;
-                lp = blp.getPresentation();
-            }
-            if (lp instanceof DelegatingModelPresentation) {
-                return ((DelegatingModelPresentation)lp).getPresentation(id);
-            }
-            if (lp instanceof LazyModelPresentation) {
-                if (((LazyModelPresentation)lp).getDebugModelIdentifier().equals(id)) {
-                    return (IDebugModelPresentation)lp;
-                }
-            }
-        }
-        return null;
-    }    
-    
-    /**
-     * Checks if the elements contained in the given selection can
-     * be moved.
-     * 
-     * @param selection containing the elements to be moved
-     */
-    public boolean canMove(ISelection selection) {
-        if (selection.isEmpty() || !fContentProvider.isShowingGroups()) {
-            return false;
-        }
-        if (selection instanceof IStructuredSelection) {
-            IStructuredSelection ss = (IStructuredSelection) selection;
-            Object[] objects = ss.toArray();
-            for (int i = 0; i < objects.length; i++) {
-                Object object = objects[i];
-                if (object instanceof IBreakpoint) {
-                    IBreakpoint breakpoint = (IBreakpoint) object;
-                    BreakpointContainer[] containers = getMovedFromContainers(breakpoint);
-                    if (containers == null || containers.length == 0) {
-                        return false;
-                    }
-                } else {
-                    return false;
-                }
-            }
-        } else {
-            return false;
-        }
-        return true;
-    }   
-    
-    /**
-     * Returns whether the given selection can be pasted into the given target.
-     * 
-     * @param target target of the paste
-     * @param selection the selection to paste
-     * @return whether the given selection can be pasted into the given target
-     */
-    public boolean canPaste(Object target, ISelection selection) {
-        if (target instanceof BreakpointContainer) {
-            BreakpointContainer container = (BreakpointContainer) target;
-            if (selection instanceof IStructuredSelection && !selection.isEmpty()) {
-                Object[] objects = ((IStructuredSelection)selection).toArray();
-                for (int i = 0; i < objects.length; i++) {
-                    if (objects[i] instanceof IBreakpoint) {
-                        IBreakpoint breakpoint = (IBreakpoint)objects[i];
-                        if (container.contains(breakpoint) || !container.getOrganizer().canAdd(breakpoint, container.getCategory())) {
-                            return false;
-                        }
-                    } else {
-                        return false;
-                    }
-                }
-                return true;
-            }
-        }
-        return false;
-    }   
-    
-    public void performRemove(BreakpointContainer[] containers, ISelection ss) {
-        if (ss instanceof IStructuredSelection) {
-            // remove from source on move operation
-            IStructuredSelection selection = (IStructuredSelection) ss;
-            Object[] breakpoints = selection.toArray();
-            for (int i = 0; i < breakpoints.length; i++) {
-                IBreakpoint breakpoint = (IBreakpoint) breakpoints[i];
-                for (int j = 0; j < containers.length; j++) {
-                    BreakpointContainer container = containers[j];
-                    container.getOrganizer().removeBreakpoint(breakpoint, container.getCategory());
-                }
-            }
-        }
-    }
-    
-    /** 
-     * Pastes the selection into the given target
-     * 
-     * @param target breakpoint container
-     * @param selection breakpoints
-     * @return whehther successful
-     */
-    public boolean performPaste(Object target, ISelection selection) {
-        if (target instanceof BreakpointContainer && selection instanceof IStructuredSelection) {
-            BreakpointContainer container = (BreakpointContainer) target;
-            Object[] objects = ((IStructuredSelection)selection).toArray();
-            for (int i = 0; i < objects.length; i++) {
-                container.getOrganizer().addBreakpoint((IBreakpoint)objects[i], container.getCategory());
-            }
-            return true;
-        }
-        return false;
-    }      
-    
-    public BreakpointContainer[] getMovedFromContainers(ISelection selection) {
-        List list = new ArrayList();
-        if (selection instanceof IStructuredSelection) {
-            IStructuredSelection ss = (IStructuredSelection) selection;
-            Object[] objects = ss.toArray();
-            for (int i = 0; i < objects.length; i++) {
-                if (objects[i] instanceof IBreakpoint) {
-                    IBreakpoint breakpoint = (IBreakpoint) objects[i];
-                    BreakpointContainer[] containers = getMovedFromContainers(breakpoint);
-                    for (int j = 0; j < containers.length; j++) {
-                        list.add(containers[j]);
-                    }
-                }
-                
-            }
-        }
-        return (BreakpointContainer[]) list.toArray(new BreakpointContainer[list.size()]);
-    }
-    /**
-     * Returns the parent of the given breakpoint that allows the breakpoint
-     * to be removed. Only parents of selected breakpoints are considered.
-     * 
-     * @param breakpoint candidate for removal
-     * @return containers that the breakpoint should be removed from
-     */
-    public BreakpointContainer[] getMovedFromContainers(IBreakpoint breakpoint) {
-        BreakpointsViewer viewer = (BreakpointsViewer) getViewer();
-        Item[] items = viewer.getSelectedItems();    
-        List list = new ArrayList();
-        for (int i = 0; i < items.length; i++) {
-            TreeItem item = (TreeItem) items[i];
-            if (breakpoint.equals(item.getData())) {
-                BreakpointContainer parent = getRemoveableParent(item, breakpoint);
-                if (parent != null) {
-                    list.add(parent);
-                }
-            }
-        }
-        return (BreakpointContainer[]) list.toArray(new BreakpointContainer[list.size()]);
-    }
-        
-    private BreakpointContainer getRemoveableParent(TreeItem item, IBreakpoint breakpoint) {
-        TreeItem parentItem = item.getParentItem();
-        if (parentItem != null) {
-            Object data = parentItem.getData();
-            if (data instanceof BreakpointContainer) {
-                BreakpointContainer container = (BreakpointContainer) data;
-                if (container.getOrganizer().canRemove(breakpoint, container.getCategory())) {
-                    return container;
-                }
-            }
-            return getRemoveableParent(parentItem, breakpoint);
-        }
-        return null;
-    }    
-    
-    public boolean isShowingGroups() {
-        return fContentProvider.isShowingGroups();
-    }
-    
-	/**
-	 * Returns a list containing a point indicating the breakpoint to attempt to
-	 * select a list of groups to select, or <code>null</code> if none.
-	 * 
-	 * @return
-	 */
-	public List getSelectionState() {
-		Tree tree = ((BreakpointsViewer)getViewer()).getTree();
-		TreeItem[] selection = tree.getSelection();
-		if (selection.length > 0) {
-			List list = new ArrayList();
-			TreeItem[] roots = tree.getItems();
-			TreeItem first = getFirstSelectedItem(roots, selection);
-			if (first.getData() instanceof IBreakpoint) {
-				TreeItem parentItem = first.getParentItem();
-				if (parentItem == null) {
-					list.add(new Point(0, indexOf(roots, first)));
-				} else {
-					int breakpointIndex = indexOf(parentItem.getItems(),first);
-					while (parentItem.getParentItem() != null) {
-						parentItem = parentItem.getParentItem();
-					}
-					int groupIndex = indexOf(roots, parentItem);
-					list.add(new Point(groupIndex, breakpointIndex));
-				}
-			} else {
-				for (int i = 0; i < selection.length; i++) {
-					TreeItem item = selection[i];
-					list.add(item.getData());
-				}
-			}
-			return list;
-		}
-		return null;
-	}
-	
-	private TreeItem getFirstSelectedItem(TreeItem[] items, TreeItem[] selection) {
-		for (int i = 0; i < items.length; i++) {
-			TreeItem item = items[i];
-			if (indexOf(selection, item) >= 0) {
-				return item;
-			}
-			TreeItem first = getFirstSelectedItem(item.getItems(), selection);
-			if (first != null) {
-				return first;
-			}
-		}
-		return null;
-	}
-	
-	private int indexOf(Object[] list, Object object) {
-		for (int i = 0; i < list.length; i++) {
-			if (object.equals(list[i])) {
-				return i;
-			}
-		}
-		return -1;
-	}
-    
-	public void preserveSelectionState(List state) {
-		if (state != null) {
-			if (state.get(0) instanceof Point) {
-				Point p = (Point) state.get(0);
-				int groupIndex = p.x;
-				int bpIndex = p.y;
-				Tree tree = ((BreakpointsViewer)getViewer()).getTree();
-				TreeItem[] roots = tree.getItems();
-				TreeItem selection = null;
-				if (roots.length > 0 && groupIndex < roots.length) {
-					TreeItem group = roots[groupIndex];
-					if (group.getData() instanceof IBreakpoint) {
-						if (bpIndex < roots.length) {
-							selection = roots[bpIndex];
-						} else {
-							selection = roots[roots.length -1];
-						}
-					} else {
-						TreeItem[] bps = group.getItems();
-						while (bps.length > 0 && !(bps[0].getData() instanceof IBreakpoint)) {
-							group = bps[0];
-							bps = group.getItems();
-						}
-						if (bpIndex < bps.length) {
-							selection = bps[bpIndex];
-						} else if (bps.length > 0) {
-							selection = bps[bps.length - 1];
-						} else {
-							selection = group;
-						}
-					}
-				}
-				if (selection != null) {
-					((BreakpointsViewer)getViewer()).setSelection(selection);
-				}
-			} else {
-				getViewer().setSelection(new StructuredSelection(state));
-			}
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewEventHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewEventHandler.java
deleted file mode 100644
index 7fc3083..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewEventHandler.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Brock Janiczak - bug 57999
- *     Michael Fraenkel - bug 84385
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointManagerListener;
-import org.eclipse.debug.core.IBreakpointsListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jface.viewers.AbstractTreeViewer;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.activities.ActivityManagerEvent;
-import org.eclipse.ui.activities.IActivityManagerListener;
-import org.eclipse.ui.activities.IWorkbenchActivitySupport;
-
-/**
- * Handles breakpoint events and activity manager events (which can affect grouping),
- * updating the breakpoints view and viewer.
- */
-public class BreakpointsViewEventHandler implements IBreakpointsListener, IActivityManagerListener, IBreakpointManagerListener {
-
-	private BreakpointsView fView;
-
-	/**
-	 * Constructs an event handler for the breakpoints view.
-	 */
-	public BreakpointsViewEventHandler(BreakpointsView view) {
-		fView= view;
-		IBreakpointManager breakpointManager = DebugPlugin.getDefault().getBreakpointManager();
-		breakpointManager.addBreakpointListener(this);
-		breakpointManager.addBreakpointManagerListener(this);
-		IWorkbenchActivitySupport activitySupport = PlatformUI.getWorkbench().getActivitySupport();
-		if (activitySupport != null) {
-			activitySupport.getActivityManager().addActivityManagerListener(this);
-		}
-	}
-	
-	/**
-	 * When this event handler is disposed, remove it as a listener.
-	 */
-	public void dispose() {
-		IBreakpointManager breakpointManager = DebugPlugin.getDefault().getBreakpointManager();
-		breakpointManager.removeBreakpointListener(this);
-		breakpointManager.removeBreakpointManagerListener(this);
-		IWorkbenchActivitySupport activitySupport = PlatformUI.getWorkbench().getActivitySupport();
-		if (activitySupport != null) {
-			activitySupport.getActivityManager().removeActivityManagerListener(this);
-		}
-	}
-
-	/**
-	 * @see IBreakpointsListener#breakpointsAdded(IBreakpoint[])
-	 */
-	public void breakpointsAdded(final IBreakpoint[] breakpoints) {
-		if (fView.isAvailable() && fView.isVisible()) {		
-			fView.asyncExec(new Runnable() {
-				public void run() {
-					if (fView.isAvailable()) {
-						CheckboxTreeViewer viewer = fView.getCheckboxViewer();
-                        viewer.getControl().setRedraw(false);
-                        BreakpointsContentProvider provider = (BreakpointsContentProvider)viewer.getContentProvider();
-                        provider.reorganize();
-                        
-						// This code is left in as a test case for platform bug 77075
-						//for (int i = 0; i < breakpoints.length; i++) { 
-							//viewer.expandToLevel(breakpoints[i], AbstractTreeViewer.ALL_LEVELS);
-						//}
-                        // expand as required
-                        for (int i = 0; i < breakpoints.length; i++) {
-                            IBreakpoint breakpoint = breakpoints[i];
-                            BreakpointContainer[] roots = provider.getRoots(breakpoint);
-                            if (roots != null) {
-                                for (int j = 0; j < roots.length; j++) {
-                                    viewer.expandToLevel(roots[i], AbstractTreeViewer.ALL_LEVELS);
-                                }
-                            }
-                        }
-                        fView.initializeCheckedState();
-                        viewer.setSelection(new StructuredSelection(breakpoints));
-                        viewer.getControl().setRedraw(true);
-						fView.updateObjects();
-					}
-				}
-			});
-		}
-	}
-
-	/**
-	 * @see IBreakpointsListener#breakpointsRemoved(IBreakpoint[], IMarkerDelta[])
-	 */
-	public void breakpointsRemoved(final IBreakpoint[] breakpoints, IMarkerDelta[] deltas) {
-		if (fView.isAvailable() && fView.isVisible()) {
-			fView.asyncExec(new Runnable() {
-				public void run() {
-					if (fView.isAvailable()) {
-						CheckboxTreeViewer viewer= (CheckboxTreeViewer)fView.getViewer();
-                        viewer.getControl().setRedraw(false);
-                        ((BreakpointsContentProvider)viewer.getContentProvider()).reorganize();
-                        fView.initializeCheckedState();
-                        viewer.getControl().setRedraw(true);
-						fView.updateObjects();
-					}
-				}
-			});
-		}
-	}
-
-	/**
-	 * @see IBreakpointsListener#breakpointsChanged(IBreakpoint[], IMarkerDelta[])
-	 */
-	public void breakpointsChanged(final IBreakpoint[] breakpoints, final IMarkerDelta[] deltas) {
-		if (fView.isAvailable() & fView.isVisible()) {
-			fView.asyncExec(new Runnable() {
-				public void run() {
-					if (fView.isAvailable()) {
-						CheckboxTreeViewer viewer = (CheckboxTreeViewer)fView.getViewer();
-                        viewer.getControl().setRedraw(false);
-                        BreakpointsContentProvider provider = (BreakpointsContentProvider) viewer.getContentProvider();
-                        Set updates = new HashSet();
-						for (int i = 0; i < breakpoints.length; i++) {
-							IBreakpoint breakpoint = breakpoints[i];
-                            viewer.update(breakpoint, null);
-                            BreakpointContainer[] containers = provider.getContainers(breakpoint);
-                            if (containers != null) {
-                                for (int j = 0; j < containers.length; j++ ) {
-                                    updates.add(containers[j]);
-                                }
-                            } else {
-                            	updates.add(breakpoint);
-                            }
-						}
-                        Object[] objects = updates.toArray();
-                        for (int i = 0; i < objects.length; i++) {
-                            fView.updateCheckedState(objects[i]);
-                        }
-                        viewer.getControl().setRedraw(true);
-						fView.updateObjects();
-					}
-				}
-			});
-		}
-	}
-
-	/**
-	 * When new activities are added or enabled, refresh the view contents to add/remove
-	 * breakpoints related to the affected activities.
-	 */
-	public void activityManagerChanged(final ActivityManagerEvent activityManagerEvent) {
-		if (fView.isAvailable() & fView.isVisible() && activityManagerEvent.haveEnabledActivityIdsChanged()) {
-			fView.asyncExec(new Runnable() {
-				public void run() {
-					fView.getViewer().refresh();
-				}
-			});
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IBreakpointManagerListener#breakpointManagerEnablementChanged(boolean)
-	 */
-	public void breakpointManagerEnablementChanged(boolean enabled) {
-		if (fView.isAvailable() & fView.isVisible()) {
-			fView.asyncExec(new Runnable() {
-				public void run() {
-					fView.getViewer().refresh();
-				}
-			});
-		}		
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewer.java
deleted file mode 100644
index d1b559d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/BreakpointsViewer.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.swt.widgets.Item;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.swt.widgets.Widget;
-
-/**
- * Breakpoints viewer.
- */
-public class BreakpointsViewer extends CheckboxTreeViewer {
-
-    /**
-     * Constructs a new breakpoints viewer with the given tree.
-     * 
-     * @param tree
-     */
-    public BreakpointsViewer(Tree tree) {
-        super(tree);
-    }
-    
-    /**
-     * Returns the selected items.
-     * 
-     * @return seleted items
-     */
-    public Item[] getSelectedItems() {
-        return getSelection(getControl());
-    }
-    
-    /**
-     * Returns the item assocaited with the given element, or <code>null</code>.
-     * 
-     * @param element element in breakpoints view
-     * @return item assocaited with the given element, or <code>null</code>
-     */
-    public Widget searchItem(Object element) {
-        return findItem(element);
-    }
-    
-    /**
-     * Refreshes the given item in the tree.
-     * 
-     * @param item item to refresh
-     */
-    public void refreshItem(TreeItem item) {
-        updateItem(item, item.getData());
-    }
-    
-    /**
-     * Returns a collection of currently visible breakpoints.
-     * 
-     * @return collection of currently visible breakpoints
-     */
-    public IBreakpoint[] getVisibleBreakpoints() {
-        IBreakpointManager manager= DebugPlugin.getDefault().getBreakpointManager();
-        Object[] elements= ((ITreeContentProvider)getContentProvider()).getElements(manager);
-        List list = new ArrayList();
-        for (int i = 0; i < elements.length; i++) {
-            TreeItem item = (TreeItem) searchItem(elements[i]);
-            if (item != null) {
-                collectExpandedBreakpoints(item, list);
-            }
-        }
-        return (IBreakpoint[]) list.toArray(new IBreakpoint[list.size()]);
-    }
-
-    /**
-     * Adds expanded breakpoints to the list. Traverses children of the given
-     * tree item if any.
-     * 
-     * @param item  
-     * @param list collection of visible breakpoints
-     */
-    private void collectExpandedBreakpoints(TreeItem item, List list) {
-        Object data = item.getData();
-        if (data instanceof IBreakpoint) {
-            list.add(data);
-            return;
-        }
-        if (item.getExpanded()) {
-            TreeItem[] items = item.getItems();
-            for (int i = 0; i < items.length; i++) {
-                collectExpandedBreakpoints(items[i], list);
-            }
-        }
-    }
-
-    /**
-     * Sets the selection to a specific tree item
-     * 
-     * @param item
-     */
-    protected void setSelection(TreeItem item) {
-    	getTree().setSelection(new TreeItem[]{item});
-    	updateSelection(getSelection());
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/FileBreakpointOrganizer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/FileBreakpointOrganizer.java
deleted file mode 100644
index bf2a4b3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/FileBreakpointOrganizer.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.ui.AbstractBreakpointOrganizerDelegate;
-
-/**
- * Breakpoint organizers for files.
- * 
- * @since 3.1
- */
-public class FileBreakpointOrganizer extends AbstractBreakpointOrganizerDelegate {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories(org.eclipse.debug.core.model.IBreakpoint)
-     */
-    public IAdaptable[] getCategories(IBreakpoint breakpoint) {
-        IMarker marker = breakpoint.getMarker();
-        if (marker != null) {
-            IResource resource = marker.getResource();
-            if (resource.getType() == IResource.FILE) {
-                return new IAdaptable[]{(IFile)resource};
-            }
-        }
-        return null;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/IBreakpointOrganizer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/IBreakpointOrganizer.java
deleted file mode 100644
index eefe1f7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/IBreakpointOrganizer.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.debug.ui.IBreakpointOrganizerDelegate;
-import org.eclipse.jface.resource.ImageDescriptor;
-
-/**
- * A breakpoint organizer is used to categorize breakpoints and provides
- * change notification when categorization has changed. Breakpoint organizers
- * are contributed via the <code>breakpointOrganizers</code> extension point.
- * <p>
- * This interface is not intended to be implemented. Clients contributing a breakpoint
- * organizer are intended to implement <code>IBreakpointOrganizerDelegate</code>.
- * </p>
- * @since 3.1
- */
-public interface IBreakpointOrganizer extends IBreakpointOrganizerDelegate {
-    
-    /**
-     * Returns a label for this breakpoint organizer.
-     * 
-     * @return a label for this breakpoint organizer
-     */
-    public String getLabel();
-    
-    /**
-     * Returns an image descriptor for this breakpoint organizer or <code>null</code>.
-     * 
-     * @return an image descriptor for this breakpoint organizer or <code>null</code>
-     */
-    public ImageDescriptor getImageDescriptor();
-    
-    /**
-     * Returns a unique identifier for this breakpoint organizer.
-     * 
-     * @return a unique identifier for this breakpoint organizer
-     */
-    public String getIdentifier();
-    
-    /**
-     * Returns the label for breakpoints that do not fall into a category
-     * for this organizer.
-     * 
-     * @return label for breakpoints that do not fall into a category
-     * for this organizer
-     */
-    public String getOthersLabel();
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/OtherBreakpointCategory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/OtherBreakpointCategory.java
deleted file mode 100644
index 388bb54..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/OtherBreakpointCategory.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Category for breakpoints in "other" categories.
- */
-public class OtherBreakpointCategory extends PlatformObject implements IWorkbenchAdapter {
-    
-    private static Map fOthers = new HashMap();
-    private IBreakpointOrganizer fOrganizer;
-    
-    
-    public static IAdaptable[] getCategories(IBreakpointOrganizer organizer) {
-        IAdaptable[] others = (IAdaptable[]) fOthers.get(organizer);
-        if (others == null) {
-            others = new IAdaptable[]{new OtherBreakpointCategory(organizer)};
-            fOthers.put(organizer, others);
-        }
-        return others;
-    }
-    
-    /**
-     * Constructs an 'other' category for the given organizer.
-     * 
-     * @param organizer breakpoint organizer
-     */
-    private OtherBreakpointCategory(IBreakpointOrganizer organizer) {
-        fOrganizer = organizer;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-     */
-    public Object[] getChildren(Object o) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-     */
-    public ImageDescriptor getImageDescriptor(Object object) {
-        return DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_VIEW_BREAKPOINTS);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-     */
-    public String getLabel(Object o) {
-        return fOrganizer.getOthersLabel();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-     */
-    public Object getParent(Object o) {
-        return null;
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    public boolean equals(Object obj) {
-        if (obj instanceof OtherBreakpointCategory) {
-            OtherBreakpointCategory category = (OtherBreakpointCategory) obj;
-            return fOrganizer.equals(category.fOrganizer);
-        }
-        return false;
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#hashCode()
-     */
-    public int hashCode() {
-        return fOrganizer.hashCode();
-    }    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/ProjectBreakpointOrganizer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/ProjectBreakpointOrganizer.java
deleted file mode 100644
index 03d8ebd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/ProjectBreakpointOrganizer.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.ui.AbstractBreakpointOrganizerDelegate;
-
-/**
- * Breakpoint organizers for projects.
- * 
- * @since 3.1
- */
-public class ProjectBreakpointOrganizer extends AbstractBreakpointOrganizerDelegate {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories(org.eclipse.debug.core.model.IBreakpoint)
-     */
-    public IAdaptable[] getCategories(IBreakpoint breakpoint) {
-        IMarker marker = breakpoint.getMarker();
-        if (marker != null) {
-            IProject project = marker.getResource().getProject();
-            if (project != null) {
-                return new IAdaptable[]{project};
-            }
-        }
-        return null;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetBreakpointOrganizer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetBreakpointOrganizer.java
deleted file mode 100644
index 7b7d49d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetBreakpointOrganizer.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.AbstractBreakpointOrganizerDelegate;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.IWorkingSetManager;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Breakpoint organizers for resource working sets.
- * 
- * @since 3.1
- */
-public class WorkingSetBreakpointOrganizer extends AbstractBreakpointOrganizerDelegate implements IPropertyChangeListener {
-    
-    IWorkingSetManager fWorkingSetManager = PlatformUI.getWorkbench().getWorkingSetManager();
-    
-    /**
-     * Constructs a working set breakpoint organizer. Listens for changes in
-     * working sets and fires property change notification.
-     */
-    public WorkingSetBreakpointOrganizer() {    
-        fWorkingSetManager.addPropertyChangeListener(this);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories(org.eclipse.debug.core.model.IBreakpoint)
-     */
-    public IAdaptable[] getCategories(IBreakpoint breakpoint) {
-    	List result = new ArrayList();
-        List parents = new ArrayList();
-        IResource res = breakpoint.getMarker().getResource();
-        parents.add(res);
-        while (res != null) {
-            res = res.getParent();
-            if (res != null) {
-                parents.add(res);
-            }
-        }
-        IWorkingSet[] workingSets = fWorkingSetManager.getWorkingSets();
-        for (int i = 0; i < workingSets.length; i++) {
-            IWorkingSet set = workingSets[i];
-            if (!IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(set.getId())) {
-		        IAdaptable[] elements = set.getElements();
-		        for (int j = 0; j < elements.length; j++) {
-		            IAdaptable adaptable = elements[j];
-		            IResource resource = (IResource) adaptable.getAdapter(IResource.class);
-		            if (resource != null) {
-		                if (parents.contains(resource)) {
-		                	result.add(new WorkingSetCategory(set));
-		                	break;
-		                }
-		            }
-		        }
-            }
-        }
-        return (IAdaptable[]) result.toArray(new IAdaptable[result.size()]);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#dispose()
-     */
-    public void dispose() {
-        fWorkingSetManager.removePropertyChangeListener(this);
-        fWorkingSetManager = null;
-        super.dispose();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-     */
-    public void propertyChange(PropertyChangeEvent event) {
-        IWorkingSet set = null;
-        if (event.getNewValue() instanceof IWorkingSet) {
-            set = (IWorkingSet) event.getNewValue();
-        } else if (event.getOldValue() instanceof IWorkingSet) {
-            set = (IWorkingSet) event.getOldValue();
-        }
-        if (set != null && !IInternalDebugUIConstants.ID_BREAKPOINT_WORKINGSET.equals(set.getId())) {
-            fireCategoryChanged(new WorkingSetCategory(set));
-        }
-    }
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetCategory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetCategory.java
deleted file mode 100644
index 4875db7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/breakpoints/WorkingSetCategory.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.breakpoints;
-
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.model.IWorkbenchAdapter2;
-
-/**
- * Represents a breakpoint category for a specific working set.
- */
-public class WorkingSetCategory extends PlatformObject implements IWorkbenchAdapter, IWorkbenchAdapter2 {
-    
-    private IWorkingSet fWorkingSet;
-
-    /**
-     * Constructs a new workings set category for the given working set.
-     * 
-     * @param workingSet
-     */
-    public WorkingSetCategory(IWorkingSet workingSet) {
-        fWorkingSet = workingSet;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-     */
-    public Object[] getChildren(Object o) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-     */
-    public ImageDescriptor getImageDescriptor(Object object) {
-        return fWorkingSet.getImage();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-     */
-    public String getLabel(Object o) {
-        StringBuffer name = new StringBuffer(fWorkingSet.getName());
-        if (isDefault()) {
-            name.append(DebugUIViewsMessages.WorkingSetCategory_0); //$NON-NLS-1$
-        }
-        return name.toString();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-     */
-    public Object getParent(Object o) {
-        return null;
-    }
-    
-    /**
-     * Returns the working set for this category.
-     * 
-     * @return
-     */
-    public IWorkingSet getWorkingSet() {
-        return fWorkingSet;
-    }
-
-    /* (non-Javadoc)
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    public boolean equals(Object obj) {
-        if (obj instanceof WorkingSetCategory) {
-            WorkingSetCategory category = (WorkingSetCategory) obj;
-            return category.getWorkingSet().equals(fWorkingSet);
-        }
-        return false;
-    }
-    
-    /* (non-Javadoc)
-     * @see java.lang.Object#hashCode()
-     */
-    public int hashCode() {
-        return fWorkingSet.hashCode();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getForeground(java.lang.Object)
-     */
-    public RGB getForeground(Object element) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getBackground(java.lang.Object)
-     */
-    public RGB getBackground(Object element) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getFont(java.lang.Object)
-     */
-    public FontData getFont(Object element) {
-        if (isDefault()) {
-            FontData[] fontData = JFaceResources.getDefaultFont().getFontData();
-            if (fontData != null && fontData.length > 0) {
-                FontData data = fontData[0];
-                data.setStyle(SWT.BOLD);
-                return data;
-            }
-        }
-        return null;
-    }
-    
-    /**
-     * Whether this is the default breakpoint working set.
-     * 
-     * @return whether this is the default breakpoint working set
-     */
-    private boolean isDefault() {
-        return fWorkingSet.equals(BreakpointSetOrganizer.getDefaultWorkingSet());
-    }
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleLineNotifier.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleLineNotifier.java
deleted file mode 100644
index ba41912..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleLineNotifier.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.console.IConsoleLineTracker;
-import org.eclipse.debug.ui.console.IConsoleLineTrackerExtension;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IPatternMatchListener;
-import org.eclipse.ui.console.PatternMatchEvent;
-import org.eclipse.ui.console.TextConsole;
-
-/**
- * Tracks text appended to the console and notifies listeners in terms of whole
- * lines.
- */
-public class ConsoleLineNotifier implements IPatternMatchListener, IPropertyChangeListener {
-	/**
-	 * Console listeners
-	 */
-	private List fListeners = new ArrayList(2);
-
-	/**
-	 * The console this notifier is tracking 
-	 */
-	private ProcessConsole fConsole = null;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IPatternMatchListenerDelegate#connect(org.eclipse.ui.console.TextConsole)
-	 */
-	public void connect(TextConsole console) {
-	    if (console instanceof ProcessConsole) {
-	        fConsole = (ProcessConsole)console;
-
-	        IConsoleLineTracker[] lineTrackers = DebugUIPlugin.getDefault().getProcessConsoleManager().getLineTrackers(fConsole.getProcess());
-	        for (int i = 0; i < lineTrackers.length; i++) {
-	            lineTrackers[i].init(fConsole);
-                addConsoleListener(lineTrackers[i]);
-            }
-	        
-	        fConsole.addPropertyChangeListener(this);
-	    }
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IPatternMatchListener#disconnect()
-	 */
-	public synchronized void disconnect() {
-	    if (fConsole == null) {
-	        return; //already disconnected
-	    }
-
-        int size = fListeners.size();
-        for (int i=0; i<size; i++) {
-            IConsoleLineTracker tracker = (IConsoleLineTracker) fListeners.get(i);
-            tracker.dispose();
-        }
-	
-	    fConsole.removePropertyChangeListener(this);
-	    
-	    fListeners = null;
-	    fConsole = null;
-	}
-		
-	/**
-	 * Notification the console's streams have been closed
-	 */
-	public synchronized void streamsClosed() {
-	    try {
-	        if (fConsole != null) {
-	            IDocument document = fConsole.getDocument();
-	            if (document != null) {
-	                int lastLine = document.getNumberOfLines()-1;	       
-	                if (document.getLineDelimiter(lastLine) == null) {
-	                    IRegion lineInformation = document.getLineInformation(lastLine);
-	                    lineAppended(lineInformation);
-	                }
-	            }
-	        }
-	    } catch (BadLocationException e) {
-	    }
-	    
-        int size = fListeners.size();
-        for (int i=0; i<size; i++) {
-            Object obj = fListeners.get(i);
-	        if (obj instanceof IConsoleLineTrackerExtension) {
-	            ((IConsoleLineTrackerExtension)obj).consoleClosed();
-	        }
-	    }
-	}
-	
-	/**
-	 * Adds the given listener to the list of listeners notified when a line of
-	 * text is appended to the console.
-	 * 
-	 * @param listener
-	 */
-	public void addConsoleListener(IConsoleLineTracker listener) {
-        if (!fListeners.contains(listener))
-            fListeners.add(listener);
-	}
-	
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#matchFound(org.eclipse.ui.console.PatternMatchEvent)
-     */
-    public void matchFound(PatternMatchEvent event) {
-        try  {
-            IDocument document = fConsole.getDocument();
-            int lineOfOffset = document.getLineOfOffset(event.getOffset());
-            String delimiter = document.getLineDelimiter(lineOfOffset);
-            int strip = delimiter==null ? 0 : delimiter.length();
-            Region region = new Region(event.getOffset(), event.getLength()-strip); 
-            lineAppended(region);
-        } catch (BadLocationException e) {}
-    }
-    
-    public void lineAppended(IRegion region) {
-        int size = fListeners.size();
-        for (int i=0; i<size; i++) {
-            IConsoleLineTracker tracker = (IConsoleLineTracker) fListeners.get(i);
-            tracker.lineAppended(region);
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-     */
-    public void propertyChange(PropertyChangeEvent event) {
-        if(event.getProperty().equals(IConsoleConstants.P_CONSOLE_OUTPUT_COMPLETE)) {
-            streamsClosed();
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#getPattern()
-     */
-    public String getPattern() {
-        return ".*\\r(\\n?)|.*\\n"; //$NON-NLS-1$
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#getCompilerFlags()
-     */
-    public int getCompilerFlags() {
-        return 0;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#getLineQualifier()
-     */
-    public String getLineQualifier() {
-        return null;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.java
deleted file mode 100644
index 1f61c49..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-import org.eclipse.osgi.util.NLS;
-
-public class ConsoleMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.views.console.ConsoleMessages";//$NON-NLS-1$
-
-	public static String ConsoleRemoveAllTerminatedAction_0;
-	public static String ConsoleRemoveAllTerminatedAction_1;
-
-	public static String ConsoleTerminateAction_0;
-	public static String ConsoleTerminateAction_1;
-
-	public static String ProcessConsole_0;
-
-	public static String ProcessConsole_1;
-	public static String ProcessConsole_2;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, ConsoleMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.properties
deleted file mode 100644
index 297a42a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleMessages.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################

-# Copyright (c) 2000, 2005 IBM Corporation and others.

-# All rights reserved. This program and the accompanying materials

-# are made available under the terms of the Eclipse Public License v1.0

-# which accompanies this distribution, and is available at

-# http://www.eclipse.org/legal/epl-v10.html

-#

-# Contributors:

-#     IBM Corporation - initial API and implementation

-###############################################################################

-

-ConsoleRemoveAllTerminatedAction_0=&Remove All Terminated

-ConsoleRemoveAllTerminatedAction_1=Remove All Terminated Launches

-

-ConsoleTerminateAction_0=&Terminate

-ConsoleTerminateAction_1=Terminate

-

-ProcessConsole_0=<terminated> {0}

-

-ProcessConsole_1=[Console output redirected to file:{0}]\n

-ProcessConsole_2=[Invalid file specified for console output: {0}]\n

diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleRemoveAllTerminatedAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleRemoveAllTerminatedAction.java
deleted file mode 100644
index 57c0e24..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleRemoveAllTerminatedAction.java
+++ /dev/null
@@ -1,106 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchesListener;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.actions.RemoveAllTerminatedAction;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * ConsoleRemoveAllTerminatedAction
- */
-public class ConsoleRemoveAllTerminatedAction extends Action implements IUpdate, IDebugEventSetListener, ILaunchesListener {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		for (int i = 0; i < events.length; i++) {
-			DebugEvent event = events[i];
-			Object source = event.getSource();
-			if (event.getKind() == DebugEvent.TERMINATE && (source instanceof IDebugTarget || source instanceof IProcess)) {
-				update();
-			}
-		}
-		
-	}
-
-	public void dispose() {
-		DebugPlugin.getDefault().removeDebugEventListener(this);
-		DebugPlugin.getDefault().getLaunchManager().removeLaunchListener(this);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		ILaunch[] launches = DebugPlugin.getDefault().getLaunchManager().getLaunches();
-		for (int i = 0; i < launches.length; i++) {
-			ILaunch launch = launches[i];
-			if (launch.isTerminated()) {
-				setEnabled(true);
-				return;
-			}
-		}
-		setEnabled(false);
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		ILaunch[] launches = DebugPlugin.getDefault().getLaunchManager().getLaunches();
-		RemoveAllTerminatedAction.removeTerminatedLaunches(launches);
-	}
-	
-	public ConsoleRemoveAllTerminatedAction() {
-		super(ConsoleMessages.ConsoleRemoveAllTerminatedAction_0); //$NON-NLS-1$
-		setToolTipText(ConsoleMessages.ConsoleRemoveAllTerminatedAction_1); //$NON-NLS-1$
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_REMOVE_ALL));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_REMOVE_ALL));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_REMOVE_ALL));
-		DebugPlugin.getDefault().addDebugEventListener(this);
-		DebugPlugin.getDefault().getLaunchManager().addLaunchListener(this);
-		update();
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.ILaunchesListener#launchesRemoved(org.eclipse.debug.core.ILaunch[])
-     */
-    public void launchesRemoved(ILaunch[] launches) {
-       if (isEnabled()) {
-           update();
-       }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.ILaunchesListener#launchesAdded(org.eclipse.debug.core.ILaunch[])
-     */
-    public void launchesAdded(ILaunch[] launches) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.ILaunchesListener#launchesChanged(org.eclipse.debug.core.ILaunch[])
-     */
-    public void launchesChanged(ILaunch[] launches) {
-    }	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateAction.java
deleted file mode 100644
index ff91d30..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateAction.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * ConsoleTerminateAction
- */
-public class ConsoleTerminateAction extends Action implements IUpdate {
-
-	private ProcessConsole fConsole;
-
-	/**
-	 * Creates a terminate action for the console 
-	 */
-	public ConsoleTerminateAction(ProcessConsole console) {
-		super(ConsoleMessages.ConsoleTerminateAction_0); //$NON-NLS-1$
-		fConsole = console;
-		setToolTipText(ConsoleMessages.ConsoleTerminateAction_1); //$NON-NLS-1$
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_TERMINATE));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_TERMINATE));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_TERMINATE));
-		update();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		IProcess process = fConsole.getProcess(); 
-		setEnabled(process.canTerminate());
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		try {
-			fConsole.getProcess().terminate();
-		} catch (DebugException e) {
-			// TODO: report exception
-		}
-	}
-	
-	public void dispose() {
-	    fConsole = null;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateActionDelegate.java
deleted file mode 100644
index 5cf0c11..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ConsoleTerminateActionDelegate.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-import org.eclipse.debug.internal.ui.actions.TerminateActionDelegate;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleView;
-
-/**
- * Terminate action delegate for the console. The selection must be computed
- * by getting the process from the associated process console, rather than
- * the selection in the view (which is text viewer/text selection).
- * 
- * @since 3.1
- */
-public class ConsoleTerminateActionDelegate extends TerminateActionDelegate {
-    
-    private IConsoleView fConsoleView;      
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.actions.AbstractDebugActionDelegate#getSelection()
-     */
-    protected IStructuredSelection getSelection() {
-        IConsole console = fConsoleView.getConsole();
-        if (console instanceof ProcessConsole) {
-            return new StructuredSelection(((ProcessConsole)console).getProcess());
-        }
-        return StructuredSelection.EMPTY;
-    }
-    
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-     */
-    public void init(IViewPart view) {
-        fConsoleView = (IConsoleView) view;
-        super.init(view);
-    }
-
-    public synchronized void dispose() {
-        super.dispose();
-        IViewPart view = getView();
-        if (view != null) {
-            view.getSite().getSelectionProvider().removeSelectionChangedListener((ISelectionChangedListener) getAction());
-        }
-    }
-    
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java
deleted file mode 100644
index 85eca18..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsole.java
+++ /dev/null
@@ -1,810 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IStorage;
-import org.eclipse.core.resources.IWorkspace;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.variables.IStringVariableManager;
-import org.eclipse.core.variables.VariablesPlugin;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.IStreamListener;
-import org.eclipse.debug.core.model.IFlushableStreamMonitor;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStreamMonitor;
-import org.eclipse.debug.core.model.IStreamsProxy;
-import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.console.IConsole;
-import org.eclipse.debug.ui.console.IConsoleColorProvider;
-import org.eclipse.debug.ui.console.IConsoleHyperlink;
-import org.eclipse.debug.ui.console.IConsoleLineTracker;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-import org.eclipse.ui.IStorageEditorInput;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IHyperlink;
-import org.eclipse.ui.console.IOConsole;
-import org.eclipse.ui.console.IOConsoleInputStream;
-import org.eclipse.ui.console.IOConsoleOutputStream;
-import org.eclipse.ui.console.IPatternMatchListener;
-import org.eclipse.ui.console.PatternMatchEvent;
-import org.eclipse.ui.console.TextConsole;
-import org.eclipse.ui.editors.text.EditorsUI;
-import org.eclipse.ui.part.FileEditorInput;
-
-/**
- * A console for a system process
- * <p>
- * Clients may instantiate this class. This class is not intended for
- * sub-classing.
- * </p>
- * 
- * @since 3.0
- */
-public class ProcessConsole extends IOConsole implements IConsole, IDebugEventSetListener, IPropertyChangeListener {
-    private IProcess fProcess = null;
-
-    private List fStreamListeners = new ArrayList();
-
-    private IConsoleColorProvider fColorProvider;
-
-    private IOConsoleInputStream fInput;
-
-    private FileOutputStream fFileOutputStream;
-
-    private boolean fAllocateConsole = true;
-
-    private boolean fStreamsClosed = false;
-
-    /**
-     * Proxy to a console document
-     */
-    public ProcessConsole(IProcess process, IConsoleColorProvider colorProvider) {
-        this(process, colorProvider, null);
-    }
-
-    public ProcessConsole(IProcess process, IConsoleColorProvider colorProvider, String encoding) {
-        super("", IDebugUIConstants.ID_PROCESS_CONSOLE_TYPE, null, encoding, true); //$NON-NLS-1$
-        fProcess = process;
-
-        ILaunchConfiguration configuration = process.getLaunch().getLaunchConfiguration();
-        String file = null;
-        boolean append = false;
-        if (configuration != null) {
-            try {
-                file = configuration.getAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_FILE, (String) null);
-                if (file != null) {
-                    IStringVariableManager stringVariableManager = VariablesPlugin.getDefault().getStringVariableManager();
-                    file = stringVariableManager.performStringSubstitution(file);
-                    append = configuration.getAttribute(IDebugUIConstants.ATTR_APPEND_TO_FILE, false);
-                }
-            } catch (CoreException e) {
-            }
-        }
-
-        if (file != null) {
-            IWorkspace workspace = ResourcesPlugin.getWorkspace();
-            IWorkspaceRoot root = workspace.getRoot();
-            Path path = new Path(file);
-            IFile ifile = root.getFileForLocation(path);
-            String message = null;
-            
-            try {
-                String fileLoc = null;
-                if (ifile != null) {
-                    if (append && ifile.exists()) {
-                        ifile.appendContents(new ByteArrayInputStream(new byte[0]), true, true, new NullProgressMonitor());
-                    } else {
-                        if (ifile.exists()) {
-                            ifile.delete(true, new NullProgressMonitor());
-                        }
-                        ifile.create(new ByteArrayInputStream(new byte[0]), true, new NullProgressMonitor());
-                    }
-                }
-                
-                File outputFile = new File(file);
-                fFileOutputStream = new FileOutputStream(outputFile, append);
-                fileLoc = outputFile.getAbsolutePath();
-                
-                message = MessageFormat.format(ConsoleMessages.ProcessConsole_1, new String[] {fileLoc}); //$NON-NLS-1$
-                addPatternMatchListener(new ConsoleLogFilePatternMatcher(fileLoc));
-            } catch (FileNotFoundException e) {
-                message = MessageFormat.format(ConsoleMessages.ProcessConsole_2, new String[] {file}); //$NON-NLS-1$
-            } catch (CoreException e) {
-                DebugUIPlugin.log(e);
-            }
-            if (message != null) { 
-                try { 
-                    IOConsoleOutputStream stream = newOutputStream();                    
-                    stream.write(message);
-                    stream.close();
-                } catch (IOException e) {
-                    DebugUIPlugin.log(e);
-                }
-            }
-            try {
-                fAllocateConsole = configuration.getAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_CONSOLE, true);
-            } catch (CoreException e) {
-            }
-        }
-
-        fColorProvider = colorProvider;
-        fInput = getInputStream();
-        colorProvider.connect(fProcess, this);
-
-        setName(computeName());
-
-        Color color = fColorProvider.getColor(IDebugUIConstants.ID_STANDARD_INPUT_STREAM);
-        fInput.setColor(color);
-
-        IConsoleLineTracker[] lineTrackers = DebugUIPlugin.getDefault().getProcessConsoleManager().getLineTrackers(process);
-        if (lineTrackers.length > 0) {
-            addPatternMatchListener(new ConsoleLineNotifier());
-        }
-    }
-
-    /**
-     * Computes and returns the image descriptor for this console.
-     * 
-     * @return an image descriptor for this console or <code>null</code>
-     */
-    protected ImageDescriptor computeImageDescriptor() {
-        ILaunchConfiguration configuration = getProcess().getLaunch().getLaunchConfiguration();
-        if (configuration != null) {
-            ILaunchConfigurationType type;
-            try {
-                type = configuration.getType();
-                return DebugPluginImages.getImageDescriptor(type.getIdentifier());
-            } catch (CoreException e) {
-                DebugUIPlugin.log(e);
-            }
-        }
-        return null;
-    }
-
-    /**
-     * Computes and returns the current name of this console.
-     * 
-     * @return a name for this console
-     */
-    protected String computeName() {
-        String label = null;
-        IProcess process = getProcess();
-        ILaunchConfiguration config = process.getLaunch().getLaunchConfiguration();
-
-        label = process.getAttribute(IProcess.ATTR_PROCESS_LABEL);
-        if (label == null) {
-            if (config == null) {
-                label = process.getLabel();
-            } else {
-                // check if PRIVATE config
-                if (DebugUITools.isPrivate(config)) {
-                    label = process.getLabel();
-                } else {
-                    String type = null;
-                    try {
-                        type = config.getType().getName();
-                    } catch (CoreException e) {
-                    }
-                    StringBuffer buffer = new StringBuffer();
-                    buffer.append(config.getName());
-                    if (type != null) {
-                        buffer.append(" ["); //$NON-NLS-1$
-                        buffer.append(type);
-                        buffer.append("] "); //$NON-NLS-1$
-                    }
-                    buffer.append(process.getLabel());
-                    label = buffer.toString();
-                }
-            }
-        }
-
-        if (process.isTerminated()) {
-            return MessageFormat.format(ConsoleMessages.ProcessConsole_0, new String[] { label }); //$NON-NLS-1$
-        }
-        return label;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-     */
-    public void propertyChange(PropertyChangeEvent evt) {
-        String property = evt.getProperty();
-        IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore();
-        if (property.equals(IDebugPreferenceConstants.CONSOLE_WRAP) || property.equals(IDebugPreferenceConstants.CONSOLE_WIDTH)) {
-            boolean fixedWidth = store.getBoolean(IDebugPreferenceConstants.CONSOLE_WRAP);
-            if (fixedWidth) {
-                int width = store.getInt(IDebugPreferenceConstants.CONSOLE_WIDTH);
-                setConsoleWidth(width);
-            } else {
-                setConsoleWidth(-1);
-            }
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_LIMIT_CONSOLE_OUTPUT) || property.equals(IDebugPreferenceConstants.CONSOLE_HIGH_WATER_MARK) || property.equals(IDebugPreferenceConstants.CONSOLE_LOW_WATER_MARK)) {
-            boolean limitBufferSize = store.getBoolean(IDebugPreferenceConstants.CONSOLE_LIMIT_CONSOLE_OUTPUT);
-            if (limitBufferSize) {
-                int highWater = store.getInt(IDebugPreferenceConstants.CONSOLE_HIGH_WATER_MARK);
-                int lowWater = store.getInt(IDebugPreferenceConstants.CONSOLE_LOW_WATER_MARK);
-                if (highWater > lowWater) {
-                    setWaterMarks(lowWater, highWater);
-                }
-            } else {
-                setWaterMarks(-1, -1);
-            }
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH)) {
-            int tabWidth = store.getInt(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH);
-            setTabWidth(tabWidth);
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_OPEN_ON_OUT)) {
-            boolean activateOnOut = store.getBoolean(IDebugPreferenceConstants.CONSOLE_OPEN_ON_OUT);
-            IOConsoleOutputStream stream = getStream(IDebugUIConstants.ID_STANDARD_OUTPUT_STREAM);
-            if (stream != null) {
-                stream.setActivateOnWrite(activateOnOut);
-            }
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_OPEN_ON_ERR)) {
-            boolean activateOnErr = store.getBoolean(IDebugPreferenceConstants.CONSOLE_OPEN_ON_ERR);
-            IOConsoleOutputStream stream = getStream(IDebugUIConstants.ID_STANDARD_ERROR_STREAM);
-            if (stream != null) {
-                stream.setActivateOnWrite(activateOnErr);
-            }
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_SYS_OUT_COLOR)) {
-            IOConsoleOutputStream stream = getStream(IDebugUIConstants.ID_STANDARD_OUTPUT_STREAM);
-            if (stream != null) {
-                stream.setColor(fColorProvider.getColor(IDebugUIConstants.ID_STANDARD_OUTPUT_STREAM));
-            }
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_SYS_ERR_COLOR)) {
-            IOConsoleOutputStream stream = getStream(IDebugUIConstants.ID_STANDARD_ERROR_STREAM);
-            if (stream != null) {
-                stream.setColor(fColorProvider.getColor(IDebugUIConstants.ID_STANDARD_ERROR_STREAM));
-            }
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_SYS_IN_COLOR)) {
-            if (fInput != null) {
-                fInput.setColor(fColorProvider.getColor(IDebugUIConstants.ID_STANDARD_INPUT_STREAM));
-            }
-        } else if (property.equals(IDebugPreferenceConstants.CONSOLE_FONT)) {
-            setFont(JFaceResources.getFont(IDebugPreferenceConstants.CONSOLE_FONT));
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.debug.ui.console.IConsole#getStream(java.lang.String)
-     */
-    public IOConsoleOutputStream getStream(String streamIdentifier) {
-        for (Iterator i = fStreamListeners.iterator(); i.hasNext();) {
-            StreamListener listener = (StreamListener) i.next();
-            if (listener.fStreamId.equals(streamIdentifier)) {
-                return listener.fStream;
-            }
-        }
-        return null;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.debug.ui.console.IConsole#getProcess()
-     */
-    public IProcess getProcess() {
-        return fProcess;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.console.AbstractConsole#dispose()
-     */
-    protected void dispose() {
-        super.dispose();
-        fColorProvider.disconnect();
-        closeStreams();
-        disposeStreams();
-        DebugPlugin.getDefault().removeDebugEventListener(this);
-        DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-        JFaceResources.getFontRegistry().removeListener(this);
-    }
-
-    private synchronized void closeStreams() {
-        if (fStreamsClosed) {
-            return;
-        }
-        for (Iterator i = fStreamListeners.iterator(); i.hasNext();) {
-            StreamListener listener = (StreamListener) i.next();
-            listener.closeStream();
-        }
-        if (fFileOutputStream != null) {
-	        synchronized (fFileOutputStream) {
-	            try {
-	                fFileOutputStream.flush();
-	                fFileOutputStream.close();
-	            } catch (IOException e) {
-	            }
-	        }
-        }
-        try {
-            fInput.close();
-        } catch (IOException e) {
-        }
-        fStreamsClosed  = true;
-    }
-
-    private synchronized void disposeStreams() {
-        for (Iterator i = fStreamListeners.iterator(); i.hasNext();) {
-            StreamListener listener = (StreamListener) i.next();
-            listener.dispose();
-        }
-        fFileOutputStream = null;
-        fInput = null;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.console.AbstractConsole#init()
-     */
-    protected void init() {
-        super.init();
-        if (fProcess.isTerminated()) {
-            closeStreams();
-            resetName();
-        } else {
-            DebugPlugin.getDefault().addDebugEventListener(this);
-        }
-        IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore();
-        store.addPropertyChangeListener(this);
-        JFaceResources.getFontRegistry().addListener(this);
-        if (store.getBoolean(IDebugPreferenceConstants.CONSOLE_WRAP)) {
-            setConsoleWidth(store.getInt(IDebugPreferenceConstants.CONSOLE_WIDTH));
-        }
-        setTabWidth(store.getInt(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH));
-
-        if (store.getBoolean(IDebugPreferenceConstants.CONSOLE_LIMIT_CONSOLE_OUTPUT)) {
-            int highWater = store.getInt(IDebugPreferenceConstants.CONSOLE_HIGH_WATER_MARK);
-            int lowWater = store.getInt(IDebugPreferenceConstants.CONSOLE_LOW_WATER_MARK);
-            setWaterMarks(lowWater, highWater);
-        }
-
-        DebugUIPlugin.getStandardDisplay().asyncExec(new Runnable() {
-            public void run() {
-                setFont(JFaceResources.getFont(IDebugPreferenceConstants.CONSOLE_FONT));
-            }
-        });
-    }
-
-    /**
-     * Notify listeners when name changes.
-     * 
-     * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-     */
-    public void handleDebugEvents(DebugEvent[] events) {
-        for (int i = 0; i < events.length; i++) {
-            DebugEvent event = events[i];
-            if (event.getSource().equals(getProcess())) {
-
-                if (event.getKind() == DebugEvent.TERMINATE) {
-                    closeStreams();
-                    DebugPlugin.getDefault().removeDebugEventListener(this);
-                }
-
-                resetName();
-            }
-        }
-    }
-
-    private void resetName() {
-        final String newName = computeName();
-        String name = getName();
-        if (!name.equals(newName)) {
-            Runnable r = new Runnable() {
-                public void run() {
-                    setName(newName);
-                    warnOfContentChange();
-                }
-            };
-            DebugUIPlugin.getStandardDisplay().asyncExec(r);
-        }
-    }
-
-    private void warnOfContentChange() {
-        ConsolePlugin.getDefault().getConsoleManager().warnOfContentChange(DebugUITools.getConsole(fProcess));
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.debug.ui.console.IConsole#connect(org.eclipse.debug.core.model.IStreamsProxy)
-     */
-    public void connect(IStreamsProxy streamsProxy) {
-        IPreferenceStore store = DebugUIPlugin.getDefault().getPreferenceStore();
-        IStreamMonitor streamMonitor = streamsProxy.getErrorStreamMonitor();
-        if (streamMonitor != null) {
-            connect(streamMonitor, IDebugUIConstants.ID_STANDARD_ERROR_STREAM);
-            IOConsoleOutputStream stream = getStream(IDebugUIConstants.ID_STANDARD_ERROR_STREAM);
-            if (stream != null) {
-                stream.setActivateOnWrite(store.getBoolean(IDebugPreferenceConstants.CONSOLE_OPEN_ON_ERR));
-            }
-        }
-        streamMonitor = streamsProxy.getOutputStreamMonitor();
-        if (streamMonitor != null) {
-            connect(streamMonitor, IDebugUIConstants.ID_STANDARD_OUTPUT_STREAM);
-            IOConsoleOutputStream stream = getStream(IDebugUIConstants.ID_STANDARD_OUTPUT_STREAM);
-            if (stream != null) {
-                stream.setActivateOnWrite(store.getBoolean(IDebugPreferenceConstants.CONSOLE_OPEN_ON_OUT));
-            }
-        }
-        InputReadJob readJob = new InputReadJob(streamsProxy);
-        readJob.setSystem(true);
-        readJob.schedule();
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.debug.ui.console.IConsole#connect(org.eclipse.debug.core.model.IStreamMonitor,
-     *      java.lang.String)
-     */
-    public void connect(IStreamMonitor streamMonitor, String streamIdentifier) {
-        IOConsoleOutputStream stream = null;
-        if (fAllocateConsole) {
-            stream = newOutputStream();
-            Color color = fColorProvider.getColor(streamIdentifier);
-            stream.setColor(color);
-        }
-
-        synchronized (streamMonitor) {
-            StreamListener listener = new StreamListener(streamIdentifier, streamMonitor, stream);
-            fStreamListeners.add(listener);
-        }
-
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.debug.ui.console.IConsole#addLink(org.eclipse.debug.ui.console.IConsoleHyperlink,
-     *      int, int)
-     */
-    public void addLink(IConsoleHyperlink link, int offset, int length) {
-        try {
-            addHyperlink(link, offset, length);
-        } catch (BadLocationException e) {
-            DebugUIPlugin.log(e);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.debug.ui.console.IConsole#addLink(org.eclipse.ui.console.IHyperlink,
-     *      int, int)
-     */
-    public void addLink(IHyperlink link, int offset, int length) {
-        try {
-            addHyperlink(link, offset, length);
-        } catch (BadLocationException e) {
-            DebugUIPlugin.log(e);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.debug.ui.console.IConsole#getRegion(org.eclipse.debug.ui.console.IConsoleHyperlink)
-     */
-    public IRegion getRegion(IConsoleHyperlink link) {
-        return super.getRegion(link);
-    }
-
-    private class StreamListener implements IStreamListener {
-
-        private IOConsoleOutputStream fStream;
-
-        private IStreamMonitor fStreamMonitor;
-
-        private String fStreamId;
-
-        private boolean fFlushed = false;
-
-        private boolean fListenerRemoved = false;
-
-        public StreamListener(String streamIdentifier, IStreamMonitor monitor, IOConsoleOutputStream stream) {
-            this.fStreamId = streamIdentifier;
-            this.fStreamMonitor = monitor;
-            this.fStream = stream;
-            fStreamMonitor.addListener(this);
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see org.eclipse.debug.core.IStreamListener#streamAppended(java.lang.String,
-         *      org.eclipse.debug.core.model.IStreamMonitor)
-         */
-        public void streamAppended(String text, IStreamMonitor monitor) {
-            if (fFlushed) {
-                try {
-                    if (fStream != null) {
-                        fStream.write(text);
-                    }
-                    if (fFileOutputStream != null) {
-                        synchronized (fFileOutputStream) {
-                            fFileOutputStream.write(text.getBytes());
-                        }
-                    }
-                } catch (IOException e) {
-                    DebugUIPlugin.log(e);
-                }
-            } else {
-                String contents = null;
-                synchronized (fStreamMonitor) {
-                    fFlushed = true;
-                    contents = fStreamMonitor.getContents();
-                    if (fStreamMonitor instanceof IFlushableStreamMonitor) {
-                        IFlushableStreamMonitor m = (IFlushableStreamMonitor) fStreamMonitor;
-                        m.flushContents();
-                        m.setBuffered(false);
-                    }
-                }
-                try {
-                    if (contents != null && contents.length() > 0) {
-                        if (fStream != null) {
-                            fStream.write(contents);
-                        }
-                        if (fFileOutputStream != null) {
-                            synchronized (fFileOutputStream) {
-                                fFileOutputStream.write(contents.getBytes());
-                            }
-                        }
-                    }
-                } catch (IOException e) {
-                    DebugUIPlugin.log(e);
-                }
-            }
-        }
-
-        public IStreamMonitor getStreamMonitor() {
-            return fStreamMonitor;
-        }
-
-        public void closeStream() {
-            if (fStreamMonitor == null) {
-                return;
-            }
-            synchronized (fStreamMonitor) {
-                fStreamMonitor.removeListener(this);
-                if (!fFlushed) {
-                    String contents = fStreamMonitor.getContents();
-                    streamAppended(contents, fStreamMonitor);
-                }
-                fListenerRemoved = true;
-                try {
-                    if (fStream != null) {
-                        fStream.close();
-                    }
-                } catch (IOException e) {
-                }
-            }
-        }
-
-        public void dispose() {
-            if (!fListenerRemoved) {
-                closeStream();
-            }
-            fStream = null;
-            fStreamMonitor = null;
-            fStreamId = null;
-        }
-    }
-
-    private class InputReadJob extends Job {
-
-        private IStreamsProxy streamsProxy;
-
-        InputReadJob(IStreamsProxy streamsProxy) {
-            super("Process Console Input Job"); //$NON-NLS-1$
-            this.streamsProxy = streamsProxy;
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        protected IStatus run(IProgressMonitor monitor) {
-            try {
-                byte[] b = new byte[1024];
-                int read = 0;
-                while (read >= 0) {
-                    read = fInput.read(b);
-                    if (read > 0) {
-                        String s = new String(b, 0, read);
-                        streamsProxy.write(s);
-                    }
-                }
-            } catch (IOException e) {
-                DebugUIPlugin.log(e);
-            }
-            return Status.OK_STATUS;
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.console.IConsole#getImageDescriptor()
-     */
-    public ImageDescriptor getImageDescriptor() {
-        if (super.getImageDescriptor() == null) {
-            setImageDescriptor(computeImageDescriptor());
-        }
-        return super.getImageDescriptor();
-    }
-
-    private class ConsoleLogFilePatternMatcher implements IPatternMatchListener {
-        String fFilePath;
-
-        public ConsoleLogFilePatternMatcher(String filePath) {
-            fFilePath = escape(filePath);
-        }
-        
-    	private String escape(String path) {
-    		StringBuffer buffer = new StringBuffer(path);
-    		int index = buffer.indexOf("\\"); //$NON-NLS-1$
-    		while (index >= 0) {
-    			buffer.insert(index, '\\');
-    			index = buffer.indexOf("\\", index+2); //$NON-NLS-1$
-    		}
-    		return buffer.toString();
-    	}
-    	
-        public String getPattern() {
-            return fFilePath;
-        }
-
-        public void matchFound(PatternMatchEvent event) {
-            try {
-                addHyperlink(new ConsoleLogFileHyperlink(fFilePath), event.getOffset(), event.getLength());
-                removePatternMatchListener(this);
-            } catch (BadLocationException e) {
-            }
-        }
-
-        public int getCompilerFlags() {
-            return 0;
-        }
-
-        public String getLineQualifier() {
-            return null;
-        }
-
-        public void connect(TextConsole console) {
-        }
-
-        public void disconnect() {
-        }
-    }
-
-    private class ConsoleLogFileHyperlink implements IHyperlink {
-        String fFilePath;
-        ConsoleLogFileHyperlink(String filePath) {
-            fFilePath = filePath;
-        }
-        
-        public void linkActivated() {
-            IEditorInput input;
-            Path path = new Path(fFilePath);
-            IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-            IFile ifile = root.getFileForLocation(path);
-            if (ifile == null) { // The file is not in the workspace
-                File file = new File(fFilePath);
-                LocalFileStorage lfs = new LocalFileStorage(file);
-                input = new StorageEditorInput(lfs, file);
-
-            } else {
-                input = new FileEditorInput(ifile);
-            }
-            
-            IWorkbenchPage activePage = DebugUIPlugin.getActiveWorkbenchWindow().getActivePage();
-            try {
-                activePage.openEditor(input, EditorsUI.DEFAULT_TEXT_EDITOR_ID, true);
-            } catch (PartInitException e) {
-            }
-        }
-        public void linkEntered() {
-        }
-        public void linkExited() {
-        }
-    }
-    
-    class StorageEditorInput extends PlatformObject implements IStorageEditorInput {
-        private File fFile;
-        private IStorage fStorage;
-        
-        public StorageEditorInput(IStorage storage, File file) {
-            fStorage = storage;
-            fFile = file;
-        }
-        
-        public IStorage getStorage() {
-            return fStorage;
-        }
-
-        public ImageDescriptor getImageDescriptor() {
-            return null;
-        }
-
-        public String getName() {
-            return getStorage().getName();
-        }
-
-        public IPersistableElement getPersistable() {
-            return null;
-        }
-
-        public String getToolTipText() {
-            return getStorage().getFullPath().toOSString();
-        }
-        
-        public boolean equals(Object object) {
-            return object instanceof StorageEditorInput &&
-             getStorage().equals(((StorageEditorInput)object).getStorage());
-        }
-        
-        public int hashCode() {
-            return getStorage().hashCode();
-        }
-
-        public boolean exists() {
-            return fFile.exists();
-        }
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsoleManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsoleManager.java
deleted file mode 100644
index d0c047f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsoleManager.java
+++ /dev/null
@@ -1,345 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchListener;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.console.ConsoleColorProvider;
-import org.eclipse.debug.ui.console.IConsoleColorProvider;
-import org.eclipse.debug.ui.console.IConsoleLineTracker;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleManager;
-
-/**
- * Creates documents for processes as they are registered with a launch.
- * The singleton manager is accessible from the debug UI plugin.
- */
-public class ProcessConsoleManager implements ILaunchListener {
-    
-    /**
-     * Console document content provider extensions, keyed by extension id
-     */
-    private Map fColorProviders;
-    
-    /**
-     * The default color provider. Used if no color provider is contributed
-     * for the given process type.
-     */
-    private IConsoleColorProvider fDefaultColorProvider;
-    
-    /**
-     * Console line trackers; keyed by process type to list of trackers (1:N) 
-     */
-    private Map fLineTrackers;
-    
-    /**
-     * Map of processes for a launch to compute removed processes
-     */
-    private Map fProcesses;
-    
-    
-    
-    /**
-     * @see ILaunchListener#launchRemoved(ILaunch)
-     */
-    public void launchRemoved(ILaunch launch) {
-        removeLaunch(launch);
-    }
-    
-    protected void removeLaunch(ILaunch launch) {
-        IProcess[] processes= launch.getProcesses(); 
-        for (int i= 0; i < processes.length; i++) {
-            IProcess iProcess = processes[i];
-            removeProcess(iProcess);
-        }		
-        if (fProcesses != null) {
-            fProcesses.remove(launch);
-        }
-    }
-    
-    /**
-     * Removes the console and document associated with the given process.
-     * 
-     * @param iProcess process to clean up
-     */
-    private void removeProcess(IProcess iProcess) {
-        IConsole console = getConsole(iProcess);
-        
-        if (console != null) {
-            IConsoleManager manager = ConsolePlugin.getDefault().getConsoleManager();
-            manager.removeConsoles(new IConsole[]{console});
-        }
-    }
-    
-    /**
-     * Returns the console for the given process, or <code>null</code> if none.
-     * 
-     * @param process
-     * @return the console for the given process, or <code>null</code> if none
-     */
-    public IConsole getConsole(IProcess process) {
-        IConsoleManager manager = ConsolePlugin.getDefault().getConsoleManager(); 
-        IConsole[] consoles = manager.getConsoles();
-        for (int i = 0; i < consoles.length; i++) {
-            IConsole console = consoles[i];
-            if (console instanceof ProcessConsole) {
-                ProcessConsole pc = (ProcessConsole)console;
-                if (pc.getProcess().equals(process)) {
-                    return pc;
-                }
-            }
-        }
-        return null;
-    }
-    
-    /**
-     * @see ILaunchListener#launchAdded(ILaunch)
-     */
-    public void launchAdded(ILaunch launch) {
-        launchChanged(launch);
-    }
-    
-    /**
-     * @see ILaunchListener#launchChanged(ILaunch)
-     */
-    public void launchChanged(final ILaunch launch) {
-        IProcess[] processes= launch.getProcesses();
-        for (int i= 0; i < processes.length; i++) {
-            if (getConsoleDocument(processes[i]) == null) {
-                IProcess process = processes[i];
-                if (process.getStreamsProxy() == null) {
-                    continue;
-                }
-                ILaunchConfiguration launchConfiguration = launch.getLaunchConfiguration();
-
-                //create a new console.
-                IConsoleColorProvider colorProvider = getColorProvider(process.getAttribute(IProcess.ATTR_PROCESS_TYPE));
-                String encoding = null;
-                try {
-                    if (launchConfiguration != null) {
-                        encoding = launchConfiguration.getAttribute(IDebugUIConstants.ATTR_CONSOLE_ENCODING, (String)null);
-                    }
-                } catch (CoreException e) {
-                }
-                ProcessConsole pc = new ProcessConsole(process, colorProvider, encoding);
-                pc.setAttribute(IDebugUIConstants.ATTR_CONSOLE_PROCESS, process);
-
-                //add new console to console manager.
-                ConsolePlugin.getDefault().getConsoleManager().addConsoles(new IConsole[]{pc});
-            }
-        }
-        List removed = getRemovedProcesses(launch);
-        if (removed != null) {
-            Iterator iterator = removed.iterator();
-            while (iterator.hasNext()) {
-                IProcess p = (IProcess) iterator.next();
-                removeProcess(p);
-            }
-        }
-    }
-    
-    /**
-     * Returns the document for the process, or <code>null</code>
-     * if none.
-     */
-    public IDocument getConsoleDocument(IProcess process) {
-        ProcessConsole console = (ProcessConsole) getConsole(process);
-        return (console != null ? console.getDocument() : null);
-    } 
-    
-    /**
-     * Called by the debug ui plug-in on startup.
-     * The console document manager starts listening for
-     * launches to be registered and initializes if any launches
-     * already exist.
-     */
-    public void startup() {
-        ILaunchManager launchManager= DebugPlugin.getDefault().getLaunchManager();
-        launchManager.addLaunchListener(this);	
-        
-        //set up the docs for launches already registered
-        ILaunch[] launches= launchManager.getLaunches();
-        for (int i = 0; i < launches.length; i++) {
-            launchAdded(launches[i]);
-        }
-    }
-    
-    /**
-     * Called by the debug ui plug-in on shutdown.
-     * The console document manager de-registers as a 
-     * launch listener and kills all existing console documents.
-     */
-    public void shutdown() {
-        ILaunchManager launchManager= DebugPlugin.getDefault().getLaunchManager();
-        ILaunch[] launches = launchManager.getLaunches();
-        for (int i = 0; i < launches.length; i++) {
-            ILaunch launch = launches[i];
-            removeLaunch(launch);
-        }
-        launchManager.removeLaunchListener(this);
-        if (fProcesses != null) {
-            fProcesses.clear();
-        }
-    }
-      
-    /**
-     * Opens the console view. If the view is already open, it is brought to the front.
-     */
-    protected void showConsole(final IProcess process) {
-        ConsolePlugin.getDefault().getConsoleManager().showConsoleView(getConsole(process));
-    }
-    
-    /**
-     * Returns a new console document color provider extension for the given
-     * process type, or <code>null</code> if none.
-     * 
-     * @param type corresponds to <code>IProcess.ATTR_PROCESS_TYPE</code>
-     * @return IConsoleColorProvider
-     */
-    public IConsoleColorProvider getColorProvider(String type) {
-        if (fColorProviders == null) {
-            fColorProviders = new HashMap();
-            IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_CONSOLE_COLOR_PROVIDERS);
-            IConfigurationElement[] elements = extensionPoint.getConfigurationElements();
-            for (int i = 0; i < elements.length; i++) {
-                IConfigurationElement extension = elements[i];
-                fColorProviders.put(extension.getAttributeAsIs("processType"), extension); //$NON-NLS-1$
-            }
-        }
-        IConfigurationElement extension = (IConfigurationElement)fColorProviders.get(type);
-        if (extension != null) {
-            try {
-                Object colorProvider = extension.createExecutableExtension("class"); //$NON-NLS-1$
-                if (colorProvider instanceof IConsoleColorProvider) {
-                    return (IConsoleColorProvider)colorProvider;
-                } 
-                DebugUIPlugin.logErrorMessage(MessageFormat.format(
-                		"Extension {0} must specify an instanceof IConsoleColorProvider for class attribute.", //$NON-NLS-1$
-                		new String[]{extension.getDeclaringExtension().getUniqueIdentifier()}));
-            } catch (CoreException e) {
-                DebugUIPlugin.log(e);
-            }
-        }
-        //no color provider found of specified type, return default color provider.
-        if (fDefaultColorProvider == null) {
-            fDefaultColorProvider = new ConsoleColorProvider();
-        }
-        return fDefaultColorProvider;
-    } 
-    
-    /**
-     * Returns the Line Trackers for a given process type.
-     * @param process The process for which line trackers are required.
-     * @return An array of line trackers which match the given process type.
-     */
-    public IConsoleLineTracker[] getLineTrackers(IProcess process) {
-        String type = process.getAttribute(IProcess.ATTR_PROCESS_TYPE);
-        
-        if (fLineTrackers == null) {
-            fLineTrackers = new HashMap();
-            IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.EXTENSION_POINT_CONSOLE_LINE_TRACKERS);
-            IConfigurationElement[] elements = extensionPoint.getConfigurationElements();
-            for (int i = 0; i < elements.length; i++) {
-                IConfigurationElement extension = elements[i];
-                String processType = extension.getAttributeAsIs("processType"); //$NON-NLS-1$
-                List list = (List)fLineTrackers.get(processType);
-                if (list == null) {
-                    list = new ArrayList();
-                    fLineTrackers.put(processType, list);
-                }
-                list.add(extension);
-            }
-        }
-        
-        ArrayList trackers = new ArrayList();
-        if (type != null) {
-            List lineTrackerExtensions = (List) fLineTrackers.get(type);
-            if(lineTrackerExtensions != null) {   
-                for(Iterator i = lineTrackerExtensions.iterator(); i.hasNext(); ) {
-                    IConfigurationElement element = (IConfigurationElement) i.next();
-                    try {
-                        trackers.add(element.createExecutableExtension("class")); //$NON-NLS-1$
-                    } catch (CoreException e) {
-                        DebugUIPlugin.log(e);
-                    }
-                }
-            }
-        }
-        return (IConsoleLineTracker[]) trackers.toArray(new IConsoleLineTracker[0]);
-    }
-    
-    /**
-     * Returns the processes that have been removed from the given
-     * launch, or <code>null</code> if none.
-     * 
-     * @param launch launch that has changed
-     * @return removed processes or <code>null</code>
-     */
-    private List getRemovedProcesses(ILaunch launch) {
-        List removed = null;
-        if (fProcesses == null) {
-            fProcesses = new HashMap();
-        }
-        IProcess[] old = (IProcess[]) fProcesses.get(launch);
-        IProcess[] curr = launch.getProcesses();
-        if (old != null) {
-            for (int i = 0; i < old.length; i++) {
-                IProcess process = old[i];
-                if (!contains(curr, process)) {
-                    if (removed == null) {
-                        removed = new ArrayList();
-                    }
-                    removed.add(process);
-                }
-            }
-        }
-        // update cache with current processes
-        fProcesses.put(launch, curr);
-        return removed;
-    }
-    
-    /**
-     * Returns whether the given object is contained in the list.
-     * 
-     * @param list list to search
-     * @param object object to search for
-     * @return whether the given object is contained in the list
-     */
-    private boolean contains(Object[] list, Object object) {
-        for (int i = 0; i < list.length; i++) {
-            Object object2 = list[i];
-            if (object2.equals(object)) {
-                return true;
-            }
-        }
-        return false;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java
deleted file mode 100644
index 2468b8a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-import java.io.IOException;
-import java.util.Map;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStreamsProxy;
-import org.eclipse.debug.core.model.IStreamsProxy2;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.commands.AbstractHandler;
-import org.eclipse.ui.commands.ExecutionException;
-import org.eclipse.ui.commands.HandlerSubmission;
-import org.eclipse.ui.commands.IWorkbenchCommandSupport;
-import org.eclipse.ui.commands.Priority;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsolePageParticipant;
-import org.eclipse.ui.console.IConsoleView;
-import org.eclipse.ui.contexts.EnabledSubmission;
-import org.eclipse.ui.contexts.IWorkbenchContextSupport;
-import org.eclipse.ui.part.IPageBookViewPage;
-import org.eclipse.ui.part.IShowInSource;
-import org.eclipse.ui.part.IShowInTargetList;
-import org.eclipse.ui.part.ShowInContext;
-
-/**
- * Creates and manages process console specific actions
- * 
- * @since 3.1
- */
-public class ProcessConsolePageParticipant implements IConsolePageParticipant, IShowInSource, IShowInTargetList, IDebugEventSetListener, ISelectionListener {
-	
-	// actions
-	private ConsoleTerminateAction fTerminate;
-	private ConsoleRemoveAllTerminatedAction fRemoveTerminated;
-
-    private ProcessConsole fConsole;
-
-    private IPageBookViewPage fPage;
-
-    private IConsoleView fView;
-    
-    private EOFHandler fEOFHandler;
-    private EnabledSubmission fEnabledSubmission;
-    private HandlerSubmission fHandlerSubmission;
-	/**
-	 * Handler to send EOF
-	 */	
-	private class EOFHandler extends AbstractHandler {
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.commands.IHandler#execute(java.lang.Object)
-		 */
-		public Object execute(Map parameter) throws ExecutionException {
-            IStreamsProxy proxy = getProcess().getStreamsProxy();
-            if (proxy instanceof IStreamsProxy2) {
-                IStreamsProxy2 proxy2 = (IStreamsProxy2) proxy;
-                try {
-                    proxy2.closeInputStream();
-                } catch (IOException e1) {
-                }
-            }
-			return null;
-		}
-		
-	}    
-    		
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsolePageParticipant#init(IPageBookViewPage, IConsole)
-     */
-    public void init(IPageBookViewPage page, IConsole console) {
-        fPage = page;
-        fConsole = (ProcessConsole) console;
-        
-        fRemoveTerminated = new ConsoleRemoveAllTerminatedAction();
-        fTerminate = new ConsoleTerminateAction(fConsole);
-        
-        fView = (IConsoleView) fPage.getSite().getPage().findView(IConsoleConstants.ID_CONSOLE_VIEW);
-        
-        DebugPlugin.getDefault().addDebugEventListener(this);
-        fPage.getSite().getPage().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-        
-        // contribute to toolbar
-        IActionBars actionBars = fPage.getSite().getActionBars();
-        configureToolBar(actionBars.getToolBarManager());
-        
-        // create handler and submissions for EOF
-        fEOFHandler = new EOFHandler();
-        fEnabledSubmission = new EnabledSubmission(IConsoleConstants.ID_CONSOLE_VIEW, page.getSite().getShell(), null, "org.eclipse.debug.ui.console"); //$NON-NLS-1$
-        fHandlerSubmission = new HandlerSubmission(IConsoleConstants.ID_CONSOLE_VIEW, page.getSite().getShell(), null, "org.eclipse.debug.ui.commands.eof", fEOFHandler, Priority.MEDIUM); //$NON-NLS-1$
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsolePageParticipant#dispose()
-     */
-    public void dispose() {
-        deactivated();
-        fPage.getSite().getPage().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		DebugPlugin.getDefault().removeDebugEventListener(this);
-		if (fRemoveTerminated != null) {
-			fRemoveTerminated.dispose();
-			fRemoveTerminated = null;
-		}
-		if (fTerminate != null) {
-		    fTerminate.dispose();
-		    fTerminate = null;
-		}
-		fConsole = null;
-    }
-
-    /**
-     * Contribute actions to the toolbar
-     */
-    protected void configureToolBar(IToolBarManager mgr) {
-		mgr.appendToGroup(IConsoleConstants.LAUNCH_GROUP, fTerminate);
-		mgr.appendToGroup(IConsoleConstants.LAUNCH_GROUP, fRemoveTerminated);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-     */
-    public Object getAdapter(Class required) {
-        if (IShowInSource.class.equals(required)) {
-            return this;
-        }
-        if (IShowInTargetList.class.equals(required)) {
-            return this; 
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.IShowInSource#getShowInContext()
-     */
-    public ShowInContext getShowInContext() {
-        IProcess process = getProcess();
-        if (process == null) {
-            return null;
-        } 
-        IDebugTarget target = (IDebugTarget)process.getAdapter(IDebugTarget.class);
-        ISelection selection = null;
-        if (target == null) {
-            selection = new StructuredSelection(process);
-        } else {
-            selection = new StructuredSelection(target);
-        }
-        return new ShowInContext(null, selection);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.IShowInTargetList#getShowInTargetIds()
-     */
-    public String[] getShowInTargetIds() {
-        return new String[] {IDebugUIConstants.ID_DEBUG_VIEW};
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-     */
-    public void handleDebugEvents(DebugEvent[] events) {
-        for (int i = 0; i < events.length; i++) {
-            DebugEvent event = events[i];
-            if (event.getSource().equals(getProcess())) {
-                Runnable r = new Runnable() {
-                    public void run() {
-                        if (fTerminate != null) {
-                            fTerminate.update();
-                        }
-                    }
-                };
-                
-                DebugUIPlugin.getStandardDisplay().asyncExec(r);           
-            }
-        }
-    }
-    
-    protected IProcess getProcess() {
-        return fConsole != null ? fConsole.getProcess() : null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-     */
-    public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-        if (fView != null && getProcess().equals(DebugUITools.getCurrentProcess())) {
-            fView.display(fConsole);
-        }
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsolePageParticipant#activated()
-     */
-    public void activated() {
-        // add EOF submissions
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		IWorkbenchCommandSupport commandSupport = workbench.getCommandSupport();
-		IWorkbenchContextSupport contextSupport = workbench.getContextSupport();
-		contextSupport.addEnabledSubmission(fEnabledSubmission);
-		commandSupport.addHandlerSubmission(fHandlerSubmission);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsolePageParticipant#deactivated()
-     */
-    public void deactivated() {
-        // remove EOF submissions
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		IWorkbenchCommandSupport commandSupport = workbench.getCommandSupport();
-		IWorkbenchContextSupport contextSupport = workbench.getContextSupport();
-		commandSupport.removeHandlerSubmission(fHandlerSubmission);
-		contextSupport.removeEnabledSubmission(fEnabledSubmission);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessTypePropertyTester.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessTypePropertyTester.java
deleted file mode 100644
index e04b807..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessTypePropertyTester.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.console;
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.ui.console.TextConsole;
-
-/**
- * Tests if a process type matches the expected value.
- * 
- * @since 3.1
- */
-public class ProcessTypePropertyTester extends PropertyTester {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
-     */
-    public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
-        boolean testPassed = false;
-        if (receiver instanceof TextConsole) {
-            TextConsole console = (TextConsole) receiver;
-            IProcess process = (IProcess) console.getAttribute(IDebugUIConstants.ATTR_CONSOLE_PROCESS);
-            if (process != null) {
-                String type = process.getAttribute(IProcess.ATTR_PROCESS_TYPE);
-                testPassed = (type != null && type.equals(expectedValue));
-            }
-        }
-        return testPassed;
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionInformationControl.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionInformationControl.java
deleted file mode 100644
index ce6ba83..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionInformationControl.java
+++ /dev/null
@@ -1,325 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.expression;
-
-import java.util.Iterator;
-import java.util.Map;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.VariablesViewModelPresentation;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.internal.ui.views.variables.IndexedVariablePartition;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.debug.internal.ui.views.variables.VariablesViewer;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IValueDetailListener;
-import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.PartInitException;
-
-/**
- * A popup that displays an expression with a details area.
- * <p>
- * Clients may instantiate this class; this class is not intended
- * to be subclassed.
- * </p>
- * @since 3.0
- */
-public class ExpressionInformationControl extends PopupInformationControl {
-	private static final int[] DEFAULT_SASH_WEIGHTS = new int[] {90, 10};
-	private static final String SASH_KEY = "SASH_WEIGHT";  //$NON-NLS-1$
-	
-	private IWorkbenchPage page;
-	private IExpression exp;
-	private VariablesViewer viewer;
-	private IDebugModelPresentation modelPresentation;
-	private StyledText valueDisplay;
-	private SashForm sashForm;
-	private Tree tree;
-
-	/**
-	 * Constructs a popup to display an expression. A label and handler
-	 * are provided to move the expression to the Expressions view when
-	 * dismissed with the given command.
-	 * 
-	 * @param page the workbench page on which the popup should be displayed
-	 * @param exp the expression to display
-	 * @param commandId identifier of the command used to dismiss the popup 
-	 */
-	public ExpressionInformationControl(IWorkbenchPage page, IExpression exp, String commandId) {
-		super(page.getWorkbenchWindow().getShell(), DebugUIViewsMessages.ExpressionInformationControl_5, commandId); //$NON-NLS-1$
-		this.page = page;
-		this.exp = exp;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setInformation(String)
-	 */
-	public void setInformation(String information) {
-		VariablesView view = getViewToEmulate();
-		viewer.getContentProvider();
-		if (view != null) {
-			StructuredViewer structuredViewer = (StructuredViewer) view.getViewer();
-			if (structuredViewer != null) {
-				ViewerFilter[] filters = structuredViewer.getFilters();
-				for (int i = 0; i < filters.length; i++) {
-					viewer.addFilter(filters[i]);
-				}
-			}
-			((RemoteExpressionsContentProvider)viewer.getContentProvider()).setShowLogicalStructure(view.isShowLogicalStructure());
-			Map map = view.getPresentationAttributes(exp.getModelIdentifier());
-			Iterator iterator = map.keySet().iterator();
-			while (iterator.hasNext()) {
-				String key = (String)iterator.next();
-				modelPresentation.setAttribute(key, map.get(key));
-			}
-		}
-		viewer.setInput(new Object[]{exp});
-		viewer.expandToLevel(2);
-	}
-
-	private VariablesView getViewToEmulate() {
-		VariablesView expressionsView = (VariablesView)page.findView(IDebugUIConstants.ID_EXPRESSION_VIEW);
-		if (expressionsView != null && expressionsView.isVisible()) {
-			return expressionsView;
-		}
-		VariablesView variablesView = (VariablesView)page.findView(IDebugUIConstants.ID_VARIABLE_VIEW);
-		if (variablesView != null && variablesView.isVisible()) {
-			return variablesView;
-		}
-		if (expressionsView != null) {
-			return expressionsView;
-		} 
-		return variablesView;
-	}
-
-	/*
-	 * TODO: This method not used yet
-	 */
-	protected int[] getInitialSashWeights() {
-		IDialogSettings settings = getDialogSettings();
-		int[] sashes = new int[2];
-		try {
-			sashes[0] = settings.getInt(SASH_KEY+"_ONE");  //$NON-NLS-1$
-			sashes[1] = settings.getInt(SASH_KEY+"_TWO");  //$NON-NLS-1$
-			return sashes;
-		} catch (NumberFormatException nfe) {
-		} 
-		
-		return DEFAULT_SASH_WEIGHTS;
-	}
-	
-	private void updateValueDisplay(IValue val) {
-		IValueDetailListener valueDetailListener = new IValueDetailListener() {
-			public void detailComputed(IValue value, final String result) {
-				Display.getDefault().asyncExec(new Runnable() {
-					public void run() {
-                        if (!valueDisplay.isDisposed()) {
-                        	String text = result;
-                        	int max = DebugUIPlugin.getDefault().getPreferenceStore().getInt(IInternalDebugUIConstants.PREF_MAX_DETAIL_LENGTH);
-							if (max > 0 && result.length() > max) {
-								text = result.substring(0, max) + "..."; //$NON-NLS-1$
-							}
-                            valueDisplay.setText(text);
-                        }
-					}
-				});
-			}
-		};
-		modelPresentation.computeDetail(val, valueDetailListener);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.actions.PopupInformationControl#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createControl(Composite parent) {
-		Composite composite = new Composite(parent, parent.getStyle());
-		GridLayout layout = new GridLayout();
-		composite.setLayout(layout);
-		composite.setLayoutData(new GridData(GridData.FILL_BOTH));
-
-		sashForm = new SashForm(composite, parent.getStyle());
-		sashForm.setOrientation(SWT.VERTICAL);
-		sashForm.setLayoutData(new GridData(GridData.FILL_BOTH));
-        
-        page = DebugUIPlugin.getActiveWorkbenchWindow().getActivePage();
-        VariablesView view = getViewToEmulate();
-        IWorkbenchPartSite site = null;
-        if (view != null) {
-            site = view.getSite();
-        } else {
-            site = page.getActivePart().getSite();
-        }
-               
-		viewer = new VariablesViewer(sashForm, SWT.NO_TRIM, null);
-        viewer.setContentProvider(new ExpressionPopupContentProvider(viewer, site, view));
-		modelPresentation = new VariablesViewModelPresentation();
-		viewer.setLabelProvider(modelPresentation);
-		
-		valueDisplay = new StyledText(sashForm, SWT.NO_TRIM | SWT.WRAP | SWT.V_SCROLL);
-		valueDisplay.setEditable(false);
-		
-		tree = viewer.getTree();
-		tree.addSelectionListener(new SelectionListener() {
-			public void widgetSelected(SelectionEvent e) {
-				try {
-					TreeItem[] selections = tree.getSelection();
-					Object data = selections[selections.length-1].getData();
-					
-					IValue val = null;
-					if (data instanceof IndexedVariablePartition) {
-						// no details for parititions
-						return;
-					}
-					if (data instanceof IVariable) {						
-						val = ((IVariable)data).getValue();
-					} else if (data instanceof IExpression) {
-						val = ((IExpression)data).getValue();
-					}
-					if (val == null) {
-						return;
-					}			
-					
-					updateValueDisplay(val);
-				} catch (DebugException ex) {
-					DebugUIPlugin.log(ex);
-				}
-				
-			}
-
-			public void widgetDefaultSelected(SelectionEvent e) {
-			}			
-		});
-		
-		Color background = parent.getDisplay().getSystemColor(SWT.COLOR_INFO_BACKGROUND);
-		Color foreground = parent.getDisplay().getSystemColor(SWT.COLOR_INFO_FOREGROUND);
-		tree.setForeground(foreground);
-		tree.setBackground(background);
-		composite.setForeground(foreground);
-		composite.setBackground(background);
-		valueDisplay.setForeground(foreground);
-		valueDisplay.setBackground(background);
-		
-		//sashForm.setWeights(getInitialSashWeights());
-		sashForm.setWeights(DEFAULT_SASH_WEIGHTS);		
-		
-		return tree;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#computeSizeHint()
-	 */
-	public Point computeSizeHint() {
-		Point persistedSize = getInitialSize();
-		if (persistedSize != null) {
-			return persistedSize;
-		}
-		
-		int height = 0;
-		int width = 0;
-		int itemCount = 0;
-		
-		TreeItem[] items = tree.getItems();
-		GC gc = new GC(tree);
-		for (int i=0; i<items.length; i++) {
-			width = Math.max (width, calculateWidth(items[i], gc));
-			itemCount++;
-			
-			// do the same for the children because we expand the first level.
-			TreeItem[] children = items[i].getItems();
-			for (int j = 0; j < children.length; j++) {
-				width = Math.max(width, calculateWidth(children[j], gc));
-				itemCount++;
-			}
-			
-		}
-		gc.dispose ();
-		width += 40; // give a little extra space
-		
-		height = itemCount * tree.getItemHeight() + 90;
-		if (width > 300) {
-			width = 300;
-		}
-		if (height > 300) {
-			height = 300;
-		}
-		return shell.computeSize(width, height, true);
-	}
-	
-	private int calculateWidth (TreeItem item, GC gc) {
-		int width = 0;
-		Image image = item.getImage ();
-		String text = item.getText ();
-		if (image != null) width = image.getBounds ().width + 2;
-		if (text != null && text.length () > 0) width += gc.stringExtent (text).x;
-		return width;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControlExtension#hasContents()
-	 */
-	public boolean hasContents() {
-		return (viewer != null);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.actions.PopupInformationControl#performCommand()
-	 */
-	protected void performCommand() {
-		DebugPlugin.getDefault().getExpressionManager().addExpression(exp);	
-		IViewPart part = page.findView(IDebugUIConstants.ID_EXPRESSION_VIEW);
-		if (part == null) {
-			try {
-				page.showView(IDebugUIConstants.ID_EXPRESSION_VIEW);
-			} catch (PartInitException e) {
-			}
-		} else {
-			page.bringToTop(part);
-		}
-	}
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.text.IInformationControl#dispose()
-     */
-    public void dispose() {
-        super.dispose();
-        if (modelPresentation != null) {
-            modelPresentation.dispose();
-        }
-        exp.dispose();
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionPopupContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionPopupContentProvider.java
deleted file mode 100644
index 9284505..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionPopupContentProvider.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.expression;
-
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.IWorkbenchPartSite;
-
-
-public class ExpressionPopupContentProvider extends RemoteExpressionsContentProvider {
-	
-	private Object input = null;
-	
-	public ExpressionPopupContentProvider(RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-		super(viewer, site, view);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-	 */
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		super.inputChanged(viewer, oldInput, newInput);
-		input = newInput;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-	 */
-	public Object[] getElements(Object parent) {
-		if (parent == input) {
-			return (Object[]) input;
-		}
-		return super.getElements(parent);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionView.java
deleted file mode 100644
index 713bc2d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionView.java
+++ /dev/null
@@ -1,252 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.expression;
-
- 
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IErrorReportingExpression;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.internal.ui.views.DebugViewInterimLabelProvider;
-import org.eclipse.debug.internal.ui.views.DebugViewLabelDecorator;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.internal.ui.views.variables.AvailableLogicalStructuresAction;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariablesContentProvider;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.debug.internal.ui.views.variables.VariablesViewEventHandler;
-import org.eclipse.debug.internal.ui.views.variables.VariablesViewMessages;
-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.viewers.IBaseLabelProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPart;
- 
-/**
- * Displays expressions and their values with a detail
- * area.
- */
-public class ExpressionView extends VariablesView {
-	
-	/**
-	 * A decorating label provider which provides color for expressions.
-	 */
-	protected class ExpressionViewDecoratingLabelProvider extends VariablesView.VariablesViewDecoratingLabelProvider {
-		/**
-		 * @see org.eclipse.jface.viewers.IColorProvider#getForeground(java.lang.Object)
-		 */
-		public Color getForeground(Object element) {
-			boolean expressionWithError= false;
-			IErrorReportingExpression expression= null;
-			if (element instanceof IErrorReportingExpression) {
-				expression= (IErrorReportingExpression) element;
-			} else if (element instanceof String) {
-				Object parent= ((ITreeContentProvider)getVariablesViewer().getContentProvider()).getParent(element);
-				if (parent instanceof IErrorReportingExpression) {
-					expression= (IErrorReportingExpression) parent;
-				}
-			}
-			if (expression != null && expression.hasErrors()) {
-				expressionWithError= true;
-			}
-			if (expressionWithError) {
-				return Display.getDefault().getSystemColor(SWT.COLOR_RED);
-			}
-			return super.getForeground(element);
-		}
-
-		public ExpressionViewDecoratingLabelProvider(StructuredViewer viewer, ILabelProvider provider, DebugViewLabelDecorator decorator) {
-			super(viewer, provider, decorator);
-		}
-	}
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#createLabelProvider()
-	 */
-	protected IBaseLabelProvider createLabelProvider(StructuredViewer viewer) {
-		return new ExpressionViewDecoratingLabelProvider(viewer, new DebugViewInterimLabelProvider(getModelPresentation()), new DebugViewLabelDecorator(getModelPresentation()));
-	}
-
-	/**
-	 * Creates this view's content provider.
-	 * 
-	 * @return a content provider
-	 */
-	protected RemoteVariablesContentProvider createContentProvider(Viewer viewer) {
-		return new RemoteExpressionsContentProvider((RemoteTreeViewer)viewer, getSite(), this);
-	}
-	
-	/**
-	 * Creates this view's event handler.
-	 * 
-	 * @return an event handler
-	 */
-	protected VariablesViewEventHandler createEventHandler() {
-		return new ExpressionViewEventHandler(this);
-	}		
-	
-	/**
-	 * @see AbstractDebugView#getHelpContextId()
-	 */
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.EXPRESSION_VIEW;		
-	}	
-	
-	/**
-	 * Initializes the viewer input on creation
-	 */
-	protected void setInitialContent() {
-		getViewer().setInput(DebugPlugin.getDefault().getExpressionManager());
-	}	
-	
-	/**
-	 * Configures the toolBar.
-	 * 
-	 * @param tbm The toolbar that will be configured
-	 */
-	protected void configureToolBar(IToolBarManager tbm) {
-		super.configureToolBar(tbm);
-		tbm.add(new Separator(IDebugUIConstants.EMPTY_EXPRESSION_GROUP));		
-		tbm.add(new Separator(IDebugUIConstants.EXPRESSION_GROUP));
-	}	
-	
-   /**
-	* Adds items to the tree viewer's context menu including any extension defined
-	* actions.
-	* 
-	* @param menu The menu to add the item to.
-	*/
-	protected void fillContextMenu(IMenuManager menu) {
-
-		menu.add(new Separator(IDebugUIConstants.EMPTY_EXPRESSION_GROUP));
-		menu.add(new Separator(IDebugUIConstants.EXPRESSION_GROUP));
-		menu.add(getAction("ChangeVariableValue")); //$NON-NLS-1$
-		IAction action = new AvailableLogicalStructuresAction(this);
-        if (action.isEnabled()) {
-            menu.add(action);
-        }
-		menu.add(new Separator(IDebugUIConstants.EMPTY_RENDER_GROUP));
-		menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-	}
-	
-	/** 
-	 * The <code>ExpressionView</code> listens for selection changes in the <code>LaunchesView</code>
-	 * to correctly set the editable state of the details pane. Updates the context of
-	 * watch expressions.
-	 *
-	 * @see ISelectionListener#selectionChanged(IWorkbenchPart, ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		if (!isVisible()) {
-			return;
-		}
-		if (selection instanceof IStructuredSelection) {
-			IDebugElement context = null;
-			IStructuredSelection ss = (IStructuredSelection)selection;
-			if (ss.size() < 2) {
-				Object object = ss.getFirstElement();
-				if (object instanceof IDebugElement) {
-					context= (IDebugElement) object;
-				} else if (object instanceof ILaunch) {
-					context= ((ILaunch) object).getDebugTarget();
-				}
-			}
-			// update watch expressions with new context
-			IExpression[] expressions = DebugPlugin.getDefault().getExpressionManager().getExpressions();
-			for (int i = 0; i < expressions.length; i++) {
-				IExpression expression = expressions[i];
-				if (expression instanceof IWatchExpression) {
-					((IWatchExpression)expression).setExpressionContext(context);
-				}
-			}			
-		} 
-
-		// update actions
-		updateAction("ContentAssist"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Do nothing - the input to this view never changes - 
-	 * it is always the expression manager.
-	 * 
-	 * @see VariablesView#setViewerInput(IStructuredSelection)
-	 */
-	protected void setViewerInput(IStructuredSelection ssel) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#treeSelectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-	 */
-	protected void treeSelectionChanged(SelectionChangedEvent event) {
-		super.treeSelectionChanged(event);
-		ISelection selection = event.getSelection();
-		if (selection instanceof IStructuredSelection) {
-			IStructuredSelection ssel= (IStructuredSelection)selection;
-			if (ssel.size() == 1) {
-				Object input= ssel.getFirstElement();
-				if (input instanceof IDebugElement) {
-					getDetailViewer().setEditable(true);
-					return;
-				} 
-			}
-		}
-		getDetailViewer().setEditable(false);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#getDetailPanePreferenceKey()
-	 */
-	protected String getDetailPanePreferenceKey() {
-		return IDebugPreferenceConstants.EXPRESSIONS_DETAIL_PANE_ORIENTATION;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#getToggleActionLabel()
-	 */
-	protected String getToggleActionLabel() {
-		return VariablesViewMessages.ExpressionView_4; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#createActions()
-	 */
-	protected void createActions() {
-		super.createActions();
-		setInitialContent();
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#restoreState()
-     */
-    protected void restoreState() {
-    }
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IViewPart#saveState(org.eclipse.ui.IMemento)
-     */
-    public void saveState(IMemento memento) {
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionViewEventHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionViewEventHandler.java
deleted file mode 100644
index c695edf..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/ExpressionViewEventHandler.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.expression;
-
-
-import java.util.List;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IExpressionsListener;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.core.model.IWatchExpression;
-import org.eclipse.debug.internal.ui.views.variables.VariablesViewEventHandler;
-import org.eclipse.debug.ui.AbstractDebugView;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.viewers.IContentProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
- 
-/**
- * Updates the expression view
- */ 
-public class ExpressionViewEventHandler extends VariablesViewEventHandler implements IExpressionsListener {
-
-	/**
-	 * Also update expressions if a target terminates
-	 * 
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesViewEventHandler#doHandleTerminateEvent(org.eclipse.debug.core.DebugEvent)
-	 */
-	protected void doHandleTerminateEvent(DebugEvent event) {
-		super.doHandleTerminateEvent(event);
-		if (event.getSource() instanceof IDebugTarget) {
-			IExpression[] expressions = DebugPlugin.getDefault().getExpressionManager().getExpressions();
-			IAdaptable object = DebugUITools.getDebugContext();
-			IDebugElement context= null;
-			if (object instanceof IDebugElement) {
-				context= (IDebugElement) object;
-			} else if (object instanceof ILaunch) {
-				context= ((ILaunch) object).getDebugTarget();
-			}
-			for (int i = 0; i < expressions.length; i++) {
-				IExpression expression = expressions[i];
-				if (expression instanceof IWatchExpression) {
-					((IWatchExpression)expression).setExpressionContext(context);
-				}
-			}			
-		}
-	}
-
-	/**
-	 * Constructs a new event handler on the given view
-	 * 
-	 * @param view variables view
-	 */
-	public ExpressionViewEventHandler(AbstractDebugView view) {
-		super(view);
-		DebugPlugin plugin= DebugPlugin.getDefault();
-		plugin.getExpressionManager().addExpressionListener(this);		
-	}
-	
-	/**
-	 * De-registers this event handler from the debug model.
-	 */
-	public void dispose() {
-		DebugPlugin plugin= DebugPlugin.getDefault();
-		plugin.getExpressionManager().removeExpressionListener(this);
-		super.dispose();
-	}	
-	
-	/**
-	 * @see IExpressionsListener#expressionsAdded(IExpression[])
-	 */
-	public void expressionsAdded(final IExpression[] expressions) {
-		Runnable r = new Runnable() {
-			public void run() {
-				if (isAvailable()) {
-					getTreeViewer().refresh();
-					if (expressions.length > 0) {
-						ISelection selection = new StructuredSelection(expressions[0]); 
-						getTreeViewer().setSelection(selection, true);
-					}
-				}
-			}
-		};
-		getView().asyncExec(r);
-	}
-
-	/**
-	 * @see IExpressionsListener#expressionsRemoved(IExpression[])
-	 */
-	public void expressionsRemoved(final IExpression[] expressions) {
-		Runnable r = new Runnable() {
-			public void run() {
-				if (isAvailable()) {
-					getTreeViewer().getControl().setRedraw(false);
-					for (int i = 0; i < expressions.length; i++) {
-						IExpression expression = expressions[i];
-						remove(expression);
-						IContentProvider provider= getTreeViewer().getContentProvider();
-						if (provider instanceof RemoteExpressionsContentProvider) {
-							RemoteExpressionsContentProvider expressionProvider= (RemoteExpressionsContentProvider) provider;
-							List decendants = expressionProvider.getCachedDecendants(expression);
-							decendants.add(expression);
-							// Remove the parent cache for the expression and its children
-							expressionProvider.removeCache(decendants.toArray());
-							IExpression[] allExpressions= DebugPlugin.getDefault().getExpressionManager().getExpressions();
-							if (allExpressions.length > 0) {
-								getTreeViewer().setSelection(new StructuredSelection(allExpressions[0]), true);
-							}
-						}						
-					}
-					getTreeViewer().getControl().setRedraw(true);
-				}
-			}
-		};
-		getView().asyncExec(r);
-	}
-
-	/**
-	 * @see IExpressionsListener#expressionsChanged(IExpression[])
-	 */
-	public void expressionsChanged(final IExpression[] expressions) {
-		Runnable r = new Runnable() {
-			public void run() {
-				if (isAvailable()) {
-					getTreeViewer().getControl().setRedraw(false);
-					for (int i = 0; i < expressions.length; i++) {
-						IExpression expression = expressions[i];
-						refresh(expression);
-						// update details if selected
-						IStructuredSelection selection = (IStructuredSelection)getViewer().getSelection();
-						if (selection.size() == 1 && selection.getFirstElement().equals(expression)) {
-							getVariablesView().populateDetailPane();	
-						}
-					}
-					getTreeViewer().getControl().setRedraw(true);
-				}
-			}
-		};
-		getView().asyncExec(r);			
-	}
-	
-	/**
-	 * Override the superclass method. Do nothing.
-	 */
-	protected void doHandleResumeEvent(DebugEvent event) {
-	}
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesViewEventHandler#doHandleChangeEvent(org.eclipse.debug.core.DebugEvent)
-	 */
-	protected void doHandleChangeEvent(DebugEvent event) {
-		if (event.getSource() instanceof IExpression) {
-			refresh(event.getSource());
-			getVariablesView().populateDetailPane();
-		} else if (event.getDetail() == DebugEvent.STATE) {
-			// only process variable state changes
-			if (event.getSource() instanceof IVariable) {
-				refresh(event.getSource());
-				getVariablesView().populateDetailPane();
-			}
-		} else {
-			refresh();
-			getVariablesView().populateDetailPane();
-		}	
-	}
-
-	protected DebugEvent[] filterEvents(DebugEvent[] events) {
-		// no filtering of events for Expression View
-		return events;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/PopupInformationControl.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/PopupInformationControl.java
deleted file mode 100644
index 8ffc26d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/PopupInformationControl.java
+++ /dev/null
@@ -1,407 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.expression;
-
-import java.text.MessageFormat;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.jface.text.IInformationControl;
-import org.eclipse.jface.text.IInformationControlExtension;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.FocusListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.commands.AbstractHandler;
-import org.eclipse.ui.commands.ExecutionException;
-import org.eclipse.ui.commands.HandlerSubmission;
-import org.eclipse.ui.commands.ICommand;
-import org.eclipse.ui.commands.ICommandManager;
-import org.eclipse.ui.commands.IHandler;
-import org.eclipse.ui.commands.IKeySequenceBinding;
-import org.eclipse.ui.commands.IWorkbenchCommandSupport;
-import org.eclipse.ui.commands.Priority;
-import org.eclipse.ui.contexts.IWorkbenchContextSupport;
-
-/**
- * An information popup window. The window contains a control provided
- * by subclasses. A label is displayed at the bottom of the
- * window describing an action used to dismiss the window, which is invoked
- * with a key binding.
- * <p>
- * Clients are intended to subclass this class.
- * </p>
- * @see org.eclipse.debug.ui.actions.IPopupInformationControlAdapter
- * @see org.eclipse.jface.text.information.IInformationPresenter
- * @see org.eclipse.jface.text.information.IInformationProvider
- * @since 3.0
- */
-public abstract class PopupInformationControl implements IInformationControl, IInformationControlExtension {
-	
-	private static final String HEIGHT_STRING = "_DEBUGPOPUP_HEIGHT"; //$NON-NLS-1$
-	private static final String WIDTH_STRING = "_DEBUGPOPUP_WIDTH"; //$NON-NLS-1$
-	
-	/**
-	 * The popup window
-	 */
-	protected Shell shell;
-	
-	/**
-	 * The maximum width of the popup
-	 */
-	private int maxWidth = 300;
-	
-	/**
-	 * The maximum height of the popup
-	 */
-	private int maxHeight = 300;
-		
-	/**
-	 * ActionHandler for closeAction
-	 */
-	private HandlerSubmission submission;
-	
-	/**
-	 * Handler used to close this popup, or <code>null</code> if none
-	 */
-	private IHandler closeHandler = null;
-	
-	/**
-	 * Command id that provides a key sequence used to invoke this
-	 * popup's close handler, or <code>null</code> if none
-	 */
-	private String commandId = null;
-	
-	/**
-	 * Popup control
-	 */
-	private Control control = null;
-			
-	/**
-	 * Creates a popup information control. When the specified command
-	 * is invoked, the handler is invoked and the popup is closed.
-	 * 
-	 * @param parent the shell to parent the popup
-	 * @param labelText label to display at the bottom of the popup window.
-	 *  The label will be augmented with the key-sequence asscoaited with the
-	 *  given commandId. 
-	 * @param commandId command identifier used to bind a key sequence to
-	 *  close the popup invoking <code>performCommand()</code>
-	 */
-	public PopupInformationControl(Shell parent, String labelText, String commandId) {
-		this.closeHandler = new CloseHandler();
-		this.commandId = commandId;
-		
-		shell= new Shell(parent, SWT.RESIZE);
-		Display display = shell.getDisplay();
-		shell.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
-		shell.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
-		
-		GridLayout layout= new GridLayout(1, false);
-		layout.marginHeight= 0;
-		layout.marginWidth= 0;
-		shell.setLayout(layout);
-		shell.setLayoutData(new GridData(GridData.FILL_BOTH));
-		control = createControl(shell);
-		register();
-		
-		ICommandManager commandManager= PlatformUI.getWorkbench().getCommandSupport().getCommandManager();
-		ICommand command = null;
-		if (commandId != null) {
-			command = commandManager.getCommand(commandId);
-		}
-		
-		Label separator= new Label(shell, SWT.SEPARATOR | SWT.HORIZONTAL | SWT.LINE_DOT);
-		separator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-		
-		Label label = new Label(shell, SWT.SHADOW_NONE | SWT.RIGHT);
-		label.setText(labelText);
-		label.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
-		label.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
-		label.setEnabled(false);
-		label.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_END | GridData.GRAB_HORIZONTAL | GridData.FILL_HORIZONTAL));
-		if (command != null) {
-			List keyBindings = command.getKeySequenceBindings();
-			if (keyBindings != null && keyBindings.size() > 0) {
-				IKeySequenceBinding keySequenceBinding = (IKeySequenceBinding)keyBindings.get(0);
-				label.setText(MessageFormat.format(DebugUIMessages.PopupInformationControl_1, new String[] {keySequenceBinding.getKeySequence().format(), labelText})); //$NON-NLS-1$
-				label.getParent().layout();
-			}			
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#addDisposeListener(DisposeListener)
-	 */
-	public void addDisposeListener(DisposeListener listener) {
-		shell.addDisposeListener(listener);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#addFocusListener(FocusListener)
-	 */
-	public void addFocusListener(FocusListener listener) {
-		shell.addFocusListener(listener);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#computeSizeHint()
-	 */
-	public Point computeSizeHint() {
-		Point persistedSize = getInitialSize();
-		if (persistedSize != null) {
-			return persistedSize;
-		}
-		
-		Point computedSize = shell.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
-		if (maxWidth > 0 && computedSize.x > maxWidth)
-			computedSize.x = maxWidth;
-		if (maxHeight > 0 && computedSize.y > maxHeight)
-			computedSize.y = maxHeight;
-		return computedSize;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#dispose()
-	 */
-	public void dispose() {		
-		deregister();
-		persistSize();
-		shell= null;
-	}
-	
-	/**
-	 * Deregisters this popup's default close action and turns off the
-	 * debug popup scope.
-	 */
-	private void deregister() {
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		IWorkbenchContextSupport contextSupport = workbench.getContextSupport();
-		IWorkbenchCommandSupport commandSupport = workbench.getCommandSupport();
-		
-		commandSupport.removeHandlerSubmission(submission);
-		contextSupport.unregisterShell(shell);
-	}
-	
-	/**
-	 * Registers this popup's default close action and turns on the
-	 * debug popup scope.
-	 */
-	private void register() {
-		if (closeHandler != null) {
-			IWorkbench workbench = PlatformUI.getWorkbench();
-			
-			IWorkbenchContextSupport contextSupport = workbench.getContextSupport();
-			IWorkbenchCommandSupport commandSupport = workbench.getCommandSupport();
-			
-			submission = new HandlerSubmission(null, shell, null, commandId, closeHandler, Priority.MEDIUM);
-			commandSupport.addHandlerSubmission(submission);
-			
-			contextSupport.registerShell(shell, IWorkbenchContextSupport.TYPE_DIALOG);
-		}
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#removeDisposeListener(DisposeListener)
-	 */
-	public void removeDisposeListener(DisposeListener listener) {
-		shell.removeDisposeListener(listener);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#removeFocusListener(FocusListener)
-	 */
-	public void removeFocusListener(FocusListener listener) {
-		shell.removeFocusListener(listener);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setBackgroundColor(Color)
-	 */
-	public void setBackgroundColor(Color background) {
-		shell.setBackground(background);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setForegroundColor(Color)
-	 */
-	public void setForegroundColor(Color foreground) {
-		shell.setForeground(foreground);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setLocation(Point)
-	 */
-	public void setLocation(Point location) {
-	    Rectangle displayBounds = control.getDisplay().getClientArea();
-	    
-	    location.x = location.x < 0 ? displayBounds.x + 25 : location.x;
-	    location.y = location.y < 0 ? displayBounds.y + 25 : location.y;
-	    
-	    Point shellSize = shell.getSize();
-	    boolean shellSizeChanged = false;
-	    if (shellSize.x + location.x > displayBounds.width) {
-	        shellSize.x = displayBounds.width - location.x;
-	        shellSizeChanged = true;
-	    }
-	    if (shellSize.y + location.y > displayBounds.height) {
-	        shellSize.y = displayBounds.height - location.y;
-	        shellSizeChanged = true;
-	    }
-	    if (shellSizeChanged) {
-	        shell.setSize(shellSize);
-	    }
-
-		shell.setLocation(location);		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setSize(int, int)
-	 */
-	public void setSize(int width, int height) {
-		shell.setSize(width, height);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setSizeContraints(int, int)
-	 */
-	public void setSizeConstraints(int maxWidth, int maxHeight) {
-		this.maxWidth = maxWidth;
-		this.maxHeight = maxHeight;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setVisible(boolean)
-	 */
-	public void setVisible(boolean visible) {
-		shell.setVisible(visible);
-		if (!visible) {
-			deregister();
-			shell.dispose();
-		}
-	}
-			
-	/**
-	 * Creates and returns the control for this popup.
-	 *  
-	 * @param parent parent control
-	 * @return control
-	 */
-	protected abstract Control createControl(Composite parent);
-	
-	/**
-	 * Attempts to retrieve the size of the popup when it was last disposed.
-	 * @return The size the initial size of the popup if available, otherwise null 
-	 */
-	protected Point getInitialSize() {
-		Point point = null;
-		try {		
-			IDialogSettings settings = getDialogSettings();
-			if (settings != null) {
-				String key = getClass().getName();
-				
-				int height = settings.getInt(key+HEIGHT_STRING); 
-				int width = settings.getInt(key+WIDTH_STRING); 
-				
-				point = new Point(width, height);
-			}
-		} catch (NumberFormatException e) {
-		}
-		
-		return point;
-	}
-	
-	/**
-	 * Returns a dialog settings in which to persist/restore popup control size.
-	 * 
-	 * @return dialog settings
-	 */
-	protected IDialogSettings getDialogSettings() {
-		return DebugUIPlugin.getDefault().getDialogSettings();
-	}
-	
-	/**
-	 * Attempts to store the current size of the popup in the adapter's IDialogSettings.
-	 * Uses the adapters fully qualified class name to create unique keys.
-	 */
-	protected void persistSize() {
-		if (shell == null) {
-			return;
-		}
-		
-		IDialogSettings settings = getDialogSettings();
-		if (settings != null) {
-			String key = getClass().getName();
-			Point size = shell.getSize();
-			settings.put(key+WIDTH_STRING, size.x); 
-			settings.put(key+HEIGHT_STRING, size.y); 
-		}
-	}	
-
-	/**
-	 * Handler to closes this popup
-	 */	
-	private class CloseHandler extends AbstractHandler {
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.commands.IHandler#execute(java.lang.Object)
-		 */
-		public Object execute(Map parameter) throws ExecutionException {
-			performCommand();
-			if (shell != null) {
-				shell.dispose();
-			}
-			return null;
-		}
-		
-	}
-	
-	/**
-	 * Called when this popup is closed via its command.
-	 * Subclasses must override.
-	 */
-	protected abstract void performCommand(); 
-	
-	/**
-	 * Returns this popup's shell.
-	 * 
-	 * @return shell
-	 */
-	protected Shell getShell() {
-		return shell;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#isFocusControl()
-	 */
-	public boolean isFocusControl() {
-		return control.isFocusControl();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IInformationControl#setFocus()
-	 */
-	public void setFocus() {
-		control.setFocus();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionContentManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionContentManager.java
deleted file mode 100644
index e5c60c5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionContentManager.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.expression;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IErrorReportingExpression;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredExpressionLogicalStructure;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariableContentManager;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-
-/**
- * Remote content manager for variables. Creates an appropriate adapter for
- * logical structures.
- */
-public class RemoteExpressionContentManager extends RemoteVariableContentManager {
-
-    private IDeferredWorkbenchAdapter fExpressionLogicalStructureAdapter = new DeferredExpressionLogicalStructure();
-    
-    /**
-     * Constructs a remote content manager for a variables view.
-     */
-    public RemoteExpressionContentManager(ITreeContentProvider provider, RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-        super(provider, viewer, site, view);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.progress.DeferredTreeContentManager#getAdapter(java.lang.Object)
-     */
-    protected IDeferredWorkbenchAdapter getAdapter(Object element) {
-        if (element instanceof IExpression && fView !=null && fView.isShowLogicalStructure()) {
-            return fExpressionLogicalStructureAdapter;
-        }
-        return super.getAdapter(element);
-    }
-
-    public boolean mayHaveChildren(Object element) {
-        if (element instanceof IErrorReportingExpression) {
-            IErrorReportingExpression iere = (IErrorReportingExpression) element;
-            if (iere.hasErrors()) {
-                //errors are displayed as children of the expression
-                return true;
-            }
-        }
-        
-        if (element instanceof IExpression) {
-            IExpression expression = (IExpression) element;
-            IValue value = expression.getValue();
-            if (value != null) {
-                try {
-                    IVariable[] variables = value.getVariables();
-                    if (variables.length > 0) {
-                        //definitely children...
-                        return true;
-                    }
-                    
-                    //returning false because value!=null && variables.length=0 means no children
-                    return false;
-                } catch (DebugException e) {
-                }
-            }
-        }
-        
-        //expression has not been evaluated
-        return super.mayHaveChildren(element);
-    }
-    
-    
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionsContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionsContentProvider.java
deleted file mode 100644
index bae39c8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/expression/RemoteExpressionsContentProvider.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.expression;
-
-import org.eclipse.debug.internal.ui.views.RemoteTreeContentManager;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariablesContentProvider;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.ui.IWorkbenchPartSite;
-
-public class RemoteExpressionsContentProvider extends RemoteVariablesContentProvider {
-
-    /**
-     * @param viewer
-     * @param site
-     * @param view
-     */
-    public RemoteExpressionsContentProvider(RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-        super(viewer, site, view);
-    }
-    
-    protected RemoteTreeContentManager createContentManager(RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-		return new RemoteExpressionContentManager(this, viewer, site, view);
-	}    
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementAdapterFactory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementAdapterFactory.java
deleted file mode 100644
index 5575513..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementAdapterFactory.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import org.eclipse.core.runtime.IAdapterFactory;
-import org.eclipse.debug.core.IExpressionManager;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredExpression;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredExpressionManager;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredLaunch;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredLaunchManager;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredProcess;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredRegisterGroup;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredStackFrame;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredTarget;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredThread;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredVariable;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.model.IWorkbenchAdapter2;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-
-/**
- * DebugElementAdapterFactory
- */
-public class DebugElementAdapterFactory implements IAdapterFactory {
-    
-    private static IDeferredWorkbenchAdapter fgLaunchManagerAdapter = new DeferredLaunchManager();
-    private static IDeferredWorkbenchAdapter fgLaunchAdapter = new DeferredLaunch();
-    private static IDeferredWorkbenchAdapter fgDebugTargetAdapter = new DeferredTarget();
-    private static IDeferredWorkbenchAdapter fgProcessAdapter = new DeferredProcess();
-    private static IDeferredWorkbenchAdapter fgThreadAdapter = new DeferredThread();
-    private static IDeferredWorkbenchAdapter fgFrameAdapter = new DeferredStackFrame();
-    private static IDeferredWorkbenchAdapter fgRegisterGroupAdapter = new DeferredRegisterGroup();
-    private static IDeferredWorkbenchAdapter fgVariableAdapter = new DeferredVariable();
-    private static IDeferredWorkbenchAdapter fgExpressionAdapter = new DeferredExpression();
-    private static IDeferredWorkbenchAdapter fgExpressionManagerAdapter = new DeferredExpressionManager();
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
-     */
-    public Object getAdapter(Object adaptableObject, Class adapterType) {
-        if (adapterType.isInstance(adaptableObject)) {
-			return adaptableObject;
-		}
-        if (adapterType.equals(IWorkbenchAdapter.class) || adapterType.equals(IWorkbenchAdapter2.class) || adapterType.equals(IDeferredWorkbenchAdapter.class)) {
-        	if (adaptableObject instanceof ILaunchManager) {
-        		return fgLaunchManagerAdapter;
-        	}
-        	if (adaptableObject instanceof ILaunch) {
-        		return fgLaunchAdapter;
-        	}
-        	if (adaptableObject instanceof IDebugTarget) {
-        		return fgDebugTargetAdapter;
-        	}
-        	if (adaptableObject instanceof IProcess) {
-        		return fgProcessAdapter;
-        	}
-        	if (adaptableObject instanceof IThread) {
-        		return fgThreadAdapter;
-        	}
-        	if (adaptableObject instanceof IStackFrame) {
-        		return fgFrameAdapter;
-        	}
-        	if (adaptableObject instanceof IVariable) {
-        		return fgVariableAdapter;
-        	}
-        	if (adaptableObject instanceof IExpression) {
-        		return fgExpressionAdapter;
-        	}
-        	if (adaptableObject instanceof IRegisterGroup) {
-        		return fgRegisterGroupAdapter;
-        	}
-        	if (adaptableObject instanceof IExpressionManager) {
-        		return fgExpressionManagerAdapter;
-        	}
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
-     */
-    public Class[] getAdapterList() {
-        return new Class[] {IWorkbenchAdapter.class, IWorkbenchAdapter2.class, IDeferredWorkbenchAdapter.class};
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementHelper.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementHelper.java
deleted file mode 100644
index 591ef99..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugElementHelper.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.RGB;
-
-/**
- * Translates images, colors, and fonts into image descriptors, RGBs, and font
- * datas for workbench adapaters. Also provides labels. 
- * 
- * @since 3.1
- */
-public class DebugElementHelper {
-    
-    // a model presentation that can provide images & labels for debug elements
-    private static DelegatingModelPresentation fgPresenetation;
-    
-    // map of images to image descriptors
-    private static Map fgImages = new HashMap();
-    
-    /**
-     * Disposes this adapater
-     */
-    public static void dispose() {
-        fgImages.clear();
-        if (fgPresenetation != null) {
-            fgPresenetation.dispose();
-            fgPresenetation = null;
-        }
-    }
-
-    /**
-     * Returns an image descriptor for the given debug element.
-     * 
-     * @param object object for which an image descriptor is required
-     */
-    public static ImageDescriptor getImageDescriptor(Object object) {
-        Image image = getPresentation().getImage(object);
-        if (image != null) {
-            ImageDescriptor descriptor = (ImageDescriptor) fgImages.get(image);
-            if (descriptor == null) {
-                descriptor = new ImageImageDescriptor(image);
-                fgImages.put(image, descriptor);
-            }
-            return descriptor;
-        }
-        return null;
-    }
-
-    /**
-     * Returns a label for the given debug element.
-     * 
-     * @param o object for which a label is required
-     */
-    public static String getLabel(Object o) {
-        return getPresentation().getText(o);
-    }
-    
-    /**
-     * Returns a model presentation to use to retrieve lables & images.
-     * 
-     * @return a model presentation to use to retrieve lables & images
-     */
-    private static DelegatingModelPresentation getPresentation() {
-        if (fgPresenetation == null) {
-            fgPresenetation = new DelegatingModelPresentation();
-        }
-        return fgPresenetation;
-    }
-
-    /**
-     * Returns the RGB of the foreground color for the given element, or
-     * <code>null</code> if none.
-     * 
-     * @param element object for which a foreground color is required
-     * @return the RGB of the foreground color for the given element, or
-     * <code>null</code> if none
-     */
-    public static RGB getForeground(Object element) {
-        Color color = getPresentation().getForeground(element);
-        if (color != null) {
-            return color.getRGB();
-        }
-        return null;
-    }
-
-    /**
-     * Returns the RGB of the background color for the given element, or
-     * <code>null</code> if none.
-     * 
-     * @param element object for which a background color is required
-     * @return the RGB of the background color for the given element, or
-     * <code>null</code> if none
-     */
-    public static RGB getBackground(Object element) {
-        Color color = getPresentation().getBackground(element);
-        if (color != null) {
-            return color.getRGB();
-        }
-        return null;
-    }
-
-    /**
-     * Returns the font data for the given element, or
-     * <code>null</code> if none.
-     * 
-     * @param element object for which font data is required
-     * @return the font data for the given element, or
-     * <code>null</code> if none
-     */
-    public static FontData getFont(Object element) {
-        Font font = getPresentation().getFont(element);
-        if (font != null) {
-            return font.getFontData()[0];
-        }
-        return null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugViewContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugViewContentProvider.java
deleted file mode 100644
index 1ab49ec..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DebugViewContentProvider.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.internal.ui.views.RemoteTreeContentManager;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.model.BaseWorkbenchContentProvider;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-
-/**
- * Provides deferred content for the debug view.
- * @since 3.1
- */
-public class DebugViewContentProvider extends BaseWorkbenchContentProvider {
-    
-    private RemoteTreeContentManager fManager;
-    
-    public DebugViewContentProvider(LaunchViewer tree, IWorkbenchPartSite site) {
-        fManager = new RemoteTreeContentManager(this, tree, site);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
-     */
-    public Object[] getChildren(Object parentElement) {
-        if (parentElement instanceof IStackFrame) {
-            return null;
-        }
-        Object[] children = fManager.getChildren(parentElement);
-        if (children == null) {
-            children = super.getChildren(parentElement);
-        }
-        return children;
-    }
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-	 */
-	public boolean hasChildren(Object element) {
-		if (element instanceof IStackFrame) {
-			return false;
-		}
-		if (element instanceof IDebugTarget) {
-			try {
-				return ((IDebugTarget)element).hasThreads();
-			} catch (DebugException e) {
-				return false;
-			}
-		} 
-		if (element instanceof IThread) {
-			try {
-				return ((IThread)element).hasStackFrames();
-			} catch (DebugException e) {
-				return false;
-			}
-		}
-		if (element instanceof IProcess) {
-			return false;
-		}
-		if (element instanceof ILaunch) {
-			return ((ILaunch)element).hasChildren();
-		}
-		if (element instanceof ILaunchManager) {
-			return ((ILaunchManager) element).getLaunches().length > 0;
-		}
-		if (element instanceof IAdaptable) {
-            IAdaptable adaptable = (IAdaptable) element;
-            IDeferredWorkbenchAdapter adapter = (IDeferredWorkbenchAdapter) adaptable.getAdapter(IDeferredWorkbenchAdapter.class);
-            if (adapter != null) {
-                return adapter.isContainer();
-            }
-        }
-		return super.hasChildren(element);
-	}    
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-     */
-    public void dispose() {
-        fManager.cancel();
-        super.dispose();
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/Decoration.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/Decoration.java
deleted file mode 100644
index d51dfac..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/Decoration.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import org.eclipse.debug.core.model.IThread;
-
-/**
- * A decoration in an editor, created by the debugger.
- */
-public abstract class Decoration {
-	
-	/**
-	 * Removes this decoration
-	 */
-	public abstract void remove();
-	
-	/**
-	 * Returns the thread this decoration decorates.
-	 * 
-	 * @return thead associated with this decoration
-	 */
-	public abstract IThread getThread();
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DecorationManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DecorationManager.java
deleted file mode 100644
index 3b9f781..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/DecorationManager.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
-
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IThread;
-
-/**
- * Manages source selections and decorated editors for launch views.
- */
-public class DecorationManager {
-	
-	// map of targets to lists of active decorations
-	private static Map fDecorations = new HashMap(10);
-		
-	/**
-	 * Adds the given decoration for the given stack frame.
-	 * 
-	 * @param decoration
-	 * @param frame
-	 */
-	public static void addDecoration(Decoration decoration) {
-		IDebugTarget target= decoration.getThread().getDebugTarget();
-		List list = (List)fDecorations.get(target);
-		if (list == null) {
-			list = new ArrayList();
-			fDecorations.put(target, list);
-		}
-		list.add(decoration);
-	}
-	
-	/**
-	 * Removes any decorations for the given debug target.
-	 *  
-	 * @param target to remove editor decorations for
-	 */
-	public static void removeDecorations(IDebugTarget target) {
-		List list = (List)fDecorations.get(target);
-		if (list != null) {
-			ListIterator iterator = list.listIterator();
-			while (iterator.hasNext()) {
-				Decoration decoration = (Decoration)iterator.next();
-				decoration.remove();
-				iterator.remove();
-			}
-		}
-	}
-	
-	/**
-	 * Removes any decorations for the given thread
-	 * 
-	 * @param thread thread to remove decorations for
-	 */
-	public static void removeDecorations(IThread thread) {
-		List list = (List)fDecorations.get(thread.getDebugTarget());
-		if (list != null) {
-			ListIterator iterator = list.listIterator();
-			while (iterator.hasNext()) {
-				Decoration decoration = (Decoration)iterator.next();
-				if (thread.equals(decoration.getThread())) {
-					decoration.remove();
-					iterator.remove();
-				}
-			}
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/ImageImageDescriptor.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/ImageImageDescriptor.java
deleted file mode 100644
index 57f8fb6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/ImageImageDescriptor.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-
-/**
- * Image descriptor for an image.
- */
-public class ImageImageDescriptor extends ImageDescriptor {
-	private Image fImage;
-
-	/**
-	 * Constructor for ImagImageDescriptor.
-	 */
-	public ImageImageDescriptor(Image image) {
-		super();
-		fImage= image;
-	}
-
-	/* (non-Javadoc)
-	 * @see ImageDescriptor#getImageData()
-	 */
-	public ImageData getImageData() {
-		return fImage.getImageData();
-	}
-
-	/* (non-Javadoc)
-	 * @see Object#equals(Object)
-	 */
-	public boolean equals(Object obj) {
-		return (obj != null) && getClass().equals(obj.getClass()) && fImage.equals(((ImageImageDescriptor)obj).fImage);
-	}
-
-	/* (non-Javadoc)
-	 * @see Object#hashCode()
-	 */
-	public int hashCode() {
-		return fImage.hashCode();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java
deleted file mode 100644
index fd1a387..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchView.java
+++ /dev/null
@@ -1,1107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-
-import java.util.Iterator;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IResourceChangeEvent;
-import org.eclipse.core.resources.IResourceChangeListener;
-import org.eclipse.core.resources.IResourceDelta;
-import org.eclipse.core.resources.IResourceDeltaVisitor;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.ITerminate;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.InstructionPointerManager;
-import org.eclipse.debug.internal.ui.actions.AddToFavoritesAction;
-import org.eclipse.debug.internal.ui.actions.EditLaunchConfigurationAction;
-import org.eclipse.debug.internal.ui.sourcelookup.EditSourceLookupPathAction;
-import org.eclipse.debug.internal.ui.sourcelookup.LookupSourceAction;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupResult;
-import org.eclipse.debug.internal.ui.views.AbstractDebugEventHandlerView;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.internal.ui.views.DebugViewDecoratingLabelProvider;
-import org.eclipse.debug.internal.ui.views.DebugViewInterimLabelProvider;
-import org.eclipse.debug.internal.ui.views.DebugViewLabelDecorator;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugEditorPresentation;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.sourcelookup.ISourceLookupResult;
-import org.eclipse.jface.action.GroupMarker;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPageListener;
-import org.eclipse.ui.IPartListener2;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IPerspectiveListener2;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.actions.SelectionListenerAction;
-import org.eclipse.ui.dialogs.PropertyDialogAction;
-import org.eclipse.ui.part.IShowInSource;
-import org.eclipse.ui.part.IShowInTarget;
-import org.eclipse.ui.part.IShowInTargetList;
-import org.eclipse.ui.part.ShowInContext;
-import org.eclipse.ui.progress.IWorkbenchSiteProgressService;
-import org.eclipse.ui.progress.UIJob;
-
-public class LaunchView extends AbstractDebugEventHandlerView implements ISelectionChangedListener, IPerspectiveListener2, IPageListener, IPropertyChangeListener, IResourceChangeListener, IShowInTarget, IShowInSource, IShowInTargetList, IPartListener2 {
-	
-	public static final String ID_CONTEXT_ACTIVITY_BINDINGS = "contextActivityBindings"; //$NON-NLS-1$
-			
-	/**s
-	 * Cache of the stack frame that source was displayed
-	 * for.
-	 */
-	private IStackFrame fStackFrame = null;
-	
-	/**
-	 * Result of last source lookup
-	 */
-	private ISourceLookupResult fResult = null;
-		
-	/**
-	 * Whether this view is in the active page of a perspective.
-	 */
-	private boolean fIsActive = true; 	
-	
-	/**
-	 * Resource delta visitor
-	 */
-	private IResourceDeltaVisitor fVisitor = null;
-	
-	/**
-	 * Editor presentation or <code>null</code> if none
-	 */
-	private IDebugEditorPresentation fEditorPresentation = null;
-	
-	private EditLaunchConfigurationAction fEditConfigAction = null;
-	private AddToFavoritesAction fAddToFavoritesAction = null;
-	private EditSourceLookupPathAction fEditSourceAction = null;
-	private LookupSourceAction fLookupAction = null;
-	
-	/**
-	 * Progress service or <code>null</code>
-	 */
-	private IWorkbenchSiteProgressService fProgressService = null;
-
-	/**
-	 * Context manager which automatically opens and closes views
-	 * based on debug contexts.
-	 */
-	private LaunchViewContextListener fContextListener;
-	
-	/**
-	 * A job to perform source lookup on the currently selected stack frame.
-	 */
-	class SourceLookupJob extends Job {
-
-		/**
-		 * Constructs a new source lookup job.
-		 */
-		public SourceLookupJob() {
-			super(DebugUIViewsMessages.LaunchView_0); //$NON-NLS-1$
-			setPriority(Job.INTERACTIVE);
-			setSystem(true);
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
-		 */
-		protected IStatus run(IProgressMonitor monitor) {
-			if (!monitor.isCanceled()) {
-				IStackFrame frame = getStackFrame();
-				ISourceLookupResult result = null;
-				if (frame != null) {
-					result = DebugUITools.lookupSource(frame, null);
-				}
-				setSourceLookupResult(result);
-				scheduleSourceDisplay();
-			}
-			return Status.OK_STATUS;
-		}
-		
-	}
-	
-	/**
-	 * Source lookup job.
-	 */
-	private Job fSourceLookupJob = null;
-	
-	class SourceDisplayJob extends UIJob {
-
-		/**
-		 * Constructs a new source display job
-		 */
-		public SourceDisplayJob() {
-			super(DebugUIViewsMessages.LaunchView_1); //$NON-NLS-1$
-			setSystem(true);
-			setPriority(Job.INTERACTIVE);
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-		 */
-		public IStatus runInUIThread(IProgressMonitor monitor) {
-			if (!monitor.isCanceled()) {
-				ISourceLookupResult result = getSourceLookupResult();
-				if (result != null) {
-					DebugUITools.displaySource(result, getSite().getPage());
-				}
-			}
-			return Status.OK_STATUS;
-		}
-		
-	}
-    
-	/**
-	 * Label provider for the launch view which renders pending launches
-	 * with italic font.
-	 */
-    private class LaunchViewLabelProvider extends DebugViewDecoratingLabelProvider {
-    	
-    	// The cached italic font used for pending launches
-    	private Font fItalicFont= null;
-    	
-        public LaunchViewLabelProvider(StructuredViewer viewer, IDebugModelPresentation presentation) {
-            super(viewer, new DebugViewInterimLabelProvider(presentation), new DebugViewLabelDecorator(presentation));
-        }
-        
-        public Font getFont(Object element) {
-            if (element instanceof DebugUIPlugin.PendingLaunch) {
-            	if (fItalicFont == null) {
-	                Control control = getViewer().getControl();
-	                Font originalFont = control.getFont();
-	                FontData fontData[] = originalFont.getFontData();
-	                // Add the italic attribute
-	                for (int i = 0; i < fontData.length; i++) {
-	                    fontData[i].setStyle(fontData[i].getStyle() | SWT.ITALIC);
-	                }
-	                fItalicFont= new Font(control.getDisplay(), fontData);
-            	}
-            	return fItalicFont;
-            }
-            return super.getFont(element);
-        }
-
-		public void dispose() {
-			if (fItalicFont != null) {
-				fItalicFont.dispose();
-			}
-			super.dispose();
-		}
-    }
-	
-	/**
-	 * Job used for source display.
-	 */
-	private Job fSourceDisplayJob = null;
-	
-	/**
-	 * Creates a launch view and an instruction pointer marker for the view
-	 */
-	public LaunchView() {
-		DebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this);
-		ResourcesPlugin.getWorkspace().addResourceChangeListener(this);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
-	 */
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.DEBUG_VIEW;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#createActions()
-	 */
-	protected void createActions() {
-		setAction("Properties", new PropertyDialogAction(getSite(), getSite().getSelectionProvider())); //$NON-NLS-1$
-		fEditConfigAction = new EditLaunchConfigurationAction();
-		fAddToFavoritesAction = new AddToFavoritesAction();
-		fEditSourceAction = new EditSourceLookupPathAction(this);
-		fLookupAction = new LookupSourceAction(this);
-				
-		// submit an async exec to update the selection once the
-		// view has been created - i.e. auto-expand and select the
-		// suspended thread on creation. (Done here, because the
-		// viewer needs to be set).
-		Runnable r = new Runnable() {
-			public void run() {
-				initializeSelection();
-			}
-		};
-		asyncExec(r);		
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#createViewer(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Viewer createViewer(Composite parent) {
-		LaunchViewer lv = new LaunchViewer(parent);
-		lv.addPostSelectionChangedListener(this);
-		lv.getControl().addKeyListener(new KeyAdapter() {
-			public void keyPressed(KeyEvent event) {
-				if (event.character == SWT.DEL && event.stateMask == 0) {
-					handleDeleteKeyPressed();
-				}
-			}
-		});
-		lv.setContentProvider(new DebugViewContentProvider(lv, getSite()));
-		final DelegatingModelPresentation presentation = new DelegatingModelPresentation();
-		lv.setLabelProvider(new LaunchViewLabelProvider(lv, presentation));
-		fEditorPresentation = presentation;
-		// add my viewer as a selection provider, so selective re-launch works
-		getSite().setSelectionProvider(lv);
-		lv.setInput(DebugPlugin.getDefault().getLaunchManager());
-		setEventHandler(new LaunchViewEventHandler(this));
-		return lv;
-	}
-		
-	private void handleDeleteKeyPressed() {
-		IStructuredSelection selection= (IStructuredSelection) getViewer().getSelection();
-		Iterator iter= selection.iterator();
-		Object item;
-		boolean itemsToTerminate= false;
-		ITerminate terminable;
-		while (iter.hasNext()) {
-			item= iter.next();
-			if (item instanceof ITerminate) {
-				terminable= (ITerminate) item;
-				if (terminable.canTerminate() && !terminable.isTerminated()) {
-					itemsToTerminate= true;
-					break;
-				}
-			}
-		}
-		if (itemsToTerminate) {
-			// Prompt the user to proceed with termination
-			if (!MessageDialog.openQuestion(getSite().getShell(), DebugUIViewsMessages.LaunchView_Terminate_and_Remove_1, DebugUIViewsMessages.LaunchView_Terminate_and_remove_selected__2)) { //$NON-NLS-1$ //$NON-NLS-2$
-				return;
-			}
-		}
-		MultiStatus status= new MultiStatus(DebugUIPlugin.getUniqueIdentifier(), DebugException.REQUEST_FAILED, DebugUIViewsMessages.LaunchView_Exceptions_occurred_attempting_to_terminate_and_remove_3, null); //$NON-NLS-1$
-		iter= selection.iterator(); 
-		while (iter.hasNext()) {
-			try {
-				terminateAndRemove(iter.next());
-			} catch (DebugException exception) {
-				status.merge(exception.getStatus());				
-			}
-		}
-		if (!status.isOK()) {
-			IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-			if (window != null) {
-				DebugUIPlugin.errorDialog(window.getShell(), DebugUIViewsMessages.LaunchView_Terminate_and_Remove_4, DebugUIViewsMessages.LaunchView_Terminate_and_remove_failed_5, status); //$NON-NLS-1$ //$NON-NLS-2$
-			} else {
-				DebugUIPlugin.log(status);
-			}
-		}
-	}
-	
-	/**
-	 * Terminates and removes the given element from the launch manager
-	 */
-	public static void terminateAndRemove(Object element) throws DebugException {
-		if (!(element instanceof ITerminate)) {
-			return;
-		}
-		ITerminate terminable= (ITerminate) element;
-		if (!(terminable.canTerminate() || terminable.isTerminated())) {
-			// Don't try to terminate or remove attached launches
-			return;
-		}
-		try {
-			if (!terminable.isTerminated()) {
-				terminable.terminate();
-			}
-		} finally {
-			remove(element);
-		}
-	}
-	
-	/**
-	 * Removes the given element from the launch manager. Has no effect if the
-	 * given element is not of type ILaunch, IDebugElement, or IProcess
-	 */
-	private static void remove(Object element) {
-		ILaunch launch= null;
-		if (element instanceof ILaunch) {
-			launch= (ILaunch) element;
-		} else if (element instanceof IDebugElement) {
-			launch= ((IDebugElement) element).getLaunch();
-		} else if (element instanceof IProcess) {
-			launch= ((IProcess) element).getLaunch();
-		} else {
-			return;
-		}
-		ILaunchManager lManager= DebugPlugin.getDefault().getLaunchManager();
-		lManager.removeLaunch(launch);
-	}
-	
-	/**
-	 * Select the first stack frame in a suspended thread,
-	 * if any.
-	 */
-	private void initializeSelection() {
-		if (!isAvailable()) {
-			return;
-		}
-		TreeViewer tv = (TreeViewer)getViewer();
-		tv.expandToLevel(2);
-		final Object[] elements = tv.getExpandedElements();
-		// traverse debug model in non UI thread
-		Job initJob = new Job(DebugUIViewsMessages.LaunchView_2) { //$NON-NLS-1$
-			/* (non-Javadoc)
-			 * @see org.eclipse.core.internal.jobs.InternalJob#run(org.eclipse.core.runtime.IProgressMonitor)
-			 */
-			protected IStatus run(IProgressMonitor monitor) {
-				for (int i = 0; i < elements.length; i++) {
-					if (elements[i] instanceof ILaunch) {
-						final IStackFrame frame = findFrame((ILaunch)elements[i]);
-						if (frame != null) {
-							Runnable runnable = new Runnable() {
-								public void run() {
-									autoExpand(frame, true);
-								}
-							};
-							asyncExec(runnable);
-						}
-					}
-				}
-				return Status.OK_STATUS;
-			}
-		};
-		initJob.schedule();
-	}
-	
-	/**
-	 * Returns the first stack frame in the first suspended
-	 * thread of the given launch, or <code>null</code> if
-	 * none. Prioritizes selection based on which thread is
-	 * suspended at a breakpoint.
-	 * 
-	 * @param launch a launch in this view
-	 * @return stack frame or <code>null</code>
-	 */
-	private IStackFrame findFrame(ILaunch launch) {
-		IDebugTarget target = launch.getDebugTarget();
-		if (target != null) {
-			try {
-				IThread[] threads = target.getThreads();
-				IThread suspended = null;
-				for (int i = 0; i < threads.length; i++) {
-					if (threads[i].isSuspended()) {
-						if (threads[i].getBreakpoints().length > 0) {
-							return threads[i].getTopStackFrame();
-						} else if (suspended == null) {
-							suspended = threads[i];
-						}
-					}
-				}
-				if (suspended != null) {
-					return suspended.getTopStackFrame();
-				}
-			} catch (DebugException e) {
-			}
-		}
-		return null;
-	}
-
-	private void commonInit(IViewSite site) {
-		site.getPage().addPartListener((IPartListener2) this);
-		site.getWorkbenchWindow().addPageListener(this);
-		site.getWorkbenchWindow().addPerspectiveListener(this);
-		fProgressService = (IWorkbenchSiteProgressService) site.getAdapter(IWorkbenchSiteProgressService.class);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewPart#init(org.eclipse.ui.IViewSite)
-	 */
-	public void init(IViewSite site) throws PartInitException {
-		super.init(site);
-		commonInit(site);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewPart#init(org.eclipse.ui.IViewSite, org.eclipse.ui.IMemento)
-	 */
-	public void init(IViewSite site, IMemento memento) throws PartInitException {
-		super.init(site, memento);
-		commonInit(site);
-	}
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#configureToolBar(org.eclipse.jface.action.IToolBarManager)
-	 */
-	protected void configureToolBar(IToolBarManager tbm) {
-		tbm.add(new Separator(IDebugUIConstants.THREAD_GROUP));
-		tbm.add(new Separator(IDebugUIConstants.STEP_GROUP));
-		tbm.add(new GroupMarker(IDebugUIConstants.STEP_INTO_GROUP));
-		tbm.add(new GroupMarker(IDebugUIConstants.STEP_OVER_GROUP));
-		tbm.add(new GroupMarker(IDebugUIConstants.STEP_RETURN_GROUP));
-		tbm.add(new GroupMarker(IDebugUIConstants.EMPTY_STEP_GROUP));
-		tbm.add(new Separator(IDebugUIConstants.RENDER_GROUP));
-	}	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-	    RemoteTreeViewer viewer = (RemoteTreeViewer) getViewer();
-		if (viewer != null) {
-			viewer.removeSelectionChangedListener(this);
-			viewer.cancelJobs();
-		}
-		if (fContextListener != null) {
-			fContextListener.dispose();
-		}
-		IWorkbenchPage page = getSite().getPage();
-		page.removePartListener((IPartListener2) this);
-		IWorkbenchWindow window = getSite().getWorkbenchWindow();
-		window.removePerspectiveListener(this);
-		window.removePageListener(this);
-		
-		cleanup();
-		
-		DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-		ResourcesPlugin.getWorkspace().removeResourceChangeListener(this);
-		super.dispose();
-	}
-	
-	/**
-	 * Disposes of cached information
-	 */
-	protected void cleanup() {
-		setSourceLookupResult(null);
-		setStackFrame(null);
-	}
-	
-	private void setSourceLookupResult(ISourceLookupResult result) {
-	    fResult = result;
-	}
-	
-	private ISourceLookupResult getSourceLookupResult() {
-	    return fResult;
-	}
-	
-	/**
-	 * The selection has changed in the viewer. Show the
-	 * associated source code if it is a stack frame.
-	 * 
-	 * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-	 */
-	public void selectionChanged(SelectionChangedEvent event) {
-		clearStatusLine();
-		updateObjects();
-		showEditorForCurrentSelection();
-		if (isActive()) {
-		    fContextListener.updateForSelection(((IStructuredSelection) getViewer().getSelection()).getFirstElement());
-		}
-	}
-
-	/**
-	 * Lookup source element for current stack frame again.
-	 */
-	public void redoSourceLookup() {
-		setStackFrame(null);
-		selectionChanged(null);
-	}
-
-	/**
-	 * Notifies this view to clean up for the given launches (they've been terminated,
-	 * removed, etc.). Remove all context submissions associated with these launches.
-	 * Clear the cache of the last stack frame that source was displayed for
-	 * if that launch is terminated.
-	 * 
-	 * @param launches the terminated launches
-	 */
-	protected void cleanupLaunches(ILaunch[] launches) {
-		fContextListener.launchesTerminated(launches);
-		IStackFrame frame = getStackFrame();
-		if (frame != null) {
-			ILaunch frameLaunch= frame.getLaunch();
-			for (int i = 0; i < launches.length; i++) {
-				ILaunch launch = launches[i];
-				if (launch.equals(frameLaunch)) {
-					setStackFrame(null);
-					setSourceLookupResult(null);
-				}
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IDoubleClickListener#doubleClick(org.eclipse.jface.viewers.DoubleClickEvent)
-	 */
-	public void doubleClick(DoubleClickEvent event) {
-		ISelection selection= event.getSelection();
-		if (!(selection instanceof IStructuredSelection)) {
-			return;
-		}
-		IStructuredSelection ss= (IStructuredSelection)selection;
-		Object o= ss.getFirstElement();
-		if (o == null || o instanceof IStackFrame) {
-			return;
-		} 
-		TreeViewer tViewer= (TreeViewer)getViewer();
-		boolean expanded= tViewer.getExpandedState(o);
-		tViewer.setExpandedState(o, !expanded);
-	}
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPerspectiveListener#perspectiveActivated(org.eclipse.ui.IWorkbenchPage, org.eclipse.ui.IPerspectiveDescriptor)
-	 */
-	public void perspectiveActivated(IWorkbenchPage page, IPerspectiveDescriptor perspective) {
-		setActive(page.findView(getSite().getId()) != null);
-		updateObjects();
-		showEditorForCurrentSelection();
-		fContextListener.clearLastEnabledContexts();
-		if (isActive()) {
-			fContextListener.updateForSelection(((IStructuredSelection) getViewer().getSelection()).getFirstElement());
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPerspectiveListener#perspectiveChanged(org.eclipse.ui.IWorkbenchPage, org.eclipse.ui.IPerspectiveDescriptor, java.lang.String)
-	 */
-	public void perspectiveChanged(IWorkbenchPage page, IPerspectiveDescriptor perspective, String changeId) {
-		setActive(page.findView(getSite().getId()) != null);
-		if (fContextListener != null) {
-			fContextListener.perspectiveChanged(changeId);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPerspectiveListener2#perspectiveChanged(org.eclipse.ui.IWorkbenchPage, org.eclipse.ui.IPerspectiveDescriptor, org.eclipse.ui.IWorkbenchPartReference, java.lang.String)
-	 */
-	public void perspectiveChanged(IWorkbenchPage page, IPerspectiveDescriptor perspective, IWorkbenchPartReference partRef, String changeId) {
-		if (fContextListener != null) {
-			fContextListener.perspectiveChanged(partRef, changeId);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPageListener#pageActivated(org.eclipse.ui.IWorkbenchPage)
-	 */
-	public void pageActivated(IWorkbenchPage page) {
-		if (getSite().getPage().equals(page)) {
-			setActive(true);
-			updateObjects();
-			showEditorForCurrentSelection();
-			if (fContextListener != null) {
-				fContextListener.loadTrackViews();
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPageListener#pageClosed(org.eclipse.ui.IWorkbenchPage)
-	 */
-	public void pageClosed(IWorkbenchPage page) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPageListener#pageOpened(org.eclipse.ui.IWorkbenchPage)
-	 */
-	public void pageOpened(IWorkbenchPage page) {
-	}
-	
-	/**
-	 * Opens an editor for the current selection if it is a stack frame.
-	 * Otherwise, nothing will happen.
-	 */
-	protected void showEditorForCurrentSelection() {
-		// ensure this view is visible in the active page
-		if (!isActive()) {
-			return;
-		}		
-		ISelection selection= getViewer().getSelection();
-		Object obj= null;
-		if (selection instanceof IStructuredSelection) {
-			obj= ((IStructuredSelection) selection).getFirstElement();
-		}
-		if (!(obj instanceof IStackFrame)) {
-			return;
-		}
-		openEditorForStackFrame((IStackFrame) obj);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugView#getPresentation(java.lang.String)
-	 */
-	public IDebugModelPresentation getPresentation(String id) {
-		return ((DelegatingModelPresentation)fEditorPresentation).getPresentation(id);
-	}
-	
-	/**
-	 * Get the active window and open/bring to the front an editor on the stack
-	 * frame. Selection is based on the line number OR the char start and end.
-	 */
-	protected void openEditorForStackFrame(IStackFrame stackFrame) {
-		if (!stackFrame.isSuspended()) {
-			return;
-		}
-		if (!stackFrame.equals(getStackFrame()) || (getEditorInput() == null || getEditorId() == null)) {
-			setStackFrame(stackFrame);
-			scheduleSourceLookup();
-		} else {
-			setStackFrame(stackFrame);
-			SourceLookupResult result = (SourceLookupResult) fResult;
-			if (result != null) {
-				result.updateArtifact(stackFrame);
-			}
-			scheduleSourceDisplay();
-		}
-	}
-	
-	/**
-	 * Schedules a source lookup job.
-	 */
-	private void scheduleSourceLookup() {
-		if (fSourceLookupJob == null) {
-			fSourceLookupJob = new SourceLookupJob();
-		}
-		setSourceLookupResult(null);
-		schedule(fSourceLookupJob);
-	}
-	
-	/**
-	 * Schedules a source display job.
-	 */
-	private void scheduleSourceDisplay() {
-		if (fSourceDisplayJob == null) {
-			fSourceDisplayJob = new SourceDisplayJob();
-		}
-		schedule(fSourceDisplayJob);
-	}	
-	
-	/**
-	 * Schedules a job with this part's progress service, if available.
-	 * 
-	 * @param job job to schedule
-	 */
-	private void schedule(Job job) {
-		if (fProgressService == null) {
-			job.schedule();
-		} else {
-			fProgressService.schedule(job);
-		}
-	}
-
-	private IEditorInput getEditorInput() {
-		if (fResult != null) {
-			return fResult.getEditorInput();
-		}
-		return null;
-	}
-	
-	private String getEditorId() {
-		if (fResult != null) {
-			return fResult.getEditorId();
-		}
-		return null;
-	}
-	
-	/**
-	 * Deselects any source decorations associated with the given thread or
-	 * debug target.
-	 * 
-	 * @param source thread or debug target
-	 */
-	public void clearSourceSelection(Object source) {		
-		if (source instanceof IThread) {
-			IThread thread = (IThread)source;
-			DecorationManager.removeDecorations(thread);
-			InstructionPointerManager.getDefault().removeAnnotations(thread);
-		} else if (source instanceof IDebugTarget) {
-			IDebugTarget target = (IDebugTarget)source;
-			DecorationManager.removeDecorations(target);
-			InstructionPointerManager.getDefault().removeAnnotations(target);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#fillContextMenu(org.eclipse.jface.action.IMenuManager)
-	 */
-	protected void fillContextMenu(IMenuManager menu) {
-		
-		menu.add(new Separator(IDebugUIConstants.EMPTY_EDIT_GROUP));
-		menu.add(new Separator(IDebugUIConstants.EDIT_GROUP));
-		menu.add(new Separator(IDebugUIConstants.EMPTY_STEP_GROUP));
-		menu.add(new Separator(IDebugUIConstants.STEP_GROUP));
-		menu.add(new GroupMarker(IDebugUIConstants.STEP_INTO_GROUP));
-		menu.add(new GroupMarker(IDebugUIConstants.STEP_OVER_GROUP));
-		menu.add(new GroupMarker(IDebugUIConstants.STEP_RETURN_GROUP));
-		menu.add(new Separator(IDebugUIConstants.RENDER_GROUP));
-		menu.add(new Separator(IDebugUIConstants.EMPTY_THREAD_GROUP));
-		menu.add(new Separator(IDebugUIConstants.THREAD_GROUP));
-		menu.add(new Separator(IDebugUIConstants.EMPTY_LAUNCH_GROUP));
-		menu.add(new Separator(IDebugUIConstants.LAUNCH_GROUP));
-		IStructuredSelection selection = (IStructuredSelection) getSite().getSelectionProvider().getSelection();
-		updateAndAdd(menu, fEditConfigAction, selection);
-		updateAndAdd(menu, fAddToFavoritesAction, selection);
-		updateAndAdd(menu, fEditSourceAction, selection);
-		updateAndAdd(menu, fLookupAction, selection);
-		menu.add(new Separator(IDebugUIConstants.EMPTY_RENDER_GROUP));
-		menu.add(new Separator(IDebugUIConstants.RENDER_GROUP));
-		menu.add(new Separator(IDebugUIConstants.PROPERTY_GROUP));
-		PropertyDialogAction action = (PropertyDialogAction)getAction("Properties"); //$NON-NLS-1$
-		action.setEnabled(action.isApplicableForSelection());
-		menu.add(action);
-		menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-	}	
-	
-	/**
-	 * Updates the enablement of the given action based on the selection
-	 * and addes to the menu iff enabled.
-	 * 
-	 * @param menu menu to add the action to
-	 * @param action action to add if enabled
-	 * @param selection selection to update enablement
-	 */
-	private void updateAndAdd(IMenuManager menu, SelectionListenerAction action, IStructuredSelection selection) {
-		action.selectionChanged(selection);
-		if (action.isEnabled()) {
-			menu.add(action);
-		}		
-	}
-	
-	/**
-	 * Auto-expand and select the given element - must be called in UI thread.
-	 * This is used to implement auto-expansion-and-select on a SUSPEND event.
-	 * 
-	 * @param element the element to expand, cannot be <code>null</code>
-	 * @param selectNeeded whether the element should be selected
-	 */
-	public void autoExpand(Object element, boolean selectNeeded) {
-		LaunchViewer launchViewer = (LaunchViewer)getViewer();
-        launchViewer.deferExpansion(element);
-		if (selectNeeded) {
-			IStructuredSelection selection = (IStructuredSelection) getViewer().getSelection();
-			// if a frame is selected in a different thread, do not update selection
-			Iterator iterator = selection.iterator();
-			while (iterator.hasNext()) {
-				Object object = iterator.next();
-				if (object instanceof IStackFrame) {
-					if (element instanceof IStackFrame) {
-						IThread currThread = ((IStackFrame)object).getThread();
-						if (!currThread.equals(((IStackFrame)element).getThread())) {
-							// a frame in a different thread is selected, don't change
-							return;
-						}
-					} else {
-						// a frame is selected and the new selection is not a frame
-						// do not change the selection
-						return;
-					}
-				}
-			}
-			launchViewer.deferSelection(new StructuredSelection(element));
-		}
-	}
-	
-	/**
-	 * Returns the last stack frame that source was retrieved
-	 * for. Used to avoid source lookups for the same stack
-	 * frame when stepping.
-	 * 
-	 * @return stack frame, or <code>null</code>
-	 */
-	protected IStackFrame getStackFrame() {
-		return fStackFrame;
-	}	
-	
-	/**
-	 * Sets the last stack frame that source was retrieved
-	 * for. Used to avoid source lookups for the same stack
-	 * frame when stepping. Setting the stack frame to <code>null</code>
-	 * effectively forces a source lookup.
-	 * 
-	 * @param frame The stack frame or <code>null</code>
-	 */
-	protected void setStackFrame(IStackFrame frame) {
-		fStackFrame= frame;
-	}	
-		
-	/**
-	 * Sets whether this view is in the active page of a
-	 * perspective. Since a page can have more than one
-	 * perspective, this view only show's source when in
-	 * the active perspective/page.
-	 * 
-	 * @param active whether this view is in the active page of a
-	 * perspective
-	 */
-	protected void setActive(boolean active) {
-		fIsActive = active;
-	} 
-
-	/**
-	 * Returns whether this view is in the active page of
-	 * the active perspective and has been fully created.
-	 * 
-	 * @return whether this view is in the active page of
-	 * the active perspective and has been fully created.
-	 */
-	protected boolean isActive() {
-		return fIsActive && getViewer() != null;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		String property = event.getProperty();
-		if (property.equals(IDebugUIConstants.PREF_MANAGE_VIEW_PERSPECTIVES)) {
-			fContextListener.reloadAutoManagePerspectives(((IStructuredSelection) getViewer().getSelection()).getFirstElement());
-		} else if (property.equals(LaunchViewContextListener.PREF_OPENED_VIEWS) && fContextListener != null) {
-			fContextListener.loadOpenedViews();
-		} else if (property.equals(LaunchViewContextListener.PREF_VIEWS_TO_NOT_OPEN) && fContextListener != null) {
-			fContextListener.reloadViewsToNotOpen(((IStructuredSelection) getViewer().getSelection()).getFirstElement());
-		} else if (property.equals(IInternalDebugUIConstants.PREF_TRACK_VIEWS) && fContextListener != null) {
-			fContextListener.loadTrackViews();
-		}
-	}
-
-	/**
-	 * Visitor for handling resource deltas. When a project is closed, we must clear
-	 * the cache of editor input/stack frame, etc., as the elements can become invalid.
-	 */
-	class LaunchViewVisitor implements IResourceDeltaVisitor {
-		/* (non-Javadoc)
-		 * @see org.eclipse.core.resources.IResourceDeltaVisitor#visit(org.eclipse.core.resources.IResourceDelta)
-		 */
-		public boolean visit(IResourceDelta delta) {
-			if (delta == null) {
-				return false;
-			}
-			IResource resource = delta.getResource();
-			if (0 != (delta.getFlags() & IResourceDelta.OPEN)) {
-				if (resource instanceof IProject) {
-					IProject project = (IProject)resource;
-					if (!project.isOpen()) {
-						// clear
-					    cleanup();
-					}
-				}
-				return false;
-			}
-			return resource instanceof IWorkspaceRoot;
-		}		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.resources.IResourceChangeListener#resourceChanged(org.eclipse.core.resources.IResourceChangeEvent)
-	 */
-	public void resourceChanged(IResourceChangeEvent event) {
-		IResourceDelta delta= event.getDelta();
-		if (delta != null) {
-			try {
-				delta.accept(getVisitor());
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		}		
-	}
-
-	/**
-	 * Returns the resource delta visitor for this view,
-	 * creating if required.
-	 * 
-	 * @return resource delta visitor
-	 */
-	protected IResourceDeltaVisitor getVisitor() {
-		if (fVisitor == null) {
-			fVisitor = new LaunchViewVisitor();
-		}
-		return fVisitor;
-	}
-	
-	/**
-	 * When this view becomes visible, selects the last stack frame whose
-	 * location was revealed.
-	 * 
-	 * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
-	 */
-	protected void becomesVisible() {
-		super.becomesVisible();
-		IStructuredSelection selection= (IStructuredSelection) getViewer().getSelection(); 
-		if (selection.isEmpty() || !selection.getFirstElement().equals(getStackFrame())) {
-			initializeSelection();
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.IShowInTarget#show(org.eclipse.ui.part.ShowInContext)
-	 */
-	public boolean show(ShowInContext context) {
-		ISelection selection = context.getSelection();
-		if (selection != null) {
-			if (selection instanceof IStructuredSelection) {
-				IStructuredSelection ss = (IStructuredSelection)selection;
-				if (ss.size() == 1) {
-					Object obj = ss.getFirstElement();
-					if (obj instanceof IDebugTarget || obj instanceof IProcess) {
-						getViewer().setSelection(selection, true);
-						return true;
-					}
-				}
-			}
-		}
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.IShowInSource#getShowInContext()
-	 */
-	public ShowInContext getShowInContext() {
-		if (isActive()) { 
-			IStructuredSelection selection = (IStructuredSelection)getViewer().getSelection();
-			if (!selection.isEmpty()) { 
-				Object sourceElement = null;
-				if (fResult != null) {
-					sourceElement = fResult.getSourceElement();
-				}
-				if (sourceElement instanceof IAdaptable) {
-					if (((IAdaptable)sourceElement).getAdapter(IResource.class) != null) {
-						return new ShowInContext(null, new StructuredSelection(sourceElement));
-					}
-				}
-			}
-		}
-		return null;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.IShowInTargetList#getShowInTargetIds()
-	 */
-	public String[] getShowInTargetIds() {
-		return new String[] { IPageLayout.ID_RES_NAV };
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partClosed(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partClosed(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partVisible(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partVisible(IWorkbenchPartReference partRef) {
-		IWorkbenchPart part = partRef.getPart(false);
-		if (part == this) {
-			setActive(true);
-// TODO: Workaround for Bug #63332. Reexamine after M9.
-//			updateContextListener();
-			// When the launch view becomes visible, turn on the
-			// debug action set. Note that the workbench will handle the
-			// case where the user really doesn't want the action set
-			// enabled - showActionSet(String) will do nothing for an
-			// action set that's been manually disabled.
-			getSite().getPage().showActionSet(IDebugUIConstants.DEBUG_ACTION_SET);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partOpened(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partOpened(IWorkbenchPartReference partRef) {
-		IWorkbenchPart part = partRef.getPart(false);
-		if (part == this) {
-            fContextListener= new LaunchViewContextListener(LaunchView.this);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partActivated(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partActivated(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partBroughtToTop(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partBroughtToTop(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partDeactivated(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partDeactivated(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partHidden(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partHidden(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partInputChanged(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partInputChanged(IWorkbenchPartReference partRef) {
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewContextListener.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewContextListener.java
deleted file mode 100644
index a4409e2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewContextListener.java
+++ /dev/null
@@ -1,1261 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-import java.util.regex.Pattern;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugModelProvider;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.launchConfigurations.PerspectiveManager;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IViewReference;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.activities.ActivityManagerEvent;
-import org.eclipse.ui.activities.IActivity;
-import org.eclipse.ui.activities.IActivityManager;
-import org.eclipse.ui.activities.IActivityManagerListener;
-import org.eclipse.ui.activities.IActivityPatternBinding;
-import org.eclipse.ui.activities.IWorkbenchActivitySupport;
-import org.eclipse.ui.contexts.ContextManagerEvent;
-import org.eclipse.ui.contexts.EnabledSubmission;
-import org.eclipse.ui.contexts.IContext;
-import org.eclipse.ui.contexts.IContextManager;
-import org.eclipse.ui.contexts.IContextManagerListener;
-import org.eclipse.ui.contexts.IWorkbenchContextSupport;
-import org.eclipse.ui.contexts.NotDefinedException;
-import org.eclipse.ui.progress.UIJob;
-
-/**
- * A context listener which automatically opens/closes/activates views in
- * response to debug context changes and automatically enables activities
- * as appropriate.
- * 
- * The context listener updates for selection changes in the LaunchView,
- * enabling/disabling contexts and enabling activities based on the
- * org.eclipse.debug.ui.debugModelContextBindings and
- * org.eclipse.ui.activities extension points.
- * 
- * Activity pattern bindings with patterns of the form:
- *   <debug model identifier>/debugModel
- * are treated as bindings between a debug model and an activity. When
- * an element with the specified debug model identifier is selected,
- * the specified activity will be enabled.
- */
-public class LaunchViewContextListener implements IContextManagerListener, IActivityManagerListener {
-
-	private static final String DEBUG_MODEL_ACTIVITY_SUFFIX = "/debugModel"; //$NON-NLS-1$
-	public static final String ID_CONTEXT_VIEW_BINDINGS= "contextViewBindings"; //$NON-NLS-1$
-	public static final String ID_DEBUG_MODEL_CONTEXT_BINDINGS= "debugModelContextBindings"; //$NON-NLS-1$
-	public static final String ATTR_CONTEXT_ID= "contextId"; //$NON-NLS-1$
-	public static final String ATTR_VIEW_ID= "viewId"; //$NON-NLS-1$
-	public static final String ATTR_DEBUG_MODEL_ID= "debugModelId"; //$NON-NLS-1$
-	public static final String ATTR_AUTO_OPEN= "autoOpen"; //$NON-NLS-1$
-	public static final String ATTR_AUTO_CLOSE= "autoClose"; //$NON-NLS-1$
-	
-	/**
-	 * The launch view that this context listener works for
-	 */
-	private LaunchView launchView;
-	/**
-	 * A mapping of debug models IDs (String) to a collection
-	 * of context IDs (List<String>).
-	 */
-	private Map modelsToContexts= new HashMap();
-	
-	/**
-	 * A cache of activity pattern bindings for debug models. 
-	 */
-	private List modelPatternBindings = new ArrayList();
-	
-	/**
-	 * Currently enabled activities
-	 */
-	private Set enabledActivities;
-	
-	/**
-	 * A mapping of debug model IDs (String) to a collection
-	 * of resolved activity IDs (Set<String>).
-	 */
-	private Map modelsToActivities= new HashMap();
-	/**
-	 * A mapping of context IDs (Strings) to a collection
-	 * of context-view bindings (IConfigurationElements).
-	 */
-	private Map contextViews= new HashMap();
-	/**
-	 * Collection of all views that might be opened or closed automatically.
-	 */
-	private Set managedViewIds= new HashSet();
-	/**
-	 * Collection of views which have been manually closed by the
-	 * user. Views which are in this collection should not be
-	 * automatically opened.
-	 */
-	private Set viewIdsToNotOpen= new HashSet();
-	/**
-	 * Map of views which have been automatically opened.
-	 * Only views which are in this collection should be automatically
-	 * closed.
-	 * 
-	 * Key: perspective id
-	 * Value: HashSet of view ids open in a perspective
-	 */
-	private Map openedViewIds= new HashMap();
-	
-	/**
-	 * Map of ILaunch objects to the List of EnabledSubmissions that were
-	 * submitted for them.
-	 * Key: ILaunch
-	 * Value: List <EnabledSubmission>
-	 */
-	private Map fContextSubmissions= new HashMap();
-	public static final String DEBUG_CONTEXT= "org.eclipse.debug.ui.debugging"; //$NON-NLS-1$
-	/**
-	 * String preference specifying which views should not be
-	 * automatically opened by the launch view.
-	 * The value is a comma-separated list of view identifiers.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_VIEWS_TO_NOT_OPEN= IDebugUIConstants.PLUGIN_ID + ".views_to_not_open"; //$NON-NLS-1$
-	/**
-	 * String preference specifying which views have been
-	 * automatically opened by the launch view. Only views which
-	 * have been automatically opened will be automatically closed.
-	 * The value is a comma-separated list of view identifiers.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_OPENED_VIEWS= IDebugUIConstants.PLUGIN_ID + ".opened_views"; //$NON-NLS-1$
-	/**
-	 * The collection of context ids which were most recently enabled. 
-	 */
-	private List lastEnabledIds= new ArrayList();
-	/**
-	 * Boolean flag controlling whether or not this listener is
-	 * tracking part changes. This is necessary since this class
-	 * doesn't implement its own listener, but it informed of
-	 * perspective change events by the LaunchView.
-	 */
-	private boolean fIsTrackingPartChanges;
-	/**
-	 * Collection of perspectives in which views should be
-	 * automatically opened and closed.
-	 */
-	private List fAutoManagePerspectives= new ArrayList();
-	
-	/**
-	 * Creates a fully initialized context listener.
-	 * 
-	 * @param view a fully initialized launch view
-	 */
-	public LaunchViewContextListener(LaunchView view) {
-		launchView= view;
-		loadTrackViews();
-		loadDebugModelContextExtensions();
-		loadDebugModelActivityExtensions();
-		loadContextToViewExtensions(true);
-		loadOpenedViews();
-		loadViewsToNotOpen();
-		loadAutoManagePerspectives();
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		workbench.getContextSupport().getContextManager().addContextManagerListener(this);
-		IActivityManager activityManager = workbench.getActivitySupport().getActivityManager();
-		activityManager.addActivityManagerListener(this);
-		enabledActivities = activityManager.getEnabledActivityIds();
-	}
-	
-	/**
-	 * Loads extensions which map context ids to views. This information
-	 * is used to open the appropriate views when a context is activated. 
-	 */
-	private void loadContextToViewExtensions(boolean reloadContextMappings) {
-		IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), ID_CONTEXT_VIEW_BINDINGS);
-		IConfigurationElement[] configurationElements = extensionPoint.getConfigurationElements();
-		for (int i = 0; i < configurationElements.length; i++) {
-			IConfigurationElement element = configurationElements[i];
-			String viewId = getViewId(element);
-			if (reloadContextMappings) {
-				String contextId = element.getAttribute(ATTR_CONTEXT_ID);
-				if (contextId == null || viewId == null) {
-					continue;
-				}
-				List elements= (List) contextViews.get(contextId);
-				if (elements == null) {
-					elements= new ArrayList();
-					contextViews.put(contextId, elements);
-				}
-				elements.add(element);
-			}
-			managedViewIds.add(viewId);
-		}
-	}
-	
-	/**
-	 * Loads the extensions which map debug model identifiers
-	 * to context ids. This information is used to activate the
-	 * appropriate context when a debug element is selected.
-	 * 
-	 * When a context associated with a debug model is enabled, we
-	 * also activate all parent contexts. Since the context manager
-	 * does not do this automatically, we cache all parent context
-	 * identifiers in the modelToContexts map as well
-	 */
-	private void loadDebugModelContextExtensions() {
-		IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), ID_DEBUG_MODEL_CONTEXT_BINDINGS);
-		IConfigurationElement[] configurationElements = extensionPoint.getConfigurationElements();
-		for (int i = 0; i < configurationElements.length; i++) {
-			IConfigurationElement element = configurationElements[i];
-			String modelIdentifier = element.getAttribute(ATTR_DEBUG_MODEL_ID);
-			String contextId = element.getAttribute(ATTR_CONTEXT_ID);
-			if (modelIdentifier != null && contextId != null) {
-				List contextIds = (List) modelsToContexts.get(modelIdentifier);
-				if (contextIds == null) {
-					contextIds = new ArrayList();
-					modelsToContexts.put(modelIdentifier, contextIds);
-				}
-				contextIds.add(contextId);
-			}
-		}
-	}
-	
-	/**
-	 * Loads the extensions which map debug model patterns
-	 * to activity ids. This information is used to activate the
-	 * appropriate activities when a debug element is selected.
-	 */
-	private void loadDebugModelActivityExtensions() {
-		IActivityManager activityManager = PlatformUI.getWorkbench().getActivitySupport().getActivityManager();
-		Set activityIds = activityManager.getDefinedActivityIds();
-		Iterator activityIterator = activityIds.iterator();
-		while (activityIterator.hasNext()) {
-			String activityId= (String) activityIterator.next();
-			IActivity activity = activityManager.getActivity(activityId);
-			if (activity != null) {
-				Set patternBindings = activity.getActivityPatternBindings();
-				Iterator patternIterator= patternBindings.iterator();
-				while (patternIterator.hasNext()) {
-					IActivityPatternBinding patternBinding= (IActivityPatternBinding) patternIterator.next();
-					String pattern = patternBinding.getPattern().pattern();
-					if (pattern.endsWith(DEBUG_MODEL_ACTIVITY_SUFFIX)) {
-						modelPatternBindings.add(patternBinding);
-					}
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Lists the contextViews configuration elements for the
-	 * given context ID and all its parent context IDs. The
-	 * list only contains one configuration element per view
-	 * such that if a child context provides a binding for a view
-	 * it will override any bindings provided for that same view by
-	 * parent contexts.
-	 * 
-	 * @param contextId the context ID
-	 * @return the configuration elements for the given context ID and
-	 * 	all parent context IDs. 
-	 */
-	private List getConfigurationElements(String contextId) {
-		// Collection of view ids for which configuration
-		// elements have been found.
-		List configuredViewIds= new ArrayList();
-		List allConfigurationElements= new ArrayList();
-		IContextManager contextManager = PlatformUI.getWorkbench().getContextSupport().getContextManager();
-		while (contextId != null) {
-			List configurationElements= (List) contextViews.get(contextId);
-			if (configurationElements != null) {
-				ListIterator iter= configurationElements.listIterator();
-				while (iter.hasNext()) {
-					// Only add the element if configuredViewIds do not already
-					// contain viewId.
-					// This allows child contexts to override parent
-					// bindings.
-					IConfigurationElement element= (IConfigurationElement) iter.next();
-					String viewId = element.getAttribute(ATTR_VIEW_ID);
-					if (viewId != null) {
-						if (!configuredViewIds.contains(viewId)) {
-							allConfigurationElements.add(element);
-						}
-						configuredViewIds.add(viewId);
-					}
-				}
-			}
-			IContext context = contextManager.getContext(contextId);
-			if (context != null) {
-				try {
-					contextId= context.getParentId();
-				} catch (NotDefinedException e) {
-					contextId= null;
-				}
-			}
-		}
-		return allConfigurationElements;		 
-	}
-	
-	/**
-	 * Persist the collection of views to not automatically open.
-	 */
-	private void saveViewsToNotOpen() {
-		saveViewCollection(LaunchViewContextListener.PREF_VIEWS_TO_NOT_OPEN, viewIdsToNotOpen);
-	}
-	
-	/**
-	 * Persist the collection of views which have been automatically
-	 * opened.
-	 */
-	private void saveOpenedViews() {
-		saveViewMap(LaunchViewContextListener.PREF_OPENED_VIEWS, openedViewIds);
-	}
-
-	/**
-	 * Persist the view identifiers that the user has manually
-	 * opened/closed so that we continue to not automatically
-	 * open/close them.
-	 * @param attribute the preference key in which to store the
-	 *  view id collection
-	 * @param collection the view identifier collection
-	 */
-	public void saveViewCollection(String attribute, Set collection) {
-		StringBuffer views= new StringBuffer();
-		Iterator iter= collection.iterator();
-		while (iter.hasNext()) {
-			views.append((String) iter.next()).append(',');
-		}
-		if (views.length() > 0) {
-			IPreferenceStore preferenceStore = DebugUITools.getPreferenceStore();
-			preferenceStore.removePropertyChangeListener(launchView);
-			preferenceStore.setValue(attribute, views.toString());
-			preferenceStore.addPropertyChangeListener(launchView);
-		}
-	}
-	
-	
-	/**
-	 * Persist the view identifiers that the user has manually
-	 * opened/closed so that we continue to not automatically
-	 * open/close them.
-	 * 
-	 * key: perspective id
-	 * value: ArrayList of view ids
-	 * 
-	 * The map is saved in the following format:
-	 * key1:arrayElm(0),arrayElm(1)/key2:arrayElm(0),arrayElm(1)
-	 * Perspective settings are delimited by "/".
-	 * view Ids are delimited by ","
-	 * 
-	 * @param attribute attribute the preference key in which to store the
-	 *  view id map
-	 * @param map that maps a persective to a list of view ids
-	 */
-	private void saveViewMap(String attribute, Map map) {
-		StringBuffer views= new StringBuffer();
-		Iterator iter= map.keySet().iterator();
-		while (iter.hasNext()) {
-			String perspId = (String) iter.next();
-			Set viewIds = (Set)map.get(perspId);
-			views.append("/"); //$NON-NLS-1$
-			views.append(perspId);
-			if (viewIds != null && !viewIds.isEmpty())
-			{
-				views.append(":"); //$NON-NLS-1$
-				Iterator viewsIter = viewIds.iterator();
-				while (viewsIter.hasNext())
-				{
-					String viewId = (String)viewsIter.next();
-					views.append(viewId);
-					views.append(","); //$NON-NLS-1$
-				}
-			}
-		}
-		if (views.length() > 0) {
-			IPreferenceStore preferenceStore = DebugUITools.getPreferenceStore();
-			preferenceStore.removePropertyChangeListener(launchView);
-			preferenceStore.setValue(attribute, views.toString());
-			preferenceStore.addPropertyChangeListener(launchView);
-		}
-	}
-	
-	/**
-	 * Load the collection of views to not open.
-	 */
-	public void loadViewsToNotOpen() {
-		loadViewCollection(LaunchViewContextListener.PREF_VIEWS_TO_NOT_OPEN, viewIdsToNotOpen);
-	}
-	
-	/**
-	 * Load the collection of views that have been automatically
-	 * opened.
-	 */
-	public void loadOpenedViews() {
-		loadViewMap(LaunchViewContextListener.PREF_OPENED_VIEWS, openedViewIds);
-	}
-	
-	/**
-	 * Loads a collection of view ids from the preferences keyed to
-	 * the given attribute, and stores them in the given collection
-	 * 
-	 * @param attribute the attribute of the view ids
-	 * @param collection the collection to store the view ids into.
-	 */
-	public void loadViewCollection(String attribute, Set collection) {
-		collection.clear();
-		String views = DebugUITools.getPreferenceStore().getString(attribute);
-		int startIndex= 0;
-		int endIndex= views.indexOf(',');
-		if (endIndex == -1) {
-			endIndex= views.length();
-		}
-		while (startIndex < views.length() - 1) {
-			String viewId= views.substring(startIndex, endIndex);
-			if (viewId.length() > 0) {
-				collection.add(viewId);
-			}
-			startIndex= endIndex + 1;
-			endIndex= views.indexOf(',', startIndex);
-		}
-	}
-	
-	/**
-	 * Loads a map of view ids from the preferences keyed to
-	 * the given attribute, and stores them in the given map
-	 * 
-	 * The map is saved in the following format:
-	 * key1:arrayElm(0),arrayElm(1)/key2:arrayElm(0)+arrayElm(1)
-	 * Perspective settings are delimited by "/".
-	 * Key is the perspective id
-	 * ArrayElm's are the view Ids and are delimited by ","
-	 * 
-	 * @param attribute the attribute of the view ids
-	 * @param map the map to store the view ids into.
-	 */
-	private void loadViewMap(String attribute, Map map) {
-		map.clear();
-		String views = DebugUITools.getPreferenceStore().getString(attribute);
-		
-		if (views.startsWith("/")) //$NON-NLS-1$
-		{
-			// list of views ids in this format:
-			// perspective1Id:viewIdA,viewIdB/persective2Id:viewIda,viewIdB
-			String[] viewsStr = views.split("/"); //$NON-NLS-1$
-			
-			for (int i=0; i<viewsStr.length; i++)
-			{
-				if (viewsStr[i].length() == 0)
-					continue;
-				
-				// split perpectiveId and viewId
-	 			String[] data = viewsStr[i].split(":"); //$NON-NLS-1$
-				
-				// data[0] = perspective
-				// data[1] = list of view ids delimited by ","
-				
-				if (data.length == 2)
-				{
-					String perspId = data[0];
-					
-					String[] viewIds = data[1].split(","); //$NON-NLS-1$
-					Set list = new HashSet();
-					for (int j=0; j<viewIds.length; j++)
-					{
-						list.add(viewIds[j]);
-					}
-					
-					openedViewIds.put(perspId, list);
-				}
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.contexts.IContextManagerListener#contextManagerChanged(org.eclipse.ui.contexts.ContextManagerEvent)
-	 */
-	public void contextManagerChanged(ContextManagerEvent contextManagerEvent) {
-		Set enabled = getNewlyEnabledContexts(contextManagerEvent);
-		Set disabled = getNewlyDisabledContexts(contextManagerEvent);
-		contextEnabled(enabled);
-		contextsDisabled(disabled);
-	}
-	
-	private Set getNewlyEnabledContexts(ContextManagerEvent contextManagerEvent) {
-	    Set set = new HashSet(contextManagerEvent.getContextManager().getEnabledContextIds());
-	    set.removeAll(contextManagerEvent.getPreviouslyEnabledContextIds());
-	    return set;
-	}
-
-	private Set getNewlyDisabledContexts(ContextManagerEvent contextManagerEvent) {
-	    Set set = new HashSet(contextManagerEvent.getPreviouslyEnabledContextIds());
-	    set.removeAll(contextManagerEvent.getContextManager().getEnabledContextIds());
-	    return set;
-	}
-
-	/**
-	 * The context with the given ID has been enabled.
-	 * Activate the appropriate views.
-	 * 
-	 * @param contextId the ID of the context that has been
-	 * 	enabled
-	 */
-	public void contextEnabled(final Set contextIds) {
-		if (!isAutoManageViews()) {
-			return;
-		}
-		
-		final UIJob openViewsJob = new UIJob("Open Context-Enabled Views") { //$NON-NLS-1$
-			public IStatus runInUIThread(IProgressMonitor monitor) {
-				IWorkbenchPage page =  getPage();
-				if (page == null)
-					return Status.OK_STATUS;
-				
-				// Since we run this job asynchronously on the UI Thread,
-				// #getPerspective() may return null when this job is run
-				// when the workbench is shutting down.
-				if (page.getPerspective() == null)
-					return Status.OK_STATUS;
-				
-				// We ignore the "Debugging" context since we use it
-				// to provide a base set of views for other context
-				// bindings to inherit. If we don't ignore it, we'll
-				// end up opening those views whenever a debug session
-				// starts, which is not the desired behavior.
-				contextIds.remove(DEBUG_CONTEXT);
-				if (page == null || contextIds.size() == 0) {
-					return Status.OK_STATUS;
-				}
-				Set viewsToShow = new HashSet();
-				Set viewsToOpen = new HashSet();
-				computeViewActivation(contextIds, viewsToOpen, viewsToShow);
-
-				boolean resetTrackingPartChanges = false;
-				if (fIsTrackingPartChanges) {
-					// only change the flag if it is currently
-					// tracking part changes.
-					fIsTrackingPartChanges = false;
-					resetTrackingPartChanges = true;
-				}
-
-				Iterator iterator = viewsToOpen.iterator();
-
-				String id = page.getPerspective().getId();
-				Set views = (Set) openedViewIds.get(id);
-				if (views == null) {
-					views = new HashSet();
-				}
-
-				while (iterator.hasNext()) {
-					String viewId = (String) iterator.next();
-					try {
-						IViewPart view = page.showView(viewId, null,
-								IWorkbenchPage.VIEW_CREATE);
-						views.add(viewId);
-
-						viewsToShow.add(view);
-					} catch (PartInitException e) {
-						DebugUIPlugin.log(e.getStatus());
-					}
-				}
-
-				if (!viewsToOpen.isEmpty()) {
-					openedViewIds.put(id, views);
-					saveOpenedViews();
-				}
-				iterator = viewsToShow.iterator();
-				while (iterator.hasNext()) {
-					boolean activate = true;
-					IViewPart view = (IViewPart) iterator.next();
-					IViewPart[] stackedViews = page.getViewStack(view);
-					if (stackedViews == null) {
-						continue;
-					}
-					// For each applicable view, iterate through the view stack.
-					// If we find that view before any other applicable views,
-					// show it. Otherwise, don't.
-					for (int i = 0; i < stackedViews.length; i++) {
-						IViewPart stackedView = stackedViews[i];
-						if (view == stackedView) {
-							break;
-						} else if (viewsToShow.contains(stackedView)) {
-							// If this view is below an appropriate view, don't
-							// show it
-							activate = false;
-							break;
-						}
-					}
-					if (activate) {
-						page.bringToTop(view);
-					}
-				}
-
-				// Reset if we have previously changed this setting
-				if (resetTrackingPartChanges)
-					loadTrackViews();
-				
-				return Status.OK_STATUS;
-			}
-		};
-		
-		openViewsJob.setSystem(true);
-
-		final PerspectiveManager manager = DebugUIPlugin.getDefault().getPerspectiveManager();
-		if (isBoundToViews(contextIds)) {
-			manager.schedulePostSwitch(openViewsJob);
-		}
-	}
-	
-	/**
-	 * @param contextIds
-	 * @return if the specified the context ids are tied
-	 * to any context-enabled views.
-	 */
-	private boolean isBoundToViews(Set contextIds)
-	{
-		Set possibleViewsToShow = new HashSet();
-		Iterator iter = contextIds.iterator();
-		while (iter.hasNext())
-		{
-			String contextId = (String)iter.next();
-			Set viewIds = getApplicableViewIds(contextId);
-			possibleViewsToShow.addAll(viewIds);
-		}
-		
-		return !possibleViewsToShow.isEmpty();		
-	}
-	
-	/**
-	 * Compute which views should be automatically opened and which should be
-	 * automatically brought to top when the given contexts are enabled.
-	 * 
-	 * @param contextIds the contexts that have been enabled
-	 * @param viewIdsToOpen a Set into which this method can store the
-	 *  collection of view identifiers (String) that should be opened
-	 * @param viewIdsShow a Set into which this method can store the
-	 *  collection of view identifiers (String) that should be brought to top
-	 */
-	private void computeViewActivation(Set contextIds, Set viewIdsToOpen, Set viewIdsShow) {
-		IWorkbenchPage page = getPage();
-		if (page == null) {
-			return;
-		}
-		Iterator contexts = contextIds.iterator();
-		while (contexts.hasNext()) {
-			String contextId = (String) contexts.next();
-			Iterator configurationElements= getConfigurationElements(contextId).iterator();
-			while (configurationElements.hasNext()) {
-				IConfigurationElement element = (IConfigurationElement) configurationElements.next();
-				String viewId= getViewId(element);
-				if (viewId == null) {
-					continue;
-				}
-				IViewReference reference = page.findViewReference(viewId);
-				if (reference != null && reference.isFastView()) {
-					continue;
-				}
-				IViewPart view = page.findView(viewId);
-				if (view != null) {
-					viewIdsShow.add(view);
-				} else if (isAutoOpen(element) && !viewIdsToNotOpen.contains(viewId)) {
-					// Don't open automatically if specified not to.
-					viewIdsToOpen.add(viewId);
-				}
-			}
-		}
-	}
-	
-	/**
-	 * The given contexts have been disabled. Close all views
-	 * associated with these contexts that aren't associated
-	 * with other active contexts.
-	 * 
-	 * @param contexts
-	 */
-	public void contextsDisabled(Set contexts) {
-		IWorkbenchPage page=  getPage();
-		if (page == null || contexts.size() == 0 || !isAutoManageViews()) {
-			return;
-		}
-		Set viewsToClose= getViewIdsToClose(contexts);
-		if (viewsToClose.isEmpty()) { 
-			return;
-		}
-		
-		// only set this to false if fIsTrackingPartChanges is true
-		// otherwise, we may override the setting that is set
-		// by other event handlers. e.g. in #contextEnabled(...)
-		boolean resetTrackingPartChanges = false;
-		if (fIsTrackingPartChanges)
-		{
-			fIsTrackingPartChanges= false;
-			resetTrackingPartChanges = true;
-		}
-		Iterator iter= viewsToClose.iterator();
-		
-		String perspId = page.getPerspective().getId();
-		Set viewIds = (Set)openedViewIds.get(perspId);
-		
-		while (iter.hasNext()) {
-			String viewId= (String) iter.next();
-			IViewReference view = page.findViewReference(viewId);
-			if (view != null) {
-				page.hideView(view);
-				if (viewIds != null)
-				{
-					// remove opened view from perspective
-					viewIds.remove(viewId);
-				}
-			}
-		}
-		saveOpenedViews();
-		
-		// reset if this setting is previously changed
-		if (resetTrackingPartChanges)
-			loadTrackViews();
-	}
-	
-	/**
-	 * Returns a collection of view IDs which should be closed
-	 * when the given context IDs are disabled.
-	 * 
-	 * @param contextIds the context identifiers
-	 * @return the identifiers of the views which should be closed
-	 *  when the given contexts disable 
-	 */
-	public Set getViewIdsToClose(Set contextIds) {
-		Set viewIdsToClose= new HashSet();
-		Set viewIdsToKeepOpen= getViewIdsForEnabledContexts();
-		Iterator contexts = contextIds.iterator();
-		IWorkbenchPage page = getPage();
-		if (page == null)
-			return viewIdsToClose;
-		if (page.getPerspective() == null)
-			return viewIdsToClose;
-		String currentPerspId = page.getPerspective().getId();
-		Set viewIds = (Set)openedViewIds.get(currentPerspId);
-		while (contexts.hasNext()) {
-			String contextId = (String) contexts.next();
-			List list = getConfigurationElements(contextId);
-			Iterator iter = list.iterator();
-			while (iter.hasNext()) {
-				IConfigurationElement element = (IConfigurationElement) iter.next();
-				if (!isAutoClose(element)) {
-					continue;
-				}
-				String viewId = getViewId(element);
-
-				if (viewId == null || viewIds == null || !viewIds.contains(viewId) || viewIdsToKeepOpen.contains(viewId)) {
-					// Don't close views that the user has manually opened or views
-					// which are associated with contexts that are still enabled.
-					continue;
-				}
-				viewIdsToClose.add(viewId);
-			}
-		}
-		return viewIdsToClose;
-	}
-	
-	/**
-	 * Returns the set of view identifiers that are bound to
-	 * contexts which are enabled in the workbench.
-	 * 
-	 * @return the set of view identifiers bound to enabled contexts
-	 */
-	protected Set getViewIdsForEnabledContexts() {
-		Set viewIds= new HashSet();
-		Iterator enabledContexts = PlatformUI.getWorkbench().getContextSupport().getContextManager().getEnabledContextIds().iterator();
-		while (enabledContexts.hasNext()) {
-			String contextId = (String) enabledContexts.next();
-			if (contextId.equals(DEBUG_CONTEXT)) {
-				// Ignore the "Debugging" context. See comment in contextEnabled(...)
-				continue;
-			}
-			viewIds.addAll(getApplicableViewIds(contextId));
-		}
-		return viewIds;
-	}
-	
-	/**
-	 * Returns the set of view identifiers that are bound to the
-	 * given context.
-	 * 
-	 * @param contextId the context identifier
-	 * @return the set of view identifiers bound to the given context
-	 */
-	public Set getApplicableViewIds(String contextId) {
-		Set viewIds= new HashSet();
-		Iterator elements = getConfigurationElements(contextId).iterator();
-		while (elements.hasNext()) {
-			String viewId = getViewId((IConfigurationElement) elements.next());
-			if (viewId != null) {
-				viewIds.add(viewId);
-			}
-		}
-		return viewIds;
-	}
-	
-	/**
-	 * Determines the debug context associated with the selected
-	 * stack frame's debug model (if any) and activates that
-	 * context. This triggers this view's context listener
-	 * to automatically open/close/activate views as appropriate.
-	 */
-	public void updateForSelection(Object selection) {
-		ILaunch launch= getLaunch(selection);
-		if (launch == null) {
-			return;
-		}
-		String[] modelIds= getDebugModelIdsForSelection(selection);
-		enableContexts(getContextsForModels(modelIds), launch);
-		enableActivitiesFor(modelIds);
-	}
-
-	/**
-	 * Returns the ILaunch associated with the given selection or
-	 * <code>null</code> if none can be determined.
-	 * 
-	 * @param selection the selection or <code>null</code>
-	 * @return the ILaunch associated with the given selection or <code>null</code>
-	 */
-	protected static ILaunch getLaunch(Object selection) {
-		ILaunch launch= null;
-		if (selection instanceof ILaunch) {
-			launch= (ILaunch) selection;
-		} else if (selection instanceof IDebugElement) {
-			launch= ((IDebugElement) selection).getLaunch();
-		} else if (selection instanceof IProcess) {
-			launch= ((IProcess) selection).getLaunch();
-		}
-		return launch;
-	}
-	
-	/**
-	 * Returns the debug model identifiers associated with the given selection.
-	 * 
-	 * @param selection the selection
-	 * @return the debug model identifiers associated with the given selection
-	 */
-	protected String[] getDebugModelIdsForSelection(Object selection) {
-		if (selection instanceof IAdaptable) {
-			IDebugModelProvider modelProvider= (IDebugModelProvider) Platform.getAdapterManager().getAdapter(selection, IDebugModelProvider.class);
-			if (modelProvider != null) {
-				String[] modelIds= modelProvider.getModelIdentifiers();
-				if (modelIds != null) {
-					return modelIds;
-				}
-			}
-		}
-		if (selection instanceof IStackFrame) {
-			return new String[] { ((IStackFrame) selection).getModelIdentifier() };
-		}
-		return new String[0];
-	}
-	
-	/**
-	* Returns the context identifiers associated with the
-	* given model identifiers.
-	* 
-	* @param modelIds the model identifiers
-	* @return the contexts associated with the given model identifiers
-	*/
-	protected List getContextsForModels(String[] modelIds) {
-		List contextIds= new ArrayList();
-		for (int i = 0; i < modelIds.length; i++) {
-			List ids= (List) modelsToContexts.get(modelIds[i]);
-			if (ids == null) {
-				// seed with base debug context
-				ids = new ArrayList();
-				ids.add(DEBUG_CONTEXT);
-				modelsToContexts.put(modelIds[i], ids);
-			}
-			contextIds.addAll(ids);
-		}
-		return contextIds;
-	}
-	
-	/**
-	 * Enables activities in the workbench associated with the given debug 
-	 * model ids that are not already enabled.
-	 * 
-	 * @param debug model ids for which to enable activities
-	 */
-	protected void enableActivitiesFor(String[] modelIds) {
-		Set newActivities = null;
-		for (int i = 0; i < modelIds.length; i++) {
-			String id = modelIds[i];
-			Set ids= (Set) modelsToActivities.get(id);
-			if (ids == null) {
-				// first time the model has been seen, perform pattern matching
-				ids = new HashSet();
-				modelsToActivities.put(id, ids);
-				Iterator bindings = modelPatternBindings.iterator();
-				while (bindings.hasNext()) {
-					IActivityPatternBinding binding = (IActivityPatternBinding) bindings.next();
-					String regex = binding.getPattern().pattern();
-					regex = regex.substring(0, regex.length() - DEBUG_MODEL_ACTIVITY_SUFFIX.length());
-					if (Pattern.matches(regex, id)) {
-						ids.add(binding.getActivityId());
-					}
-				}
-			}
-			if (!enabledActivities.containsAll(ids)) {
-				if (newActivities == null) {
-					newActivities = new HashSet();
-				}
-				newActivities.addAll(ids);
-			}
-		}
-		if (newActivities != null) {
-			IWorkbenchActivitySupport activitySupport = PlatformUI.getWorkbench().getActivitySupport();
-			Set idsToEnable= new HashSet(enabledActivities.size() + newActivities.size());
-			idsToEnable.addAll(enabledActivities);
-			idsToEnable.addAll(newActivities);
-			activitySupport.setEnabledActivityIds(idsToEnable);
-		}
-	}
-	
-	/**
-	 * Enable the given contexts for the given launch. Context
-	 * IDs which are not currently enabled in the workbench will be
-	 * submitted to the workbench. Simulate a context enablement
-	 * callback (by calling contextActivated) for contexts that are already enabled so that
-	 * their views can be promoted.
-	 * 
-	 * @param contextIds the contexts to enable
-	 * @param launch the launch for which the contexts are being enabled
-	 */
-	protected void enableContexts(List contextIds, ILaunch launch) {
-		if (contextIds.isEmpty()) {
-			return;
-		}
-		Set enabledContexts = PlatformUI.getWorkbench().getContextSupport().getContextManager().getEnabledContextIds();
-		Set contextsAlreadyEnabled= new HashSet();
-		Iterator iter= contextIds.iterator();
-		while (iter.hasNext()) {
-			String contextId= (String) iter.next();
-			if (enabledContexts.contains(contextId) && !lastEnabledIds.contains(contextId)) {
-				// If a context is already enabled, submitting it won't
-				// generate a callback from the workbench. So we inform
-				// our context listener ourselves.
-				// This covers the case where the user is selecting
-				// among elements from several enabled contexts.
-				contextsAlreadyEnabled.add(contextId);
-			}
-		}
-		lastEnabledIds.clear();
-		lastEnabledIds.addAll(contextIds);
-		submitContexts(contextIds, launch);
-		contextEnabled(contextsAlreadyEnabled);
-	}
-
-	/**
-	 * Submits the given context IDs to the workbench context support
-	 * on behalf of the given launch. When the launch terminates,
-	 * the context submissions will be automatically removed.
-	 *  
-	 * @param contextIds the contexts to submit
-	 * @param launch the launch for which the contexts are being submitted
-	 */
-	protected void submitContexts(List contextIds, ILaunch launch) {
-		List submissions = (List) fContextSubmissions.get(launch);
-		if (submissions == null) {
-			submissions= new ArrayList();
-			fContextSubmissions.put(launch, submissions);
-		}
-		List newSubmissions= new ArrayList();
-		Iterator iter= contextIds.iterator();
-		while (iter.hasNext()) {
-			newSubmissions.add(new EnabledSubmission(null, null, null, (String) iter.next()));
-		}
-		IWorkbenchContextSupport contextSupport = PlatformUI.getWorkbench().getContextSupport();
-		if (!newSubmissions.isEmpty()) {
-			contextSupport.addEnabledSubmissions(newSubmissions);
-			// After adding the new submissions, remove any old submissions
-			// that exist for the same context IDs. This prevents us from
-			// building up a ton of redundant submissions.
-			List submissionsToRemove= new ArrayList();
-			ListIterator oldSubmissions= submissions.listIterator();
-			while (oldSubmissions.hasNext()) {
-				EnabledSubmission oldSubmission= (EnabledSubmission) oldSubmissions.next();
-				String contextId = oldSubmission.getContextId();
-				if (contextIds.contains(contextId)) {
-					oldSubmissions.remove();
-					submissionsToRemove.add(oldSubmission);
-				}
-			}
-			contextSupport.removeEnabledSubmissions(submissionsToRemove);
-			submissions.addAll(newSubmissions);
-		}
-	}
-	
-	/**
-	 * Notifies this view that the given launches have terminated. When a launch
-	 * terminates, remove all context submissions associated with it.
-	 * 
-	 * @param launches the terminated launches
-	 */
-	protected void launchesTerminated(ILaunch[] launches) {
-		List allSubmissions= new ArrayList();
-		for (int i = 0; i < launches.length; i++) {
-			List submissions= (List) fContextSubmissions.remove(launches[i]);
-			if (submissions != null) {
-				allSubmissions.addAll(submissions);
-			}
-		}
-		PlatformUI.getWorkbench().getContextSupport().removeEnabledSubmissions(allSubmissions);
-	}
-	
-	/**
-	 * Returns the view identifier associated with the given extension
-	 * element or <code>null</code> if none.
-	 * 
-	 * @param element the contextViewBinding extension element
-	 * @return the view identifier associated with the given element or <code>null</code>
-	 */
-	public static String getViewId(IConfigurationElement element) {
-		return element.getAttribute(ATTR_VIEW_ID);
-	}
-	
-	/**
-	 * Returns whether the given configuration element is configured
-	 * for automatic view opening. The element's view should be automatically
-	 * opened if the autoOpen element is specified as true or if the autoOpen
-	 * element is unspecified.
-	 * 
-	 * @param element the contextViewBinding extension element
-	 * @return whether or not given given configuration element's view
-	 *  should be automatically opened
-	 */
-	public static boolean isAutoOpen(IConfigurationElement element) {
-		String autoOpen = element.getAttribute(ATTR_AUTO_OPEN);
-		return autoOpen == null || Boolean.valueOf(autoOpen).booleanValue();
-	}
-	
-	/**
-	 * Returns whether the given configuration element is configured
-	 * for automatic view closure. The element's view should be automatically
-	 * close if the autoClose element is specified as true or if the autoClose
-	 * element is unspecified.
-	 * 
-	 * @param element the contextViewBinding extension element
-	 * @return whether or not given given configuration element's view
-	 *  should be automatically closed
-	 */
-	public static boolean isAutoClose(IConfigurationElement element) {
-		String autoClose = element.getAttribute(ATTR_AUTO_CLOSE);
-		return autoClose == null || Boolean.valueOf(autoClose).booleanValue();
-	}
-	
-	/**
-	 * Returns whether this view automatically opens and closes
-	 * views based on contexts
-	 * @return whether or not this view automatically manages
-	 * views based on contexts
-	 */
-	private boolean isAutoManageViews() {
-		IWorkbenchPage page = launchView.getViewSite().getPage();
-		if (page != null) {
-			IPerspectiveDescriptor descriptor = page.getPerspective();
-			if (descriptor != null) {
-				return fAutoManagePerspectives.contains(descriptor.getId());
-			}
-		}
-		return false;
-	}
-	
-	/**
-	 * Returns the workbench page containing the launch view.
-	 * 
-	 * @return the workbench page containing the launch view
-	 */
-	public IWorkbenchPage getPage() {
-		return launchView.getSite().getPage();
-	}
-	
-	/**
-	 * Notifies this listener that the given perspective change
-	 * has occurred.
-	 * 
-	 * Don't listen to part open/close notifications during reset.
-	 */
-	public void perspectiveChanged(String changeId) {
-		if (changeId.equals(IWorkbenchPage.CHANGE_RESET)) {
-			fIsTrackingPartChanges= false;
-		} else if (changeId.equals(IWorkbenchPage.CHANGE_RESET_COMPLETE)) {
-			loadTrackViews();
-		}
-	}
-	
-	/**
-	 * Notifies this listener that the given perspective change
-	 * has occurred.
-	 * 
-	 * When a part is opened/closed, do not close/open it automatically. 
-	 */
-	public void perspectiveChanged(IWorkbenchPartReference ref, String changeId) {
-		if (!fIsTrackingPartChanges) {
-			return;
-		}
-		if (IWorkbenchPage.CHANGE_VIEW_HIDE.equals(changeId) && (ref instanceof IViewReference)) {
-			String id = ((IViewReference) ref).getId();
-			if (managedViewIds.contains(id)) {
-				viewIdsToNotOpen.add(id);
-				saveViewsToNotOpen();
-			}
-			
-			removeFromOpenedViews(id);
-			saveOpenedViews();
-		} else if (IWorkbenchPage.CHANGE_VIEW_SHOW.equals(changeId) && ref instanceof IViewReference) {
-			String id = ((IViewReference) ref).getId();
-			removeFromOpenedViews(id);
-			saveOpenedViews();
-		}
-	}
-
-	/**
-	 * Givin a view id, this methods iterates through all the 
-	 * managed perspective and remove the view from openedViewIds
-	 * @param viewId
-	 */
-	private void removeFromOpenedViews(String viewId) {
-		Iterator keys = openedViewIds.keySet().iterator();
-		while (keys.hasNext())
-		{
-			String perspId = (String)keys.next();
-			
-			Set views = (Set)openedViewIds.get(perspId);
-			if (views != null)
-			{
-				views.remove(viewId);
-			}
-		}
-	}
-	
-	/**
-	 * Reads the preference specifying whether this view automatically
-	 * tracks views being opened and closed for the purpose of not
-	 * automatically managing those views once they've been opened/closed
-	 * manually.
-	 */
-	public void loadTrackViews() {
-		fIsTrackingPartChanges= DebugUITools.getPreferenceStore().getBoolean(IInternalDebugUIConstants.PREF_TRACK_VIEWS);
-	}
-	
-	/**
-	 * Load the collection of perspectives in which view
-	 * management will occur from the preference store.
-	 */
-	private void loadAutoManagePerspectives() {
-		String prefString = DebugUIPlugin.getDefault().getPreferenceStore().getString(IDebugUIConstants.PREF_MANAGE_VIEW_PERSPECTIVES);
-		fAutoManagePerspectives= parseList(prefString);
-	}
-	
-	/**
-	 * Reloaded the collection of view management perspectives
-	 * and updates (potentially opening views) for the given
-	 * selection.
-	 */
-	public void reloadAutoManagePerspectives(Object selection) {
-		// Remove the context ids associated with the current selection
-		// so that updateForSelection(...) will open views
-		// as appropriate given the new view management settings.
-		String[] modelIds = getDebugModelIdsForSelection(selection);
-		List contextIds = getContextsForModels(modelIds);
-		lastEnabledIds.removeAll(contextIds);
-		
-		loadAutoManagePerspectives();
-		updateForSelection(selection);
-	}
-	
-	public void reloadViewsToNotOpen(Object selection) {
-		// Remove the context ids associated with the current selection
-		// so that updateForSelection(...) will open views
-		// as appropriate given the new view management settings.
-		String[] modelIds = getDebugModelIdsForSelection(selection);
-		List contextIds = getContextsForModels(modelIds);
-		lastEnabledIds.removeAll(contextIds);
-		
-		loadViewsToNotOpen();
-		updateForSelection(selection);
-	}
-	
-	/**
-	 * Parses the comma separated string into a list of strings
-	 * 
-	 * @return list
-	 */
-	public static List parseList(String listString) {
-		List list = new ArrayList(10);
-		StringTokenizer tokenizer = new StringTokenizer(listString, ","); //$NON-NLS-1$
-		while (tokenizer.hasMoreTokens()) {
-			String token = tokenizer.nextToken();
-			list.add(token);
-		}
-		return list;
-	}
-
-	/**
-	 * The launch view associated with this context listener has
-	 * been disposed. Remove as a context listener.
-	 *
-	 */
-	public void dispose() {
-		IWorkbench workbench = PlatformUI.getWorkbench();
-		workbench.getContextSupport().getContextManager().removeContextManagerListener(this);
-		workbench.getActivitySupport().getActivityManager().removeActivityManagerListener(this);
-	}
-
-	/**
-	 * Clears the cache of last enabled contexts. Called by the debug view when the pespective
-	 * changes.
-	 */
-	protected void clearLastEnabledContexts() {
-		lastEnabledIds.clear();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.activities.IActivityManagerListener#activityManagerChanged(org.eclipse.ui.activities.ActivityManagerEvent)
-	 */
-	public void activityManagerChanged(ActivityManagerEvent activityManagerEvent) {
-		if (activityManagerEvent.haveEnabledActivityIdsChanged()) {
-			enabledActivities = activityManagerEvent.getActivityManager().getEnabledActivityIds();
-		}
-		
-	}
-
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewEventHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewEventHandler.java
deleted file mode 100644
index d53b901..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewEventHandler.java
+++ /dev/null
@@ -1,639 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.ILaunchesListener2;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.AbstractDebugEventHandler;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.StructuredSelection;
-
-/**
- * Handles debug events, updating the launch view and viewer.
- */
-public class LaunchViewEventHandler extends AbstractDebugEventHandler implements ILaunchesListener2 {
-	/**
-	 * The timer used to time step and evaluation events. The timer allows
-	 * the UI to not refresh during fast evaluations and steps.
-	 */
-	private ThreadTimer fThreadTimer= new ThreadTimer();
-	
-	/**
-	 * Cache of the last top stack frame
-	 */
-	private IStackFrame fLastStackFrame = null;
-	
-	/**
-	 * Constructs an event handler for the given launch view.
-	 * 
-	 * @param view launch view
-	 */
-	public LaunchViewEventHandler(LaunchView view) {
-		super(view);
-		DebugPlugin plugin= DebugPlugin.getDefault();
-		plugin.getLaunchManager().addLaunchListener(this);
-	}
-	
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.AbstractDebugEventHandler#filterEvents(org.eclipse.debug.core.DebugEvent[])
-     */
-    protected DebugEvent[] filterEvents(DebugEvent[] events) {
-        if (events.length > 0) {
-            DebugEvent event = events[0];
-            Object source = event.getSource();
-            ILaunch launch = null;
-            if (source instanceof IDebugElement) {
-                launch = ((IDebugElement)source).getLaunch();
-            } else if (source instanceof IProcess) {
-                launch = ((IProcess)source).getLaunch();
-            }
-            // we only need to consider the first event, as all events in an event set come
-            // from the same program
-            if (launch != null && DebugPlugin.getDefault().getLaunchManager().isRegistered(launch)) {
-                return events;
-            }
-            return EMPTY_EVENT_SET;
-        }
-        return events;
-    }
-	
-	/**
-	 * Returns the parent for the given element.
-	 * 
-	 * @param element
-	 * @return parent
-	 */
-	private Object getParent(Object element) {
-		return ((ITreeContentProvider)getTreeViewer().getContentProvider()).getParent(element);
-	}
-    
-	/**
-	 * @see AbstractDebugEventHandler#doHandleDebugEvents(DebugEvent[])
-	 */
-	protected void doHandleDebugEvents(DebugEvent[] events, Object data) {
-		fThreadTimer.handleDebugEvents(events);
-		Object suspendee = null;
-		for (int i = 0; i < events.length; i++) {
-			DebugEvent event = events[i];
-			Object source= event.getSource();
-			switch (event.getKind()) {
-				case DebugEvent.CREATE :
-					if (source instanceof IThread) {
-						insert(source);
-					} else {
-						Object parent = getParent(source);
-						if (parent != null) {
-							refresh(parent);
-						}
-						if (source instanceof IDebugTarget) {
-							getLaunchView().autoExpand(source, true);
-						}
-					}
-					break;
-				case DebugEvent.TERMINATE :
-					clearSourceSelection(source);
-					if (source instanceof IThread) {
-						fThreadTimer.getTimedOutThreads().remove(source);
-						remove(source);
-					} else {
-					    Object parent = getParent(source);
-						if (parent != null) {
-						    refresh(parent);
-						}
-					}
-					break;
-				case DebugEvent.RESUME :
-					doHandleResumeEvent(event, source, data);
-					break;
-				case DebugEvent.SUSPEND :
-					if (suspendee == null || !suspendee.equals(source)) {
-						doHandleSuspendEvent(source, event, data);
-						suspendee = source;
-					}
-					break;
-				case DebugEvent.CHANGE :
-                    Object element = null;
-                    IStructuredSelection selection = getLaunchViewer().getDeferredSelection();
-                    if (selection == null) {
-                        selection = (IStructuredSelection) getLaunchViewer().getSelection();
-                    } 
-                    
-                    element = selection.getFirstElement();
-                    IStackFrame lastFrame = null;
-                    if (element instanceof IStackFrame) {
-                        lastFrame = (IStackFrame) element;
-                    }
-					if (source instanceof IStackFrame) {
-						if (source.equals(lastFrame)) {
-							getLaunchView().setStackFrame(null);
-							getLaunchView().autoExpand(lastFrame, true);
-						}
-					}
-					if (event.getDetail() == DebugEvent.STATE) {
-						labelChanged(source);
-					} else {
-						//structural change
-						refresh(source);
-					}
-					if (lastFrame != null && source instanceof IThread) {
-					    if (lastFrame.getThread().equals(source)) {
-					        getLaunchView().autoExpand(lastFrame, true);
-					    }
-					}
-					break;
-			}
-		}
-	}
-	
-	/**
-	 * Handles the given resume event with the given source.
-	 */
-	protected void doHandleResumeEvent(DebugEvent event, Object source, Object data) {
-		if (!event.isEvaluation()) {
-			clearSourceSelection(source);
-		}
-		if (event.isEvaluation() || event.isStepStart()) {
-			// Do not update for step starts and evaluation
-			// starts immediately. Instead, start the timer.
-			IThread thread= getThread(source);
-			if (thread != null) {
-				fThreadTimer.startTimer(thread);
-			}
-			return;
-		}
-		refresh(source);
-		if (source instanceof IThread) {
-		    if (data instanceof IStackFrame) {
-				selectAndReveal(data);
-				return;
-			}
-            selectAndReveal(source);
-		}
-	}
-	
-	/**
-	 * Updates the stack frame icons for a running thread.
-	 * This is useful for the case where a thread is resumed
-	 * temporarily  but the view should keep the stack frame 
-	 * visible (for example, step start or evaluation start).
-	 */
-	protected void updateRunningThread(IThread thread) {
-		labelChanged(thread);
-		getLaunchViewer().updateStackFrameImages(thread);
-		clearSourceSelection(thread);
-	}
-
-	protected void doHandleSuspendEvent(Object element, DebugEvent event, Object data) {
-		IThread thread= getThread(element);
-		if (thread != null) {
-			fThreadTimer.stopTimer(thread);
-		}
-		
-		boolean wasTimedOut= fThreadTimer.getTimedOutThreads().remove(thread);
-		if (event.isEvaluation() && ((event.getDetail() & DebugEvent.EVALUATION_IMPLICIT) != 0)) {
-			if (thread != null && !wasTimedOut) {
-				// No refresh required for implicit evaluations that complete on time
-				return;
-			}
-		}
-		if (element instanceof IThread) {
-			doHandleSuspendThreadEvent((IThread)element, event, wasTimedOut, data);
-			return;
-		}
-		refresh(element);
-	}
-	
-	/**
-	 * Updates the given thread for the given suspend event.
-	 */
-	protected void doHandleSuspendThreadEvent(IThread thread, DebugEvent event, boolean wasTimedOut, Object data) {
-		// if the thread has already resumed, do nothing
-		if (!thread.isSuspended() || !isAvailable()) {
-			return;
-		}
-
-		// do not update source selection for evaluation events
-		boolean evaluationEvent = event.isEvaluation();
-		
-		// get the top frame
-		IStackFrame frame = null;
-		if (data instanceof IStackFrame) {
-		    frame = (IStackFrame) data;
-		}
-	    
-		// if the top frame is the same, only update labels and images, and re-select
-		// the frame to display source
-		if (frame != null && frame.equals(fLastStackFrame)) {
-			if (wasTimedOut) {
-				getLaunchViewer().updateStackFrameImages(thread);
-			}
-			getLaunchViewer().update(new Object[] {thread, frame}, null);
-			if (!evaluationEvent) {
-			    getLaunchViewer().deferExpansion(thread);
-				getLaunchViewer().deferSelection(new StructuredSelection(frame));
-			} else if (wasTimedOut) {
-				getLaunchView().showEditorForCurrentSelection();
-			}
-			return;
-		}
-		
-		if (frame != null) {
-		    fLastStackFrame = frame;
-			// Auto-expand the thread. Only select the thread if this wasn't the end
-			// of an evaluation
-		    refresh(thread);
-			getLaunchView().autoExpand(fLastStackFrame, !evaluationEvent);
-		}
-	}
-	
-	/**
-	 * @see AbstractDebugEventHandler#updateForDebugEvents(DebugEvent[])
-	 */
-	protected void updateForDebugEvents(DebugEvent[] events, Object data) {
-		super.updateForDebugEvents(events, data);
-		if (isViewVisible()) {
-			return;
-		}
-		doHandleDebugEvents(events, data);
-	}
-	
-	/**
-	 * De-registers this event handler from the debug model.
-	 */
-	public void dispose() {
-		super.dispose();
-		fThreadTimer.stop();
-		DebugPlugin plugin= DebugPlugin.getDefault();
-		plugin.getLaunchManager().removeLaunchListener(this);
-	}
-
-	/**
-	 * Clear the selection in the editor - must be called in UI thread
-	 */
-	private void clearSourceSelection(Object source) {
-		if (getViewer() != null) {
-			getLaunchView().clearSourceSelection(source);
-		}
-	}	
-
-	/**
-	 * Returns this event handler's launch viewer
-	 * 
-	 * @return launch viewer
-	 */
-	protected LaunchViewer getLaunchViewer() {
-		return (LaunchViewer)getViewer();
-	}
-	
-	/**
-	 * Returns this event handler's launch view
-	 * 
-	 * @return launch view
-	 */
-	protected LaunchView getLaunchView() {
-		return (LaunchView)getView();
-	}		
-	
-	private IThread getThread(Object element) {
-		IThread thread = null;
-		if (element instanceof IThread) {
-			thread = (IThread) element;
-		} else if (element instanceof IStackFrame) {
-			thread = ((IStackFrame)element).getThread();
-		}
-		return thread;
-	}
-	
-	class ThreadTimer {
-		
-		private Thread fThread;
-		/**
-		 * The time allotted before a thread will be updated
-		 */
-		private long TIMEOUT= 500;
-		/**
-		 * Time in milliseconds that the thread timer started
-		 * running with no timers.
-		 */
-		private long timeEmpty= 0;
-		/**
-		 * The maximum time in milliseconds that the thread
-		 * will continue running with no timers.
-		 */
-		private long MAX_TIME_EMPTY= 3000;
-		private boolean fStopped= false;
-		private Object fLock= new Object();
-		
-		/**
-		 * Maps threads that are currently performing being timed
-		 * to the allowed time by which they must finish. If this
-		 * limit expires before the timer is stopped, the thread will
-		 * be refreshed.
-		 */
-		HashMap fStopTimes= new HashMap();
-		/**
-		 * Collection of threads whose timers have expired.
-		 */
-		HashSet fTimedOutThreads= new HashSet();
-		
-		public Set getTimedOutThreads() {
-			return fTimedOutThreads;
-		}
-		
-		/**
-		 * Handle debug events dispatched from launch view event handler.
-		 * If there are no running targets, stop this timer.
-		 */
-		public void handleDebugEvents(DebugEvent[] events) {
-			if (fStopped) {
-				return;
-			}
-			DebugEvent event;
-			for (int i= 0, numEvents= events.length; i < numEvents; i++) {
-				event= events[i];
-				if (event.getKind() == DebugEvent.TERMINATE && event.getSource() instanceof IDebugTarget) {
-					ILaunch[] launches= DebugPlugin.getDefault().getLaunchManager().getLaunches();
-					// If there are no more active DebugTargets, stop the thread.
-					for (int j= 0; j < launches.length; j++) {
-						IDebugTarget[] targets= launches[j].getDebugTargets();
-						for (int k = 0; k < targets.length; k++) {
-							IDebugTarget target = targets[k];
-							if (target != null && !target.isDisconnected() && !target.isTerminated()) {
-								return;
-							}
-						}
-					}
-					// To get here, there must be no running DebugTargets
-					stop();
-					return;
-				}
-			}
-		}
-			
-		public void startTimer(IThread thread) {
-			synchronized (fLock) {
-				fStopTimes.put(thread, new Long(System.currentTimeMillis() + TIMEOUT));
-				if (fThread == null) {
-					startThread();
-				}
-			}
-		}
-		
-		public void stop() {
-			synchronized (fLock) {
-				fStopped= true;
-				fThread= null;
-				fStopTimes.clear();
-			}
-		}
-		
-		public void stopTimer(IThread thread) {
-			synchronized (fLock) {
-				fStopTimes.remove(thread);
-			}
-		}
-		
-		private void startThread() {
-			fThread= new Thread(new Runnable() {
-				public void run() {
-					fStopped= false;
-					while (!fStopped) {
-						checkTimers();
-					}
-					
-				}
-			}, "Thread timer"); //$NON-NLS-1$
-			fThread.setDaemon(true);
-			fThread.start();
-		}
-		
-		private void checkTimers() {
-			long timeToWait= TIMEOUT;
-			Map.Entry[] entries;
-			synchronized (fLock) {
-				if (fStopTimes.size() == 0) {
-					if (timeEmpty == 0) {
-						timeEmpty= System.currentTimeMillis();
-					} else 	if (System.currentTimeMillis() - timeEmpty > MAX_TIME_EMPTY) {
-						stop();
-						return;
-					}
-				} else {
-					timeEmpty= 0;
-				}
-				entries= (Map.Entry[])fStopTimes.entrySet().toArray(new Map.Entry[0]);
-			}
-			long stopTime, currentTime= System.currentTimeMillis();
-			Long entryValue;
-			Map.Entry entry= null;
-			for (int i= 0, numEntries= entries.length; i < numEntries; i++) {
-				entry= entries[i];
-				entryValue= (Long)entry.getValue();
-				if (entryValue == null) {
-					continue;
-				}
-				stopTime= entryValue.longValue();
-				if (stopTime <= currentTime) {
-					// The timer has expired for this thread.
-					// Refresh the UI to show that the thread
-					// is performing a long evaluation
-					final IThread thread= (IThread)entry.getKey();
-					fStopTimes.remove(thread);	
-					getView().asyncExec(new Runnable() {
-						public void run() {
-							fTimedOutThreads.add(thread);
-							updateRunningThread(thread);
-						}
-					});
-				} else {
-					timeToWait= Math.min(timeToWait, stopTime - currentTime);
-				}
-			}
-			try {
-				Thread.sleep(timeToWait);
-			} catch (InterruptedException e) {
-			}
-		}
-	}
-	
-	/**
-	 * @see org.eclipse.debug.core.ILaunchesListener#launchesAdded(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchesAdded(final ILaunch[] launches) {
-		Runnable r= new Runnable() {
-			public void run() {
-				if (isAvailable()) {
-					if (launches.length == 1) {
-						insert(launches[0]);
-					} else {
-						refresh();
-					}
-					for (int i = 0; i < launches.length; i++) {
-						if (launches[i].hasChildren()) {
-							getLaunchView().autoExpand(launches[i], false);
-						}
-					}					
-
-				}
-			}
-		};
-
-		getView().syncExec(r);		
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchesListener#launchesChanged(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchesChanged(final ILaunch[] launches) {
-		Runnable r= new Runnable() {
-			public void run() {
-				if (isAvailable()) {	
-					if (launches.length == 1) {
-						refresh(launches[0]);
-					} else {
-						refresh();
-					}
-					for (int i = 0; i < launches.length; i++) {
-						if (launches[i].hasChildren()) {
-							getLaunchView().autoExpand(launches[i], false);
-						}						
-					}
-				}
-			}
-		};
-
-		getView().syncExec(r);				
-	}
-
-	/**
-	 * @see org.eclipse.debug.core.ILaunchesListener#launchesRemoved(org.eclipse.debug.core.ILaunch)
-	 */
-	public void launchesRemoved(final ILaunch[] launches) {
-		Runnable r= new Runnable() {
-			public void run() {
-				if (isAvailable()) {
-					if (launches.length == 1) {
-						remove(launches[0]);
-					} else {
-						refresh();
-					}
-					
-					getLaunchView().cleanupLaunches(launches);
-					
-					ILaunchManager lm= DebugPlugin.getDefault().getLaunchManager();
-					IDebugTarget[] targets= lm.getDebugTargets();
-					if (targets.length > 0) {
-						IDebugTarget target= targets[targets.length - 1];
-						try {
-							IThread[] threads= target.getThreads();
-							for (int i=0; i < threads.length; i++) {
-								if (threads[i].isSuspended()) {
-									IStackFrame topStackFrame = threads[i].getTopStackFrame();
-									if (topStackFrame != null) {
-									    getLaunchView().autoExpand(topStackFrame, true);
-									}
-									return;
-								}
-							}						
-						} catch (DebugException de) {
-							DebugUIPlugin.log(de);
-						}
-						
-						getLaunchView().autoExpand(target.getLaunch(), true);
-					}
-				}
-			}
-		};
-
-		getView().asyncExec(r);		
-	}
-
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.ILaunchesListener2#launchesTerminated(org.eclipse.debug.core.ILaunch[])
-	 */
-	public void launchesTerminated(final ILaunch[] launches) {
-		if (fLastStackFrame != null) {
-			ILaunch launch= fLastStackFrame.getLaunch();
-			for (int i = 0; i < launches.length; i++) {
-				ILaunch terminatedLaunch = launches[i];
-				if (terminatedLaunch.equals(launch)) {
-					fLastStackFrame= null;
-				}
-			}
-		}
-		Runnable r= new Runnable() {
-			public void run() {
-				getLaunchView().cleanupLaunches(launches);
-			}
-		};
-		getView().asyncExec(r);
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.AbstractDebugEventHandler#doPreprocessEvents(org.eclipse.debug.core.DebugEvent[])
-     */
-    protected DebugEvent[] doPreprocessEvents(DebugEvent[] events) {
-        for (int i = 0; i < events.length; i++) {
-            DebugEvent event = events[i];
-            Object source = event.getSource();
-            switch (event.getKind()) {
-            	case DebugEvent.SUSPEND:
-            	    if (source instanceof IThread) {
-            	        IThread thread = (IThread)source;
-            		    try {
-            		        IStackFrame frame = thread.getTopStackFrame();
-            		        queueData(frame);
-            		    } catch (DebugException e) {
-            		    }
-            	    }
-            	    break;
-            	case DebugEvent.RESUME:
-            		if (source instanceof IThread && event.getDetail() == DebugEvent.CLIENT_REQUEST) {
-            			// When a thread resumes, try to select another suspended thread
-            			// in the same target.
-            			try {
-            			    IDebugTarget target = ((IThread) source).getDebugTarget();
-            				IThread[] threads= target.getThreads();
-            				for (int j = 0; j < threads.length; j++) {
-            					IStackFrame frame = threads[j].getTopStackFrame();
-            					if (frame != null) {
-            						queueData(frame);
-            						break;
-            					}
-            				}
-            			} catch (DebugException e) {
-            			}
-            		}
-            		break;
-            }
-        }
-        return events;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewer.java
deleted file mode 100644
index 4ea2fcd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/LaunchViewer.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Item;
-import org.eclipse.swt.widgets.Tree;
-import org.eclipse.swt.widgets.TreeItem;
-import org.eclipse.swt.widgets.Widget;
-
-/**
- * The launch viewer displays a tree of launches.
- */
-public class LaunchViewer extends RemoteTreeViewer {
-    /**
-	 * Overridden to fix bug 39709 - duplicate items in launch viewer. The
-	 * workaround is required since debug creation events (which result in
-	 * additions to the tree) are processed asynchrnously with the expanding
-	 * of a launch/debug target in the tree. 
-	 * 
-	 * @see org.eclipse.jface.viewers.AbstractTreeViewer#add(java.lang.Object, java.lang.Object)
-	 */
-	public synchronized void add(Object parentElement, Object childElement) {
-		if (findItem(childElement) == null) {
-			super.add(parentElement, childElement);
-		}
-	}
-	
-    public LaunchViewer(Composite parent) {
-		super(new Tree(parent, SWT.MULTI));
-		setUseHashlookup(true);
-	}
-			
-	/**
-	 * Update the images for all stack frame children of the given thread.
-	 * 
-	 * @param parentThread the thread whose frames should be updated
-	 */	
-	protected void updateStackFrameImages(IThread parentThread) {
-		Widget parentItem= findItem(parentThread);
-		if (parentItem != null) {
-			Item[] items= getItems((Item)parentItem);
-			for (int i = 0; i < items.length; i++) {
-				updateTreeItemImage((TreeItem)items[i]);
-			}
-		}
-	}
-	
-	/**
-	 * Updates the image of the given tree item.
-	 * 
-	 * @param treeItem the item
-	 */
-	protected void updateTreeItemImage(TreeItem treeItem) {
-		ILabelProvider provider = (ILabelProvider) getLabelProvider();
-		Image image = provider.getImage(treeItem.getData());
-		if (image != null) {
-			treeItem.setImage(image);
-		}			
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.StructuredViewer#refresh(java.lang.Object)
-	 */
-	public void refresh(Object element) {
-		super.refresh(element);
-	}
- 
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditor.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditor.java
deleted file mode 100644
index b25295f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditor.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-
-import org.eclipse.core.resources.IMarker;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jface.resource.JFaceColors;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IReusableEditor;
-import org.eclipse.ui.part.EditorPart;
-
-/**
- * Editor used when no source if found for a stack frame.
- * 
- * @since 2.1
- */
-public class SourceNotFoundEditor extends EditorPart implements IReusableEditor {
-	
-	/**
-	 * Text widget used for this editor
-	 */
-	private Text fText;
-
-	/**
-	 * @see org.eclipse.ui.IEditorPart#doSave(IProgressMonitor)
-	 */
-	public void doSave(IProgressMonitor monitor) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorPart#doSaveAs()
-	 */
-	public void doSaveAs() {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorPart#gotoMarker(IMarker)
-	 */
-	public void gotoMarker(IMarker marker) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorPart#init(IEditorSite, IEditorInput)
-	 */
-	public void init(IEditorSite site, IEditorInput input) {
-			setSite(site);
-			setInput(input);
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorPart#isDirty()
-	 */
-	public boolean isDirty() {
-		return false;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorPart#isSaveAsAllowed()
-	 */
-	public boolean isSaveAsAllowed() {
-		return false;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWorkbenchPart#createPartControl(Composite)
-	 */
-	public void createPartControl(Composite parent) {
-		fText = new Text(parent,SWT.MULTI|SWT.READ_ONLY|SWT.WRAP);
-		fText.setForeground(JFaceColors.getErrorText(fText.getDisplay()));
-		fText.setBackground(fText.getDisplay().getSystemColor(SWT.COLOR_WIDGET_BACKGROUND));
-		if (getEditorInput() != null) {
-			setInput(getEditorInput());
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWorkbenchPart#setFocus()
-	 */
-	public void setFocus() {
-		if (fText != null) {
-			fText.setFocus();
-		}
-	}
-
-	/**
-	 * @see IReusableEditor#setInput(org.eclipse.ui.IEditorInput)
-	 */
-	public void setInput(IEditorInput input) {
-		super.setInput(input);
-		setPartName(input.getName());
-		if (fText != null) {
-			fText.setText(input.getToolTipText());
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditorInput.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditorInput.java
deleted file mode 100644
index 450e386..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/SourceNotFoundEditorInput.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-
-import java.text.MessageFormat;
-
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-
-/**
- * Editor input for a stack frame for which source could not be located.
- * 
- * @since 2.1
- */
-public class SourceNotFoundEditorInput extends PlatformObject implements IEditorInput {
-	
-	/**
-	 * Associated stack frame
-	 */
-	private IStackFrame fFrame;
-	
-	/**
-	 * Stack frame text (cached on creation)
-	 */
-	private String fFrameText;
-
-	/**
-	 * Constructs an editor input for the given stack frame,
-	 * to indicate source could not be found.
-	 * 
-	 * @param frame stack frame
-	 */
-	public SourceNotFoundEditorInput(IStackFrame frame) {
-		fFrame = frame;
-		IDebugModelPresentation pres = DebugUITools.newDebugModelPresentation(frame.getModelIdentifier());
-		fFrameText = pres.getText(frame);
-		pres.dispose();
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorInput#exists()
-	 */
-	public boolean exists() {
-		return false;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		return DebugUITools.getDefaultImageDescriptor(fFrame);
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getName()
-	 */
-	public String getName() {
-		try {
-			return fFrame.getName();
-		} catch (DebugException e) {
-			return DebugUIViewsMessages.SourceNotFoundEditorInput_Source_Not_Found_1; //$NON-NLS-1$
-		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getPersistable()
-	 */
-	public IPersistableElement getPersistable() {
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.ui.IEditorInput#getToolTipText()
-	 */
-	public String getToolTipText() {
-		return MessageFormat.format(DebugUIViewsMessages.SourceNotFoundEditorInput_Source_not_found_for__0__2,new String[] {fFrameText}); //$NON-NLS-1$
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/StandardDecoration.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/StandardDecoration.java
deleted file mode 100644
index ea33cf2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/launch/StandardDecoration.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.launch;
-
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.ui.IDebugEditorPresentation;
-import org.eclipse.ui.IEditorPart;
-
-/**
- * A reminder to remove any annotations created by an editor presentation
- */
-public class StandardDecoration extends Decoration {
-	
-	private IThread fThread;
-	private IEditorPart fEditor;
-	private IDebugEditorPresentation fPresentation;
-	
-	public StandardDecoration(IDebugEditorPresentation presentation, IEditorPart editorPart, IThread thread) {
-		fThread = thread;
-		fEditor = editorPart;
-		fPresentation = presentation;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.launch.Decoration#remove()
-	 */
-	public void remove() {
-		fPresentation.removeAnnotations(fEditor, fThread);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.launch.Decoration#getThread()
-	 */
-	public IThread getThread() {
-		return fThread;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java
deleted file mode 100644
index 36f7edd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AbstractMemoryViewPane.java
+++ /dev/null
@@ -1,399 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-
-import java.util.Enumeration;
-import java.util.Hashtable;
-
-import org.eclipse.debug.core.IMemoryBlockListener;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StackLayout;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PlatformUI;
-
-public abstract class AbstractMemoryViewPane implements IMemoryBlockListener, ISelectionListener, SelectionListener, IMemoryView, ISelectionChangedListener, IMemoryViewPane{
-	
-	public static final String BEGINNING_POPUP = "popUpBegin"; //$NON-NLS-1$
-	
-	protected Composite fViewPaneCanvas;
-	protected StackLayout fStackLayout;
-	protected ViewTabEnablementManager fViewTabEnablementManager;
-	protected TabFolder fEmptyTabFolder;
-	protected Hashtable fTabFolderForDebugView = new Hashtable(); 
-	protected boolean fVisible;
-	protected Hashtable fRenderingInfoTable;
-	protected IMemoryBlockRetrieval fKey;  // store the key for current tab folder
-	protected ViewPaneSelectionProvider fSelectionProvider;
-	protected IViewPart fParent;
-	protected String fPaneId;
-	private Composite fCanvas;
-	protected String fLabel;
-	
-	public AbstractMemoryViewPane(IViewPart parent)
-	{
-		super();
-		fParent = parent;
-		fSelectionProvider = new ViewPaneSelectionProvider();
-	}
-	
-	/**
-	 * Create the content of the view pane
-	 * @param parent
-	 * @return the control of the view pane
-	 */
-	public Control createViewPane(Composite parent, String paneId, String label)
-	{	
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IDebugUIConstants.PLUGIN_ID + ".MemoryView_context"); //$NON-NLS-1$
-		fPaneId = paneId;
-		fLabel = label;
-		fCanvas = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.makeColumnsEqualWidth = false;
-		layout.numColumns = 1;
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		GridData data = new GridData();
-		data.grabExcessHorizontalSpace = true;
-		data.grabExcessVerticalSpace = true;
-		data.verticalAlignment = SWT.BEGINNING;
-		data.horizontalAlignment = SWT.BEGINNING;
-		fCanvas.setLayout(layout);
-		fCanvas.setLayoutData(data);
-
-		// memory view area
-		Composite memoryViewAreaParent = fCanvas;
-		Composite subCanvas = new Composite(memoryViewAreaParent, SWT.NONE);	
-		fViewPaneCanvas = subCanvas;
-		fStackLayout = new StackLayout();
-		GridData memoryAreaData = new GridData();
-		memoryAreaData.grabExcessHorizontalSpace = true;
-		memoryAreaData.grabExcessVerticalSpace = true;
-		memoryAreaData.verticalAlignment = SWT.FILL;
-		memoryAreaData.horizontalAlignment = SWT.FILL;
-		fViewPaneCanvas.setLayout(fStackLayout);
-		fViewPaneCanvas.setLayoutData(memoryAreaData);
-		
-		fViewTabEnablementManager = new ViewTabEnablementManager();
-		
-		fEmptyTabFolder = new TabFolder(fViewPaneCanvas, SWT.NULL);
-		setTabFolder(fEmptyTabFolder);
-		
-		addListeners();
-		
-		// check current selection and create folder if something is already selected from debug view
-		ISelection selection = fParent.getViewSite().getPage().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-
-		if (MemoryViewUtil.isValidSelection(selection))
-		{
-			createFolder(selection);
-		}
-		
-		fVisible = true;
-		
-		return fCanvas;
-	}
-	
-	protected void addListeners()
-	{
-		MemoryViewUtil.getMemoryBlockManager().addListener(this);
-		fParent.getViewSite().getPage().addSelectionListener(this);
-	}
-	
-	protected void removeListeners()
-	{
-		MemoryViewUtil.getMemoryBlockManager().removeListener(this);
-		fParent.getViewSite().getPage().removeSelectionListener(this);
-		
-		if (fStackLayout.topControl != null)
-		{
-			TabFolder old = (TabFolder)fStackLayout.topControl;
-			
-			if (!old.isDisposed())
-			{	
-				old.removeSelectionListener(this);
-				old.removeSelectionListener(fViewTabEnablementManager);
-			}
-		}
-	}
-	
-	protected void setTabFolder(TabFolder folder)
-	{
-		if (fStackLayout.topControl != null)
-		{
-			TabFolder old = (TabFolder)fStackLayout.topControl;
-			
-			if (!old.isDisposed())
-			{	
-				old.removeSelectionListener(this);
-				old.removeSelectionListener(fViewTabEnablementManager);
-			}
-		}
-		
-		fStackLayout.topControl = folder;
-		
-		if (folder.getItemCount() > 0)
-		{
-			TabItem[] selectedItem = folder.getSelection();
-			
-			if (selectedItem.length > 0)
-			{
-				fSelectionProvider.setSelection(new StructuredSelection(getCurrentSelection()));
-			}
-		}
-		else
-		{
-			fSelectionProvider.setSelection(new StructuredSelection());
-		}
-		
-		folder.addSelectionListener(this);
-		folder.addSelectionListener(fViewTabEnablementManager);
-	}	
-	
-	
-	private void createFolder(ISelection selection)
-	{
-		if (!(selection instanceof IStructuredSelection))
-			return;
-
-		//only single selection of PICLDebugElements is allowed for this action
-		if (selection == null || selection.isEmpty() || ((IStructuredSelection)selection).size() > 1)
-		{
-			return;
-		}
-
-		Object elem = ((IStructuredSelection)selection).getFirstElement();
-
-		// if not debug element
-		if (!(elem instanceof IDebugElement))
-			return;
-
-		IDebugTarget debugTarget = ((IDebugElement)elem).getDebugTarget();
-		IMemoryBlockRetrieval memRetrieval =(IMemoryBlockRetrieval) ((IDebugElement)elem).getAdapter(IMemoryBlockRetrieval.class);
-		
-		if (memRetrieval == null)
-		{
-			// if debug element returns null from getAdapter, assume its debug target is going to retrieve memory blocks
-			memRetrieval = debugTarget;
-		}	
-		
-		if (memRetrieval == null)
-			return;
-		
-		//if we've got a tabfolder to go with the IMemoryBlockRetrieval, display it
-		if (fTabFolderForDebugView.containsKey(memRetrieval)) {
-			if (fStackLayout.topControl != (TabFolder)fTabFolderForDebugView.get(memRetrieval)) {
-				setTabFolder((TabFolder)fTabFolderForDebugView.get(memRetrieval));
-				fViewPaneCanvas.layout();
-			}
-		} else {	//otherwise, add a new one
-			fTabFolderForDebugView.put(memRetrieval, new TabFolder(fViewPaneCanvas, SWT.NULL));
-			setTabFolder((TabFolder)fTabFolderForDebugView.get(memRetrieval));
-			fViewPaneCanvas.layout();
-		}
-	}
-
-	public IMemoryViewTab getTopMemoryTab() {
-		
-		if (fStackLayout.topControl instanceof TabFolder)
-		{
-			TabFolder folder = (TabFolder)fStackLayout.topControl;
-			if (!folder.isDisposed())
-			{
-				int index = folder.getSelectionIndex();
-				if (index >= 0) {
-					TabItem tab = folder.getItem(index);
-					return (IMemoryViewTab)tab.getData();
-				}
-			}
-		}
-		return null;
-	}
-	
-	protected void disposeTab(TabItem tabItem)
-	{
-		if (tabItem == null)
-			return;
-		
-		// dispose the tab item in case the view tab has not 
-		// cleaned up the tab item
-		if (!tabItem.isDisposed())
-		{	
-			tabItem.dispose();
-		}			
-	}
-
-	protected void emptyFolder()
-	{		
-		setTabFolder(fEmptyTabFolder);
-		if (!fViewPaneCanvas.isDisposed()) {
-			fViewPaneCanvas.layout();
-		}
-	}
-	
-	public void addSelectionListener(ISelectionChangedListener listener)
-	{
-		if (fSelectionProvider == null)
-			fSelectionProvider = new ViewPaneSelectionProvider();
-		
-		fSelectionProvider.addSelectionChangedListener(listener);
-	}
-	
-	public void removeSelctionListener(ISelectionChangedListener listener)
-	{
-		if (fSelectionProvider == null)
-			return;
-		
-		fSelectionProvider.removeSelectionChangedListener(listener);
-	}
-	
-	public ISelectionProvider getSelectionProvider()
-	{
-		return fSelectionProvider;
-	}
-	
-	public void dispose()
-	{
-		removeListeners();
-		
-		// dispose empty folders
-		fEmptyTabFolder.dispose();
-		
-		// dispose all other folders
-		try {
-			
-			if (fTabFolderForDebugView != null) {
-				Enumeration enumeration = fTabFolderForDebugView.elements();
-				
-				while (enumeration.hasMoreElements())
-				{
-					TabFolder tabFolder = (TabFolder)enumeration.nextElement();
-					
-					if (tabFolder.isDisposed())
-						continue;
-					
-					// if tab folder is not empty, dipose view tabs
-					TabItem[] tabs = tabFolder.getItems();
-					
-					for (int i=0; i<tabs.length; i++)
-					{
-						disposeTab(tabs[i]);
-					}
-					
-					tabFolder.dispose();
-				}
-				
-				// set to null so that clean up is only done once
-				fTabFolderForDebugView.clear();
-				fTabFolderForDebugView = null;
-			}
-		} catch (Exception e) {		
-			
-			DebugUIPlugin.logErrorMessage("Exception occurred when the Memory View is disposed."); //$NON-NLS-1$
-		}		
-	}
-	
-	public void setVisible(boolean visible)
-	{
-		fVisible = visible;
-		
-		IMemoryViewTab currentTab = getTopMemoryTab();
-		if (currentTab != null)
-			currentTab.setEnabled(visible);
-	}
-
-	public void selectionChanged(SelectionChangedEvent event) {
-		ISelection selection = event.getSelection();
-		selectionChanged(fParent,selection);
-		
-		fSelectionProvider.setSelection(selection);
-	}
-	
-	/**
-	 * @return the unique identifier of the view pane
-	 */
-	public String getPaneId()
-	{
-		return fPaneId;
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#getControl()
-	 */
-	public Control getControl() {
-		return fCanvas;
-	}
-	
-	public boolean isVisible()
-	{
-		return fVisible;
-	}
-	
-	public String getLabel()
-	{
-		return fLabel;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.memory.IMemoryBlockListener#MemoryBlockAdded(org.eclipse.debug.core.model.IMemoryBlock)
-	 */
-	abstract public void  memoryBlocksAdded(IMemoryBlock[] memoryBlocks);
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.memory.IMemoryBlockListener#MemoryBlockRemoved(org.eclipse.debug.core.model.IMemoryBlock)
-	 */
-	abstract public void memoryBlocksRemoved(final IMemoryBlock[] memoryBlocks);
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	abstract public void selectionChanged(IWorkbenchPart part, ISelection selection);
-	
-	/**
-	 * @return current selection from the view pane
-	 */
-	abstract public Object getCurrentSelection();
-	
-	/**
-	 * retore the view pane based on current selection from the debug view
-	 * and the memory blocks and renderings currently exist 
-	 */
-	abstract public void restoreViewPane();
-	
-	/**
-	 * @return actions to be contributed to the view pane's toolbar
-	 */
-	abstract public IAction[] getActions();
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryBlockAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryBlockAction.java
deleted file mode 100644
index 762b9d6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryBlockAction.java
+++ /dev/null
@@ -1,387 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.model.ITerminate;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IWorkbenchPart;
-
-
-/**
- * Action for adding memory block.
- * 
- * @since 3.0
- */
-public class AddMemoryBlockAction extends Action implements ISelectionListener, IDebugEventSetListener{
-	
-	protected ISelection fCurrentSelection = null;
-	protected IMemoryBlock fLastMemoryBlock;
-	private boolean fAddDefaultRenderings = true;
-	protected IMemoryRenderingSite fSite;
-
-	
-	public AddMemoryBlockAction(IMemoryRenderingSite site)
-	{
-		initialize(site);
-	}
-	
-	/**
-	 * @param addDefaultRenderings - specify if the action should add
-	 * default renderings for the new memory block when it is run
-	 */
-	AddMemoryBlockAction(IMemoryRenderingSite site, boolean addDefaultRenderings)
-	{
-		initialize(site);
-		fAddDefaultRenderings = addDefaultRenderings;
-	}
-	
-	/**
-	 * 
-	 */
-	private void initialize(IMemoryRenderingSite site) {
-		fSite = site;
-		setText(DebugUIMessages.AddMemoryBlockAction_title);
-		
-		setToolTipText(DebugUIMessages.AddMemoryBlockAction_tooltip);
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_MONITOR_EXPRESSION));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_MONITOR_EXPRESSION));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_MONITOR_EXPRESSION));
-		
-		// get selection from Debug View
-		fSite.getSite().getPage().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		
-		// check to see if something is selected in the debug view since a selection event won't be generated for something selected prior to creating this action
-		ISelection selection = DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-		fCurrentSelection = selection;
-		
-		// set up enablement based on current selection
-		setEnabled(MemoryViewUtil.isValidSelection(selection));
-		
-		DebugPlugin.getDefault().addDebugEventListener(this);
-	}
-	
-	public AddMemoryBlockAction(String text, int style, IMemoryRenderingSite site)
-	{
-		super(text, style);
-		
-		fSite = site;
-		setToolTipText(DebugUIMessages.AddMemoryBlockAction_tooltip);
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_MONITOR_EXPRESSION));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_MONITOR_EXPRESSION));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_MONITOR_EXPRESSION));
-		
-		fSite.getSite().getPage().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		
-		// check to see if something is selected in the debug view since a selection event won't be generated for something selected prior to creating this action
-		ISelection selection = fSite.getSite().getPage().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-		fCurrentSelection = selection;
-		setEnabled(MemoryViewUtil.isValidSelection(selection));
-		
-		DebugPlugin.getDefault().addDebugEventListener(this);
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-
-		boolean pin = true; 
-		try {
-			
-			if (getMemoryView() != null)
-			{
-				pin = getMemoryView().isPinMBDisplay();
-				getMemoryView().setPinMBDisplay(false);
-			}
-			
-			//	get current selection from Debug View
-			 ISelection selection = fSite.getSite().getPage().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-			Object elem = ((IStructuredSelection)selection).getFirstElement();
-			if (!(elem instanceof IDebugElement))
-				 return;
-			// ask debug element about memeory retrieval
-			IDebugTarget debugTarget = ((IDebugElement)elem).getDebugTarget();
-			IMemoryBlockRetrieval standardMemRetrieval = (IMemoryBlockRetrieval)((IDebugElement)elem).getAdapter(IMemoryBlockRetrieval.class);
-			if (standardMemRetrieval == null)
-			{
-				// if getAdapter returns null, assume debug target as memory block retrieval
-				standardMemRetrieval = debugTarget;
-			}
-			if (standardMemRetrieval == null)
-				return;
-			Shell shell= DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getShell();
-			// create dialog to ask for expression/address to block
-			MonitorMemoryBlockDialog dialog = new MonitorMemoryBlockDialog(shell, standardMemRetrieval);
-			dialog.open();
-			int returnCode = dialog.getReturnCode();
-			if (returnCode == Window.CANCEL)
-			{
-				return;
-			}
-			// get expression entered in dialog
-			String input = dialog.getExpression();
-			ArrayList expressions = new ArrayList();
-			StringTokenizer tokenizer = new StringTokenizer(input, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens())
-			{
-				expressions.add(tokenizer.nextToken());
-			}
-			String[] expressionsArray = (String[])expressions.toArray(new String[expressions.size()]);
-			for (int i=0; i<expressionsArray.length; i++)
-			{
-				String expression = expressionsArray[i].trim();
-				try {
-					if (standardMemRetrieval instanceof IMemoryBlockRetrievalExtension)
-					{
-						// if the debug session supports IMemoryBlockExtensionRetrieval
-						IMemoryBlockRetrievalExtension memRetrieval = (IMemoryBlockRetrievalExtension)standardMemRetrieval;
-						
-						// get extended memory block with the expression entered
-						IMemoryBlockExtension memBlock = memRetrieval.getExtendedMemoryBlock(expression, elem);
-						
-						// add block to memory block manager
-						if (memBlock != null)
-						{
-							fLastMemoryBlock = memBlock;
-							
-							MemoryViewUtil.getMemoryBlockManager().addMemoryBlocks(new IMemoryBlock[]{memBlock});
-							if (fAddDefaultRenderings)
-								addDefaultRenderings(memBlock);
-						}
-						else
-						{
-							// open error if it failed to retrieve a memory block
-							MemoryViewUtil.openError(DebugUIMessages.AddMemoryBlockAction_title, DebugUIMessages.AddMemoryBlockAction_noMemoryBlock, null);					
-						}
-					}
-					else
-					{
-						// if the debug session does not support IMemoryBlockExtensionRetrieval
-						expression = expression.toUpperCase();
-						String hexPrefix = "0X"; //$NON-NLS-1$
-						if (expression.startsWith(hexPrefix))
-						{
-							expression = expression.substring(hexPrefix.length());
-						}
-						
-						// convert the expression to an address
-						BigInteger address = new BigInteger(expression, 16);
-
-						long longAddress = address.longValue();
-
-						// get the length of memory to block
-						String strLength = dialog.getLength();
-						
-						long length = Long.parseLong(strLength);
-						
-						// must monitor at least one line
-						if (length == 0)
-						{
-							length = IInternalDebugUIConstants.ADD_UNIT_PER_LINE;
-						}
-						
-						// get standard memory block
-						IMemoryBlock memBlock = standardMemRetrieval.getMemoryBlock(longAddress, length);
-						
-						// make sure the memory block returned is not an instance of IMemoryBlockExtension
-						if (memBlock instanceof IMemoryBlockExtension)
-						{
-							Status status = new Status(IStatus.WARNING, DebugUIPlugin.getUniqueIdentifier(),	0, 
-								"IMemoryBlockRetrieval returns IMemoryBlockExtension.  This may result in unexpected behavior.", null); //$NON-NLS-1$
-							DebugUIPlugin.log(status);
-						}
-						
-						if (memBlock != null)
-						{
-							// add memory block to memory block manager
-							fLastMemoryBlock = memBlock;
-							MemoryViewUtil.getMemoryBlockManager().addMemoryBlocks(new IMemoryBlock[]{memBlock});
-							if (fAddDefaultRenderings)
-								addDefaultRenderings(memBlock);
-						}
-						else
-						{
-							// otherwise open up an error doalog
-							MemoryViewUtil.openError(DebugUIMessages.AddMemoryBlockAction_title, DebugUIMessages.AddMemoryBlockAction_noMemoryBlock, null);
-						}
-					}
-				} catch (DebugException e1) {
-					MemoryViewUtil.openError(DebugUIMessages.AddMemoryBlockAction_title, DebugUIMessages.AddMemoryBlockAction_failed, e1);
-				}
-				catch(NumberFormatException e2)
-				{
-					String message = DebugUIMessages.AddMemoryBlockAction_failed + "\n" + DebugUIMessages.AddMemoryBlockAction_expressionEvalFailed; //$NON-NLS-1$
-					MemoryViewUtil.openError(DebugUIMessages.AddMemoryBlockAction_title, message + " " + expression, null); //$NON-NLS-1$
-				}
-			}
-		} finally {
-			if (getMemoryView() != null)
-			{
-				getMemoryView().setPinMBDisplay(pin);
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		
-		// update enablement state based on selection from Debug View
-		setEnabled(MemoryViewUtil.isValidSelection(selection));
-		fCurrentSelection = selection;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		for (int i=0; i < events.length; i++)
-				handleDebugEvent(events[i]);
-	} 
-	
-	private void handleDebugEvent(DebugEvent event)
-	{
-		// update action enablement based on debug event
-		Object src = event.getSource();
-		IDebugTarget srcDT = null;
-		IDebugTarget selectionDT = null;
-		
-		if (event.getKind() == DebugEvent.TERMINATE)
-		{
-			if (src instanceof ITerminate && src instanceof IDebugElement)
-			{
-				srcDT = ((IDebugElement)src).getDebugTarget();
-			}
-			
-			if (fCurrentSelection instanceof IStructuredSelection)
-			{
-				Object elem = ((IStructuredSelection)fCurrentSelection).getFirstElement();
-				if (elem instanceof IDebugElement)
-				{
-					selectionDT = ((IDebugElement)elem).getDebugTarget();
-				}
-			}
-
-			// disable action if the debug target is terminated.
-			if (srcDT == selectionDT)
-			{
-				setEnabled(false);
-			}
-		}
-	}
-	
-	/**
-	 * Return the last memory block added to memory block manager via this action.
-	 * @return Returns the fLastMemoryBlock.
-	 */
-	public IMemoryBlock getLastMemoryBlock() {
-		return fLastMemoryBlock;
-	}
-	
-	protected void dispose() {
-		
-		// remove listeners
-		DebugPlugin.getDefault().removeDebugEventListener(this);
-		fSite.getSite().getPage().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-	}
-	
-	private void addDefaultRenderings(IMemoryBlock memoryBlock)
-	{
-		IMemoryRenderingType primaryType = DebugUITools.getMemoryRenderingManager().getPrimaryRenderingType(memoryBlock);
-		IMemoryRenderingType renderingTypes[] = DebugUITools.getMemoryRenderingManager().getDefaultRenderingTypes(memoryBlock);
-		
-		
-		// create primary rendering
-		try {
-			if (primaryType != null)
-			{
-				createRenderingInContainer(memoryBlock, primaryType, IInternalDebugUIConstants.ID_RENDERING_VIEW_PANE_1);
-			}
-			else if (renderingTypes.length > 0)
-			{
-				primaryType = renderingTypes[0];
-				createRenderingInContainer(memoryBlock, renderingTypes[0], IInternalDebugUIConstants.ID_RENDERING_VIEW_PANE_1);
-			}
-		} catch (CoreException e1) {
-			DebugUIPlugin.log(e1);	
-		}
-		
-		for (int i = 0; i<renderingTypes.length; i++)
-		{
-			try {
-				boolean create = true;
-				if (primaryType != null)
-				{
-					if (primaryType.getId().equals(renderingTypes[i].getId()))
-						create = false;
-				}
-				if (create)
-					createRenderingInContainer(memoryBlock, renderingTypes[i], IInternalDebugUIConstants.ID_RENDERING_VIEW_PANE_2);
-			} catch (CoreException e) {
-				DebugUIPlugin.log(e);
-			}
-		}
-	}
-
-	/**
-	 * @param memoryBlock
-	 * @param primaryType
-	 * @throws CoreException
-	 */
-	private void createRenderingInContainer(IMemoryBlock memoryBlock, IMemoryRenderingType primaryType, String paneId) throws CoreException {
-		IMemoryRendering rendering = primaryType.createRendering();
-		IMemoryRenderingContainer container = fSite.getContainer(paneId);
-		rendering.init(container, memoryBlock);
-		container.addMemoryRendering(rendering);
-	}
-	
-	private MemoryView getMemoryView()
-	{
-		if (fSite instanceof MemoryView)
-			return (MemoryView)fSite;
-		return null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingAction.java
deleted file mode 100644
index 3a80d1e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingAction.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Toolbar "Add Memory Rendering Action" from Memory Rendering Pane
- */
-public class AddMemoryRenderingAction extends AddMemoryBlockAction {
-	
-	public static final String PREFIX = "AddMemoryRenderingAction."; //$NON-NLS-1$
-	public static final String TITLE = PREFIX + "title"; //$NON-NLS-1$
-	public static final String ADD_RENDERING_FAILED = PREFIX + "add_rendering_failed"; //$NON-NLS-1$
-	public static final String FAILED_TO_ADD_THE_SELECTED_RENDERING = PREFIX + "failed_to_add_the_selected_rendering"; //$NON-NLS-1$
-	
-	private IMemoryRenderingContainer fContainer;
-	
-	public AddMemoryRenderingAction(IMemoryRenderingContainer container)
-	{
-		super(DebugUIMessages.AddMemoryRenderingAction_Add_renderings, AS_PUSH_BUTTON, container.getMemoryRenderingSite()); //$NON-NLS-1$
-		setToolTipText(DebugUIMessages.AddMemoryRenderingAction_Add_renderings); //$NON-NLS-1$
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, DebugUIPlugin.getUniqueIdentifier() + ".AddRenderingContextAction_context"); //$NON-NLS-1$
-		fContainer = container;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		
-		// pop up dialog and ask what renderings to create
-		Shell shell = DebugUIPlugin.getShell();
-		
-		IDebugElement elem = getDebugElement(fCurrentSelection);
-		
-		if (elem != null)
-		{	
-			AddMemoryRenderingDialog dialog = new AddMemoryRenderingDialog(shell, fSite);
-			dialog.open();
-			
-			// get a list of renderings to create
-			Object[] renderings = dialog.getResult();
-			
-			IMemoryBlock blk = dialog.getMemoryBlock();
-			
-			if (blk == null)
-				return;
-			
-			// ask for debug target and memory block retrieval
-			IDebugTarget debugTarget = elem.getDebugTarget();
-			IMemoryBlockRetrieval standardMemRetrieval = (IMemoryBlockRetrieval)elem.getAdapter(IMemoryBlockRetrieval.class);
-			
-			if (standardMemRetrieval == null)
-			{	
-				standardMemRetrieval = debugTarget;
-			}
-			
-			if (standardMemRetrieval == null)
-				return;
-			
-			// add memory renderings to Memory Rendering Manager
-			for (int i=0; i<renderings.length; i++)
-			{	
-				if (renderings[i] instanceof IMemoryRenderingType)
-				{
-					try {
-						IMemoryRendering rendering = ((IMemoryRenderingType)renderings[i]).createRendering();
-						if (rendering != null)
-						{
-							rendering.init(fContainer, blk);
-							fContainer.addMemoryRendering(rendering);
-						}
-					} catch (CoreException e) {
-						MemoryViewUtil.openError(ADD_RENDERING_FAILED, FAILED_TO_ADD_THE_SELECTED_RENDERING, e);  //$NON-NLS-1$ //$NON-NLS-2$
-					}
-				}					
-			}
-		}
-	}
-	
-	private IDebugElement getDebugElement(ISelection selection)
-	{
-		if (!(selection instanceof IStructuredSelection))
-			return null;
-
-		//only single selection of PICLDebugElements is allowed for this action
-		if (selection == null || selection.isEmpty() || ((IStructuredSelection)selection).size() > 1)
-		{
-			return null;
-		}
-
-		Object elem = ((IStructuredSelection)selection).getFirstElement();
-
-		// if not debug element
-		if (!(elem instanceof IDebugElement))
-			return null;
-        return (IDebugElement)elem;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingContextAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingContextAction.java
deleted file mode 100644
index 2e002b9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingContextAction.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-
-public class AddMemoryRenderingContextAction implements IViewActionDelegate {
-
-	private IMemoryRenderingSite fMemoryView;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		
-		if (view instanceof IMemoryRenderingSite)
-		{
-			fMemoryView = (IMemoryRenderingSite)view;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-	
-		if (fMemoryView == null)
-			return;
-		
-		IMemoryRenderingContainer[] viewPanes = fMemoryView.getMemoryRenderingContainers();
-		String actionId = action.getId();
-		IMemoryRenderingContainer selectedPane = null;
-		
-		for (int i=0; i<viewPanes.length; i++)
-		{
-			if (actionId.indexOf(viewPanes[i].getId()) != -1)
-			{
-				selectedPane = viewPanes[i];
-				break;
-			}
-		}
-		
-		if (selectedPane == null)
-			return;
-		
-		AddMemoryRenderingAction addAction = new AddMemoryRenderingAction(selectedPane);
-		addAction.run();
-		
-		addAction.dispose();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingDialog.java
deleted file mode 100644
index a7a7a5b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/AddMemoryRenderingDialog.java
+++ /dev/null
@@ -1,459 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ListViewer;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.SelectionDialog;
-
-/**
- * Dialog allowing user to add a memory rendering
- */
-public class AddMemoryRenderingDialog extends SelectionDialog {
-	
-	IMemoryBlock[] fMemoryBlocks;
-	Combo memoryBlock;
-	ListViewer fViewer;
-	IMemoryBlock fSelectedMemoryBlock;
-	Button addNew;
-	
-	ISelectionChangedListener fSelectionChangedListener;
-	MouseListener fMouseListener;
-	SelectionListener fSelectionListener;
-	private IMemoryRenderingSite fSite;
-
-	class MemoryRenderingLabelProvider implements ILabelProvider
-	{
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-		 */
-		public Image getImage(Object element) {
-			return null;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-		 */
-		public String getText(Object element) {
-			if (element instanceof IMemoryRenderingType)
-			{	
-				String label = ((IMemoryRenderingType)element).getLabel();
-				return label;
-			}
-            return element.toString();
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
-		 */
-		public void addListener(ILabelProviderListener listener) {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
-		 */
-		public boolean isLabelProperty(Object element, String property) {
-			return false;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
-		 */
-		public void removeListener(ILabelProviderListener listener) {
-		}
-
-	}
-	
-	class MemoryRenderingContentProvider implements IStructuredContentProvider
-	{
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			IMemoryRenderingType[] renderings = DebugUITools.getMemoryRenderingManager().getRenderingTypes((IMemoryBlock)inputElement);
-			return renderings;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-		
-	}
-
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#close()
-	 */
-	public boolean close() {
-		
-		fViewer.removeSelectionChangedListener(fSelectionChangedListener);
-		memoryBlock.removeSelectionListener(fSelectionListener);
-		addNew.removeMouseListener(fMouseListener);
-		
-		return super.close();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(org.eclipse.swt.widgets.Composite)
-	 */
-	protected void createButtonsForButtonBar(Composite parent) {
-		super.createButtonsForButtonBar(parent);
-		getButton(IDialogConstants.OK_ID).setEnabled(false);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.dialogs.SelectionDialog#getResult()
-	 */
-	public Object[] getResult() {
-		
-		Object[] results = super.getResult();
-		
-		if (results != null)
-		{	
-			Object[] renderings = ((IStructuredSelection)results[0]).toArray();
-			return renderings;
-		}
-        return new Object[0];
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#cancelPressed()
-	 */
-	protected void cancelPressed() {
-		
-		setResult(null);
-		
-		super.cancelPressed();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		
-		ISelection select = fViewer.getSelection();
-		setSelectionResult(new Object[]{select});
-		
-		super.okPressed();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-
-		Composite composite = new Composite(parent, SWT.NONE);
-		GridLayout compositeLayout = new GridLayout();
-		compositeLayout.numColumns = 3;
-		compositeLayout.makeColumnsEqualWidth = true;
-		composite.setLayout(compositeLayout);
-		
-		GridData comositeSpec= new GridData();
-		comositeSpec.grabExcessVerticalSpace= true;
-		comositeSpec.grabExcessHorizontalSpace= true;
-		comositeSpec.horizontalAlignment= GridData.FILL;
-		comositeSpec.verticalAlignment= GridData.CENTER;
-		composite.setLayoutData(comositeSpec);
-		
-		Label textLabel = new Label(composite, SWT.NONE);
-		textLabel.setText(DebugUIMessages.AddMemoryRenderingDialog_Memory_Monitor); //$NON-NLS-1$
-		GridData textLayout = new GridData();
-		textLayout.verticalAlignment=GridData.CENTER;
-		textLayout.horizontalAlignment=GridData.BEGINNING;
-		textLabel.setLayoutData(textLayout);
-		
-		memoryBlock = new Combo(composite, SWT.BORDER | SWT.READ_ONLY);
-		GridData spec= new GridData(GridData.FILL_HORIZONTAL);
-		spec.grabExcessVerticalSpace= false;
-		spec.grabExcessHorizontalSpace= false;
-		spec.horizontalAlignment= GridData.FILL;
-		spec.verticalAlignment= GridData.FILL;
-		spec.horizontalSpan = 4;
-		memoryBlock.setLayoutData(spec);
-		
-		Label filler = new Label(composite, SWT.NONE);
-		filler.setText(" "); //$NON-NLS-1$
-		GridData fillerData = new GridData(GridData.FILL_HORIZONTAL);
-		fillerData.horizontalSpan = 2;
-		filler.setLayoutData(fillerData);
-		
-		addNew = new Button(composite, SWT.NONE);
-		addNew.setText(DebugUIMessages.AddMemoryRenderingDialog_Add_New); //$NON-NLS-1$
-		GridData specButton= new GridData();
-		specButton.horizontalAlignment= GridData.END;
-		specButton.verticalAlignment= GridData.CENTER;
-		addNew.setLayoutData(specButton);
-		
-		fMouseListener =new MouseAdapter() {
-			public void mouseUp(MouseEvent e) {
-				AddMemoryBlockAction action = new AddMemoryBlockAction(fSite, false);
-				action.run();
-				populateDialog(memoryBlock, fViewer, action.getLastMemoryBlock());
-				action.dispose();
-			}}; 
-		
-		addNew.addMouseListener(fMouseListener);
-		
-		fSelectionListener = new SelectionListener(){
-
-			public void widgetSelected(SelectionEvent e) {
-				
-				int idx = memoryBlock.getSelectionIndex();
-				
-				// avoid null pointer exception
-				if (fMemoryBlocks == null)
-					return;
-				
-				fSelectedMemoryBlock = fMemoryBlocks[idx];
-				
-				fViewer.setInput(fSelectedMemoryBlock);			
-				
-			}
-
-			public void widgetDefaultSelected(SelectionEvent e) {
-			}};
-		
-		memoryBlock.addSelectionListener(fSelectionListener);
-		
-		Label renderingLabel = new Label(composite, SWT.NONE);
-		renderingLabel.setText(DebugUIMessages.AddMemoryRenderingDialog_Memory_renderings); //$NON-NLS-1$
-		GridData renderingLayout = new GridData();
-		renderingLayout.horizontalAlignment = GridData.BEGINNING;
-		renderingLayout.verticalAlignment = GridData.CENTER;
-		renderingLayout.horizontalSpan = 3;
-		renderingLabel.setLayoutData(renderingLayout);
-		
-		fViewer = new ListViewer(composite);
-		fViewer.setContentProvider(new MemoryRenderingContentProvider());
-		fViewer.setLabelProvider(new MemoryRenderingLabelProvider());
-		
-		GridData listLayout = new GridData(GridData.FILL_BOTH);
-		listLayout.horizontalSpan = 3;
-		listLayout.heightHint =140;
-		fViewer.getControl().setLayoutData(listLayout);
-		
-		fViewer.addDoubleClickListener(new IDoubleClickListener (){
-
-			public void doubleClick(DoubleClickEvent event) {
-				okPressed();
-			}});
-		
-		populateDialog(memoryBlock, fViewer, null);
-		
-		fSelectionChangedListener = new ISelectionChangedListener() {
-
-			public void selectionChanged(SelectionChangedEvent event) {
-				ISelection selection  = fViewer.getSelection();
-				
-				if (selection.isEmpty())
-				{	
-					getButton(IDialogConstants.OK_ID).setEnabled(false);
-				}
-				else
-				{	
-					getButton(IDialogConstants.OK_ID).setEnabled(true);
-				}
-			}};
-		
-		fViewer.addSelectionChangedListener(fSelectionChangedListener);
-		return composite;
-	}
-
-	public AddMemoryRenderingDialog(Shell parent, IMemoryRenderingSite site) {
-		super(parent);
-		super.setTitle(DebugUIMessages.AddMemoryRenderingDialog_Add_memory_rendering); //$NON-NLS-1$
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, DebugUIPlugin.getUniqueIdentifier() + ".AddMemoryRenderingDialog_context"); //$NON-NLS-1$
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		fSite = site;
-	}
-	
-	private void populateDialog(Combo combo, ListViewer viewer, IMemoryBlock lastAdded)
-	{	
-		// clean up
-		combo.removeAll();
-		
-		IMemoryBlock currentBlock;
-		
-		if (lastAdded != null)
-			currentBlock = lastAdded;
-		else
-		{
-			// take Memory View's selection if possible
-			ISelectionProvider selectionProvider = fSite.getSite().getSelectionProvider();
-			ISelection selection = null;
-			
-			if (selectionProvider != null)
-				selection = selectionProvider.getSelection();
-			else // otherwise, take selection from selection service
-				selection = DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection(IInternalDebugUIConstants.ID_MEMORY_VIEW); //$NON-NLS-1$
-			
-			IDebugElement element = getMemoryBlock(selection);
-			
-			if (!(element instanceof IMemoryBlock) ||(element == null))
-			{
-				
-				ISelection debugSelection = DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-				if (!(debugSelection instanceof IStructuredSelection))
-					return;
-	
-				//only single selection is allowed for this action
-				if (debugSelection == null || debugSelection.isEmpty() || ((IStructuredSelection)debugSelection).size() > 1)
-				{
-					return;
-				}
-	
-				Object elem = ((IStructuredSelection)debugSelection).getFirstElement();
-	
-				// if not debug element
-				if (!(elem instanceof IDebugElement))
-					return;			
-				
-				IMemoryBlock[] blocks = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(((IDebugElement)elem).getDebugTarget());
-				
-				if (blocks.length <= 0)
-				{
-					combo.add(DebugUIMessages.AddMemoryRenderingDialog_Add_New); //$NON-NLS-1$
-					combo.select(0);
-					return;
-				}
-				
-				currentBlock = blocks[0];
-			}
-			else
-			{	
-				currentBlock = (IMemoryBlock)element;
-			}
-		}
-		
-		fMemoryBlocks = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(currentBlock.getDebugTarget());
-		int selectionIdx = -1;
-		for (int i=0; i<fMemoryBlocks.length; i++)
-		{	
-			String text = ""; //$NON-NLS-1$
-			if (fMemoryBlocks[i] instanceof IMemoryBlockExtension)
-			{
-				try {
-					text = ((IMemoryBlockExtension)fMemoryBlocks[i]).getExpression();
-					
-					if (text == null)
-						text = DebugUIMessages.AddMemoryRenderingDialog_Unknown; //$NON-NLS-1$
-					
-					if (((IMemoryBlockExtension)fMemoryBlocks[i]).getBigBaseAddress() != null)
-					{
-						text += " : 0x"; //$NON-NLS-1$
-						text += ((IMemoryBlockExtension)fMemoryBlocks[i]).getBigBaseAddress().toString(16);
-					}	
-				} catch (DebugException e) {
-					long address = fMemoryBlocks[i].getStartAddress();
-					text = Long.toHexString(address);
-				}
-			}
-			else
-			{
-				long address = fMemoryBlocks[i].getStartAddress();
-				text = Long.toHexString(address);
-			}
-
-			if (fMemoryBlocks[i] == currentBlock)
-			{
-				selectionIdx = i;
-			}
-			
-			combo.add(text);
-		}
-
-		combo.select(selectionIdx);
-		fSelectedMemoryBlock = currentBlock;
-		
-		viewer.setInput(currentBlock);
-	}
-	
-	private IMemoryBlock getMemoryBlock(ISelection selection)
-	{
-		if (!(selection instanceof IStructuredSelection))
-			return null;
-
-		//only single selection of PICLDebugElements is allowed for this action
-		if (selection == null || selection.isEmpty() || ((IStructuredSelection)selection).size() > 1)
-		{
-			return null;
-		}
-
-		Object elem = ((IStructuredSelection)selection).getFirstElement();
-		
-		if (elem instanceof IMemoryBlock)
-			return (IMemoryBlock)elem;
-		else if (elem instanceof IMemoryRendering)
-			return ((IMemoryRendering)elem).getMemoryBlock();
-		else
-			return null;
-	}
-	
-	public IMemoryBlock getMemoryBlock()
-	{
-		return fSelectedMemoryBlock;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/CodePagesPrefDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/CodePagesPrefDialog.java
deleted file mode 100644
index f94c32b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/CodePagesPrefDialog.java
+++ /dev/null
@@ -1,173 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.io.UnsupportedEncodingException;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-
-
-/**
- * Dialog to allow user to change code page preference
- * @since 3.1
- */
-public class CodePagesPrefDialog extends Dialog {
-
-	private Text fAsciiCodePage;
-	private Text fEbcdicCodePage;
-	
-	/**
-	 * @param parentShell
-	 */
-	public CodePagesPrefDialog(Shell parentShell) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parentShell, DebugUIPlugin.getUniqueIdentifier() + ".CodePagesPrefDialog_context"); //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-	
-		getShell().setText(DebugUIMessages.CodePagesPrefDialog_1); //$NON-NLS-1$
-		setShellStyle(SWT.RESIZE);
-		
-		Composite canvas = new Composite(parent, SWT.NONE);
-		canvas.setLayout(new GridLayout(2, false));
-		GridData spec2= new GridData();
-		spec2.grabExcessVerticalSpace= true;
-		spec2.grabExcessHorizontalSpace= true;
-		spec2.horizontalAlignment= GridData.FILL;
-		spec2.verticalAlignment= GridData.CENTER;
-		canvas.setLayoutData(spec2);
-
-		Label textLabel = new Label(canvas, SWT.WRAP);
-		textLabel.setText(DebugUIMessages.CodePagesPrefDialog_2); //$NON-NLS-1$
-		GridData textLayout = new GridData();
-		textLayout.widthHint = 280;
-		textLayout.horizontalSpan = 2;
-		textLabel.setLayoutData(textLayout);
-		
-		fAsciiCodePage = new Text(canvas, SWT.BORDER);
-		GridData asciispec= new GridData();
-		asciispec.grabExcessVerticalSpace= false;
-		asciispec.grabExcessHorizontalSpace= true;
-		asciispec.horizontalAlignment= GridData.FILL;
-		asciispec.verticalAlignment= GridData.BEGINNING;
-		asciispec.horizontalSpan = 1;
-		fAsciiCodePage.setLayoutData(asciispec);
-		
-		String codepage = DebugUITools.getPreferenceStore().getString(IDebugUIConstants.PREF_DEFAULT_ASCII_CODE_PAGE);
-		if (codepage == null || codepage.length() == 0)
-			codepage = IDebugPreferenceConstants.DEFAULT_ASCII_CP; //$NON-NLS-1$
-		fAsciiCodePage.setText(codepage);
-		
-		Label ebcdicLabel = new Label(canvas, SWT.WRAP);
-		ebcdicLabel.setText(DebugUIMessages.CodePagesPrefDialog_4); //$NON-NLS-1$
-		GridData ebcdicLayout = new GridData();
-		ebcdicLayout.widthHint = 280;
-		ebcdicLayout.horizontalSpan = 2;
-		ebcdicLabel.setLayoutData(ebcdicLayout);
-		
-		fEbcdicCodePage = new Text(canvas, SWT.BORDER);
-		GridData ebcdicspec= new GridData();
-		ebcdicspec.grabExcessVerticalSpace= false;
-		ebcdicspec.grabExcessHorizontalSpace= true;
-		ebcdicspec.horizontalAlignment= GridData.FILL;
-		ebcdicspec.verticalAlignment= GridData.BEGINNING;
-		ebcdicspec.horizontalSpan = 1;
-		fAsciiCodePage.setLayoutData(ebcdicspec);		
-		fEbcdicCodePage.setLayoutData(asciispec);
-
-		codepage = DebugUITools.getPreferenceStore().getString(IDebugUIConstants.PREF_DEFAULT_EBCDIC_CODE_PAGE);
-		fEbcdicCodePage.setText(codepage);
-		
-		if (codepage == null || codepage.length() == 0)
-			codepage = IDebugPreferenceConstants.DEFAULT_EBCDIC_CP; //$NON-NLS-1$	
-		
-		return canvas;
-	}
-	protected void okPressed() {
-
-		// check that the codepages are supported
-		String asciiCodePage = fAsciiCodePage.getText();
-		asciiCodePage = asciiCodePage.trim();
-		try {
-			new String(new byte[]{1}, asciiCodePage);
-		} catch (UnsupportedEncodingException e) {
-			Shell shell = DebugUIPlugin.getShell();
-			if (shell != null)
-			{
-				IStatus status = DebugUIPlugin.newErrorStatus(DebugUIMessages.CodePagesPrefDialog_0, e); //$NON-NLS-1$
-				ErrorDialog.openError(shell, DebugUIMessages.CodePagesPrefDialog_6,  DebugUIMessages.CodePagesPrefDialog_7, status);		 //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			return;
-		}
-		
-		String ebcdicCodePage = fEbcdicCodePage.getText();
-		ebcdicCodePage = ebcdicCodePage.trim();
-		try {
-			new String(new byte[]{1}, ebcdicCodePage);
-		} catch (UnsupportedEncodingException e) {
-			Shell shell = DebugUIPlugin.getShell();
-			if (shell != null)
-			{
-				IStatus status = DebugUIPlugin.newErrorStatus(DebugUIMessages.CodePagesPrefDialog_0, e); //$NON-NLS-1$
-				ErrorDialog.openError(shell, DebugUIMessages.CodePagesPrefDialog_8,  DebugUIMessages.CodePagesPrefDialog_9, status);		 //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			return;
-		}
-		
-		IPreferenceStore store = DebugUITools.getPreferenceStore();
-		store.setValue(IDebugUIConstants.PREF_DEFAULT_ASCII_CODE_PAGE, asciiCodePage);
-		store.setValue(IDebugUIConstants.PREF_DEFAULT_EBCDIC_CODE_PAGE, ebcdicCodePage);
-		
-		super.okPressed();
-	}
-	
-	/**
-	 * @param shell
-	 */
-	
-	protected void createButtonsForButtonBar(Composite parent) {
-		Button defaultButton = createButton(parent, 3, DebugUIMessages.CodePagesPrefDialog_13, false); //$NON-NLS-1$
-		defaultButton.addSelectionListener(new SelectionAdapter() {
-
-			public void widgetSelected(SelectionEvent e) {
-				String defaultASCII = IDebugPreferenceConstants.DEFAULT_ASCII_CP;
-				fAsciiCodePage.setText(defaultASCII);
-				String defaulgEBCDIC = IDebugPreferenceConstants.DEFAULT_EBCDIC_CP;
-				fEbcdicCodePage.setText(defaulgEBCDIC);
-			}});
-		super.createButtonsForButtonBar(parent);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryView.java
deleted file mode 100644
index aa0ae65..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryView.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-
-/**
- * Functions to allow user to control the Memory View or the Memory Rendering View
- * 
- * @since 3.0
- */
-public interface IMemoryView
-{
-	/**
-	 * @return the top view tab from the Memory View
-	 */
-	public IMemoryViewTab getTopMemoryTab( );
-	
-	/**
-	 * @return all view tabs from current tab folder
-	 */
-	public IMemoryViewTab[] getAllViewTabs();
-	
-	/**
-	 * Move specified view tab to the top
-	 * @param viewTab
-	 */
-	public void moveToTop(IMemoryViewTab viewTab);
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewPane.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewPane.java
deleted file mode 100644
index e7329f1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewPane.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-
-/**
- * Represent a view pane in the memory view.
- * 
- * This is an internal interface for mananging the view panes within the Memory View
- * @since 3.1
- */
-public interface IMemoryViewPane {
-	
-	/**
-	 * Create the view pane with the given parent composite, and pane
-	 * id. 
-	 * @param parent
-	 * @param paneId
-	 * @param label
-	 * @return the control of the view pane
-	 */
-	public Control createViewPane(Composite parent, String paneId, String label);
-	
-	/**
-	 * Restore view pane based on current selection from the debug view.
-	 * Create memory blocks or renderings that currently exist in  the debug
-	 * session.
-	 */
-	public void restoreViewPane();
-	
-	/**
-	 * Dispose the view pane
-	 */
-	public void dispose();
-	
-	/**
-	 * @return unique identifier of the view pane
-	 */
-	public String getId();
-	
-	/**
-	 * @return array of actions to be contributed to the view pane's 
-	 * acition bar.
-	 */
-	public IAction[] getActions();
-	
-	/**
-	 * Add the given selection listener to the view pane.  The selection
-	 * listener gets notified when the selection from the view pane
-	 * has changed.
-	 * @param listener
-	 */
-	public void addSelectionListener(ISelectionChangedListener listener);
-	
-	/**
-	 * Remove the selection listener from the view pane. The listener
-	 * will no longer get notified when selection is changed.
-	 * @param listener
-	 */
-	public void removeSelctionListener(ISelectionChangedListener listener);
-	
-	/**
-	 * @return the selection provider of the view pane
-	 */
-	public ISelectionProvider getSelectionProvider();
-	
-	/**
-	 * @return the control for ths memory view pane
-	 */
-	public Control getControl();
-	
-	/**
-	 * Called when the view pane becomes visible or hidden
-	 * @param visible visibility state of teh view pane
-	 */
-	public void setVisible(boolean visible);
-	
-	/**
-	 * @return if the view pane is currently visible
-	 */
-	public boolean isVisible();
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewTab.java
deleted file mode 100644
index c9dab6a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/IMemoryViewTab.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-
-
-/**
- * Represent a view tab in the Memory View or Memory Rendering View
- * 
- * Refer to AbstractMemoryViewTab.
- * This is an internal interface. This class is not intended to be implemented by clients.
- * 
- * @since 3.0
- */
-public interface IMemoryViewTab
-{	
-	/**
-	 * Remove the view tab.
-	 */
-	public void dispose();
-	
-	/**
-	 * @return if the view tab is disposed
-	 */
-	public boolean isDisposed();
-	
-	/**
-	 * @return enablement state of the view tab.
-	 */
-	public boolean isEnabled();
-	
-	
-	/**
-	 * Sets the enablament state of the view tab.
-	 * @param enabled
-	 */
-	public void setEnabled(boolean enabled);
-	
-	/**
-	 * Set view tab's label
-	 * @param label
-	 */
-	public void setTabLabel(String label);
-	
-	/**
-	 * @return view tab's label, null if the label is not available
-	 */
-	public String getTabLabel();
-	
-	/**
-	 * @return the rendering of this view tab
-	 */
-	public IMemoryRendering getRendering();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/LinkRenderingPanesAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/LinkRenderingPanesAction.java
deleted file mode 100644
index 767f3c5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/LinkRenderingPanesAction.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * Action to link/unlink rendering view panes
- */
-public class LinkRenderingPanesAction implements IViewActionDelegate{
-
-	IMemoryRenderingSite fRenderingSite;
-	private MemoryViewSynchronizationService fMemSyncService;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {	
-		
-		if (view instanceof IMemoryRenderingSite)
-		{
-			fRenderingSite = (IMemoryRenderingSite)view;
-			
-			IMemoryRenderingSynchronizationService syncService = fRenderingSite.getSynchronizationService();
-			
-			if (syncService instanceof MemoryViewSynchronizationService)
-				fMemSyncService = (MemoryViewSynchronizationService)syncService;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		
-		if (fMemSyncService == null)
-			return;
-		
-		fMemSyncService.setEnabled(!fMemSyncService.isEnabled());
-		updateActionState(action);
-	}
-
-	/**
-	 * @param action
-	 */
-	private void updateActionState(IAction action) {
-		
-		if (fMemSyncService == null)
-			return;
-		
-		if (fMemSyncService.isEnabled())
-			action.setChecked(true);
-		else
-			action.setChecked(false);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		updateActionState(action);		
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryBlocksTreeViewPane.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryBlocksTreeViewPane.java
deleted file mode 100644
index bbfd8ab..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryBlocksTreeViewPane.java
+++ /dev/null
@@ -1,677 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
- 
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-import java.util.Hashtable;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IMemoryBlockListener;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.views.memory.renderings.BasicDebugViewContentProvider;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.IContentProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-
-
-/**
- * Tree viewer for memory blocks
- */
-public class MemoryBlocksTreeViewPane implements ISelectionListener, IMemoryViewPane{
-	
-	public static final String PANE_ID = DebugUIPlugin.getUniqueIdentifier() + ".MemoryView.MemoryBlocksTreeViewPane"; //$NON-NLS-1$
-	
-	private IViewPart fParent;
-	private TreeViewer fTreeViewer;
-	private MemoryBlocksViewerContentProvider fContentProvider;
-	protected IDebugTarget fDebugTarget;
-	private ViewPaneSelectionProvider fSelectionProvider;
-	private AddMemoryBlockAction fAddMemoryBlockAction;
-	private IAction fRemoveMemoryBlockAction;
-	private IAction fRemoveAllMemoryBlocksAction;
-	private Hashtable fTargetMemoryBlockMap = new Hashtable();
-	private String fPaneId;
-	private boolean fVisible = true;
-	private ArrayList fMemoryBlocks = new ArrayList();
-	
-	class TreeViewerRemoveMemoryBlocksAction extends Action
-	{
-		TreeViewerRemoveMemoryBlocksAction()
-		{
-			super();
-			setText(DebugUIMessages.RemoveMemoryBlockAction_title); //$NON-NLS-1$
-
-			setToolTipText(DebugUIMessages.RemoveMemoryBlockAction_tooltip); //$NON-NLS-1$
-			setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_REMOVE_MEMORY));	
-			setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_REMOVE_MEMORY));
-			setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_REMOVE_MEMORY));
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".RemoveMemoryBlockAction_context"); //$NON-NLS-1$
-			setEnabled(true);
-		}
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.action.IAction#run()
-		 */
-		public void run() {
-			ISelection selected = fTreeViewer.getSelection();
-			
-			if (selected != null && selected instanceof IStructuredSelection)
-			{
-				Object[] selectedMemBlks = ((IStructuredSelection)selected).toArray();
-				IMemoryBlock[] memBlocks = new IMemoryBlock[selectedMemBlks.length];
-				
-				System.arraycopy(selectedMemBlks, 0, memBlocks, 0, selectedMemBlks.length);
-				DebugPlugin.getDefault().getMemoryBlockManager().removeMemoryBlocks(memBlocks);
-			}
-		}
-	}
-	
-	class TreeViewerRemoveAllMemoryBlocksAction extends Action
-	{
-		TreeViewerRemoveAllMemoryBlocksAction()
-		{
-			super();
-			setText(DebugUIMessages.MemoryBlocksTreeViewPane_2); //$NON-NLS-1$
-
-			setToolTipText(DebugUIMessages.MemoryBlocksTreeViewPane_2); //$NON-NLS-1$
-			setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_REMOVE_ALL));	
-			setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_REMOVE_ALL));
-			setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_REMOVE_ALL));
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".RemoveAllMemoryBlocksAction_context"); //$NON-NLS-1$
-		}
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.action.IAction#run()
-		 */
-		public void run() {
-			
-			IWorkbenchWindow window= DebugUIPlugin.getActiveWorkbenchWindow();
-			if (window == null) {
-				return;
-			}
-			boolean proceed = MessageDialog.openQuestion(window.getShell(), DebugUIMessages.MemoryBlocksTreeViewPane_0, DebugUIMessages.MemoryBlocksTreeViewPane_1); //$NON-NLS-1$ //$NON-NLS-2$
-			if (proceed) {
-				IMemoryBlock[] memBlocks;
-				
-				IContentProvider contentProvider = fTreeViewer.getContentProvider();
-				
-				if (contentProvider instanceof IStructuredContentProvider)
-				{
-					IStructuredContentProvider strucContentProv = (IStructuredContentProvider)contentProvider;
-					Object[] elements = strucContentProv.getElements(fDebugTarget);
-					memBlocks = new IMemoryBlock[elements.length];
-					System.arraycopy(elements, 0, memBlocks, 0, elements.length);
-					DebugPlugin.getDefault().getMemoryBlockManager().removeMemoryBlocks(memBlocks);	
-				}
-			}
-		}		
-	}
-	
-	class MemoryBlocksViewerContentProvider extends BasicDebugViewContentProvider implements IMemoryBlockListener, ITreeContentProvider
-	{
-		
-		public MemoryBlocksViewerContentProvider()
-		{
-			DebugPlugin.getDefault().getMemoryBlockManager().addListener(this);
-			DebugPlugin.getDefault().addDebugEventListener(this);
-		}
-		
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-			
-			if (newInput != fDebugTarget && newInput instanceof IDebugTarget)
-			{
-				fDebugTarget = (IDebugTarget)newInput;
-				fMemoryBlocks.clear();
-				getMemoryBlocks();
-				updateActionsEnablement();
-			}
-
-			super.inputChanged(viewer, oldInput, newInput);
-		}
-		
-		/**
-		 * 
-		 */
-		private void getMemoryBlocks() {
-			
-			if (fDebugTarget == null)
-				return;
-			
-			IMemoryBlock memoryBlocks[] = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks(fDebugTarget);
-
-			for (int i=0; i<memoryBlocks.length; i++)
-			{
-				if (!fMemoryBlocks.contains(memoryBlocks[i]))
-				{
-					fMemoryBlocks.add(memoryBlocks[i]);
-				}
-			}
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			if (inputElement instanceof IDebugTarget)
-			{	
-				fDebugTarget = (IDebugTarget)inputElement;
-				
-				return (IMemoryBlock[])fMemoryBlocks.toArray(new IMemoryBlock[fMemoryBlocks.size()]);
-			}
-			return new Object[]{inputElement};
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-		 */
-		public void dispose() {
-			super.dispose();
-			DebugPlugin.getDefault().getMemoryBlockManager().removeListener(this);
-			DebugPlugin.getDefault().removeDebugEventListener(this);
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.debug.internal.core.memory.IMemoryBlockListener#MemoryBlockAdded(org.eclipse.debug.core.model.IMemoryBlock)
-		 */
-		public void memoryBlocksAdded(IMemoryBlock[] memory) {
-
-			// if the content provider is disposed, do not handle event
-			if (fDisposed)
-				return;
-			
-			IMemoryBlock memoryBlocks[] = memory;
-
-			for (int i=0; i<memoryBlocks.length; i++)
-			{
-				if (!fMemoryBlocks.contains(memoryBlocks[i]))
-				{
-					fMemoryBlocks.add(memoryBlocks[i]);
-				}
-			}
-			
-			fTreeViewer.refresh();
-			
-			if (fParent instanceof MemoryView)
-			{
-				MemoryView mv = (MemoryView)fParent;
-				// force a selection if there is currently only one memory block in the view
-				if (!mv.isPinMBDisplay() || fMemoryBlocks.size() == 1)
-				{
-					// switch to the memory block if there is only one memory block in the view
-					fTreeViewer.setSelection(new StructuredSelection(memory));
-					fSelectionProvider.setSelection(new StructuredSelection(memory));
-				}
-			}
-			else
-			{
-				fTreeViewer.setSelection(new StructuredSelection(memory));
-				fSelectionProvider.setSelection(new StructuredSelection(memory));
-			}
-			updateActionsEnablement();
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.debug.internal.core.memory.IMemoryBlockListener#MemoryBlockRemoved(org.eclipse.debug.core.model.IMemoryBlock)
-		 */
-		public void memoryBlocksRemoved(final IMemoryBlock[] memory) {
-			
-			DebugUIPlugin.getDefault().getWorkbench().getDisplay().syncExec(new Runnable() {
-
-				public void run() {
-					for (int i=0; i<memory.length; i++)
-					{
-						fMemoryBlocks.remove(memory[i]);
-					}
-					
-					// if the content provider is disposed, do not update viewer
-					if (!fDisposed)
-					{
-						fTreeViewer.refresh();
-						IMemoryBlock[] memoryBlocks = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks(fDebugTarget);
-						if (memoryBlocks != null && memoryBlocks.length > 0)
-						{
-							fTreeViewer.setSelection(new StructuredSelection(memoryBlocks[0]));
-						}
-					}
-					updateActionsEnablement();
-				}});
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.debug.internal.ui.views.memory.BasicDebugViewContentProvider#doHandleDebugEvent(org.eclipse.debug.core.DebugEvent)
-		 */
-		protected void doHandleDebugEvent(DebugEvent event) {
-			
-			// if the view is disposed, do not handle event
-			if (fDisposed)
-				return;
-			
-			if (event.getKind() == DebugEvent.TERMINATE)
-			{
-				if (event.getSource() == fDebugTarget)
-					fTreeViewer.setInput(null);
-				else if (event.getSource() instanceof IDebugTarget)
-				{
-					IDebugTarget target = (IDebugTarget)event.getSource();
-					fTargetMemoryBlockMap.remove(target);
-				}
-			}			
-			else if (event.getKind() == DebugEvent.SUSPEND)
-			{
-				if (event.getSource() instanceof IDebugElement)
-				{
-					IDebugElement elem = (IDebugElement)event.getSource();
-					// only update if the view pane is visible
-					if (elem.getDebugTarget() == fDebugTarget && fVisible)
-						fTreeViewer.refresh();
-				}
-			}
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
-		 */
-		public Object[] getChildren(Object parentElement) {
-			return new Object[0];
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
-		 */
-		public Object getParent(Object element) {
-			if (element instanceof IDebugTarget)
-			{
-				return null;
-			}
-			return fDebugTarget;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-		 */
-		public boolean hasChildren(Object element) {
-			if (element instanceof IDebugTarget)
-			{
-				return true;
-			}
-			return false;
-		}
-	}
-	
-	class MemoryBlocksViewerLabelProvider extends LabelProvider
-	{	
-		public Image getImage(Object element) {
-			
-			if (element instanceof IMemoryBlock)
-				return DebugPluginImages.getImage(IDebugUIConstants.IMG_OBJS_VARIABLE);
-			return super.getImage(element);
-		}
-		
-		public String getText(Object element) {
-			if (element instanceof IMemoryBlock)
-			{
-				return getLabel((IMemoryBlock)element);
-			}
-			return element.toString();
-		}
-		
-		/**
-		 * @param memoryBlockLabel
-		 * @return
-		 */
-		private String getLabel(IMemoryBlock memoryBlock) {
-			
-			String memoryBlockLabel = " "; //$NON-NLS-1$
-			if (memoryBlock instanceof IMemoryBlockExtension)
-			{
-				// simply return the expression without the address
-				// do not want to keep track of changes in the address
-				if (((IMemoryBlockExtension)memoryBlock).getExpression() != null)
-				{
-					memoryBlockLabel += ((IMemoryBlockExtension)memoryBlock).getExpression();
-				}
-			}
-			else
-			{
-				long address = memoryBlock.getStartAddress();
-				memoryBlockLabel = Long.toHexString(address);
-			}
-			return memoryBlockLabel;
-		}
-	}
-	
-	public MemoryBlocksTreeViewPane(IViewPart parent)
-	{
-		fParent = parent;
-		fSelectionProvider = new ViewPaneSelectionProvider();
-	}
-	
-	public Control createViewPane(Composite parent, String paneId, String label)
-	{
-		fPaneId = paneId;
-		fTreeViewer = new TreeViewer(parent);
-		fContentProvider = new MemoryBlocksViewerContentProvider();
-		fTreeViewer.setLabelProvider(new MemoryBlocksViewerLabelProvider());
-		fTreeViewer.setContentProvider(fContentProvider);
-		fParent.getViewSite().getPage().addSelectionListener(this);
-		
-		fTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
-
-			public void selectionChanged(SelectionChangedEvent event) {
-				ISelection treeSelected = event.getSelection();
-				fSelectionProvider.setSelection(treeSelected);
-				
-				if (treeSelected instanceof IStructuredSelection)
-				{
-					Object mem = ((IStructuredSelection)treeSelected).getFirstElement();
-					if (mem != null)
-						fTargetMemoryBlockMap.put(fDebugTarget, mem);
-				}
-				
-			}});
-
-		populateViewPane();
-		
-		// create context menu
-		MenuManager mgr = createContextMenuManager();
-		Menu menu = mgr.createContextMenu(fTreeViewer.getControl());
-		fTreeViewer.getControl().setMenu(menu);
-		
-		// set selection to the first memory block if one exist
-		IMemoryBlock[] memoryBlocks = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks(fDebugTarget);
-		if (memoryBlocks.length > 0)
-		{
-			fTreeViewer.setSelection(new StructuredSelection(memoryBlocks[0]));
-		}
-		
-		return fTreeViewer.getControl();
-	}
-	
-	
-	/**
-	 * 
-	 */
-	private void populateViewPane() {
-		
-		ISelection selected = fParent.getSite().getPage().getSelection(IDebugUIConstants.ID_DEBUG_VIEW); //$NON-NLS-1$
-		if (selected instanceof IStructuredSelection)
-		{
-			Object obj = ((IStructuredSelection)selected).getFirstElement();
-			
-			if (obj instanceof IDebugElement)
-			{
-				fTreeViewer.setInput(((IDebugElement)obj).getDebugTarget());
-			}
-		}
-		
-		ISelection selection = null;
-		if (fParent.getSite().getSelectionProvider() != null)
-			selection = fParent.getSite().getSelectionProvider().getSelection();
-		
-		IMemoryBlock memoryBlock = null;
-		
-		if (selection == null)
-		{
-			return;
-		}
-		
-		// get memory block from selection if selection is not null
-		memoryBlock = getMemoryBlock(selection);
-		
-		if (memoryBlock != null)
-			fTreeViewer.setSelection(new StructuredSelection(memoryBlock));
-	}
-	
-	private IMemoryBlock getMemoryBlock(ISelection selection)
-	{
-		if (!(selection instanceof IStructuredSelection))
-			return null;
-
-		//only single selection of PICLDebugElements is allowed for this action
-		if (selection == null || selection.isEmpty() || ((IStructuredSelection)selection).size() > 1)
-		{
-			return null;
-		}
-
-		Object elem = ((IStructuredSelection)selection).getFirstElement();
-		
-		if (elem instanceof IMemoryBlock)
-			return (IMemoryBlock)elem;
-		else if (elem instanceof IMemoryRendering)
-			return ((IMemoryRendering)elem).getMemoryBlock();
-		else
-			return null;
-	}
-
-	protected MenuManager createContextMenuManager() {
-		MenuManager menuMgr = new MenuManager("#PopupMenu"); //$NON-NLS-1$
-		menuMgr.setRemoveAllWhenShown(true);
-		menuMgr.addMenuListener(new IMenuListener() {
-			public void menuAboutToShow(IMenuManager manager) {
-				manager.add(fAddMemoryBlockAction);
-				manager.add(fRemoveMemoryBlockAction);
-				manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-			}
-		});
-
-		// register a context menu manager, use its pane id as the menu id
-		fParent.getSite().registerContextMenu(getId(), menuMgr, fSelectionProvider);
-		return menuMgr;
-	}
-	
-	public void dispose()
-	{
-		fMemoryBlocks.clear();
-		fParent.getViewSite().getPage().removeSelectionListener(this); 
-		fContentProvider.dispose();
-		fAddMemoryBlockAction.dispose();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		if (selection instanceof IStructuredSelection)
-		{
-			Object obj = ((IStructuredSelection)selection).getFirstElement();
-			
-			if (obj instanceof IDebugElement)
-			{
-				IDebugTarget debugTarget = ((IDebugElement)obj).getDebugTarget();
-				if (debugTarget != null && fTreeViewer != null && fDebugTarget != debugTarget)
-				{
-					fTreeViewer.setInput(debugTarget);
-					Object selectedObj = fTargetMemoryBlockMap.get(debugTarget);
-					
-					// if no selected object is stored, pick the first memory block
-					if (selectedObj == null)
-					{
-						IMemoryBlock[] memBlks = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks(debugTarget);
-						if (memBlks.length > 0)
-							selectedObj = memBlks[0];
-					}
-					
-					if (selectedObj != null)
-						fTreeViewer.setSelection(new StructuredSelection(selectedObj));
-				}
-			}
-			if (obj instanceof IMemoryBlock)
-			{
-				// if the selection event comes from this view
-				if (part == fParent)
-				{
-					// do not change selection if the selection is already correct
-					ISelection treeSel = fTreeViewer.getSelection();
-					if (treeSel instanceof IStructuredSelection)
-					{
-						if (((IStructuredSelection)treeSel).getFirstElement() == obj)
-							return;
-					}
-					fTreeViewer.setSelection(new StructuredSelection(obj));
-				}
-			}
-		}
-	}
-	
-	public String getId()
-	{
-		return fPaneId;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#getActions()
-	 */
-	public IAction[] getActions() {
-		
-		if (fAddMemoryBlockAction == null)
-				fAddMemoryBlockAction = new AddMemoryBlockAction((IMemoryRenderingSite)fParent);
-		
-		if (fRemoveMemoryBlockAction == null)
-		{
-			fRemoveMemoryBlockAction = new TreeViewerRemoveMemoryBlocksAction();
-		}
-		
-		if (fRemoveAllMemoryBlocksAction == null)
-		{
-			fRemoveAllMemoryBlocksAction = new TreeViewerRemoveAllMemoryBlocksAction();
-		}
-		
-		updateActionsEnablement();
-		
-		return new IAction[]{fAddMemoryBlockAction, fRemoveMemoryBlockAction, fRemoveAllMemoryBlocksAction};
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#addSelectionListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-	 */
-	public void addSelectionListener(ISelectionChangedListener listener)
-	{
-		if (fSelectionProvider == null)
-			fSelectionProvider = new ViewPaneSelectionProvider();
-		
-		fSelectionProvider.addSelectionChangedListener(listener);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#removeSelctionListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-	 */
-	public void removeSelctionListener(ISelectionChangedListener listener)
-	{
-		if (fSelectionProvider == null)
-			return;
-		
-		fSelectionProvider.removeSelectionChangedListener(listener);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#getSelectionProvider()
-	 */
-	public ISelectionProvider getSelectionProvider() {
-		return fSelectionProvider;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#restoreViewPane()
-	 */
-	public void restoreViewPane() {
-		populateViewPane();
-		updateActionsEnablement();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#getControl()
-	 */
-	public Control getControl() {
-		return fTreeViewer.getControl();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#setVisible(boolean)
-	 */
-	public void setVisible(boolean visible) {
-		if (fVisible != visible)
-		{
-			fVisible = visible;
-			
-			if(fVisible)
-				fTreeViewer.refresh();
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewPane#isVisible()
-	 */
-	public boolean isVisible() {
-		return fVisible;
-	}
-	
-	private void updateActionsEnablement()
-	{
-		if (fRemoveMemoryBlockAction == null)
-			return;
-		
-		if (fMemoryBlocks == null)
-			return;
-		
-		if (fRemoveAllMemoryBlocksAction == null)
-			return;
-		
-		if (fMemoryBlocks.size() > 0)
-		{
-			fRemoveMemoryBlockAction.setEnabled(true);
-			fRemoveAllMemoryBlocksAction.setEnabled(true);
-		}
-		else
-		{
-			fRemoveMemoryBlockAction.setEnabled(false);
-			fRemoveAllMemoryBlocksAction.setEnabled(false);
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryView.java
deleted file mode 100644
index f777278..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryView.java
+++ /dev/null
@@ -1,597 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.StringTokenizer;
-
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.ToolBarManager;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.custom.ViewForm;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.ToolBar;
-import org.eclipse.ui.IPartListener2;
-import org.eclipse.ui.IViewReference;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.ViewPart;
-
-/**
- * 
- * @since 3.0
- */
-public class MemoryView extends ViewPart implements IMemoryRenderingSite {
-
-	protected MemoryViewSelectionProvider fSelectionProvider;
-	private MemoryViewPartListener fPartListener;
-	
-	private SashForm fSashForm;
-	private Hashtable fViewPanes = new Hashtable();
-	private Hashtable fViewPaneControls = new Hashtable();
-	private ArrayList fVisibleViewPanes = new ArrayList();
-	private boolean fVisible;
-	
-	private ArrayList fWeights = new ArrayList();
-	
-	private static final String VISIBILITY_PREF = IInternalDebugUIConstants.ID_MEMORY_VIEW+".viewPanesVisibility"; //$NON-NLS-1$
-	
-	private String[] defaultVisiblePaneIds ={MemoryBlocksTreeViewPane.PANE_ID, IInternalDebugUIConstants.ID_RENDERING_VIEW_PANE_1};
-		
-	private MemoryBlocksTreeViewPane fMemBlkViewer;
-	
-	private MemoryViewSynchronizationService fSyncService;
-	
-	private boolean fPinMBDisplay = true;	// pin memory block display, on by default
-	private static int fViewCnt = 0;
-	
-	class MemoryViewSelectionProvider implements ISelectionProvider, ISelectionChangedListener
-	{
-		ArrayList fListeners = new ArrayList();
-		
-		IStructuredSelection fSelections = new StructuredSelection();
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ISelectionProvider#addSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-		 */
-		public void addSelectionChangedListener(ISelectionChangedListener listener)
-		{
-			if (!fListeners.contains(listener))
-				fListeners.add(listener);
-			
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection()
-		 */
-		public ISelection getSelection()
-		{
-			return fSelections;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ISelectionProvider#removeSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-		 */
-		public void removeSelectionChangedListener(ISelectionChangedListener listener)
-		{
-			if (fListeners.contains(listener))
-				fListeners.remove(listener);
-			
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ISelectionProvider#setSelection(org.eclipse.jface.viewers.ISelection)
-		 */
-		public void setSelection(ISelection selection)
-		{
-			if (selection instanceof IStructuredSelection)
-			{		
-				boolean fireChanged = false;
-				
-				// only fire change event if the selection has really changed
-				if (fSelections.getFirstElement() != ((IStructuredSelection)selection).getFirstElement())
-					fireChanged = true;
-				
-				fSelections = (IStructuredSelection)selection;
-				
-				if (fireChanged)
-					fireChanged();
-			}
-		}
-		
-		public void fireChanged()
-		{
-			SelectionChangedEvent evt = new SelectionChangedEvent(this, getSelection());
-			for (int i=0; i<fListeners.size(); i++)
-			{
-				((ISelectionChangedListener)fListeners.get(i)).selectionChanged(evt);
-			}
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-		 */
-		public void selectionChanged(SelectionChangedEvent event) {
-			ISelection viewPaneSelection = event.getSelection();
-			
-			if (viewPaneSelection instanceof IStructuredSelection)
-			{
-				Object selected = ((IStructuredSelection)viewPaneSelection).getFirstElement();
-			
-					StructuredSelection strucSelection = new StructuredSelection(new Object[]{selected});
-					setSelection(strucSelection);
-			}
-		}
-	}
-	
-	class MemoryViewPartListener implements IPartListener2
-	{
-		IMemoryRenderingSite fView = null;
-		
-		public MemoryViewPartListener(IMemoryRenderingSite view)
-		{
-			fView = view;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.IPartListener2#partActivated(org.eclipse.ui.IWorkbenchPartReference)
-		 */
-		public void partActivated(IWorkbenchPartReference ref) {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.IPartListener2#partBroughtToTop(org.eclipse.ui.IWorkbenchPartReference)
-		 */
-		public void partBroughtToTop(IWorkbenchPartReference ref) {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.IPartListener2#partClosed(org.eclipse.ui.IWorkbenchPartReference)
-		 */
-		public void partClosed(IWorkbenchPartReference ref) {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.IPartListener2#partDeactivated(org.eclipse.ui.IWorkbenchPartReference)
-		 */
-		public void partDeactivated(IWorkbenchPartReference ref) {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.IPartListener2#partHidden(org.eclipse.ui.IWorkbenchPartReference)
-		 */
-		public void partHidden(IWorkbenchPartReference ref) {
-			
-			IWorkbenchPart part = ref.getPart(false);
-			
-			if (part == fView)
-			{
-				setVisible(false);
-			}
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.IPartListener2#partVisible(org.eclipse.ui.IWorkbenchPartReference)
-		 */
-		public void partVisible(IWorkbenchPartReference ref) {
-			IWorkbenchPart part = ref.getPart(false);
-			
-			if (part == fView)
-			{
-				setVisible(true);
-				restoreView();
-			}
-
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.IPartListener2#partInputChanged(org.eclipse.ui.IWorkbenchPartReference)
-		 */
-		public void partInputChanged(IWorkbenchPartReference ref) {
-		}
-
-		public void partOpened(IWorkbenchPartReference ref)
-		{	
-		}
-	}
-	
-	public void init(IViewSite site) throws PartInitException {
-		super.init(site);
-		
-		fViewCnt ++;
-		String secondaryId = site.getSecondaryId();
-		if (secondaryId != null)
-			MemoryViewIdRegistry.registerView(secondaryId);
-		
-		// only do this the first time
-		// not sure if there is a bug in the UI... if the view is
-		// not a primary view and if it's hidden, the view is not
-		// init and created until it becomes visible.
-		if (fViewCnt == 1)
-		{
-			// also try to find other views and register
-			if (DebugUIPlugin.getActiveWorkbenchWindow() != null &&
-				DebugUIPlugin.getActiveWorkbenchWindow().getActivePage() != null)
-			{
-				IViewReference references[] = DebugUIPlugin.getActiveWorkbenchWindow().getActivePage().getViewReferences();
-				for (int i=0; i<references.length; i++)
-				{
-					if (references[i].getSecondaryId() != null)
-					{
-						MemoryViewIdRegistry.registerView(references[i].getSecondaryId());
-					}
-				}
-			}
-		}
-		
-		fSyncService = new MemoryViewSynchronizationService();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createPartControl(Composite parent) {
-
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IDebugUIConstants.PLUGIN_ID + ".MemoryView_context"); //$NON-NLS-1$
-		
-		fSashForm = new SashForm(parent, SWT.HORIZONTAL);
-		fSelectionProvider = new MemoryViewSelectionProvider();
-		
-		createMemoryBlocksTreeViewPane(fSashForm);
-		createRenderingViewPane(IInternalDebugUIConstants.ID_RENDERING_VIEW_PANE_1);
-		createRenderingViewPane(IInternalDebugUIConstants.ID_RENDERING_VIEW_PANE_2);
-		
-		setVisible(true);
-		
-		// set up weights in sashform
-		Integer[] weights = (Integer[])fWeights.toArray(new Integer[fWeights.size()]);
-		int[] intWeights = new int[weights.length];
-		for (int i=0; i<weights.length; i++)
-		{
-			intWeights[i] = weights[i].intValue();
-		}
-		fSashForm.setWeights(intWeights);
-
-		loadViewPanesVisibility();
-		
-		// set up selection provider and listeners
-		
-		getSite().setSelectionProvider(fSelectionProvider);
-
-		
-		fPartListener = new MemoryViewPartListener(this);
-		getSite().getPage().addPartListener(fPartListener);
-		
-		// restore view pane after finishing creating all the view panes
-		restoreView();
-	}
-	
-	/**
-	 * 
-	 */
-	private void createMemoryBlocksTreeViewPane(Composite parent) {
-		
-		fMemBlkViewer = new MemoryBlocksTreeViewPane(this);
-		fViewPanes.put(MemoryBlocksTreeViewPane.PANE_ID, fMemBlkViewer);
-		ViewForm viewerViewForm = new ViewForm(parent, SWT.FLAT);
-		fViewPaneControls.put(MemoryBlocksTreeViewPane.PANE_ID, viewerViewForm);
-		fWeights.add(new Integer(15));
-		
-		fMemBlkViewer.addSelectionListener(fSelectionProvider);
-		
-		Control viewerControl = fMemBlkViewer.createViewPane(viewerViewForm, MemoryBlocksTreeViewPane.PANE_ID, DebugUIMessages.MemoryView_Memory_monitors); //$NON-NLS-1$
-		viewerViewForm.setContent(viewerControl);
-		
-		ISelection selection = fMemBlkViewer.getSelectionProvider().getSelection();
-		if (selection != null)
-			fSelectionProvider.setSelection(selection);	
-
-		ToolBarManager viewerToolBarMgr = new ToolBarManager(SWT.FLAT);	
-		IAction[] actions = fMemBlkViewer.getActions();
-		for (int i=0; i<actions.length; i++)
-		{
-			viewerToolBarMgr.add(actions[i]);
-		}
-		ToolBar viewerToolbar = viewerToolBarMgr.createControl(viewerViewForm);
-		viewerViewForm.setTopRight(viewerToolbar);
-		
-		Label viewerLabel = new Label(viewerViewForm, SWT.WRAP);
-		viewerLabel.setText(DebugUIMessages.MemoryView_Memory_monitors); //$NON-NLS-1$
-		viewerViewForm.setTopLeft(viewerLabel);
-	}
-
-	/**
-	 * 
-	 */
-	public void createRenderingViewPane(String paneId) {
-		RenderingViewPane renderingPane = new RenderingViewPane(this); //$NON-NLS-1$
-		fViewPanes.put(paneId, renderingPane);
-		ViewForm renderingViewForm = new ViewForm(fSashForm, SWT.FLAT);
-		fViewPaneControls.put(paneId, renderingViewForm);
-		fWeights.add(new Integer(40));
-		
-		Control renderingControl = renderingPane.createViewPane(renderingViewForm, paneId, DebugUIMessages.MemoryView_Memory_renderings); //$NON-NLS-1$
-		renderingViewForm.setContent(renderingControl);
-		renderingPane.addSelectionListener(fSelectionProvider);
-		
-		ToolBarManager renderingViewMgr = new ToolBarManager(SWT.FLAT);
-		IAction[] renderingActions = renderingPane.getActions();
-		for (int i=0; i<renderingActions.length; i++)
-		{
-			renderingViewMgr.add(renderingActions[i]);
-		}
-		ToolBar renderingToolbar = renderingViewMgr.createControl(renderingViewForm);
-		renderingViewForm.setTopRight(renderingToolbar);
-		
-		Label renderingLabel = new Label(renderingViewForm, SWT.NONE);
-		renderingLabel.setText(renderingPane.getLabel());
-		renderingViewForm.setTopLeft(renderingLabel);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.WorkbenchPart#setFocus()
-	 */
-	public void setFocus() {
-	}
-	
-	public void dispose() {
-	    getSite().getPage().removePartListener(fPartListener);
-	    
-		Enumeration enumeration = fViewPanes.elements();
-		while (enumeration.hasMoreElements())
-		{
-			Object element = enumeration.nextElement();
-			if (element instanceof IMemoryViewPane)
-			{
-				((IMemoryViewPane)element).dispose();
-			}
-		}
-		
-		fViewPaneControls.clear();
-		
-		IViewSite viewSite = getViewSite();
-		String secondaryId = viewSite.getSecondaryId();
-		if (secondaryId != null)
-			MemoryViewIdRegistry.deregisterView(secondaryId);
-		
-		fSyncService.shutdown();
-		
-		super.dispose();
-	}
-	
-	private void setVisible(boolean visible)
-	{
-		IMemoryViewPane[] viewPanes = getViewPanes();
-		
-		for (int i=0; i<viewPanes.length; i++)
-		{
-			// if currently visible, take view pane's visibility into account
-			// else force view pane to be visible if it is listed in
-			// "visible view panes" array list.
-			if (fVisible)
-				viewPanes[i].setVisible(visible && viewPanes[i].isVisible());
-			else
-			{
-				if (isViewPaneVisible(viewPanes[i].getId()))
-					viewPanes[i].setVisible(visible);
-			}	
-		}
-		
-		fVisible = visible;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMultipaneMemoryView#getViewPane(java.lang.String)
-	 */
-	public IMemoryViewPane getViewPane(String paneId) {
-		return (IMemoryViewPane)fViewPanes.get(paneId);
-	}	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMultipaneMemoryView#getViewPanes()
-	 */
-	public IMemoryViewPane[] getViewPanes() {
-		IMemoryViewPane[] viewPanes = new IMemoryViewPane[fViewPanes.size()];
-
-		Enumeration enumeration = fViewPanes.elements();
-		int i=0;
-		while (enumeration.hasMoreElements())
-		{
-			viewPanes[i] = (IMemoryViewPane)enumeration.nextElement();
-			i++;
-		}
-		
-		return viewPanes;
-	}
-	
-	/**
-	 * Restore each view pane from the memory view based on current
-	 * debug selection
-	 */
-	private void restoreView() {
-		IMemoryViewPane[] viewPanes = getViewPanes();
-		for (int i=0; i<viewPanes.length; i++)
-		{
-			viewPanes[i].restoreViewPane();
-		}
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMultipaneMemoryView#showViewPane(boolean, java.lang.String)
-	 */
-	public void showViewPane(boolean show, String paneId) {
-		
-		Control viewPaneControl = (Control)fViewPaneControls.get(paneId);
-		
-		if (viewPaneControl != null)
-		{
-			Control children[] = fSashForm.getChildren();
-			
-			for (int i=0; i<children.length; i++)
-			{
-				if (children[i] == viewPaneControl)
-				{
-					children[i].setVisible(show);
-					IMemoryViewPane viewPane = (IMemoryViewPane)fViewPanes.get(paneId);
-					if (viewPane != null)
-						viewPane.setVisible(show);
-				}
-			}
-			fSashForm.layout();
-		}
-		
-		storeViewPaneVisibility();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMultipaneMemoryView#isViewPaneVisible(java.lang.String)
-	 */
-	public boolean isViewPaneVisible(String paneId) {
-		return fVisibleViewPanes.contains(paneId);
-	}
-	
-	private void storeViewPaneVisibility()
-	{		
-		fVisibleViewPanes.clear();
-		Preferences prefs = DebugUIPlugin.getDefault().getPluginPreferences();
-		StringBuffer visibleViewPanes= new StringBuffer();
-		
-		Enumeration enumeration = fViewPaneControls.keys();
-		
-		while (enumeration.hasMoreElements())
-		{
-			String paneId = (String)enumeration.nextElement();
-			
-			Control control = (Control)fViewPaneControls.get(paneId);
-			if (control.isVisible())
-			{
-				visibleViewPanes.append(paneId);
-				visibleViewPanes.append(","); //$NON-NLS-1$
-				fVisibleViewPanes.add(paneId);
-			}
-		}
-		
-		prefs.setValue(getVisibilityPrefId(), visibleViewPanes.toString());		 //$NON-NLS-1$
-	}
-	
-	private void loadViewPanesVisibility()
-	{
-		Preferences prefs = DebugUIPlugin.getDefault().getPluginPreferences();
-		String visiblePanes = prefs.getString(getVisibilityPrefId());
-		
-		if (visiblePanes != null && visiblePanes.length() > 0)
-		{
-			StringTokenizer tokenizer = new StringTokenizer(visiblePanes, ","); //$NON-NLS-1$
-			while (tokenizer.hasMoreTokens())
-			{
-				String paneId = tokenizer.nextToken();
-				fVisibleViewPanes.add(paneId);
-			}
-		}
-		else
-		{
-			for (int i=0 ;i<defaultVisiblePaneIds.length; i++)
-			{
-				fVisibleViewPanes.add(defaultVisiblePaneIds[i]);
-			}
-		}
-		
-		Enumeration enumeration = fViewPaneControls.keys();
-		while (enumeration.hasMoreElements())
-		{
-			String paneId = (String)enumeration.nextElement();
-			boolean visible = false;
-			if(fVisibleViewPanes.contains(paneId))
-				visible = true;
-			
-			Control control = (Control)fViewPaneControls.get(paneId);
-			control.setVisible(visible);
-			
-			IMemoryViewPane viewPane = (IMemoryViewPane)fViewPanes.get(paneId);
-			viewPane.setVisible(visible);
-		}
-		
-		fSashForm.layout();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSite#getSynchronizationService()
-	 */
-	public IMemoryRenderingSynchronizationService getSynchronizationService() {
-		return fSyncService;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSite#getMemoryRenderingContainers()
-	 */
-	public IMemoryRenderingContainer[] getMemoryRenderingContainers() {
-		Enumeration enumeration = fViewPanes.elements();
-		ArrayList containers = new ArrayList();
-		while (enumeration.hasMoreElements()){
-			Object obj = enumeration.nextElement();
-			if (obj instanceof IMemoryRenderingContainer)
-				containers.add(obj);
-		}
-		
-		return (IMemoryRenderingContainer[])containers.toArray(new IMemoryRenderingContainer[containers.size()]);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSite#getContainer(java.lang.String)
-	 */
-	public IMemoryRenderingContainer getContainer(String id) {
-		Object viewPane =  fViewPanes.get(id);
-		
-		if (viewPane instanceof IMemoryRenderingContainer)
-			return (IMemoryRenderingContainer)viewPane;
-		
-		return null;
-	}
-
-	public boolean isPinMBDisplay() {
-		return fPinMBDisplay;
-	}
-	
-
-	public void setPinMBDisplay(boolean pinMBDisplay) {
-		fPinMBDisplay = pinMBDisplay;
-	}
-	
-	private String getVisibilityPrefId()
-	{
-		IViewSite vs = getViewSite();
-		String viewId = vs.getSecondaryId();
-		
-		if (viewId != null)
-			return VISIBILITY_PREF + "." + viewId; //$NON-NLS-1$
-
-		return VISIBILITY_PREF;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewIdRegistry.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewIdRegistry.java
deleted file mode 100644
index f26a490..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewIdRegistry.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-
-/**
- * Class for managing the secondary ids for Memory View
- *
- */
-public class MemoryViewIdRegistry{
-	
-	private static ArrayList fgRegistry;
-	
-	public static  void registerView(String secondaryId)
-	{
-		ArrayList registry = getRegistry();
-		
-		if (!registry.contains(secondaryId))
-		{
-			registry.add(secondaryId);
-		}
-	}
-	
-	public static  void deregisterView(String secondaryId)
-	{
-		ArrayList registry = getRegistry();
-		
-		if (registry.contains(secondaryId))
-		{
-			registry.remove(secondaryId);
-		}
-	}
-	
-	public static String getUniqueSecondaryId(String viewId)
-	{
-		int cnt = 0;
-		String id = viewId + "." + cnt; //$NON-NLS-1$
-		ArrayList registry = getRegistry();
-		while (registry.contains(id))
-		{
-			cnt ++;
-			id = viewId + "." + cnt; //$NON-NLS-1$
-		}
-		return id;
-	}
-	
-	private static ArrayList getRegistry()
-	{
-		if (fgRegistry == null)
-			fgRegistry = new ArrayList();
-		
-		return fgRegistry;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java
deleted file mode 100644
index 3c68e3f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewSynchronizationService.java
+++ /dev/null
@@ -1,390 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.Enumeration;
-import java.util.Hashtable;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.IMemoryBlockListener;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Synchronization service for the memory view.
- * @since 3.1
- */
-public class MemoryViewSynchronizationService implements
-		IMemoryRenderingSynchronizationService, IMemoryBlockListener, IPropertyChangeListener {
-
-	private static final int ENABLED = 0;
-	private static final int ENABLING = 1;
-	private static final int DISABLED = 2;
-	
-	private Hashtable fSynchronizeInfo;
-	private int fEnableState = ENABLED;
-	private Hashtable fPropertyListeners;
-	
-	private IMemoryRendering fLastChangedRendering;
-	private IMemoryRendering fSyncServiceProvider;
-	
-	public MemoryViewSynchronizationService()
-	{
-		fSynchronizeInfo = new Hashtable();
-		fPropertyListeners = new Hashtable();
-		MemoryViewUtil.getMemoryBlockManager().addListener(this);
-	}
-
-	/**
-	 * Wrapper for ISynchronizedMemoryBlockView
-	 * Holds a list of property filters for the view.
-	 */
-	class PropertyListener 
-	{
-		IPropertyChangeListener fListener;
-		String[] fFilters;
-		
-		public PropertyListener(IPropertyChangeListener listener, String[] properties)
-		{
-			fListener = listener;
-			
-			if(properties != null)
-			{	
-				fFilters = properties;
-			}
-		}
-
-		/**
-		 * If the property matches one of the filters, the property
-		 * is valid and the view should be notified about its change.
-		 * @param property
-		 * @return if the property is specified in the filter
-		 */
-		public boolean isValidProperty(String property){
-			if (fFilters == null)
-				return true;
-			for (int i=0; i<fFilters.length; i++)
-			{
-				if (fFilters[i].equals(property))
-				{
-					return true;
-				}
-			}
-			return false;
-		}
-
-		/**
-		 * Set property filters, indicating what property change events
-		 * the listener is interested in.
-		 * @param filters
-		 */
-		public void setPropertyFilters(String[] filters){	
-			fFilters = filters;
-		}
-
-		/**
-		 * @return Returns the fListener.
-		 */
-		public IPropertyChangeListener getListener() {
-			return fListener;
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IMemoryBlockViewSynchronizer#getSynchronizedProperty(org.eclipse.debug.ui.ISynchronizedMemoryBlockView, java.lang.String)
-	 */
-	public Object getSynchronizedProperty(IMemoryBlock memoryBlock, String propertyId)
-	{
-		SynchronizeInfo info = (SynchronizeInfo)fSynchronizeInfo.get(memoryBlock);
-		
-		if (info != null)
-		{
-			Object value = info.getProperty(propertyId);
-			return value;
-		}
-		
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IMemoryBlockListener#MemoryBlockAdded(org.eclipse.debug.core.model.IMemoryBlock)
-	 */
-	public void memoryBlocksAdded(IMemoryBlock[] memoryBlocks) {
-		// do nothing when a memory block is added
-		// create a synchronize info object when there is a fView
-		// tab registered to be synchronized.
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IMemoryBlockListener#MemoryBlockRemoved(org.eclipse.debug.core.model.IMemoryBlock)
-	 */
-	public void memoryBlocksRemoved(IMemoryBlock[] memoryBlocks) {
-		
-		for (int i=0; i<memoryBlocks.length; i++)
-		{
-			IMemoryBlock memory = memoryBlocks[i];
-			// delete the info object and remove it from fSynchronizeInfo
-			// when the memory block is deleted
-			SynchronizeInfo info = (SynchronizeInfo)fSynchronizeInfo.get(memory);
-			
-			if (info != null)
-			{	
-				info.delete();
-				fSynchronizeInfo.remove(memory);
-			}
-		}
-	}
-	
-	/**
-	 * Clean up when the plugin is shutdown
-	 */
-	public void shutdown()
-	{
-		if (fSynchronizeInfo != null)
-		{	
-			Enumeration enumeration = fSynchronizeInfo.elements();
-			
-			// clean up all synchronize info objects
-			while (enumeration.hasMoreElements()){
-				SynchronizeInfo info = (SynchronizeInfo)enumeration.nextElement();
-				info.delete();
-			}
-			
-			fSynchronizeInfo.clear();
-			fSynchronizeInfo = null;
-		}
-		MemoryViewUtil.getMemoryBlockManager().removeListener(this);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener, java.lang.String[])
-	 */
-	public void addPropertyChangeListener(IPropertyChangeListener listener, String[] properties) {
-		
-		PropertyListener propertylistener = new PropertyListener(listener, properties);
-		
-		if (!fPropertyListeners.contains(propertylistener))
-		{
-			fPropertyListeners.put(listener, propertylistener);
-		}
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-	 */
-	public void removePropertyChangeListener(IPropertyChangeListener listener) {
-		if (fPropertyListeners.containsKey(listener))
-		{
-			fPropertyListeners.remove(listener);
-		}
-	}
-	
-	/**
-	 * Fire property change events
-	 * @param propertyId
-	 */
-	public void firePropertyChanged(final PropertyChangeEvent evt)
-	{
-		// do not fire property changed event if the synchronization
-		// service is disabled
-		if (fEnableState == DISABLED)
-			return;
-		
-		// Make sure the synchronizer does not swallow any events
-		// Values of the properties are updated in the syncrhonizer immediately.
-		// Change events are queued up on the UI Thread.
-		Display.getDefault().syncExec(new Runnable()
-		{
-			public void run()
-			{
-				IMemoryRendering rendering = (IMemoryRendering)evt.getSource();
-				String propertyId = evt.getProperty();
-				
-				SynchronizeInfo info = (SynchronizeInfo)fSynchronizeInfo.get(rendering.getMemoryBlock());
-				Object value = info.getProperty(propertyId);
-				if (value != null)
-				{				
-					Enumeration enumeration = fPropertyListeners.elements();
-					
-					while(enumeration.hasMoreElements())
-					{
-						PropertyListener listener = (PropertyListener)enumeration.nextElement();
-						
-						IPropertyChangeListener origListener = listener.getListener();
-						
-						// if it's a valid property - valid means that it's listed in the property filters
-						if (listener.isValidProperty(propertyId)){
-							PropertyChangeNotifier notifier = new PropertyChangeNotifier(origListener, evt);
-							Platform.run(notifier);	
-						}
-					}
-				}
-			}
-		});
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService#getProperty(org.eclipse.debug.core.model.IMemoryBlock, java.lang.String)
-	 */
-	public Object getProperty(IMemoryBlock block, String property) {
-		
-		// When the synchronization service is disabled
-		// return null for all queries to properties
-		// This is to ensure that renderings are not synchronized
-		// to new synchronization properties when the sync service is
-		// disabled.
-		if (!isEnabled())
-			return null;
-		
-		SynchronizeInfo info = (SynchronizeInfo)fSynchronizeInfo.get(block);
-		
-		if (info != null)
-			return info.getProperty(property);
-		
-		return null;
-	}
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		if (event == null || !(event.getSource() instanceof IMemoryRendering))
-		{
-			return;
-		}
-		
-		// Do not handle any property changed event as the
-		// sync service is being enabled.
-		// Otheriwse, current sync info provider may overwrite
-		// sync info unexpectedly.  We want to sync with the rendering
-		// that is last changed.
-		if (fEnableState == ENABLING)
-			return;
-		
-		IMemoryRendering rendering = ((IMemoryRendering)event.getSource());
-		IMemoryBlock memoryBlock = rendering.getMemoryBlock();
-		String propertyId = event.getProperty();
-		Object value = event.getNewValue();
-		
-		if (memoryBlock == null)
-			return;
-		
-		if (propertyId == null)
-			return;
-		
-		// find the synchronize info object for the memory block
-		SynchronizeInfo info = (SynchronizeInfo)fSynchronizeInfo.get(memoryBlock);
-		
-		// if info is not available, need to create one to hold the property
-		if (info == null)
-		{
-			info = new SynchronizeInfo(memoryBlock);
-			fSynchronizeInfo.put(memoryBlock, info);
-		}
-		
-		// get the value of the property
-		Object oldValue = info.getProperty(propertyId);
-		
-		if (oldValue == null)
-		{
-			// if the value has never been added to the info object
-			// set the property and fire a change event
-			info.setProperty(propertyId, value);
-			fLastChangedRendering = rendering;
-			firePropertyChanged(event);
-			return;
-		}
-		else if (!oldValue.equals(value))
-		{
-			// if the value has changed
-			// set the property and fire a change event
-			info.setProperty(propertyId, value);
-			fLastChangedRendering = rendering;
-			firePropertyChanged(event);
-		}
-	}
-	
-	public void setEnabled(boolean enabled)
-	{
-		if (enabled && fEnableState == ENABLED)
-			return;
-		
-		if (!enabled && fEnableState == DISABLED)
-			return;
-		
-		try
-		{
-			if (enabled)
-			{	
-				fEnableState = ENABLING;
-				// get sync info from the sync service provider	
-				if (fLastChangedRendering != null)
-				{
-					IMemoryBlock memBlock = fLastChangedRendering.getMemoryBlock();
-					SynchronizeInfo info = (SynchronizeInfo)fSynchronizeInfo.get(memBlock);
-					String[] ids = info.getPropertyIds();
-					
-					// stop handling property changed event while the
-					// synchronization service is being enabled
-					// this is to get around problem when the last changed
-					// rendering is not currently the sync info provider
-					
-					for (int i=0; i<ids.length; i++)
-					{
-						PropertyChangeEvent evt = new PropertyChangeEvent(fLastChangedRendering, ids[i], null, info.getProperty(ids[i]));
-						firePropertyChanged(evt);
-					}
-				}
-			}
-		}
-		finally
-		{
-			if (enabled)
-				fEnableState = ENABLED;
-			else
-				fEnableState = DISABLED;
-		}
-	}
-	
-	public boolean isEnabled()
-	{
-		return fEnableState == ENABLED;
-	}
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService#setSynchronizationProvider(org.eclipse.debug.ui.memory.IMemoryRendering)
-	 */
-	public void setSynchronizationProvider(IMemoryRendering rendering) {
-		if (fSyncServiceProvider != null)
-			fSyncServiceProvider.removePropertyChangeListener(this);
-		
-		if (rendering != null)
-			rendering.addPropertyChangeListener(this);
-		
-		fSyncServiceProvider = rendering;
-	}
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingSynchronizationService#getSynchronizationProvider()
-	 */
-	public IMemoryRendering getSynchronizationProvider() {
-		return fSyncServiceProvider;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewTab.java
deleted file mode 100644
index 18c01d9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewTab.java
+++ /dev/null
@@ -1,247 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.memory.renderings.ErrorRendering;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.IBasicPropertyConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.TabItem;
-
-/**
- * Represents a tab in the Memory View.  This is where memory renderings
- * are hosted in the Memory View.
- * @since 3.1
- */
-public class MemoryViewTab implements IMemoryViewTab, IPropertyChangeListener, Listener {
-
-	private IMemoryRendering fRendering;
-	private TabItem fTabItem;
-	private DisposeListener fDisposeListener;
-	private boolean fEnabled;
-	private boolean fIsDisposed = false;
-	private Control fControl;
-	private RenderingViewPane fContainer;
-	
-	
-	public MemoryViewTab(TabItem tabItem, IMemoryRendering rendering, RenderingViewPane container)
-	{
-		fTabItem = tabItem;
-		fRendering = rendering;
-		fContainer = container;
-		
-		// set the rendering as the synchronization provider
-		// as the new rendering should be in focus and have control 
-		// after it's created
-		
-		if (container.getMemoryRenderingSite().getSynchronizationService() != null)
-			container.getMemoryRenderingSite().getSynchronizationService().setSynchronizationProvider(rendering);
-		Control control = createViewTab();
-		
-		control.addListener(SWT.Activate, this);
-		control.addListener(SWT.Deactivate, this);
-		
-		// force the new control to have focus
-		control.setFocus();
-		
-		// activate rendering upon creations
-		fRendering.activated();
-		
-		fTabItem.setControl(control);
-		fTabItem.setData(this);
-		fTabItem.setText(getLabel());
-		fTabItem.setImage(getImage());
-		
-		fTabItem.addDisposeListener(fDisposeListener = new DisposeListener() {
-
-			public void widgetDisposed(DisposeEvent e) {
-				fTabItem.removeDisposeListener(fDisposeListener);
-				dispose();
-			}});
-	}
-	
-	private Control createViewTab()
-	{   
-		ISafeRunnable safeRunnable = new ISafeRunnable() {
-
-			public void handleException(Throwable exception) {
-				// create an error rendering to fill the view tab
-				ErrorRendering rendering = new ErrorRendering(fRendering.getRenderingId(), exception);
-				rendering.init(fContainer, fRendering.getMemoryBlock());
-
-				// dispose the rendering
-				fRendering.dispose();
-				
-				fRendering = rendering;
-				fControl = rendering.createControl(fTabItem.getParent());
-			}
-
-			public void run() throws Exception {
-				fControl = fRendering.createControl(fTabItem.getParent());
-				fRendering.addPropertyChangeListener(getInstance());
-			}};
-			
-		Platform.run(safeRunnable);
-		return fControl;
-	}
-	
-	private String getLabel()
-	{
-		return fRendering.getLabel();
-	}
-	
-	private Image getImage()
-	{
-		return fRendering.getImage();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewTab#dispose()
-	 */
-	public void dispose() {
-		
-		if (fIsDisposed)
-			return;
-		
-		fIsDisposed = true;
-		
-		fRendering.removePropertyChangeListener(this);
-		fControl.removeListener(SWT.Activate, this);
-		fControl.removeListener(SWT.Deactivate, this);
-		
-		// always deactivate rendering before disposing it.
-		fRendering.deactivated();
-		
-		fRendering.dispose();
-	}
-	
-	public boolean isDisposed()
-	{
-		return fIsDisposed;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewTab#isEnabled()
-	 */
-	public boolean isEnabled() {
-		return fEnabled;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewTab#setEnabled(boolean)
-	 */
-	public void setEnabled(boolean enabled) {
-		fEnabled = enabled;
-		
-		if (fEnabled)
-			fRendering.becomesVisible();
-		else
-			fRendering.becomesHidden();
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewTab#setTabLabel(java.lang.String)
-	 */
-	public void setTabLabel(String label) {
-		fTabItem.setText(label);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewTab#getTabLabel()
-	 */
-	public String getTabLabel() {
-		return fTabItem.getText();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IMemoryViewTab#getRendering()
-	 */
-	public IMemoryRendering getRendering() {
-		return fRendering;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(final PropertyChangeEvent event) {
-		
-		// make sure this runs on the UI thread, otherwise, it
-		// will get to a swt exception
-		Display display = DebugUIPlugin.getDefault().getWorkbench().getDisplay();
-		
-		display.syncExec(new Runnable() {
-			public void run() {
-				if (event.getSource() == fRendering)
-				{
-					if (event.getProperty().equals(IBasicPropertyConstants.P_TEXT))
-					{
-						Object value = event.getNewValue();
-						if (value != null && value instanceof String)
-						{
-							String label = (String)value;
-							setTabLabel(label);
-						}
-						else
-						{
-							setTabLabel(fRendering.getLabel());
-						}
-					}
-					
-					if (event.getProperty().equals(IBasicPropertyConstants.P_IMAGE))
-					{
-						Object value = event.getNewValue();
-						if (value != null && value instanceof Image)
-						{
-							Image image = (Image)value;
-							fTabItem.setImage(image);
-						}
-						else
-						{
-							fTabItem.setImage(fRendering.getImage());
-						}
-					}
-				}
-			}});
-	}
-	
-	private MemoryViewTab getInstance()
-	{
-		return this;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
-	 */
-	public void handleEvent(Event event) {
-		if (event.type == SWT.Activate)
-		{
-			fRendering.activated();
-			fContainer.setRenderingSelection(fRendering);
-		}
-		if (event.type == SWT.Deactivate)
-		{
-			fRendering.deactivated();
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewUtil.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewUtil.java
deleted file mode 100644
index cfaf68c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MemoryViewUtil.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.math.BigInteger;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IMemoryBlockManager;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Util class for Memory View
- * 
- * @since 3.0
- */
-public class MemoryViewUtil {
-	
-	public static final int[] ignoreKeyEvents =
-	{
-		SWT.ARROW_UP,
-		SWT.ARROW_DOWN,
-		SWT.ARROW_LEFT,
-		SWT.ARROW_RIGHT,
-		SWT.PAGE_UP,
-		SWT.PAGE_DOWN,
-		SWT.HOME,
-		SWT.END,
-		SWT.INSERT,
-		SWT.F1,
-		SWT.F2,
-		SWT.F3,
-		SWT.F4,
-		SWT.F5,
-		SWT.F6,
-		SWT.F7,
-		SWT.F8,
-		SWT.F9,
-		SWT.F10,
-		SWT.F11,
-		SWT.F12,
-		SWT.F13,
-		SWT.F14,
-		SWT.F15,
-		SWT.HELP,
-		SWT.CAPS_LOCK,
-		SWT.NUM_LOCK,
-		SWT.SCROLL_LOCK,
-		SWT.PAUSE,
-		SWT.BREAK,
-		SWT.PRINT_SCREEN,
-		SWT.ESC,
-		SWT.CTRL,
-		SWT.ALT
-	};	
-	
-	
-	/**
-	 * @param selection
-	 * @return true if the given selection is valid for creating a memory block
-	 */
-	static public boolean isValidSelection(ISelection selection) {
-	
-		if (!(selection instanceof IStructuredSelection))
-			return false;
-	
-		//only single selection is allowed for this action
-		if (selection == null || selection.isEmpty() || ((IStructuredSelection)selection).size() > 1)
-		{
-			return false;
-		}
-	
-		Object elem = ((IStructuredSelection)selection).getFirstElement();
-	
-		// if not debug element
-		if (!(elem instanceof IDebugElement))
-			return false;
-	
-		IDebugTarget debugTarget = ((IDebugElement)elem).getDebugTarget();
-		IMemoryBlockRetrieval memRetrieval =(IMemoryBlockRetrieval) ((IDebugElement)elem).getAdapter(IMemoryBlockRetrieval.class);
-		
-		if (memRetrieval == null)
-		{
-			// if debug element returns null from getAdapter, assume its debug target is going to retrieve memory blocks
-			memRetrieval = debugTarget;
-		}
-		
-		if (debugTarget == null)
-			return false;
-		
-		// not valid if the debug target is already terminated
-		if (debugTarget.isTerminated() || debugTarget.isDisconnected())
-			return false;
-		
-		if (memRetrieval.supportsStorageRetrieval()) {
-			return true;
-		}
-		
-		return false;
-	}	
-
-	
-	/**
-	 * Helper function to open an error dialog.
-	 * @param title
-	 * @param message
-	 * @param e
-	 */
-	static public void openError (String title, String message, Exception e)
-	{
-		// open error for the exception
-		String detail = ""; //$NON-NLS-1$
-		if (e != null)
-			detail = e.getMessage();
-		
-		Shell shell = DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getShell();
-		
-		MessageDialog.openError(
-			shell,
-			title,
-			message + "\n" + detail); //$NON-NLS-1$
-	}
-	
-	static IMemoryBlockManager getMemoryBlockManager()
-	{
-		return DebugPlugin.getDefault().getMemoryBlockManager();
-	}
-	
-	static public boolean isLinuxGTK()
-	{	
-		String ws = Platform.getWS();
-		return ws.equals(Platform.WS_GTK);
-	}
-	
-	/**
-	 * Checks to see if the event is valid for activating
-	 * cell editing in a view tab
-	 * @param event
-	 * @return true if the edit event is valid  for activating the cell editor
-	 */
-	public static boolean isValidEditEvent(int event) {
-		for (int i = 0; i < MemoryViewUtil.ignoreKeyEvents.length; i++) {
-			if (event == MemoryViewUtil.ignoreKeyEvents[i])
-				return false;
-		}
-		return true;
-	}
-	
-	public static BigInteger alignDoubleWordBoundary(BigInteger integer)
-	{
-		String str =integer.toString(16);
-		if (!str.endsWith("0")) //$NON-NLS-1$
-		{
-			str = str.substring(0, str.length() - 1);
-			str += "0"; //$NON-NLS-1$
-			integer = new BigInteger(str, 16);
-		}		
-		
-		return integer;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MonitorMemoryBlockDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MonitorMemoryBlockDialog.java
deleted file mode 100644
index 1757801..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/MonitorMemoryBlockDialog.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.Vector;
-import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * @since 3.0
- */
-public class MonitorMemoryBlockDialog extends Dialog implements ModifyListener{
-
-	private static Vector history = new Vector();
-	private Combo expressionInput;
-	private Text lengthInput;
-	private String expression;
-	private String length;
-	private boolean needLength = true;
-	
-	/**
-	 * @param parentShell
-	 */
-	public MonitorMemoryBlockDialog(Shell parentShell, IMemoryBlockRetrieval memRetrieval) {
-		super(parentShell);
-		
-		if (memRetrieval instanceof IMemoryBlockRetrievalExtension)
-			needLength = false;
-		
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parentShell, IDebugUIConstants.PLUGIN_ID + ".MonitorMemoryBlockDialog_context"); //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-	
-		parent.setLayout(new GridLayout());
-		GridData spec2= new GridData();
-		spec2.grabExcessVerticalSpace= true;
-		spec2.grabExcessHorizontalSpace= true;
-		spec2.horizontalAlignment= GridData.FILL;
-		spec2.verticalAlignment= GridData.CENTER;
-		parent.setLayoutData(spec2);
-
-		Label textLabel = new Label(parent, SWT.NONE);
-		textLabel.setText(DebugUIMessages.MonitorMemoryBlockDialog_EnterExpressionToMonitor);
-		GridData textLayout = new GridData();
-		textLayout.widthHint = 280;
-		textLabel.setLayoutData(textLayout);
-		
-		expressionInput = new Combo(parent, SWT.BORDER);
-		GridData spec= new GridData();
-		spec.grabExcessVerticalSpace= false;
-		spec.grabExcessHorizontalSpace= true;
-		spec.horizontalAlignment= GridData.FILL;
-		spec.verticalAlignment= GridData.BEGINNING;
-		spec.heightHint = 50;
-		expressionInput.setLayoutData(spec);
-		
-		// add history
-		String[] historyExpression = (String[])history.toArray(new String[history.size()]);
-		for (int i=0; i<historyExpression.length; i++)
-		{
-			expressionInput.add(historyExpression[i]);
-		}
-		
-		expressionInput.addModifyListener(this);
-		
-		if (needLength)
-		{
-			Label lengthLabel = new Label(parent, SWT.NONE);
-			lengthLabel.setText(DebugUIMessages.MonitorMemoryBlockDialog_NumberOfBytes);
-			GridData lengthLayout = new GridData();
-			lengthLayout.widthHint = 280;
-			lengthLabel.setLayoutData(lengthLayout);
-			
-			lengthInput = new Text(parent, SWT.BORDER);
-			GridData lengthSpec= new GridData();
-			lengthSpec.grabExcessVerticalSpace= false;
-			lengthSpec.grabExcessHorizontalSpace= true;
-			lengthSpec.horizontalAlignment= GridData.FILL;
-			lengthInput.setLayoutData(lengthSpec);
-			lengthInput.addModifyListener(this);
-		}
-		return parent;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
-	 */
-	protected void configureShell(Shell newShell) {
-		super.configureShell(newShell);
-		
-		newShell.setText(DebugUIMessages.MonitorMemoryBlockDialog_MonitorMemory);
-	}
-	
-	public String getExpression()
-	{
-		return expression;
-	}
-	
-	public String getLength()
-	{
-		return length;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-
-		expression = expressionInput.getText();
-
-		// add to history list
-		if (!history.contains(expression))
-			history.insertElementAt(expression, 0);
-
-		if (needLength)
-			length = lengthInput.getText();
-
-		super.okPressed();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)
-	 */
-	public void modifyText(ModifyEvent e) {
-
-		if (needLength)
-		{
-			String lengthText = lengthInput.getText();
-			String input = expressionInput.getText();
-			
-			if (input == null || input.equals("") || lengthText == null || lengthText.equals("")) //$NON-NLS-1$ //$NON-NLS-2$
-			{
-				getButton(IDialogConstants.OK_ID).setEnabled(false);	
-			}
-			else
-			{
-				getButton(IDialogConstants.OK_ID).setEnabled(true);
-			}			
-		}
-		else
-		{
-			String input = expressionInput.getText();
-		
-			if (input == null || input.equals("")) //$NON-NLS-1$
-			{
-				getButton(IDialogConstants.OK_ID).setEnabled(false);	
-			}
-			else
-			{
-				getButton(IDialogConstants.OK_ID).setEnabled(true);
-			}			
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createButtonBar(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createButtonBar(Composite parent) {
-		
-		Control ret =  super.createButtonBar(parent);
-		getButton(IDialogConstants.OK_ID).setEnabled(false);
-		
-		return ret;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/NewMemoryViewAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/NewMemoryViewAction.java
deleted file mode 100644
index 3ea68e5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/NewMemoryViewAction.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.PartInitException;
-
-/**
- * Action for opening a new memory view.
- */
-public class NewMemoryViewAction implements IViewActionDelegate {
-
-	private MemoryView fView;
-	public void init(IViewPart view) {
-		if (view instanceof MemoryView)
-			fView = (MemoryView)view;                                                                                                                                                                                                                                                                                                                                               
-	}
-
-	public void run(IAction action) {
-		
-		String secondaryId = MemoryViewIdRegistry.getUniqueSecondaryId(IInternalDebugUIConstants.ID_MEMORY_VIEW);
-		try {
-			IWorkbenchPage page = DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage();
-			IViewPart newView = page.showView(IInternalDebugUIConstants.ID_MEMORY_VIEW, secondaryId, IWorkbenchPage.VIEW_ACTIVATE);
-			
-			// set initial selection for new view
-			setInitialSelection(newView);
-			setInitialViewSettings(newView);
-			
-		} catch (PartInitException e) {
-			// if view cannot be opened, open error
-			DebugUIPlugin.log(e);
-		}
-	}
-
-	private void setInitialSelection(IViewPart newView) {
-		ISelection selection = fView.getSite().getSelectionProvider().getSelection();
-		if (selection instanceof IStructuredSelection)
-		{
-			IStructuredSelection strucSel = (IStructuredSelection)selection;
-			
-			// return if current selection is empty
-			if (strucSel.isEmpty())
-				return;
-			
-			Object obj = strucSel.getFirstElement();
-			
-			if (obj == null)
-				return;
-			
-			if (obj instanceof IMemoryRendering)
-			{
-				IMemoryBlock memBlock = ((IMemoryRendering)obj).getMemoryBlock();
-				strucSel = new StructuredSelection(memBlock);
-				newView.getSite().getSelectionProvider().setSelection(strucSel);
-			}
-			else if (obj instanceof IMemoryBlock)
-			{
-				newView.getSite().getSelectionProvider().setSelection(strucSel);
-			}
-		}
-	}
-
-	private void setInitialViewSettings(IViewPart newView) {
-		if (fView != null && newView instanceof MemoryView)
-		{
-			MemoryView newMView = (MemoryView)newView;
-			IMemoryViewPane[] viewPanes = fView.getViewPanes();
-			for (int i=0; i<viewPanes.length; i++)
-			{
-				// copy view pane visibility
-				newMView.showViewPane(fView.isViewPaneVisible(viewPanes[i].getId()), viewPanes[i].getId());
-			}
-			
-			// do not want to copy renderings as it could be very expensive
-			// create a blank view and let user creates renderings as needed
-		}
-	}
-
-	public void selectionChanged(IAction action, ISelection selection) {
-
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PinMemoryBlockAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PinMemoryBlockAction.java
deleted file mode 100644
index 93f5fa3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PinMemoryBlockAction.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * Action for pinning the display of the memory view to
- * the current memory block.  The view would not change
- * selection when a new memory block is added if the diplay is pinned.
- *
- */
-public class PinMemoryBlockAction implements IViewActionDelegate {
-
-	private MemoryView fView;
-	public void init(IViewPart view) {
-		if (view instanceof MemoryView)
-			fView = (MemoryView)view;
-
-	}
-
-	public void run(IAction action) {
-		if (fView == null)
-			return;
-		
-		boolean pin = !fView.isPinMBDisplay();
-		fView.setPinMBDisplay(pin);
-		
-		action.setChecked(pin);
-	}
-
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PropertyChangeNotifier.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PropertyChangeNotifier.java
deleted file mode 100644
index 4b50660..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/PropertyChangeNotifier.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-
-/**
- * Fire properties changes events in ISafeRunnable to ensure that
- * exceptions are caught and handled.
- * @since 3.1
- */
-public class PropertyChangeNotifier implements ISafeRunnable
-{
-	
-	IPropertyChangeListener fListener;
-	PropertyChangeEvent fEvt;
-	
-	public PropertyChangeNotifier(IPropertyChangeListener listener, PropertyChangeEvent evt)
-	{
-		fListener = listener;
-		fEvt = evt;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.ISafeRunnable#handleException(java.lang.Throwable)
-	 */
-	public void handleException(Throwable exception) {
-		DebugUIPlugin.log(exception);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.ISafeRunnable#run()
-	 */
-	public void run() throws Exception {
-		fListener.propertyChange(fEvt);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveMemoryRenderingAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveMemoryRenderingAction.java
deleted file mode 100644
index 17d51ae..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveMemoryRenderingAction.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.jface.action.Action;
-
-
-/**
- * Remove Memory Rendering action
- * This action serves two purposes:
- *   - remove memory rendering from Memory Rendering Pane
- *   - quck way to remove a memory block from Memory Rendering Pane
- * 
- * When user clicks on the this tool bar action, it simply removes
- * the top view tab from Memory Rendering Pane.
- * @since 3.0
- */
-public class RemoveMemoryRenderingAction extends Action
-{
-	private IMemoryRenderingContainer fViewPane;
-	public RemoveMemoryRenderingAction(IMemoryRenderingContainer viewPane)
-	{
-		// create action as drop down
-		super(DebugUIMessages.RemoveMemoryRenderingAction_Remove_rendering, AS_PUSH_BUTTON); //$NON-NLS-1$
-		setText(DebugUIMessages.RemoveMemoryRenderingAction_Remove_rendering); //$NON-NLS-1$
-
-		setToolTipText(DebugUIMessages.RemoveMemoryRenderingAction_Remove_rendering); //$NON-NLS-1$
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_REMOVE_MEMORY));	
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_REMOVE_MEMORY));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_REMOVE_MEMORY));
-		fViewPane = viewPane;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		
-		// user has click on the RemoveMemoryRendering button
-		IMemoryViewTab topTab = getViewTab();
-		
-		if (topTab != null)
-		{
-			IMemoryRendering rendering = topTab.getRendering();
-			
-			if (rendering != null)
-			{
-				fViewPane.removeMemoryRendering(rendering);
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.defaultrenderings.internal.actions.AbstractMemoryAction#getViewTab()
-	 */
-	IMemoryViewTab getViewTab() {
-		if (fViewPane instanceof IMemoryView)
-		{
-			return ((IMemoryView)fViewPane).getTopMemoryTab();
-		}
-		return null;
-	}		
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveRenderingContextAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveRenderingContextAction.java
deleted file mode 100644
index a514ca3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RemoveRenderingContextAction.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * @since 3.0
- *
- */
-public class RemoveRenderingContextAction implements IViewActionDelegate {
-
-	private IMemoryRenderingSite fMemoryView;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		if (view instanceof IMemoryRenderingSite)
-		{
-			fMemoryView = (IMemoryRenderingSite)view;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		if (fMemoryView == null)
-			return;
-		
-		IMemoryRenderingContainer[] viewPanes = fMemoryView.getMemoryRenderingContainers();
-		String actionId = action.getId();
-		IMemoryRenderingContainer selectedPane = null;
-		
-		for (int i=0; i<viewPanes.length; i++)
-		{
-			if (actionId.indexOf(viewPanes[i].getId()) != -1)
-			{
-				selectedPane = viewPanes[i];
-				break;
-			}
-		}
-		
-		if (selectedPane == null)
-			return;
-		
-		RemoveMemoryRenderingAction removeAction = new RemoveMemoryRenderingAction(selectedPane);
-		removeAction.run();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java
deleted file mode 100644
index 931b5cc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/RenderingViewPane.java
+++ /dev/null
@@ -1,1147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Hashtable;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.views.memory.renderings.CreateRendering;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.SWTException;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PlatformUI;
-
-
-
-/**
- * Represents a rendering view pane in the Memory View.
- * This hosts the memory view tabs in the view.
- * @since 3.1
- *
- */
-public class RenderingViewPane extends AbstractMemoryViewPane implements IMemoryRenderingContainer{
-
-	public static final String RENDERING_VIEW_PANE_ID = DebugUIPlugin.getUniqueIdentifier() + ".MemoryView.RenderingViewPane"; //$NON-NLS-1$
-	
-	private Hashtable fTabFolderForMemoryBlock = new Hashtable();
-	private Hashtable fMemoryBlockFromTabFolder = new Hashtable();
-
-	private AddMemoryRenderingAction fAddMemoryRenderingAction;
-
-	private IAction fRemoveMemoryRenderingAction;
-	private ViewPaneRenderingMgr fRenderingMgr;
-	
-	private IMemoryRenderingSite fRenderingSite;
-	
-	/**
-	 * @param parent is the view hosting this view pane
-	 * @param paneId is the identifier assigned by the Memory View
-	 * 
-	 * Pane id is assigned with the following format.  
-	 * Rendering view pane created has its id assigned to 
-	 * org.eclipse.debug.ui.MemoryView.RenderingViewPane.#.  
-	 * # is a number indicating the order of which the rendering view
-	 * pane is created.  First rendering view pane created will have its
-	 * id assigned to org.eclipse.debug.ui.MemoryView.RenderingViewPane.1.
-	 * Second rendering view pane created will have its id assigned to
-	 * org.eclipse.debug.ui.MemoryView.RenderingViewPane.2. and so on.
-	 * View pane are created from left to right by the Memory View.
-	 * 
-	 */
-	public RenderingViewPane(IViewPart parent) {
-		super(parent);
-		
-		if (parent instanceof IMemoryRenderingSite)
-			fRenderingSite = (IMemoryRenderingSite)parent;
-		else
-		{
-			DebugUIPlugin.logErrorMessage("Parent for the rendering view pane is invalid."); //$NON-NLS-1$
-		}	
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.memory.IMemoryBlockListener#MemoryBlockAdded(org.eclipse.debug.core.model.IMemoryBlock)
-	 */
-	public void memoryBlocksAdded(final IMemoryBlock[] memoryBlocks) {
-		
-		// check condition before doing anything
-		if (memoryBlocks == null || memoryBlocks.length <= 0)
-			return;
-		
-		// disable current view tab before handling new memory blocks
-		if (getTopMemoryTab() != null)
-			getTopMemoryTab().setEnabled(false);
-		
-		for (int i=0; i<memoryBlocks.length; i++)
-		{
-			IMemoryBlock memory = memoryBlocks[i];
-		
-			// if there is already and tab folder for this memory block, display it
-			if (fTabFolderForMemoryBlock.containsKey(memory)) {
-				if (fStackLayout.topControl != (TabFolder)fTabFolderForMemoryBlock.get(memory)) {
-					
-					if (fParent instanceof MemoryView)
-					{
-						MemoryView mv = (MemoryView)fParent;
-						IMemoryBlock[] mbs = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks(getMemoryBlockRetrieval(memory));
-						if (!mv.isPinMBDisplay() || mbs.length == 1)
-						{
-							setTabFolder((TabFolder)fTabFolderForMemoryBlock.get(memory));
-						}
-					}
-					else
-					{
-						setTabFolder((TabFolder)fTabFolderForMemoryBlock.get(memory));
-					}
-					fTabFolderForDebugView.put(getMemoryBlockRetrieval(memory), fTabFolderForMemoryBlock.get(memory));
-					fViewPaneCanvas.layout();
-				}
-			} 
-			else {	//otherwise, add a new one
-				TabFolder folder =  new TabFolder(fViewPaneCanvas, SWT.NULL);
-				
-				fTabFolderForMemoryBlock.put(memory, folder);
-				fMemoryBlockFromTabFolder.put(folder, memory);
-				fTabFolderForDebugView.put(getMemoryBlockRetrieval(memory), folder);
-				
-				// check renderings, only create if there is no rendering
-				IMemoryRendering[] renderings = fRenderingMgr.getRenderingsFromMemoryBlock(memory);
-				
-				MemoryViewTab createTab = null;
-				if (renderings.length == 0)
-				{
-					TabItem newItem = new TabItem(folder, SWT.NULL);
-					CreateRendering rendering = new CreateRendering(this);
-					rendering.init(this, memory);
-					createTab = new MemoryViewTab(newItem, rendering, this);
-					folder.setSelection(0);
-				}
-				
-				// switch to tab folder if display is not pinned
-				if (fParent instanceof MemoryView)
-				{
-					MemoryView mv = (MemoryView)fParent;
-					IMemoryBlock[] mbs = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks(getMemoryBlockRetrieval(memory));
-					if (!mv.isPinMBDisplay() || mbs.length == 1)
-					{
-						setTabFolder((TabFolder)fTabFolderForMemoryBlock.get(memory));
-						if (createTab != null)
-							setRenderingSelection(createTab.getRendering());
-					}
-				}
-				else
-				{
-					setTabFolder((TabFolder)fTabFolderForMemoryBlock.get(memory));
-					if (createTab != null)
-						setRenderingSelection(createTab.getRendering());
-				}
-				
-				fViewPaneCanvas.layout();
-			}	
-			
-			updateToolBarActionsEnablement();
-		}
-	}
-	
-	private IMemoryBlockRetrieval getMemoryBlockRetrieval(IMemoryBlock memoryBlock)
-	{
-		IMemoryBlockRetrieval retrieval = (IMemoryBlockRetrieval)memoryBlock.getAdapter(IMemoryBlockRetrieval.class);
-		
-		if (retrieval == null)
-		{
-			retrieval = memoryBlock.getDebugTarget();
-		}
-		
-		return retrieval;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.memory.IMemoryBlockListener#MemoryBlockRemoved(org.eclipse.debug.core.model.IMemoryBlock)
-	 */
-	public void memoryBlocksRemoved(final IMemoryBlock[] memoryBlocks) {
-		Display.getDefault().syncExec(new Runnable() {
-			public void run() {
-				for (int j=0; j<memoryBlocks.length; j++)
-				{
-					IMemoryBlock memory = memoryBlocks[j];
-					if (fTabFolderForMemoryBlock == null)
-					{
-						return;
-					}
-					
-					// get all renderings from this memroy block and remove them from the view
-					IMemoryRendering[] renderings = fRenderingMgr.getRenderingsFromMemoryBlock(memory);
-					
-					for (int k=0; k<renderings.length; k++)
-					{
-						removeMemoryRendering(renderings[k]);
-					}
-					
-					// remove a the tab folder if the memory block is removed
-					TabFolder tabFolder =
-						(TabFolder) fTabFolderForMemoryBlock.get(memory);
-					
-					if (tabFolder == null)
-						continue;
-					
-					fTabFolderForMemoryBlock.remove(memory);
-					fMemoryBlockFromTabFolder.remove(tabFolder);
-					fTabFolderForDebugView.remove(getMemoryBlockRetrieval(memory));
-					
-					if (!tabFolder.isDisposed()) {
-						
-						IMemoryBlockRetrieval retrieve = (IMemoryBlockRetrieval)memory.getAdapter(IMemoryBlockRetrieval.class);
-						if (retrieve == null)
-						{	
-							retrieve = memory.getDebugTarget();
-						}
-						
-						if (fTabFolderForDebugView.contains(tabFolder))
-						{					
-							fTabFolderForDebugView.remove(retrieve);
-						}
-						
-						// dispose all view tabs belonging to the tab folder
-						TabItem[] items = tabFolder.getItems();
-						
-						for (int i=0; i<items.length; i++)
-						{	
-							disposeTab(items[i]);
-						}
-						
-						// dispose the tab folder
-						tabFolder.dispose();						
-						
-						// if this is the top control
-						if (tabFolder == fStackLayout.topControl)
-						{	
-							
-							// if memory view is visible and have a selection
-							// follow memory view's selection
-							
-							ISelection selection = DebugUIPlugin.getActiveWorkbenchWindow().getSelectionService().getSelection(IInternalDebugUIConstants.ID_MEMORY_VIEW);
-							IMemoryBlock blk = getMemoryBlock(selection);
-							
-							if (blk != null)
-							{	
-										
-								// memory view may not have got the event and is still displaying
-								// the deleted memory block
-								if (blk != memory)
-									handleMemoryBlockSelection(null, blk);
-								else if ((MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(memory.getDebugTarget()).length > 0))
-								{
-									blk = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(memory.getDebugTarget())[0];
-									handleMemoryBlockSelection(null, blk);										
-								}
-								else
-								{
-									emptyFolder();
-								}
-							}
-							else if (MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(memory.getDebugTarget()).length > 0)
-							{	// get to the next folder
-								blk = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(memory.getDebugTarget())[0];
-								handleMemoryBlockSelection(null, blk);
-							}
-							else
-							{
-								emptyFolder();
-			
-							}
-						}
-						
-						// if not the top control
-						// no need to do anything
-					}
-					
-					updateToolBarActionsEnablement();
-				}
-			}
-		});
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		try {
-			
-			if(part == this)
-				return;
-			
-			if (!(selection instanceof IStructuredSelection))
-				return;
-			
-			if (selection == null || selection.isEmpty())
-			{
-				// if the event comes from Memory View
-				// pick empty tab folder as the memory view is no longer displaying anything
-				if (part.getSite().getId().equals(IInternalDebugUIConstants.ID_MEMORY_VIEW))
-				{
-					IMemoryViewTab lastViewTab = getTopMemoryTab();
-					
-					if (lastViewTab != null)
-						lastViewTab.setEnabled(false);
-					
-					emptyFolder();
-				}
-				
-				// do not do anything if there is no selection
-				// In the case when a debug adpater fires a debug event incorrectly, Launch View sets
-				// selection to nothing.  If the view tab is disabled, it erases all the "delta" information
-				// in the content.  This may not be desirable as it will cause memory to show up as
-				// unchanged when it's actually changed.  Do not disable the view tab until there is a 
-				// valid selection.
-				
-				return;
-			}
-			
-			// back up current view tab
-			IMemoryViewTab lastViewTab = getTopMemoryTab();
-			
-			if (!(selection instanceof IStructuredSelection))
-				return;
-
-			Object elem = ((IStructuredSelection)selection).getFirstElement();
-			
-			if (elem instanceof IMemoryBlock)
-			{	
-				// if the selection event comes from this view
-				if (part == getMemoryRenderingSite())
-				{
-					// find the folder associated with the given IMemoryBlockRetrieval
-					IMemoryBlock memBlock = (IMemoryBlock)elem;
-					
-					// should never get here... added code for safety
-					if (fTabFolderForMemoryBlock == null)
-					{
-						if (lastViewTab != null)
-							lastViewTab.setEnabled(false);
-						
-						emptyFolder();
-						return;				
-					}
-	
-					handleMemoryBlockSelection(lastViewTab, memBlock);
-				}
-			}
-			else if (elem instanceof IDebugElement)
-			{	
-				handleDebugElementSelection(lastViewTab, (IDebugElement)elem);
-			}
-			else
-			{
-				if (part.getSite().getId().equals(IDebugUIConstants.ID_DEBUG_VIEW))
-				{
-					if (lastViewTab != null)
-						lastViewTab.setEnabled(false);
-					emptyFolder();
-				}
-				
-				updateToolBarActionsEnablement();
-				return;
-				
-			}
-		}
-		catch(SWTException se)
-		{
-			DebugUIPlugin.log(se);
-		}
-
-	}
-	
-	public void handleMemoryBlockSelection(final IMemoryViewTab lastViewTab, final IMemoryBlock memBlock) {
-	
-	Display.getDefault().syncExec(new Runnable()
-	{
-			public void run() {
-
-				// don't do anything if the debug target is already terminated
-				if (memBlock.getDebugTarget().isDisconnected()
-						|| memBlock.getDebugTarget().isTerminated()) {
-					emptyFolder();
-					return;
-				}
-
-				// check current memory block
-				TabFolder currentFolder = (TabFolder) fStackLayout.topControl;
-				if (currentFolder != null && !currentFolder.isDisposed()) {
-					IMemoryBlock currentBlk = (IMemoryBlock) fMemoryBlockFromTabFolder.get(currentFolder);
-					if (currentBlk != null) {
-						if (currentBlk == memBlock)
-							return;
-					}
-				}
-
-				if (getTopMemoryTab() != null) {
-					if (getTopMemoryTab().getRendering().getMemoryBlock() == memBlock) {
-						return;
-					}
-				}
-
-				// if we've got a tabfolder to go with the IMemoryBlock, display
-				// it
-				if (fTabFolderForMemoryBlock.containsKey(memBlock)) {
-					if (fStackLayout.topControl != (TabFolder) fTabFolderForMemoryBlock.get(memBlock)) {
-						setTabFolder((TabFolder) fTabFolderForMemoryBlock.get(memBlock));
-						fViewPaneCanvas.layout();
-					}
-				} else { // otherwise, add a new one
-					TabFolder folder = new TabFolder(fViewPaneCanvas, SWT.NULL);
-
-					fTabFolderForMemoryBlock.put(memBlock, folder);
-					fMemoryBlockFromTabFolder.put(folder, memBlock);
-					setTabFolder((TabFolder) fTabFolderForMemoryBlock.get(memBlock));
-					fViewPaneCanvas.layout();
-				}
-
-				// restore view tabs
-				IMemoryRendering[] renderings = fRenderingMgr.getRenderingsFromMemoryBlock(memBlock);
-				TabFolder toDisplay = (TabFolder) fStackLayout.topControl;
-
-				// remember tab folder for current debug target
-				fTabFolderForDebugView.put(getMemoryBlockRetrieval(memBlock),toDisplay);
-
-				if (toDisplay.getItemCount() == 0) {
-					restoreViewTabs(renderings);
-				}
-
-				// disable last view tab as it becomes hidden
-				IMemoryViewTab newViewTab = getTopMemoryTab();
-
-				if (lastViewTab != null && lastViewTab != newViewTab) {
-					lastViewTab.setEnabled(false);
-				}
-
-				if (newViewTab != null) {
-					// if new view tab is not already enabled, enable it
-					if (!newViewTab.isEnabled()) {
-						// if the view tab is visible, enable it
-						if (fVisible) {
-							newViewTab.setEnabled(fVisible);
-						}
-					}
-				}
-
-				IMemoryViewTab viewTab = getTopMemoryTab();
-				if (viewTab != null)
-					setRenderingSelection(viewTab.getRendering());
-
-				if (viewTab == null) {
-					// do not ever want to put it on the empty folder
-					if (toDisplay != fEmptyTabFolder) {
-						TabItem newItem = new TabItem(toDisplay, SWT.NULL);
-						CreateRendering rendering = new CreateRendering(getInstance());
-						rendering.init(getInstance(), memBlock);
-						MemoryViewTab createTab = new MemoryViewTab(newItem,rendering, getInstance());
-						setRenderingSelection(createTab.getRendering());
-					}
-				}
-
-				//set toolbar actions enabled/disabled
-				updateToolBarActionsEnablement();
-			}
-		});
-	}
-
-	public void memoryBlockRenderingAdded(IMemoryRendering rendering) {
-
-		IMemoryBlock  memoryblk = rendering.getMemoryBlock();
-		
-		
-		// disable current view tab
-		if (getTopMemoryTab() != null)
-		{	
-			deactivateRendering(getTopMemoryTab());
-			getTopMemoryTab().setEnabled(false);
-		}
-		
-		if (fTabFolderForMemoryBlock.containsKey(memoryblk)) {
-			if (fStackLayout.topControl != (TabFolder)fTabFolderForMemoryBlock.get(memoryblk)) {
-				setTabFolder((TabFolder)fTabFolderForMemoryBlock.get(memoryblk));
-				fViewPaneCanvas.layout();
-			}
-		} else {	//otherwise, add a new one
-			TabFolder folder =  new TabFolder(fViewPaneCanvas, SWT.NULL);
-			
-			fTabFolderForMemoryBlock.put(memoryblk, folder);
-			fMemoryBlockFromTabFolder.put(folder, memoryblk);
-			setTabFolder((TabFolder)fTabFolderForMemoryBlock.get(memoryblk));
-			
-			fViewPaneCanvas.layout();
-		}	
-		
-		TabFolder tabFolder = (TabFolder) fStackLayout.topControl;
-		fTabFolderForDebugView.put(getMemoryBlockRetrieval(memoryblk), tabFolder);
-		
-		if (tabFolder.getItemCount() >= 1)
-		{
-			// remove "Create rendering tab"
-			TabItem item = tabFolder.getItem(0);
-			if (item != null && item.getData() instanceof MemoryViewTab)
-			{
-				MemoryViewTab viewTab = (MemoryViewTab)item.getData();
-				if (viewTab.getRendering() instanceof CreateRendering)
-				{
-					disposeTab(item);
-				}
-			}
-		}
-		
-		TabItem tab = new TabItem(tabFolder, SWT.NULL);
-		
-		MemoryViewTab viewTab = new MemoryViewTab(tab, rendering, this);
-		tabFolder.setSelection(tabFolder.indexOf(tab));
-		setRenderingSelection(viewTab.getRendering());
-		
-		// disable top view tab if the view pane is not visible
-		IMemoryViewTab top = getTopMemoryTab();
-		if (top != null)
-			top.setEnabled(fVisible);
-		
-		// activate after the rendering is created if the view pane is visible
-		if (fVisible)
-			activateRendering(top);
-		
-		updateToolBarActionsEnablement();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.core.memory.IMemoryRenderingListener#MemoryBlockRenderingRemoved(org.eclipse.debug.internal.core.memory.IMemoryRendering)
-	 */
-	public void memoryBlockRenderingRemoved(final IMemoryRendering rendering) {
-		final IMemoryBlock memory = rendering.getMemoryBlock();
-		
-		// need to run the following code on the UI Thread to avoid invalid thread access exception
-		Display.getDefault().syncExec(new Runnable()
-		{
-			public void run()
-			{
-				TabFolder tabFolder = (TabFolder) fStackLayout.topControl;
-				
-				if (tabFolder.isDisposed())
-					return;
-				
-				TabItem[] tabs = tabFolder.getItems();
-				boolean foundTab = false;
-				for (int i = 0; i < tabs.length; i++)
-				{
-					IMemoryViewTab viewTab = (IMemoryViewTab) tabs[i].getData();
-					
-					if (tabs[i].isDisposed())
-						continue;
-					
-
-					if (viewTab.getRendering().getMemoryBlock() == memory)
-					{
-						if (viewTab.getRendering() == rendering)
-						{
-							foundTab = true;
-							disposeTab(tabs[i]);
-							break;
-						}
-						
-					}
-				}
-
-				// if a tab is not found in the current top control
-				// this deletion is a result of a debug target termination
-				// find memory from other folder and dispose the view tab
-				if (!foundTab)
-				{
-					Enumeration enumeration = fTabFolderForMemoryBlock.elements();
-					while (enumeration.hasMoreElements())
-					{
-						TabFolder otherTabFolder = (TabFolder) enumeration.nextElement();
-						tabs = otherTabFolder.getItems();
-						IMemoryViewTab viewTab = null;
-						for (int i = 0; i < tabs.length; i++)
-						{
-							viewTab = (IMemoryViewTab) tabs[i].getData();
-							if (viewTab.getRendering().getMemoryBlock() == memory)
-							{
-								if (viewTab.getRendering() == rendering)
-								{
-									foundTab = true;
-									disposeTab(tabs[i]);
-									break;
-								}
-							}
-						}
-					}
-				}
-				IMemoryViewTab top = getTopMemoryTab();
-				
-				// update selection
-				if (top != null)
-					setRenderingSelection(top.getRendering());
-				else
-				{
-					if (tabFolder != fEmptyTabFolder)
-					{
-						IDebugTarget target = memory.getDebugTarget();
-						
-						// do not create if the target is already terminated or if the memory block is removed
-						if (!target.isDisconnected() && !target.isTerminated() && !isMeomryBlockRemoved(memory))
-						{
-							TabItem newItem = new TabItem(tabFolder, SWT.NULL);
-							CreateRendering createRendering = new CreateRendering(getInstance());
-							createRendering.init(getInstance(), memory);
-							
-							MemoryViewTab viewTab = new MemoryViewTab(newItem, createRendering, getInstance());
-							tabFolder.setSelection(0);
-							setRenderingSelection(viewTab.getRendering());
-						}
-					}
-				}
-					
-				updateToolBarActionsEnablement();
-			}
-		});
-		
-	}
-	
-	/**
-	 * @param memoryBlock
-	 * @return if this memory block is removed
-	 */
-	private boolean isMeomryBlockRemoved(IMemoryBlock memoryBlock)
-	{
-		IMemoryBlockRetrieval retrieval = getMemoryBlockRetrieval(memoryBlock);
-		IMemoryBlock[] memoryBlocks = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks(retrieval);
-		boolean removed = true;
-		
-		for (int i=0; i<memoryBlocks.length; i++)
-		{
-			if (memoryBlocks[i] == memoryBlock)
-				removed = false;
-		}
-		
-		return removed;
-	}
-	
-	
-	/**
-	 * @param viewTab
-	 */
-	protected void setRenderingSelection(IMemoryRendering rendering) {
-
-	 	if (rendering != null)
-	 	{	
-	 		fSelectionProvider.setSelection(new StructuredSelection(rendering));
-	 	}
-	}
-	
-	private void restoreViewTabs(IMemoryRendering[] renderings)
-	{
-		for (int i=0; i<renderings.length; i++)
-		{
-			memoryBlockRenderingAdded(renderings[i]);
-		}
-	}
-	
-	private void handleDebugElementSelection(final IMemoryViewTab lastViewTab, final IDebugElement element)
-	{
-		if (element.getDebugTarget() == null)
-			return;
-		
-		// don't do anything if the debug target is already terminated
-		if (element.getDebugTarget().isDisconnected() ||
-			element.getDebugTarget().isTerminated())
-		{
-			emptyFolder();
-			return;
-		}
-		
-		// get current memory block retrieval and debug target
-		IMemoryBlockRetrieval currentRetrieve = null;
-		
-		// get tab folder
-		TabFolder tabFolder = (TabFolder) fStackLayout.topControl;
-		
-		// get memory block
-		IMemoryBlock currentBlock = (IMemoryBlock)fMemoryBlockFromTabFolder.get(tabFolder);
-		
-		if (currentBlock != null)
-		{	
-			currentRetrieve = (IMemoryBlockRetrieval)currentBlock.getAdapter(IMemoryBlockRetrieval.class);
-			
-			if (currentRetrieve == null)
-			{
-				currentRetrieve = currentBlock.getDebugTarget();
-			}
-		}
-		
-		// find the folder associated with the given IMemoryBlockRetrieval
-		IMemoryBlockRetrieval retrieve = (IMemoryBlockRetrieval)element.getAdapter(IMemoryBlockRetrieval.class);
-		IDebugTarget debugTarget = element.getDebugTarget();
-		
-		// if IMemoryBlockRetrieval is null, use debugtarget
-		if (retrieve == null)
-			retrieve = debugTarget;
-
-		if (debugTarget == null ||debugTarget.isTerminated() || debugTarget.isDisconnected()) {
-			emptyFolder();
-			return;
-		}
-
-		// if debug target has changed
-		// switch to that tab folder
-		if (retrieve != currentRetrieve)
-		{	
-			TabFolder folder = (TabFolder)fTabFolderForDebugView.get(retrieve);
-			
-			if (folder != null)
-			{	
-				setTabFolder(folder);
-				fTabFolderForDebugView.put(retrieve, folder);
-				fViewPaneCanvas.layout();
-			}
-			else
-			{	
-				// find out if there is any memory block for this debug target
-				// and set up tab folder for the memory blocks
-				IMemoryBlock blocks[] = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(retrieve);
-				
-				if (blocks.length > 0)
-				{	
-					handleMemoryBlockSelection(null, blocks[0]);
-				}
-				else
-				{	
-					emptyFolder();
-					fTabFolderForDebugView.put(retrieve, fEmptyTabFolder);
-					fViewPaneCanvas.layout();
-				}
-			}
-		}
-		
-		// disable last view tab as it becomes hidden
-		IMemoryViewTab newViewTab = getTopMemoryTab();
-
-		if (lastViewTab != null && lastViewTab != newViewTab)
-		{
-			lastViewTab.setEnabled(false);
-		}
-
-		if (newViewTab != null)
-		{
-			// if new view tab is not already enabled, enable it
-			if (!newViewTab.isEnabled())
-			{
-				// if the view tab is visible, enable it
-				if (fVisible)
-				{
-					newViewTab.setEnabled(fVisible);
-				}					
-			}
-			
-			setRenderingSelection(newViewTab.getRendering());
-		}			
-		
-		//set toolbar actions enabled/disabled
-		updateToolBarActionsEnablement();
-	}
-	
-	protected void addListeners() {
-		super.addListeners();
-	}
-	protected void removeListeners() {
-		super.removeListeners();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)
-	 */
-	public void widgetSelected(SelectionEvent e) {
-		
-		if (getTopMemoryTab() == null)
-			return;
-		
-		IMemoryRendering rendering = getTopMemoryTab().getRendering();
-		
-		if (rendering != null)
-		{
-			fSelectionProvider.setSelection(new StructuredSelection(rendering));
-		}
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent)
-	 */
-	public void widgetDefaultSelected(SelectionEvent e) {
-	}
-	
-	public Object getCurrentSelection() {
-		if (getTopMemoryTab() != null)
-			if (getTopMemoryTab().getRendering() != null)
-				return getTopMemoryTab().getRendering();
-		return new Object();
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.extended.ui.IMemoryView#getAllViewTabs()
-	 */
-	public IMemoryViewTab[] getAllViewTabs() {
-		
-		// otherwise, find the view tab to display
-		TabFolder folder = (TabFolder) fStackLayout.topControl;
-		TabItem[] items = folder.getItems();
-		
-		IMemoryViewTab[] viewTabs = new IMemoryViewTab[folder.getItemCount()];
-		
-		for(int i=0; i<items.length; i++){
-			viewTabs[i] = (IMemoryViewTab)items[i].getData();
-		}
-		
-		return viewTabs;
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.extended.ui.IMemoryView#moveToTop(com.ibm.debug.extended.ui.IMemoryViewTab)
-	 */
-	public void moveToTop(IMemoryViewTab viewTab) {
-		
-		IMemoryViewTab lastViewTab = getTopMemoryTab();
-		
-		if (viewTab == lastViewTab)
-			return;
-		
-		// otherwise, find the view tab to display
-		TabFolder folder = (TabFolder) fStackLayout.topControl;
-		TabItem[] items = folder.getItems();
-
-		for (int i = 0; i < items.length; i++) {
-			IMemoryViewTab tab =
-				(IMemoryViewTab) items[i].getData();
-			if (viewTab == tab) {
-
-				boolean isEnabled = lastViewTab.isEnabled();
-
-				// switch to that viewTab
-				lastViewTab.setEnabled(false);
-				folder.setSelection(i);
-				
-				setRenderingSelection(tab.getRendering());
-				
-				getTopMemoryTab().setEnabled(isEnabled && fVisible);
-				break;
-			}
-		}
-	}
-
-	public void restoreViewPane() {
-		
-		// get current selection from memory view
-		
-		ISelection selection = null;
-		if (fParent.getSite().getSelectionProvider() != null)
-			selection = fParent.getSite().getSelectionProvider().getSelection();
-		
-		IMemoryBlock memoryBlock = null;
-		if (selection != null)
-		{
-			memoryBlock = getMemoryBlock(selection);
-		}
-		
-		if (memoryBlock == null)
-		{	
-			// get selection from this view
-			selection = fSelectionProvider.getSelection();
-			
-			if (MemoryViewUtil.isValidSelection(selection))
-			{	
-				Object elem = ((IStructuredSelection)selection).getFirstElement();
-
-				if (!(elem instanceof IMemoryBlock))
-					return;
-				
-				memoryBlock = (IMemoryBlock)elem;								
-			}
-		}
-		
-		if (memoryBlock != null)
-		{	
-			if (!fTabFolderForMemoryBlock.containsKey(memoryBlock))
-			{
-				// create tab folder if a tab folder does not already exist
-				// for the memory block
-				TabFolder folder = new TabFolder(fViewPaneCanvas, SWT.NULL);
-				
-				fTabFolderForMemoryBlock.put(memoryBlock, folder);
-				fMemoryBlockFromTabFolder.put(folder, memoryBlock);
-				setTabFolder((TabFolder)fTabFolderForMemoryBlock.get(memoryBlock));
-				fTabFolderForDebugView.put(getMemoryBlockRetrieval(memoryBlock), fTabFolderForMemoryBlock.get(memoryBlock));
-				fViewPaneCanvas.layout();
-			}
-			
-			if (fTabFolderForMemoryBlock.containsKey(memoryBlock))
-			{
-				TabFolder toDisplay = (TabFolder)fTabFolderForMemoryBlock.get(memoryBlock);
-				
-				if (toDisplay != null)
-				{
-					setTabFolder(toDisplay);
-					fTabFolderForDebugView.put(getMemoryBlockRetrieval(memoryBlock), toDisplay);
-					fViewPaneCanvas.layout();
-					
-					// restore view tabs
-					IMemoryRendering[] renderings = fRenderingMgr.getRenderingsFromMemoryBlock(memoryBlock);
-					
-					if (toDisplay.getItemCount() == 0 || (getTopMemoryTab().getRendering() instanceof CreateRendering))
-					{
-						restoreViewTabs(renderings);
-					}
-				}
-			}
-			
-			// disable current storag block
-		
-			IMemoryViewTab top = getTopMemoryTab();
-		
-			if (top != null)
-			{
-				top.setEnabled(fVisible);
-			}
-			else
-			{
-				TabFolder folder = (TabFolder)fStackLayout.topControl;
-				if (folder != fEmptyTabFolder)
-				{
-					TabItem newItem = new TabItem(folder, SWT.NULL);
-					CreateRendering rendering = new CreateRendering(this);
-					rendering.init(getInstance(), memoryBlock);
-					new MemoryViewTab(newItem, rendering, this);
-					folder.setSelection(0);
-					setRenderingSelection(rendering);
-				}
-			}
-		}
-	}
-	
-	public void dispose() {
-		super.dispose();
-		
-		fAddMemoryRenderingAction.dispose();
-		
-		fTabFolderForMemoryBlock.clear();
-		fTabFolderForMemoryBlock = null;
-		
-		fMemoryBlockFromTabFolder.clear();
-		fMemoryBlockFromTabFolder = null;
-		
-		fRenderingMgr.dispose();
-		fRenderingMgr = null;
-	}	
-	
-	public Control createViewPane(Composite parent, String paneId, String label) {
-		Control control =  super.createViewPane(parent, paneId, label);
-		fRenderingMgr = new ViewPaneRenderingMgr(this);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IDebugUIConstants.PLUGIN_ID + ".MemoryRenderingView_context"); //$NON-NLS-1$
-		return control;
-	}
-	
-	public IAction[] getActions() {
-		ArrayList actions = new ArrayList();
-		
-		if (fAddMemoryRenderingAction == null)
-			fAddMemoryRenderingAction = new AddMemoryRenderingAction(this);
-		actions.add(fAddMemoryRenderingAction);
-		
-		if (fRemoveMemoryRenderingAction == null)
-			fRemoveMemoryRenderingAction = new RemoveMemoryRenderingAction(this);
-		
-		fRemoveMemoryRenderingAction.setEnabled(false);
-		actions.add(fRemoveMemoryRenderingAction);
-		
-		return (IAction[])actions.toArray(new IAction[actions.size()]);
-	}
-	
-	// enable/disable toolbar action 
-	protected void updateToolBarActionsEnablement()
-	{
-		IDebugTarget target = getSelectedDebugTarget();
-		if (target != null)
-		{	
-			IMemoryBlock[] blocks = MemoryViewUtil.getMemoryBlockManager().getMemoryBlocks(target);
-			
-			if (blocks.length > 0)
-				fRemoveMemoryRenderingAction.setEnabled(true);
-			else
-				fRemoveMemoryRenderingAction.setEnabled(false);
-
-		}
-		else
-		{	
-			fRemoveMemoryRenderingAction.setEnabled(false);
-		}
-	}
-	
-	private IDebugTarget getSelectedDebugTarget()
-	{
-		ISelection selection = fParent.getViewSite().getPage().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-		if (selection instanceof IStructuredSelection && !selection.isEmpty())
-		{
-			Object elem = ((IStructuredSelection)selection).getFirstElement();
-			if (elem != null)
-			{	
-				if (elem instanceof IDebugElement)
-				{	
-					return ((IDebugElement)elem).getDebugTarget();
-				}
-			}		
-			return null;
-		}
-        return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.AbstractMemoryViewPane#emptyFolder()
-	 */
-	protected void emptyFolder() {
-		super.emptyFolder();
-		updateToolBarActionsEnablement();
-		fSelectionProvider.setSelection(new StructuredSelection(new Object[0]));
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IRenderingViewPane#addMemoryRendering(org.eclipse.debug.internal.ui.views.memory.IMemoryRendering)
-	 */
-	public void addMemoryRendering(IMemoryRendering rendering) {
-		
-		if (rendering == null)
-			return;
-
-		memoryBlockRenderingAdded(rendering);
-		fRenderingMgr.addMemoryBlockRendering(rendering);
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IRenderingViewPane#removeMemoryRendering(org.eclipse.debug.internal.ui.views.memory.IMemoryRendering)
-	 */
-	public void removeMemoryRendering(IMemoryRendering rendering) {
-		
-		if (rendering == null)
-			return;
-		
-		memoryBlockRenderingRemoved(rendering);
-		
-		if (fRenderingMgr != null)
-			fRenderingMgr.removeMemoryBlockRendering(rendering);
-		
-	}
-	
-	private RenderingViewPane getInstance()
-	{
-		return this;
-	}
-	
-	private IMemoryBlock getMemoryBlock(ISelection selection)
-	{
-		if (!(selection instanceof IStructuredSelection))
-			return null;
-
-		//only single selection of PICLDebugElements is allowed for this action
-		if (selection == null || selection.isEmpty() || ((IStructuredSelection)selection).size() > 1)
-		{
-			return null;
-		}
-
-		Object elem = ((IStructuredSelection)selection).getFirstElement();
-		
-		if (elem instanceof IMemoryBlock)
-			return (IMemoryBlock)elem;
-		else if (elem instanceof IMemoryRendering)
-			return ((IMemoryRendering)elem).getMemoryBlock();
-		else
-			return null;
-	}
-	
-	private void activateRendering(IMemoryViewTab viewTab)
-	{
-		if (viewTab == null)
-			return;
-		
-		if (!viewTab.isDisposed())
-		{
-			viewTab.getRendering().activated();
-			setRenderingSelection(viewTab.getRendering());
-			
-			// force to fire a selection change event
-			fSelectionProvider.fireChanged();
-		}
-	}
-	
-	private void deactivateRendering(IMemoryViewTab viewTab)
-	{
-		if (viewTab == null)
-			return;
-
-		if (!viewTab.isDisposed())
-		{		
-			viewTab.getRendering().deactivated();
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.IRenderingViewPane#getMemoryRenderingSite()
-	 */
-	public IMemoryRenderingSite getMemoryRenderingSite() {
-		return fRenderingSite;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingContainer#getId()
-	 */
-	public String getId() {
-		return getPaneId();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingContainer#getRenderings()
-	 */
-	public IMemoryRendering[] getRenderings() {
-		return fRenderingMgr.getRenderings();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingContainer#getActiveRendering()
-	 */
-	public IMemoryRendering getActiveRendering() {
-		return getTopMemoryTab().getRendering();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SelectCodePagesAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SelectCodePagesAction.java
deleted file mode 100644
index 0e5b906..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SelectCodePagesAction.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * Action to allow user to change code page preference.
- * @since 3.1
- */
-public class SelectCodePagesAction implements IViewActionDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		Shell shell = DebugUIPlugin.getActiveWorkbenchWindow().getShell();
-		
-		CodePagesPrefDialog dialog = new CodePagesPrefDialog(shell);
-		dialog.open();
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SynchronizeInfo.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SynchronizeInfo.java
deleted file mode 100644
index 974b876..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/SynchronizeInfo.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Hashtable;
-
-import org.eclipse.debug.core.model.IMemoryBlock;
-
-
-/**
- * Stores synchronization information for a memory block
- * Each object of synchronization information contains a memory block,
- * a list of views to be synchronized and a list of properties to be syncrhonized.
- * The views are responsible for defining properties to be synchronized and notifying
- * the synchronizer of properties changes.  This is only for keeping track of
- * values of synchronized properties and firing events when properties are changed.
- * 
- * Memory block serves as a key for synchronization.  Views displaying the same
- * memory block can be synchronized.  Views displaying different memory block
- * cannot be synchronized.
- * 
- * @since 3.0
- */
-public class SynchronizeInfo
-{
-	private IMemoryBlock fBlock;			// memory block blocked by the views
-	private Hashtable fProperties;			// list of properties to be synchronized
-
-	/**
-	 * Create a new synchronization info object for the memory block
-	 * @param block
-	 */
-	public SynchronizeInfo(IMemoryBlock block)
-	{
-		fBlock = block;
-		fProperties = new Hashtable();
-	}
-	
-	
-	/**
-	 * Set a property and its value to the info object
-	 * @param propertyId
-	 * @param value
-	 */
-	public void setProperty(String propertyId, Object value)
-	{
-		if (propertyId == null)
-			return;
-			
-		if (value == null)
-			return;
-			
-		fProperties.put(propertyId, value);
-	}
-	
-	/**
-	 * Returns the value of the property from the info object
-	 * @param propertyId
-	 * @return value of the property
-	 */
-	public Object getProperty(String propertyId)
-	{
-		if (propertyId == null)
-			return null;
-			
-		Object value = fProperties.get(propertyId);
-		
-		return value;	
-	}
-	
-	/**
-	 * @return all the property ids stored in this sync info object
-	 */
-	public String[] getPropertyIds()
-	{
-		if (fProperties == null)
-			return new String[0];
-		
-		Enumeration enumeration = fProperties.keys();
-		ArrayList ids = new ArrayList();
-		
-		while (enumeration.hasMoreElements())
-		{
-			ids.add(enumeration.nextElement());
-		}
-		
-		return (String[])ids.toArray(new String[ids.size()]);
-	}
-	
-	/**
-	 * Clean up the synchronization info object
-	 */
-	public void delete()
-	{
-		
-		if (fProperties != null){
-			fProperties.clear();
-			fProperties = null;
-		}
-		
-		if (fBlock != null){
-			fBlock = null;
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleMemoryMonitorsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleMemoryMonitorsAction.java
deleted file mode 100644
index 8595c83..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleMemoryMonitorsAction.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-
-/**
- * Toggles the visiblity of a view pane.
- * @since 3.1
- *
- */
-public class ToggleMemoryMonitorsAction extends ToggleViewPaneAction {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.ToggleViewPaneAction#getPaneId()
-	 */
-	public String getPaneId() {
-		return MemoryBlocksTreeViewPane.PANE_ID;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleSplitPaneAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleSplitPaneAction.java
deleted file mode 100644
index cb96979..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleSplitPaneAction.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-
-/**
- * Toggles the visibility of the rendering view pane 2.
- * @since 3.1
- *
- */
-public class ToggleSplitPaneAction extends ToggleViewPaneAction {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.ToggleViewPaneAction#getPaneId()
-	 */
-	public String getPaneId() {
-		return IInternalDebugUIConstants.ID_RENDERING_VIEW_PANE_2;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleViewPaneAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleViewPaneAction.java
deleted file mode 100644
index 5b38c55..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ToggleViewPaneAction.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * @since 3.1
- */
-abstract public class ToggleViewPaneAction  extends Action implements IViewActionDelegate {
-
-	MemoryView fView;
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		if (view instanceof MemoryView)
-		{
-			fView = (MemoryView)view;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		
-		if (fView == null)
-			return;
-		
-		fView.showViewPane(!fView.isViewPaneVisible(getPaneId()), getPaneId());
-		
-		if (fView.isViewPaneVisible(getPaneId()))
-			action.setChecked(true);
-		else
-			action.setChecked(false);
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		if (fView.isViewPaneVisible(getPaneId()))
-			action.setChecked(true);
-		else
-			action.setChecked(false);
-	}
-	
-	abstract public String getPaneId();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneRenderingMgr.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneRenderingMgr.java
deleted file mode 100644
index 1ca6932..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneRenderingMgr.java
+++ /dev/null
@@ -1,406 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.io.IOException;
-import java.util.ArrayList;
-
-import javax.xml.parsers.ParserConfigurationException;
-import javax.xml.transform.TransformerException;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.internal.core.LaunchManager;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * A View Pane Rendering Manager manages all the rendering from a view pane.
- * It is responsible for handling debug events and removing renderings
- * from the view pane as a debug session is terminated.
- * In addition, the rendering manager is responsible for persisting memory renderings.
- * Renderings need to be persisted when the memory view is disposed.  If the view is
- * opened again, the same set of renderings will be created in the view pane if 
- * the renderings are still valid.
- * @since 3.1
- */
-public class ViewPaneRenderingMgr implements IDebugEventSetListener{
-
-	private ArrayList fRenderings = new ArrayList();
-	private IMemoryRenderingContainer fViewPane;
-	
-	private static final String RENDERINGS_TAG = "persistedMemoryRenderings"; //$NON-NLS-1$
-	private static final String MEMORY_RENDERING_TAG = "memoryRendering"; //$NON-NLS-1$
-	private static final String MEMORY_BLOCK = "memoryBlock"; //$NON-NLS-1$
-	private static final String RENDERING_ID = "renderingId"; //$NON-NLS-1$
-	
-	public ViewPaneRenderingMgr(IMemoryRenderingContainer viewPane)
-	{
-		fViewPane = viewPane;
-		loadPersistedRenderings(getPrefId());
-	}
-
-	public void removeMemoryBlockRendering(IMemoryBlock mem, String renderingId)
-	{
-		if(fRenderings == null)
-			return;
-		
-		IMemoryRendering[] toRemove = getRenderings(mem, renderingId);
-		
-		for (int i=0; i<toRemove.length; i++)
-		{
-			fRenderings.remove(toRemove[i]);
-			
-			// remove listener after the last memory block has been removed
-			if (fRenderings.size() == 0)
-			{
-				DebugPlugin.getDefault().removeDebugEventListener(this);
-			}
-		}
-		
-		storeRenderings();
-	}
-	
-
-	public void addMemoryBlockRendering(IMemoryRendering rendering) {
-		
-		// do not allow duplicated objects
-		if (fRenderings.contains(rendering))
-			return;
-		
-		fRenderings.add(rendering);
-		
-		// add listener for the first memory block added
-		if (fRenderings.size() == 1)
-		{
-			DebugPlugin.getDefault().addDebugEventListener(this);
-		}
-		
-		storeRenderings();
-	}
-
-
-	public void removeMemoryBlockRendering(IMemoryRendering rendering) {
-		if(rendering == null)
-			return;
-		
-		if(!fRenderings.contains(rendering))
-			return;
-		
-		fRenderings.remove(rendering);
-		
-		// remove listener after the last memory block has been removed
-		if (fRenderings.size() == 0)
-		{
-			DebugPlugin.getDefault().removeDebugEventListener(this);
-		}
-		
-		storeRenderings();
-	}
-
-	public IMemoryRendering[] getRenderings(IMemoryBlock mem, String renderingId)
-	{
-		if (renderingId == null)
-		{
-			return getRenderingsFromMemoryBlock(mem);
-		}
-		
-		ArrayList ret = new ArrayList();
-		for (int i=0; i<fRenderings.size(); i++)
-		{
-			if (fRenderings.get(i) instanceof IMemoryRendering)
-			{
-				IMemoryRendering rendering = (IMemoryRendering)fRenderings.get(i);
-				if (rendering.getMemoryBlock() == mem && renderingId.equals(rendering.getRenderingId()))
-				{
-					ret.add(rendering);
-				}
-			}
-		}
-		
-		return (IMemoryRendering[])ret.toArray(new IMemoryRendering[ret.size()]);
-	}
-	
-	public IMemoryRendering[] getRenderings()
-	{
-		return (IMemoryRendering[])fRenderings.toArray(new IMemoryRendering[fRenderings.size()]);
-	}
-
-	public IMemoryRendering[] getRenderingsFromDebugTarget(IDebugTarget target)
-	{
-		ArrayList ret = new ArrayList();
-		for (int i=0; i<fRenderings.size(); i++)
-		{
-			if (fRenderings.get(i) instanceof IMemoryRendering)
-			{
-				IMemoryRendering rendering = (IMemoryRendering)fRenderings.get(i);
-				if (rendering.getMemoryBlock().getDebugTarget() == target)
-				{
-					ret.add(rendering);
-				}
-			}
-		}
-		
-		return (IMemoryRendering[])ret.toArray(new IMemoryRendering[ret.size()]);
-	}
-	
-
-	public IMemoryRendering[] getRenderingsFromMemoryBlock(IMemoryBlock block)
-	{
-		ArrayList ret = new ArrayList();
-		for (int i=0; i<fRenderings.size(); i++)
-		{
-			if (fRenderings.get(i) instanceof IMemoryRendering)
-			{
-				IMemoryRendering rendering = (IMemoryRendering)fRenderings.get(i);
-				if (rendering.getMemoryBlock() == block)
-				{
-					ret.add(rendering);
-				}
-			}
-		}
-		
-		return (IMemoryRendering[])ret.toArray(new IMemoryRendering[ret.size()]);		
-	}	
-	
-	
-
-	public void handleDebugEvents(DebugEvent[] events) {
-		
-		for (int i=0; i < events.length; i++)
-			handleDebugEvent(events[i]);
-		
-	}
-	
-	public void handleDebugEvent(DebugEvent event) {
-		Object obj = event.getSource();
-		IDebugTarget dt = null;
-		
-		if (event.getKind() == DebugEvent.TERMINATE)
-		{
-			// a terminate event could happen from an IThread or IDebugTarget
-			// Only handle terminate event from debug target
-			if (obj instanceof IDebugTarget)
-			{
-				dt = ((IDebugTarget)obj);
-				
-				// returns empty array if dt == null
-				IMemoryRendering[] deletedrendering = getRenderingsFromDebugTarget(dt);
-				
-				for (int i=0; i<deletedrendering.length; i++)
-				{
-					removeMemoryBlockRendering(deletedrendering[i].getMemoryBlock(), deletedrendering[i].getRenderingId());
-					fViewPane.removeMemoryRendering(deletedrendering[i]);
-				}
-			}
-		}
-	}
-
-	public void dispose()
-	{
-		// remove all renderings
-		fRenderings.clear();
-		
-		String secondaryId = getViewSiteSecondaryId();
-		if (secondaryId != null)
-		{
-			// do not save renderings if this is not the primary rendering view
-			String prefid = getPrefId();
-			Preferences prefs = DebugUIPlugin.getDefault().getPluginPreferences();
-			prefs.setToDefault(prefid);
-		}
-			
-		DebugPlugin.getDefault().removeDebugEventListener(this);
-	}
-	
-	/**
-	 * Store renderings as preferences.  If renderings are stored, renderings
-	 * can be persisted even after the memory view is closed.
-	 */
-	private void storeRenderings()
-	{
-		Preferences prefs = DebugUIPlugin.getDefault().getPluginPreferences();
-		String renderingsStr= ""; //$NON-NLS-1$
-		try {
-			renderingsStr= getRenderingsAsXML();
-		} catch (IOException e) {
-			DebugUIPlugin.log(e);
-		} catch (ParserConfigurationException e) {
-			DebugUIPlugin.log(e);
-		} catch (TransformerException e) {
-			DebugUIPlugin.log(e);
-		}
-		
-		String prefid = getPrefId();
-		
-		if (renderingsStr != null)
-			prefs.setValue(prefid, renderingsStr);
-		else
-			prefs.setToDefault(prefid);
-	}
-
-	private String getPrefId() {
-		// constructs id based on memory view's secondary id + the rendering view pane id
-		// format:  secondaryId:viewPaneId
-		StringBuffer id = new StringBuffer();
-		IMemoryRenderingSite renderingSite = fViewPane.getMemoryRenderingSite();
-		IWorkbenchPartSite ps = renderingSite.getSite();
-		if (ps instanceof IViewSite)
-		{
-			IViewSite vs = (IViewSite)ps;
-			String secondaryId = vs.getSecondaryId();
-			if (secondaryId != null)
-			{
-				id.append(secondaryId);
-				id.append(":"); //$NON-NLS-1$
-			}
-			
-		}
-		id.append(fViewPane.getId());
-		String prefId = id.toString();
-		return prefId;
-	}
-	
-	/**
-	 * Convert renderings to xml text
-	 * @return
-	 * @throws IOException
-	 * @throws ParserConfigurationException
-	 * @throws TransformerException
-	 */
-	private String getRenderingsAsXML() throws IOException, ParserConfigurationException, TransformerException {
-		IMemoryRendering[] renderings= (IMemoryRendering[])fRenderings.toArray(new IMemoryRendering[fRenderings.size()]);
-		
-		if (renderings.length == 0)
-			return null;
-		
-		Document document= LaunchManager.getDocument();
-		Element rootElement= document.createElement(RENDERINGS_TAG);
-		document.appendChild(rootElement);
-		for (int i = 0; i < renderings.length; i++) {
-			IMemoryRendering rendering= renderings[i];
-			Element element= document.createElement(MEMORY_RENDERING_TAG); 
-			element.setAttribute(MEMORY_BLOCK, Integer.toString(rendering.getMemoryBlock().hashCode()));
-			element.setAttribute(RENDERING_ID, rendering.getRenderingId());
-			rootElement.appendChild(element);
-		}
-		return LaunchManager.serializeDocument(document);
-	}
-
-	/**
-	 * Load renderings currently stored.
-	 */
-	private void loadPersistedRenderings(String prefId) {
-		String renderingsStr= DebugUIPlugin.getDefault().getPluginPreferences().getString(prefId);
-		if (renderingsStr.length() == 0) {
-			return;
-		}
-		Element root;
-		try {
-			root = DebugPlugin.parseDocument(renderingsStr);
-		} catch (CoreException e) {
-			DebugUIPlugin.logErrorMessage("An exception occurred while loading memory renderings."); //$NON-NLS-1$
-			return;
-		}
-		if (!root.getNodeName().equals(RENDERINGS_TAG)) {
-			DebugUIPlugin.logErrorMessage("Invalid format encountered while loading memory renderings."); //$NON-NLS-1$
-			return;
-		}
-		NodeList list= root.getChildNodes();
-		boolean renderingsAdded= false;
-		for (int i= 0, numItems= list.getLength(); i < numItems; i++) {
-			Node node= list.item(i);
-			if (node.getNodeType() == Node.ELEMENT_NODE) {
-				Element element= (Element) node;
-				if (!element.getNodeName().equals(MEMORY_RENDERING_TAG)) {
-					DebugUIPlugin.logErrorMessage("Invalid XML element encountered while loading memory rendering."); //$NON-NLS-1$
-					continue;
-				}
-				String memoryBlockHashCode= element.getAttribute(MEMORY_BLOCK);
-				String renderingId = element.getAttribute(RENDERING_ID);
-				
-				IMemoryBlock[] memoryBlocks = DebugPlugin.getDefault().getMemoryBlockManager().getMemoryBlocks();
-				IMemoryBlock memoryBlock = null;
-				for (int j=0; j<memoryBlocks.length; j++)
-				{
-					if (Integer.toString(memoryBlocks[j].hashCode()).equals(memoryBlockHashCode))
-						memoryBlock = memoryBlocks[j];
-				}
-				
-				if (memoryBlock != null)
-				{
-					IMemoryRenderingType[] types  = DebugUITools.getMemoryRenderingManager().getRenderingTypes(memoryBlock);
-					IMemoryRenderingType type = null;
-					for (int k=0; k<types.length; k++)
-					{
-						if (types[k].getId().equals(renderingId))
-							type = types[k];
-					}
-				
-					// if memory block is not found, the rendering is no longer valid
-					// simply ignore the rendering
-					if (type != null)
-					{
-						try {
-		
-							IMemoryRendering rendering = type.createRendering();
-							rendering.init(fViewPane, memoryBlock);
-							if (rendering != null)
-							{
-								if (!fRenderings.contains(rendering))
-								{
-									fRenderings.add(rendering);
-									renderingsAdded= true;
-								}
-							}
-						} catch (CoreException e1) {
-							DebugUIPlugin.log(e1);
-						}
-					}
-				}
-			}
-		}
-		if (renderingsAdded) {
-			DebugPlugin.getDefault().addDebugEventListener(this);
-		}
-	}	
-	
-	/**
-	 * @return secondary id, or null if not available
-	 */
-	private String getViewSiteSecondaryId()
-	{
-		IMemoryRenderingSite renderingSite = fViewPane.getMemoryRenderingSite();
-		IWorkbenchPartSite ps = renderingSite.getSite();
-		if (ps instanceof IViewSite)
-		{
-			IViewSite vs = (IViewSite)ps;
-			String secondaryId = vs.getSecondaryId();
-			return secondaryId;
-		}
-		return null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneSelectionProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneSelectionProvider.java
deleted file mode 100644
index c375da7..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewPaneSelectionProvider.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
- 
-package org.eclipse.debug.internal.ui.views.memory;
-
-import java.util.ArrayList;
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-
-
-/**
- * Handles selection changes in a rendering view pane.
- * @since 3.1
- *
- */
-public class ViewPaneSelectionProvider implements ISelectionProvider
-{
-	ArrayList fListeners = new ArrayList();
-	ISelection fSelection;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ISelectionProvider#addSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-	 */
-	public void addSelectionChangedListener(ISelectionChangedListener listener)
-	{
-		if (!fListeners.contains(listener))
-			fListeners.add(listener);
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ISelectionProvider#getSelection()
-	 */
-	public ISelection getSelection()
-	{
-		return fSelection;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ISelectionProvider#removeSelectionChangedListener(org.eclipse.jface.viewers.ISelectionChangedListener)
-	 */
-	public void removeSelectionChangedListener(ISelectionChangedListener listener)
-	{
-		if (fListeners.contains(listener))
-			fListeners.remove(listener);
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ISelectionProvider#setSelection(org.eclipse.jface.viewers.ISelection)
-	 */
-	public void setSelection(ISelection selection)
-	{		
-		fSelection = selection;
-		fireChanged();
-	}
-	
-	public void fireChanged()
-	{
-		SelectionChangedEvent evt = new SelectionChangedEvent(this, getSelection());
-		for (int i=0; i<fListeners.size(); i++)
-		{
-			((ISelectionChangedListener)fListeners.get(i)).selectionChanged(evt);
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewTabEnablementManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewTabEnablementManager.java
deleted file mode 100644
index e501363..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/ViewTabEnablementManager.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory;
-
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
-
-/**
- * Controls view tab enablement based on tab folder selection
- * 
- * @since 3.0
- */
-public class ViewTabEnablementManager implements SelectionListener {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)
-	 */
-	public void widgetSelected(SelectionEvent e) {
-		if (e.getSource() instanceof TabFolder)
-		{
-			handleTabFolderSelection(e);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent)
-	 */
-	public void widgetDefaultSelected(SelectionEvent e) {
-		 
-		
-	}
-	
-	private void handleTabFolderSelection(SelectionEvent event)
-	{
-		TabFolder folder = (TabFolder)event.getSource();
-		
-		TabItem[] selectedItems = folder.getSelection();
-		TabItem selectedItem;
-		IMemoryViewTab selectedViewTab;
-		
-		// get selected view tab
-		if (selectedItems.length > 0)
-		{
-			selectedItem = selectedItems[0];
-			
-			Object obj = selectedItem.getData();
-			
-			if (obj instanceof IMemoryViewTab)
-			{
-				selectedViewTab = (IMemoryViewTab)obj;
-			}
-			else
-			{
-				return;
-			}
-		}
-		else
-		{
-			return;
-		}
-		
-		// get all tabs
-		TabItem[] allTabs = folder.getItems();
-		
-		// check all tabs to make sure they are enabled/disabled properly
-		for (int i=0; i<allTabs.length; i++)
-		{	
-			IMemoryViewTab viewTab;
-			Object obj = allTabs[i].getData();
-			
-			if (obj instanceof IMemoryViewTab)
-			{	
-				viewTab = (IMemoryViewTab)obj;
-				
-				// if view tab matches the selected item
-				if (viewTab == selectedViewTab && !viewTab.isEnabled() )
-				{
-					// if the item has been selected and this tab is not enabled
-					// enable it.
-					viewTab.setEnabled(true);
-					viewTab.getRendering().activated();
-					
-				}
-				else if (viewTab != selectedViewTab && viewTab.isEnabled())
-				{
-					// if the tab is not selected, disable it
-					viewTab.setEnabled(false);
-					viewTab.getRendering().deactivated();
-				}	
-			}
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRendering.java
deleted file mode 100644
index 39c47db..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRendering.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTextRendering;
-import org.eclipse.jface.util.PropertyChangeEvent;
-
-
-
-
-/**
- * Convert bytes into ASCII string and vice versa
- * @since 3.1
- */
-public class ASCIIRendering extends AbstractTextRendering{
-	
-	private final int numCharsPerByte = 1;
-	
-
-	public ASCIIRendering(String renderingId)
-	{
-		super(renderingId);
-		String codepage = DebugUITools.getPreferenceStore().getString(IDebugUIConstants.PREF_DEFAULT_ASCII_CODE_PAGE);
-		setCodePage(codepage);
-		
-		// add as preference store listener
-		DebugUITools.getPreferenceStore().addPropertyChangeListener(this);
-	}
-	
-	public void dispose() {
-		DebugUITools.getPreferenceStore().removePropertyChangeListener(this);
-		super.dispose();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.AbstractMemoryRendering#getNumCharsPerByte()
-	 */
-	public int getNumCharsPerByte() {
-		return numCharsPerByte;
-	}
-	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.AbstractTableRendering#getBytes(java.lang.String, java.math.BigInteger, org.eclipse.debug.core.model.MemoryByte[], java.lang.String)
-	 */
-	public byte[] getBytes(
-		String renderingId,
-		BigInteger address,
-		MemoryByte[] currentValues,
-		String data) {
-		
-		byte[] bytes =  super.getBytes(renderingId, address, currentValues, data);
-		
-		// undo the replacement of 1's to 0's.
-		for (int i=0; i<bytes.length && i < currentValues.length; i++)
-		{
-			if (bytes[i] == 1 && currentValues[i].getValue() == 0)
-			{
-				bytes[i] = 0;
-			}
-		}
-		
-		return bytes;
-		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.AbstractTableRendering#getString(java.lang.String, java.math.BigInteger, org.eclipse.debug.core.model.MemoryByte[])
-	 */
-	public String getString(
-		String renderingId,
-		BigInteger address,
-		MemoryByte[] data) {
-		
-		MemoryByte[] copy = new MemoryByte[data.length];
-
-		// If a byte equals zero, it represents null in a string
-		// and often causes subsequent string not displayed or printed properly
-		// Replace all null with 1's
-		for (int i=0; i<data.length; i++){
-			copy[i] = new MemoryByte();
-			if (data[i].getValue() == 0)
-			{
-				copy[i].setValue((byte)1);
-			}
-			else
-			{
-				copy[i].setValue(data[i].getValue());
-			}
-			copy[i].setFlags(data[i].getFlags());
-		}
-		
-		return super.getString(renderingId, address, copy);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		
-		// handle code page changed event
-		if (event.getProperty().equals(IDebugUIConstants.PREF_DEFAULT_ASCII_CODE_PAGE))
-		{
-			String codePage = (String)event.getNewValue();
-			setCodePage(codePage);
-			
-			if (isVisible())
-				// just update labels, don't need to reget memory
-				updateLabels();
-		}
-		
-		super.propertyChange(event);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRenderingTypeDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRenderingTypeDelegate.java
deleted file mode 100644
index 73c01e0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ASCIIRenderingTypeDelegate.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate;
-
-/**
- * The delegate for creating an ASCII rendering.
- * @since 3.1
- */
-public class ASCIIRenderingTypeDelegate implements IMemoryRenderingTypeDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate#createRendering(java.lang.String)
-	 */
-	public IMemoryRendering createRendering(String id) throws CoreException {
-		return new ASCIIRendering(id);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractIntegerRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractIntegerRendering.java
deleted file mode 100644
index 90f8eaa..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractIntegerRendering.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-
-/**
- * Abstract implementation to an integer rendering.
- * @since 3.1
- *
- */
-public abstract class AbstractIntegerRendering extends AbstractTableRendering {
-	
-	private int fDisplayEndianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-	
-	public AbstractIntegerRendering(String renderingId){
-		super(renderingId);
-	}
-	
-	public void init(IMemoryRenderingContainer container, IMemoryBlock block) {
-		super.init(container, block);
-		
-		// default to big endian for simple memory block
-		if (!(block instanceof IMemoryBlockExtension))
-			fDisplayEndianess = RenderingsUtil.BIG_ENDIAN;
-	}
-	
-	/**
-	 * @return Returns the currentEndianess.
-	 */
-	public int getDisplayEndianess() {
-		return fDisplayEndianess;
-	}
-
-	/**
-	 * @param currentEndianess The currentEndianess to set.
-	 */
-	public void setDisplayEndianess(int currentEndianess) {
-		fDisplayEndianess = currentEndianess;
-	}
-
-	protected int getBytesEndianess(MemoryByte[] data) {
-		int endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-		
-		if (!data[0].isEndianessKnown())
-			return endianess;
-		
-		if (data[0].isBigEndian())
-			endianess = RenderingsUtil.BIG_ENDIAN;
-		else
-			endianess = RenderingsUtil.LITTLE_ENDIAN;
-		for (int i=1; i<data.length; i++)
-		{
-			// if endianess is not known for a byte, return unknown
-			if (!data[i].isEndianessKnown())
-				return RenderingsUtil.ENDIANESS_UNKNOWN;
-			
-			int byteEndianess = data[i].isBigEndian()?RenderingsUtil.BIG_ENDIAN:RenderingsUtil.LITTLE_ENDIAN;
-			if (byteEndianess != endianess)
-			{
-				endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-				break;
-			}
-		}
-		return endianess;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractTableRenderingLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractTableRenderingLabelProvider.java
deleted file mode 100644
index 8fcbf33..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/AbstractTableRenderingLabelProvider.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * Abstract label provider for an ITableMemoryViewTab
- * 
- * @since 3.0
- */
-abstract public class AbstractTableRenderingLabelProvider extends LabelProvider implements ITableLabelProvider{
-
-	protected AbstractTableRendering fRendering;
-	
-	/**
-	 * 
-	 * Constructor for MemoryViewLabelProvider
-	 */
-	public AbstractTableRenderingLabelProvider() {
-		super();
-	}
-	
-	public AbstractTableRenderingLabelProvider(AbstractTableRendering rendering){
-		fRendering = rendering;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		fRendering = null;
-		super.dispose();
-	}
-
-	/**
-	 * @see ITableLabelProvider#getColumnImage(Object, int)
-	 */
-	public Image getColumnImage(Object element, int columnIndex) {
-		
-		if (columnIndex == 0)
-		{
-			return DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_OBJECT_MEMORY);	
-		}
-		else if (columnIndex > (fRendering.getBytesPerLine()/fRendering.getBytesPerColumn()))
-		{
-			return DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_OBJECT_MEMORY);	
-		}
-		else
-		{	
-			// if memory in the range has changed, return delta icon
-			int startOffset = (columnIndex-1)*fRendering.getBytesPerColumn();
-			int endOffset = startOffset + fRendering.getBytesPerColumn() - 1;
-			if (((TableRenderingLine)element).isRangeChange(startOffset, endOffset)) {
-				return DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_OBJECT_MEMORY_CHANGED);
-			}
-			return DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_OBJECT_MEMORY);	
-		}
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
-	 */
-	public String getColumnText(Object element, int columnIndex) {
-		String columnLabel = null;
-
-		if (columnIndex == 0)
-		{
-			columnLabel = ((TableRenderingLine)element).getAddress();
-			
-			// consult model presentation for address presentation
-		}
-		else if (columnIndex > (fRendering.getBytesPerLine()/fRendering.getBytesPerColumn()))
-		{
-			columnLabel = " "; //$NON-NLS-1$
-		}
-		else
-		{	
-			int start = (columnIndex-1)*fRendering.getBytesPerColumn();
-			int end = start + fRendering.getBytesPerColumn();
-
-			MemoryByte[] bytes = ((TableRenderingLine)element).getBytes(start, end);
-			BigInteger address = new BigInteger(((TableRenderingLine)element).getAddress(), 16);
-			address = address.add(BigInteger.valueOf(start)); 
-			
-			columnLabel = fRendering.getString(fRendering.getRenderingId(), address, bytes);
-		}
-		return columnLabel;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java
deleted file mode 100644
index e1b72a8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BasicDebugViewContentProvider.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * @since 3.0
- * 
- */
-public abstract class BasicDebugViewContentProvider implements IStructuredContentProvider, IDebugEventSetListener {
-
-	protected StructuredViewer fViewer;
-	protected boolean fDisposed= false;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-	 */
-	public void dispose() {
-		fDisposed= true;
-	}
-	
-	/**
-	 * Returns whether this content provider has already
-	 * been disposed.
-	 */
-	protected boolean isDisposed() {
-		return fDisposed;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-	 */
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		fViewer= (StructuredViewer) viewer;
-	}
-
-	protected void asyncExec(Runnable r) {
-		if (fViewer != null) {
-			Control ctrl= fViewer.getControl();
-			if (ctrl != null && !ctrl.isDisposed()) {
-				ctrl.getDisplay().asyncExec(r);
-			}
-		}
-	}
-	
-	protected void syncExec(Runnable r) {
-		if (fViewer != null) {
-			Control ctrl= fViewer.getControl();
-			if (ctrl != null && !ctrl.isDisposed()) {
-				ctrl.getDisplay().syncExec(r);
-			}
-		}
-	}
-	
-	/**
-	 * Refreshes the viewer - must be called in UI thread.
-	 */
-	protected void refresh() {
-		if (fViewer != null) {
-			fViewer.refresh();
-		}
-	}
-			
-	/**
-	 * Refresh the given element in the viewer - must be called in UI thread.
-	 */
-	protected void refresh(Object element) {
-		if (fViewer != null) {
-			 fViewer.refresh(element);
-		}
-	}
-	
-	/**
-	 * Handle debug events on the main thread.
-	 * @param event
-	 */
-	public void handleDebugEvent(final DebugEvent event) {
-		if (fViewer == null) {
-			return;
-		}
-		Object element= event.getSource();
-		if (element == null) {
-			return;
-		}
-		Runnable r= new Runnable() {
-			public void run() {
-				if (!isDisposed()) {
-					doHandleDebugEvent(event);
-				}
-			}
-		};
-		
-		asyncExec(r);
-	}
-
-	/* (non-Javadoc)
-	 * @see IDebugEventSetListener#handleDebugEvents(DebugEvent[])
-	 */
-	public void handleDebugEvents(DebugEvent[] events) {
-		for (int i=0; i < events.length; i++)
-			handleDebugEvent(events[i]);
-	}
-	
-	/**
-	 * Performs an update based on the event
-	 */
-	protected abstract void doHandleDebugEvent(DebugEvent event);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BigEndianAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BigEndianAction.java
deleted file mode 100644
index 94d7d15..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/BigEndianAction.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * Show integers in Big Endian
- */
-public class BigEndianAction implements IObjectActionDelegate {
-
-	AbstractIntegerRendering fRendering;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-
-		if (fRendering == null)
-			return;
-		
-		if (fRendering.getDisplayEndianess() != RenderingsUtil.BIG_ENDIAN){
-			fRendering.setDisplayEndianess(RenderingsUtil.BIG_ENDIAN);
-			fRendering.refresh();
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		
-		if (selection == null)
-			return;
-		
-		if (selection instanceof IStructuredSelection)
-		{
-			Object obj = ((IStructuredSelection)selection).getFirstElement();
-			if (obj == null)
-				return;
-			
-			if (obj instanceof AbstractIntegerRendering)
-			{
-				fRendering = (AbstractIntegerRendering)obj;
-			}
-			
-			int endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-			if (fRendering.getDisplayEndianess() == RenderingsUtil.ENDIANESS_UNKNOWN)
-			{
-				MemoryByte[] selectedBytes = fRendering.getSelectedAsBytes();
-				for (int i=0; i<selectedBytes.length; i++)
-				{
-					if (!selectedBytes[i].isEndianessKnown())
-					{
-						endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-						break;
-					}
-					if (i==0)
-					{
-						endianess = selectedBytes[i].isBigEndian()?RenderingsUtil.BIG_ENDIAN:RenderingsUtil.LITTLE_ENDIAN;
-					}
-					else
-					{
-						int byteEndianess = selectedBytes[i].isBigEndian()?RenderingsUtil.BIG_ENDIAN:RenderingsUtil.LITTLE_ENDIAN;
-						if (endianess != byteEndianess)
-						{
-							endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-							break;
-						}
-					}
-				}
-			}
-			else
-				endianess = fRendering.getDisplayEndianess();
-			
-			if (endianess == RenderingsUtil.BIG_ENDIAN)
-				action.setChecked(true);
-			else
-				action.setChecked(false);
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CopyTableRenderingToClipboardAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CopyTableRenderingToClipboardAction.java
deleted file mode 100644
index d1e538a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CopyTableRenderingToClipboardAction.java
+++ /dev/null
@@ -1,180 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.swt.dnd.Clipboard;
-import org.eclipse.swt.dnd.TextTransfer;
-import org.eclipse.swt.dnd.Transfer;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-
-
-/**
- * Toobar Copy View Tab to Clipboard action
- * 
- * @since 3.0
- */
-public class CopyTableRenderingToClipboardAction extends Action
-{
-	private final String COLUMN_SEPERATOR = "  "; //$NON-NLS-1$
-	
-	private AbstractTableRendering fRendering;
-	
-	public CopyTableRenderingToClipboardAction(AbstractTableRendering rendering)
-	{
-		super();
-		fRendering = rendering;
-		setText(DebugUIMessages.CopyViewToClipboardAction_title);
-		setToolTipText(DebugUIMessages.CopyViewToClipboardAction_tooltip);
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_COPY_VIEW_TO_CLIPBOARD));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_COPY_VIEW_TO_CLIPBOARD));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_COPY_VIEW_TO_CLIPBOARD));
-	}
-
-	private String concatenateTableAsString(TableItem[] itemList) {
-		if (itemList.length == 0) return null;
-
-		StringBuffer tableContents = new StringBuffer();
-		TableViewer viewer = fRendering.getTableViewer();
-		Table table = viewer.getTable();
-		int numColumns = table.getColumnCount();
-		ITableLabelProvider labelProvider = (ITableLabelProvider)viewer.getLabelProvider();		
-		TableColumn columns[] = table.getColumns();
-		
-		// get title of view tab
-		String label = fRendering.getLabel();
-		tableContents.append(label);
-		tableContents.append(System.getProperty("line.separator")); //$NON-NLS-1$
-		tableContents.append(COLUMN_SEPERATOR);
-		
-		int charsPerByte = fRendering.getNumCharsPerByte();
-		if (charsPerByte < 0)
-			charsPerByte = 4;
-		
-		//get the column headers and line them up properly
-		for (int k=0; k < numColumns; k++) {
-			
-			StringBuffer columnLabel = new StringBuffer(columns[k].getText());
-			int numBytes = 0;
-			int numChars = 0;
-			
-			if (k > 0)
-			{	
-				numBytes = fRendering.getBytesPerColumn();
-				numChars = numBytes * charsPerByte;
-			}
-			else
-			{
-				// special for address column
-				IMemoryBlock memBlock = fRendering.getMemoryBlock();
-				if (memBlock instanceof IMemoryBlockExtension)
-				{
-					try {
-						numBytes = ((IMemoryBlockExtension)memBlock).getAddressSize();
-					} catch (DebugException e) {
-						numBytes = 0;
-					}
-					
-					// check address size
-					if (numBytes <= 0)
-						numBytes = 4;
-				}
-				else
-				{
-					numBytes = 4;
-				}
-				numChars = numBytes*2;
-				
-			}
-			
-			 while (columnLabel.length() < numChars)
-			 {
-				 columnLabel.append(" "); //$NON-NLS-1$
-			 }
-				
-			tableContents.append(columnLabel);	
-			tableContents.append(COLUMN_SEPERATOR);
-		}
-		
-		tableContents.append(System.getProperty("line.separator")); //$NON-NLS-1$
-		StringBuffer temp;
-			
-		//get the column contents from all the rows
-		for (int i=0; i < itemList.length; i++) {
-			for (int j=0; j < numColumns; j++) {
-				tableContents.append(COLUMN_SEPERATOR);
-				
-				temp = new StringBuffer(labelProvider.getColumnText(itemList[i].getData(), j));
-				
-				if (j>0)
-				{	
-					int numBytes = fRendering.getBytesPerColumn();
-					int numChars = numBytes * charsPerByte;
-					while (temp.length() < numChars)
-					{
-						temp.append(" "); //$NON-NLS-1$
-					}
-				}
-				
-				tableContents.append(temp);
-			}
-			tableContents.append(System.getProperty("line.separator")); //$NON-NLS-1$
-		}
-		return tableContents.toString();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		
-		if (fRendering == null)
-			return;
-		
-		TableViewer viewer = fRendering.getTableViewer();
-		
-		if (viewer == null)
-			return;
-		
-		Table table = viewer.getTable();
-		
-		if (table == null)
-			return;
-		Clipboard clip= null;
-		try {
-			clip = new Clipboard(table.getDisplay());
-			TableItem[] tableItems = table.getItems();
-			String tableAsString = new String();
-			tableAsString = concatenateTableAsString(tableItems);
-			if (!tableAsString.equals("")) { //$NON-NLS-1$
-				TextTransfer plainTextTransfer = TextTransfer.getInstance();
-				clip.setContents(new Object[] {tableAsString}, new Transfer[] {plainTextTransfer});
-			}
-		} finally {
-			if (clip != null) {
-				clip.dispose();
-			}
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CreateRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CreateRendering.java
deleted file mode 100644
index 83e6237..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/CreateRendering.java
+++ /dev/null
@@ -1,336 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrieval;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.memory.MemoryViewUtil;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.memory.AbstractMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingBindingsListener;
-import org.eclipse.debug.ui.memory.IMemoryRenderingContainer;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ListViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-
-/**
- * The rendering to allow users to create a rendering.
- * @since 3.1
- */
-public class CreateRendering extends AbstractMemoryRendering implements IMemoryRenderingBindingsListener {
-
-	private ListViewer fViewer;
-	private Label fMemoryBlockLabel;
-	private IMemoryRenderingContainer fContainer; 
-	private Composite fCanvas;
-	
-	public CreateRendering(IMemoryRenderingContainer container)
-	{
-		super("org.eclipse.debug.internal.ui.views.createrendering"); //$NON-NLS-1$
-		fContainer = container;
-	}
-
-	class MemoryRenderingLabelProvider implements ILabelProvider
-	{
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
-		 */
-		public Image getImage(Object element) {
-			return null;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
-		 */
-		public String getText(Object element) {
-			if (element instanceof IMemoryRenderingType)
-			{	
-				String label = ((IMemoryRenderingType)element).getLabel();
-				return label;
-			}
-            return element.toString();
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
-		 */
-		public void addListener(ILabelProviderListener listener) {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
-		 */
-		public boolean isLabelProperty(Object element, String property) {
-			return false;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
-		 */
-		public void removeListener(ILabelProviderListener listener) {
-		}
-
-	}
-	
-	class MemoryRenderingContentProvider implements IStructuredContentProvider
-	{
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			IMemoryRenderingType[] renderings = DebugUITools.getMemoryRenderingManager().getRenderingTypes((IMemoryBlock)inputElement);
-			return renderings;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-		 */
-		public void dispose() {
-			
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public Control createControl(Composite parent) {
-		fCanvas = new Composite(parent, SWT.NONE);
-		GridLayout compositeLayout = new GridLayout();
-		compositeLayout.numColumns = 2;
-		compositeLayout.makeColumnsEqualWidth = false;
-		fCanvas.setLayout(compositeLayout);
-		
-		GridData comositeSpec= new GridData();
-		comositeSpec.grabExcessVerticalSpace= true;
-		comositeSpec.grabExcessHorizontalSpace= true;
-		comositeSpec.horizontalAlignment= GridData.FILL;
-		comositeSpec.verticalAlignment= GridData.CENTER;
-		fCanvas.setLayoutData(comositeSpec);
-		
-		fMemoryBlockLabel = new Label(fCanvas, SWT.BORDER);
-		
-		String memoryBlockLabel = " "; //$NON-NLS-1$
-		memoryBlockLabel = getLabel();
-		
-		fMemoryBlockLabel.setText("  " + DebugUIMessages.CreateRenderingTab_Memory_monitor + memoryBlockLabel + "  "); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		GridData textLayout = new GridData();
-		textLayout.verticalAlignment=GridData.CENTER;
-		textLayout.horizontalAlignment=GridData.BEGINNING;
-		fMemoryBlockLabel.setLayoutData(textLayout);
-
-		Label renderingLabel = new Label(fCanvas, SWT.NONE);
-		renderingLabel.setText(DebugUIMessages.CreateRenderingTab_Select_renderings_to_create); //$NON-NLS-1$
-		GridData renderingLayout = new GridData();
-		renderingLayout.horizontalAlignment = GridData.BEGINNING;
-		renderingLayout.verticalAlignment = GridData.CENTER;
-		renderingLayout.horizontalSpan = 2;
-		renderingLabel.setLayoutData(renderingLayout);
-		
-		fViewer = new ListViewer(fCanvas);
-		fViewer.setContentProvider(new MemoryRenderingContentProvider());
-		fViewer.setLabelProvider(new MemoryRenderingLabelProvider());
-		fViewer.setInput(getMemoryBlock());
-		
-		if (fViewer.getElementAt(0) != null)
-		{
-			fViewer.getList().select(0);
-		}
-		
-		GridData listLayout = new GridData(GridData.FILL_BOTH);
-		listLayout.horizontalSpan = 1;
-		fViewer.getControl().setLayoutData(listLayout);
-		
-		fViewer.addDoubleClickListener(new IDoubleClickListener (){
-
-			public void doubleClick(DoubleClickEvent event) {
-				addRenderings();
-			}});
-		
-		Button addButton = new Button(fCanvas, SWT.NONE);
-		addButton.setText(DebugUIMessages.CreateRenderingTab_Add_renderings); //$NON-NLS-1$
-		GridData buttonLayout = new GridData();
-		buttonLayout.horizontalAlignment = GridData.BEGINNING;
-		buttonLayout.verticalAlignment = GridData.BEGINNING;
-		addButton.setLayoutData(buttonLayout);
-		
-		addButton.addSelectionListener(new SelectionListener() {
-
-			public void widgetSelected(SelectionEvent e) {
-				addRenderings();
-			}
-
-			public void widgetDefaultSelected(SelectionEvent e) {
-				addRenderings();
-			}});
-		
-		DebugUITools.getMemoryRenderingManager().addListener(this);
-		
-		return fCanvas;		
-	}
-	
-	private void addRenderings()
-	{									
-		ISelection selection = fViewer.getSelection();
-		Object[] renderings = null;
-		
-		if (selection instanceof IStructuredSelection)
-		{
-			IStructuredSelection strucSelection = (IStructuredSelection)selection;
-			
-			renderings = strucSelection.toArray();
-		}
-		
-		if (renderings == null)
-		{
-			Status stat = new Status(
-					IStatus.ERROR,DebugUIPlugin.getUniqueIdentifier(),
-					DebugException.INTERNAL_ERROR, DebugUIMessages.CreateRenderingTab_0, null); //$NON-NLS-1$
-			DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), DebugUIMessages.CreateRenderingTab_1, DebugUIMessages.CreateRenderingTab_2, stat); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-										
-		// ask for debug target and memory block retrieval
-		IDebugTarget debugTarget = ((IDebugElement)getMemoryBlock()).getDebugTarget();
-		IMemoryBlockRetrieval standardMemRetrieval = (IMemoryBlockRetrieval)((IDebugElement)getMemoryBlock()).getAdapter(IMemoryBlockRetrieval.class);
-		
-		if (standardMemRetrieval == null)
-		{	
-			standardMemRetrieval = debugTarget;
-		}
-		
-		if (standardMemRetrieval == null)
-			return;
-		
-		
-		// make a copy of the container, may be diposed when a rendering is added
-		IMemoryRenderingContainer container = fContainer;
-		// add memory renderings to Memory Rendering Manager
-		for (int i=0; i<renderings.length; i++)
-		{	
-			if (renderings[i] instanceof IMemoryRenderingType)
-			{
-				try {
-					IMemoryRendering rendering = ((IMemoryRenderingType)renderings[i]).createRendering();
-					if (rendering != null)
-					{
-						rendering.init(container, getMemoryBlock());
-						container.addMemoryRendering(rendering);
-					}
-				} catch (CoreException e) {
-					
-					MemoryViewUtil.openError(DebugUIMessages.CreateRendering_0, DebugUIMessages.CreateRendering_1, e);  //$NON-NLS-1$ //$NON-NLS-2$
-				}
-			}					
-		}		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#dispose()
-	 */
-	public void dispose() {
-		fViewer = null;
-		fCanvas = null;
-		fContainer = null;
-		fMemoryBlockLabel = null;
-		DebugUITools.getMemoryRenderingManager().removeListener(this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.memory.AbstractMemoryRendering#getControl()
-	 */
-	public Control getControl() {
-		return fCanvas;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.memory.AbstractMemoryRendering#getLabel()
-	 */
-	public String getLabel() {
-		String memoryBlockLabel = " "; //$NON-NLS-1$
-		if (getMemoryBlock() instanceof IMemoryBlockExtension)
-		{
-			if (((IMemoryBlockExtension)getMemoryBlock()).getExpression() != null)
-			{
-				String prefix = ""; //$NON-NLS-1$
-				if (((IMemoryBlockExtension)getMemoryBlock()).getExpression().startsWith("&")) //$NON-NLS-1$
-				{
-					prefix = "&"; //$NON-NLS-1$
-					memoryBlockLabel += prefix;
-				}
-				memoryBlockLabel += ((IMemoryBlockExtension)getMemoryBlock()).getExpression();
-			}
-			
-			try {
-				if (((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress() != null)
-				{
-					memoryBlockLabel += " <0x" + ((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress().toString(16).toUpperCase() + ">"; //$NON-NLS-1$ //$NON-NLS-2$
-				}
-			} catch (DebugException e) {
-				// return whatever we have for label
-				return memoryBlockLabel;
-			}
-		}
-		else
-		{
-			long address = getMemoryBlock().getStartAddress();
-			memoryBlockLabel = Long.toHexString(address).toUpperCase();
-		}
-		return memoryBlockLabel;
-	}
-
-	public void memoryRenderingBindingsChanged() {
-		if (fViewer != null)
-			fViewer.refresh();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/DefaultEndianessAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/DefaultEndianessAction.java
deleted file mode 100644
index 1c37061..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/DefaultEndianessAction.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * Restore default endianess.
- * For IMemoryBlockExtension, default is governed by the attributes set
- * in its memory bytes.
- * For IMemoryBlock, default is big endian.
- *
- */
-public class DefaultEndianessAction implements IObjectActionDelegate {
-
-	AbstractIntegerRendering fRendering;
-	public DefaultEndianessAction() {
-		super();
-	}
-
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-	}
-
-	public void run(IAction action) {
-		if (fRendering != null)
-		{
-			if (fRendering.getMemoryBlock() instanceof IMemoryBlockExtension)
-			{
-				fRendering.setDisplayEndianess(RenderingsUtil.ENDIANESS_UNKNOWN);
-			}
-			else
-			{
-				fRendering.setDisplayEndianess(RenderingsUtil.BIG_ENDIAN);
-			}
-			fRendering.refresh();
-		}
-
-	}
-
-	public void selectionChanged(IAction action, ISelection selection) {
-		if (selection == null)
-			return;
-		
-		if (selection instanceof IStructuredSelection)
-		{
-			Object obj = ((IStructuredSelection)selection).getFirstElement();
-			if (obj == null)
-				return;
-			
-			if (obj instanceof AbstractIntegerRendering)
-			{
-				fRendering = (AbstractIntegerRendering)obj;
-			}
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ErrorRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ErrorRendering.java
deleted file mode 100644
index a462daf..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ErrorRendering.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.memory.AbstractMemoryRendering;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.TextViewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * A dummy rendering for displaying an error message in a view tab.
- * @since 3.1
- */
-/**
- * @author chanskw
- *
- */
-public class ErrorRendering extends AbstractMemoryRendering {
-
-	private TextViewer fTextViewer;
-	private String fRenderingId;
-	private Throwable fException;
-	
-	/**
-	 * @param renderingId - id of rendering that the memory view has failed
-	 * to create.
-	 */
-	public ErrorRendering(String renderingId, Throwable exception)
-	{
-		super("org.eclipse.debug.internal.ui.views.memory.errorrendering"); //$NON-NLS-1$
-		fRenderingId = renderingId;
-		fException = exception;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public Control createControl(Composite parent) {
-		fTextViewer = new TextViewer(parent, SWT.READ_ONLY);		
-		fTextViewer.setDocument(new Document());
-		StyledText styleText = fTextViewer.getTextWidget();
-		
-		styleText.setText("\r\n\r\n" + DebugUIMessages.EmptyViewTab_Unable_to_create + "\n" + getRenderingName() + "\n\n" + DebugUIMessages.ErrorRendering_0 + fException.getMessage()); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$
-		
-		
-		return fTextViewer.getControl();
-	}
-	
-
-	/**
-	 * 
-	 */
-	private String getRenderingName() {
-		
-		if (DebugUITools.getMemoryRenderingManager().getRenderingType(fRenderingId)!= null)
-		{
-			String name =
-				DebugUITools.getMemoryRenderingManager()
-				.getRenderingType(fRenderingId)
-				.getLabel();
-			
-			return name;
-		}
-		return "Unknown"; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.memory.AbstractMemoryRendering#getControl()
-	 */
-	public Control getControl() {
-		return fTextViewer.getControl();
-	}
-
-	public void refresh() {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/FormatColumnAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/FormatColumnAction.java
deleted file mode 100644
index 74166a4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/FormatColumnAction.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.PlatformUI;
-
-
-/**
- * Action for formatting Memory View Tab
- * 
- * @since 3.0
- */
-public class FormatColumnAction extends Action
-{
-	AbstractTableRendering fRendering;
-	int fNumBytesPerCol;
-	
-	public FormatColumnAction(int numUnits, int addressableSize, AbstractTableRendering rendering)
-	{	
-		String label;
-		if (numUnits == 1)
-			label = String.valueOf(numUnits) + " " + DebugUIMessages.FormatColumnAction_unit; //$NON-NLS-1$
-		else	
-			label = String.valueOf(numUnits) + " " + DebugUIMessages.FormatColumnAction_units; //$NON-NLS-1$
-		
-		super.setText(label);
-		
-		fRendering = rendering;	
-		
-		// check this action if the view tab is currently in this format
-		if (numUnits*addressableSize == fRendering.getBytesPerColumn())
-		{
-			setChecked(true);
-		}
-
-		fNumBytesPerCol = numUnits*addressableSize;
-		
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".FormatColumnAction_context"); //$NON-NLS-1$ 
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run()
-	{
-		fRendering.format(fRendering.getBytesPerLine(), fNumBytesPerCol);
-	}
-	
-	public int getColumnSize()
-	{
-		return fNumBytesPerCol;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressAction.java
deleted file mode 100644
index d3102f1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressAction.java
+++ /dev/null
@@ -1,220 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.IMemoryBlockRetrievalExtension;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.memory.MemoryView;
-import org.eclipse.debug.internal.ui.views.memory.MemoryViewUtil;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingSite;
-import org.eclipse.debug.ui.memory.IMemoryRenderingType;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-
-/**
- * Go To Address Action for "MemoryViewTab"
- * 
- * @since 3.0
- */
-public class GoToAddressAction extends Action
-{
-	private AbstractTableRendering fRendering;
-	
-	public GoToAddressAction(AbstractTableRendering rendering)
-	{		
-		super(DebugUIMessages.GoToAddressAction_title);
-		setToolTipText(DebugUIMessages.GoToAddressAction_title);
-		
-		fRendering = rendering;
-		
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".GoToAddressAction_context"); //$NON-NLS-1$
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run()
-	{
-		try
-		{	
-			Shell shell= DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getShell();
-		
-			// create dialog to ask for expression/address to block
-			GoToAddressDialog dialog = new GoToAddressDialog(shell);
-			dialog.open();
-		
-			int returnCode = dialog.getReturnCode();
-		
-			if (returnCode == Window.CANCEL)
-			{
-				return;
-			}
-		
-			// get expression from dialog
-			String expression = dialog.getExpression();
-			
-			expression = expression.toUpperCase();
-			expression = expression.trim();
-			
-			if (expression.startsWith("0X")) //$NON-NLS-1$
-			{
-				expression = expression.substring(2);
-			}
-			
-			// convert expression to address
-			BigInteger address = new BigInteger(expression, 16);
-			
-			// look at this address and figure out if a new memory block should
-			// be opened.
-			IMemoryBlock mb = fRendering.getMemoryBlock();
-			if (mb instanceof IMemoryBlockExtension)
-			{
-				IMemoryBlockExtension mbExt = (IMemoryBlockExtension)mb;
-				BigInteger mbStart = mbExt.getMemoryBlockStartAddress();
-				BigInteger mbEnd = mbExt.getMemoryBlockEndAddress();
-				
-				if (mbStart != null)
-				{
-					// if trying to go beyond the start address
-					// of the memory block
-					if (address.compareTo(mbStart) < 0)
-					{
-						IMemoryBlockRetrievalExtension retrieval = (IMemoryBlockRetrievalExtension)mbExt.getAdapter(IMemoryBlockRetrievalExtension.class);
-						IDebugTarget dt = mbExt.getDebugTarget();
-						
-						if (retrieval == null && dt instanceof IMemoryBlockRetrievalExtension)
-							retrieval = (IMemoryBlockRetrievalExtension)dt;
-						
-						// add a new memory block and then the same rendering as fRendering
-						// in the same container.
-						if (retrieval != null)
-						{
-							addNewMemoryBlock(expression, retrieval);
-							return;
-						}
-					}
-				}
-				if (mbEnd != null)
-				{
-					// if trying to go beyond the end address
-					// of the memory block
-					if (address.compareTo(mbEnd) > 0)
-					{
-						IMemoryBlockRetrievalExtension retrieval = (IMemoryBlockRetrievalExtension)mbExt.getAdapter(IMemoryBlockRetrievalExtension.class);
-						IDebugTarget dt = mbExt.getDebugTarget();
-						
-						if (retrieval == null && dt instanceof IMemoryBlockRetrievalExtension)
-							retrieval = (IMemoryBlockRetrievalExtension)dt;
-						
-						// add a new memory block and then the same rendering as fRendering
-						// in the same container.
-						if (retrieval != null)
-						{
-							addNewMemoryBlock(expression, retrieval);
-							return;
-						}
-					}
-				}
-			}
-			
-			// go to specified address
-			fRendering.goToAddress(address);
-		}
-		// open error in case of any error
-		catch (DebugException e)
-		{
-			MemoryViewUtil.openError(DebugUIMessages.GoToAddressAction_Go_to_address_failed, 
-				DebugUIMessages.GoToAddressAction_Go_to_address_failed, e);
-		}
-		catch (NumberFormatException e1)
-		{
-			MemoryViewUtil.openError(DebugUIMessages.GoToAddressAction_Go_to_address_failed, 
-				DebugUIMessages.GoToAddressAction_Address_is_invalid, null);
-		}
-	}
-	
-	private void addNewMemoryBlock(String expression, IMemoryBlockRetrievalExtension retrieval)
-	{
-		ISelection selection = DebugUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-		Object elem = ((IStructuredSelection)selection).getFirstElement();
-		boolean pin = true;
-		
-		if (!(elem instanceof IDebugElement))
-			return;
-		 
-		try {
-			if (retrieval != null)
-			{
-				// save the pin setting in the parent view
-				IMemoryRenderingSite site = fRendering.getMemoryRenderingContainer().getMemoryRenderingSite();
-				if (site instanceof MemoryView)
-				{
-					MemoryView view = (MemoryView)site;
-					pin = view.isPinMBDisplay();
-					view.setPinMBDisplay(false);
-				}
-				
-				IMemoryBlockExtension mbext = retrieval.getExtendedMemoryBlock(expression, elem);
-				if (mbext != null)
-					DebugPlugin.getDefault().getMemoryBlockManager().addMemoryBlocks(new IMemoryBlock[]{mbext});
-				
-				IMemoryRenderingType renderingType = DebugUITools.getMemoryRenderingManager().getRenderingType(fRendering.getRenderingId());
-				
-				if (renderingType != null)
-				{
-					IMemoryRendering rendering = renderingType.createRendering();
-					
-					if (rendering != null)
-					{
-						rendering.init(fRendering.getMemoryRenderingContainer(), mbext);
-						fRendering.getMemoryRenderingContainer().addMemoryRendering(rendering);
-					}
-				}
-			}
-		} catch (DebugException e) {
-			MemoryViewUtil.openError(DebugUIMessages.GoToAddressAction_Go_to_address_failed, 
-			DebugUIMessages.GoToAddressAction_Go_to_address_failed, e);
-		} catch (CoreException e)
-		{
-			MemoryViewUtil.openError(DebugUIMessages.GoToAddressAction_Go_to_address_failed, 
-			DebugUIMessages.GoToAddressAction_Go_to_address_failed, e);
-		}
-		finally
-		{
-			// restore setting
-			IMemoryRenderingSite site = fRendering.getMemoryRenderingContainer().getMemoryRenderingSite();
-			if (site instanceof MemoryView)
-			{
-				MemoryView view = (MemoryView)site;
-				view.setPinMBDisplay(pin);
-			}
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressDialog.java
deleted file mode 100644
index 013b035..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/GoToAddressDialog.java
+++ /dev/null
@@ -1,146 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.util.Vector;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * @since 3.0
- */
-
-public class GoToAddressDialog extends Dialog implements ModifyListener{
-
-	private static Vector history = new Vector();
-	private Combo expressionInput;
-	private String expression;
-
-	/**
-	 * @param parentShell
-	 */
-	public GoToAddressDialog(Shell parentShell) {
-		super(parentShell);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parentShell, IDebugUIConstants.PLUGIN_ID + ".GoToAddressDialog_context"); //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-	
-		parent.setLayout(new GridLayout());
-		GridData spec2= new GridData();
-		spec2.grabExcessVerticalSpace= true;
-		spec2.grabExcessHorizontalSpace= true;
-		spec2.horizontalAlignment= GridData.FILL;
-		spec2.verticalAlignment= GridData.CENTER;
-		parent.setLayoutData(spec2);
-
-		Label textLabel = new Label(parent, SWT.NONE);
-		textLabel.setText(DebugUIMessages.GoToAddressDialog_Address);
-		GridData textLayout = new GridData();
-		textLayout.widthHint = 280;
-		textLabel.setLayoutData(textLayout);
-		
-		expressionInput = new Combo(parent, SWT.BORDER);
-		GridData spec= new GridData();
-		spec.grabExcessVerticalSpace= false;
-		spec.grabExcessHorizontalSpace= true;
-		spec.horizontalAlignment= GridData.FILL;
-		spec.verticalAlignment= GridData.BEGINNING;
-		spec.heightHint = 50;
-		expressionInput.setLayoutData(spec);
-		
-		// add history
-		String[] historyExpression = (String[])history.toArray(new String[history.size()]);
-		for (int i=0; i<historyExpression.length; i++)
-		{
-			expressionInput.add(historyExpression[i]);
-		}
-		
-		expressionInput.addModifyListener(this);
-		
-		return parent;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
-	 */
-	protected void configureShell(Shell newShell) {
-		super.configureShell(newShell);
-		
-		newShell.setText(DebugUIMessages.GoToAddressDialog_GoToAddress);
-	}
-	
-	public String getExpression()
-	{
-		return expression;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-
-		expression = expressionInput.getText();
-
-		// add to history list
-		if (!history.contains(expression))
-			history.insertElementAt(expression, 0);
-
-		super.okPressed();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.swt.events.ModifyListener#modifyText(org.eclipse.swt.events.ModifyEvent)
-	 */
-	public void modifyText(ModifyEvent e) {
-
-		String input = expressionInput.getText();
-	
-		if (input == null || input.equals("")) //$NON-NLS-1$
-		{
-			getButton(IDialogConstants.OK_ID).setEnabled(false);	
-		}
-		else
-		{
-			getButton(IDialogConstants.OK_ID).setEnabled(true);
-		}			
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createButtonBar(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createButtonBar(Composite parent) {
-		
-		Control ret =  super.createButtonBar(parent);
-		getButton(IDialogConstants.OK_ID).setEnabled(false);
-		
-		return ret;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRendering.java
deleted file mode 100644
index d9d1b10..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRendering.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-
-/**
- * @since 3.1
- */
-public class HexRendering extends AbstractTableRendering {
-	
-	public HexRendering(String renderingId)
-	{
-		super(renderingId);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.AbstractTableRendering#getString(java.lang.String, java.math.BigInteger, org.eclipse.debug.core.model.MemoryByte[], java.lang.String)
-	 */
-	public String getString(String dataType, BigInteger address,
-			MemoryByte[] data) {
-		StringBuffer strBuffer = new StringBuffer();
-
-		String paddedStr = DebugUIPlugin.getDefault().getPreferenceStore().getString(IDebugUIConstants.PREF_PADDED_STR);
-		
-		for (int i=0; i<data.length; i++)
-		{
-			if (data[i].isReadable())
-			{
-				strBuffer.append(new String(convertByteToCharArray(data[i].getValue())));
-			}
-			else
-			{
-				// pad with padded string
-				strBuffer.append(paddedStr);
-			}
-		}
-		
-		return strBuffer.toString().toUpperCase();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.memory.AbstractTableRendering#getBytes(java.lang.String, java.math.BigInteger, org.eclipse.debug.core.model.MemoryByte[], java.lang.String)
-	 */
-	public byte[] getBytes(String dataType, BigInteger address,
-			MemoryByte[] currentValues, String data) {
-		byte[] bytes = convertHexStringToByteArray(data, currentValues.length);
-		
-		return bytes;
-	}
-	
-	public int getNumCharsPerByte()
-	{
-		return 2;
-	}
-
-	/**
-	 * byte array to Hex string helper
-	 * replaces the Integer.toHexString() which can't convert byte values properly
-	 * (always pads with FFFFFF)
-	 */
-	static public String convertByteArrayToHexString(byte[] byteArray)
-	{
-		StringBuffer strBuffer = new StringBuffer();
-		char charArray[];
-		
-		for (int i=0; i<byteArray.length;i ++)
-		{
-			charArray = convertByteToCharArray(byteArray[i]);
-			strBuffer.append(charArray);			
-		}
-		
-		return strBuffer.toString();
-	}
-	
-	static private char[] convertByteToCharArray(byte aByte)
-	{
-		char charArray[] = new char[2];
-		int val = aByte;
-		if (val<0) val += 256;
-		charArray[0] = Character.forDigit(val/16, 16);
-		charArray[1] = Character.forDigit(val%16, 16);
-		
-		return charArray;
-	}
-
-	/**
-	 * Convert raw memory data to byte array
-	 * @param str
-     * @param numBytes
-	 * @return an array of byte, converted from a hex string
-	 * @throws NumberFormatException
-	 */
-	public byte[] convertHexStringToByteArray(String str, int numBytes) throws NumberFormatException
-	{
-        if (str.length() == 0) 
-            return null;
-		
-		StringBuffer buf = new StringBuffer(str);
-        
-        // pad string with zeros
-        int requiredPadding =  numBytes * getNumCharsPerByte() - str.length();
-        while (requiredPadding > 0) {
-            buf.insert(0, "0"); //$NON-NLS-1$
-            requiredPadding--;
-        }
-		
-		byte[] bytes = new byte[numBytes];
-		str = buf.toString();
-	
-		// set data in memory
-		for (int i=0; i<bytes.length; i++)
-		{
-			// convert string to byte
-			String oneByte = str.substring(i*2, i*2+2);
-			
-			Integer number = Integer.valueOf(oneByte, 16);
-			if (number.compareTo(Integer.valueOf(Byte.toString(Byte.MAX_VALUE))) > 0)
-			{
-				int temp = number.intValue();
-				temp = temp - 256;
-	
-				String tempStr = Integer.toString(temp);
-		
-				Byte myByte = Byte.valueOf(tempStr);
-				bytes[i] = myByte.byteValue();
-			}
-			else
-			{
-				Byte myByte = Byte.valueOf(oneByte, 16);
-				bytes[i] = myByte.byteValue();
-			}
-		}
-		
-		return bytes;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRenderingTypeDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRenderingTypeDelegate.java
deleted file mode 100644
index 22ddebb..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/HexRenderingTypeDelegate.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate;
-
-/**
- * Delegate for creating a hex rendering.
- * @since 3.1
- */
-public class HexRenderingTypeDelegate implements IMemoryRenderingTypeDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate#createRendering(java.lang.String)
-	 */
-	public IMemoryRendering createRendering(String id) throws CoreException {
-		HexRendering rendering = new HexRendering(id);
-		return rendering;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/LittleEndianAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/LittleEndianAction.java
deleted file mode 100644
index 9bf917e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/LittleEndianAction.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-
-
-/**
- * Show integers in little endian.
- * @since 3.0
- */
-public class LittleEndianAction implements IObjectActionDelegate {
-
-	AbstractIntegerRendering fRendering;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-
-		if (fRendering == null)
-			return;
-		
-		if (fRendering.getDisplayEndianess() != RenderingsUtil.LITTLE_ENDIAN){
-			fRendering.setDisplayEndianess(RenderingsUtil.LITTLE_ENDIAN);
-			fRendering.refresh();
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		if (selection == null)
-			return;
-		
-		if (selection instanceof IStructuredSelection)
-		{
-			Object obj = ((IStructuredSelection)selection).getFirstElement();
-			if (obj == null)
-				return;
-			
-			if (obj instanceof AbstractIntegerRendering)
-			{
-				fRendering = (AbstractIntegerRendering)obj;
-			}
-			
-			int endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-			if (fRendering.getDisplayEndianess() == RenderingsUtil.ENDIANESS_UNKNOWN)
-			{
-				MemoryByte[] selectedBytes = fRendering.getSelectedAsBytes();
-					
-				for (int i=0; i<selectedBytes.length; i++)
-				{
-					if (!selectedBytes[i].isEndianessKnown())
-					{
-						endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-						break;
-					}
-					if (i==0)
-					{
-						endianess = selectedBytes[i].isBigEndian()?RenderingsUtil.BIG_ENDIAN:RenderingsUtil.LITTLE_ENDIAN;
-					}
-					else
-					{
-						int byteEndianess = selectedBytes[i].isBigEndian()?RenderingsUtil.BIG_ENDIAN:RenderingsUtil.LITTLE_ENDIAN;
-						if (endianess != byteEndianess)
-						{
-							endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-							break;
-						}
-					}
-				}
-			}
-			else
-				endianess = fRendering.getDisplayEndianess();
-			
-			if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-				action.setChecked(true);
-			else
-				action.setChecked(false);
-		}		
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/PrintTableRenderingAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/PrintTableRenderingAction.java
deleted file mode 100644
index 8e13f52..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/PrintTableRenderingAction.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.printing.PrintDialog;
-import org.eclipse.swt.printing.Printer;
-import org.eclipse.swt.printing.PrinterData;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-
-
-/**
- * Print view tab toolbar action
- * 
- * @since 3.0
- */
-public class PrintTableRenderingAction extends Action
-{
-	private AbstractTableRendering fRendering;
-	private TableViewer fViewer;
-	
-	private static final String COLUMN_SEPERATOR = "  "; //$NON-NLS-1$
-	
-	public PrintTableRenderingAction(AbstractTableRendering rendering)
-	{
-		super(DebugUIMessages.PrintViewTabAction_title);
-		fRendering = rendering;
-		setToolTipText(DebugUIMessages.PrintViewTabAction_tooltip);
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_PRINT_TOP_VIEW_TAB));
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_PRINT_TOP_VIEW_TAB));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_PRINT_TOP_VIEW_TAB));		
-	}
-
-	/*
-	 * draws a Table to a GC which has been initialized with a Printer.
-	 * startJob() and startPage() must be called before printTable(...),
-	 * and endPage() and endJob() must be called after printTable(...).
-	 */
-	private void printTable(TableItem[] itemList, GC printGC, Printer printer) {
-		
-		String tableContents = new String();
-		int numColumns = ((Table)fViewer.getControl()).getColumnCount();
-		ITableLabelProvider labelProvider = (ITableLabelProvider)fViewer.getLabelProvider();		
-		int lineNum = 1;
-
-		int charsPerByte = fRendering.getNumCharsPerByte();
-		if (charsPerByte < 0)
-			charsPerByte = 4;
-		
-		// return line number after column labels are printed
-		lineNum = printColumnLabels(printGC, lineNum);
-
-		//for all items in the table
-		for (int i=0; i < itemList.length; i++) {
-			tableContents = ""; //$NON-NLS-1$
-			//print all columns for this row
-			for (int j=0; j < numColumns; j++) {
-				String columnText = labelProvider.getColumnText(itemList[i].getData(), j);
-				
-				while (columnText.length() < fRendering.getBytesPerColumn() * charsPerByte)
-				{
-					 columnText += " "; //$NON-NLS-1$
-				}
-				tableContents += COLUMN_SEPERATOR + columnText;							 
-			}
-			printGC.drawString(tableContents, 10, 10+(lineNum*printGC.getFontMetrics().getHeight()));
-			lineNum++;
-
-			// if we've run over the end of a page, start a new one
-			if (20+lineNum*printGC.getFontMetrics().getHeight() > printer.getClientArea().height) {
-				lineNum=1;
-				printer.endPage();
-				printer.startPage();
-				lineNum = printColumnLabels(printGC, lineNum);
-			}
-		}
-	}
-	
-	private int printColumnLabels(GC printGC, int lineNum)
-	{	
-		String tableContents = ""; //$NON-NLS-1$
-		int numColumns = ((Table)fViewer.getControl()).getColumnCount();		
-		TableColumn columns[] = ((Table)fViewer.getControl()).getColumns();
-		
-		int charsPerByte = fRendering.getNumCharsPerByte();
-		if (charsPerByte < 0)
-			charsPerByte = 4;
-	
-		//get the column headers
-		for (int k=0; k < numColumns; k++) {
-	
-			StringBuffer columnLabel = new StringBuffer(columns[k].getText());
-			int numBytes = 0;
-	
-			if (k > 0)
-			{
-				numBytes = fRendering.getBytesPerColumn();
-			}
-			else
-			{
-				// special for address column
-				IMemoryBlock memBlock = fRendering.getMemoryBlock();
-				if (memBlock instanceof IMemoryBlockExtension)
-				{
-					try {
-						numBytes = ((IMemoryBlockExtension)memBlock).getAddressSize();
-					} catch (DebugException e) {
-						numBytes = 0;
-					}
-					
-					if (numBytes <= 0)
-						numBytes = 4;
-				}
-				else
-				{
-					numBytes = 4;
-				}
-		
-			}
-	
-			 while (columnLabel.length() < numBytes * charsPerByte)
-			 {
-				 columnLabel.append(" "); //$NON-NLS-1$
-			 }
-	 
-			tableContents += COLUMN_SEPERATOR + columnLabel;
-		}
-		printGC.drawString(tableContents, 10, 10+(lineNum*printGC.getFontMetrics().getHeight()));
-		lineNum++;		
-		
-		return lineNum;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		
-		fViewer = fRendering.getTableViewer();
-		
-		if(fViewer == null)
-			return;
-		
-		if (fViewer.getControl() == null)
-			return;
-		
-		PrintDialog printDialog = new PrintDialog(fViewer.getControl().getDisplay().getActiveShell());
-		PrinterData printerData = printDialog.open();	// pop up a system print dialog
-		if (printerData == null) {setChecked(false); return;}
-		Printer printer = new Printer(printerData);
-		GC gc = new GC(printer);
-		TableItem[] tableItems = ((Table)fViewer.getControl()).getItems();
-		
-		// start the print job and assign it a title
-		printer.startJob(DebugUIMessages.PrintViewTabAction_jobtitle + fRendering.getLabel());
-		printer.startPage();					// start the first page
-		printTable(tableItems, gc, printer);	// print all rows of the table
-		printer.endPage();						// end the last page
-		printer.endJob();						// end the print job
-		gc.dispose();
-		printer.dispose();
-		setChecked(false);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ReformatAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ReformatAction.java
deleted file mode 100644
index efbe29a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ReformatAction.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Resize all columns
- * 
- * @since 3.0
- */
-public class ReformatAction extends Action {
-	
-	AbstractTableRendering fRendering;
-	
-	public ReformatAction(AbstractTableRendering rendering)
-	{
-		super(DebugUIMessages.ReformatAction_title);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".ReformatAction_context"); //$NON-NLS-1$
-		fRendering = rendering;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		fRendering.resizeColumnsToPreferredSize();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/RenderingsUtil.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/RenderingsUtil.java
deleted file mode 100644
index 2b806c3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/RenderingsUtil.java
+++ /dev/null
@@ -1,498 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-
-/**
- * Util functions for data conversions
- */
-public class RenderingsUtil {
-	
-	public static final int LITTLE_ENDIAN = 0;
-	public static final int BIG_ENDIAN = 1;
-	public static final int ENDIANESS_UNKNOWN = 2;
-
-	/**
-	 * Pad byte array with zero's with the byte array's length
-	 * is shorter that what's expected the conversion functions.
-	 * @param array
-	 * @param size
-	 * @param endianess
-	 * @return an array of bytes
-	 */
-	protected static byte[] fillArray(byte[] array, int size, int endianess)
-	{
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			byte[] temp = new byte[size];
-			
-			for (int i=0; i<array.length; i++)
-			{
-				temp[i] = array[i];
-			}
-			
-			// fill up the rest of the array
-			for (int i=array.length; i<size; i++)
-			{
-				temp[i] = 0;
-			}
-			
-			array = temp;
-			return array;
-		}
-        byte[] temp = new byte[size];
-        
-        for (int i=0; i<size - array.length; i++)
-        {
-        	temp[i] = 0;
-        }
-        
-        int j=0;
-        // fill up the rest of the array
-        for (int i=size - array.length; i<size; i++)
-        {
-        	temp[i] = array[j];
-        	j++;
-        }
-        
-        array = temp;
-        return array;
-	}
-	
-	static public BigInteger convertByteArrayToUnsignedLong(byte[] array, int endianess)
-	{
-		if (array.length < 8)
-		{
-			array = fillArray(array, 8, endianess);
-		}
-		
-		BigInteger value = new BigInteger("0"); //$NON-NLS-1$
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int i=0; i< 8; i++)
-			{
-				byte[] temp = new byte[1];
-				temp[0] = array[i];
-				BigInteger b = new BigInteger(temp);
-				b = b.and(new BigInteger("ff", 16)); //$NON-NLS-1$
-				b = b.shiftLeft(i*8);
-				value = value.or(b);
-			}			
-		}
-		else
-		{	
-			for (int i=0; i< 8; i++)
-			{
-				byte[] temp = new byte[1];
-				temp[0] = array[i];
-				BigInteger b = new BigInteger(temp);
-				b = b.and(new BigInteger("ff", 16)); //$NON-NLS-1$
-				b = b.shiftLeft((7-i)*8);
-				value = value.or(b);
-			}
-		}
-		return value;
-	}
-	
-	/**
-	 * Convert byte array to long.
-	 * @param array
-	 * @param endianess
-	 * @return result of the conversion in long
-	 */
-	static public long convertByteArrayToLong(byte[] array, int endianess)
-	{	
-		if (array.length < 8)
-		{
-			array = fillArray(array, 8, endianess);
-		}
-		
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{	
-			long value = 0;
-			for (int i = 0; i < 8; i++) {
-				long b = array[i];
-				b &= 0xff;
-				value |= (b << (i * 8));
-			}
-			return value;
-		}
-        long value = 0;
-        for (int i=0; i< 8; i++)
-        {
-        	long b = array[i];
-        	b &= 0xff;
-        	value |= (b<<((7-i)*8));
-        }
-        
-        return value;
-	}
-	
-	static public BigInteger convertByteArrayToSignedBigInt(byte[] array, int endianess)
-	{	
-		if (array.length < 16)
-		{
-			array = fillArray(array, 16, endianess);
-		}
-		
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{	
-			// reverse bytes
-			byte[] holder = new byte[16];
-			int j=15;
-			for (int i=0; i<16; i++, j--)
-			{	
-				holder[i] = array[j];
-			}
-			
-			// create BigInteger
-			BigInteger value = new BigInteger(holder);
-			return value;
-		}
-        BigInteger value = new BigInteger(array);
-        return value;
-	}
-	
-	static public BigInteger convertByteArrayToSignedBigInt(byte[] array, int endianess, int arraySize)
-	{	
-		if (array.length < arraySize)
-		{
-			array = fillArray(array, arraySize, endianess);
-		}
-		
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{	
-			// reverse bytes
-			byte[] holder = new byte[arraySize];
-			int j=arraySize-1;
-			for (int i=0; i<arraySize; i++, j--)
-			{	
-				holder[i] = array[j];
-			}
-			
-			// create BigInteger
-			BigInteger value = new BigInteger(holder);
-			return value;
-		}
-        BigInteger value = new BigInteger(array);
-        return value;
-	}
-	
-	static public BigInteger convertByteArrayToUnsignedBigInt(byte[] array, int endianess)
-	{
-		if (array.length < 16)
-		{
-			array = fillArray(array, 16, endianess);
-		}
-		
-		BigInteger value = new BigInteger("0"); //$NON-NLS-1$
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int i=0; i< 16; i++)
-			{
-				byte[] temp = new byte[1];
-				temp[0] = array[i];
-				BigInteger b = new BigInteger(temp);
-				b = b.and(new BigInteger("ff", 16)); //$NON-NLS-1$
-				b = b.shiftLeft(i*8);
-				value = value.or(b);
-			}			
-		}
-		else
-		{	
-			for (int i=0; i< 16; i++)
-			{
-				byte[] temp = new byte[1];
-				temp[0] = array[i];
-				BigInteger b = new BigInteger(temp);
-				b = b.and(new BigInteger("ff", 16)); //$NON-NLS-1$
-				b = b.shiftLeft((15-i)*8);
-				value = value.or(b);
-			}
-		}
-		return value;	
-	}
-	
-	static public BigInteger convertByteArrayToUnsignedBigInt(byte[] array, int endianess, int arraySize)
-	{
-		if (array.length < arraySize)
-		{
-			array = fillArray(array, arraySize, endianess);
-		}
-		
-		BigInteger value = new BigInteger("0"); //$NON-NLS-1$
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int i=0; i< arraySize; i++)
-			{
-				byte[] temp = new byte[1];
-				temp[0] = array[i];
-				BigInteger b = new BigInteger(temp);
-				b = b.and(new BigInteger("ff", 16)); //$NON-NLS-1$
-				b = b.shiftLeft(i*8);
-				value = value.or(b);
-			}			
-		}
-		else
-		{	
-			for (int i=0; i< arraySize; i++)
-			{
-				byte[] temp = new byte[1];
-				temp[0] = array[i];
-				BigInteger b = new BigInteger(temp);
-				b = b.and(new BigInteger("ff", 16)); //$NON-NLS-1$
-				b = b.shiftLeft((arraySize-1-i)*8);
-				value = value.or(b);
-			}
-		}
-		return value;			
-	}
-	
-	/**
-	 * Convert byte array to integer.
-	 * @param array
-	 * @param endianess
-	 * @return result of the conversion in int
-	 */
-	static public int convertByteArrayToInt(byte[] array, int endianess)
-	{	
-		if (array.length < 4)
-		{
-			array = fillArray(array, 4, endianess);
-		}
-		
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			int value = 0;
-			for (int i = 0; i < 4; i++) {
-				int b = array[i];
-				b &= 0xff;
-				value |= (b << (i * 8));
-			}
-			return value;
-		}
-        int value = 0;
-        for (int i=0; i< 4; i++)
-        {
-        	int b = array[i];
-        	b &= 0xff;
-        	value |= (b<<((3-i)*8));
-        }
-        
-        return value;
-	}
-	
-	/**
-	 * Convert byte array to short.
-	 * @param array
-	 * @param endianess
-	 * @return result of teh conversion in short
-	 */
-	static public short convertByteArrayToShort(byte[] array, int endianess)
-	{	
-		if (array.length < 2)
-		{
-			array = fillArray(array, 2, endianess);
-		}
-		
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			short value = 0;
-			for (int i = 0; i < 2; i++) {
-				short b = array[i];
-				b &= 0xff;
-				value |= (b << (i * 8));
-			}
-			return value;
-		}
-        short value = 0;
-        for (int i=0; i< 2; i++)
-        {
-        	short b = array[i];
-        	b &= 0xff;
-        	value |= (b<<((1-i)*8));
-        }
-        return value;
-	}
-	
-	/**
-	 * Convert big integer to byte array.
-	 * @param i
-	 * @param endianess
-	 * @return result of the conversion in raw byte array
-	 */
-	static public byte[] convertBigIntegerToByteArray(BigInteger i, int endianess)
-	{
-		byte buf[]=new byte[16];
-
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int j=0; j<16; j++)
-			{
-				BigInteger x = i.shiftRight(j*8);
-				buf[j] = x.byteValue();
-			}
-			return buf;
-		}
-        for (int j=15; j>=0; j--)
-        {
-        	BigInteger x = i.shiftRight((15-j)*8);
-        	buf[j] = x.byteValue();
-        }
-        return buf;		
-	}
-	
-	static public byte[] convertSignedBigIntToByteArray(BigInteger i, int endianess, int arraySize)
-	{
-		byte buf[]=new byte[arraySize];
-
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int j=0; j<arraySize; j++)
-			{
-				BigInteger x = i.shiftRight(j*8);
-				buf[j] = x.byteValue();
-			}
-			return buf;
-		}
-        for (int j=arraySize-1; j>=0; j--)
-        {
-        	BigInteger x = i.shiftRight((arraySize-1-j)*8);
-        	buf[j] = x.byteValue();
-        }
-        return buf;				
-	}
-	
-	/**
-	 * Convert big integer to byte array.
-	 * @param i
-	 * @param endianess
-	 * @return result of the conversion in raw byte array
-	 */
-	static public byte[] convertUnsignedBigIntegerToByteArray(BigInteger i, int endianess)
-	{
-		byte buf[]=new byte[32];
-
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int j=0; j<32; j++)
-			{
-				BigInteger x = i.shiftRight(j*8);
-				buf[j] = x.byteValue();
-			}
-			return buf;
-		}
-        for (int j=31; j>=0; j--)
-        {
-        	BigInteger x = i.shiftRight((31-j)*8);
-        	buf[j] = x.byteValue();
-        }
-        return buf;		
-	}
-	
-	static public byte[] convertUnsignedBigIntToByteArray(BigInteger i, int endianess, int arraySize)
-	{
-		byte buf[]=new byte[arraySize*2];
-
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int j=0; j<arraySize*2; j++)
-			{
-				BigInteger x = i.shiftRight(j*8);
-				buf[j] = x.byteValue();
-			}
-			return buf;
-		}
-        for (int j=(arraySize*2)-1; j>=0; j--)
-        {
-        	BigInteger x = i.shiftRight(((arraySize*2)-1-j)*8);
-        	buf[j] = x.byteValue();
-        }
-        return buf;				
-	}
-	
-	/**
-	 * Convert long to byte array.
-	 * @param i
-	 * @param endianess
-	 * @return result of the conversion in raw byte array
-	 */
-	static public byte[] convertLongToByteArray(long i, int endianess)
-	{
-		byte buf[]=new byte[8];
-
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int j=0; j<8; j++)
-			{
-				buf[j] = new Long(i>>j*8).byteValue();
-			}
-			return buf;
-		}
-        for (int j=7; j>=0; j--)
-        {
-        	buf[j] = new Long(i>>(7-j)*8).byteValue();
-        }
-        return buf;
-	}
-	
-	/**
-	 * Convert integer to byte array.
-	 * @param i
-	 * @param endianess
-	 * @return result of the conversion in raw byte array
-	 */
-	static public byte[] convertIntToByteArray(int i, int endianess)
-	{
-		byte buf[]=new byte[4];
-
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (int j=0; j<4; j++)
-			{
-				buf[j] = new Integer(i>>j*8).byteValue();
-			}
-			return buf;
-		}
-        for (int j=3; j>=0; j--)
-        {
-        	buf[j] = new Integer(i>>(3-j)*8).byteValue();
-        }
-        return buf;
-	}
-	
-	/**
-	 * Convert short to byte array.
-	 * @param i
-	 * @param endianess
-	 * @return result of the conversion in raw byte array
-	 */
-	static public byte[] convertShortToByteArray(short i, int endianess)
-	{
-		byte buf[]=new byte[2];
-
-		if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-		{
-			for (short j=0; j<2; j++)
-			{
-				buf[j] = new Integer(i>>j*8).byteValue();
-			}
-			return buf;
-		}
-        for (short j=1; j>=0; j--)
-        {
-        	buf[j] = new Integer(i>>(1-j)*8).byteValue();
-        }
-        return buf;
-	} 	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ResetToBaseAddressAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ResetToBaseAddressAction.java
deleted file mode 100644
index e5a3a30..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/ResetToBaseAddressAction.java
+++ /dev/null
@@ -1,47 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.action.Action;
-
-/**
- * Reest MemoryViewTab to the base address of a memory block
- * 
- * @since 3.0
- */
-public class ResetToBaseAddressAction extends Action {
-
-    private AbstractTableRendering fRendering;
-
-    public ResetToBaseAddressAction(AbstractTableRendering rendering) {
-        fRendering = rendering;
-        setText(DebugUIMessages.ResetMemoryBlockAction_title);
-        setToolTipText(DebugUIMessages.ResetMemoryBlockAction_tootip);
-
-        setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_RESET_MEMORY));
-        setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_RESET_MEMORY));
-        setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_RESET_MEMORY));
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.action.IAction#run()
-     */
-    public void run() {
-        fRendering.reset();
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetColumnSizeDefaultAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetColumnSizeDefaultAction.java
deleted file mode 100644
index 5f52c4d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetColumnSizeDefaultAction.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Set column size of current view tab as the default column size
- * 
- * @since 3.0
- */
-public class SetColumnSizeDefaultAction extends Action {
-    private AbstractTableRendering fRendering;
-
-    public SetColumnSizeDefaultAction(AbstractTableRendering rendering) {
-        super(DebugUIMessages.SetColumnSizeDefaultAction_Set_as_default);
-        fRendering = rendering;
-        PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".SetColumnSizeDefaultAction_context"); //$NON-NLS-1$
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.action.IAction#run()
-     */
-    public void run() {
-        int numUnits = fRendering.getAddressableUnitPerColumn();
-
-        IPreferenceStore prefStore = DebugUIPlugin.getDefault().getPreferenceStore();
-        prefStore.setValue(IDebugPreferenceConstants.PREF_COLUMN_SIZE, numUnits);
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringAction.java
deleted file mode 100644
index 993053a..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringAction.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * Action for setting the padded string preference
- * @since 3.1
- */
-public class SetPaddedStringAction implements IViewActionDelegate {
-
-	public void init(IViewPart view) {
-
-	}
-
-	public void run(IAction action) {
-		Shell shell = DebugUIPlugin.getShell();
-		SetPaddedStringDialog dialog = new SetPaddedStringDialog(shell);
-		dialog.open();		
-
-	}
-
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringDialog.java
deleted file mode 100644
index 212b4f9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SetPaddedStringDialog.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.memory.MemoryViewUtil;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.preference.StringFieldEditor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Dialog for setting the padded string in renderings.
- * @since 3.1
- *
- */
-public class SetPaddedStringDialog extends Dialog {
-	
-	private StringFieldEditor fPaddedString;
-
-	
-	protected SetPaddedStringDialog(Shell parentShell) {
-		super(parentShell);
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-	}
-
-	protected Control createDialogArea(Composite parent) {
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IDebugUIConstants.PLUGIN_ID + ".SetPaddedStrDialog_context"); //$NON-NLS-1$
-		
-		getShell().setText(DebugUIMessages.SetPaddedStringDialog_0); //$NON-NLS-1$
-		
-		Composite content = (Composite) super.createDialogArea(parent);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 1;
-		content.setLayout(layout);
-		
-		GridData contentData = new GridData(SWT.FILL);
-		content.setLayoutData(contentData);
-		
-		Label textLabel = new Label(content, SWT.NONE);
-		textLabel.setText(DebugUIMessages.SetPaddedStringDialog_1); //$NON-NLS-1$
-		
-		GridData textLayout = new GridData();
-		textLabel.setLayoutData(textLayout);
-		
-		fPaddedString = new StringFieldEditor(IDebugUIConstants.PREF_PADDED_STR, "",content ); //$NON-NLS-1$
-		fPaddedString.fillIntoGrid(content, 2);
-		fPaddedString.setPreferenceStore(DebugUIPlugin.getDefault().getPreferenceStore());
-		fPaddedString.load();
-				
-		return content;		
-	}
-
-	protected void okPressed() {
-		String str = fPaddedString.getStringValue();
-		
-		if (str == null || str.length() == 0)
-		{
-			MemoryViewUtil.openError(DebugUIMessages.SetPaddedStringDialog_3, DebugUIMessages.SetPaddedStringDialog_4, null); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-			
-		fPaddedString.store();
-		
-		super.okPressed();
-		
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRendering.java
deleted file mode 100644
index 9e79fba..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRendering.java
+++ /dev/null
@@ -1,213 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * 
- * Represent a signed integer rendering.
- */
-public class SignedIntegerRendering extends AbstractIntegerRendering {
-
-	private int fColSize;
-	private BigInteger fMax;
-	private BigInteger fMin;
-	
-	/**
-	 * @param memBlock
-	 * @param renderingId
-	 */
-	public SignedIntegerRendering(String renderingId) {
-		super(renderingId);
-	}
-
-	private String convertToString(byte[] byteArray, int columnSize, int endianess)
-	{
-		String ret;
-		long result = 0;
-		
-		if (columnSize == 1)
-		{
-			result = byteArray[0];
-		}
-		else if (columnSize == 2)
-		{	
-			result = RenderingsUtil.convertByteArrayToShort(byteArray, endianess);
-		}
-		else if (columnSize == 4)
-		{
-			result = RenderingsUtil.convertByteArrayToInt(byteArray, endianess);
-		}
-		else if (columnSize == 8)
-		{
-			result = RenderingsUtil.convertByteArrayToLong(byteArray, endianess);				
-		}
-		else if (columnSize == 16)
-		{
-			BigInteger bigRet = RenderingsUtil.convertByteArrayToSignedBigInt(byteArray, endianess);
-			return bigRet.toString();
-		}
-		else
-		{
-			BigInteger bigRet = RenderingsUtil.convertByteArrayToSignedBigInt(byteArray, endianess, columnSize);
-			return bigRet.toString();			
-		}
-
-		ret = new Long(result).toString();
-		
-		return ret;
-	}	
-	
-	private byte[] convertToBytes(int colSize, String newValue, int endianess)
-	{
-		try {
-			byte[] bytes;
-			if (colSize == 1)
-			{
-				byte x = Byte.parseByte(newValue);
-				bytes = new byte[1];
-				bytes[0] = x;
-			}
-			else if (colSize == 2)
-			{	
-				short i = Short.parseShort(newValue);
-				bytes = RenderingsUtil.convertShortToByteArray(i, endianess);
-			}
-			else if (colSize == 4)
-			{	
-				int i = Integer.parseInt(newValue);
-				bytes = RenderingsUtil.convertIntToByteArray(i, endianess);
-			}
-			else if (colSize == 8)
-			{	
-				long i = Long.parseLong(newValue);
-				bytes = RenderingsUtil.convertLongToByteArray(i, endianess);
-			}
-			else if (colSize == 16)
-			{
-				// special case for colSize == 16
-				// need to represent number in Big Integer
-				BigInteger i = new BigInteger(newValue);
-				bytes = RenderingsUtil.convertBigIntegerToByteArray(i, endianess);
-			
-				return bytes;
-			}		
-			else
-			{
-				BigInteger i = new BigInteger(newValue);
-				
-				// avoid calculating max and min over and over again
-				// for the same column size
-				if (fColSize != colSize)
-				{
-					fColSize = colSize;
-					fMax = BigInteger.valueOf(2);
-					fMax = fMax.pow(colSize*8-1);
-					fMin = fMax.multiply(BigInteger.valueOf(-1));
-					fMax = fMax.subtract(BigInteger.valueOf(1));
-				}
-				
-				if (i.compareTo(fMax) > 0 || i.compareTo(fMin) < 0)
-					throw new NumberFormatException();
-				
-				bytes = RenderingsUtil.convertSignedBigIntToByteArray(i, endianess, colSize);
-				return bytes;				
-			}
-			
-			return bytes;
-		} catch (NumberFormatException e) {
-			throw e;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.extended.ui.AbstractMemoryRenderer#getString(java.lang.String, java.math.BigInteger, byte[])
-	 */
-	public String getString(String dataType, BigInteger address, MemoryByte[] data) {
-		
-		boolean invalid = false;
-		String paddedStr = DebugUIPlugin.getDefault().getPreferenceStore().getString(IDebugUIConstants.PREF_PADDED_STR);
-		for (int i=0; i<data.length; i++)
-		{
-			if (!data[i].isReadable())
-			{
-				invalid = true;
-				break;
-			}
-		}
-		
-		if (invalid)
-		{
-			StringBuffer strBuf = new StringBuffer();
-			for (int i=0; i<data.length; i++)
-			{
-				strBuf.append(paddedStr);
-			}
-			return strBuf.toString();
-		}
-		
-		int columnSize = getBytesPerColumn();
-		
-		// if the user has not set an endianess to the rendering
-		// take default endianess from bytes
-		int endianess = getDisplayEndianess();
-		if (endianess == RenderingsUtil.ENDIANESS_UNKNOWN)
-			endianess = getBytesEndianess(data);
-		
-		byte[] byteArray = new byte[data.length];
-		for (int i=0; i<byteArray.length;i ++)
-		{
-			byteArray[i] = data[i].getValue();
-		}
-		
-		// if endianess is unknown, do not render, just return padded string		
-		if (RenderingsUtil.ENDIANESS_UNKNOWN == endianess)
-		{
-			StringBuffer strBuf = new StringBuffer();
-			for (int i=0; i<byteArray.length; i++)
-			{
-				strBuf.append(paddedStr);
-			}
-			return strBuf.toString();
-		}
-		return convertToString(byteArray, columnSize, endianess);
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.extended.ui.AbstractMemoryRenderer#getBytes(java.lang.String, java.math.BigInteger, java.lang.String)
-	 */
-	public byte[] getBytes(String dataType, BigInteger address, MemoryByte[] currentValues, String data) {
-		
-		int columnSize = getBytesPerColumn();
-		
-		// if the user has not set an endianess to the rendering
-		// take default
-		int endianess = getDisplayEndianess();
-		if (endianess == RenderingsUtil.ENDIANESS_UNKNOWN)
-			endianess = getBytesEndianess(currentValues);
-		
-		// if endianess is unknown, do not try to render new data to bytes
-		if (endianess == RenderingsUtil.ENDIANESS_UNKNOWN)
-		{
-			byte[] retBytes = new byte[currentValues.length];
-			for (int i=0 ;i<currentValues.length; i++)
-				retBytes[i] = currentValues[i].getValue();
-			return retBytes;
-		}
-		
-		return convertToBytes(columnSize, data, endianess);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRenderingTypeDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRenderingTypeDelegate.java
deleted file mode 100644
index 9651f7e..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/SignedIntegerRenderingTypeDelegate.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate;
-
-/**
- * Delegate for creating a signed integer rendering.
- * @since 3.1
- */
-public class SignedIntegerRenderingTypeDelegate implements
-		IMemoryRenderingTypeDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate#createRendering(java.lang.String)
-	 */
-	public IMemoryRendering createRendering(String id) throws CoreException {
-		return new SignedIntegerRendering(id);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingCellModifier.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingCellModifier.java
deleted file mode 100644
index 0cdaa4b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingCellModifier.java
+++ /dev/null
@@ -1,260 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.memory.MemoryViewUtil;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.swt.widgets.TableItem;
-
-/**
- * @since 3.1
- */
-public class TableRenderingCellModifier implements ICellModifier {
-
-    private boolean editActionInvoked = false;
-
-    private AbstractTableRendering fRendering;
-
-    public TableRenderingCellModifier(AbstractTableRendering rendering) {
-        fRendering = rendering;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.viewers.ICellModifier#canModify(java.lang.Object,
-     *      java.lang.String)
-     */
-    public boolean canModify(Object element, String property) {
-        boolean canModify = true;
-        try {
-            if (!(element instanceof TableRenderingLine))
-                return false;
-
-            if (!editActionInvoked)
-                return false;
-
-            if (fRendering == null)
-                return false;
-
-            if (fRendering.getMemoryBlock().supportsValueModification() == false) {
-                return false;
-            }
-
-            TableRenderingLine line = (TableRenderingLine) element;
-            if (TableRenderingLine.P_ADDRESS.equals(property)) {
-                return false;
-            }
-
-            // property is stored as number of addressable unit away from the
-            // line address
-            // to calculate offset to the memory line array, offset =
-            // numberofAddressableUnit * addressableSize
-            int addressableSize = getAddressableSize();
-
-            int offset = Integer.valueOf(property, 16).intValue() * addressableSize;
-            int end = offset + fRendering.getBytesPerColumn();
-
-            for (int i = offset; i < end; i++) {
-                MemoryByte oneByte = line.getByte(i);
-
-                if (!oneByte.isWritable()) {
-                    canModify = false;
-                }
-            }
-            return canModify;
-        } catch (NumberFormatException e) {
-            canModify = false;
-            return canModify;
-        }
-    }
-
-    /**
-     * @return
-     */
-    private int getAddressableSize() {
-        int addressableSize = fRendering.getAddressableSize();
-        if (addressableSize < 1)
-            addressableSize = 1;
-        return addressableSize;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.viewers.ICellModifier#getValue(java.lang.Object,
-     *      java.lang.String)
-     */
-    public Object getValue(Object element, String property) {
-        // give back the value of the column
-
-        if (!(element instanceof TableRenderingLine))
-            return null;
-
-        TableRenderingLine line = (TableRenderingLine) element;
-        try {
-            if (TableRenderingLine.P_ADDRESS.equals(property))
-                return line.getAddress();
-
-            int offset = Integer.valueOf(property, 16).intValue() * getAddressableSize();
-            int end = offset + fRendering.getBytesPerColumn();
-
-            // Ask for label provider
-            MemoryByte[] memory = line.getBytes(offset, end);
-
-            if (line.isAvailable(offset, end)) {
-                // ask the renderer for a string representation of the bytes
-                offset = Integer.valueOf(property, 16).intValue();
-
-                BigInteger address = new BigInteger(((TableRenderingLine) element).getAddress(), 16);
-                address = address.add(BigInteger.valueOf(offset));
-
-                return fRendering.getString(fRendering.getRenderingId(), address, memory);
-            }
-            // if the range is not available, just return padded string
-            return getPaddedString(offset, end);
-        } catch (NumberFormatException e) {
-            return "00"; //$NON-NLS-1$
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.viewers.ICellModifier#modify(java.lang.Object,
-     *      java.lang.String, java.lang.Object)
-     */
-    public void modify(Object element, String property, Object value) {
-        TableRenderingLine line = null;
-        if (!(element instanceof TableRenderingLine)) {
-            line = (TableRenderingLine) ((TableItem) element).getData();
-        } else {
-            line = (TableRenderingLine) element;
-        }
-
-        // validate data
-        if (!(value instanceof String))
-            return;
-
-        try {
-            // calculate offset to update
-            IMemoryBlock memoryBlk = fRendering.getMemoryBlock();
-
-            int lineOffset = Integer.valueOf(property, 16).intValue();
-
-            // this offset is number of addressable unit from the line address
-            BigInteger offset = getOffset(memoryBlk, line.getAddress(), lineOffset);
-
-            byte[] bytes = null;
-
-            String oldValue = (String) getValue(line, property);
-
-            if (!oldValue.equals(value)) {
-
-                // property is number of addressable unit from line address
-                // to calculate proper offset in the memoryViewLine's array
-                // offset = numberOfAddressableUnit * addressableSize
-                int offsetToLine = Integer.valueOf(property, 16).intValue() * getAddressableSize();
-                int end = offsetToLine + fRendering.getBytesPerColumn();
-
-                MemoryByte[] oldArray = line.getBytes(offsetToLine, end);
-
-                BigInteger address = new BigInteger(line.getAddress(), 16);
-                address = address.add(BigInteger.valueOf(offsetToLine));
-
-                bytes = fRendering.getBytes(fRendering.getRenderingId(), address, oldArray, (String) value);
-
-                if (bytes == null)
-                    return;
-
-                if (bytes.length == 0)
-                    return;
-
-                if (bytes.length <= oldArray.length) {
-                    boolean changed = false;
-                    // check that the bytes returned has actually changed
-                    for (int i = 0; i < bytes.length; i++) {
-                        if (bytes[i] != oldArray[i].getValue()) {
-                            changed = true;
-                            break;
-                        }
-                    }
-                    if (!changed)
-                        return;
-                }
-            } else {
-                // return if value has not changed
-                return;
-            }
-
-            if (memoryBlk instanceof IMemoryBlockExtension)
-                ((IMemoryBlockExtension) memoryBlk).setValue(offset, bytes);
-            else
-                memoryBlk.setValue(offset.longValue(), bytes);
-        } catch (DebugException e) {
-            MemoryViewUtil.openError(DebugUIMessages.MemoryViewCellModifier_failure_title, DebugUIMessages.MemoryViewCellModifier_failed, e);
-        } catch (NumberFormatException e) {
-            MemoryViewUtil.openError(DebugUIMessages.MemoryViewCellModifier_failure_title, DebugUIMessages.MemoryViewCellModifier_failed + "\n" + DebugUIMessages.MemoryViewCellModifier_data_is_invalid, null); //$NON-NLS-1$
-        }
-
-    }
-
-    private BigInteger getOffset(IMemoryBlock memory, String lineAddress, int lineOffset) throws DebugException {
-
-        BigInteger lineAddr = new BigInteger(lineAddress, 16);
-        BigInteger memoryAddr;
-
-        if (memory instanceof IMemoryBlockExtension) {
-            memoryAddr = ((IMemoryBlockExtension) memory).getBigBaseAddress();
-        } else {
-            memoryAddr = BigInteger.valueOf(memory.getStartAddress());
-        }
-
-        if (memoryAddr == null)
-            memoryAddr = new BigInteger("0"); //$NON-NLS-1$
-
-        return lineAddr.subtract(memoryAddr).add(BigInteger.valueOf(lineOffset));
-    }
-
-    /**
-     * @param editActionInvoked
-     *            The editActionInvoked to set.
-     */
-    public void setEditActionInvoked(boolean editActionInvoked) {
-        this.editActionInvoked = editActionInvoked;
-    }
-
-    /**
-     * @param start
-     * @param end
-     * @return padded string
-     */
-    public String getPaddedString(int start, int end) {
-        StringBuffer buf = new StringBuffer();
-        String paddedStr = DebugUIPlugin.getDefault().getPreferenceStore().getString(IDebugUIConstants.PREF_PADDED_STR);
-        for (int i = start; i < end; i++) {
-            buf.append(paddedStr);
-        }
-        return buf.toString();
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentInput.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentInput.java
deleted file mode 100644
index 8f7afdd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentInput.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-
-/**
- * This is an internal class for storing information about the content
- * in the table viewer.
- */
-public class TableRenderingContentInput {
-
-	private AbstractTableRendering fRendering;
-	private int fPreBuffer;					// number of lines before the top visible line
-	private int fPostBuffer;				// number of lines after thes last visible line
-	private int fDefaultBufferSize;
-	private BigInteger fLoadAddress;		// Top address to load at the table
-	private int fNumLines;			// number of visible lines
-	private boolean fUpdateDelta;			// should the content provider calculate delta info
-	private BigInteger fMemoryBlockBaseAddress;		// base address of the memory block when this input is set
-	private BigInteger fStartAddress;
-	private BigInteger fEndAddress;
-	
-	public TableRenderingContentInput(AbstractTableRendering rendering, int preBuffer, int postBuffer, int defaultBufferSize, BigInteger loadAddress, int numOfLines, boolean updateDelta)
-	{
-		fRendering = rendering;
-		fPreBuffer = preBuffer;
-		fPostBuffer = postBuffer;
-		fLoadAddress = loadAddress;
-		fNumLines = numOfLines;
-		fDefaultBufferSize = defaultBufferSize;
-		fUpdateDelta = updateDelta;
-
-		try {
-			updateContentBaseAddress();
-		} catch (DebugException e) {
-			// log error, cannot recover
-			DebugUIPlugin.log(e);
-		}
-	}
-
-	public int getPostBuffer() {
-		return fPostBuffer;
-	}
-	public int getPreBuffer() {
-		return fPreBuffer;
-	}
-	public BigInteger getLoadAddress() {
-		return fLoadAddress;
-	}
-	
-	public IMemoryBlock getMemoryBlock()
-	{
-		return fRendering.getMemoryBlock();
-	}
-	public void setPostBuffer(int postBuffer) {
-		fPostBuffer = postBuffer;
-	}
-	public void setPreBuffer(int preBuffer) {
-		fPreBuffer = preBuffer;
-	}
-	public int getDefaultBufferSize() {
-		return fDefaultBufferSize;
-	}
-	public void setDefaultBufferSize(int defaultBufferSize) {
-		fDefaultBufferSize = defaultBufferSize;
-	}
-	public boolean isUpdateDelta() {
-		return fUpdateDelta;
-	}
-	public void setUpdateDelta(boolean updateDelta) {
-		fUpdateDelta = updateDelta;
-	}
-	public AbstractTableRendering getMemoryRendering()
-	{
-		return fRendering;
-	}
-	public void setLoadAddress(BigInteger address)
-	{
-		fLoadAddress = address;
-	}
-	public BigInteger getContentBaseAddress() {
-		
-		if (fMemoryBlockBaseAddress == null)
-		{
-			try {
-				updateContentBaseAddress();
-			} catch (DebugException e) {
-				fMemoryBlockBaseAddress = new BigInteger("0"); //$NON-NLS-1$
-			}
-		}
-		
-		return fMemoryBlockBaseAddress;
-	}
-	public void updateContentBaseAddress() throws DebugException {
-		IMemoryBlock memoryBlock = fRendering.getMemoryBlock();
-		if (memoryBlock instanceof IMemoryBlockExtension)
-			fMemoryBlockBaseAddress = ((IMemoryBlockExtension)memoryBlock).getBigBaseAddress();
-		else
-			fMemoryBlockBaseAddress = BigInteger.valueOf(memoryBlock.getStartAddress());
-	}
-	
-	public BigInteger getStartAddress()
-	{
-		if (fStartAddress == null)
-		{
-			try {
-				IMemoryBlock memoryBlock = fRendering.getMemoryBlock();
-				if(memoryBlock instanceof IMemoryBlockExtension)
-				{
-					BigInteger startAddress = ((IMemoryBlockExtension)memoryBlock).getMemoryBlockStartAddress();
-					if (startAddress != null)
-						fStartAddress =  startAddress;
-				}
-			} catch (DebugException e) {
-				// default to 0 if we have trouble getting the start address
-				fStartAddress =  BigInteger.valueOf(0);			
-			}
-			
-			if (fStartAddress == null)
-				fStartAddress =  BigInteger.valueOf(0);
-		}
-		return fStartAddress; 
-	}
-	
-	public BigInteger getEndAddress()
-	{
-		if (fEndAddress == null)
-		{
-			IMemoryBlock memoryBlock = fRendering.getMemoryBlock();
-			if(memoryBlock instanceof IMemoryBlockExtension)
-			{
-				BigInteger endAddress;
-				try {
-					endAddress = ((IMemoryBlockExtension)memoryBlock).getMemoryBlockEndAddress();
-					if (endAddress != null)
-						fEndAddress = endAddress;
-				} catch (DebugException e) {
-					fEndAddress = null;
-				}
-				
-				if (fEndAddress == null)
-				{
-					int addressSize;
-					try {
-						addressSize = ((IMemoryBlockExtension)memoryBlock).getAddressSize();
-					} catch (DebugException e) {
-						addressSize = 4;
-					}
-					
-					endAddress = BigInteger.valueOf(2);
-					endAddress = endAddress.pow(addressSize*8);
-					endAddress = endAddress.subtract(BigInteger.valueOf(1));
-					fEndAddress =  endAddress;
-				}
-			}
-			
-			if (fEndAddress == null)
-				fEndAddress = BigInteger.valueOf(Integer.MAX_VALUE);
-		}
-		return fEndAddress;
-	}
-	
-	public int getNumLines()
-	{
-		return fNumLines;
-	}
-	
-	public void setNumLines(int numLines)
-	{
-		fNumLines = numLines;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentProvider.java
deleted file mode 100644
index 0eca904..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingContentProvider.java
+++ /dev/null
@@ -1,786 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.Vector;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.memory.IMemoryRenderingUpdater;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-
-/**
- * Content provider for MemoryViewTab
- * 
- * @since 3.0
- */
-public class TableRenderingContentProvider extends BasicDebugViewContentProvider {
-	
-	// cached information
-	protected Vector lineCache;
-	
-	// keeps track of all memory line ever retrieved
-	// allow us to compare and compute deltas
-	protected Hashtable contentCache;
-	
-	private BigInteger fBufferTopAddress;
-	
-	private TableRenderingContentInput fInput;
-	private BigInteger fBufferEndAddress;
-	
-	private boolean fDynamicLoad;
-	
-	/**
-	 * @param memoryBlock
-	 * @param newTab
-	 */
-	public TableRenderingContentProvider()
-	{
-		lineCache = new Vector();
-		contentCache = new Hashtable();
-		initializeDynamicLoad();
-			
-		DebugPlugin.getDefault().addDebugEventListener(this);
-	}
-	
-	/**
-	 * @param viewer
-	 */
-	public void setViewer(StructuredViewer viewer)
-	{
-		fViewer = viewer;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-	 */
-	public void inputChanged(Viewer v, Object oldInput, Object newInput) {
-		try {
-			if (newInput instanceof TableRenderingContentInput)
-			{
-				fInput = (TableRenderingContentInput)newInput;
-				if (fInput.getMemoryBlock() instanceof IMemoryBlockExtension)
-					loadContentForExtendedMemoryBlock();
-				else
-					loadContentForSimpleMemoryBlock();
-				
-				// tell rendering to display table if the loading is successful
-				fInput.getMemoryRendering().displayTable();
-			}
-		} catch (DebugException e) {
-			fInput.getMemoryRendering().displayError(e);
-		}
-	}
-
-	public void dispose() {
-		DebugPlugin.getDefault().removeDebugEventListener(this);		
-		super.dispose();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-	 */
-	public Object[] getElements(Object parent) {
-
-		// if cache is empty, get memory
-		if (lineCache.isEmpty()) { 
-		
-			try {
-				IMemoryBlock memoryBlock = fInput.getMemoryBlock();
-				if (memoryBlock instanceof IMemoryBlockExtension)
-				{
-					loadContentForExtendedMemoryBlock();
-					fInput.getMemoryRendering().displayTable();
-				}
-				else
-				{
-					loadContentForSimpleMemoryBlock();
-					fInput.getMemoryRendering().displayTable();
-				}
-			} catch (DebugException e) {
-				DebugUIPlugin.log(e.getStatus());
-				fInput.getMemoryRendering().displayError(e);
-				return lineCache.toArray();
-			}
-		}
-		return lineCache.toArray();
-	}
-
-	/**
-	 * @throws DebugException
-	 */
-	public void loadContentForSimpleMemoryBlock() throws DebugException {
-		// get as much memory as the memory block can handle
-		fInput.setPreBuffer(0);
-		fInput.setPostBuffer(0);
-		fInput.setDefaultBufferSize(0);
-		long startAddress = fInput.getMemoryBlock().getStartAddress();
-		BigInteger address = BigInteger.valueOf(startAddress);
-		long length = fInput.getMemoryBlock().getLength();
-		long numLines = length / fInput.getMemoryRendering().getBytesPerLine();
-		getMemoryToFitTable(address, numLines, fInput.isUpdateDelta());
-	}
-
-	/**
-	 * @throws DebugException
-	 */
-	public void loadContentForExtendedMemoryBlock() throws DebugException {
-		
-		// calculate top buffered address
-		BigInteger loadAddress = fInput.getLoadAddress();
-		if (loadAddress == null)
-		{
-			loadAddress = new BigInteger("0"); //$NON-NLS-1$
-		}
-		
-		BigInteger mbStart = fInput.getStartAddress();
-		BigInteger mbEnd = fInput.getEndAddress();
-		
-		int addressableUnitsPerLine = fInput.getMemoryRendering().getAddressableUnitPerLine();
-		BigInteger bufferStart = loadAddress.subtract(BigInteger.valueOf(fInput.getPreBuffer()*addressableUnitsPerLine));
-		BigInteger bufferEnd = loadAddress.add(BigInteger.valueOf(fInput.getPostBuffer()*addressableUnitsPerLine));
-		bufferEnd = bufferEnd.add(BigInteger.valueOf(fInput.getNumLines()*addressableUnitsPerLine));
-		
-		if (isDynamicLoad())
-		{
-			if (bufferStart.compareTo(mbStart) < 0)
-				bufferStart = mbStart;
-			
-			if (bufferEnd.compareTo(mbEnd) > 0)
-				bufferEnd = mbEnd;
-			
-			int numLines = bufferEnd.subtract(bufferStart).divide(BigInteger.valueOf(addressableUnitsPerLine)).intValue()+1;		
-			// get stoarage to fit the memory view tab size
-			getMemoryToFitTable(bufferStart, numLines, fInput.isUpdateDelta());
-		}
-		else
-		{
-			if (bufferStart.compareTo(mbStart) < 0)
-				bufferStart = mbStart;
-			
-			if (bufferEnd.compareTo(mbEnd) > 0)
-			{
-				bufferStart = mbEnd.subtract(BigInteger.valueOf((fInput.getNumLines()-1)*addressableUnitsPerLine));
-			}
-			
-			int numLines = fInput.getNumLines();	
-			// get stoarage to fit the memory view tab size
-			getMemoryToFitTable(bufferStart, numLines, fInput.isUpdateDelta());
-		}
-	}
-	
-	/**
-	 * @return the memroy block
-	 */
-	public IMemoryBlock getMemoryBlock() {
-		return fInput.getMemoryBlock();
-	}
-	
-	/**
-	 * Get memory to fit table
-	 * @param startingAddress
-	 * @param numberOfLines
-	 * @param updateDelta
-	 * @throws DebugException
-	 */
-	public void getMemoryToFitTable(BigInteger startingAddress, long numberOfLines, boolean updateDelta) throws DebugException
-	{
-		// do not ask for memory from memory block if the debug target
-		// is already terminated
-		IDebugTarget target = fInput.getMemoryBlock().getDebugTarget();
-		
-		if (target.isDisconnected() || target.isTerminated())
-			return;
-		
-		boolean error = false;
-		DebugException dbgEvt = null;
-		
-		// calculate address size
-		String adjustedAddress = startingAddress.toString(16);
-		
-		int addressSize;
-		try {
-			addressSize = getAddressSize(startingAddress);
-		} catch (DebugException e1) {
-			dbgEvt = e1;
-			error = true;
-			addressSize = 4;
-		}
-		
-		int addressLength = addressSize * IInternalDebugUIConstants.CHAR_PER_BYTE;
-
-		// align starting address with double word boundary
-		if (fInput.getMemoryBlock() instanceof IMemoryBlockExtension)
-		{
-			if (!adjustedAddress.endsWith("0")) //$NON-NLS-1$
-			{
-				adjustedAddress = adjustedAddress.substring(0, adjustedAddress.length() - 1);
-				adjustedAddress += "0"; //$NON-NLS-1$
-				startingAddress = new BigInteger(adjustedAddress, 16);
-			}
-		}
-
-		IMemoryBlockExtension extMemoryBlock = null;
-		MemoryByte[] memoryBuffer = null;
-		
-		String paddedString = DebugUIPlugin.getDefault().getPreferenceStore().getString(IDebugUIConstants.PREF_PADDED_STR);
-		
-		long reqNumBytes = 0;
-		try
-		{
-			if (fInput.getMemoryBlock() instanceof IMemoryBlockExtension)
-			{
-				reqNumBytes = fInput.getMemoryRendering().getBytesPerLine() * numberOfLines;
-				// get memory from memory block
-				extMemoryBlock = (IMemoryBlockExtension) fInput.getMemoryBlock();
-				
-				long reqNumberOfUnits = fInput.getMemoryRendering().getAddressableUnitPerLine() * numberOfLines;
-						
-				memoryBuffer =	extMemoryBlock.getBytesFromAddress(startingAddress,	reqNumberOfUnits);
-		
-				if(memoryBuffer == null)
-				{
-					DebugException e = new DebugException(DebugUIPlugin.newErrorStatus(DebugUIMessages.MemoryViewContentProvider_Unable_to_retrieve_content, null));
-					throw e;
-				}
-			}
-			else
-			{
-				// get memory from memory block
-				byte[] memory = fInput.getMemoryBlock().getBytes();
-				
-				if (memory == null)
-				{
-					DebugException e = new DebugException(DebugUIPlugin.newErrorStatus(DebugUIMessages.MemoryViewContentProvider_Unable_to_retrieve_content, null));	
-					throw e;					
-				}
-				
-				int prefillNumBytes = 0;
-				
-				// number of bytes need to prefill
-				if (!startingAddress.toString(16).endsWith("0")) //$NON-NLS-1$
-				{
-					adjustedAddress = startingAddress.toString(16).substring(0, adjustedAddress.length() - 1);
-					adjustedAddress += "0"; //$NON-NLS-1$
-					BigInteger adjustedStart = new BigInteger(adjustedAddress, 16);
-					prefillNumBytes = startingAddress.subtract(adjustedStart).intValue();
-					startingAddress = adjustedStart;
-				}
-				reqNumBytes = fInput.getMemoryBlock().getLength() + prefillNumBytes;
-				
-				// figure out number of dummy bytes to append
-				while (reqNumBytes % fInput.getMemoryRendering().getBytesPerLine() != 0)
-				{
-					reqNumBytes ++;
-				}
-				
-				numberOfLines = reqNumBytes / fInput.getMemoryRendering().getBytesPerLine();
-				
-				// create memory byte for IMemoryBlock
-				memoryBuffer = new MemoryByte[(int)reqNumBytes];
-				
-				// prefill buffer to ensure double-word alignment
-				for (int i=0; i<prefillNumBytes; i++)
-				{
-					MemoryByte tmp = new MemoryByte();
-					tmp.setValue((byte)0);
-					tmp.setWritable(false);
-					tmp.setReadable(false);
-					tmp.setEndianessKnown(false);
-					memoryBuffer[i] = tmp;
-				}
-				
-				// fill buffer with memory returned by debug adapter
-				int j = prefillNumBytes; 							// counter for memoryBuffer
-				for (int i=0; i<memory.length; i++)
-				{
-					MemoryByte tmp = new MemoryByte();
-					tmp.setValue(memory[i]);
-					tmp.setReadable(true);
-					tmp.setWritable(true);
-					tmp.setEndianessKnown(false);
-					memoryBuffer[j] = tmp;
-					j++;
-				}
-				
-				// append to buffer to fill up the entire line
-				for (int i=j; i<memoryBuffer.length; i++)
-				{
-					MemoryByte tmp = new MemoryByte();
-					tmp.setValue((byte)0);
-					tmp.setWritable(false);
-					tmp.setReadable(false);
-					tmp.setEndianessKnown(false);
-					memoryBuffer[i] = tmp;
-				}
-			}
-		}
-		catch (DebugException e)
-		{
-			memoryBuffer = makeDummyContent(numberOfLines);
-			
-			// finish creating the content provider before throwing an event
-			error = true; 
-			dbgEvt = e;
-		}
-		catch (Throwable e)
-		{
-			// catch all errors from this process just to be safe
-			memoryBuffer = makeDummyContent(numberOfLines);
-			
-			// finish creating the content provider before throwing an event
-			error = true; 
-			dbgEvt = new DebugException(DebugUIPlugin.newErrorStatus(e.getMessage(), e));
-		}
-		
-		// if debug adapter did not return enough memory, create dummy memory
-		if (memoryBuffer.length < reqNumBytes)
-		{
-			ArrayList newBuffer = new ArrayList();
-			
-			for (int i=0; i<memoryBuffer.length; i++)
-			{
-				newBuffer.add(memoryBuffer[i]);
-			}
-			
-			for (int i=memoryBuffer.length; i<reqNumBytes; i++)
-			{
-				MemoryByte mb = new MemoryByte();
-				mb.setReadable(false);
-				mb.setWritable(false);
-				mb.setEndianessKnown(false);
-				newBuffer.add(mb);
-			}
-			
-			memoryBuffer = (MemoryByte[])newBuffer.toArray(new MemoryByte[newBuffer.size()]);
-			
-		}
-		
-		// clear line cacheit'
-		if (!lineCache.isEmpty())
-		{
-			lineCache.clear();
-		}
-		String address = startingAddress.toString(16);
-		// save address of the top of buffer
-		fBufferTopAddress = startingAddress;
-		
-		boolean manageDelta = true;
-		
-		// If change information is not managed by the memory block
-		// The view tab will manage it and calculate delta information
-		// for its content cache.
-		if (fInput.getMemoryBlock() instanceof IMemoryBlockExtension)
-		{
-			manageDelta = !((IMemoryBlockExtension)fInput.getMemoryBlock()).supportsChangeManagement();
-		}
-			
-		// put memory information into MemoryViewLine
-		for (int i = 0; i < numberOfLines; i++)
-		{ //chop the raw memory up 
-			String tmpAddress = address.toUpperCase();
-			if (tmpAddress.length() < addressLength)
-			{
-				for (int j = 0; tmpAddress.length() < addressLength; j++)
-				{
-					tmpAddress = "0" + tmpAddress; //$NON-NLS-1$
-				}
-			}
-			MemoryByte[] memory = new MemoryByte[fInput.getMemoryRendering().getBytesPerLine()];
-			boolean isMonitored = true;
-			
-			// counter for memory, starts from 0 to number of bytes per line
-			int k = 0;
-			// j is the counter for memArray, memory returned by debug adapter
-			for (int j = i * fInput.getMemoryRendering().getBytesPerLine();
-				j < i * fInput.getMemoryRendering().getBytesPerLine() + fInput.getMemoryRendering().getBytesPerLine();
-				j++)
-			{
-				
-				byte changeFlag = memoryBuffer[j].getFlags();
-				if (manageDelta)
-				{
-					// turn off both change and known bits to make sure that
-					// the change bits returned by debug adapters do not take
-					// any effect
-					
-					changeFlag |= MemoryByte.HISTORY_KNOWN;
-					changeFlag ^= MemoryByte.HISTORY_KNOWN;
-					
-					changeFlag |= MemoryByte.CHANGED;
-					changeFlag ^= MemoryByte.CHANGED;
-				}
-				
-				MemoryByte newByteObj = new MemoryByte(memoryBuffer[j].getValue(), changeFlag);
-				memory[k] =  newByteObj;
-				k++;
-				
-				
-				if (!manageDelta)
-				{
-					// If the byte is marked as unknown, the line is not monitored
-					if (!memoryBuffer[j].isHistoryKnown())
-					{
-						isMonitored = false;
-					}
-				}
-			}
-			
-			TableRenderingLine newLine = new TableRenderingLine(tmpAddress, memory, lineCache.size(), paddedString);
-			
-			TableRenderingLine oldLine = (TableRenderingLine)contentCache.get(newLine.getAddress());
-			
-			if (manageDelta)
-			{
-				if (oldLine != null)
-					newLine.isMonitored = true;
-				else
-					newLine.isMonitored = false;
-			}
-			else
-			{
-				// check the byte for information
-				newLine.isMonitored = isMonitored;
-			}
-			
-			// calculate delta info for the memory view line
-			if (manageDelta && !fInput.getMemoryRendering().isDisplayingError())
-			{
-				if (updateDelta)
-				{
-					if (oldLine != null)
-					{
-						newLine.markDeltas(oldLine);
-					}
-				}
-				else
-				{
-					if (oldLine != null)
-					{
-						// deltas can only be reused if the line has not been changed
-						// otherwise, force a refresh
-						if (newLine.isLineChanged(oldLine))
-						{
-							newLine.markDeltas(oldLine);
-						}
-						else
-						{
-							newLine.copyDeltas(oldLine);
-						}
-					}
-				}
-			}
-			else if (manageDelta && fInput.getMemoryRendering().isDisplayingError())
-			{
-				// show as unmonitored if the view tab is previoulsy displaying error
-				newLine.isMonitored = false;
-			}
-			lineCache.add(newLine);
-			
-			
-			// increment row address
-			BigInteger bigInt = new BigInteger(address, 16);
-			fBufferEndAddress = bigInt;
-			int addressableUnit = fInput.getMemoryRendering().getBytesPerLine()/fInput.getMemoryRendering().getAddressableSize();
-			address = bigInt.add(BigInteger.valueOf(addressableUnit)).toString(16);
-		}
-		
-		if (error){
-			throw dbgEvt;
-		}
-	}
-	
-	/**
-	 * @param numberOfLines
-	 * @return an array of dummy MemoryByte
-	 */
-	private MemoryByte[] makeDummyContent(long numberOfLines) {
-		MemoryByte[] memoryBuffer;
-		// make up dummy memory, needed for recovery in case the debug adapter
-		// is capable of retrieving memory again
-
-		int numBytes = (int)(fInput.getMemoryRendering().getBytesPerLine() * numberOfLines);
-		memoryBuffer = new MemoryByte[numBytes];
-		
-		for (int i=0; i<memoryBuffer.length; i++){
-			memoryBuffer[i] = new MemoryByte();
-			memoryBuffer[i].setValue((byte)0);
-			memoryBuffer[i].setWritable(false);
-			memoryBuffer[i].setReadable(false);
-			memoryBuffer[i].setEndianessKnown(false);
-		}
-		return memoryBuffer;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.internal.views.BasicDebugViewContentProvider#doHandleDebugEvent(org.eclipse.debug.core.DebugEvent)
-	 */
-	protected void doHandleDebugEvent(DebugEvent event) {
-		
-		if (fInput.getMemoryRendering().isVisible())
-		{
-			// only do this if it's visible
-			// still need to clear content cache if the rendering
-			// is not visible
-			if (isUpdateManagedByMB())
-				return;
-		}
-		
-		// do nothing if the debug event did not come from a debug element comes from non-debug element
-		if (!(event.getSource() instanceof IDebugElement))
-			return;
-		
-		// do not try to recover if the content input has not been created
-		if (fInput == null)
-			return;
-		
-		IDebugElement src = (IDebugElement)event.getSource();
-		
-		// if a debug event happens from the memory block
-		// invoke contentChanged to get content of the memory block updated
-		if (event.getKind() == DebugEvent.CHANGE && event.getSource() == fInput.getMemoryBlock())
-		{
-			if (event.getDetail() == DebugEvent.STATE){
-				fInput.getMemoryRendering().updateLabels();
-			}
-			else
-			{	
-				updateContent();
-			}
-		}
-		
-		// if the suspend evnet happens from the debug target that the 
-		// memory block belongs to
-		if (event.getKind() == DebugEvent.SUSPEND && src.getDebugTarget() == fInput.getMemoryBlock().getDebugTarget())
-		{	
-			updateContent();
-		}
-
-	}
-	
-	/**
-	 * Update content of the view tab if the content of the memory block has changed
-	 * or if its base address has changed
-	 * Update will not be performed if the memory block has not been changed or
-	 * if the rendering is not visible
-	 */
-	public void updateContent()
-	{
-		IDebugTarget dt = fInput.getMemoryBlock().getDebugTarget();
-		
-		// no need to update if debug target is disconnected or terminated
-		if (dt.isDisconnected() || dt.isTerminated())
-		{
-			return;
-		}
-		
-		takeContentSnapshot();
-		
-		//do not handle event if the rendering is not visible
-		if (!fInput.getMemoryRendering().isVisible())
-			 return;
-		
-		fInput.getMemoryRendering().refresh();
-		
-	}
-	
-	/**
-	 *  Take a snapshot on the content, marking the lines as monitored
-	 */
-	public void takeContentSnapshot()
-	{
-		// cache content before getting new ones
-		TableRenderingLine[] lines =(TableRenderingLine[]) lineCache.toArray(new TableRenderingLine[lineCache.size()]);
-		if (contentCache != null)
-		{
-			contentCache.clear();
-		}
-		
-		//do not handle event if the rendering is not visible
-		if (!fInput.getMemoryRendering().isVisible())
-			 return;
-		
-		// use existing lines as cache is the rendering is not currently displaying
-		// error.  Otherwise, leave contentCache empty as we do not have updated
-		// content.
-		if (!fInput.getMemoryRendering().isDisplayingError())
-		{
-			for (int i=0; i<lines.length; i++)
-			{
-				contentCache.put(lines[i].getAddress(), lines[i]);
-				lines[i].isMonitored = true;
-			}
-		}
-
-		// reset all the deltas currently stored in contentCache
-		// This will ensure that changes will be recomputed when user scrolls
-		// up or down the memory view.		
-		resetDeltas();
-	}
-
-	/**
-	 * @return buffer's top address
-	 */
-	public BigInteger getBufferTopAddress()
-	{
-		return fBufferTopAddress;
-	}
-	
-	public BigInteger getBufferEndAddress()
-	{
-		return fBufferEndAddress;
-	}
-	
-	/**
-	 * Calculate address size of the given address
-	 * @param address
-	 * @return size of address from the debuggee
-	 */
-	public int getAddressSize(BigInteger address) throws DebugException
-	{
-		// calculate address size
-		 String adjustedAddress = address.toString(16);
-		
-		 int addressSize = 0;
-		 if (fInput.getMemoryBlock() instanceof IMemoryBlockExtension)
-		 {
-			 addressSize = ((IMemoryBlockExtension)fInput.getMemoryBlock()).getAddressSize();
-		 }
-		
-		 // handle IMemoryBlock and invalid address size returned by IMemoryBlockExtension
-		 if (addressSize <= 0)
-		 {
-			 if (adjustedAddress.length() > 8)
-			 {
-				 addressSize = 8;
-			 }
-			 else
-			 {
-				 addressSize = 4;
-			 }			
-		 }		
-		 
-		 return addressSize;
-	}
-	
-	/**
-	 * @return base address of memory block
-	 */
-	public BigInteger getContentBaseAddress()
-	{
-		return fInput.getContentBaseAddress(); 
-	}
-	
-	/**
-	 * Clear all delta information in the lines
-	 */
-	public void resetDeltas()
-	{
-		Enumeration enumeration = contentCache.elements();
-		
-		while (enumeration.hasMoreElements())
-		{
-			TableRenderingLine line = (TableRenderingLine)enumeration.nextElement();
-			line.unmarkDeltas();
-		}
-	}
-	
-	/**
-	 * Check if address is out of buffered range
-	 * @param address
-	 * @return true if address is out of bufferred range, false otherwise
-	 */
-	public boolean isAddressOutOfRange(BigInteger address)
-	{
-		if (lineCache != null)
-		{
-			TableRenderingLine first = (TableRenderingLine)lineCache.firstElement();
-			TableRenderingLine last = (TableRenderingLine) lineCache.lastElement();
-			
-			if (first == null ||last == null)
-				return true;
-			
-			BigInteger startAddress = new BigInteger(first.getAddress(), 16);
-			BigInteger lastAddress = new BigInteger(last.getAddress(), 16);
-			int addressableUnit = fInput.getMemoryRendering().getAddressableUnitPerLine();
-			lastAddress = lastAddress.add(BigInteger.valueOf(addressableUnit)).subtract(BigInteger.valueOf(1));
-			
-			if (startAddress.compareTo(address) <= 0 &&
-				lastAddress.compareTo(address) >= 0)
-			{
-				return false;
-			}
-			return true;
-		}
-		return true;
-	}
-	
-	public void clearContentCache()
-	{
-		contentCache.clear();
-	}
-	
-	/**
-	 * @return if the memory block would manage its own update.
-	 */
-	private boolean isUpdateManagedByMB()
-	{
-		IMemoryBlock memoryBlock = getMemoryBlock();
-		
-		IMemoryRenderingUpdater managedMB = null;
-		if (memoryBlock instanceof IMemoryRenderingUpdater)
-		{
-			managedMB = (IMemoryRenderingUpdater)memoryBlock;
-		}
-		
-		if (managedMB == null)
-			managedMB = (IMemoryRenderingUpdater)memoryBlock.getAdapter(IMemoryRenderingUpdater.class);
-		
-		// do not handle event if if the memory block wants to do its
-		// own update
-		if (managedMB != null && managedMB.supportsManagedUpdate(fInput.getMemoryRendering()))
-			return true;
-		
-		return false;
-	}
-	
-	public boolean isDynamicLoad()
-	{
-		return fDynamicLoad;
-	}
-	
-	private void initializeDynamicLoad()
-	{
-		fDynamicLoad = DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM);
-	}
-	
-	public void setDynamicLoad(boolean dynamicLoad)
-	{
-		fDynamicLoad = dynamicLoad;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProvider.java
deleted file mode 100644
index eac67b3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProvider.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.debug.ui.memory.IMemoryBlockTablePresentation;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.swt.graphics.Color;
-
-/**
- * @since 3.0
- */
-public class TableRenderingLabelProvider extends AbstractTableRenderingLabelProvider implements IColorProvider {
-	
-	private IMemoryBlockTablePresentation fTablePresentation;
-
-	/**
-	 * Constructor for MemoryViewLabelProvider
-	 */
-	public TableRenderingLabelProvider() {
-		super();
-	}
-	
-	public TableRenderingLabelProvider(AbstractTableRendering rendering){
-		super(rendering);
-		fTablePresentation = (IMemoryBlockTablePresentation)rendering.getAdapter(IMemoryBlockTablePresentation.class);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		if (fTablePresentation != null) {
-			fTablePresentation.dispose();
-			fTablePresentation = null;
-		}
-		super.dispose();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IColorProvider#getForeground(java.lang.Object)
-	 */
-	public Color getForeground(Object element) {
-		if (element instanceof TableRenderingLine)
-		{
-			TableRenderingLine line = (TableRenderingLine)element;
-			
-			if (line.isMonitored) {
-				return DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.MEMORY_VIEW_BUFFERED_LINE_COLOR);
-			}
-			return DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.MEMORY_VIEW_UNBUFFERED_LINE_COLOR);
-		}
-		return DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.MEMORY_VIEW_BUFFERED_LINE_COLOR);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.IColorProvider#getBackground(java.lang.Object)
-	 */
-	public Color getBackground(Object element) {
-		
-		return null;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
-	 */
-	public String getColumnText(Object element, int columnIndex) {
-		
-		String label = super.getColumnText(element, columnIndex);
-		
-		// consult model presentation for address presentation
-		if (columnIndex == 0)
-		{	
-			if (fTablePresentation != null)
-			{	
-				String address = ((TableRenderingLine)element).getAddress();
-				
-				// get address presentation
-				String tempLabel = fTablePresentation.getRowLabel(fRendering.getMemoryBlock(), new BigInteger(address, 16));
-				
-				if (tempLabel != null)
-					return tempLabel;
-			}
-			return label;
-		}
-		return label;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProviderEx.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProviderEx.java
deleted file mode 100644
index 5fe5fbd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLabelProviderEx.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.debug.ui.memory.MemoryRenderingElement;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.jface.viewers.IFontProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ITableColorProvider;
-import org.eclipse.jface.viewers.ITableFontProvider;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * This label provider is used by AbstractTableRendering if clients decide to
- * provide customized decorations in the rendering. Otherwise the table
- * rendering uses TableRenderingLabelProvider.
- * 
- */
-public class TableRenderingLabelProviderEx extends TableRenderingLabelProvider implements ITableColorProvider, ITableFontProvider {
-
-	private IFontProvider fFontProvider;
-	private ILabelProvider fLabelProvider;
-	private IColorProvider fColorProvider;
-
-	public TableRenderingLabelProviderEx(AbstractTableRendering rendering) {
-		super(rendering);
-		fLabelProvider = (ILabelProvider) rendering.getAdapter(ILabelProvider.class);
-		fColorProvider = (IColorProvider) rendering.getAdapter(IColorProvider.class);
-		fFontProvider = (IFontProvider) rendering.getAdapter(IFontProvider.class);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 */
-	public void dispose() {
-		if (fFontProvider != null) {
-			fFontProvider = null;
-		}
-		if (fColorProvider != null) {
-			fColorProvider = null;
-		}
-		if (fLabelProvider != null) {
-			fLabelProvider.dispose();
-			fLabelProvider = null;
-		}
-		super.dispose();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITableColorProvider#getBackground(java.lang.Object, int)
-	 */
-	public Color getBackground(Object element, int columnIndex) {
-		if (fColorProvider != null && columnIndex > 0) {
-			MemoryRenderingElement renderingElement = getMemoryRenderingElement(element, columnIndex);
-			if (renderingElement != null) {
-				Color color = fColorProvider.getBackground(renderingElement);
-				if (color != null)
-					return color;
-			}
-		}
-		return super.getBackground(element);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITableColorProvider#getForeground(java.lang.Object, int)
-	 */
-	public Color getForeground(Object element, int columnIndex) {
-		if (fColorProvider != null && columnIndex > 0) {
-			MemoryRenderingElement renderingElement = getMemoryRenderingElement(element, columnIndex);
-			if (renderingElement != null) {
-				Color color = fColorProvider.getForeground(renderingElement);
-				if (color != null)
-					return color;
-			}			
-		}
-		return super.getForeground(element);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
-	 */
-	public Image getColumnImage(Object element, int columnIndex) {
-		if (fLabelProvider != null && columnIndex > 0) {
-			MemoryRenderingElement renderingElement = getMemoryRenderingElement(element, columnIndex);
-			if (renderingElement != null) {
-				Image image = fLabelProvider.getImage(renderingElement);
-				if (image != null)
-					return image;
-			}
-		}
-		return super.getColumnImage(element, columnIndex);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ITableFontProvider#getFont(java.lang.Object, int)
-	 */
-	public Font getFont(Object element, int columnIndex) {
-		if (fFontProvider != null && columnIndex > 0) {
-			MemoryRenderingElement renderingElement = getMemoryRenderingElement(element, columnIndex);
-			if (renderingElement != null) {
-				Font font = fFontProvider.getFont(renderingElement);
-				if (font != null)
-					return font;
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Returns a memory rendering element corresponding to the given element
-	 * or <code>null</code> if none.
-	 *  
-	 * @param element element to be rendered
-	 * @param columnIndex column index at which to render
-	 * @return memory rendering element or <code>null</code>
-	 */
-	private MemoryRenderingElement getMemoryRenderingElement(Object element, int columnIndex) {
-		if (element instanceof TableRenderingLine) {
-			TableRenderingLine line = (TableRenderingLine) element;
-			BigInteger lineAddress = new BigInteger(line.getAddress(), 16);
-			int offset = (columnIndex - 1) * fRendering.getBytesPerColumn();
-			if (offset < fRendering.getBytesPerLine() && (offset + fRendering.getBytesPerColumn()) <= fRendering.getBytesPerLine()) {
-				return getMemoryRenderingElement(line, lineAddress, offset);
-			}
-		}
-		return null;
-	}
-	
-	private MemoryRenderingElement getMemoryRenderingElement(TableRenderingLine line, BigInteger lineAddress, int offset) {
-		BigInteger cellAddress = lineAddress.add(BigInteger.valueOf(offset));
-		MemoryByte[] bytes = line.getBytes(offset, offset
-				+ fRendering.getBytesPerColumn());
-		// make a copy to ensure that the memory bytes are not overwritten
-		// by clients
-		MemoryByte[] copy = new MemoryByte[bytes.length];
-		System.arraycopy(bytes, 0, copy, 0, bytes.length);
-		MemoryRenderingElement renderingElement = new MemoryRenderingElement(
-				fRendering, cellAddress, copy);
-		return renderingElement;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLine.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLine.java
deleted file mode 100644
index 5aba9e5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingLine.java
+++ /dev/null
@@ -1,299 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.util.ArrayList;
-
-import org.eclipse.debug.core.model.MemoryByte;
-
-/**
- * @since 3.0
- */
-
-public class TableRenderingLine extends Object {
-	private String fAddress;
-	private String fStrRep;
-	private MemoryByte[] fBytes;
-	private byte[] fByteArray; 
-	private int fTableIndex = -1;
-	private String fPaddedString;
-	public boolean isMonitored;
-
-	public static final String P_ADDRESS = "address"; //$NON-NLS-1$
-
-	// for raw hex data, it's 2 characters per byte
-	private static final int numCharPerByteForHex = 2;
-
-	public TableRenderingLine(String address, MemoryByte[] bytes, int tableIndex, String paddedString) {
-		fAddress = address;
-		fBytes = bytes;
-		fTableIndex = tableIndex;
-		fPaddedString = paddedString;
-	}
-
-	public String getAddress() {
-		return fAddress;
-	}
-
-	public void setAddress(String address) {
-		fAddress = address;
-	}
-	
-	public MemoryByte[] getBytes()
-	{
-		return fBytes;
-	}
-	
-	public MemoryByte getByte(int offset)
-	{
-		if (fBytes == null)
-			return null;
-		
-		if (offset < fBytes.length) {
-			return fBytes[offset];
-		}
-		
-		return null;		
-	}
-	
-	public MemoryByte[] getBytes(int start, int end)
-	{
-		ArrayList ret = new ArrayList();
-		
-		for (int i=start; i<end; i++)
-		{
-			ret.add(fBytes[i]);
-		}
-		return (MemoryByte[]) ret.toArray(new MemoryByte[ret.size()]);
-	}
-	
-	public String getRawMemoryString()
-	{
-		if (fStrRep == null)
-		{
-			StringBuffer buffer = new StringBuffer();
-			fStrRep = HexRendering.convertByteArrayToHexString(getByteArray());
-			fStrRep = fStrRep.toUpperCase();
-			
-			buffer = buffer.append(fStrRep);
-			
-			// pad unavailable bytes with padded string from memory block
-			String paddedString = null;
-			int bufferCounter = 0;
-			for (int i=0; i<fBytes.length; i++)
-			{ 
-				// if byte is invalid
-				if (!fBytes[i].isReadable())
-				{
-					if (paddedString == null)
-					{
-						paddedString = fPaddedString;
-						
-						if (paddedString.length() > TableRenderingLine.numCharPerByteForHex)
-							paddedString = paddedString.substring(0, TableRenderingLine.numCharPerByteForHex);
-					}
-					buffer.replace(bufferCounter, bufferCounter+TableRenderingLine.numCharPerByteForHex, paddedString);		
-				}
-				bufferCounter += TableRenderingLine.numCharPerByteForHex;
-			}
-			
-			fStrRep = buffer.toString();
-		}
-		
-		return fStrRep;
-	}
-
-	/**
-	 * @param start
-	 * @param end
-	 * @return is the bytes between start and end are all valid
-	 */
-	public boolean isAvailable(int start, int end) {
-		boolean available = true;
-		for (int i=start; i<end; i++)
-		{	
-			if (!fBytes[i].isReadable())
-			{	
-				available = false;
-				break;
-			}
-		}
-		return available;
-	}
-
-
-	public byte[] getByteArray()
-	{
-		if (fByteArray == null)
-		{
-			fByteArray = new byte[fBytes.length];
-			for (int i=0; i<fBytes.length; i++)
-			{
-				fByteArray[i] = fBytes[i].getValue();
-			}			
-		}
-		
-		return fByteArray;
-	}
-	
-	public byte[] getByteArray(int start, int end)
-	{
-		byte[] ret = new byte[end-start];
-		int j=0;
-		
-		for (int i=start; i<end; i++)
-		{
-			ret[j] = fBytes[i].getValue();
-			j++;
-		}
-		return ret;
-	}
-	
-	public void markDeltas(TableRenderingLine oldData)
-	{
-		if (oldData == null)
-			return;
-		
-		// if address is not the same, no need to compare
-		if (!oldData.getAddress().equals(this.getAddress()))
-			return;
-		
-		// if the string representation is the same, no need to compare
-		if (oldData.getRawMemoryString().equals(getRawMemoryString()))
-		{
-			for (int i=0; i<fBytes.length; i++)
-			{
-				// set history as known if we have old data for this line
-				fBytes[i].setHistoryKnown(true);
-			}
-			return;
-		}
-		
-		MemoryByte[] oldMemory = oldData.getBytes();
-		
-		if (oldMemory.length != fBytes.length)
-			return;
-			
-		for (int i=0; i<fBytes.length; i++)
-		{
-			// turn on known bit
-			fBytes[i].setHistoryKnown(true);
-			
-			if ((fBytes[i].getFlags() & MemoryByte.READABLE) != (oldMemory[i].getFlags() & MemoryByte.READABLE))
-			{
-				fBytes[i].setChanged(true);
-				continue;
-			}
-				
-			if (fBytes[i].isReadable() && oldMemory[i].isReadable())
-			{
-				if (fBytes[i].getValue() != oldMemory[i].getValue())
-				{
-					fBytes[i].setChanged(true);
-				}
-			}
-		}
-	}
-	
-	public void copyDeltas(TableRenderingLine oldData)
-	{
-		if (oldData == null)
-			return;
-		
-		// if address is not the same, do not copy
-		if (!oldData.getAddress().equals(this.getAddress()))
-			return;
-		
-		// reuse delta information from old data
-		MemoryByte[] oldMemory = oldData.getBytes();
-		
-		if (oldMemory.length != fBytes.length)
-			return;
-			
-		for (int i=0; i<fBytes.length; i++)
-		{
-			fBytes[i].setFlags(oldMemory[i].getFlags());
-		}		
-	}
-	
-	public boolean isLineChanged(TableRenderingLine oldData)
-	{
-		if (oldData == null)
-			return false;
-		
-		// if address is not the same, no need to compare
-		if (!oldData.getAddress().equals(this.getAddress()))
-			return false;
-		
-		// if the string representation is not the same, this line has changed
-		if (oldData.getRawMemoryString().equals(getRawMemoryString())) {
-			return false;
-		}
-		return true;
-	}
-	
-	/**
-	 * @param offset
-	 * @param endOffset
-	 * @return true if the specified range of memory has changed, false otherwise
-	 * */
-	
-	public boolean isRangeChange(int offset, int endOffset)
-	{	
-		boolean allBytesKnown = true;
-		boolean allBytesUnchanged = true;
-		
-		for (int i=offset; i<=endOffset; i++)
-		{
-			if (!fBytes[i].isHistoryKnown())
-				allBytesKnown = false;
-			if (fBytes[i].isChanged())
-				allBytesUnchanged = false;
-		}
-		
-		if (allBytesKnown && !allBytesUnchanged) {
-			return true;
-		}
-		return false;
-	}
-	
-	public void unmarkDeltas()
-	{
-		for (int i=0; i<fBytes.length; i++)
-		{
-			// unset the change bit
-			if (fBytes[i].isChanged())
-				fBytes[i].setChanged(false);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#toString()
-	 */
-	public String toString()
-	{
-		StringBuffer buf = new StringBuffer();
-		buf.append(getAddress());
-		
-		buf.append(": "); //$NON-NLS-1$
-		
-		buf.append(getRawMemoryString());
-		
-		return buf.toString();
-	}
-	
-	public int getTableIndex()
-	{
-		return fTableIndex;
-	}
-
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java
deleted file mode 100644
index 43a2840..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPrefAction.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceNode;
-import org.eclipse.jface.preference.IPreferencePage;
-import org.eclipse.jface.preference.PreferenceDialog;
-import org.eclipse.jface.preference.PreferenceManager;
-import org.eclipse.jface.preference.PreferenceNode;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.actions.ActionDelegate;
-
-public class TableRenderingPrefAction extends ActionDelegate implements IViewActionDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IPreferencePage page = new TableRenderingPreferencePage(DebugUIMessages.TableRenderingPrefAction_0);
-		showPreferencePage("org.eclipse.debug.ui.tableRenderingPreferencepage", page);	 //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-	}
-	
-	protected void showPreferencePage(String id, IPreferencePage page) {
-		final IPreferenceNode targetNode = new PreferenceNode(id, page);
-		
-		PreferenceManager manager = new PreferenceManager();
-		manager.addToRoot(targetNode);
-		final PreferenceDialog dialog = new PreferenceDialog(DebugUIPlugin.getShell(), manager);
-		final boolean [] result = new boolean[] { false };
-		BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), new Runnable() {
-			public void run() {
-				dialog.create();
-				dialog.setMessage(targetNode.getLabelText());
-				result[0]= (dialog.open() == Window.OK);
-			}
-		});		
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPreferencePage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPreferencePage.java
deleted file mode 100644
index fcc4493..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPreferencePage.java
+++ /dev/null
@@ -1,221 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.preference.BooleanFieldEditor;
-import org.eclipse.jface.preference.FieldEditor;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.preference.IntegerFieldEditor;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.PlatformUI;
-
-public class TableRenderingPreferencePage extends PreferencePage implements
-	IPropertyChangeListener{
-	
-	Combo fColumnSize;
-	private int[] fColumnSizes = new int[] {1, 2, 4, 8, 16};
-	private BooleanFieldEditor fAutoLoadPref;
-	private IntegerFieldEditor fPageSizePref;
-	private Composite fBufferComposite;
-	
-	public TableRenderingPreferencePage(String title)
-	{
-		super(title);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createContents(Composite parent) {
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IDebugUIConstants.PLUGIN_ID + ".table_renderings_preference_page_context"); //$NON-NLS-1$
-		
-		Composite composite = new Composite(parent, SWT.NONE);
-		
-		Composite columnSizeComposite = new Composite(composite, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		columnSizeComposite.setLayout(layout);
-		GridData data = new GridData();
-		data.horizontalAlignment = SWT.FILL;
-		columnSizeComposite.setLayoutData(data);
-		
-		Label textLabel = new Label(columnSizeComposite, SWT.NONE);
-		textLabel.setText(DebugUIMessages.TableRenderingPreferencePage_0);
-		
-		fColumnSize = new Combo(columnSizeComposite, SWT.BORDER|SWT.READ_ONLY);
-
-		GridData columnLayout= new GridData();	
-		fColumnSize.setLayoutData(columnLayout);
-		
-		for (int i=0; i<fColumnSizes.length; i++)
-		{
-			fColumnSize.add(String.valueOf(fColumnSizes[i]));
-		}
-		
-		int colSize = getPreferenceStore().getInt(IDebugPreferenceConstants.PREF_COLUMN_SIZE);
-		int idx = 0;
-		
-		for (int i=0; i<fColumnSizes.length; i++)
-		{
-			if (fColumnSizes[i] == colSize)
-			{
-				idx = i;
-				break;
-			}
-		}
-		
-		fColumnSize.select(idx);				
-		
-		createSpacer(composite);
-        
-		fAutoLoadPref = new BooleanFieldEditor(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM, DebugUIMessages.TableRenderingPreferencePage_1,  composite);
-		fAutoLoadPref.setPreferenceStore(getPreferenceStore());
-		fAutoLoadPref.load();
-		
-		fBufferComposite = new Composite(composite, SWT.NONE);
-		data = new GridData();
-		data.horizontalAlignment = SWT.FILL;
-		fBufferComposite.setLayoutData(data);
-		
-		fPageSizePref = new IntegerFieldEditor(IDebugPreferenceConstants.PREF_TABLE_RENDERING_PAGE_SIZE, DebugUIMessages.TableRenderingPreferencePage_2, fBufferComposite);
-		fPageSizePref.setPreferenceStore(getPreferenceStore());
-		fPageSizePref.load();
-		
-		boolean autoLoad = getPreferenceStore().getBoolean(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM);
-		if (autoLoad)
-			fPageSizePref.setEnabled(false, fBufferComposite);
-		else
-			fPageSizePref.setEnabled(true, fBufferComposite);
-		
-		fAutoLoadPref.setPropertyChangeListener(this);
-		fPageSizePref.setPropertyChangeListener(this);
-		fPageSizePref.setValidRange(1, Integer.MAX_VALUE);
-		
-		return composite;
-	}
-
-	
-	public boolean performOk() {
-		int idx = fColumnSize.getSelectionIndex();
-		int colSize = fColumnSizes[idx];
-		getPreferenceStore().setValue(IDebugPreferenceConstants.PREF_COLUMN_SIZE, colSize);
-		fAutoLoadPref.store();
-		fPageSizePref.store();
-		return super.performOk();
-	}
-
-	protected void performDefaults() {
-		int colSize = IDebugPreferenceConstants.PREF_COLUMN_SIZE_DEFAULT;
-		getPreferenceStore().setValue(IDebugPreferenceConstants.PREF_COLUMN_SIZE, colSize);
-		int idx = -1;
-		for (int i=0; i<fColumnSizes.length; i++)
-		{
-			if (colSize == fColumnSizes[i])
-			{
-				idx = i;
-				break;
-			}
-		}
-		if (idx > 0)
-			fColumnSize.select(idx);
-		fAutoLoadPref.loadDefault();
-		fPageSizePref.loadDefault();
-		super.performDefaults();
-	}
-
-	protected IPreferenceStore doGetPreferenceStore() {
-		return DebugUIPlugin.getDefault().getPreferenceStore();
-	}
-
-    /**
-     * Adds in a spacer.
-     * 
-     * @param composite the parent composite
-     */
-    private void createSpacer(Composite composite) {
-        Label spacer = new Label(composite, SWT.NONE);
-        GridData spacerData = new GridData();
-        spacerData.horizontalSpan = 1;
-        spacer.setLayoutData(spacerData);
-    }
-
-	public void propertyChange(PropertyChangeEvent event) {
-		if (event.getProperty().equals(FieldEditor.VALUE))
-		{
-			if (event.getSource().equals(fAutoLoadPref))
-			{
-				boolean autoLoad = fAutoLoadPref.getBooleanValue();
-				if (autoLoad)
-				{
-					fPageSizePref.setEnabled(false, fBufferComposite);
-				}
-				else
-				{
-					fPageSizePref.setEnabled(true, fBufferComposite);
-				}
-				validatePageSize();
-			}
-		}
-		if (event.getProperty().equals(FieldEditor.VALUE))
-		{
-			if (event.getSource().equals(fPageSizePref))
-			{
-				validatePageSize();
-			}
-		}
-	}
-
-	private void validatePageSize() {
-		boolean autoLoad = fAutoLoadPref.getBooleanValue();
-		try {
-			int bufferSize = fPageSizePref.getIntValue();
-			if (!autoLoad && bufferSize < 1)
-			{
-				setValid(false);
-				setErrorMessage(DebugUIMessages.TableRenderingPreferencePage_3);
-			}
-			else
-			{
-				setValid(true);
-				setErrorMessage(null);
-				
-			}
-		} catch (NumberFormatException e) {
-			if (!autoLoad)
-			{
-				setValid(false);
-				setErrorMessage(DebugUIMessages.TableRenderingPreferencePage_4);
-			}
-		}
-	}
-
-	public void dispose() {
-
-		fAutoLoadPref.setPropertyChangeListener(null);
-		fPageSizePref.setPropertyChangeListener(null);
-		super.dispose();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPropertiesPage.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPropertiesPage.java
deleted file mode 100644
index 9fe9ead..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/TableRenderingPropertiesPage.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.ui.memory.AbstractTableRendering;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.ui.IWorkbenchPropertyPage;
-import org.eclipse.ui.dialogs.PropertyPage;
-
-public class TableRenderingPropertiesPage extends PropertyPage implements
-		IWorkbenchPropertyPage {
-
-	public TableRenderingPropertiesPage() {
-		super();
-	}
-
-	protected Control createContents(Composite parent) {
-		noDefaultAndApplyButton();
-		Composite composite = new Composite(parent, SWT.NONE);
-		if (getElement() instanceof AbstractTableRendering)
-		{
-			AbstractTableRendering rendering = (AbstractTableRendering)getElement();
-			GridLayout compositeLayout = new GridLayout();
-			compositeLayout.numColumns = 2;
-			compositeLayout.makeColumnsEqualWidth = false;
-			composite.setLayout(compositeLayout);
-			
-			GridData comositeSpec= new GridData();
-			comositeSpec.grabExcessVerticalSpace= true;
-			comositeSpec.grabExcessHorizontalSpace= true;
-			comositeSpec.horizontalAlignment= GridData.FILL;
-			comositeSpec.verticalAlignment= GridData.CENTER;
-			composite.setLayoutData(comositeSpec);
-			
-			String label = rendering.getLabel();
-			if (label.startsWith("&&")) //$NON-NLS-1$
-				label = label.replaceFirst("&&", "&");  //$NON-NLS-1$//$NON-NLS-2$
-			addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_1, label);
-						
-			MemoryByte[] bytes = rendering.getSelectedAsBytes();
-			if (bytes.length > 0) {
-				
-				String selectedAddress = "0x" + rendering.getSelectedAddress().toString(16).toUpperCase(); //$NON-NLS-1$
-				StringBuffer content = new StringBuffer(selectedAddress);
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_2, content.toString());
-				
-				String length = String.valueOf(rendering.getAddressableUnitPerColumn()) + " " + DebugUIMessages.TableRenderingPropertiesPage_3; //$NON-NLS-1$
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_4, length);
-				
-				String selectedContent = rendering.getSelectedAsString();
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_5, selectedContent);
-				
-				int addressableSize = rendering.getAddressableSize() * 8;
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_6, String.valueOf(addressableSize) + " " + DebugUIMessages.TableRenderingPropertiesPage_8); //$NON-NLS-1$
-				
-				boolean endianessKnown = bytes[0].isEndianessKnown();
-				int endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-				if (endianessKnown)
-					endianess = bytes[0].isBigEndian()?RenderingsUtil.BIG_ENDIAN:RenderingsUtil.LITTLE_ENDIAN;		
-				
-				boolean allBytesKnown = bytes[0].isHistoryKnown();
-				boolean allBytesUnchanged = bytes[0].isChanged()?false:true;
-				
-				boolean allBytesReadable = bytes[0].isReadable();
-				boolean allBytesWritable = bytes[0].isWritable();
-				
-				if (bytes.length > 1)
-				{
-					for (int i=1; i<bytes.length; i++)
-					{
-						if (endianessKnown)
-						{
-							int byteEndianess = bytes[i].isBigEndian()?RenderingsUtil.BIG_ENDIAN:RenderingsUtil.LITTLE_ENDIAN;
-							if (endianess != RenderingsUtil.ENDIANESS_UNKNOWN && endianess != byteEndianess)
-								endianess = RenderingsUtil.ENDIANESS_UNKNOWN;
-						}
-						
-						if (!bytes[i].isHistoryKnown())
-							allBytesKnown = false;
-						if (bytes[i].isChanged())
-							allBytesUnchanged = false;
-						
-						if (!bytes[i].isReadable())
-							allBytesReadable = false;
-						
-						if (!bytes[i].isWritable())
-							allBytesWritable = false;
-					}
-				}
-				
-				boolean isChanged = allBytesKnown && !allBytesUnchanged;
-				if (allBytesKnown)
-					addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_9, String.valueOf(isChanged));
-				else
-					addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_10, DebugUIMessages.TableRenderingPropertiesPage_11);
-				
-				String dataEndian = DebugUIMessages.TableRenderingPropertiesPage_12;
-				if (endianessKnown)
-				{	
-					if (endianess == RenderingsUtil.BIG_ENDIAN)
-						dataEndian = DebugUIMessages.TableRenderingPropertiesPage_13;
-					else if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-						dataEndian = DebugUIMessages.TableRenderingPropertiesPage_14;
-					else
-						dataEndian = DebugUIMessages.TableRenderingPropertiesPage_15;
-				}
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_16, dataEndian);
-				
-				
-				if (rendering instanceof AbstractIntegerRendering)
-				{
-					
-					AbstractIntegerRendering intRendering = (AbstractIntegerRendering)rendering;
-					String displayEndian = DebugUIMessages.TableRenderingPropertiesPage_17;
-					endianess = intRendering.getDisplayEndianess();
-					
-					if (endianess == RenderingsUtil.BIG_ENDIAN)
-						displayEndian = DebugUIMessages.TableRenderingPropertiesPage_18;
-					else if (endianess == RenderingsUtil.LITTLE_ENDIAN)
-						displayEndian = DebugUIMessages.TableRenderingPropertiesPage_19;
-					else
-					{
-						if (endianessKnown)
-							displayEndian = dataEndian;
-						else
-							displayEndian = DebugUIMessages.TableRenderingPropertiesPage_20;
-					}
-					addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_21, displayEndian);
-				}
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_22, String.valueOf(allBytesReadable));
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_23, String.valueOf(allBytesWritable));
-			}
-			else
-			{
-				String selectedAddress = "0x" + rendering.getSelectedAddress().toString(16).toUpperCase(); //$NON-NLS-1$
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_25, selectedAddress);
-				
-				int unitsPerLine = rendering.getAddressableUnitPerLine();
-				addProperty(composite, DebugUIMessages.TableRenderingPropertiesPage_26, String.valueOf(unitsPerLine));
-			}
-		}
-		
-		return composite;
-	}
-	
-	private void addProperty(Composite composite, String labelStr, String contentStr)
-	{
-		Label label = new Label(composite, SWT.NONE);
-		label.setText(labelStr);
-		Label text = new Label(composite, SWT.WRAP );
-		text.setText(contentStr);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRendering.java
deleted file mode 100644
index 2d126c5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRendering.java
+++ /dev/null
@@ -1,241 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Represent unsigned integer rendering
- */
-public class UnsignedIntegerRendering extends AbstractIntegerRendering {
-
-	/**
-	 * @param memBlock
-	 * @param renderingId
-	 */
-	public UnsignedIntegerRendering(String renderingId) {
-		super(renderingId);
-	}
-
-	private String convertToString(byte[] byteArray, int columnSize, int endianess)
-	{
-		String ret;
-		long result = 0;
-		
-		if (columnSize == 1)
-		{
-			result = byteArray[0];
-			result &= 0xff;
-		}
-		else if (columnSize == 2)
-		{	
-			result = RenderingsUtil.convertByteArrayToInt(byteArray, endianess);
-		}
-		else if (columnSize == 4)
-		{
-			result = RenderingsUtil.convertByteArrayToLong(byteArray, endianess);
-		}
-		else if (columnSize == 8)
-		{
-			BigInteger value = RenderingsUtil.convertByteArrayToUnsignedLong(byteArray, endianess);
-			return value.toString();				
-		}
-		else if (columnSize == 16)
-		{
-			BigInteger bigRet = RenderingsUtil.convertByteArrayToUnsignedBigInt(byteArray, endianess);
-			return bigRet.toString();
-		}
-		else
-		{
-			BigInteger bigRet = RenderingsUtil.convertByteArrayToUnsignedBigInt(byteArray, endianess, columnSize);
-			return bigRet.toString();			
-		}
-
-		ret = new Long(result).toString();
-		
-		return ret;
-	}	
-	
-	private byte[] convertToBytes(int colSize, String newValue, int endianess)
-	{
-		try {
-			byte[] bytes;
-			if (colSize == 1)
-			{
-				short i = Short.parseShort(newValue);
-				bytes = RenderingsUtil.convertShortToByteArray(i, endianess);
-				bytes = extractBytes(bytes, endianess, colSize);
-			}
-			// unsigned integer
-			else if (colSize == 2)
-			{	
-				int i = Integer.parseInt(newValue);
-				bytes = RenderingsUtil.convertIntToByteArray(i, endianess);
-				bytes = extractBytes(bytes, endianess, colSize);
-			}
-			else if (colSize == 4)
-			{	
-				long i = Long.parseLong(newValue);
-				bytes = RenderingsUtil.convertLongToByteArray(i, endianess);
-				bytes = extractBytes(bytes, endianess, colSize);
-			}
-			else if (colSize == 8)
-			{	
-				BigInteger i = new BigInteger(newValue);
-				bytes = RenderingsUtil.convertBigIntegerToByteArray(i, endianess);
-				bytes = extractBytes(bytes, endianess, colSize);
-			}
-			else if (colSize == 16)
-			{	
-				BigInteger i = new BigInteger(newValue);
-				bytes = RenderingsUtil.convertUnsignedBigIntegerToByteArray(i, endianess);
-				bytes = extractBytes(bytes, endianess, colSize);
-
-				return bytes;
-			}
-			else
-			{
-				BigInteger i = new BigInteger(newValue);
-				bytes = RenderingsUtil.convertUnsignedBigIntToByteArray(i, endianess, colSize);
-				bytes = extractBytes(bytes, endianess, colSize);
-				return bytes;				
-			}
-			
-			return bytes;
-		} catch (NumberFormatException e) {
-			throw e;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.extended.ui.AbstractMemoryRenderer#getString(java.lang.String, java.math.BigInteger, byte[])
-	 */
-	public String getString(String dataType, BigInteger address, MemoryByte[] data) {
-		
-		String paddedStr = DebugUIPlugin.getDefault().getPreferenceStore().getString(IDebugUIConstants.PREF_PADDED_STR);
-		boolean invalid = false;
-		for (int i=0; i<data.length; i++)
-		{
-			if (!data[i].isReadable())
-			{
-				invalid = true;
-				break;
-			}
-		}
-		
-		if (invalid)
-		{
-			StringBuffer strBuf = new StringBuffer();
-			for (int i=0; i<data.length; i++)
-			{
-				strBuf.append(paddedStr);
-			}
-			return strBuf.toString();
-		}
-		
-		int columnSize = getBytesPerColumn();
-		int endianess = getDisplayEndianess();
-		if (endianess == RenderingsUtil.ENDIANESS_UNKNOWN)
-			endianess = getBytesEndianess(data);
-		
-		byte[] byteArray = new byte[data.length];
-		for (int i=0; i<byteArray.length;i ++)
-		{
-			byteArray[i] = data[i].getValue();
-		}
-		
-		// if endianess is unknown, do not render, just return padded string		
-		if (RenderingsUtil.ENDIANESS_UNKNOWN == endianess)
-		{
-			StringBuffer strBuf = new StringBuffer();
-			for (int i=0; i<byteArray.length; i++)
-			{
-				strBuf.append(paddedStr);
-			}
-			return strBuf.toString();
-		}
-		
-		return convertToString(byteArray, columnSize, endianess);
-	}
-
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.extended.ui.AbstractMemoryRenderer#getBytes(java.lang.String, java.math.BigInteger, java.lang.String)
-	 */
-	public byte[] getBytes(String dataType, BigInteger address, MemoryByte[] currentValues, String data) {
-		
-		int columnSize = getBytesPerColumn();
-		int endianess = getDisplayEndianess();
-		if (endianess == RenderingsUtil.ENDIANESS_UNKNOWN)
-			endianess = getBytesEndianess(currentValues);
-		
-		// if endianess is unknown, do not try to render new data to bytes
-		if (endianess == RenderingsUtil.ENDIANESS_UNKNOWN)
-		{
-			byte[] retBytes = new byte[currentValues.length];
-			for (int i=0 ;i<currentValues.length; i++)
-				retBytes[i] = currentValues[i].getValue();
-			return retBytes;
-		}
-		
-		return convertToBytes(columnSize, data, endianess);
-	}
-	
-	private byte[] extractBytes(byte[] bytes, int endianess, int colSize) {
-		
-		if (colSize > bytes.length)
-			throw new NumberFormatException();
-		
-		// take the least significant 'colSize' bytes out of the bytes array
-		// if it's big endian, it's the last 'colSize' bytes
-		if (endianess == RenderingsUtil.BIG_ENDIAN)
-		{	
-			// check most significan bytes... if data has to be represented
-			// using more than 'colSize' number of bytes, this
-			// number is invalid, throw number format exception
-			for (int i=0; i<colSize; i++)
-			{
-				if (bytes[i] != 0)
-					throw new NumberFormatException();
-			}
-			
-			byte[] copy = new byte[colSize];
-			for (int j=0, k=bytes.length-colSize; j<copy.length && k<bytes.length; j++, k++)
-			{	
-				copy[j] = bytes[k]; 
-			}
-			bytes = copy;
-		}
-		// if it's little endian, it's the first 'colSize' bytes
-		else
-		{
-			// check most significan bytes... if data has to be represented
-			// using more than 'colSize' number of bytes, this
-			// number is invalid, throw number format exception
-			for (int i=colSize; i<bytes.length; i++)
-			{
-				if (bytes[i] != 0)
-					throw new NumberFormatException();
-			}
-			
-			byte[] copy = new byte[colSize];
-			for (int j=0; j<copy.length; j++)
-			{	
-				copy[j] = bytes[j]; 
-			}
-			bytes = copy;							
-		}
-		return bytes;
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRenderingTypeDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRenderingTypeDelegate.java
deleted file mode 100644
index fccbe93..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/memory/renderings/UnsignedIntegerRenderingTypeDelegate.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.memory.renderings;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.ui.memory.IMemoryRendering;
-import org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate;
-
-/**
- * Delegate for creating an unsigned integer rendering
- * @since 3.1
- */
-public class UnsignedIntegerRenderingTypeDelegate implements
-		IMemoryRenderingTypeDelegate {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate#createRendering(java.lang.String)
-	 */
-	public IMemoryRendering createRendering(String id) throws CoreException {
-		return new UnsignedIntegerRendering(id);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/DeferredRegisterViewStackFrame.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/DeferredRegisterViewStackFrame.java
deleted file mode 100644
index 2ca1bca..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/DeferredRegisterViewStackFrame.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.registers;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredStackFrame;
-
-public class DeferredRegisterViewStackFrame extends DeferredStackFrame {
-    
-	/* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-     */
-    public Object[] getChildren(Object parent) {
-        try {
-            return ((IStackFrame)parent).getRegisterGroups();
-        } catch (DebugException e) {
-        }
-        return EMPTY;
-    }
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.elements.adapters.DeferredStackFrame#hasChildren(java.lang.Object)
-	 */
-	protected boolean hasChildren(Object child) {
-		IRegisterGroup group = (IRegisterGroup) child;
-		try {
-			return group.hasRegisters();
-		} catch (DebugException e) {
-		}
-		return false;
-	}    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersView.java
deleted file mode 100644
index b9c6a24..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersView.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * QNX Software Systems - Initial API and implementation
-***********************************************************************/
-package org.eclipse.debug.internal.ui.views.registers;
-
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.internal.ui.views.AbstractViewerState;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariablesContentProvider;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.debug.internal.ui.views.variables.VariablesViewEventHandler;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.viewers.Viewer;
-
-/**
- * Displays registers and their values with a detail area.
- */
-public class RegistersView extends VariablesView {
-	
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#createContentProvider()
-	 */
-	protected RemoteVariablesContentProvider createContentProvider(Viewer viewer) {
-		RemoteRegistersViewContentProvider cp = new RemoteRegistersViewContentProvider((RemoteTreeViewer) viewer, getSite(), this);
-//		TODO
-//		cp.setExceptionHandler(this);
-		return cp;
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
-	 */
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.REGISTERS_VIEW;
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.AbstractDebugView#configureToolBar(org.eclipse.jface.action.IToolBarManager)
-	 */
-	protected void configureToolBar(IToolBarManager tbm) {
-		super.configureToolBar(tbm);
-		tbm.add(new Separator(IDebugUIConstants.EMPTY_REGISTER_GROUP));		
-		tbm.add(new Separator(IDebugUIConstants.REGISTER_GROUP));
-	}
-
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#getDetailPanePreferenceKey()
-	 */
-	protected String getDetailPanePreferenceKey() {
-		return IDebugPreferenceConstants.REGISTERS_DETAIL_PANE_ORIENTATION;
-	}
-
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#getToggleActionLabel()
-	 */
-	protected String getToggleActionLabel() {
-		return RegistersViewMessages.RegistersView_0; //$NON-NLS-1$
-	}
-
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#getViewerState()
-	 */
-	protected AbstractViewerState getViewerState() {
-		return new RegistersViewerState(getVariablesViewer());
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.variables.VariablesView#createEventHandler()
-	 */
-	protected VariablesViewEventHandler createEventHandler() {
-		return new RegistersViewEventHandler(this);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewEventHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewEventHandler.java
deleted file mode 100644
index a5383c0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewEventHandler.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.registers;
-
-import java.util.ArrayList;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.views.variables.VariablesViewEventHandler;
-import org.eclipse.debug.ui.AbstractDebugView;
-
-public class RegistersViewEventHandler extends VariablesViewEventHandler {
-
-	public RegistersViewEventHandler(AbstractDebugView view) {
-		super(view);
-	}
-
-	protected DebugEvent[] filterEvents(DebugEvent[] events) {
-		ArrayList filtered = null;
-		for (int i=0; i<events.length; i++) {
-			// filter out change events 
-			if (events[i].getKind() == DebugEvent.CHANGE) {
-				// IRegister is a subclass to IVariable, no need to check for that
-				if (!(events[i].getSource() instanceof IStackFrame ||
-					  events[i].getSource() instanceof IVariable ||
-					  events[i].getSource() instanceof IRegisterGroup)) {
-					if (events.length == 1) {
-						return EMPTY_EVENT_SET;
-					}
-					if (filtered == null) {
-						filtered = new ArrayList();
-					}
-					filtered.add(events[i]);
-				}
-			}
-		}
-		if (filtered == null) {
-			return events;
-		}
-		if (filtered.size() == events.length) {
-			return EMPTY_EVENT_SET;
-		}
-		ArrayList all = new ArrayList(events.length);
-		for (int i = 0; i < events.length; i++) {
-			all.add(events[i]);
-		}
-		all.removeAll(filtered);
-		return (DebugEvent[]) all.toArray(new DebugEvent[all.size()]);		
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.java
deleted file mode 100644
index fee5012..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * QNX Software Systems - Initial API and implementation
- * IBM Corporation - Bug 90318
- ***********************************************************************/
-package org.eclipse.debug.internal.ui.views.registers;
-
-import org.eclipse.osgi.util.NLS;
-
-public class RegistersViewMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.views.registers.RegistersViewMessages";//$NON-NLS-1$
-
-    public static String RegistersView_0;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, RegistersViewMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.properties
deleted file mode 100644
index 2edee69..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewMessages.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-#########################################################################

-# Copyright (c) 2004, 2005 QNX Software Systems and others.

-# All rights reserved.   This program and the accompanying materials

-# are made available under the terms of the Eclipse Public License v1.0

-# which accompanies this distribution, and is available at

-# http://www.eclipse.org/legal/epl-v10.html

-#

-# Contributors:

-# QNX Software Systems - Initial API and implementation

-##########################################################################

-RegistersView_0=Registers View Only

diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewerState.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewerState.java
deleted file mode 100644
index c07baa0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RegistersViewerState.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * QNX Software Systems - Initial API and implementation
-***********************************************************************/
-package org.eclipse.debug.internal.ui.views.registers;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.views.AbstractViewerState;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.widgets.TreeItem;
-
-/**
- * Memento of the expanded and selected items in a registers viewer.
- * 
- */
-public class RegistersViewerState extends AbstractViewerState {
-
-	public RegistersViewerState( TreeViewer viewer ) {
-		super( viewer );
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.cdt.debug.internal.ui.views.AbstractViewerState#encodeElement(org.eclipse.swt.widgets.TreeItem)
-	 */
-	public IPath encodeElement( TreeItem item ) throws DebugException {
-		Object obj = item.getData();
-		String name = ( obj instanceof IRegisterGroup ) ? 
-						((IRegisterGroup)obj).getName() : ((IVariable)obj).getName();
-		IPath path = new Path( name );
-		TreeItem parent = item.getParentItem();
-		while( parent != null ) {
-			obj = parent.getData();
-			name = ( obj instanceof IRegisterGroup ) ? 
-					 ((IRegisterGroup)obj).getName() : ((IVariable)obj).getName();
-			path = new Path( name ).append( path );
-			parent = parent.getParentItem();
-		}
-		return path;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.cdt.debug.internal.ui.views.AbstractViewerState#decodePath(org.eclipse.core.runtime.IPath, org.eclipse.jface.viewers.TreeViewer)
-	 */
-	public Object decodePath( IPath path, TreeViewer viewer ) throws DebugException {
-		ITreeContentProvider contentProvider = (ITreeContentProvider)viewer.getContentProvider();
-		String[] names = path.segments();
-		Object parent = viewer.getInput();
-		Object element = null;
-		for( int i = 0; i < names.length; i++ ) {
-			element = null;
-            Object[] children = null;
-            if (viewer instanceof RemoteTreeViewer) {
-                children = ((RemoteTreeViewer) viewer).getCurrentChildren(parent);
-            } else {
-                children = contentProvider.getChildren(parent);
-            }
-			String name = names[i];
-			for( int j = 0; j < children.length; j++ ) {
-				if ( children[j] instanceof IRegisterGroup ) {	
-					if ( name.equals( ((IRegisterGroup)children[j]).getName() ) ) {
-						element = children[j];
-						break;
-					}
-				}
-				else if ( children[j] instanceof IVariable ) {	
-					if ( name.equals( ((IVariable)children[j]).getName() ) ) {
-						element = children[j];
-						break;
-					}
-				}
-			}
-			if ( element == null ) {
-				return null;
-			} 
-			parent = element;
-		}
-		return element;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegisterContentManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegisterContentManager.java
deleted file mode 100644
index 83b3e51..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegisterContentManager.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.registers;
-
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariableContentManager;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-
-public class RemoteRegisterContentManager extends RemoteVariableContentManager {
-    public RemoteRegisterContentManager(ITreeContentProvider provider, RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-        super(provider, viewer, site, view);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.variables.RemoteVariableContentManager#getAdapter(java.lang.Object)
-     */
-    protected IDeferredWorkbenchAdapter getAdapter(Object element) {
-        if (element instanceof IStackFrame) {
-            return new DeferredRegisterViewStackFrame();
-        }
-        return super.getAdapter(element);
-    }    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegistersViewContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegistersViewContentProvider.java
deleted file mode 100644
index ece2bd5..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/registers/RemoteRegistersViewContentProvider.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2004, 2005 QNX Software Systems and others.
- * All rights reserved.   This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * QNX Software Systems - Initial API and implementation
-***********************************************************************/
-package org.eclipse.debug.internal.ui.views.registers;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IRegisterGroup;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.RemoteTreeContentManager;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.internal.ui.views.variables.RemoteVariablesContentProvider;
-import org.eclipse.debug.internal.ui.views.variables.VariablesView;
-import org.eclipse.ui.IWorkbenchPartSite;
-
-/**
- * Provides contents for the registers view
- */
-public class RemoteRegistersViewContentProvider extends RemoteVariablesContentProvider {
-
-	public RemoteRegistersViewContentProvider(RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-		super(viewer, site, view);
-	}
-
-	/**
-	 * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
-	 */
-	public boolean hasChildren(Object element) {
-		try {
-			if (element instanceof IStackFrame) {
-				return ((IStackFrame)element).hasRegisterGroups();
-			}
-			if (element instanceof IRegisterGroup) {
-				return ((IRegisterGroup)element).hasRegisters();
-			}
-		} catch (DebugException de) {
-			DebugUIPlugin.log(de);
-			return false;
-		}
-		return super.hasChildren(element);
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.variables.RemoteVariablesContentProvider#createContentManager(org.eclipse.debug.internal.ui.views.RemoteTreeViewer, org.eclipse.ui.IWorkbenchPartSite, org.eclipse.debug.internal.ui.views.variables.VariablesView)
-     */
-    protected RemoteTreeContentManager createContentManager(RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-        return new RemoteRegisterContentManager(this, viewer, site, view);
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/AvailableLogicalStructuresAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/AvailableLogicalStructuresAction.java
deleted file mode 100644
index 5bfbacd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/AvailableLogicalStructuresAction.java
+++ /dev/null
@@ -1,172 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILogicalStructureType;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IMenuCreator;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Drop down action that displays available logical structures for a selected
- * variable or expression.
- */
-public class AvailableLogicalStructuresAction extends Action implements IMenuCreator {
-	
-	private VariablesView fView;
-	private Menu fMenu;
-	private IValue fValue;
-	private ILogicalStructureType[] fTypes;
-
-	public AvailableLogicalStructuresAction(VariablesView view) {
-		setView(view);
-		setToolTipText(VariablesViewMessages.AvailableLogicalStructuresAction_0); //$NON-NLS-1$
-		setText(VariablesViewMessages.AvailableLogicalStructuresAction_1); //$NON-NLS-1$
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.VARIABLES_SELECT_LOGICAL_STRUCTURE);
-		setEnabled(false);
-		setMenuCreator(this);
-		init();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-	}
-	
-	protected VariablesView getView() {
-		return fView;
-	}
-
-	protected void setView(VariablesView view) {
-		fView = view;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#dispose()
-	 */
-	public void dispose() {
-		if (fMenu != null) {
-			fMenu.dispose();
-		}
-		fView= null;
-		fValue = null;
-		fTypes = null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Control)
-	 */
-	public Menu getMenu(Control parent) {
-		return null;
-	}
-
-	protected void addActionToMenu(Menu parent, Action action) {
-		ActionContributionItem item= new ActionContributionItem(action);
-		item.fill(parent, -1);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu)
-	 */
-	public Menu getMenu(Menu parent) {
-		if (fMenu != null) {
-			fMenu.dispose();
-		}
-		
-		fMenu= new Menu(parent);
-		ILogicalStructureType[] types = getTypes();
-        ILogicalStructureType enabledType = DebugPlugin.getDefaultStructureType(types);
-		if (types != null && types.length > 0) {
-			for (int i = 0; i < types.length; i++) {
-                ILogicalStructureType type= types[i];
-				Action action = new SelectLogicalStructureAction(getView(), type, getValue(), types);
-                action.setChecked(enabledType == type);
-                StringBuffer label= new StringBuffer();
-                //add the numerical accelerator
-                if (i < 9) {
-                    label.append('&');
-                    label.append(i + 1);
-                    label.append(' ');
-                }
-                label.append(action.getText());
-                action.setText(label.toString());
-				addActionToMenu(fMenu, action);
-			}
-		}
-		return fMenu;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
-	 */
-	public void init() {
-		setValue(null);
-		setTypes(null);
-		if (getView().isShowLogicalStructure()) {
-			ISelection s = getView().getVariablesViewer().getSelection();
-			if (s instanceof IStructuredSelection) {
-				IStructuredSelection selection = (IStructuredSelection) s;
-				if (selection.size() == 1) {
-					Object obj = selection.getFirstElement();
-					IValue value = null;
-					if (obj instanceof IVariable) {
-						IVariable var = (IVariable) obj;
-						try {
-							value = var.getValue();
-						} catch (DebugException e) {
-						}
-					} else if (obj instanceof IExpression) {
-						IExpression expression = (IExpression)obj;
-						value = expression.getValue();
-					}
-					if (value != null) {
-						ILogicalStructureType[] types = DebugPlugin.getLogicalStructureTypes(value);
-						if (types.length > 0) {
-							setTypes(types);
-							setValue(value);
-							setEnabled(true);
-							return;
-						}
-					}
-				}
-			}
-		}
-		setEnabled(false);
-	}
-	
-	protected ILogicalStructureType[] getTypes() {
-		return fTypes;
-	}
-	
-	private void setTypes(ILogicalStructureType[] types) {
-		fTypes = types;
-	}
-	
-	protected IValue getValue() {
-		return fValue;
-	}
-	
-	private void setValue(IValue value) {
-		fValue = value;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/DetailPaneWordWrapAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/DetailPaneWordWrapAction.java
deleted file mode 100644
index dbd0ce4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/DetailPaneWordWrapAction.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.jface.action.IAction;
-
-/**
- * An action delegate that toggles the state of its viewer to
- * use word wrap in the details pane.
- */
-public class DetailPaneWordWrapAction extends VariableViewToggleAction {
-	
-	/**
-	 * @see VariableFilterAction#getPreferenceKey()
-	 */
-	protected String getPreferenceKey() {
-		return IDebugPreferenceConstants.PREF_DETAIL_PANE_WORD_WRAP; 
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		super.run(action);
-		((VariablesView)getView()).toggleDetailPaneWordWrap(action.isChecked());
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IValueContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IValueContentProvider.java
deleted file mode 100644
index 932e16d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IValueContentProvider.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * Experimental: Provides logical content for a value, rather than all content.
- * 
- * @since 3.0
- */
-public interface IValueContentProvider {
-
-	/**
-	 * Returns a logical set of variables contained in the given value.
-	 * 
-	 * @param value
-	 * @return
-	 */
-	public IVariable[] getVariables(IValue value);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedValuePartition.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedValuePartition.java
deleted file mode 100644
index 47b8311..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedValuePartition.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IIndexedValue;
-import org.eclipse.debug.core.model.IVariable;
-
-/**
- * A parition (subrange) of values of an indexed value 
- */
-public class IndexedValuePartition implements IIndexedValue {
-
-	// the starting offset of this parition, into the associated collection
-	private int fOffset;
-	
-	// the length of this partition
-	private int fLength;
-
-	// the indexed value
-	private IIndexedValue fValue;
-	
-	/**
-	 * Creates a parition for an indexed value.
-	 * 
-	 * @param value indexed value
-	 * @param offset beginning offset of this partition (into the value)
-	 * @param length the length of this parition
-	 */
-	public IndexedValuePartition(IIndexedValue value, int offset, int length) {
-		fValue = value;
-		fOffset = offset;
-		fLength = length;
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IIndexedValue#getSize()
-	 */
-	public int getSize() {
-		return fLength;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IIndexedValue#getVariable(int)
-	 */
-	public IVariable getVariable(int offset) throws DebugException {
-		return fValue.getVariable(offset);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValue#getReferenceTypeName()
-	 */
-	public String getReferenceTypeName() throws DebugException {
-		return fValue.getReferenceTypeName();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValue#getValueString()
-	 */
-	public String getValueString() {
-		return ""; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValue#getVariables()
-	 */
-	public IVariable[] getVariables() throws DebugException {
-		return getVariables(0, fLength);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValue#hasVariables()
-	 */
-	public boolean hasVariables() {
-		return fLength > 0;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValue#isAllocated()
-	 */
-	public boolean isAllocated() throws DebugException {
-		return fValue.isAllocated();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IDebugElement#getDebugTarget()
-	 */
-	public IDebugTarget getDebugTarget() {
-		return fValue.getDebugTarget();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IDebugElement#getLaunch()
-	 */
-	public ILaunch getLaunch() {
-		return fValue.getLaunch();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IDebugElement#getModelIdentifier()
-	 */
-	public String getModelIdentifier() {
-		return fValue.getModelIdentifier();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		return fValue.getAdapter(adapter);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IIndexedValue#getVariables(int, int)
-	 */
-	public IVariable[] getVariables(int offset, int length) throws DebugException {
-		return fValue.getVariables(fOffset + offset, length);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IIndexedValue#getInitialOffset()
-	 */
-	public int getInitialOffset() {
-		return fOffset;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedVariablePartition.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedVariablePartition.java
deleted file mode 100644
index 7e7f988..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/IndexedVariablePartition.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IIndexedValue;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * A variable containing a subset/range of values from an indexed value
- * (<code>IIndexedValue</code>).
- */
-public class IndexedVariablePartition implements IVariable {
-	
-	// the starting offset of this parition, into the associated collection
-	private int fOffset;
-	
-	// the length of this partition
-	private int fLength;
-	
-	// the root variable or expression containing the indexed value
-	private IDebugElement fOriginalVariable;
-
-	// the indexed value
-	private IIndexedValue fOriginalValue;
-	
-	// sub-range of values
-	private IIndexedValue fValuePartition;
-	
-	private String fName = null;
-	
-	/**
-	 * Creates a parition for an indexed value.
-	 * 
-	 * @param variable variable or expression containing the indexed value
-	 * @param value indexed value
-	 * @param offset beginning offset of this partition (into the value)
-	 * @param length the length of this parition
-	 */
-	public IndexedVariablePartition(IDebugElement variable, IIndexedValue value, int offset, int length) {
-		fOriginalVariable = variable;
-		fOriginalValue = value;
-		fOffset = offset;
-		fLength = length;
-		fValuePartition = new IndexedValuePartition(value, offset, length);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IVariable#getValue()
-	 */
-	public IValue getValue() {
-		return fValuePartition;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IVariable#getName()
-	 */
-	public String getName() {
-		if (fName == null) {
-			StringBuffer buf = new StringBuffer();
-			buf.append("["); //$NON-NLS-1$
-			buf.append(fOffset);
-			buf.append("..."); //$NON-NLS-1$
-			buf.append(fOffset + fLength - 1);
-			buf.append("]"); //$NON-NLS-1$
-			fName = buf.toString();
-		}
-		return fName;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IVariable#getReferenceTypeName()
-	 */
-	public String getReferenceTypeName() throws DebugException {
-		if (fOriginalVariable instanceof IVariable) {
-			IVariable variable = (IVariable) fOriginalVariable;
-			return variable.getReferenceTypeName();
-		}
-		return ""; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IVariable#hasValueChanged()
-	 */
-	public boolean hasValueChanged() {
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IDebugElement#getModelIdentifier()
-	 */
-	public String getModelIdentifier() {
-		return fOriginalValue.getModelIdentifier();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IDebugElement#getDebugTarget()
-	 */
-	public IDebugTarget getDebugTarget() {
-		return fOriginalValue.getDebugTarget();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IDebugElement#getLaunch()
-	 */
-	public ILaunch getLaunch() {
-		return fOriginalValue.getLaunch();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValueModification#setValue(java.lang.String)
-	 */
-	public void setValue(String expression) throws DebugException {
-		throw new DebugException(new Status(IStatus.ERROR, IDebugUIConstants.PLUGIN_ID, IDebugUIConstants.INTERNAL_ERROR, VariablesViewMessages.IndexedVariablePartition_4, null)); //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValueModification#setValue(org.eclipse.debug.core.model.IValue)
-	 */
-	public void setValue(IValue value) throws DebugException {
-		throw new DebugException(new Status(IStatus.ERROR, IDebugUIConstants.PLUGIN_ID, IDebugUIConstants.INTERNAL_ERROR, VariablesViewMessages.IndexedVariablePartition_4, null)); //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValueModification#supportsValueModification()
-	 */
-	public boolean supportsValueModification() {
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValueModification#verifyValue(java.lang.String)
-	 */
-	public boolean verifyValue(String expression) {
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.model.IValueModification#verifyValue(org.eclipse.debug.core.model.IValue)
-	 */
-	public boolean verifyValue(IValue value) {
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		return fOriginalVariable.getAdapter(adapter);
-	}
-
-	/* (non-Javadoc)
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object obj) {
-		if (obj instanceof IndexedVariablePartition) {
-			IndexedVariablePartition partition = (IndexedVariablePartition)obj;
-			return fOriginalVariable.equals(partition.fOriginalVariable) &&
-				fOffset == partition.fOffset && fLength == partition.fLength;
-		}
-		return false;
-	}
-
-	/* (non-Javadoc)
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return fOriginalVariable.hashCode() + fOffset;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthAction.java
deleted file mode 100644
index 68bc22c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthAction.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-public class MaxDetailsLengthAction implements IViewActionDelegate {
-	
-	private IViewPart fView;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		fView = view;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		MaxDetailsLengthDialog dialog = new MaxDetailsLengthDialog(fView.getSite().getShell());
-		dialog.open();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthDialog.java
deleted file mode 100644
index 28b7ff4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/MaxDetailsLengthDialog.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.jface.dialogs.InputDialog;
-import org.eclipse.swt.widgets.Shell;
-
-public class MaxDetailsLengthDialog extends InputDialog {
-
-	/**
-	 * Cosntructs a new dialog on the given shell.
-	 * 
-	 * @param parent shell
-	 */
-	public MaxDetailsLengthDialog(Shell parent) {
-		super(parent, VariablesViewMessages.MaxDetailsLengthDialog_0, VariablesViewMessages.MaxDetailsLengthDialog_1,
-				Integer.toString(DebugUIPlugin.getDefault().getPreferenceStore().getInt(IInternalDebugUIConstants.PREF_MAX_DETAIL_LENGTH)),
-				new IInputValidator() {
-					public String isValid(String newText) {
-						try {
-							int num = Integer.parseInt(newText);
-							if (num < 0) {
-								return VariablesViewMessages.MaxDetailsLengthDialog_2;
-							}
-						} catch (NumberFormatException e) {
-							return VariablesViewMessages.MaxDetailsLengthDialog_3;
-						}
-						return null;
-					}
-				
-				});
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		String text = getValue();
-		try {
-			int max = Integer.parseInt(text);
-			DebugUIPlugin.getDefault().getPreferenceStore().setValue(IInternalDebugUIConstants.PREF_MAX_DETAIL_LENGTH, max);
-		} catch (NumberFormatException e) {
-		}
-		super.okPressed();
-	}
-	
-	
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariableContentManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariableContentManager.java
deleted file mode 100644
index 358cddd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariableContentManager.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.elements.adapters.DeferredVariableLogicalStructure;
-import org.eclipse.debug.internal.ui.views.RemoteTreeContentManager;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.internal.progress.PendingUpdateAdapter;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-import org.eclipse.ui.progress.IElementCollector;
-
-/**
- * Remote content manager for variables. Creates an appropriate adapter for
- * logical structures.
- */
-public class RemoteVariableContentManager extends RemoteTreeContentManager {
-
-    protected VariablesView fView;
-    private IDeferredWorkbenchAdapter fVariableLogicalStructureAdapter = new DeferredVariableLogicalStructure();
-    
-    private Set fHasChildren = new HashSet();
-    private Set fNoChildren = new HashSet();
-    
-    /**
-     * Special collector to also collect accurate "has children" information. 
-     */
-    public class VariableCollector extends  RemoteTreeContentManager.Collector {            
-
-    	public VariableCollector(Object parent) {
-        	super(parent);
-        }
-        
-        /**
-         * Notification the given element has children
-         * 
-         * @param element
-         */
-        public void setHasChildren(Object element, boolean children) {
-        	synchronized (fHasChildren) {
-            	if (children) {
-            		fHasChildren.add(element);
-            		fNoChildren.remove(element);
-            	} else {
-            		fNoChildren.add(element);
-            		fHasChildren.remove(element);
-            	}
-			}
-        }
-
-    }
-    
-    /**
-     * Constructs a remote content manager for a variables view.
-     */
-    public RemoteVariableContentManager(ITreeContentProvider provider, RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-        super(provider, viewer, site);
-        fView = view;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.progress.DeferredTreeContentManager#getAdapter(java.lang.Object)
-     */
-    protected IDeferredWorkbenchAdapter getAdapter(Object element) {
-        if (element instanceof IVariable && fView !=null && fView.isShowLogicalStructure()) {
-            return fVariableLogicalStructureAdapter;
-        }
-        return super.getAdapter(element);
-    }
-    
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.DeferredTreeContentManager#createElementCollector(java.lang.Object, org.eclipse.ui.internal.progress.PendingUpdateAdapter)
-	 */
-	protected IElementCollector createElementCollector(Object parent, PendingUpdateAdapter placeholder) {
-		return new VariableCollector(parent);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.DeferredTreeContentManager#mayHaveChildren(java.lang.Object)
-	 */
-	public boolean mayHaveChildren(Object element) {
-		synchronized (fHasChildren) {
-			if (fHasChildren.contains(element)) {
-				return true;
-			} else if (fNoChildren.contains(element)) {
-				return false;
-			}
-		}
-		return super.mayHaveChildren(element);
-	}
-    
-	/**
-	 * Called to clear the "has children" state cache when the view input changes.
-	 */
-    public void clearHasChildrenCache() {
-        synchronized (fHasChildren) {
-            fHasChildren.clear();
-            fNoChildren.clear();
-        }
-    }    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariablesContentProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariablesContentProvider.java
deleted file mode 100644
index 03fa80c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/RemoteVariablesContentProvider.java
+++ /dev/null
@@ -1,224 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.debug.internal.ui.views.IDebugExceptionHandler;
-import org.eclipse.debug.internal.ui.views.RemoteTreeContentManager;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.model.BaseWorkbenchContentProvider;
-
-/**
- * Provide the contents for a variables viewer.
- */
-public class RemoteVariablesContentProvider extends BaseWorkbenchContentProvider {
-	
-	/**
-	 * 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;
-	
-	/**
-	 * Flag indicating whether contributed content providers should be used or not.
-	 */
-	private boolean fUseObjectBrowsers;
-	
-	/**
-	 * Remote content manager to retrieve content in the background.
-	 */
-	private RemoteVariableContentManager fManager;
-	
-	/**
-	 * Constructs a new provider
-	 */
-	public RemoteVariablesContentProvider(RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-	    fManager = (RemoteVariableContentManager)createContentManager(viewer, site, view); 
-		fParentCache = new HashMap(10);		
-	}
-	
-	protected RemoteTreeContentManager createContentManager(RemoteTreeViewer viewer, IWorkbenchPartSite site, VariablesView view) {
-		return new RemoteVariableContentManager(this, viewer, site, view);
-	}
-
-	/**
-	 * @see ITreeContentProvider#getChildren(Object)
-	 */
-	public Object[] getChildren(Object parent) {
-        Object[] children = fManager.getChildren(parent);
-        if (children == null) {
-            children = super.getChildren(parent);
-        }
-        if (children != null) {
-			cache(parent, children);
-			return children;
-		}
-        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++) {
-			Object child = children[i];
-			// avoid cycles in the cache, which can happen for
-			// recursive data structures
-			if (!fParentCache.containsKey(child)) {
-				fParentCache.put(child, parent);
-			}
-		}		
-	}
-	
-	/**
-	 * @see ITreeContentProvider#getParent(Object)
-	 */
-	public Object getParent(Object item) {
-		return fParentCache.get(item);
-	}
-
-	/**
-	 * Unregisters this content provider from the debug plugin so that
-	 * this object can be garbage-collected.
-	 */
-	public void dispose() {
-		fManager.clearHasChildrenCache();
-		fManager.cancel();
-		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) {
-			return;
-		}
-		for (int i = 0; i < children.length; i++) {
-			fParentCache.remove(children[i]);	
-		}
-	}
-	
-	/**
-	 * @see ITreeContentProvider#hasChildren(Object)
-	 */
-	public boolean hasChildren(Object element) {
-        return fManager.mayHaveChildren(element);
-	}
-		
-	/**
-	 * @see IContentProvider#inputChanged(Viewer, Object, Object)
-	 */
-	public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		clearCache();
-		fManager.cancel();
-        fManager.clearHasChildrenCache();
-	}
-	
-	/**
-	 * Return all cached decendants of the given parent.
-	 * 
-	 * @param parent the element whose decendants are to be calculated
-	 * @return list of decendants that have been cached for
-	 *  the given parent
-	 */
-	public List getCachedDecendants(Object parent) {
-		Iterator children = fParentCache.keySet().iterator();
-		List cachedChildren = new ArrayList(10);
-		while (children.hasNext()) {
-			Object child = children.next();
-			if (isCachedDecendant(child, parent)) {
-				cachedChildren.add(child);
-			}
-		}
-		return cachedChildren;
-	}
-	
-	/**
-	 * Returns whether the given child is a cached descendant
-	 * of the given parent.
-	 * 
-	 * @return whether the given child is a cached descendant
-	 * of the given parent
-	 */
-	protected boolean isCachedDecendant(Object child, Object parent) {
-		Object p = getParent(child);
-		while (p != null) {
-			if (p.equals(parent)) {
-				return true;
-			}
-			p = getParent(p);
-		}
-		return false;
-	}
-
-	/**
-	 * 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;
-	}	
-	
-	/** 
-	 * Show logical structure of values 
-	 */
-	public void setShowLogicalStructure(boolean flag) {
-		fUseObjectBrowsers = flag;
-	}
-	
-	public boolean isShowLogicalStructure() {
-		return fUseObjectBrowsers;
-	}
-	
-	public RemoteVariableContentManager getContentManager() {
-		return fManager;
-	}
-	
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java
deleted file mode 100644
index 80bc7b2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/SelectLogicalStructureAction.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILogicalStructureType;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.swt.custom.BusyIndicator;
-
-/**
- * Action to set the logical structure to display for a variable (enables/disables
- * logical structure types for the same variable).
- */
-public class SelectLogicalStructureAction extends Action {
-	
-	private VariablesView fView;
-    private ILogicalStructureType fType;
-    private ILogicalStructureType[] fAvailableTypes;
-
-	/**
-	 * 
-	 * @param view Variables view
-	 * @param type the type that this action will turn on/off
-	 * @param value the value for which logical structures are to be chosen
-	 * @param availableTypes the set of logical structure types that are being offered
-     *  to the user in addition to the type controlled by this action
-	 */
-	public SelectLogicalStructureAction(VariablesView view, ILogicalStructureType type, IValue value, ILogicalStructureType[] availableTypes) {
-		super(type.getDescription(value), IAction.AS_CHECK_BOX);
-		setView(view);
-        fAvailableTypes= availableTypes;
-		fType= type;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		valueChanged();
-	}
-
-	private void valueChanged() {
-		if (!getView().isAvailable()) {
-			return;
-		}
-		BusyIndicator.showWhile(getView().getViewer().getControl().getDisplay(), new Runnable() {
-			public void run() {
-                // Checking this action sets the type to fType, unchecking it sets the type
-                // to null ("none selected")
-                ILogicalStructureType type= null;
-                if (isChecked()) {
-                    type= fType;
-                }
-                DebugPlugin.setDefaultStructureType(fAvailableTypes, type);
-				getView().getViewer().refresh();					
-			}
-		});			
-	}
-	
-	protected VariablesView getView() {
-		return fView;
-	}
-
-	protected void setView(VariablesView view) {
-		fView = view;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/StatusLineContributionItem.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/StatusLineContributionItem.java
deleted file mode 100644
index 224fcaa..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/StatusLineContributionItem.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-
-import org.eclipse.jface.action.ContributionItem;
-import org.eclipse.jface.action.IContributionManager;
-import org.eclipse.jface.action.StatusLineLayoutData;
-
-public class StatusLineContributionItem extends ContributionItem {
-
-	public final static int DEFAULT_CHAR_WIDTH = 40;
-
-	private int charWidth;
-	private CLabel label;
-	/**
-	 * The composite into which this contribution item has been placed. This
-	 * will be <code>null</code> if this instance has not yet been
-	 * initialized.
-	 */
-	private Composite statusLine = null;
-	private String text= ""; //$NON-NLS-1$
-	private int widthHint = -1;
-
-	public StatusLineContributionItem(String id) {
-		this(id, DEFAULT_CHAR_WIDTH);
-	}
-
-	public StatusLineContributionItem(String id, int charWidth) {
-		super(id);
-		this.charWidth = charWidth;
-		setVisible(false); // no text to start with
-	}
-
-	public void fill(Composite parent) {
-		statusLine = parent;
-		label = new CLabel(statusLine, SWT.NONE);
-		StatusLineLayoutData statusLineLayoutData = new StatusLineLayoutData();
-
-		if (widthHint < 0) {
-			GC gc = new GC(statusLine);
-			gc.setFont(statusLine.getFont());
-			widthHint = gc.getFontMetrics().getAverageCharWidth() * charWidth;
-			gc.dispose();
-		}
-
-		statusLineLayoutData.widthHint = widthHint;
-		label.setLayoutData(statusLineLayoutData);
-		label.setText(text);
-	}
-
-	/**
-	 * An accessor for the current location of this status line contribution
-	 * item -- relative to the display.
-	 * 
-	 * @return The current location of this status line; <code>null</code> if
-	 *         not yet initialized.
-	 */
-	public Point getDisplayLocation() {
-		if ((label != null) && (statusLine != null)) {
-			return statusLine.toDisplay(label.getLocation());
-		}
-
-		return null;
-	}
-
-	public String getText() {
-		return text;
-	}
-
-	public void setText(String text) {
-		if (text == null)
-			throw new NullPointerException();
-
-		this.text = text;
-
-		if (label != null && !label.isDisposed())
-			label.setText(this.text);
-
-		if (this.text.length() == 0) {
-			if (isVisible()) {
-				setVisible(false);
-				IContributionManager contributionManager = getParent();
-
-				if (contributionManager != null)
-					contributionManager.update(true);
-			}
-		} else {
-			if (!isVisible()) {
-				setVisible(true);
-				IContributionManager contributionManager = getParent();
-
-				if (contributionManager != null)
-					contributionManager.update(true);
-			}
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java
deleted file mode 100644
index e899fc2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ToggleLogicalStructureAction.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Action to toggle the use of contributed variables content providers on and off.
- * When on, all registered variables content providers for the current debug model
- * are used.  When off, the default content provider (that shows all children)
- * is used for all debug models.
- */
-public class ToggleLogicalStructureAction extends Action {
-	
-	private VariablesView fView;
-
-	public ToggleLogicalStructureAction(VariablesView view) {
-		super(null, IAction.AS_CHECK_BOX);
-		setView(view);
-		setToolTipText(VariablesViewMessages.ToggleObjectBrowsersAction_1);  //$NON-NLS-1$
-		setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_SHOW_LOGICAL_STRUCTURE));
-		setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_SHOW_LOGICAL_STRUCTURE));
-		setImageDescriptor(DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_ELCL_SHOW_LOGICAL_STRUCTURE));
-		setId(DebugUIPlugin.getUniqueIdentifier() + ".ToggleObjectBrowsersAction"); //$NON-NLS-1$
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.VARIABLES_CONTENT_PROVIDERS_ACTION);
-	}
-
-	/**
-	 * @see Action#run()
-	 */
-	public void run() {
-		valueChanged(isChecked());
-	}
-
-	private void valueChanged(boolean on) {
-		if (!getView().isAvailable()) {
-			return;
-		}
-		getView().setShowLogicalStructure(on);	
-		BusyIndicator.showWhile(getView().getViewer().getControl().getDisplay(), new Runnable() {
-			public void run() {
-				getView().getViewer().refresh();					
-			}
-		});			
-	}
-
-	/**
-	 * @see Action#setChecked(boolean)
-	 */
-	public void setChecked(boolean value) {
-		super.setChecked(value);
-	}
-	
-	protected VariablesView getView() {
-		return fView;
-	}
-
-	protected void setView(VariablesView view) {
-		fView = view;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariableViewToggleAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariableViewToggleAction.java
deleted file mode 100644
index e0a8777..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariableViewToggleAction.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugView;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-
-/**
- * 
- */
-public abstract class VariableViewToggleAction implements IViewActionDelegate, IActionDelegate2 {
-	
-	private IViewPart fView;
-	private IAction fAction;
-
-	public VariableViewToggleAction() {
-		super();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		fView = view;
-		boolean checked = getPreferenceValue(view);
-		fAction.setChecked(checked);
-		run(fAction);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-		fAction = action;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#dispose()
-	 */
-	public void dispose() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-	 */
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		IPreferenceStore store = getPreferenceStore();
-		String key = getView().getSite().getId() + "." + getPreferenceKey(); //$NON-NLS-1$
-		store.setValue(key, action.isChecked());
-		DebugUIPlugin.getDefault().savePluginPreferences();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	}
-
-	protected IPreferenceStore getPreferenceStore() {
-		return DebugUIPlugin.getDefault().getPreferenceStore();
-	}
-	
-	/**
-	 * Returns the value of this filters preference (on/off) for the given
-	 * view.
-	 * 
-	 * @param part
-	 * @return boolean
-	 */
-	protected boolean getPreferenceValue(IViewPart part) {
-		String baseKey = getPreferenceKey();
-		String viewKey = part.getSite().getId();
-		String compositeKey = viewKey + "." + baseKey; //$NON-NLS-1$
-		IPreferenceStore store = getPreferenceStore();
-		boolean value = false;
-		if (store.contains(compositeKey)) {
-			value = store.getBoolean(compositeKey);
-		} else {
-			value = store.getBoolean(baseKey);
-		}
-		return value;		
-	}
-	
-	/**
-	 * Returns the key for this action's preference
-	 * 
-	 * @return String
-	 */
-	protected abstract String getPreferenceKey(); 
-		
-	protected IViewPart getView() {
-		return fView;
-	}
-	
-	protected StructuredViewer getStructuredViewer() {
-		IDebugView view = (IDebugView)getView().getAdapter(IDebugView.class);
-		if (view != null) {
-			Viewer viewer = view.getViewer();
-			if (viewer instanceof StructuredViewer) {
-				return (StructuredViewer)viewer;
-			}
-		}		
-		return null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java
deleted file mode 100644
index 0d1c634..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesView.java
+++ /dev/null
@@ -1,1555 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.LazyModelPresentation;
-import org.eclipse.debug.internal.ui.VariablesViewModelPresentation;
-import org.eclipse.debug.internal.ui.actions.AssignValueAction;
-import org.eclipse.debug.internal.ui.actions.ChangeVariableValueAction;
-import org.eclipse.debug.internal.ui.actions.CollapseAllAction;
-import org.eclipse.debug.internal.ui.actions.FindVariableAction;
-import org.eclipse.debug.internal.ui.actions.ShowTypesAction;
-import org.eclipse.debug.internal.ui.actions.ToggleDetailPaneAction;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.internal.ui.views.AbstractDebugEventHandlerView;
-import org.eclipse.debug.internal.ui.views.AbstractViewerState;
-import org.eclipse.debug.internal.ui.views.DebugViewDecoratingLabelProvider;
-import org.eclipse.debug.internal.ui.views.DebugViewInterimLabelProvider;
-import org.eclipse.debug.internal.ui.views.DebugViewLabelDecorator;
-import org.eclipse.debug.internal.ui.views.IDebugExceptionHandler;
-import org.eclipse.debug.internal.ui.views.IRemoteTreeViewerUpdateListener;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.debug.ui.IValueDetailListener;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IStatusLineManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.jface.text.IFindReplaceTarget;
-import org.eclipse.jface.text.ITextOperationTarget;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.text.source.ISourceViewer;
-import org.eclipse.jface.text.source.ISourceViewerExtension2;
-import org.eclipse.jface.text.source.SourceViewer;
-import org.eclipse.jface.text.source.SourceViewerConfiguration;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.ListenerList;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IBaseLabelProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.SashForm;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.KeyListener;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.INullSelectionListener;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.console.actions.TextViewerAction;
-import org.eclipse.ui.texteditor.FindReplaceAction;
-import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
-import org.eclipse.ui.texteditor.IUpdate;
-import org.eclipse.ui.texteditor.IWorkbenchActionDefinitionIds;
-
-/**
- * This view shows variables and their values for a particular stack frame
- */
-public class VariablesView extends AbstractDebugEventHandlerView implements ISelectionListener, 
-																	IPropertyChangeListener,
-																	IValueDetailListener,
-																	IDebugExceptionHandler,
-																	INullSelectionListener {
-
-	/**
-	 * A decorating label provider which adds coloring to variables to
-	 * reflect their changed state
-	 */
-	protected class VariablesViewDecoratingLabelProvider extends DebugViewDecoratingLabelProvider {
-		
-		public VariablesViewDecoratingLabelProvider(StructuredViewer viewer, ILabelProvider provider, DebugViewLabelDecorator decorator) {
-			super(viewer, provider, decorator);
-		}
-
-		public Color getForeground(Object element) {
-			if (element instanceof IVariable) {
-				IVariable variable = (IVariable) element;
-				try {
-					if (variable.hasValueChanged()) {
-						return DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.CHANGED_VARIABLE_COLOR);
-					}
-				} catch (DebugException e) {
-					DebugUIPlugin.log(e);
-				}
-			}
-			return super.getForeground(element);
-		}
-	
-	}
-	
-	/**
-	 * Internal interface for a cursor listener. I.e. aggregation 
-	 * of mouse and key listener.
-	 * @since 3.0
-	 */
-	interface ICursorListener extends MouseListener, KeyListener {
-	}
-																		
-	/**
-	 * The selection provider for the variables view changes depending on whether
-	 * the variables viewer or detail pane source viewer have focus. This "super" 
-	 * provider ensures the correct selection is sent to all listeners.
-	 */
-	class VariablesViewSelectionProvider implements ISelectionProvider {
-		private ListenerList fListeners= new ListenerList();
-		private ISelectionProvider fUnderlyingSelectionProvider;
-		/**
-		 * @see ISelectionProvider#addSelectionChangedListener(ISelectionChangedListener)
-		 */
-		public void addSelectionChangedListener(ISelectionChangedListener listener) {
-			fListeners.add(listener);
-		}
-
-		/**
-		 * @see ISelectionProvider#getSelection()
-		 */
-		public ISelection getSelection() {
-			return getUnderlyingSelectionProvider().getSelection();
-		}
-
-		/**
-		 * @see ISelectionProvider#removeSelectionChangedListener(ISelectionChangedListener)
-		 */
-		public void removeSelectionChangedListener(ISelectionChangedListener listener) {
-			fListeners.remove(listener);
-		}
-
-		/**
-		 * @see ISelectionProvider#setSelection(ISelection)
-		 */
-		public void setSelection(ISelection selection) {
-			getUnderlyingSelectionProvider().setSelection(selection);
-		}
-		
-		protected ISelectionProvider getUnderlyingSelectionProvider() {
-			return fUnderlyingSelectionProvider;
-		}
-
-		protected void setUnderlyingSelectionProvider(ISelectionProvider underlyingSelectionProvider) {
-			fUnderlyingSelectionProvider = underlyingSelectionProvider;
-		}
-		
-		protected void fireSelectionChanged(SelectionChangedEvent event) {
-			Object[] listeners= fListeners.getListeners();
-			for (int i = 0; i < listeners.length; i++) {
-				ISelectionChangedListener listener = (ISelectionChangedListener)listeners[i];
-				listener.selectionChanged(event);
-			}
-		}
-	}
-	
-	/**
-	 * The model presentation used as the label provider for the tree viewer,
-	 * and also as the detail information provider for the detail pane.
-	 */
-	private VariablesViewModelPresentation fModelPresentation;
-	
-	/**
-	 * The UI construct that provides a sliding sash between the variables tree
-	 * and the detail pane.
-	 */
-	private SashForm fSashForm;
-	
-	/**
-	 * The detail pane viewer and its associated document.
-	 */
-	private ISourceViewer fDetailViewer;
-	private IDocument fDetailDocument;
-	
-	/**
-	 * The identifier of the debug model that is/was being displayed
-	 * in this view. When the type of model being displayed changes,
-	 * the details area needs to be reconfigured.
-	 */
-	private String fDebugModelIdentifier;
-	
-	/**
-	 * The configuration being used in the details area
-	 */
-	private SourceViewerConfiguration fSourceViewerConfiguration;
-	
-	/**
-	 * Selection currently computing details for
-	 * (workaround for bug 12938)
-	 */
-	private IStructuredSelection fValueSelection = null;
-	
-	/**
-	 * The last value for which the detail has been requested.
-	 */
-	private IValue fLastValueDetail= null;
-	
-	/**
-	 * Iterator for multi-selection details computation
-	 */
-	private Iterator fSelectionIterator = null;	
-	
-	/**
-	 * Various listeners used to update the enabled state of actions and also to
-	 * populate the detail pane.
-	 */
-	private ISelectionChangedListener fTreeSelectionChangedListener;
-	private ISelectionChangedListener fDetailSelectionChangedListener;
-	private IDocumentListener fDetailDocumentListener;
-	
-	/**
-	 * Selection provider for this view.
-	 */
-	private VariablesViewSelectionProvider fSelectionProvider= new VariablesViewSelectionProvider();
-	
-	/**
-	 * Collections for tracking actions.
-	 */
-	private List fSelectionActions = new ArrayList(3);
-	
-	/**
-	 * A map of stack frames to <code>ViewerState</code>s.
-	 * Used to restore the expanded state of the variables view on
-	 * re-selection of the same stack frame. The cache is cleared on
-	 * a frame by frame basis when a thread/target is terminated.
-	 */
-	private HashMap fSelectionStates = new HashMap(10);
-	
-	/**
-	 * The last known viewer state. Used to init the expansion/selection
-	 * in the variables view when there is no state to go on for the
-	 * current stack frame being displayed.
-	 */
-	private AbstractViewerState fLastState = null;
-	
-	/**
-	 * Remembers which viewer (tree viewer or details viewer) had focus, so we
-	 * can reset the focus properly when re-activated.
-	 */
-	private Viewer fFocusViewer = null;
-	
-	/**
-	 * These are used to initialize and persist the position of the sash that
-	 * separates the tree viewer from the detail pane.
-	 */
-	private static final int[] DEFAULT_SASH_WEIGHTS = {13, 6};
-	private int[] fLastSashWeights;
-	private boolean fToggledDetailOnce;
-	private String fCurrentDetailPaneOrientation = IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_HIDDEN;
-	private ToggleDetailPaneAction[] fToggleDetailPaneActions;
-
-	protected static final String DETAIL_SELECT_ALL_ACTION = SELECT_ALL_ACTION + ".Detail"; //$NON-NLS-1$
-	protected static final String VARIABLES_SELECT_ALL_ACTION=  SELECT_ALL_ACTION + ".Variables"; //$NON-NLS-1$
-	
-	protected static final String DETAIL_COPY_ACTION = ActionFactory.COPY.getId() + ".Detail"; //$NON-NLS-1$
-	protected static final String VARIABLES_COPY_ACTION=  ActionFactory.COPY.getId() + ".Variables"; //$NON-NLS-1$
-
-	public static final String LOGICAL_STRUCTURE_TYPE_PREFIX = "VAR_LS_"; //$NON-NLS-1$
-	protected static final String SASH_WEIGHTS = DebugUIPlugin.getUniqueIdentifier() + ".variablesView.SASH_WEIGHTS"; //$NON-NLS-1$
-	
-	private StatusLineContributionItem fStatusLineItem;
-	private ICursorListener fCursorListener;
-	/**
-	 * Data structure for the position label value.
-	 */
-	private static class PositionLabelValue {
-		
-		public int fValue;
-		
-		public String toString() {
-			return String.valueOf(fValue);
-		}
-	}
-	/** The pattern used to show the position label in the status line. */
-	private final String fPositionLabelPattern= VariablesViewMessages.VariablesView_56; //$NON-NLS-1$
-	/** The position label value of the current line. */
-	private final PositionLabelValue fLineLabel= new PositionLabelValue();
-	/** The position label value of the current column. */
-	private final PositionLabelValue fColumnLabel= new PositionLabelValue();
-	/** The arguments for the position label pattern. */
-	private final Object[] fPositionLabelPatternArguments= new Object[] { fLineLabel, fColumnLabel };
-	/** Whether logical structuers are showing */
-    private boolean fShowLogical;
-
-    private IRemoteTreeViewerUpdateListener fUpdateListener;
-
-	/**
-	 * Remove myself as a selection listener
-	 * and preference change listener.
-	 *
-	 * @see IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-		getViewSite().getActionBars().getStatusLineManager().remove(fStatusLineItem);
-		getSite().getPage().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-		JFaceResources.getFontRegistry().removeListener(this);
-		Viewer viewer = getViewer();
-		if (viewer != null) {
-			getDetailDocument().removeDocumentListener(getDetailDocumentListener());
-            ((VariablesViewer)viewer).removeUpdateListener(fUpdateListener);
-		}
-        IAction action= getAction("FindVariable"); //$NON-NLS-1$
-        if (action != null && action instanceof FindVariableAction) {
-            ((FindVariableAction) action).dispose();
-        }
-		super.dispose();
-	}
-
-	protected void setViewerInput(IStructuredSelection ssel) {
-		IStackFrame frame= null;
-		if (ssel.size() == 1) {
-			Object input= ssel.getFirstElement();
-			if (input instanceof IStackFrame) {
-				frame= (IStackFrame)input;
-			}
-		}
-		
-		getDetailViewer().setEditable(frame != null);
-		
-		Object current= getViewer().getInput();
-		
-		if (current == null && frame == null) {
-			return;
-		}
-
-		if (current != null && current.equals(frame)) {
-			return;
-		}
-
-		if (current != null) {
-			// save state
-			fLastState = getViewerState();
-			fSelectionStates.put(current, fLastState);
-		}		
-		
-		if (frame != null) {
-			setDebugModel(frame.getModelIdentifier());
-		}
-		showViewer();
-		getViewer().setInput(frame);
-	}
-    
-    protected void restoreState() {
-        VariablesViewer viewer = getVariablesViewer();
-        IStackFrame frame = (IStackFrame) viewer.getInput();
-        if (frame != null) {
-            AbstractViewerState state = (AbstractViewerState)fSelectionStates.get(frame);
-            if (state == null) {
-                // attempt to restore selection/expansion based on last frame
-                state = fLastState;
-            } 
-            if (state != null) {
-                state.restoreState(viewer);
-            }
-        }
-    }
-	
-	/**
-	 * Returns the variables viewer for this view
-	 */
-	protected VariablesViewer getVariablesViewer() {
-		return (VariablesViewer)getViewer();
-	}
-	
-	/**
-	 * Clears expanded state for stack frames which are
-	 * a child of the given thread or debug target.
-	 */
-	protected void clearExpandedVariables(Object parent) {
-		List list = null;
-		if (parent instanceof IThread) {
-			list = getCachedFrames((IThread)parent);
-		} else if (parent instanceof IDebugTarget) {
-			list = getCachedFrames((IDebugTarget)parent);
-		}
-		if (list != null) {
-			Iterator frames = list.iterator();
-			while (frames.hasNext()) {
-				Object frame = frames.next();
-				fSelectionStates.remove(frame);
-			}
-		}
-	}
-	
-	/**
-	 * Returns a list of stack frames in the specified 
-	 * thread that have cached an expansion state.
-	 * 
-	 * @return a list of stack frames in the specified 
-	 * thread that have cached an expansion state
-	 */
-	protected List getCachedFrames(IThread thread) {
-		List list = null;
-		Iterator frames = fSelectionStates.keySet().iterator();
-		while (frames.hasNext()) {
-			IStackFrame frame = (IStackFrame)frames.next();
-			if (frame.getThread().equals(thread)) {
-				if (list == null) {
-					list = new ArrayList();
-				}
-				list.add(frame);
-			}
-		}	
-		return list;	
-	}
-	
-	/**
-	 * Returns a list of stack frames in the specified 
-	 * thread that have cached an expansion state.
-	 * 
-	 * @return a list of stack frames in the specified 
-	 * thread that have cached an expansion state
-	 */
-	protected List getCachedFrames(IDebugTarget target) {
-		List list = null;
-		Iterator frames = fSelectionStates.keySet().iterator();
-		while (frames.hasNext()) {
-			IStackFrame frame = (IStackFrame)frames.next();
-			if (frame.getDebugTarget().equals(target)) {
-				if (list == null) {
-					list = new ArrayList();
-				}
-				list.add(frame);
-			}
-		}	
-		return list;	
-	}
-	
-	/**
-	 * Configures the details viewer for the debug model
-	 * currently being displayed
-	 */
-	protected void configureDetailsViewer() {
-		LazyModelPresentation mp = (LazyModelPresentation)fModelPresentation.getPresentation(getDebugModel());
-		SourceViewerConfiguration svc = null;
-		if (mp != null) {
-			try {
-				svc = mp.newDetailsViewerConfiguration();
-			} catch (CoreException e) {
-				DebugUIPlugin.errorDialog(getSite().getShell(), VariablesViewMessages.VariablesView_Error_1, VariablesViewMessages.VariablesView_Unable_to_configure_variable_details_area__2, e); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-		ISourceViewer detailViewer = getDetailViewer();
-        if (svc == null) {
-			svc = new SourceViewerConfiguration();
-			detailViewer.setEditable(false);
-		}
-        if (detailViewer instanceof ISourceViewerExtension2) {
-            ISourceViewerExtension2 sourceViewer = (ISourceViewerExtension2) detailViewer;
-            sourceViewer.unconfigure();
-        }
-		detailViewer.configure(svc);
-		//update actions that depend on the configuration of the details viewer
-		updateAction("ContentAssist"); //$NON-NLS-1$
-		setDetailViewerConfiguration(svc);
-	}
-	
-	/**
-	 * @see IPropertyChangeListener#propertyChange(PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		String propertyName= event.getProperty();
-		if (propertyName.equals(IDebugPreferenceConstants.CHANGED_VARIABLE_COLOR)) {
-			getEventHandler().refresh();
-		} else if (propertyName.equals(IInternalDebugUIConstants.DETAIL_PANE_FONT)) {
-			getDetailViewer().getTextWidget().setFont(JFaceResources.getFont(IInternalDebugUIConstants.DETAIL_PANE_FONT));			
-		} else if (propertyName.equals(IInternalDebugUIConstants.PREF_MAX_DETAIL_LENGTH)) {
-			populateDetailPane();
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#createViewer(Composite)
-	 */
-	public Viewer createViewer(Composite parent) {
-		TreeViewer variablesViewer = createTreeViewer(parent);
-		createDetailsViewer();
-		getSashForm().setMaximizedControl(variablesViewer.getControl());
-
-		createOrientationActions();
-		IPreferenceStore prefStore = DebugUIPlugin.getDefault().getPreferenceStore();
-		String orientation = prefStore.getString(getDetailPanePreferenceKey());
-		for (int i = 0; i < fToggleDetailPaneActions.length; i++) {
-			fToggleDetailPaneActions[i].setChecked(fToggleDetailPaneActions[i].getOrientation().equals(orientation));
-		}
-		setDetailPaneOrientation(orientation);
-		
-        fUpdateListener = new IRemoteTreeViewerUpdateListener() {
-            public void treeUpdated() {
-                restoreState();
-            }
-        };
-        ((VariablesViewer)variablesViewer).addUpdateListener(fUpdateListener);
-		return variablesViewer;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewPart#init(org.eclipse.ui.IViewSite, org.eclipse.ui.IMemento)
-	 */
-	public void init(IViewSite site, IMemento memento) throws PartInitException {
-		super.init(site, memento);
-		if (memento != null) {
-			Integer bigI = memento.getInteger(SASH_WEIGHTS+"-Length"); //$NON-NLS-1$
-			if (bigI == null) {
-				return;
-			}
-			int numWeights = bigI.intValue();
-			int[] weights = new int[numWeights];
-			for (int i = 0; i < numWeights; i++) {
-				bigI = memento.getInteger(SASH_WEIGHTS+"-"+i); //$NON-NLS-1$
-				if (bigI == null) {
-					return;
-				}
-				weights[i] = bigI.intValue();
-			}
-			if (weights.length > 0){
-				setLastSashWeights(weights);
-			}
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewPart#saveState(org.eclipse.ui.IMemento)
-	 */
-	public void saveState(IMemento memento) {
-		super.saveState(memento);
-		SashForm sashForm = getSashForm();
-		if (sashForm != null) {
-	        int[] weights = sashForm.getWeights();
-			memento.putInteger(SASH_WEIGHTS+"-Length", weights.length); //$NON-NLS-1$
-			for (int i = 0; i < weights.length; i++) {
-				memento.putInteger(SASH_WEIGHTS+"-"+i, weights[i]); //$NON-NLS-1$
-			}
-		}
-	}
-
-	protected String getDetailPanePreferenceKey() {
-		return IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_ORIENTATION;
-	}
-		
-	/**
-	 * Create and return the main tree viewer that displays variable.
-	 */
-	protected TreeViewer createTreeViewer(Composite parent) {
-		fModelPresentation = new VariablesViewModelPresentation();
-		DebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this);
-		JFaceResources.getFontRegistry().addListener(this);
-		// create the sash form that will contain the tree viewer & text viewer
-		setSashForm(new SashForm(parent, SWT.NONE));
-		
-		// add tree viewer
-		final TreeViewer variablesViewer = new VariablesViewer(getSashForm(), SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL, this);
-		RemoteVariablesContentProvider provider = createContentProvider(variablesViewer);
-		variablesViewer.setContentProvider(provider);
-		variablesViewer.setLabelProvider(createLabelProvider(variablesViewer));
-		variablesViewer.setUseHashlookup(true);
-		variablesViewer.getControl().addFocusListener(new FocusAdapter() {
-			/* (non-Javadoc)
-			 * @see org.eclipse.swt.events.FocusListener#focusGained(FocusEvent)
-			 */
-			public void focusGained(FocusEvent e) {
-				getVariablesViewSelectionProvider().setUnderlyingSelectionProvider(variablesViewer);
-				setAction(SELECT_ALL_ACTION, getAction(VARIABLES_SELECT_ALL_ACTION));
-				setAction(COPY_ACTION, getAction(VARIABLES_COPY_ACTION));
-				getViewSite().getActionBars().updateActionBars();
-				setFocusViewer(getVariablesViewer());
-			}
-		});
-		variablesViewer.addPostSelectionChangedListener(getTreeSelectionChangedListener());
-		getVariablesViewSelectionProvider().setUnderlyingSelectionProvider(variablesViewer);
-		getSite().setSelectionProvider(getVariablesViewSelectionProvider());
-
-		// listen to selection in debug view
-		getSite().getPage().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, this);
-		VariablesViewEventHandler handler = createEventHandler();
-		handler.setContentManager(provider.getContentManager());
-		setEventHandler(handler);
-
-		return variablesViewer;
-	}
-	
-	/**
-	 * Creates and returns a label provider for this view.
-	 * 
-	 * @return a label provider for this view.
-	 */
-	protected IBaseLabelProvider createLabelProvider(StructuredViewer viewer) {
-		return new VariablesViewDecoratingLabelProvider(viewer, new DebugViewInterimLabelProvider(getModelPresentation()), new DebugViewLabelDecorator(getModelPresentation()));
-	}
-
-	/**
-	 * Create the widgetry for the details viewer.
-	 */
-	protected void createDetailsViewer() {
-		// Create & configure a SourceViewer
-		SourceViewer detailsViewer= new SourceViewer(getSashForm(), null, SWT.V_SCROLL | SWT.H_SCROLL);
-		setDetailViewer(detailsViewer);
-		detailsViewer.setDocument(getDetailDocument());
-		detailsViewer.getTextWidget().setFont(JFaceResources.getFont(IInternalDebugUIConstants.DETAIL_PANE_FONT));
-		getDetailDocument().addDocumentListener(getDetailDocumentListener());
-		detailsViewer.setEditable(false);
-		Control control = detailsViewer.getControl();
-		GridData gd = new GridData(GridData.FILL_BOTH);
-		control.setLayoutData(gd);
-		
-		detailsViewer.getSelectionProvider().addSelectionChangedListener(getDetailSelectionChangedListener());
-		detailsViewer.getControl().addFocusListener(new FocusAdapter() {
-			/* (non-Javadoc)
-			 * @see org.eclipse.swt.events.FocusListener#focusGained(FocusEvent)
-			 */
-			public void focusGained(FocusEvent e) {
-				getVariablesViewSelectionProvider().setUnderlyingSelectionProvider(getDetailViewer().getSelectionProvider());
-				setAction(SELECT_ALL_ACTION, getAction(DETAIL_SELECT_ALL_ACTION));
-				setAction(COPY_ACTION, getAction(DETAIL_COPY_ACTION));
-				getViewSite().getActionBars().updateActionBars();
-				setFocusViewer((Viewer)getDetailViewer());
-			}
-		});
-		
-		// add a context menu to the detail area
-		createDetailContextMenu(detailsViewer.getTextWidget());
-		
-		detailsViewer.getTextWidget().addMouseListener(getCursorListener());
-		detailsViewer.getTextWidget().addKeyListener(getCursorListener());
-	}
-	
-	/**
-	 * Creates this view's content provider.
-	 * 
-	 * @return a content provider
-	 */
-	protected RemoteVariablesContentProvider createContentProvider(Viewer viewer) {
-		return new RemoteVariablesContentProvider((RemoteTreeViewer) viewer, getSite(), this);
-	}
-	
-	/**
-	 * Creates this view's event handler.
-	 * 
-	 * @return an event handler
-	 */
-	protected VariablesViewEventHandler createEventHandler() {
-		return new VariablesViewEventHandler(this);
-	}	
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#getHelpContextId()
-	 */
-	protected String getHelpContextId() {
-		return IDebugHelpContextIds.VARIABLE_VIEW;		
-	}
-	
-	/**
-	 * Set the orientation of the details pane so that is one of:
-	 * - underneath the main tree view
-	 * - to the right of the main tree view
-	 * - not visible
-	 */
-	public void setDetailPaneOrientation(String orientation) {
-		if (orientation.equals(fCurrentDetailPaneOrientation)) {
-			return;
-		}
-		if (orientation.equals(IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_HIDDEN)) {
-			hideDetailPane();
-		} else {
-			int vertOrHoriz = orientation.equals(IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_UNDERNEATH) ? SWT.VERTICAL : SWT.HORIZONTAL;
-			getSashForm().setOrientation(vertOrHoriz);	
-			if (IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_HIDDEN.equals(fCurrentDetailPaneOrientation)) {
-				showDetailPane();	
-			}
-		}
-		fCurrentDetailPaneOrientation  = orientation;
-		DebugUIPlugin.getDefault().getPreferenceStore().setValue(getDetailPanePreferenceKey(), orientation);
-	}
-	
-	private void hideDetailPane() {
-		if (fToggledDetailOnce) {
-			setLastSashWeights(getSashForm().getWeights());
-		}
-		getSashForm().setMaximizedControl(getViewer().getControl());		
-	}
-	
-	private void showDetailPane() {
-		getSashForm().setMaximizedControl(null);
-		getSashForm().setWeights(getLastSashWeights());
-		populateDetailPane();
-		revealTreeSelection();
-		fToggledDetailOnce = true;		
-	}
-
-	/**
-	 * Make sure the currently selected item in the tree is visible.
-	 */
-	protected void revealTreeSelection() {
-		VariablesViewer viewer = getVariablesViewer();
-		if (viewer != null) {
-			ISelection selection = viewer.getSelection();
-			if (selection instanceof IStructuredSelection) {
-				Object selected = ((IStructuredSelection)selection).getFirstElement();
-				if (selected != null) {
-					viewer.reveal(selected);
-				}
-			}
-		}
-	}
-
-	/**
-	 * Set on or off the word wrap flag for the detail pane.
-	 */
-	public void toggleDetailPaneWordWrap(boolean on) {
-		fDetailViewer.getTextWidget().setWordWrap(on);
-	}
-	
-	/**
-	 * Return the relative weights that were in effect the last time both panes were
-	 * visible in the sash form, or the default weights if both panes have not yet been
-	 * made visible.
-	 */
-	protected int[] getLastSashWeights() {
-		if (fLastSashWeights == null) {
-			fLastSashWeights = DEFAULT_SASH_WEIGHTS;
-		}
-		return fLastSashWeights;
-	}
-	
-	/**
-	 * Set the current relative weights of the controls in the sash form, so that
-	 * the sash form can be reset to this layout at a later time.
-	 */
-	protected void setLastSashWeights(int[] weights) {
-		fLastSashWeights = weights;
-	}
-	
-	/**
-	 * Create the context menu particular to the detail pane.  Note that anyone
-	 * wishing to contribute an action to this menu must use
-	 * <code>IDebugUIConstants.VARIABLE_VIEW_DETAIL_ID</code> as the
-	 * <code>targetID</code> in the extension XML.
-	 */
-	protected void createDetailContextMenu(Control menuControl) {
-		MenuManager menuMgr= new MenuManager(); //$NON-NLS-1$
-		menuMgr.setRemoveAllWhenShown(true);
-		menuMgr.addMenuListener(new IMenuListener() {
-			public void menuAboutToShow(IMenuManager mgr) {
-				fillDetailContextMenu(mgr);
-			}
-		});
-		Menu menu= menuMgr.createContextMenu(menuControl);
-		menuControl.setMenu(menu);
-
-		// register the context menu such that other plugins may contribute to it
-		getSite().registerContextMenu(IDebugUIConstants.VARIABLE_VIEW_DETAIL_ID, menuMgr, getDetailViewer().getSelectionProvider());		
-		addContextMenuManager(menuMgr);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#createActions()
-	 */
-	protected void createActions() {
-		IAction action = new ShowTypesAction(this);
-		setAction("ShowTypeNames",action); //$NON-NLS-1$
-				
-		action = new ToggleLogicalStructureAction(this);
-		setAction("ToggleContentProviders", action); //$NON-NLS-1$
-		
-		action = new CollapseAllAction(getVariablesViewer());
-		setAction("CollapseAll", action); //$NON-NLS-1$
-
-		action = new ChangeVariableValueAction(this);
-		action.setEnabled(false);
-		setAction("ChangeVariableValue", action); //$NON-NLS-1$
-		
-		TextViewerAction textAction= new TextViewerAction(getDetailViewer(), ISourceViewer.CONTENTASSIST_PROPOSALS);
-		textAction.setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS);
-		textAction.configureAction(VariablesViewMessages.VariablesView_Co_ntent_Assist_3, "",""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		textAction.setImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_ELCL_CONTENT_ASSIST));
-		textAction.setHoverImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_LCL_CONTENT_ASSIST));
-		textAction.setDisabledImageDescriptor(DebugPluginImages.getImageDescriptor(IDebugUIConstants.IMG_DLCL_CONTENT_ASSIST));
-		setAction("ContentAssist", textAction); //$NON-NLS-1$
-		getSite().getKeyBindingService().registerAction(textAction);
-		
-		textAction= new TextViewerAction(getDetailViewer(), ITextOperationTarget.SELECT_ALL);
-		textAction.configureAction(VariablesViewMessages.VariablesView_Select__All_5, "", ""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		textAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.SELECT_ALL);
-		setAction(DETAIL_SELECT_ALL_ACTION, textAction);
-		
-		textAction= new TextViewerAction(getDetailViewer(), ITextOperationTarget.COPY);
-		textAction.configureAction(VariablesViewMessages.VariablesView__Copy_8, "", "");  //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		textAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.COPY);
-		setAction(DETAIL_COPY_ACTION, textAction);
-		
-		textAction= new TextViewerAction(getDetailViewer(), ITextOperationTarget.CUT);
-		textAction.configureAction(VariablesViewMessages.VariablesView_Cu_t_11, "", ""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		textAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.CUT);
-		setAction(ActionFactory.CUT.getId(), textAction);
-		
-		textAction= new TextViewerAction(getDetailViewer(), ITextOperationTarget.PASTE);
-		textAction.configureAction(VariablesViewMessages.VariablesView__Paste_14, "", ""); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
-		textAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.PASTE);
-		setAction(ActionFactory.PASTE.getId(), textAction);
-		
-		action= new FindVariableAction(this);
-		setAction("FindVariable", action); //$NON-NLS-1$
-		
-		// TODO: Still using "old" resource access
-		ResourceBundle bundle= ResourceBundle.getBundle("org.eclipse.debug.internal.ui.views.variables.VariablesViewMessages"); //$NON-NLS-1$
-		action = new FindReplaceAction(bundle, "find_replace_action_", VariablesView.this);	 //$NON-NLS-1$
-		action.setActionDefinitionId(IWorkbenchActionDefinitionIds.FIND_REPLACE);
-		setAction("FindReplaceText", action); //$NON-NLS-1$
-		
-		setAction(ActionFactory.FIND.getId(), new Action() {
-			public void run() {
-				IAction findAction = null;
-				if (getDetailViewer().getTextWidget().isFocusControl()) {
-					findAction= getAction("FindReplaceText"); //$NON-NLS-1$
-				} else {
-					findAction= getAction("FindVariable"); //$NON-NLS-1$
-				}
-				findAction.run();
-			}
-		});
-		
-		fSelectionActions.add(ActionFactory.COPY.getId());
-		fSelectionActions.add(ActionFactory.CUT.getId());
-		fSelectionActions.add(ActionFactory.PASTE.getId());
-		fSelectionActions.add("FindReplaceText"); //$NON-NLS-1$
-		updateAction("FindReplaceText"); //$NON-NLS-1$
-		
-		action = new AssignValueAction(this, fDetailViewer);
-		setAction("AssignValue", action); //$NON-NLS-1$
-		
-		fStatusLineItem = new StatusLineContributionItem("ModeContributionItem"); //$NON-NLS-1$
-		IActionBars actionBars = getViewSite().getActionBars();
-		IStatusLineManager manager= actionBars.getStatusLineManager();
-		manager.add(fStatusLineItem);
-	} 
-	
-	private void createOrientationActions() {
-		IActionBars actionBars = getViewSite().getActionBars();
-		IMenuManager viewMenu = actionBars.getMenuManager();
-		
-		fToggleDetailPaneActions = new ToggleDetailPaneAction[3];
-		fToggleDetailPaneActions[0] = new ToggleDetailPaneAction(this, IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_UNDERNEATH, null);
-		fToggleDetailPaneActions[1] = new ToggleDetailPaneAction(this, IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_RIGHT, null);
-		fToggleDetailPaneActions[2] = new ToggleDetailPaneAction(this, IDebugPreferenceConstants.VARIABLES_DETAIL_PANE_HIDDEN, getToggleActionLabel());
-		viewMenu.add(new Separator());
-		viewMenu.add(fToggleDetailPaneActions[0]);
-		viewMenu.add(fToggleDetailPaneActions[1]);
-		viewMenu.add(fToggleDetailPaneActions[2]);
-		viewMenu.add(new Separator());		
-	}
-	
-	protected String getToggleActionLabel() {
-		return VariablesViewMessages.VariablesView_41; //$NON-NLS-1$
-	}
-	
-	/**
-	 * Configures the toolBar.
-	 * 
-	 * @param tbm The toolbar that will be configured
-	 */
-	protected void configureToolBar(IToolBarManager tbm) {
-		tbm.add(new Separator(this.getClass().getName()));
-		tbm.add(new Separator(IDebugUIConstants.RENDER_GROUP));
-		tbm.add(getAction("ShowTypeNames")); //$NON-NLS-1$
-		tbm.add(getAction("ToggleContentProviders")); //$NON-NLS-1$
-		tbm.add(getAction("CollapseAll")); //$NON-NLS-1$
-	}
-
-   /**
-	* Adds items to the tree viewer's context menu including any extension defined
-	* actions.
-	* 
-	* @param menu The menu to add the item to.
-	*/
-	protected void fillContextMenu(IMenuManager menu) {
-
-		menu.add(new Separator(IDebugUIConstants.EMPTY_VARIABLE_GROUP));
-		menu.add(new Separator(IDebugUIConstants.VARIABLE_GROUP));
-		menu.add(getAction("FindVariable")); //$NON-NLS-1$
-		menu.add(getAction("ChangeVariableValue")); //$NON-NLS-1$
-		IAction action = new AvailableLogicalStructuresAction(this);
-		if (action.isEnabled()) {
-			menu.add(action);
-		}
-		menu.add(new Separator(IDebugUIConstants.EMPTY_RENDER_GROUP));
-		menu.add(new Separator(IDebugUIConstants.EMPTY_NAVIGATION_GROUP));
-		menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-	}
-	
-   /**
-	* Adds items to the detail area's context menu including any extension defined
-	* actions.
-	* 
-	* @param menu The menu to add the item to.
-	*/
-	protected void fillDetailContextMenu(IMenuManager menu) {
-		
-		menu.add(new Separator(IDebugUIConstants.VARIABLE_GROUP));		
-		menu.add(getAction("AssignValue")); //$NON-NLS-1$
-		menu.add(getAction("ContentAssist")); //$NON-NLS-1$
-		menu.add(new Separator());
-		menu.add(getAction(ActionFactory.CUT.getId()));
-		menu.add(getAction(ActionFactory.COPY.getId() + ".Detail")); //$NON-NLS-1$
-		menu.add(getAction(ActionFactory.PASTE.getId()));
-		menu.add(getAction(DETAIL_SELECT_ALL_ACTION));
-		menu.add(new Separator("FIND")); //$NON-NLS-1$
-		menu.add(getAction("FindReplaceText")); //$NON-NLS-1$
-		menu.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-	}
-	
-	/**
-	 * Lazily instantiate and return a selection listener that populates the detail pane,
-	 * but only if the detail is currently visible. 
-	 */
-    protected ISelectionChangedListener getTreeSelectionChangedListener() {
-        if (fTreeSelectionChangedListener == null) {
-            fTreeSelectionChangedListener = new ISelectionChangedListener() {
-                public void selectionChanged(final SelectionChangedEvent event) {
-                    if (event.getSelectionProvider().equals(getVariablesViewer())) {
-                        clearStatusLine();
-                        getVariablesViewSelectionProvider().fireSelectionChanged(event);				
-                        // if the detail pane is not visible, don't waste time retrieving details
-                        if (getSashForm().getMaximizedControl() == getViewer().getControl()) {
-                            return;
-                        }	
-                        
-                        Job job = new Job("Detail Pane Populate Job") {//$NON-NLS-1$
-                            protected IStatus run(IProgressMonitor monitor) {
-                                IStructuredSelection selection = (IStructuredSelection)event.getSelection();
-                                populateDetailPaneFromSelection(selection);
-                                return Status.OK_STATUS;
-                            } 
-                        };
-                        job.setSystem(true);
-                        job.schedule();
-                        
-                        treeSelectionChanged(event);
-                    }
-                }					
-            };
-        }
-        return fTreeSelectionChangedListener;
-    }
-	
-	/**
-	 * Selection in the variable tree changed. Perform any updates.
-	 * 
-	 * @param event
-	 */
-	protected void treeSelectionChanged(SelectionChangedEvent event) {
-	}
-	
-	/**
-	 * Ask the variables tree for its current selection, and use this to populate
-	 * the detail pane.
-	 */
-	public void populateDetailPane() {
-		if (isDetailPaneVisible()) {
-            Viewer viewer = getViewer();
-            if (viewer != null) {
-                final IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
-                Job job = new Job("Populate Detail Pane") {//$NON-NLS-1$
-                    protected IStatus run(IProgressMonitor monitor) {
-                        populateDetailPaneFromSelection(selection);
-                        return Status.OK_STATUS;
-                    }
-                };
-                job.setSystem(true);
-                job.schedule();
-            }
-        }
-    }
-	
-	/**
-	 * Show the details associated with the first of the selected variables in the 
-	 * detail pane.
-	 */
-	protected void populateDetailPaneFromSelection(final IStructuredSelection selection) {
-        Runnable runnable = new Runnable() {
-            public void run() {
-                getDetailDocument().set(""); //$NON-NLS-1$        
-            }
-        };
-        DebugUIPlugin.getStandardDisplay().asyncExec(runnable);
-		try {
-			if (!selection.isEmpty()) {
-				IValue val = null;
-				Object obj = selection.getFirstElement();
-				if (obj instanceof IndexedVariablePartition) {
-					// no details for parititions
-					return;
-				}
-                
-				if (obj instanceof IVariable) {
-					val = ((IVariable)obj).getValue();
-				} else if (obj instanceof IExpression) {
-					val = ((IExpression)obj).getValue();
-				}
-				if (val == null) {
-					return;
-				}			
-				// workaroud for bug 12938
-				if (fValueSelection != null && fValueSelection.equals(selection)) {
-					return;
-				}
-				
-                final IValue finalVal = val;
-                runnable = new Runnable() {
-                    public void run() {
-                        getDetailDocument().set(""); //$NON-NLS-1$
-                        setDebugModel(finalVal.getModelIdentifier());
-                        fValueSelection = selection;
-                        fSelectionIterator = selection.iterator();
-                        fSelectionIterator.next();
-                        fLastValueDetail= finalVal;
-                        getModelPresentation().computeDetail(finalVal, VariablesView.this);        
-                    }
-                };
-                DebugUIPlugin.getStandardDisplay().asyncExec(runnable);
-			} 
-		} catch (DebugException de) {
-            DebugUIPlugin.getStandardDisplay().asyncExec(new Runnable() {
-                public void run() {
-                    getDetailDocument().set(VariablesViewMessages.VariablesView__error_occurred_retrieving_value__18); //$NON-NLS-1$
-                }
-            });
-		}				
-	}
-	
-	/**
-	 * @see IValueDetailListener#detailComputed(IValue, String)
-	 */
-	public void detailComputed(final IValue value, final String result) {
-		Runnable runnable = new Runnable() {
-			public void run() {
-				if (isAvailable()) {
-					// bug 24862
-					// don't display the result if an other detail has been
-					// requested
-					if (value == fLastValueDetail) {
-						String insert = result;
-						int length = getDetailDocument().getLength();
-						if (length > 0) {
-							insert = "\n" + result; //$NON-NLS-1$
-						}
-						try {
-							int max = DebugUIPlugin.getDefault().getPreferenceStore().getInt(IInternalDebugUIConstants.PREF_MAX_DETAIL_LENGTH);
-							if (max > 0 && insert.length() > max) {
-								insert = insert.substring(0, max) + "..."; //$NON-NLS-1$
-							}
-							getDetailDocument().replace(length, 0,insert);
-						} catch (BadLocationException e) {
-							DebugUIPlugin.log(e);
-						}
-						fLastValueDetail= null;
-					}
-					
-					if (fSelectionIterator != null && fSelectionIterator.hasNext()) {
-						Object obj = fSelectionIterator.next();
-						IValue val = null;
-						try {
-							if (obj instanceof IVariable) {
-								val = ((IVariable)obj).getValue();
-							} else if (obj instanceof IExpression) {
-								val = ((IExpression)obj).getValue();
-							}
-							fLastValueDetail= val;
-							getModelPresentation().computeDetail(val, VariablesView.this);
-						} catch (DebugException e) {
-							DebugUIPlugin.log(e);
-							getDetailDocument().set(VariablesViewMessages.VariablesView__error_occurred_retrieving_value__18); //$NON-NLS-1$	
-						}
-					} else {
-						fValueSelection = null;
-						fSelectionIterator = null;
-					}							
-				}
-			}
-		};
-		asyncExec(runnable);		
-	}
-	
-	/**
-	 * Lazily instantiate and return a selection listener that updates the enabled
-	 * state of the selection oriented actions in this view.
-	 */
-	protected ISelectionChangedListener getDetailSelectionChangedListener() {
-		if (fDetailSelectionChangedListener == null) {
-			fDetailSelectionChangedListener = new ISelectionChangedListener() {
-				public void selectionChanged(SelectionChangedEvent event) {
-					if (event.getSelectionProvider().equals(getVariablesViewSelectionProvider().getUnderlyingSelectionProvider())) {
-						getVariablesViewSelectionProvider().fireSelectionChanged(event);
-						updateSelectionDependentActions();				
-					}
-				}
-			};
-		}
-		return fDetailSelectionChangedListener;
-	}
-	
-	/**
-	 * Lazily instantiate and return a document listener that updates the enabled state
-	 * of the 'Find/Replace' action.
-	 */
-	protected IDocumentListener getDetailDocumentListener() {
-		if (fDetailDocumentListener == null) {
-			fDetailDocumentListener = new IDocumentListener() {
-				public void documentAboutToBeChanged(DocumentEvent event) {
-				}
-				public void documentChanged(DocumentEvent event) {
-					updateAction(ActionFactory.FIND.getId());
-				}
-			};
-		}
-		return fDetailDocumentListener;
-	}
-	
-	/**
-	 * Lazily instantiate and return a Document for the detail pane text viewer.
-	 */
-	protected IDocument getDetailDocument() {
-		if (fDetailDocument == null) {
-			fDetailDocument = new Document();
-		}
-		return fDetailDocument;
-	}
-	
-	protected IDebugModelPresentation getModelPresentation() {
-		if (fModelPresentation == null) {
-			fModelPresentation = new VariablesViewModelPresentation();
-		}
-		return fModelPresentation;
-	}
-	
-	/**
-	 * Sets the viewer used to display value details.
-	 * 
-	 * @param viewer source viewer
-	 */
-	private void setDetailViewer(ISourceViewer viewer) {
-		fDetailViewer = viewer;
-	}
-	
-	/**
-	 * Returns the viewer used to display value details
-	 * 
-	 * @return source viewer
-	 */
-	protected ISourceViewer getDetailViewer() {
-		return fDetailViewer;
-	}
-	
-	protected SashForm getSashForm() {
-		return fSashForm;
-	}
-	
-	private void setSashForm(SashForm sashForm) {
-		fSashForm = sashForm;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.WorkbenchPart#getAdapter(Class)
-	 */
-	public Object getAdapter(Class required) {
-		if (IFindReplaceTarget.class.equals(required)) {
-			return getDetailViewer().getFindReplaceTarget();
-		}
-		if (ITextViewer.class.equals(required)) {
-			return getDetailViewer();
-		}
-		if (IDebugModelPresentation.class.equals(required)) {
-			return getModelPresentation();
-		}
-		return super.getAdapter(required);
-	}
-
-	protected void updateSelectionDependentActions() {
-		Iterator iterator= fSelectionActions.iterator();
-		while (iterator.hasNext()) {
-			updateAction((String)iterator.next());		
-		}
-	}
-
-	protected void updateAction(String actionId) {
-		IAction action= getAction(actionId);
-		if (action instanceof IUpdate) {
-			((IUpdate) action).update();
-		}
-	}
-	
-	protected boolean isDetailPaneVisible() {
-		return !fToggleDetailPaneActions[2].isChecked();
-	}
-	
-	/**
-	 * Sets the identifier of the debug model being displayed
-	 * in this view, or <code>null</code> if none.
-	 * 
-	 * @param id debug model identifier of the type of debug
-	 *  elements being displayed in this view
-	 */
-	protected void setDebugModel(String id) {
-		if (id != fDebugModelIdentifier) {
-			fDebugModelIdentifier = id;
-			configureDetailsViewer();	
-		} else {
-			updateAction("ContentAssist"); //$NON-NLS-1$
-		}
-	}
-	
-	/**
-	 * Returns the identifier of the debug model being displayed
-	 * in this view, or <code>null</code> if none.
-	 * 
-	 * @return debug model identifier
-	 */
-	protected String getDebugModel() {
-		return fDebugModelIdentifier;
-	}	
-	
-	
-	/**
-	 * Sets the current configuration being used in the
-	 * details area.
-	 * 
-	 * @param config source viewer configuration
-	 */
-	private void setDetailViewerConfiguration(SourceViewerConfiguration config) {
-		fSourceViewerConfiguration = config;
-	}
-	
-	/**
-	 * Returns the current configuration being used in the
-	 * details area.
-	 * 
-	 * @return source viewer configuration
-	 */	
-	protected SourceViewerConfiguration getDetailViewerConfiguration() {
-		return fSourceViewerConfiguration;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#getDefaultControl()
-	 */
-	protected Control getDefaultControl() {
-		return getSashForm();
-	}	
-	
-	/**
-	 * @see IDebugExceptionHandler#handleException(DebugException)
-	 */
-	public void handleException(DebugException e) {
-		showMessage(e.getMessage());
-	}
-	
-	protected VariablesViewSelectionProvider getVariablesViewSelectionProvider() {
-		return fSelectionProvider;
-	}
-	/** 
-	 * The <code>VariablesView</code> listens for selection changes in the <code>LaunchView</code>
-	 *
-	 * @see ISelectionListener#selectionChanged(IWorkbenchPart, ISelection)
-	 */
-	public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-		if (!isAvailable() || !isVisible()) {
-			return;
-		}
-		
-		if (selection == null) {
-			setViewerInput(new StructuredSelection());
-		} else if (selection instanceof IStructuredSelection) {
-			setViewerInput((IStructuredSelection) selection);
-		} else {
-			getDetailViewer().setEditable(false);
-		}
-		updateAction("ContentAssist"); //$NON-NLS-1$
-		updateAction("FindVariable"); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Delegate to the <code>DOUBLE_CLICK_ACTION</code>,
-	 * if any.
-	 *  
-	 * @see org.eclipse.jface.viewers.IDoubleClickListener#doubleClick(DoubleClickEvent)
-	 */
-	public void doubleClick(DoubleClickEvent event) {
-		IAction action = getAction(DOUBLE_CLICK_ACTION);
-		if (action != null && action.isEnabled()) {
-			action.run();
-		} else {
-			ISelection selection= event.getSelection();
-			if (!(selection instanceof IStructuredSelection)) {
-				return;
-			}
-			IStructuredSelection ss= (IStructuredSelection)selection;
-			Object o= ss.getFirstElement();
-			
-			if (o != null) {
-				TreeViewer tViewer= (TreeViewer)getViewer();
-				boolean expanded= tViewer.getExpandedState(o);
-				tViewer.setExpandedState(o, !expanded);
-			}
-		}
-	}	
-	/**
-	 * @see org.eclipse.ui.IWorkbenchPart#setFocus()
-	 */
-	public void setFocus() {
-		if (getFocusViewer() == null) {
-			super.setFocus();
-		} else {
-			getFocusViewer().getControl().setFocus();
-		}
-	}
-	
-	/**
-	 * Sets the viewer that has focus.
-	 * 
-	 * @param viewer
-	 */
-	protected void setFocusViewer(Viewer viewer) {
-		fFocusViewer = viewer;
-	}
-	
-	/**
-	 * Returns the viewer that has focus, or <code>null</code>.
-	 * 
-	 * @return Viewer
-	 */
-	protected Viewer getFocusViewer() {
-		return fFocusViewer;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDebugView#getPresentation(String)
-	 */
-	public IDebugModelPresentation getPresentation(String id) {
-		if (getViewer() instanceof StructuredViewer) {
-			IDebugModelPresentation lp = getModelPresentation();
-			if (lp instanceof DelegatingModelPresentation) {
-				return ((DelegatingModelPresentation)lp).getPresentation(id);
-			}
-			if (lp instanceof LazyModelPresentation) {
-				if (((LazyModelPresentation)lp).getDebugModelIdentifier().equals(id)) {
-					return lp;
-				}
-			}
-		}
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDetailSite#getDetailViewerParent()
-	 */
-	public Composite getDetailViewerParent() {
-		return getSashForm();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IDetailSite#isMainViewerAvailable()
-	 */
-	public boolean isMainViewerAvailable() {
-		return isAvailable();
-	}
-	
-	/** 
-	 * Sets whether logical structures are being displayed
-	 */
-	public void setShowLogicalStructure(boolean flag) {
-	    fShowLogical = flag;
-	}	
-	
-	/** 
-	 * Returns whether logical structures are being displayed 
-	 */
-	public boolean isShowLogicalStructure() {
-	    return fShowLogical;
-	}		
-
-	/**
-	 * Returns the number of entries that should be displayed in each
-	 * partition of an indexed collection.
-	 * 
-	 * @return the number of entries that should be displayed in each
-	 * partition of an indexed collection
-	 */
-	protected int getArrayPartitionSize() {
-		// TODO: this should be a view setting
-		return 100;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#becomesHidden()
-	 */
-	protected void becomesHidden() {
-		setViewerInput(new StructuredSelection());
-		super.becomesHidden();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.AbstractDebugView#becomesVisible()
-	 */
-	protected void becomesVisible() {
-		super.becomesVisible();
-		IViewPart part = getSite().getPage().findView(IDebugUIConstants.ID_DEBUG_VIEW);
-		if (part != null) {
-			ISelection selection = getSite().getPage().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-			selectionChanged(part, selection);
-		}
-	}
-
-	/**
-	 * Returns the memento of the expanded and selected items in the viewer.
-	 * 
-	 * @return the memento of the expanded and selected items in the viewer
-	 */
-	protected AbstractViewerState getViewerState() {
-		return new ViewerState(getVariablesViewer());
-	}
-	
-	/**
-	 * Returns this view's "cursor" listener to be installed on the view's
-	 * associated details viewer. This listener is listening to key and mouse button events.
-	 * It triggers the updating of the status line.
-	 * 
-	 * @return the listener
-	 */
-	private ICursorListener getCursorListener() {
-		if (fCursorListener == null) {
-			fCursorListener= new ICursorListener() {
-				
-				public void keyPressed(KeyEvent e) {
-					fStatusLineItem.setText(getCursorPosition());
-				}
-				
-				public void keyReleased(KeyEvent e) {
-				}
-				
-				public void mouseDoubleClick(MouseEvent e) {
-				}
-				
-				public void mouseDown(MouseEvent e) {
-				}
-				
-				public void mouseUp(MouseEvent e) {
-					fStatusLineItem.setText(getCursorPosition());
-				}
-			};
-		}
-		return fCursorListener;
-	}
-	
-	protected String getCursorPosition() {
-		
-		if (getDetailViewer() == null) {
-			return ""; //$NON-NLS-1$
-		}
-		
-		StyledText styledText= getDetailViewer().getTextWidget();
-		int caret= styledText.getCaretOffset();
-		IDocument document= getDetailViewer().getDocument();
-
-		if (document == null) {
-			return ""; //$NON-NLS-1$
-		}
-	
-		try {
-			
-			int line= document.getLineOfOffset(caret);
-
-			int lineOffset= document.getLineOffset(line);
-			int tabWidth= styledText.getTabs();
-			int column= 0;
-			for (int i= lineOffset; i < caret; i++)
-				if ('\t' == document.getChar(i)) {
-					column += tabWidth - (tabWidth == 0 ? 0 : column % tabWidth);
-				} else {
-					column++;
-				}
-					
-			fLineLabel.fValue= line + 1;
-			fColumnLabel.fValue= column + 1;
-			return MessageFormat.format(fPositionLabelPattern, fPositionLabelPatternArguments);
-			
-		} catch (BadLocationException x) {
-			return ""; //$NON-NLS-1$
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewEventHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewEventHandler.java
deleted file mode 100644
index 0db4e1f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewEventHandler.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-
-import java.util.ArrayList;
-
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.model.IExpression;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.views.AbstractDebugEventHandler;
-import org.eclipse.debug.internal.ui.views.RemoteTreeContentManager;
-import org.eclipse.debug.ui.AbstractDebugView;
-
-/**
- * Updates the variables view
- */
-public class VariablesViewEventHandler extends AbstractDebugEventHandler {	
-	
-	private RemoteTreeContentManager fContentManager = null;
-	
-	/**
-	 * Constructs a new event handler on the given view
-	 * 
-	 * @param view variables view
-	 */
-	public VariablesViewEventHandler(AbstractDebugView view) {
-		super(view);
-	}
-	
-	/**
-	 * @see AbstractDebugEventHandler#handleDebugEvents(DebugEvent[])
-	 */
-	protected void doHandleDebugEvents(DebugEvent[] events, Object data) {
-		for (int i = 0; i < events.length; i++) {	
-			DebugEvent event = events[i];
-			switch (event.getKind()) {
-				case DebugEvent.SUSPEND:
-						doHandleSuspendEvent(event);
-					break;
-				case DebugEvent.CHANGE:
-						doHandleChangeEvent(event);
-					break;
-				case DebugEvent.RESUME:
-						doHandleResumeEvent(event);
-					break;
-			}
-		}
-	}
-	
-	/**
-	 * @see AbstractDebugEventHandler#updateForDebugEvents(DebugEvent[])
-	 */
-	protected void updateForDebugEvents(DebugEvent[] events, Object data) {
-		for (int i = 0; i < events.length; i++) {	
-			DebugEvent event = events[i];
-			switch (event.getKind()) {
-				case DebugEvent.TERMINATE:
-					doHandleTerminateEvent(event);
-					break;
-			}
-		}
-	}	
-
-	/**
-	 * Clear cached variable expansion state
-	 */
-	protected void doHandleResumeEvent(DebugEvent event) {
-		if (!event.isStepStart() && !event.isEvaluation()) {
-			// clear variable expansion state
-			getVariablesView().clearExpandedVariables(event.getSource());
-		}
-		if (!event.isEvaluation()) {
-			Object input = getVariablesView().getVariablesViewer().getInput();
-			if (input instanceof IStackFrame) {
-				IStackFrame frame = (IStackFrame)input;
-				if (event.getSource().equals(frame.getThread())) {
-					fContentManager.cancel();
-				}
-			}
-		}
-	}
-
-	/**
-	 * Clear any cached variable expansion state for the
-	 * terminated thread/target. Also, remove the part listener if there are
-	 * no more active debug targets.
-	 */
-	protected void doHandleTerminateEvent(DebugEvent event) {
-		getVariablesView().clearExpandedVariables(event.getSource());
-	}
-	
-	/**
-	 * Process a SUSPEND event
-	 */
-	protected void doHandleSuspendEvent(DebugEvent event) {
-		if (event.getDetail() != DebugEvent.EVALUATION_IMPLICIT) {
-			// Don't refresh everytime an implicit evaluation finishes
-			if (event.getSource() instanceof ISuspendResume) {
-				if (!((ISuspendResume)event.getSource()).isSuspended()) {
-					// no longer suspended
-					return;
-				}
-			}
-			refresh();
-			getVariablesView().populateDetailPane();
-		}		
-	}
-	
-	/**
-	 * Process a CHANGE event
-	 */
-	protected void doHandleChangeEvent(DebugEvent event) {
-		if (event.getDetail() == DebugEvent.STATE) {
-			// only process variable state changes
-			if (event.getSource() instanceof IVariable) {
-				refresh(event.getSource());
-				getVariablesView().populateDetailPane();
-			}
-		} else {
-			if (!(event.getSource() instanceof IExpression)) {
-				refresh();
-				getVariablesView().populateDetailPane();
-			}
-		}	
-	}	
-
-	/**
-	 * Returns the view that event handler updates.
-	 */
-	protected VariablesView getVariablesView() {
-		return (VariablesView)getView();
-	}
-	
-	/**
-	 * Also update the details area.
-	 * 
-	 * @see org.eclipse.debug.internal.ui.views.AbstractDebugEventHandler#viewBecomesVisible()
-	 */
-	protected void viewBecomesVisible() {
-		super.viewBecomesVisible();
-		getVariablesView().populateDetailPane();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.AbstractDebugEventHandler#filterEvents(org.eclipse.debug.core.DebugEvent[])
-	 */
-	protected DebugEvent[] filterEvents(DebugEvent[] events) {
-		ArrayList filtered = null;
-		for (int i=0; i<events.length; i++) {
-			// filter out change events 
-			if (events[i].getKind() == DebugEvent.CHANGE) {
-				if (!(events[i].getSource() instanceof IStackFrame || events[i].getSource() instanceof IVariable)) {
-					if (events.length == 1) {
-						return EMPTY_EVENT_SET;
-					}
-					if (filtered == null) {
-						filtered = new ArrayList();
-					}
-					filtered.add(events[i]);
-				}
-			}
-		}
-		if (filtered == null) {
-			return events;
-		}
-		if (filtered.size() == events.length) {
-			return EMPTY_EVENT_SET;
-		}
-		ArrayList all = new ArrayList(events.length);
-		for (int i = 0; i < events.length; i++) {
-			all.add(events[i]);
-		}
-		all.removeAll(filtered);
-		return (DebugEvent[]) all.toArray(new DebugEvent[all.size()]);
-	}
-	
-	public void setContentManager(RemoteTreeContentManager manager) { 
-		fContentManager = manager;
-	}
-
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.java
deleted file mode 100644
index b205a98..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.osgi.util.NLS;
-
-public class VariablesViewMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.debug.internal.ui.views.variables.VariablesViewMessages";//$NON-NLS-1$
-
-	public static String find_replace_action_label;
-	public static String find_replace_action_tooltip;
-	public static String find_replace_action_image;
-	public static String find_replace_action_description;
-
-	public static String VariablesView__Copy_8;
-	public static String VariablesView__Paste_14;
-	public static String VariablesView__error_occurred_retrieving_value__18;
-	public static String VariablesView_Co_ntent_Assist_3;
-	public static String VariablesView_Cu_t_11;
-	public static String VariablesView_Error_1;
-	public static String VariablesView_Select__All_5;
-	public static String VariablesView_Unable_to_configure_variable_details_area__2;
-	public static String VariablesView_56;
-
-	public static String ToggleObjectBrowsersAction_1;
-	public static String VariablesView_41;
-	public static String ExpressionView_4;
-
-	public static String IndexedVariablePartition_4;
-
-	public static String AvailableLogicalStructuresAction_0;
-	public static String AvailableLogicalStructuresAction_1;
-	public static String AvailableLogicalStructuresAction_2;
-
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, VariablesViewMessages.class);
-	}
-
-	public static String MaxDetailsLengthDialog_0;
-
-	public static String MaxDetailsLengthDialog_1;
-
-	public static String MaxDetailsLengthDialog_2;
-
-	public static String MaxDetailsLengthDialog_3;
-}
\ No newline at end of file
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.properties b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.properties
deleted file mode 100644
index 2a0e838..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewMessages.properties
+++ /dev/null
@@ -1,39 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-find_replace_action_label=&Find/Replace...
-find_replace_action_tooltip=Find/Replace
-find_replace_action_image=
-find_replace_action_description=Find/Replace
-
-VariablesView__Copy_8=&Copy
-VariablesView__Paste_14=&Paste
-VariablesView__error_occurred_retrieving_value__18=<error occurred retrieving value>
-VariablesView_Co_ntent_Assist_3=Co&ntent Assist
-VariablesView_Cu_t_11=Cu&t
-VariablesView_Error_1=Error
-VariablesView_Select__All_5=Select &All
-VariablesView_Unable_to_configure_variable_details_area__2=Unable to configure variable details area.
-VariablesView_56={0} : {1}
-
-ToggleObjectBrowsersAction_1=Show Logical Structure
-VariablesView_41=Variables View Only
-ExpressionView_4=Expressions View Only
-
-IndexedVariablePartition_4=Value modification not supported for indexed partitions.
-
-AvailableLogicalStructuresAction_0=Select From Available Logical Structures
-AvailableLogicalStructuresAction_1=&Show As
-AvailableLogicalStructuresAction_2=\ (displayed)
-MaxDetailsLengthDialog_0=Configure Details Area
-MaxDetailsLengthDialog_1=&Maximum characaters to display in details area (0 = unlimited):
-MaxDetailsLengthDialog_2=Integer must be non-negaitve
-MaxDetailsLengthDialog_3=Enter an integer
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewer.java
deleted file mode 100644
index 431bd5c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/VariablesViewer.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
- 
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.internal.ui.views.DebugUIViewsMessages;
-import org.eclipse.debug.internal.ui.views.IRemoteTreeViewerUpdateListener;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Item;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.progress.UIJob;
-
-/**
- * Variables viewer. As the user steps through code, this
- * we ensure that newly added varibles are visible.
- */
-public class VariablesViewer extends RemoteTreeViewer {
-    
-    private ArrayList fUpdateListeners = new ArrayList();
-    private StateRestorationJob fStateRestorationJob = new StateRestorationJob(DebugUIViewsMessages.RemoteTreeViewer_0); //$NON-NLS-1$
-    private VariablesView fView = null;
-    
-    private class StateRestorationJob extends UIJob {
-        public StateRestorationJob(String name) {
-            super(name);
-            setSystem(true);
-        }
-
-        /* (non-Javadoc)
-         * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        public IStatus runInUIThread(IProgressMonitor monitor) {
-            restoreExpansionState();
-            return Status.OK_STATUS;
-        }   
-    }
-
-	/**
-	 * Constructor for VariablesViewer.
-	 * @param parent
-	 * @param style
-	 * @param view containing view, or <code>null</code> if none
-	 */
-	public VariablesViewer(Composite parent, int style, VariablesView view) {
-		super(parent, style);
-		fView = view;
-	}
-	
-	/**
-	 * @see AbstractTreeViewer#newItem(Widget, int, int)
-	 */
-	protected Item newItem(Widget parent, int style, int index) {
-		Item item = super.newItem(parent, style, index);
-		if (index != -1 && getSelection(getControl()).length == 0) {
-			//ignore the dummy items
-			showItem(item);
-		} 
-		return item;
-	}
-	
-	/**
-	 * @see org.eclipse.jface.viewers.AbstractTreeViewer#setExpandedElements(Object[])
-	 */
-	public void setExpandedElements(Object[] elements) {
-		getControl().setRedraw(false);
-		super.setExpandedElements(elements);
-		getControl().setRedraw(true);
-	}
-	
-	/* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.RemoteTreeViewer#runDeferredUpdates()
-     */
-    protected void runDeferredUpdates() {
-        super.runDeferredUpdates();
-        fStateRestorationJob.schedule();
-    }
-
-    /* (non-Javadoc)
-	 * @see org.eclipse.jface.viewers.AbstractTreeViewer#collapseAll()
-	 */
-	public void collapseAll() {
-		//see https://bugs.eclipse.org/bugs/show_bug.cgi?id=39449
-		if (getRoot() != null) {
-			super.collapseAll();
-		}
-	}
-	
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.internal.ui.views.RemoteTreeViewer#restoreExpansionState()
-     */
-    protected synchronized void restoreExpansionState() {
-        cancelJobs();
-        for (Iterator i = fUpdateListeners.iterator(); i.hasNext();) {
-            IRemoteTreeViewerUpdateListener listener = (IRemoteTreeViewerUpdateListener) i.next();
-            listener.treeUpdated();
-        }
-    }
-    
-    public void addUpdateListener(IRemoteTreeViewerUpdateListener listener) {
-        fUpdateListeners.add(listener);
-    }
-    public void removeUpdateListener(IRemoteTreeViewerUpdateListener listener) {
-        fUpdateListeners.remove(listener);
-    }
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.views.RemoteTreeViewer#replace(java.lang.Object, java.lang.Object[], int)
-	 */
-	public synchronized void replace(Object parent, Object[] children, int offset) {
-		if (fView != null) {
-	    	if (children.length == 1 && children[0] instanceof DebugException) {
-	    		IStatus status = ((DebugException)children[0]).getStatus();
-	    		if (status != null) {
-	    			String message = status.getMessage();
-	    			if (message != null) {
-	    				fView.showMessage(message);
-	    			}
-	    		}
-	    		return;
-	    	}
-	    	fView.showViewer();
-		}
-		super.replace(parent, children, offset);
-	}
-    
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ViewerState.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ViewerState.java
deleted file mode 100644
index 7198279..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/variables/ViewerState.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
- *******************************************************************************/
-package org.eclipse.debug.internal.ui.views.variables;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.debug.internal.ui.views.AbstractViewerState;
-import org.eclipse.debug.internal.ui.views.RemoteTreeViewer;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.swt.widgets.TreeItem;
-
-/**
- * Memento of the expanded and selected items in a variables viewer.
- * 
- * @since 2.1
- */
-public class ViewerState extends AbstractViewerState {
-
-	/**
-	 * Constructs a memento for the given viewer.
-	 */
-	public ViewerState(TreeViewer viewer) {
-		super(viewer);
-	}
-
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.AbstractViewerState#encodeElement(org.eclipse.swt.widgets.TreeItem)
-	 */
-	protected IPath encodeElement(TreeItem item) throws DebugException {
-	    Object data = item.getData();
-	    if (data instanceof IVariable) {
-	        IVariable variable = (IVariable)data;
-	        IPath path = new Path(variable.getName());
-	        TreeItem parent = item.getParentItem();
-	        while (parent != null) {
-	            variable = (IVariable)parent.getData();
-	            path = new Path(variable.getName()).append(path);
-	            parent = parent.getParentItem();
-	        }
-	        return path;
-	    }
-	    
-        return null;
-	}
-
-	/**
-	 * @see org.eclipse.debug.internal.ui.views.AbstractViewerState#decodePath(org.eclipse.core.runtime.IPath, org.eclipse.jface.viewers.TreeViewer)
-	 */
-	protected Object decodePath(IPath path, TreeViewer viewer) throws DebugException {
-		ITreeContentProvider contentProvider = (ITreeContentProvider)viewer.getContentProvider();
-		String[] names = path.segments();
-		Object parent = viewer.getInput();
-		IVariable variable = null;
-		for (int i = 0; i < names.length; i++) {
-			variable = null;
-			Object[] children = null;
-			if (viewer instanceof RemoteTreeViewer) {
-				children = ((RemoteTreeViewer)viewer).getCurrentChildren(parent);
-			} else {
-				children = contentProvider.getChildren(parent);
-			}
-			if (children == null) {
-				return null;
-			}
-			String name = names[i];
-			for (int j = 0; j < children.length; j++) {
-                if (!(children[j] instanceof IVariable)) {
-                    continue;
-                }
-				IVariable var = (IVariable)children[j];
-				if (var.getName().equals(name)) {
-					variable = var;
-					break;
-				}
-			}
-			if (variable == null) {
-				return null;
-			} 
-			parent = variable;
-		}
-		return variable;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractBreakpointOrganizerDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractBreakpointOrganizerDelegate.java
deleted file mode 100644
index 4b3deb2..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractBreakpointOrganizerDelegate.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.views.breakpoints.OtherBreakpointCategory;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.ListenerList;
-import org.eclipse.jface.util.PropertyChangeEvent;
-
-/**
- * Common function for breakpoint organizer delegates.
- * <p>
- * Clients implementing <code>IBreakpointOrganizerDelegate</code> must subclass this class.
- * </p>
- * @since 3.1
- */
-public abstract class AbstractBreakpointOrganizerDelegate implements IBreakpointOrganizerDelegate {
-    
-    // property change listeners
-    private ListenerList fListeners = new ListenerList();
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#addBreakpoint(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public void addBreakpoint(IBreakpoint breakpoint, IAdaptable category) {
-        // do noting, not supported by default
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-     */
-    public void addPropertyChangeListener(IPropertyChangeListener listener) {
-        fListeners.add(listener);
-    }
-    
-    /* (non-Javadoc)
-     * 
-     * Subclasses that override should return super.canAdd(...) when they are not able to add
-     * the breakpoint.
-     * 
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#canAdd(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public boolean canAdd(IBreakpoint breakpoint, IAdaptable category) {
-        return category instanceof OtherBreakpointCategory;
-    }
-    
-    /* (non-Javadoc)
-     * 
-     * Subclasses that override should return super.canRemove(...) when they are not able to remove
-     * the breakpoint.
-     * 
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#canRemove(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public boolean canRemove(IBreakpoint breakpoint, IAdaptable category) {
-        return category instanceof OtherBreakpointCategory;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#dispose()
-     */
-    public void dispose() {
-        fListeners.clear();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#removeBreakpoint(org.eclipse.debug.core.model.IBreakpoint, org.eclipse.core.runtime.IAdaptable)
-     */
-    public void removeBreakpoint(IBreakpoint breakpoint, IAdaptable category) {
-        // do nothing, not supported by default
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-     */
-    public void removePropertyChangeListener(IPropertyChangeListener listener) {
-        fListeners.remove(listener);
-    }
-    
-    /**
-     * Fires a property change notification for the given category.
-     * 
-     * @param category category that has changed
-     */
-    protected void fireCategoryChanged(IAdaptable category) {
-        if (fListeners.isEmpty()) {
-            return;
-        }
-        final PropertyChangeEvent event = new PropertyChangeEvent(this, P_CATEGORY_CHANGED, category, null);
-        Object[] listeners = fListeners.getListeners();
-        for (int i = 0; i < listeners.length; i++) {
-            final IPropertyChangeListener listener = (IPropertyChangeListener) listeners[i];
-            ISafeRunnable runnable = new ISafeRunnable() {
-                public void handleException(Throwable exception) {
-                    DebugUIPlugin.log(exception);
-                }
-                public void run() throws Exception {
-                    listener.propertyChange(event);
-                }
-            };
-            Platform.run(runnable);
-        }
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.ui.IBreakpointOrganizerDelegate#getCategories()
-     */
-    public IAdaptable[] getCategories() {
-        return null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractDebugView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractDebugView.java
deleted file mode 100644
index c423f14..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractDebugView.java
+++ /dev/null
@@ -1,994 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.debug.internal.ui.LazyModelPresentation;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IContributionItem;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.text.TextViewer;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IBaseLabelProvider;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.StructuredViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.IPartListener2;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.IPage;
-import org.eclipse.ui.part.MessagePage;
-import org.eclipse.ui.part.Page;
-import org.eclipse.ui.part.PageBook;
-import org.eclipse.ui.part.PageBookView;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * Common function for views related to debugging. Clients implementing
- * views for a debugger should subclass this class. Common function 
- * includes:
- * <ul>
- * <li>Debug view adpater implementation - <code>IDebugView</code></li>
- * <li>Action registry - actions can be stored in this view
- * 		with a key. Actions that implement <code>IUpdate</code>
- *      are updated when <code>updateActions()</code> is
- *		called.</li>
- * <li>Hooks the context menu associated with this view's
- * 		underlying viewer and registers the menu with this
- * 		view's site, such that other plug-ins may contribute.</li>
- * <li>Hooks a key press listener, and invokes the
- * 		<code>REMOVE_ACTION</code> when the delete key 
- * 		is pressed.</li>
- * <li>Hooks a double-click listener, and invokes the
- * 		<code>DOUBLE_CLICK_ACTION</code> when the mouse 
- * 		is double-clicked.</li>
- * <li>Provides a mechanism for displaying an error message
- * 		in the view, via the <code>PageBookView</code> mechanism.
- * 		By default, a page book is created with a page showing
- * 		this view's viewer. A message page is also created
- * 		and shown when <code>showMessage(String)</code> is
- * 		called.</li>
- * <li>Notification when this view becomes visible and becomes
- * 		hidden via <code>becomesVisible()</code> and <code>becomesHidden()</code>.</li>
- * <li>Linking of a help context id via <code>getHelpContextId().</code></li>
- * </ul>
- * <p>
- * This class may be subclassed.
- * </p>
- * @since 2.0
- */
-
-public abstract class AbstractDebugView extends PageBookView implements IDebugView, IDoubleClickListener {
-	
-	/**
-	 * Underlying viewer that displays the contents of
-	 * this view.
-	 */
-	private Viewer fViewer = null;
-	
-	/**
-	 * This view's message page.
-	 */
-	private MessagePage fMessagePage = null;
-	
-	/**
-	 * Map of actions. Keys are strings, values
-	 * are <code>IAction</code>.
-	 */
-	private Map fActionMap = null;
-	
-	/**
-	 * Map of actions. Keys are strings, values
-	 * are <code>IAction</code>.
-	 */
-	private List fUpdateables = null;
-	
-	/**
-	 * The collection of menu managers that are
-	 * relevant for this view.
-	 */
-	private List fContextMenuManagers;
-	
-	/**
-	 * The memento that was used to persist the state of this view.
-	 * May be <code>null</code>.
-	 */
-	private IMemento fMemento;
-	
-	/**
-	 * Whether this view is currently visible.
-	 */
-	private boolean fIsVisible = false;
-	
-	/**
-	 * The part listener for this view, used to notify this view when it
-	 * becomes visible and hidden. Set to <code>null</code> when this view isn't
-	 * currently listening to part changes.
-	 */
-	private DebugViewPartListener fPartListener= null;
-	
-	/**
-	 * A message was requested to be displayed before the view was fully
-	 * created. The message is cached until it can be properly displayed.
-	 */
-	private String fEarlyMessage= null;
-
-	/**
-	 * Part listener that disables updating when the view is not visible and
-	 * reenables updating when the view appears.
-	 */
-	private class DebugViewPartListener implements IPartListener2 {
-		/**
-		 * 
-		 * @see org.eclipse.ui.IPartListener2#partVisible(IWorkbenchPartReference)
-		 */
-		public void partVisible(IWorkbenchPartReference ref) {
-			IWorkbenchPart part= ref.getPart(false);
-			if (part == AbstractDebugView.this) {
-				fIsVisible = true;
-				becomesVisible();
-			}
-		}
-		/**
-		 * @see org.eclipse.ui.IPartListener2#partHidden(IWorkbenchPartReference)
-		 */
-		public void partHidden(IWorkbenchPartReference ref) {
-			IWorkbenchPart part= ref.getPart(false);
-			if (part == AbstractDebugView.this) {
-				fIsVisible = false;
-				becomesHidden();
-			}
-		}
-		/**
-		 * @see org.eclipse.ui.IPartListener2#partActivated(IWorkbenchPartReference)
-		 */
-		public void partActivated(IWorkbenchPartReference ref) {
-		}
-
-		/**
-		 * @see org.eclipse.ui.IPartListener2#partBroughtToTop(IWorkbenchPartReference)
-		 */
-		public void partBroughtToTop(IWorkbenchPartReference ref) {
-		}
-
-		/**
-		 * @see org.eclipse.ui.IPartListener2#partClosed(IWorkbenchPartReference)
-		 */
-		public void partClosed(IWorkbenchPartReference ref) {
-		}
-
-		/**
-		 * @see org.eclipse.ui.IPartListener2#partDeactivated(IWorkbenchPartReference)
-		 */
-		public void partDeactivated(IWorkbenchPartReference ref) {
-		}
-
-		/**
-		 * @see org.eclipse.ui.IPartListener2#partOpened(IWorkbenchPartReference)
-		 */
-		public void partOpened(IWorkbenchPartReference ref) {
-		}
-		
-		/**
-		 * @see org.eclipse.ui.IPartListener2#partInputChanged(IWorkbenchPartReference)
-		 */
-		public void partInputChanged(IWorkbenchPartReference ref){
-		}
-
-	}	
-	
-	/**
-	 * Constructs a new debug view.
-	 */
-	public AbstractDebugView() {
-		fActionMap = new HashMap(5);
-		fUpdateables= new ArrayList(3);
-	}
-	
-	/**
-	 * Debug views implement the debug view adapter which
-	 * provides access to a view's underlying viewer and
-	 * debug model presentation for a specific debug model.
-	 * 
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 * @see IDebugView
-	 */
-	public Object getAdapter(Class adapter) {
-		if (adapter == IDebugView.class) {
-			return this;
-		}
-		if (adapter == IDebugModelPresentation.class) {
-			StructuredViewer viewer = getStructuredViewer();
-			if (viewer != null) {
-				IBaseLabelProvider labelProvider = viewer.getLabelProvider();
-				if (labelProvider instanceof IDebugModelPresentation) {
-					return (IDebugModelPresentation)labelProvider;
-				}
-			}
-		}
-		return super.getAdapter(adapter);
-	}
-	
-	/**
-	 * A page in this view's page book that contains this
-	 * view's viewer.
-	 */
-	class ViewerPage extends Page {
-		/**
-		 * @see IPage#createControl(Composite)
-		 */
-		public void createControl(Composite parent) {
-			Viewer viewer = createViewer(parent);
-			setViewer(viewer);			
-		}
-
-		/**
-		 * @see IPage#getControl()
-		 */
-		public Control getControl() {
-			return getDefaultControl();
-		}
-
-		/**
-		 * @see IPage#setFocus()
-		 */
-		public void setFocus() {
-			Viewer viewer= getViewer();
-			if (viewer != null) {
-				Control c = viewer.getControl();
-				if (!c.isFocusControl()) {
-					c.setFocus();
-				}
-			}
-		}
-
-}
-	
-	/**
-	 * Creates this view's underlying viewer and actions.
-	 * Hooks a pop-up menu to the underlying viewer's control,
-	 * as well as a key listener. When the delete key is pressed,
-	 * the <code>REMOVE_ACTION</code> is invoked. Hooks help to
-	 * this view. Subclasses must implement the following methods
-	 * which are called in the following order when a view is
-	 * created:<ul>
-	 * <li><code>createViewer(Composite)</code> - the context
-	 *   menu is hooked to the viewer's control.</li>
-	 * <li><code>createActions()</code></li>
-	 * <li><code>configureToolBar(IToolBarManager)</code></li>
-	 * <li><code>getHelpContextId()</code></li>
-	 * </ul>
-	 * @see IWorkbenchPart#createPartControl(Composite)
-	 * @see AbstractDebugView#createPartControl(Composite)
-	 * @see AbstractDebugView#createActions()
-	 * @see AbstractDebugView#configureToolBar(IToolBarManager)
-	 * @see AbstractDebugView#getHelpContextId()
-	 * @see AbstractDebugView#fillContextMenu(IMenuManager)
-	 */
-	public void createPartControl(Composite parent) {
-		registerPartListener();
-		super.createPartControl(parent);
-		createActions();
-		initializeToolBar();
-		Viewer viewer = getViewer();
-		if (viewer != null) {
-			createContextMenu(viewer.getControl());
-		}
-		String helpId = getHelpContextId();
-		if (helpId != null) {
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, helpId);
-		}
-		if (viewer != null) {
-			getViewer().getControl().addKeyListener(new KeyAdapter() {
-				public void keyPressed(KeyEvent e) {
-					handleKeyPressed(e);
-				}
-			});
-			if (getViewer() instanceof StructuredViewer) {
-				((StructuredViewer)getViewer()).addDoubleClickListener(this);	
-			}
-		}
-		// create the message page
-		setMessagePage(new MessagePage());
-		getMessagePage().createControl(getPageBook());
-		initPage(getMessagePage());
-		
-		if (fEarlyMessage != null) { //bug 28127
-			showMessage(fEarlyMessage);
-			fEarlyMessage= null;
-		}
-	}	
-	
-	/**
-	 * The default page for a debug view is its viewer.
-	 * 
-	 * @see PageBookView#createDefaultPage(PageBook)
-	 */
-	protected IPage createDefaultPage(PageBook book) {
-		ViewerPage page = new ViewerPage();
-		page.createControl(book);
-		initPage(page);
-		return page;
-	}	
-
-	/**
-	 * Creates and returns this view's underlying viewer.
-	 * The viewer's control will automatically be hooked
-	 * to display a pop-up menu that other plug-ins may
-	 * contribute to. Subclasses must override this method.
-	 * 
-	 * @param parent the parent control
-	 */
-	protected abstract Viewer createViewer(Composite parent);
-	
-	/**
-	 * Creates this view's actions. Subclasses must
-	 * override this method, which is called after
-	 * <code>createViewer(Composite)</code>
-	 */
-	protected abstract void createActions();	
-	
-	/**
-	 * Returns this view's help context id, which is hooked
-	 * to this view on creation.
-	 * 
-	 * @return help context id
-	 */
-	protected abstract String getHelpContextId();
-	
-	/**
-	 * @see IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-		saveAllCheckedActionStates();
-		deregisterPartListener();
-		if (getViewer() instanceof StructuredViewer) {
-			((StructuredViewer)getViewer()).removeDoubleClickListener(this);
-		}
-		setViewer(null);
-		fActionMap.clear();
-		super.dispose();
-	}
-	
-	/**
-	 * Saves the checked state for all actions contributed to the toolbar
-	 * manager that function as a toggleable action.  The states are saved in
-	 * the Debug UI plugin's preference store.
-	 * 
-	 * @since 2.1
-	 */
-	protected void saveAllCheckedActionStates() {
-		IToolBarManager tbm= getViewSite().getActionBars().getToolBarManager();
-		IContributionItem[] items= tbm.getItems();
-		for (int i = 0; i < items.length; i++) {
-			IContributionItem iContributionItem = items[i];
-			if (iContributionItem instanceof ActionContributionItem) {
-				ActionContributionItem item= (ActionContributionItem)iContributionItem;
-				IAction action= item.getAction();
-				if (action.getStyle() == IAction.AS_CHECK_BOX && action.isEnabled()) {
-					saveCheckedActionState(action);					
-				}
-			}		
-		}		
-	}
-	
-	/**
-	 * Save the checked state of the specified action in the Debug UI plugin's
-	 * preference store.  The specified action is expected to be enabled and
-	 * support the style <code>IAction.AS_CHECK_BOX</code>.
-	 * 
-	 * @param action the enabled, toggleable action whose checked state will be
-	 * saved in preferences
-	 * @since 2.1
-	 */
-	protected void saveCheckedActionState(IAction action) {
-		String prefKey = generatePreferenceKey(action);
-		IPreferenceStore prefStore = getPreferenceStore();
-		prefStore.setValue(prefKey, action.isChecked());
-	}
-	
-	/**
-	 * Generate a String that can be used as a key into a preference store based
-	 * on the specified action.  The resulting String will be unique across
-	 * views.
-	 * 
-	 * @return a String suitable for use as a preference store key for the given
-	 * action
-	 * @since 2.1
-	 */
-	protected String generatePreferenceKey(IAction action) {
-		return getViewSite().getId() + '+' + action.getId();		
-	}
-	
-	/**
-	 * Convenience method to return the preference store for the Debug UI
-	 * plugin.
-	 * 
-	 * @return the preference store for the Debug UI plugin
-	 * @since 2.1
-	 */
-	protected IPreferenceStore getPreferenceStore() {
-		return DebugUIPlugin.getDefault().getPreferenceStore();
-	}
-	
-	/**
-	 * @see IDebugView#getViewer()
-	 */
-	public Viewer getViewer() {
-		return fViewer;
-	}
-	
-	/**
-	 * Returns this view's viewer as a structured viewer,
-	 * or <code>null</code> if none.
-	 * 
-	 * @return this view's viewer as a structured viewer
-	 * 	or <code>null</code>
-	 */
-	protected StructuredViewer getStructuredViewer() {
-		if (getViewer() instanceof StructuredViewer) {
-			return (StructuredViewer)getViewer();
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns this view's viewer as a text viewer,
-	 * or <code>null</code> if none.
-	 * 
-	 * @return this view's viewer as a text viewer
-	 * 	or <code>null</code>
-	 */
-	protected TextViewer getTextViewer() {
-		if (getViewer() instanceof TextViewer) {
-			return (TextViewer)getViewer();
-		}
-		return null;
-	}	
-	
-	/**
-	 * @see IDebugView#getPresentation(String)
-	 */
-	public IDebugModelPresentation getPresentation(String id) {
-		if (getViewer() instanceof StructuredViewer) {
-			IBaseLabelProvider lp = ((StructuredViewer)getViewer()).getLabelProvider();
-			if (lp instanceof DelegatingModelPresentation) {
-				return ((DelegatingModelPresentation)lp).getPresentation(id);
-			}
-			if (lp instanceof LazyModelPresentation) {
-				if (((LazyModelPresentation)lp).getDebugModelIdentifier().equals(id)) {
-					return (IDebugModelPresentation)lp;
-				}
-			}
-		}
-		return null;
-	}
-	
-	/**
-	 * Creates a pop-up menu on the given control. The menu
-	 * is registered with this view's site, such that other
-	 * plug-ins may contribute to the menu. Subclasses should
-	 * call this method, specifying the menu control as the
-	 * control used in their viewer (for example, tree viewer).
-	 * Subclasses must implement the method
-	 * <code>#fillContextMenu(IMenuManager)</code> which will
-	 * be called each time the context menu is realized.
-	 * 
-	 * @param menuControl the control with which the pop-up
-	 *  menu will be associated with.
-	 */
-	protected void createContextMenu(Control menuControl) {
-		MenuManager menuMgr= new MenuManager("#PopUp"); //$NON-NLS-1$
-		menuMgr.setRemoveAllWhenShown(true);
-		menuMgr.addMenuListener(new IMenuListener() {
-			public void menuAboutToShow(IMenuManager mgr) {
-				fillContextMenu(mgr);
-			}
-		});
-		Menu menu= menuMgr.createContextMenu(menuControl);
-		menuControl.setMenu(menu);
-
-		// register the context menu such that other plugins may contribute to it
-		if (getSite() != null) {
-			getSite().registerContextMenu(menuMgr, getViewer());
-		}
-		addContextMenuManager(menuMgr);
-	}
-	
-	/**
-	 * @see IDebugView#getContextMenuManager()
-	 * 
-	 * @deprecated @see AbstractDebugView.getContextMenuManagers()
-	 */
-	public IMenuManager getContextMenuManager() {
-		if (fContextMenuManagers != null) {
-			fContextMenuManagers.get(fContextMenuManagers.size() - 1);
-		}
-		return null;
-	}
-	
-	/**
-	 * Returns the context menu managers relevant to this view.
-	 * 
-	 * @return the context menu managers relevant to this view
-	 * @since 2.1
-	 */
-	public List getContextMenuManagers() {
-		return fContextMenuManagers;
-	}
-	
-	/**
-	 * Subclasses must override this method to fill the context
-	 * menu each time it is realized.
-	 * 
-	 * @param menu the context menu
-	 */
-	protected abstract void fillContextMenu(IMenuManager menu);	
-	
-	/**
-	 * Configures this view's toolbar. Subclasses implement
-	 * <code>#configureToolBar(IToolBarManager)</code> to
-	 * contribute actions to the toolbar.
-	 * <p>
-	 * To properly initialize toggle actions that are contributed
-	 * to this view, state is restored for toggle actions that have
-	 * a persisted state in the Debug UI plugin's preferences.  As well, any
-	 * toggle actions that have an initial state of 'checked' are invoked. The
-	 * actions' states are restored and the actions are invoked in a runnable,
-	 * after the view is created.
-	 * </p>
-	 */
-	protected void initializeToolBar() {
-		final IToolBarManager tbm= getViewSite().getActionBars().getToolBarManager();
-		configureToolBar(tbm);
-		getViewSite().getActionBars().updateActionBars();
-		
-		// This is done in a runnable to be run after this view's pane
-		// is created
-		Runnable r = new Runnable() {
-			public void run() {
-				if (!isAvailable()) {
-					return;
-				}
-				IContributionItem[] items = tbm.getItems();
-				if (items != null) {
-					for (int i = 0; i < items.length; i++) {
-						if (items[i] instanceof ActionContributionItem) {
-							IAction action = ((ActionContributionItem)items[i]).getAction();
-							if (action.getStyle() == IAction.AS_CHECK_BOX) {
-								initActionState(action);	
-								if (action.isChecked()) {
-									action.run();
-								}
-							}
-						}
-					}
-					setMemento(null);
-				}
-				updateObjects();
-			}
-		};
-		asyncExec(r);
-	}
-	
-	/**
-	 * Restores the persisted checked state of the specified action that was
-	 * stored in preferences. If the action is disabled, its persisted state
-	 * is not restored (because a disabled action cannot be run).
-	 * 
-	 * @param action the action whose checked state will be restored
-	 * @since 2.1
-	 */
-	protected void initActionState(IAction action) {
-		String id = action.getId();
-		if (id != null && action.isEnabled()) {
-			String prefKey = generatePreferenceKey(action);
-			boolean checked = getPreferenceStore().getBoolean(prefKey);
-			action.setChecked(checked);
-		}
-	}
-
-	/**
-	 * @see IViewPart#init(IViewSite, IMemento)
-	 */
-	public void init(IViewSite site, IMemento memento) throws PartInitException {
-		super.init(site, memento);
-		//store the memento to be used when this view is created.
-		setMemento(memento);
-	}	 
-
-	/**
-	 * Sets the viewer for this view.
-	 * 
-	 * @param viewer viewer
-     * @since 3.1
-	 */
-	protected void setViewer(Viewer viewer) {
-		fViewer = viewer;
-	}
-	
-	/**
-	 * Subclasses implement this menu to contribute actions
-	 * to the toolbar. This method is called after 
-	 * <code>createActions()</code>.
-	 * 
-	 * @param tbm the tool bar manager for this view's site
-	 * @see #createViewer(Composite)
-	 */
-	protected abstract void configureToolBar(IToolBarManager tbm);	
-	
-	/**
-	 * @see IDebugView#setAction(String, IAction)
-	 */
-	public void setAction(String actionID, IAction action) {
-		if (action == null) {
-			Object removedAction= fActionMap.remove(actionID);
-			fUpdateables.remove(removedAction);
-		} else {
-			fActionMap.put(actionID, action);
-			if (action instanceof IUpdate) {
-				fUpdateables.add(action);
-			}
-		}
-		if (actionID.equals(SELECT_ALL_ACTION)) {
-			IActionBars actionBars = getViewSite().getActionBars();	
-			actionBars.setGlobalActionHandler(actionID, action);
-		} else if (actionID.equals(COPY_ACTION)) {
-			IActionBars actionBars = getViewSite().getActionBars();	
-			actionBars.setGlobalActionHandler(actionID, action);
-		} else if (actionID.equals(CUT_ACTION)) {
-			IActionBars actionBars = getViewSite().getActionBars();	
-			actionBars.setGlobalActionHandler(actionID, action);
-		} else if (actionID.equals(PASTE_ACTION)) {
-			IActionBars actionBars = getViewSite().getActionBars();	
-			actionBars.setGlobalActionHandler(actionID, action);
-		} else if (actionID.equals(FIND_ACTION)) {
-			IActionBars actionBars = getViewSite().getActionBars();	
-			actionBars.setGlobalActionHandler(actionID, action);
-		}
-	}	
-	
-	/**
-	 * @see IDebugView#getAction(String)
-	 */
-	public IAction getAction(String actionID) {
-		return (IAction) fActionMap.get(actionID);
-	}
-	
-	/**
-	 * Updates all the registered updatables.
-	 */
-	public void updateObjects() {
-		Iterator actions = fUpdateables.iterator();
-		while (actions.hasNext()) {
-			((IUpdate)actions.next()).update();
-		}
-	}
-			
-	/**
-	 * Handles key events in viewer. Invokes
-	 * <ol> 
-	 * <li><code>REMOVE_ACTION</code> when the delete
-	 * key is pressed</li>
-	 */
-	protected void handleKeyPressed(KeyEvent event) {
-		if (event.character == SWT.DEL && event.stateMask == 0) {
-			IAction action = getAction(REMOVE_ACTION);
-			if (action != null && action.isEnabled()) {
-				action.run();
-			}
-		}
-	}	
-	
-	/**
-	 * Delegate to the <code>DOUBLE_CLICK_ACTION</code>,
-	 * if any.
-	 *  
-	 * @see IDoubleClickListener#doubleClick(DoubleClickEvent)
-	 */
-	public void doubleClick(DoubleClickEvent event) {
-		IAction action = getAction(DOUBLE_CLICK_ACTION);
-		if (action != null && !event.getSelection().isEmpty() && action.isEnabled()) {
-			action.run();
-		}
-	}	
-	
-	/**
-	 * Registers the given runnable with the display
-	 * associated with this view's control, if any.
-	 * 
-	 * @see org.eclipse.swt.widgets.Display#asyncExec(java.lang.Runnable)
-	 */
-	public void asyncExec(Runnable r) {
-		if (isAvailable()) {
-			getControl().getDisplay().asyncExec(r);
-		}
-	}
-	
-	/**
-	 * Returns the control for this view, or <code>null</code> if none.
-	 * 
-	 * @return the control for this view, or <code>null</code> if none
-	 * @since 3.0
-	 */
-	protected Control getControl() {
-		return getViewer().getControl();
-	}
-	
-	/**
-	 * Registers the given runnable with the display
-	 * associated with this view's control, if any.
- 	 *
-	 * @see org.eclipse.swt.widgets.Display#syncExec(java.lang.Runnable)
-	 */
-	public void syncExec(Runnable r) {
-		if (isAvailable()) {
-			getControl().getDisplay().syncExec(r);
-		}
-	}	
-	
-	/**
-	 * Returns the memento that contains the persisted state of
-	 * the view.  May be <code>null</code>.
-	 */
-	protected IMemento getMemento() {
-		return fMemento;
-	}
-
-	/** 
-	 * Sets the memento that contains the persisted state of the 
-	 * view.
-	 */
-	protected void setMemento(IMemento memento) {
-		fMemento = memento;
-	}
-	
-	/**
-	 * Returns the specified view in this view's page
-	 * or <code>null</code> if none.
-	 * 
-	 * @param id view identifier
-	 * @return view part
-	 */
-	protected IViewPart findView(String id) {
-		IWorkbenchPage page = getSite().getPage();
-		IViewPart view = null;
-		if (page != null) {
-			view = page.findView(id);
-		}
-		return view;	
-	}
-	
-	/**
-	 * @see PageBookView#isImportant(IWorkbenchPart)
-	 */
-	protected boolean isImportant(IWorkbenchPart part) {
-		return false;
-	}
-
-	/**
-	 * @see PageBookView#doCreatePage(IWorkbenchPart)
-	 */
-	protected PageRec doCreatePage(IWorkbenchPart part) {
-		return null;
-	}
-
-	/**
-	 * @see PageBookView#doDestroyPage(org.eclipse.ui.IWorkbenchPart, org.eclipse.ui.part.PageBookView.PageRec)
-	 */
-	protected void doDestroyPage(IWorkbenchPart part, PageRec pageRecord) {
-	}
-
-	/**
-	 * @see PageBookView#getBootstrapPart()
-	 */
-	protected IWorkbenchPart getBootstrapPart() {
-		return null;
-	}
-
-	/**
-	 * Returns the default control for this view. By default,
-	 * this view's viewer's control is returned. Subclasses
-	 * should override if required - for example, if this
-	 * view has its viewer nested inside other controls.
-	 * 
-	 * @return this view's default control.
-	 */ 
-	protected Control getDefaultControl() {
-		Viewer viewer = getViewer();
-		if (viewer != null) {
-			return viewer.getControl();
-		} 
-		return null;
-	}
-	
-	/**
-	 * Sets this view's message page
-	 * 
-	 * @param page message page
-	 */
-	private void setMessagePage(MessagePage page) {
-		fMessagePage = page;
-	}
-	
-	/**
-	 * Returns this view's message page
-	 * 
-	 * @return message page
-	 */
-	protected MessagePage getMessagePage() {
-		return fMessagePage;
-	}	
-	
-	/**
-	 * Shows the given message in this view's message'
-	 * page. Makes the message page the visible page.
-	 * 
-	 * @param message the message to display
-	 */
-	public void showMessage(String message) {
-		if (getPageBook().isDisposed()) {
-			return;
-		}
-		if (getMessagePage() == null) {
-			//not fully created yet
-			fEarlyMessage= message;
-			return;
-		}
-		getMessagePage().setMessage(message);
-		getPageBook().showPage(getMessagePage().getControl());
-	}
-	
-	/**
-	 * Shows this view's viewer page.
-	 */
-	public void showViewer() {
-		if (getPageBook().isDisposed()) {
-			return;
-		}
-		getPageBook().showPage(getDefaultPage().getControl());
-	}
-	
-	/**
-	 * Returns whether this view's viewer is
-	 * currently available.
-	 * 
-	 * @return whether this view's viewer is
-	 * currently available
-	 */
-	public boolean isAvailable() {
-		return !(getViewer() == null || getViewer().getControl() == null || getViewer().getControl().isDisposed());
-	}	
-	/**
-	 * @see IDebugView#add(IUpdate)
-	 */
-	public void add(IUpdate updatable) {
-		if (!fUpdateables.contains(updatable)) {
-			fUpdateables.add(updatable);
-		}
-	}
-
-	/**
-	 * @see IDebugView#remove(IUpdate)
-	 */
-	public void remove(IUpdate updatable) {
-		fUpdateables.remove(updatable);
-	}
-	
-	/**
-	 * Adds a context menu manager that is relevant to this view.
-	 * @param contextMenuManager The contextMenuManager to add
-	 * 
-	 * @since 2.1
-	 */
-	public void addContextMenuManager(IMenuManager contextMenuManager) {
-		if (fContextMenuManagers == null) {
-			fContextMenuManagers= new ArrayList();
-		}
-		fContextMenuManagers.add(contextMenuManager);
-	}
-	
-	/**
-	 * Notification this view is now visible.
-	 * 
-	 * @since 2.1
-	 */
-	protected void becomesVisible() {
-	}
-	
-	/**
-	 * Notification this view is now hidden.
-	 * 
-	 * @since 2.1
-	 */
-	protected void becomesHidden() {
-	}
-	
-	/**
-	 * Returns whether this view is currently visible.
-	 * 
-	 * @return whether this view is currently visbile
-	 * @since 2.1
-	 */
-	public boolean isVisible() {
-		return fIsVisible;
-	}
-	
-	/**
-	 * Creates and registers a part listener with this event handler's page,
-	 * if one does not already exist.
-	 * 
-	 * @since 2.1
-	 */
-	protected void registerPartListener() {
-		if (fPartListener == null) {
-			fPartListener= new DebugViewPartListener();
-			getSite().getPage().addPartListener(fPartListener);
-		}
-	}
-
-	/**
-	 * Deregisters and disposes this event handler's part listener.
-	 * 
-	 * @since 2.1
-	 */
-	protected void deregisterPartListener() {
-		if (fPartListener != null) {
-			getSite().getPage().removePartListener(fPartListener);
-			fPartListener = null;
-		}
-	}	
-
-	/**
-	 * Returns a map of the current attribute settings in the model
-	 * presentation in this view associated with the given debug model.
-	 * 
-	 * @return a map of the current attribute settings in the model
-	 * presentation in this view associated with the given debug model
-	 * @since 3.0
-	 */
-	public Map getPresentationAttributes(String modelId) {
-		IDebugModelPresentation presentation = getPresentation(modelId);
-		if (presentation instanceof DelegatingModelPresentation) {
-			return ((DelegatingModelPresentation)presentation).getAttributeMap();
-		} else if (presentation instanceof LazyModelPresentation) {
-			return ((LazyModelPresentation)presentation).getAttributeMap();
-		}
-		return new HashMap();
-	}
-}	
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTab.java
deleted file mode 100644
index 55b80e9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTab.java
+++ /dev/null
@@ -1,366 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
- 
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Common function for launch configuration tabs.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @see ILaunchConfigurationTab
- * @since 2.0
- */
-public abstract class AbstractLaunchConfigurationTab implements ILaunchConfigurationTab {
-	
-	/**
-	 * The control for this page, or <code>null</code>
-	 */
-	private Control fControl;
-
-	/**
-	 * The launch configuration dialog this tab is
-	 * contained in.
-	 */
-	private ILaunchConfigurationDialog fLaunchConfigurationDialog;
-	
-	/**
-	 * Current error message, or <code>null</code>
-	 */
-	private String fErrorMessage;
-	
-	/**
-	 * Current message, or <code>null</code>
-	 */
-	private String fMessage;
-	
-	/**
-	 * Whether this tab needs to apply changes. This attribute is initialized to
-	 * <code>true</code> to be backwards compatible. If clients want to take advantage
-	 * of such a feature, they should set the flag to false, and check it before
-	 * applying changes to the launch configuration working copy.
-	 * 
-	 * @since 2.1
-	 */
-	private boolean fDirty = true;	
-		
-	/**
-	 * Returns the dialog this tab is contained in, or
-	 * <code>null</code> if not yet set.
-	 * 
-	 * @return launch configuration dialog, or <code>null</code>
-	 */
-	protected ILaunchConfigurationDialog getLaunchConfigurationDialog() {
-		return fLaunchConfigurationDialog;
-	}	
-		
-	/**
-	 * Updates the buttons and message in this page's launch
-	 * configuration dialog.
-	 */
-	protected void updateLaunchConfigurationDialog() {
-		if (getLaunchConfigurationDialog() != null) {
-			//order is important here due to the call to 
-			//refresh the tab viewer in updateButtons()
-			//which ensures that the messages are up to date
-			getLaunchConfigurationDialog().updateButtons();
-			getLaunchConfigurationDialog().updateMessage();
-		}
-	}
-				
-	/**
-	 * @see ILaunchConfigurationTab#getControl()
-	 */
-	public Control getControl() {
-		return fControl;
-	}
-
-	/**
-	 * Sets the control to be displayed in this tab.
-	 * 
-	 * @param control the control for this tab
-	 */
-	protected void setControl(Control control) {
-		fControl = control;
-	}
-
-	/**
-	 * @see ILaunchConfigurationTab#getErrorMessage()
-	 */
-	public String getErrorMessage() {
-		return fErrorMessage;
-	}
-
-	/**
-	 * @see ILaunchConfigurationTab#getMessage()
-	 */
-	public String getMessage() {
-		return fMessage;
-	}
-
-	/**
-	 * By default, do nothing.
-	 * 
-	 * @see ILaunchConfigurationTab#launched(ILaunch)
-	 * @deprecated
-	 */
-	public void launched(ILaunch launch) {
-	}
-
-	/**
-	 * @see ILaunchConfigurationTab#setLaunchConfigurationDialog(ILaunchConfigurationDialog)
-	 */
-	public void setLaunchConfigurationDialog(ILaunchConfigurationDialog dialog) {
-		fLaunchConfigurationDialog = dialog;
-	}
-	
-	/**
-	 * Sets this page's error message, possibly <code>null</code>.
-	 * 
-	 * @param errorMessage the error message or <code>null</code>
-	 */
-	protected void setErrorMessage(String errorMessage) {
-		fErrorMessage = errorMessage;
-	}
-
-	/**
-	 * Sets this page's message, possibly <code>null</code>.
-	 * 
-	 * @param message the message or <code>null</code>
-	 */
-	protected void setMessage(String message) {
-		fMessage = message;
-	}
-	
-	/**
-	 * Convenience method to return the launch manager.
-	 * 
-	 * @return the launch manager
-	 */
-	protected ILaunchManager getLaunchManager() {
-		return DebugPlugin.getDefault().getLaunchManager();
-	}	
-	
-	/**
-	 * By default, do nothing.
-	 * 
-	 * @see ILaunchConfigurationTab#dispose()
-	 */
-	public void dispose() {
-	}
-	
-	/**
-	 * Returns the shell this tab is contained in, or <code>null</code>.
-	 * 
-	 * @return the shell this tab is contained in, or <code>null</code>
-	 */
-	protected Shell getShell() {
-		Control control = getControl();
-		if (control != null) {
-			return control.getShell();
-		}
-		return null;
-	}
-	
-	/**
-	 * Creates and returns a new push button with the given
-	 * label and/or image.
-	 * 
-	 * @param parent parent control
-	 * @param label button label or <code>null</code>
-	 * @param image image of <code>null</code>
-	 * 
-	 * @return a new push button
-	 */
-	protected Button createPushButton(Composite parent, String label, Image image) {
-		return SWTUtil.createPushButton(parent, label, image);	
-	}
-	
-	/**
-	 * Creates and returns a new radio button with the given
-	 * label and/or image.
-	 * 
-	 * @param parent parent control
-	 * @param label button label or <code>null</code>
-	 * 
-	 * @return a new radio button
-	 */
-	protected Button createRadioButton(Composite parent, String label) {
-		return SWTUtil.createRadioButton(parent, label);	
-	}	
-	
-	/**
-	 * Creates and returns a new check button with the given
-	 * label.
-	 * 
-	 * @param parent the parent composite
-	 * @param label the button label
-	 * @return a new check button
-	 * @since 3.0
-	 */
-	protected Button createCheckButton(Composite parent, String label) {
-		Button button = new Button(parent, SWT.CHECK);
-		button.setText(label);
-		GridData data = new GridData();
-		button.setLayoutData(data);
-		button.setFont(parent.getFont());
-		SWTUtil.setButtonDimensionHint(button);
-		return button;
-	}
-	
-	/**
-	 * @see ILaunchConfigurationTab#canSave()
-	 */
-	public boolean canSave() {
-		return true;
-	}
-	
-	/**
-	 * @see ILaunchConfigurationTab#isValid(ILaunchConfiguration)
-	 */
-	public boolean isValid(ILaunchConfiguration launchConfig) {
-		return true;
-	}
-
-	/**
-	 * Create some empty space.
-	 */
-	protected void createVerticalSpacer(Composite comp, int colSpan) {
-		Label label = new Label(comp, SWT.NONE);
-		GridData gd = new GridData();
-		gd.horizontalSpan = colSpan;
-		label.setLayoutData(gd);
-		label.setFont(comp.getFont());
-	}	
-	
-	/**
-	 * Create a horizontal separator.
-	 * 
-	 * @param comp parent widget
-	 * @param colSpan number of columns to span
-	 * @since 3.0
-	 */
-	protected void createSeparator(Composite comp, int colSpan) {
-		Label label = new Label(comp, SWT.SEPARATOR | SWT.HORIZONTAL);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = colSpan;
-		label.setLayoutData(gd);
-	}	
-		
-	/**
-	 * @see ILaunchConfigurationTab#getImage()
-	 */
-	public Image getImage() {
-		return null;
-	}
-
-	/**
-	 * Convenience method to set a boolean attribute of on a launch
-	 * configuration. If the value being set is the default, the attribute's
-	 * value is set to <code>null</code>.
-	 * 
-	 * @param attribute attribute identifier
-	 * @param configuration the configuration on which to set the attribute
-	 * @param value the value of the attribute
-	 * @param defaultValue the default value of the attribute
-	 * @since 2.1
-	 */
-	protected void setAttribute(String attribute, ILaunchConfigurationWorkingCopy configuration, boolean value, boolean defaultValue) {
-		if (value == defaultValue) {
-			configuration.setAttribute(attribute, (String)null);
-		} else {
-			configuration.setAttribute(attribute, value);
-		}
-	}
-
-
-
-	/**
-	 * Returns whether this tab is dirty. It is up to clients to set/reset and consult
-	 * this attribute as required. By default, a tab is initialized to dirty.
-	 * 
-	 * @return whether this tab is dirty
-	 * @since 2.1
-	 */
-	protected boolean isDirty() {
-		return fDirty;
-	}
-
-	/**
-	 * Returns whether this tab is dirty. It is up to clients to set/reset and consult
-	 * this attribute as required. By default, a tab is initialized to dirty.
-	 * 
-	 * @param dirty whether this tab is dirty
-	 * @since 2.1
-	 */
-	protected void setDirty(boolean dirty) {
-		fDirty = dirty;
-	}
-	
-	/**
-	 * This method was added to the <code>ILaunchConfigurationTab</code> interface
-	 * in the 3.0 release to allow tabs to distinguish between a tab being activated
-	 * and a tab group be initialized for the first time, from a selected launch
-	 * configuration. To maintain backwards compatible behavior, the default
-	 * implementation provided, calls this tab's <code>initializeFrom</code> method.
-	 * Tabs should override this method as required.
-	 * <p>
-	 * The launch tab framework was originially designed to take care of inter tab
-	 * communication by applying attributes from the active tab to the launch configuration
-	 * being edited, when a tab is exited, and by initializing a tab when activated.
-	 * The addition of the methods <code>activated</code> and <code>deactivated</code>
-	 * allow tabs to determine the appropriate course of action. 
-	 * </p>
-	 * 
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 * @since 3.0
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy) {
-		initializeFrom(workingCopy);
-	}
-
-	/**
-	 * This method was added to the <code>ILaunchConfigurationTab</code> interface
-	 * in the 3.0 release to allow tabs to distinguish between a tab being deactivated
-	 * and saving its attributes to a launch configuration. To maintain backwards
-	 * compatible behavior, the default implementation provided, calls this tab's
-	 * <code>performApply</code> method. Tabs should override this method as required.
-	 * <p>
-	 * The launch tab framework was originially designed to take care of inter tab
-	 * communication by applying attributes from the active tab to the launch configuration
-	 * being edited, when a tab is exited, and by initializing a tab when activated.
-	 * The addition of the methods <code>activated</code> and <code>deactivated</code>
-	 * allow tabs to determine the appropriate course of action. 
-	 * </p>
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#deactivated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 * @since 3.0
-	 */
-	public void deactivated(ILaunchConfigurationWorkingCopy workingCopy) {
-		performApply(workingCopy);
-	}
-
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTabGroup.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTabGroup.java
deleted file mode 100644
index defae2d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/AbstractLaunchConfigurationTabGroup.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-
-/**
- * Common function for launch configuration tab groups.
- * Generally, a launch configuration tab group will subclass
- * this class, and define a method to create and set the tabs
- * in that group.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @see ILaunchConfigurationTabGroup
- * @since 2.0
- */
-public abstract class AbstractLaunchConfigurationTabGroup implements ILaunchConfigurationTabGroup {
-	
-	/**
-	 * The tabs in this tab group, or <code>null</code> if not yet instantiated.
-	 */
-	protected ILaunchConfigurationTab[] fTabs = null;
-
-	/**
-	 * @see ILaunchConfigurationTabGroup#getTabs()
-	 */
-	public ILaunchConfigurationTab[] getTabs() {
-		return fTabs;
-	}
-	
-	/**
-	 * Sets the tabs in this group
-	 * 
-	 * @param tabs the tabs in this group
-	 */
-	protected void setTabs(ILaunchConfigurationTab[] tabs) {
-		fTabs = tabs;
-	}
-
-	/**
-	 * By default, dispose all the tabs in this group.
-	 * 
-	 * @see ILaunchConfigurationTabGroup#dispose()
-	 */
-	public void dispose() {
-		ILaunchConfigurationTab[] tabs = getTabs();
-		if (tabs != null) {
-			for (int i = 0; i < tabs.length; i++) {
-				tabs[i].dispose();
-			}
-		}
-	}
-
-	/**
-	 * By default, delegate to all of the tabs in this group.
-	 * 
-	 * @see ILaunchConfigurationTabGroup#setDefaults(ILaunchConfigurationWorkingCopy)
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {
-		ILaunchConfigurationTab[] tabs = getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			tabs[i].setDefaults(configuration);
-		}		
-	}
-
-	/** 
-	 * By default, delegate to all of the tabs in this group.
-	 * 
-	 * @see ILaunchConfigurationTabGroup#initializeFrom(ILaunchConfiguration)
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration) {
-		ILaunchConfigurationTab[] tabs = getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			tabs[i].initializeFrom(configuration);
-		}		
-	}
-
-	/**
-	 * By default, delegate to all of the tabs in this group.
-	 * 
-	 * @see ILaunchConfigurationTabGroup#performApply(ILaunchConfigurationWorkingCopy)
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {
-		ILaunchConfigurationTab[] tabs = getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			tabs[i].performApply(configuration);
-		}		
-	}
-
-	/**
-	 * By default, delegate to all of the tabs in this group.
-	 * 
-	 * @see ILaunchConfigurationTabGroup#launched(ILaunch)
-	 * @deprecated
-	 */
-	public void launched(ILaunch launch) {
-		ILaunchConfigurationTab[] tabs = getTabs();
-		for (int i = 0; i < tabs.length; i++) {
-			tabs[i].launched(launch);
-		}		
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/BreakpointTypeCategory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/BreakpointTypeCategory.java
deleted file mode 100644
index 32e60a0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/BreakpointTypeCategory.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-
-/**
- * Default implementation for a breakpoint type category.
- * <p>
- * Clients providing breakpoint type category adapters may instantiate
- * and subclass this class.
- * </p>
- * @since 3.1
- */
-public class BreakpointTypeCategory extends PlatformObject implements IBreakpointTypeCategory, IWorkbenchAdapter {
-
-	private String fName;
-	private ImageDescriptor fImageDescriptor = DebugPluginImages.getImageDescriptor(IInternalDebugUIConstants.IMG_OBJS_BREAKPOINT_TYPE);
-	
-	/**
-	 * Constructs a type category for the given type name.
-	 * 
-	 * @param name breakpoint type name
-	 */
-	public BreakpointTypeCategory(String name) {
-		fName = name;
-	}
-	
-	/**
-	 * Constructs a type category for the given type name with the given
-	 * image.
-	 * 
-	 * @param name breakpoint type name
-	 * @param descriptor image descriptor
-	 */
-	public BreakpointTypeCategory(String name, ImageDescriptor descriptor) {
-		fName = name;
-		if (descriptor != null) {
-			fImageDescriptor = descriptor;
-		}
-	}
-	
-	/**
-	 * Returns the name of this category's breakpoint type.
-	 * 
-	 * @return the name of this category's breakpoint type
-	 */
-	protected String getName() {
-		return fName;
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object object) {
-		if (object instanceof BreakpointTypeCategory) {
-			BreakpointTypeCategory type = (BreakpointTypeCategory) object;
-			return type.getName().equals(getName());
-		}
-		return false;
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return getName().hashCode();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getChildren(java.lang.Object)
-	 */
-	public Object[] getChildren(Object o) {
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-	 */
-	public ImageDescriptor getImageDescriptor(Object object) {
-		return fImageDescriptor;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-	 */
-	public String getLabel(Object o) {
-		return getName();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.model.IWorkbenchAdapter#getParent(java.lang.Object)
-	 */
-	public Object getParent(Object o) {
-		return null;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/CommonTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/CommonTab.java
deleted file mode 100644
index 5d0bd24..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/CommonTab.java
+++ /dev/null
@@ -1,876 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
- 
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import org.eclipse.core.resources.IContainer;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.variables.VariablesPlugin;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsMessages;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchGroupExtension;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchHistory;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTableViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.SelectionListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Combo;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.FileDialog;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.WorkbenchEncoding;
-import org.eclipse.ui.dialogs.ContainerSelectionDialog;
-import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
-import org.eclipse.ui.ide.IDEEncoding;
-import org.eclipse.ui.model.WorkbenchContentProvider;
-import org.eclipse.ui.model.WorkbenchLabelProvider;
-import org.eclipse.ui.views.navigator.ResourceSorter;
-
-/**
- * Launch configuration tab used to specify the location a launch configuration
- * is stored in, whether it should appear in the favorites list, and perspective
- * switching behavior for an associated launch.
- * <p>
- * Clients may instantiate this class. This class is not intended to be subclassed.
- * </p>
- * @since 2.0
- */
-public class CommonTab extends AbstractLaunchConfigurationTab {
-		
-	// Local/shared UI widgets
-	private Button fLocalRadioButton;
-	private Button fSharedRadioButton;
-	
-	// Shared location UI widgets
-	private Text fSharedLocationText;
-	private Button fSharedLocationButton;
-	
-	protected Button fLaunchInBackgroundButton;
-	
-	/**
-	 * Check box list for specifying favorites
-	 */
-	private CheckboxTableViewer fFavoritesTable;
-			
-	/**
-	 * Modify listener that simply updates the owning launch configuration dialog.
-	 */
-	private ModifyListener fBasicModifyListener = new ModifyListener() {
-			public void modifyText(ModifyEvent evt) {
-				updateLaunchConfigurationDialog();
-			}
-	};
-	
-	// Console Encoding widgets
-    private Button fDefaultEncodingButton;
-    private Button fAltEncodingButton;
-    private Combo fEncodingCombo;
-    
-    // Console Output widgets
-    private Button fConsoleOutput;
-    private Button fFileOutput;
-    private Button fFileBrowse;
-    private Text fFileText;
-    private Button fVariables;
-    private Button fAppend;
-    private Button fWorkspaceBrowse;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {		
-		Composite comp = new Composite(parent, SWT.NONE);
-		setControl(comp);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IDebugHelpContextIds.LAUNCH_CONFIGURATION_DIALOG_COMMON_TAB);
-		GridLayout topLayout = new GridLayout(2, true);
-		topLayout.horizontalSpacing = 10;
-		comp.setLayout(topLayout);
-		comp.setFont(parent.getFont());
-		
-		Group group = new Group(comp, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 3;
-		group.setLayout(layout);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		group.setLayoutData(gd);
-		group.setText(LaunchConfigurationsMessages.CommonTab_0); //$NON-NLS-1$
-		group.setFont(comp.getFont());
-				
-		setLocalRadioButton(new Button(group, SWT.RADIO));
-		getLocalRadioButton().setText(LaunchConfigurationsMessages.CommonTab_L_ocal_3); //$NON-NLS-1$
-		gd = new GridData();
-		gd.horizontalSpan = 3;
-		getLocalRadioButton().setLayoutData(gd);
-		setSharedRadioButton(new Button(group, SWT.RADIO));
-		getSharedRadioButton().setText(LaunchConfigurationsMessages.CommonTab_S_hared_4); //$NON-NLS-1$
-		getSharedRadioButton().addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent evt) {
-				handleSharedRadioButtonSelected();
-			}
-		});
-		gd = new GridData();
-		getSharedRadioButton().setLayoutData(gd);
-				
-		setSharedLocationText(new Text(group, SWT.SINGLE | SWT.BORDER));
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		getSharedLocationText().setLayoutData(gd);
-		getSharedLocationText().addModifyListener(fBasicModifyListener);
-		
-		setSharedLocationButton(createPushButton(group, LaunchConfigurationsMessages.CommonTab__Browse_6, null));	 //$NON-NLS-1$
-		getSharedLocationButton().addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent evt) {
-				handleSharedLocationButtonSelected();
-			}
-		});	
-
-		getLocalRadioButton().setSelection(true);
-		setSharedEnabled(false);
-		
-		Group favComp = new Group(comp, SWT.NONE);
-		gd = new GridData(GridData.FILL_BOTH);
-		favComp.setLayoutData(gd);
-		GridLayout favLayout = new GridLayout();
-		favComp.setLayout(favLayout);
-		
-		favComp.setText(LaunchConfigurationsMessages.CommonTab_Display_in_favorites_menu__10); //$NON-NLS-1$
-		favComp.setFont(parent.getFont());
-		
-		fFavoritesTable = CheckboxTableViewer.newCheckList(favComp, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
-		Control table = fFavoritesTable.getControl();
-		gd = new GridData(GridData.FILL_BOTH);
-		table.setLayoutData(gd);
-		
-		fFavoritesTable.setContentProvider(new FavoritesContentProvider());
-		fFavoritesTable.setLabelProvider(new FavoritesLabelProvider());
-		fFavoritesTable.addCheckStateListener(
-			new ICheckStateListener() {
-				/* (non-Javadoc)
-				 * @see org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent)
-				 */
-				public void checkStateChanged(CheckStateChangedEvent event) {
-					updateLaunchConfigurationDialog();
-				}
-			});
-		
-		createEncodingComponent(comp);
-		createOutputCaptureComponent(comp);
-		createLaunchInBackgroundComponent(comp);
-		
-		Dialog.applyDialogFont(parent);
-	}
-	
-    private void createOutputCaptureComponent(Composite parent) {
-        Group group = new Group(parent, SWT.NONE);
-        group.setText(LaunchConfigurationsMessages.CommonTab_4); //$NON-NLS-1$
-        GridData gd = new GridData(SWT.FILL, SWT.NONE, true, false);
-        gd.horizontalSpan = 2;
-        group.setLayoutData(gd);
-        GridLayout layout = new GridLayout(5, false);
-        group.setLayout(layout);
-        group.setFont(parent.getFont());
-        
-        fConsoleOutput = createCheckButton(group, LaunchConfigurationsMessages.CommonTab_5); //$NON-NLS-1$
-        gd = new GridData(SWT.BEGINNING, SWT.NORMAL, true, false);
-        gd.horizontalSpan = 5;
-        fConsoleOutput.setLayoutData(gd);
-        
-        fConsoleOutput.addSelectionListener(new SelectionAdapter() {
-            public void widgetSelected(SelectionEvent e) {
-                updateLaunchConfigurationDialog();
-            }
-        });
-        
-        fFileOutput = createCheckButton(group, LaunchConfigurationsMessages.CommonTab_6); //$NON-NLS-1$
-        fFileOutput.setLayoutData(new GridData(SWT.BEGINNING, SWT.NORMAL, false, false));
-        
-        fFileText = new Text(group, SWT.SINGLE | SWT.BORDER);
-        gd = new GridData(SWT.FILL, SWT.NORMAL, true, false);
-        gd.horizontalSpan = 4;
-        fFileText.setLayoutData(gd);
-        
-        Label spacer = new Label(group,SWT.NONE);
-        gd = new GridData(SWT.FILL, SWT.NORMAL, true, false);
-        gd.horizontalSpan=2;
-        spacer.setLayoutData(gd);
-        fWorkspaceBrowse = createPushButton(group, LaunchConfigurationsMessages.CommonTab_12, null); //$NON-NLS-1$
-        fFileBrowse = createPushButton(group, LaunchConfigurationsMessages.CommonTab_7, null); //$NON-NLS-1$
-        fVariables = createPushButton(group, LaunchConfigurationsMessages.CommonTab_9, null); //$NON-NLS-1$
-
-        spacer = new Label(group,SWT.NONE);
-        spacer.setLayoutData(new GridData(SWT.FILL, SWT.NORMAL, false, false));
-        fAppend = createCheckButton(group, LaunchConfigurationsMessages.CommonTab_11); //$NON-NLS-1$
-        gd = new GridData(SWT.LEFT, SWT.TOP, true, false);
-        gd.horizontalSpan = 4;
-        fAppend.setLayoutData(gd);
-        
-        fFileOutput.addSelectionListener(new SelectionAdapter() {
-            public void widgetSelected(SelectionEvent e) {
-                boolean enabled = fFileOutput.getSelection();
-                fFileText.setEnabled(enabled);
-                fFileBrowse.setEnabled(enabled);
-                fWorkspaceBrowse.setEnabled(enabled);
-                fVariables.setEnabled(enabled);
-                fAppend.setEnabled(enabled);
-                updateLaunchConfigurationDialog();
-            }
-        });
-        
-        fAppend.addSelectionListener(new SelectionAdapter() {
-            public void widgetSelected(SelectionEvent e) {
-                updateLaunchConfigurationDialog();
-            }
-        });
-        
-        fWorkspaceBrowse.addSelectionListener(new SelectionAdapter() {
-            public void widgetSelected(SelectionEvent e) {
-                ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(), new WorkbenchLabelProvider(), new WorkbenchContentProvider());
-                dialog.setTitle(LaunchConfigurationsMessages.CommonTab_13); //$NON-NLS-1$
-                dialog.setMessage(LaunchConfigurationsMessages.CommonTab_14); //$NON-NLS-1$
-                dialog.setInput(ResourcesPlugin.getWorkspace().getRoot()); 
-                dialog.setSorter(new ResourceSorter(ResourceSorter.NAME));
-                int buttonId = dialog.open();
-                if (buttonId == IDialogConstants.OK_ID) {
-                    IResource resource = (IResource) dialog.getFirstResult();
-                    String arg = resource.getFullPath().toString();
-                    String fileLoc = VariablesPlugin.getDefault().getStringVariableManager().generateVariableExpression("workspace_loc", arg); //$NON-NLS-1$
-                    fFileText.setText(fileLoc);
-                }
-            }
-        });
-        
-        fFileBrowse.addSelectionListener(new SelectionAdapter() {
-            public void widgetSelected(SelectionEvent e) {
-                String filePath = fFileText.getText();
-                FileDialog dialog = new FileDialog(getShell(), SWT.SAVE);
-                
-                filePath = dialog.open();
-                if (filePath != null) {
-                    fFileText.setText(filePath);
-                }
-            }
-        });
-        
-        fFileText.addModifyListener(new ModifyListener() {
-            public void modifyText(ModifyEvent e) {
-                updateLaunchConfigurationDialog();
-            }
-        });
-        
-        fVariables.addSelectionListener(new SelectionListener() {
-            public void widgetSelected(SelectionEvent e) {
-                StringVariableSelectionDialog dialog = new StringVariableSelectionDialog(getShell());
-				dialog.open();
-				String variable = dialog.getVariableExpression();
-				if (variable != null) {
-					fFileText.insert(variable);
-				}
-            }
-            public void widgetDefaultSelected(SelectionEvent e) {   
-            }
-        });
-    }
-
-    private void createEncodingComponent(Composite parent) {
-	    List allEncodings = IDEEncoding.getIDEEncodings();
-	    String defaultEncoding = WorkbenchEncoding.getWorkbenchDefaultEncoding();
-	    
-	    Group group = new Group(parent, SWT.NONE);
-	    group.setText(LaunchConfigurationsMessages.CommonTab_1);  //$NON-NLS-1$
-	    GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false);
-	    group.setLayoutData(gd);
-	    GridLayout layout = new GridLayout(2, false);
-	    group.setLayout(layout);
-	    group.setFont(parent.getFont());
-	    
-	    fDefaultEncodingButton = createRadioButton(group, MessageFormat.format(LaunchConfigurationsMessages.CommonTab_2, new String[]{defaultEncoding})); //$NON-NLS-1$
-	    gd = new GridData(SWT.BEGINNING, SWT.NORMAL, true, false);
-	    gd.horizontalSpan = 2;
-	    fDefaultEncodingButton.setLayoutData(gd);
-	    
-	    fAltEncodingButton = createRadioButton(group, LaunchConfigurationsMessages.CommonTab_3);  //$NON-NLS-1$
-	    fAltEncodingButton.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_BEGINNING));
-	    
-	    fEncodingCombo = new Combo(group, SWT.READ_ONLY);
-	    fEncodingCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-        String[] encodingArray = (String[]) allEncodings.toArray(new String[0]);
-	    fEncodingCombo.setItems(encodingArray);
-        if (encodingArray.length > 0) {
-            fEncodingCombo.select(0); 
-        }
-	    
-	    SelectionListener listener = new SelectionAdapter() {
-	        public void widgetSelected(SelectionEvent e) {
-	            updateLaunchConfigurationDialog();
-	            fEncodingCombo.setEnabled(fAltEncodingButton.getSelection() == true);
-	        }
-	    };
-	    fAltEncodingButton.addSelectionListener(listener);
-	    fDefaultEncodingButton.addSelectionListener(listener);
-	    fEncodingCombo.addSelectionListener(listener);
-	}
-
-	/**
-	 * Creates the controls needed to edit the launch in background
-	 * attribute of an external tool
-	 *
-	 * @param parent the composite to create the controls in
-	 */
-	protected void createLaunchInBackgroundComponent(Composite parent) {
-		fLaunchInBackgroundButton = createCheckButton(parent, LaunchConfigurationsMessages.CommonTab_10); //$NON-NLS-1$
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.horizontalSpan = 2;
-		fLaunchInBackgroundButton.setLayoutData(data);
-		fLaunchInBackgroundButton.setFont(parent.getFont());
-		fLaunchInBackgroundButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				updateLaunchConfigurationDialog();
-			}
-		});
-	}
-
-	
-	private void setSharedLocationButton(Button sharedLocationButton) {
-		this.fSharedLocationButton = sharedLocationButton;
-	}
-
-	private Button getSharedLocationButton() {
-		return fSharedLocationButton;
-	}
-
-	private void setSharedLocationText(Text sharedLocationText) {
-		this.fSharedLocationText = sharedLocationText;
-	}
-
-	private Text getSharedLocationText() {
-		return fSharedLocationText;
-	}
-
- 	private void setLocalRadioButton(Button button) {
- 		fLocalRadioButton = button;
- 	}
- 	
- 	private Button getLocalRadioButton() {
- 		return fLocalRadioButton;
- 	} 	
- 	
- 	private void setSharedRadioButton(Button button) {
- 		fSharedRadioButton = button;
- 	}
- 	
- 	private Button getSharedRadioButton() {
- 		return fSharedRadioButton;
- 	} 	
-
-	private void handleSharedRadioButtonSelected() {
-		setSharedEnabled(isShared());
-		updateLaunchConfigurationDialog();
-	}
-	
-	private void setSharedEnabled(boolean enable) {
-		getSharedLocationText().setEnabled(enable);
-		getSharedLocationButton().setEnabled(enable);
-	}
-	
-	private boolean isShared() {
-		return getSharedRadioButton().getSelection();
-	}
-	
-	private void handleSharedLocationButtonSelected() {
-		ContainerSelectionDialog dialog = new ContainerSelectionDialog(getShell(),
-																	   getWorkspaceRoot(),
-																	   false,
-																	   LaunchConfigurationsMessages.CommonTab_Select_a_location_for_the_launch_configuration_13); //$NON-NLS-1$
-		
-		String currentContainerString = getSharedLocationText().getText();
-		IContainer currentContainer = getContainer(currentContainerString);
-		if (currentContainer != null) {
-			IPath path = currentContainer.getFullPath();
-			dialog.setInitialSelections(new Object[] {path});
-		}
-		
-		dialog.showClosedProjects(false);
-		dialog.open();
-		Object[] results = dialog.getResult();		
-		if ((results != null) && (results.length > 0) && (results[0] instanceof IPath)) {
-			IPath path = (IPath)results[0];
-			String containerName = path.toOSString();
-			getSharedLocationText().setText(containerName);
-		}		
-	}
-	
-	private IContainer getContainer(String path) {
-		Path containerPath = new Path(path);
-		return (IContainer) getWorkspaceRoot().findMember(containerPath);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration) {	
-		updateLocalSharedFromConfig(configuration);
-		updateSharedLocationFromConfig(configuration);
-		updateFavoritesFromConfig(configuration);
-		updateLaunchInBackground(configuration);
-		updateEncoding(configuration);
-		updateConsoleOutput(configuration);
-	}
-	
-    private void updateConsoleOutput(ILaunchConfiguration configuration) {
-        boolean outputToConsole = true;
-        String outputFile = null;
-        boolean append = false;
-        
-        try {
-            outputToConsole = configuration.getAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_CONSOLE, true);
-            outputFile = configuration.getAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_FILE, (String)null);
-            append = configuration.getAttribute(IDebugUIConstants.ATTR_APPEND_TO_FILE, false);
-        } catch (CoreException e) {
-        }
-        
-        fConsoleOutput.setSelection(outputToConsole);
-        fAppend.setSelection(append);
-        boolean haveOutputFile= outputFile != null;
-        if (haveOutputFile) {
-            fFileText.setText(outputFile);
-        }
-        fFileOutput.setSelection(haveOutputFile);
-        fFileText.setEnabled(haveOutputFile);
-        fFileBrowse.setEnabled(haveOutputFile);
-        fWorkspaceBrowse.setEnabled(haveOutputFile);
-        fVariables.setEnabled(haveOutputFile);
-        fAppend.setEnabled(haveOutputFile);
-    }
-
-    protected void updateLaunchInBackground(ILaunchConfiguration configuration) { 
-		fLaunchInBackgroundButton.setSelection(isLaunchInBackground(configuration));
-	}
-	
-	private void updateEncoding(ILaunchConfiguration configuration) {
-	    String encoding = null;
-	    try {
-	        encoding = configuration.getAttribute(IDebugUIConstants.ATTR_CONSOLE_ENCODING, (String)null);
-        } catch (CoreException e) {
-        }
-        
-        if (encoding != null) {
-            fAltEncodingButton.setSelection(true);
-            fDefaultEncodingButton.setSelection(false);
-            fEncodingCombo.setText(encoding);
-            fEncodingCombo.setEnabled(true);
-        } else {
-            fDefaultEncodingButton.setSelection(true);
-            fAltEncodingButton.setSelection(false);
-            fEncodingCombo.setEnabled(false);
-        }
-	}
-	
-	/**
-	 * Returns whether the given configuration should be launched in the background.
-	 * 
-	 * @param configuration the configuration
-	 * @return whether the configuration is configured to launch in the background
-	 */
-	public static boolean isLaunchInBackground(ILaunchConfiguration configuration) {
-		boolean launchInBackground= true;
-		try {
-			launchInBackground= configuration.getAttribute(IDebugUIConstants.ATTR_LAUNCH_IN_BACKGROUND, true);
-		} catch (CoreException ce) {
-			DebugUIPlugin.log(ce);
-		}
-		return launchInBackground;
-	}
-	
-	private void updateLocalSharedFromConfig(ILaunchConfiguration config) {
-		boolean isShared = !config.isLocal();
-		getSharedRadioButton().setSelection(isShared);
-		getLocalRadioButton().setSelection(!isShared);
-		setSharedEnabled(isShared);
-	}
-	
-	private void updateSharedLocationFromConfig(ILaunchConfiguration config) {
-		getSharedLocationText().setText(""); //$NON-NLS-1$
-		IFile file = config.getFile();
-		if (file != null) {
-			IContainer parent = file.getParent();
-			if (parent != null) {
-				String containerName = parent.getFullPath().toOSString();
-				getSharedLocationText().setText(containerName);
-			}
-		}
-	}
-		
-	private void updateFavoritesFromConfig(ILaunchConfiguration config) {
-		fFavoritesTable.setInput(config);
-		fFavoritesTable.setCheckedElements(new Object[]{});
-		try {
-			List groups = config.getAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, new ArrayList());
-			if (groups.isEmpty()) {
-				// check old attributes for backwards compatible
-				if (config.getAttribute(IDebugUIConstants.ATTR_DEBUG_FAVORITE, false)) {
-					groups.add(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP);
-				}
-				if (config.getAttribute(IDebugUIConstants.ATTR_RUN_FAVORITE, false)) {
-					groups.add(IDebugUIConstants.ID_RUN_LAUNCH_GROUP);
-				}
-			}
-			if (!groups.isEmpty()) {
-				List list = new ArrayList();
-				Iterator iterator = groups.iterator();
-				while (iterator.hasNext()) {
-					String id = (String)iterator.next();
-					LaunchGroupExtension extension = getLaunchConfigurationManager().getLaunchGroup(id);
-					list.add(extension);
-				}
-				fFavoritesTable.setCheckedElements(list.toArray());
-			}
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}
-	}
-
-	private void updateConfigFromLocalShared(ILaunchConfigurationWorkingCopy config) {
-		if (isShared()) {
-			String containerPathString = getSharedLocationText().getText();
-			IContainer container = getContainer(containerPathString);
-			config.setContainer(container);
-		} else {
-			config.setContainer(null);
-		}
-	}
-		
-	/**
-	 * Update the favorite settings.
-	 * 
-	 * NOTE: set to <code>null</code> instead of <code>false</code> for backwards compatibility
-	 *  when comparing if content is equal, since 'false' is default
-	 * 	and will be missing for older configs.
-	 */
-	private void updateConfigFromFavorites(ILaunchConfigurationWorkingCopy config) {
-		try {
-			Object[] checked = fFavoritesTable.getCheckedElements();
-			boolean debug = config.getAttribute(IDebugUIConstants.ATTR_DEBUG_FAVORITE, false);
-			boolean run = config.getAttribute(IDebugUIConstants.ATTR_RUN_FAVORITE, false);
-			if (debug || run) {
-				// old attributes
-				List groups = new ArrayList();
-				int num = 0;
-				if (debug) {
-					groups.add(getLaunchConfigurationManager().getLaunchGroup(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP));
-					num++;
-				}
-				if (run) {
-					num++;
-					groups.add(getLaunchConfigurationManager().getLaunchGroup(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP));
-				}
-				// see if there are any changes
-				if (num == checked.length) {
-					boolean different = false;
-					for (int i = 0; i < checked.length; i++) {
-						if (!groups.contains(checked[i])) {
-							different = true;
-							break;
-						}
-					}
-					if (!different) {
-						return;
-					}
-				}
-			} 
-			// erase old attributes (if any)
-			config.setAttribute(IDebugUIConstants.ATTR_DEBUG_FAVORITE, (String)null);
-			config.setAttribute(IDebugUIConstants.ATTR_RUN_FAVORITE, (String)null);
-			// new attribute
-			List groups = null;
-			for (int i = 0; i < checked.length; i++) {
-				LaunchGroupExtension group = (LaunchGroupExtension)checked[i];
-				if (groups == null) {
-					groups = new ArrayList();
-				}
-				groups.add(group.getIdentifier());
-			}
-			config.setAttribute(IDebugUIConstants.ATTR_FAVORITE_GROUPS, groups);
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}		
-	}	
-	
-	/**
-	 * Convenience method for getting the workspace root.
-	 */
-	private IWorkspaceRoot getWorkspaceRoot() {
-		return ResourcesPlugin.getWorkspace().getRoot();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#isValid(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public boolean isValid(ILaunchConfiguration config) {
-		setMessage(null);
-		setErrorMessage(null);
-		
-		return validateLocalShared() && validateRedirectFile() && validateEncoding();
-	}
-	
-    private boolean validateEncoding() {
-        if (fAltEncodingButton.getSelection()) {
-            if (fEncodingCombo.getSelectionIndex() == -1) {
-                setErrorMessage(LaunchConfigurationsMessages.CommonTab_No_Encoding_Selected);
-                return false;
-            }
-        }
-        return true;
-    }
-
-    private boolean validateRedirectFile() {
-        if(fFileOutput.getSelection()) {
-            int len = fFileText.getText().trim().length();
-            if (len == 0) {
-                setErrorMessage(LaunchConfigurationsMessages.CommonTab_8); //$NON-NLS-1$
-                return false;
-            }
-        }
-        return true;
-    }
-
-    private boolean validateLocalShared() {
-		if (isShared()) {
-			String path = fSharedLocationText.getText().trim();
-			IContainer container = getContainer(path);
-			if (container == null || container.equals(ResourcesPlugin.getWorkspace().getRoot())) {
-				setErrorMessage(LaunchConfigurationsMessages.CommonTab_Invalid_shared_configuration_location_14); //$NON-NLS-1$
-				return false;
-			} else if (!container.getProject().isOpen()) {
-				setErrorMessage(LaunchConfigurationsMessages.CommonTab_Cannot_save_launch_configuration_in_a_closed_project__1); //$NON-NLS-1$
-				return false;				
-			}
-		}
-		
-		return true;		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy config) {
-		config.setContainer(null);
-		config.setAttribute(IDebugUIConstants.ATTR_LAUNCH_IN_BACKGROUND, true);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {
-		updateConfigFromLocalShared(configuration);
-		updateConfigFromFavorites(configuration);
-		setAttribute(IDebugUIConstants.ATTR_LAUNCH_IN_BACKGROUND, configuration, fLaunchInBackgroundButton.getSelection(), true);
-		String encoding = null;
-		if(fAltEncodingButton.getSelection()) {
-		    encoding = fEncodingCombo.getText();
-		}
-		configuration.setAttribute(IDebugUIConstants.ATTR_CONSOLE_ENCODING, encoding);
-		boolean captureOutput = false;
-		if (fConsoleOutput.getSelection()) {
-		    captureOutput = true;
-		    configuration.setAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_CONSOLE, (String)null);
-		} else {
-		    configuration.setAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_CONSOLE, false);
-		}
-		if (fFileOutput.getSelection()) {
-		    captureOutput = true;
-		    String file = fFileText.getText();
-		    configuration.setAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_FILE, file);
-		    if(fAppend.getSelection()) {
-		        configuration.setAttribute(IDebugUIConstants.ATTR_APPEND_TO_FILE, true);
-		    } else {
-		        configuration.setAttribute(IDebugUIConstants.ATTR_APPEND_TO_FILE, (String)null);
-		    }
-		} else {
-		    configuration.setAttribute(IDebugUIConstants.ATTR_CAPTURE_IN_FILE, (String)null);
-		}
-		
-		if (!captureOutput) {
-		    configuration.setAttribute(DebugPlugin.ATTR_CAPTURE_OUTPUT, false);
-		} else {
-		    configuration.setAttribute(DebugPlugin.ATTR_CAPTURE_OUTPUT, (String)null);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName()
-	 */
-	public String getName() {
-		return LaunchConfigurationsMessages.CommonTab__Common_15; //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#canSave()
-	 */
-	public boolean canSave() {
-		return validateLocalShared();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getImage()
-	 */
-	public Image getImage() {
-		return DebugUITools.getImage(IInternalDebugUIConstants.IMG_OBJS_COMMON_TAB);
-	}
-
-	class FavoritesContentProvider implements IStructuredContentProvider {
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
-		 */
-		public Object[] getElements(Object inputElement) {
-			ILaunchGroup[] groups = DebugUITools.getLaunchGroups();
-			List possibleGroups = new ArrayList();
-			ILaunchConfiguration configuration = (ILaunchConfiguration)inputElement;
-			for (int i = 0; i < groups.length; i++) {
-				ILaunchGroup extension = groups[i];
-				LaunchHistory history = getLaunchConfigurationManager().getLaunchHistory(extension.getIdentifier());
-				if (history != null && history.accepts(configuration)) {
-					possibleGroups.add(extension);
-				} 
-			}
-			return possibleGroups.toArray();
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#dispose()
-		 */
-		public void dispose() {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
-		 */
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-		}
-
-	}
-	
-	class FavoritesLabelProvider implements ITableLabelProvider {
-		
-		private Map fImages = new HashMap();
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
-		 */
-		public Image getColumnImage(Object element, int columnIndex) {
-			Image image = (Image)fImages.get(element);
-			if (image == null) {
-				ImageDescriptor descriptor = ((LaunchGroupExtension)element).getImageDescriptor();
-				if (descriptor != null) {
-					image = descriptor.createImage();
-					fImages.put(element, image);
-				}
-			}
-			return image;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
-		 */
-		public String getColumnText(Object element, int columnIndex) {
-			String label = ((LaunchGroupExtension)element).getLabel();
-			return DebugUIPlugin.removeAccelerators(label);
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
-		 */
-		public void addListener(ILabelProviderListener listener) {
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-		 */
-		public void dispose() {
-			Iterator images = fImages.values().iterator();
-			while (images.hasNext()) {
-				Image image = (Image)images.next();
-				image.dispose();
-			}
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
-		 */
-		public boolean isLabelProperty(Object element, String property) {
-			return false;
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
-		 */
-		public void removeListener(ILabelProviderListener listener) {
-		}
-		
-	}
-	
-	/**
-	 * Convenience accessor
-	 */
-	protected LaunchConfigurationManager getLaunchConfigurationManager() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing when activated
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#deactivated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void deactivated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing when deactivated
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugElementWorkbenchAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugElementWorkbenchAdapter.java
deleted file mode 100644
index f3f1b78..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugElementWorkbenchAdapter.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.debug.internal.ui.views.launch.DebugElementHelper;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.model.IWorkbenchAdapter2;
-
-/**
- * Common function for debug element workbench adapters.
- * <p>
- * Clients may subclass this class to provide custom adapters for elements in a debug
- * model. The debug platform provides <code>IWorkbenchAdapters</code> for the standard debug
- * elements. Clients may override the default content in the debug view by providing an
- * <code>IWorkbenchAdapter</code> or <code>IDeferredWorkbenchAdapter</code> for a debug
- * element.
- * </p>
- * @since 3.1
- */
-public abstract class DebugElementWorkbenchAdapter implements IWorkbenchAdapter, IWorkbenchAdapter2 {
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getImageDescriptor(java.lang.Object)
-     */
-    public ImageDescriptor getImageDescriptor(Object object) {
-        return DebugElementHelper.getImageDescriptor(object);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter#getLabel(java.lang.Object)
-     */
-    public String getLabel(Object o) {
-        return DebugElementHelper.getLabel(o);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getForeground(java.lang.Object)
-     */
-    public RGB getForeground(Object element) {
-        return DebugElementHelper.getForeground(element);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getBackground(java.lang.Object)
-     */
-    public RGB getBackground(Object element) {
-        return DebugElementHelper.getBackground(element);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.model.IWorkbenchAdapter2#getFont(java.lang.Object)
-     */
-    public FontData getFont(Object element) {
-        return DebugElementHelper.getFont(element);
-    }
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugUITools.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugUITools.java
deleted file mode 100644
index e430105..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DebugUITools.java
+++ /dev/null
@@ -1,685 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtension;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.model.IDebugElement;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.ISourceLocator;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DefaultLabelProvider;
-import org.eclipse.debug.internal.ui.DelegatingModelPresentation;
-import org.eclipse.debug.internal.ui.LazyModelPresentation;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationDialog;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationPropertiesDialog;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchGroupExtension;
-import org.eclipse.debug.internal.ui.memory.MemoryRenderingManager;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility;
-import org.eclipse.debug.internal.ui.stringsubstitution.SelectedResourceManager;
-import org.eclipse.debug.ui.memory.IMemoryRenderingManager;
-import org.eclipse.debug.ui.sourcelookup.ISourceLookupResult;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.console.IConsole;
-
-/**
- * This class provides utilities for clients of the debug UI.
- * <p>
- * Images retrieved from this facility should not be disposed.
- * The images will be disposed when this plugin is shutdown.
- * </p>
- * <p>
- * This class is not intended to be subclassed or instantiated.
- * </p>
- */
-public class DebugUITools {
-	
-	/**
-	 * Returns the shared image managed under the given key, or <code>null</code>
-	 * if none.
-	 * <p>
-	 * Note that clients <b>MUST NOT</b> dispose the image returned by this method.
-	 * </p>
-	 * <p>
-	 * See <code>IDebugUIConstants</code> for available images.
-	 * </p>
-	 *
-	 * @param key the image key
-	 * @return the image, or <code>null</code> if none
-	 * @see IDebugUIConstants
-	 */
-	public static Image getImage(String key) {
-		return DebugPluginImages.getImage(key);
-	}
-	
-	/**
-	 * Returns the shared image descriptor managed under the given key, or
-	 * <code>null</code> if none.
-	 * <p>
-	 * See <code>IDebugUIConstants</code> for available image descriptors.
-	 * </p>
-	 *
-	 * @param key the image descriptor key
-	 * @return the image descriptor, or <code>null</code> if none
-	 * @see IDebugUIConstants
-	 */
-	public static ImageDescriptor getImageDescriptor(String key) {
-		return DebugPluginImages.getImageDescriptor(key);
-	}
-		
-	/**
-	 * Returns the default image descriptor for the given element
-	 * or <code>null</code> if none is defined.
-	 */
-	public static ImageDescriptor getDefaultImageDescriptor(Object element) {
-		String imageKey= getDefaultImageKey(element);
-		if (imageKey == null) {
-			return null;
-		}
-		return DebugPluginImages.getImageDescriptor(imageKey);
-	}
-	
-	private static String getDefaultImageKey(Object element) {
-		return ((DefaultLabelProvider)DebugUIPlugin.getDefaultLabelProvider()).getImageKey(element);
-	}
-	
-	/**
-	 * Returns the preference store for the debug UI plugin.
-	 *
-	 * @return preference store
-	 */
-	public static IPreferenceStore getPreferenceStore() {
-		return DebugUIPlugin.getDefault().getPreferenceStore();
-	}
-	
-	/**
-	 * Returns a new debug model presentation that delegates to
-	 * appropriate debug models.
-	 * <p>
-	 * It is the client's responsibility dispose the presentation.
-	 * </p>
-	 * 
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 * @return a debug model presentation
-	 * @since 2.0
-	 */
-	public static IDebugModelPresentation newDebugModelPresentation() {
-		return new DelegatingModelPresentation();
-	}
-	
-	/**
-	 * Returns a new debug model presentation for specified
-	 * debug model, or <code>null</code> if a presentation does
-	 * not exist.
-	 * <p>
-	 * It is the client's responsibility dispose the presentation.
-	 * </p>
-	 * 
-	 * @param identifier debug model identifier
-	 * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
-	 * @return a debug model presentation, or <code>null</code>
-	 * @since 2.0
-	 */
-	public static IDebugModelPresentation newDebugModelPresentation(String identifier) {
-		IExtensionPoint point= Platform.getExtensionRegistry().getExtensionPoint(DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.ID_DEBUG_MODEL_PRESENTATION);
-		if (point != null) {
-			IExtension[] extensions= point.getExtensions();
-			for (int i= 0; i < extensions.length; i++) {
-				IExtension extension= extensions[i];
-				IConfigurationElement[] configElements= extension.getConfigurationElements();
-				for (int j= 0; j < configElements.length; j++) {
-					IConfigurationElement elt= configElements[j];
-					String id= elt.getAttribute("id"); //$NON-NLS-1$
-					if (id != null && id.equals(identifier)) {
-						return new LazyModelPresentation(elt);
-					}
-				}
-			}
-		}
-		return null;
-	}	
-	
-	/**
-	 * Returns the currently selected element in the 
-	 * debug view of the current workbench page,
-	 * or <code>null</code> if there is no current
-	 * debug context.
-	 * <p>
-	 * This method used to return <code>null</code> when called from a non-UI thread,
-	 * but since 3.1, this methods also works when called from a non-UI thread.
-	 * </p>
-	 * @return the currently selected debug context, or <code>null</code>
-	 * @since 2.0
-	 */
-	public static IAdaptable getDebugContext() {
-	    return SelectedResourceManager.getDefault().getDebugContext();
-	}
-
-	/**
-	 * Returns the currently selected resource in the active workbench window,
-	 * or <code>null</code> if none. If an editor is active, the resource adapater
-	 * assocaited with the editor is returned, if any.
-	 * 
-	 * @return selected resource or <code>null</code>
-	 * @since 3.0
-	 */
-	public static IResource getSelectedResource() {
-		return SelectedResourceManager.getDefault().getSelectedResource();
-	}
-			
-	/**
-	 * Returns the process associated with the current debug context.
-	 * If there is no debug context currently, the most recently
-	 * launched process is returned. If there is no current process
-	 * <code>null</code> is returned.
-	 * 
-	 * @return the current process, or <code>null</code>
-	 * @since 2.0
-	 */
-	public static IProcess getCurrentProcess() {
-		IAdaptable context = getDebugContext();
-		if (context == null) {
-			ILaunch[] launches = DebugPlugin.getDefault().getLaunchManager().getLaunches();
-			if (launches.length > 0) {
-				context = launches[launches.length - 1];
-			}
-		}
-		if (context instanceof IDebugElement) {
-			return ((IDebugElement)context).getDebugTarget().getProcess();
-		}
-		if (context instanceof IProcess) {
-			return (IProcess)context;
-		}
-		if (context instanceof ILaunch) {
-			ILaunch launch= (ILaunch)context;
-			IDebugTarget target= launch.getDebugTarget();
-			if (target != null) {
-				IProcess process = target.getProcess();
-				if (process != null) {
-					return process;
-				}
-			}
-			IProcess[] ps = launch.getProcesses();
-			if (ps.length > 0) {
-				return ps[ps.length - 1];
-			}
-		}
-		return null;
-	}
-
-	/**
-	 * Open the launch configuration dialog with the specified initial selection.
-	 * The selection may be <code>null</code>, or contain any mix of 
-	 * <code>ILaunchConfiguration</code> or <code>ILaunchConfigurationType</code>
-	 * elements.
-	 * <p>
-	 * Before opening a new dialog, this method checks if there is an existing open
-	 * launch configuration dialog.  If there is, this dialog is used with the
-	 * specified selection.  If there is no existing dialog, a new one is created.
-	 * </p>
-	 * <p>
-	 * Note that if an existing dialog is reused, the <code>mode</code> argument is ignored
-	 * and the existing dialog keeps its original mode.
-	 * </p>
-	 * 
-	 * @param shell the parent shell for the launch configuration dialog
-	 * @param selection the initial selection for the dialog
-	 * @param mode the mode (run or debug) in which to open the launch configuration dialog.
-	 *  This should be one of the constants defined in <code>ILaunchManager</code>.
-	 * @return the return code from opening the launch configuration dialog -
-	 *  one  of <code>Window.OK</code> or <code>Window.CANCEL</code>
-	 * @since 2.0
-	 * @deprecated use openLaunchConfigurationDialogOnGroup(Shell, IStructuredSelection, String)
-	 *  to specify the launch group that the dialog should be opened on. This method will open
-	 *  on the launch group with the specified mode and a <code>null</code> category 
-	 */
-	public static int openLaunchConfigurationDialog(Shell shell, IStructuredSelection selection, String mode) {
-		ILaunchGroup[] groups = getLaunchGroups();
-		for (int i = 0; i < groups.length; i++) {
-			ILaunchGroup group = groups[i];
-			if (group.getMode().equals(mode) && group.getCategory() == null) {
-				return openLaunchConfigurationDialogOnGroup(shell, selection, group.getIdentifier());
-			}
-		}
-		return Window.CANCEL;
-	}
-	
-	/**
-	 * Open the launch configuration dialog with the specified initial selection.
-	 * The selection may be <code>null</code>, or contain any mix of 
-	 * <code>ILaunchConfiguration</code> or <code>ILaunchConfigurationType</code>
-	 * elements.
-	 * <p>
-	 * Before opening a new dialog, this method checks if there is an existing open
-	 * launch configuration dialog.  If there is, this dialog is used with the
-	 * specified selection.  If there is no existing dialog, a new one is created.
-	 * </p>
-	 * <p>
-	 * Note that if an existing dialog is reused, the <code>mode</code> argument is ignored
-	 * and the existing dialog keeps its original mode.
-	 * </p>
-	 * 
-	 * @param shell the parent shell for the launch configuration dialog
-	 * @param selection the initial selection for the dialog
-	 * @param groupIdentifier the identifier of the launch group to display (corresponds to
-	 * the identifier of a launch group extension)
-	 * @return the return code from opening the launch configuration dialog -
-	 *  one  of <code>Window.OK</code> or <code>Window.CANCEL</code>
-	 * @since 2.1
-	 */
-	public static int openLaunchConfigurationDialogOnGroup(Shell shell, IStructuredSelection selection, String groupIdentifier) {
-		return openLaunchConfigurationDialogOnGroup(shell, selection, groupIdentifier, null);
-	}
-	
-	/**
-	 * Open the launch configuration dialog with the specified initial selection.
-	 * The selection may be <code>null</code>, or contain any mix of 
-	 * <code>ILaunchConfiguration</code> or <code>ILaunchConfigurationType</code>
-	 * elements.
-	 * <p>
-	 * Before opening a new dialog, this method checks if there is an existing open
-	 * launch configuration dialog.  If there is, this dialog is used with the
-	 * specified selection.  If there is no existing dialog, a new one is created.
-	 * </p>
-	 * <p>
-	 * Note that if an existing dialog is reused, the <code>mode</code> argument is ignored
-	 * and the existing dialog keeps its original mode.
-	 * </p>
-	 * <p>
-	 * If a status is specified, a status handler is consulted to handle the
-	 * status. The status handler is passed the instance of the launch
-	 * configuration dialog that is opened. This gives the status handler an
-	 * opportunity to perform error handling/initialization as required.
-	 * </p>
-	 * @param shell the parent shell for the launch configuration dialog
-	 * @param selection the initial selection for the dialog
-	 * @param groupIdentifier the identifier of the launch group to display (corresponds to
-	 * the identifier of a launch group extension)
-	 * @param status the status to display in the dialog, or <code>null</code>
-	 * if none
-	 * @return the return code from opening the launch configuration dialog -
-	 *  one  of <code>Window.OK</code> or <code>Window.CANCEL</code>
-	 * @see org.eclipse.debug.core.IStatusHandler
-	 * @since 2.1
-	 */
-	public static int openLaunchConfigurationDialogOnGroup(final Shell shell, final IStructuredSelection selection, final String groupIdentifier, final IStatus status) {
-		final int[] result = new int[1];
-		Runnable r = new Runnable() {
-			/**
-			 * @see java.lang.Runnable#run()
-			 */
-			public void run() {
-				LaunchConfigurationsDialog dialog = (LaunchConfigurationsDialog) LaunchConfigurationsDialog.getCurrentlyVisibleLaunchConfigurationDialog();
-				if (dialog != null) {
-					dialog.setInitialSelection(selection);
-					dialog.doInitialTreeSelection();
-					if (status != null) {
-						dialog.handleStatus(status); 
-					}
-					result[0] = Window.OK;
-				} else {
-					dialog = new LaunchConfigurationsDialog(shell, DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroup(groupIdentifier));
-					dialog.setOpenMode(LaunchConfigurationsDialog.LAUNCH_CONFIGURATION_DIALOG_OPEN_ON_SELECTION);
-					dialog.setInitialSelection(selection);
-					dialog.setInitialStatus(status);
-					result[0] = dialog.open();			
-				}
-			}
-		};
-		BusyIndicator.showWhile(DebugUIPlugin.getStandardDisplay(), r);
-		return result[0];
-	}
-		
-	/**
-	 * Open the launch configuration properties dialog on the specified launch
-	 * configuration.
-	 *
-	 * @param shell the parent shell for the launch configuration dialog
-	 * @param configuration the configuration to display
-	 * @param groupIdentifier group identifier of the launch group the launch configuration
-	 * belongs to
-	 * @return the return code from opening the launch configuration dialog -
-	 *  one  of <code>Window.OK</code> or <code>Window.CANCEL</code>
-	 * @since 2.1
-	 */
-	public static int openLaunchConfigurationPropertiesDialog(Shell shell, ILaunchConfiguration configuration, String groupIdentifier) {
-		return openLaunchConfigurationPropertiesDialog(shell, configuration, groupIdentifier, null);
-	}
-	
-	/**
-	 * Open the launch configuration properties dialog on the specified launch
-	 * configuration.
-	 *
-	 * @param shell the parent shell for the launch configuration dialog
-	 * @param configuration the configuration to display
-	 * @param groupIdentifier group identifier of the launch group the launch configuration
-	 * belongs to
-	 * @param status the status to display, or <code>null</code> if none
-	 * @return the return code from opening the launch configuration dialog -
-	 *  one  of <code>Window.OK</code> or <code>Window.CANCEL</code>
-	 * @since 3.0
-	 */
-	public static int openLaunchConfigurationPropertiesDialog(Shell shell, ILaunchConfiguration configuration, String groupIdentifier, IStatus status) {
-		LaunchGroupExtension group = DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroup(groupIdentifier);
-		if (group != null) {
-			LaunchConfigurationPropertiesDialog dialog = new LaunchConfigurationPropertiesDialog(shell, configuration, group);
-			dialog.setInitialStatus(status);
-			return dialog.open();
-		} 
-		
-		return Window.CANCEL;
-	}
-	
-	/**
-     * Open the launch configuration dialog on the specified launch
-     * configuration. The dialog displays the tabs for a single configuration
-     * only (a tree of launch configuration is not displayed), and provides a
-     * launch (run or debug) button.
-     * <p>
-     * If a status is specified, a status handler is consulted to handle the
-     * status. The status handler is passed the instance of the launch
-     * configuration dialog that is opened. This gives the status handler an
-     * opportunity to perform error handling/initialization as required.
-     * </p>
-     * @param shell the parent shell for the launch configuration dialog
-     * @param configuration the configuration to display
-     * @param groupIdentifier group identifier of the launch group the launch configuration
-     * belongs to
-     * @param status the status to display, or <code>null</code> if none 
-     * @return the return code from opening the launch configuration dialog -
-     *  one  of <code>Window.OK</code> or <code>Window.CANCEL</code>
-     * @since 2.1
-     */
-    public static int openLaunchConfigurationDialog(Shell shell, ILaunchConfiguration configuration, String groupIdentifier, IStatus status) {
-    	LaunchGroupExtension group = DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroup(groupIdentifier);
-    	if (group != null) {
-    		LaunchConfigurationDialog dialog = new LaunchConfigurationDialog(shell, configuration, group);
-    		dialog.setInitialStatus(status);
-    		return dialog.open();
-    	} 
-    		
-    	return Window.CANCEL;
-    }
-			
-	/**
-	 * Saves all dirty editors and builds the workspace according to current
-	 * preference settings, and returns whether a launch should proceed.
-	 * <p>
-	 * The following preferences effect whether dirty editors are saved,
-	 * and/or if the user is prompted to save dirty edtiors:<ul>
-	 * <li>PREF_NEVER_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH</li>
-	 * <li>PREF_PROMPT_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH</li>
-	 * <li>PREF_AUTOSAVE_DIRTY_EDITORS_BEFORE_LAUNCH</li>
-	 * </ul>
-	 * The following preference effects whether a build is performed before
-	 * launching (if required):<ul>
-	 * <li>PREF_BUILD_BEFORE_LAUNCH</li>
-	 * </ul>
-	 * </p>
-	 * 
-	 * @return whether a launch should proceed
-	 * @since 2.0
-	 */
-	public static boolean saveAndBuildBeforeLaunch() {
-		return DebugUIPlugin.saveAndBuild();
-	}
-	
-	/**
-	 * Saves all dirty editors according to current
-	 * preference settings, and returns whether a launch should proceed.
-	 * <p>
-	 * The following preferences effect whether dirty editors are saved,
-	 * and/or if the user is prompted to save dirty edtiors:<ul>
-	 * <li>PREF_NEVER_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH</li>
-	 * <li>PREF_PROMPT_SAVE_DIRTY_EDITORS_BEFORE_LAUNCH</li>
-	 * <li>PREF_AUTOSAVE_DIRTY_EDITORS_BEFORE_LAUNCH</li>
-	 * </ul>
-	 * </p>
-	 * 
-	 * @return whether a launch should proceed
-	 * @since 2.1
-	 */
-	public static boolean saveBeforeLaunch() {
-		return DebugUIPlugin.preLaunchSave();
-	}	
-	
-	/**
-	 * Saves and builds the workspace according to current preference settings, and
-	 * launches the given launch configuration in the specified mode.
-	 * 
-	 * @param configuration the configuration to launch
-	 * @param mode launch mode - run or debug
-	 * @since 2.1
-	 */
-	public static void launch(final ILaunchConfiguration configuration, final String mode) {
-		boolean launchInBackground= true;
-		try {
-			launchInBackground= configuration.getAttribute(IDebugUIConstants.ATTR_LAUNCH_IN_BACKGROUND, true);
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e);
-		}
-		if (launchInBackground) {
-			DebugUIPlugin.launchInBackground(configuration, mode);
-		} else {
-			DebugUIPlugin.launchInForeground(configuration, mode);
-		}
-	}
-	
-
-	
-	/**
-	 * Builds the workspace according to current preference settings, and launches
-	 * the given configuration in the specified mode, returning the resulting launch
-	 * object.
-	 * <p>
-	 * The following preference effects whether a build is performed before
-	 * launching (if required):<ul>
-	 * <li>PREF_BUILD_BEFORE_LAUNCH</li>
-	 * </ul>
-	 * </p>
-	 * 
-	 * @param configuration the configuration to launch
-	 * @param mode the mode to launch in
-	 * @param monitor progress monitor
-	 * @return the resulting launch object
-	 * @throws CoreException if building or launching fails
-	 * @since 2.1
-	 */
-	public static ILaunch buildAndLaunch(ILaunchConfiguration configuration, String mode, IProgressMonitor monitor) throws CoreException {
-		return DebugUIPlugin.buildAndLaunch(configuration, mode, monitor);
-	}
-	
-	/**
-	 * Returns the perspective to switch to when a configuration of the given type
-	 * is launched in the given mode, or <code>null</code> if no switch should take
-	 * place.
-	 * 
-	 * @param type launch configuration type
-	 * @param mode launch mode identifier
-	 * @return perspective identifier or <code>null</code>
-	 * @since 3.0
-	 */
-	public static String getLaunchPerspective(ILaunchConfigurationType type, String mode) {
-		return DebugUIPlugin.getDefault().getPerspectiveManager().getLaunchPerspective(type, mode);
-	}
-	
-	/**
-	 * Sets the perspective to switch to when a configuration of the given type
-	 * is launched in the given mode. <code>PERSPECTIVE_NONE</code> indicates no
-	 * perspective switch should take place. <code>PERSPECTIVE_DEFAULT</code> indicates
-	 * a default perspective switch should take place, as defined by the associated
-	 * launch tab group extension.
-	 * 
-	 * @param type launch configuration type
-	 * @param mode launch mode identifier
-	 * @param perspective identifier, <code>PERSPECTIVE_NONE</code>, or
-	 *   <code>PERSPECTIVE_DEFAULT</code>
-	 * @since 3.0
-	 */
-	public static void setLaunchPerspective(ILaunchConfigurationType type, String mode, String perspective) {
-		DebugUIPlugin.getDefault().getPerspectiveManager().setLaunchPerspective(type, mode, perspective);
-	}	
-		
-	/**
-	 * Returns whether the given launch configuraiton is private. Generally,
-	 * private launch configurations should not be displayed to the user. The
-	 * private status of a launch configuration is determined by the
-	 * <code>IDebugUIConstants.ATTR_PRIVATE</code> attribute.
-	 * 
-	 * @param configuration launch configuration
-	 * @return whether the given launch configuration is private
-	 * @since 3.0
-	 */
-	public static boolean isPrivate(ILaunchConfiguration configuration) {
-		return !LaunchConfigurationManager.isVisible(configuration);
-	}
-
-	/**
-	 * Sets whether step filters should be applied to step commands. This
-	 * setting is a global option applied to all registered debug targets. 
-	 * 
-	 * @param useStepFilters whether step filters should be applied to step
-	 *  commands
-	 * @since 3.0
-	 * @see org.eclipse.debug.core.model.IStepFilters
-	 */
-	public static void setUseStepFilters(boolean useStepFilters) {
-		DebugUIPlugin.getDefault().getStepFilterManager().setUseStepFilters(useStepFilters);
-	}
-		
-	/**
-	 * Returns whether step filters are applied to step commands.
-	 * 
-	 * @return whether step filters are applied to step commands
-	 * @since 3.0
-	 * @see org.eclipse.debug.core.model.IStepFilters
-	 */
-	public static boolean isUseStepFilters() {
-		return DebugUIPlugin.getDefault().getStepFilterManager().isUseStepFilters();
-	}
-		
-	/**
-	 * Returns the console associated with the given process, or 
-	 * <code>null</code> if none.
-	 * 
-	 * @param process a process
-	 * @return console associated with the given process, or 
-	 * <code>null</code> if none
-	 * @since 3.0
-	 */
-	public static IConsole getConsole(IProcess process) {
-		return DebugUIPlugin.getDefault().getProcessConsoleManager().getConsole(process);
-	}
-	
-	/**
-	 * Returns the console associated with the given debug element, or 
-	 * <code>null</code> if none.
-	 * 
-	 * @param element a debug model element
-	 * @return console associated with the given element, or 
-	 * <code>null</code> if none
-	 * @since 3.0
-	 */
-	public static IConsole getConsole(IDebugElement element) {
-		IProcess process = element.getDebugTarget().getProcess();
-		if (process != null) {
-			return getConsole(process);
-		}
-		return null;
-	}	
-	
-	/**
-	 * Returns all registered launch group extensions.
-	 *  
-	 * @return all registered launch group extensions
-	 * @since 3.0
-	 */
-	public static ILaunchGroup[] getLaunchGroups() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroups();
-	}
-	
-	/**
-	 * Returns the launch group that the given launch configuration belongs
-	 * to, for the specified mode, or <code>null</code> if none.
-	 * 
-	 * @param configuration
-	 * @param mode
-	 * @return the launch group the given launch configuration belongs to, for
-	 * the specified mode, or <code>null</code> if none
-	 * @since 3.0
-	 */
-	public static ILaunchGroup getLaunchGroup(ILaunchConfiguration configuration, String mode) {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroup(configuration, mode);
-	}
-	
-    /**
-     * Performs source lookup on the given artifact and returns the result.
-     * Optionally, a source locator may be specified.
-     *  
-     * @param artifact object for which source is to be resolved
-     * @param locator the source locator to use, or <code>null</code>. When <code>null</code>
-     *   a source locator is determined from the artifact, if possible. If the artifact
-     *   is a debug element, the source locator from its associated launch is used. 
-     * @return a source lookup result
-     * @since 3.1
-     */
-    public static ISourceLookupResult lookupSource(Object artifact, ISourceLocator locator) {	
-    	return SourceLookupFacility.getDefault().lookup(artifact, locator);
-    }
-	
-    /**
-     * Displays the given source lookup result in an editor in the given workbench
-     * page. Has no effect if the result has an unknown editor id or editor input.
-     * The editor is opened, positioned, and annotated.
-     * <p>
-     * Honors user preference for editors re-use.
-     * </p> 
-     * @param result source lookup result to display
-     * @param page the page to display the result in
-     * @since 3.1
-     */
-    public static void displaySource(ISourceLookupResult result, IWorkbenchPage page) {
-    	SourceLookupFacility.getDefault().display(result, page);
-    }
-    
-    /**
-     * Returns the memory rendering manager.
-     * 
-     * @return the memory rendering manager
-     * @since 3.1
-     */
-    public static IMemoryRenderingManager getMemoryRenderingManager() {
-        return MemoryRenderingManager.getDefault();
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DeferredDebugElementWorkbenchAdapter.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DeferredDebugElementWorkbenchAdapter.java
deleted file mode 100644
index 85cf2e0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/DeferredDebugElementWorkbenchAdapter.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.ui.progress.IDeferredWorkbenchAdapter;
-import org.eclipse.ui.progress.IElementCollector;
-
-
-/**
- * Common function for a deferred workbench adapter for a debug element. 
- * <p>
- * Clients may subclass this class to provide custom adapters for elements in a debug
- * model. The debug platform provides <code>IDeferredWorkbenchAdapters</code> for the standard debug
- * elements. Clients may override the default content in the debug view by providing an
- * <code>IWorkbenchAdapter</code> or <code>IDeferredWorkbenchAdapter</code> for a debug
- * element.
- * </p>
- * @since 3.1
- */
-public abstract class DeferredDebugElementWorkbenchAdapter extends DebugElementWorkbenchAdapter implements IDeferredWorkbenchAdapter {
-    
-	/**
-	 * An empty collection of children
-	 */
-    protected static final Object[] EMPTY = new Object[0];
-
-	/* (non-Javadoc)
-     * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#isContainer()
-     */
-    public boolean isContainer() {
-        return true;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#getRule(java.lang.Object)
-     */
-    public ISchedulingRule getRule(Object object) {
-        return null;
-    }
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.progress.IDeferredWorkbenchAdapter#fetchDeferredChildren(java.lang.Object, org.eclipse.ui.progress.IElementCollector, org.eclipse.core.runtime.IProgressMonitor)
-	 */
-	public void fetchDeferredChildren(Object object, IElementCollector collector, IProgressMonitor monitor) {
-		if (monitor.isCanceled()) {
-			return;
-		}
-	    Object[] children = getChildren(object);
-	    if (monitor.isCanceled()) {
-	    	return;
-	    }
-	    if (children.length > 0) {
-	        collector.add(children, monitor);
-	    }
-	    collector.done();
-	}
-
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/EnvironmentTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/EnvironmentTab.java
deleted file mode 100644
index f47299b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/EnvironmentTab.java
+++ /dev/null
@@ -1,692 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 Keith Seitz and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     Keith Seitz (keiths@redhat.com) - initial implementation
- *     IBM Corporation - integration and code cleanup
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import java.text.MessageFormat;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.TreeMap;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DialogSettingsHelper;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.MultipleInputDialog;
-import org.eclipse.debug.internal.ui.launchConfigurations.EnvironmentVariable;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsMessages;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogSettings;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.ColumnLayoutData;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.DoubleClickEvent;
-import org.eclipse.jface.viewers.IDoubleClickListener;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.ILabelProviderListener;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerSorter;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.ListSelectionDialog;
-
-/**
- * Launch configuration tab for configuring the environment passed
- * into Runtime.exec(...) when a config is launched.
- * <p>
- * This class may be instantiated; this class is not intended
- * to be subclassed.
- * </p> 
- * @since 3.0
- */
-public class EnvironmentTab extends AbstractLaunchConfigurationTab {
-
-	protected TableViewer environmentTable;
-	protected String[] envTableColumnHeaders =
-	{
-		LaunchConfigurationsMessages.EnvironmentTab_Variable_1, //$NON-NLS-1$
-		LaunchConfigurationsMessages.EnvironmentTab_Value_2, //$NON-NLS-1$
-	};
-	protected ColumnLayoutData[] envTableColumnLayouts =
-	{
-		new ColumnWeightData(50),
-		new ColumnWeightData(50)
-	};
-	private static final String NAME_LABEL= LaunchConfigurationsMessages.EnvironmentTab_8; //$NON-NLS-1$
-	private static final String VALUE_LABEL= LaunchConfigurationsMessages.EnvironmentTab_9; //$NON-NLS-1$
-	protected static final String P_VARIABLE = "variable"; //$NON-NLS-1$
-	protected static final String P_VALUE = "value"; //$NON-NLS-1$
-	protected static String[] envTableColumnProperties =
-	{
-		P_VARIABLE,
-		P_VALUE
-	};
-	protected Button envAddButton;
-	protected Button envEditButton;
-	protected Button envRemoveButton;
-	protected Button appendEnvironment;
-	protected Button replaceEnvironment;
-	protected Button envSelectButton;
-	
-	/**
-	 * Content provider for the environment table
-	 */
-	protected class EnvironmentVariableContentProvider implements IStructuredContentProvider {
-		public Object[] getElements(Object inputElement) {
-			EnvironmentVariable[] elements = new EnvironmentVariable[0];
-			ILaunchConfiguration config = (ILaunchConfiguration) inputElement;
-			Map m;
-			try {
-				m = config.getAttribute(ILaunchManager.ATTR_ENVIRONMENT_VARIABLES, (Map) null);
-			} catch (CoreException e) {
-				DebugUIPlugin.log(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), IStatus.ERROR, "Error reading configuration", e)); //$NON-NLS-1$
-				return elements;
-			}
-			if (m != null && !m.isEmpty()) {
-				elements = new EnvironmentVariable[m.size()];
-				String[] varNames = new String[m.size()];
-				m.keySet().toArray(varNames);
-				for (int i = 0; i < m.size(); i++) {
-					elements[i] = new EnvironmentVariable(varNames[i], (String) m.get(varNames[i]));
-				}
-			}
-			return elements;
-		}
-		public void dispose() {
-		}
-		public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-			if (newInput == null){
-				return;
-			}
-			if (viewer instanceof TableViewer){
-				TableViewer tableViewer= (TableViewer) viewer;
-				if (tableViewer.getTable().isDisposed()) {
-					return;
-				}
-				tableViewer.setSorter(new ViewerSorter() {
-					public int compare(Viewer iviewer, Object e1, Object e2) {
-						if (e1 == null) {
-							return -1;
-						} else if (e2 == null) {
-							return 1;
-						} else {
-							return ((EnvironmentVariable)e1).getName().compareToIgnoreCase(((EnvironmentVariable)e2).getName());
-						}
-					}
-				});
-			}
-		}
-	}
-	
-	/**
-	 * Label provider for the environment table
-	 */
-	public class EnvironmentVariableLabelProvider extends LabelProvider implements ITableLabelProvider {
-		public String getColumnText(Object element, int columnIndex) 	{
-			String result = null;
-			if (element != null) {
-				EnvironmentVariable var = (EnvironmentVariable) element;
-				switch (columnIndex) {
-					case 0: // variable
-						result = var.getName();
-						break;
-					case 1: // value
-						result = var.getValue();
-						break;
-				}
-			}
-			return result;
-		}
-		public Image getColumnImage(Object element, int columnIndex) {
-			if (columnIndex == 0) {
-				return DebugPluginImages.getImage(IDebugUIConstants.IMG_OBJS_ENV_VAR);
-			}
-			return null;
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		// Create main composite
-		Composite mainComposite = new Composite(parent, SWT.NONE);
-		setControl(mainComposite);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IDebugHelpContextIds.LAUNCH_CONFIGURATION_DIALOG_ENVIRONMENT_TAB);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
-		mainComposite.setLayout(layout);
-		mainComposite.setLayoutData(gridData);
-		mainComposite.setFont(parent.getFont());
-		
-		createEnvironmentTable(mainComposite);
-		createTableButtons(mainComposite);
-		createAppendReplace(mainComposite);
-		
-		Dialog.applyDialogFont(mainComposite);
-	}
-	
-	/**
-	 * Creates and configures the widgets which allow the user to
-	 * choose whether the specified environment should be appended
-	 * to the native environment or if it should completely replace it.
-	 * @param parent the composite in which the widgets should be created
-	 */
-	protected void createAppendReplace(Composite parent) {
-		Composite appendReplaceComposite= new Composite(parent, SWT.NONE);
-		GridData gridData= new GridData();
-		gridData.horizontalSpan= 2;
-		GridLayout layout= new GridLayout();
-		appendReplaceComposite.setLayoutData(gridData);
-		appendReplaceComposite.setLayout(layout);
-		appendReplaceComposite.setFont(parent.getFont());
-		
-		appendEnvironment= createRadioButton(appendReplaceComposite, LaunchConfigurationsMessages.EnvironmentTab_16); //$NON-NLS-1$
-		appendEnvironment.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				updateLaunchConfigurationDialog();
-			}
-		});
-		replaceEnvironment= createRadioButton(appendReplaceComposite, LaunchConfigurationsMessages.EnvironmentTab_17); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Updates the enablement of the append/replace widgets. The
-	 * widgets should disable when there are no environment variables specified.
-	 */
-	protected void updateAppendReplace() {
-		boolean enable= environmentTable.getTable().getItemCount() > 0;
-		appendEnvironment.setEnabled(enable);
-		replaceEnvironment.setEnabled(enable);
-	}
-	
-	/**
-	 * Creates and configures the table that displayed the key/value
-	 * pairs that comprise the environment.
-	 * @param parent the composite in which the table should be created
-	 */
-	protected void createEnvironmentTable(Composite parent) {
-		Font font= parent.getFont();
-		// Create table composite
-		Composite tableComposite = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		layout.numColumns = 1;
-		GridData gridData = new GridData(GridData.FILL_BOTH);
-		gridData.heightHint = 150;
-		tableComposite.setLayout(layout);
-		tableComposite.setLayoutData(gridData);
-		tableComposite.setFont(font);
-		// Create label
-		Label label = new Label(tableComposite, SWT.NONE);
-		label.setFont(font);
-		label.setText(LaunchConfigurationsMessages.EnvironmentTab_Environment_variables_to_set__3); //$NON-NLS-1$
-		// Create table
-		environmentTable = new TableViewer(tableComposite, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION);
-		Table table = environmentTable.getTable();
-		TableLayout tableLayout = new TableLayout();
-		table.setLayout(tableLayout);
-		table.setHeaderVisible(true);
-		table.setFont(font);
-		gridData = new GridData(GridData.FILL_BOTH);
-		environmentTable.getControl().setLayoutData(gridData);
-		environmentTable.setContentProvider(new EnvironmentVariableContentProvider());
-		environmentTable.setLabelProvider(new EnvironmentVariableLabelProvider());
-		environmentTable.setColumnProperties(envTableColumnProperties);
-		environmentTable.addSelectionChangedListener(new ISelectionChangedListener() {
-			public void selectionChanged(SelectionChangedEvent event) {
-				handleTableSelectionChanged(event);
-			}
-		});
-		environmentTable.addDoubleClickListener(new IDoubleClickListener() {
-			public void doubleClick(DoubleClickEvent event) {
-				if (!environmentTable.getSelection().isEmpty()) {
-					handleEnvEditButtonSelected();
-				}
-			}
-		});
-		// Create columns
-		for (int i = 0; i < envTableColumnHeaders.length; i++) {
-			tableLayout.addColumnData(envTableColumnLayouts[i]);
-			TableColumn tc = new TableColumn(table, SWT.NONE, i);
-			tc.setResizable(envTableColumnLayouts[i].resizable);
-			tc.setText(envTableColumnHeaders[i]);
-		}
-	}
-	
-	/**
-	 * Responds to a selection changed event in the environment table
-	 * @param event the selection change event
-	 */
-	protected void handleTableSelectionChanged(SelectionChangedEvent event) {
-		int size = ((IStructuredSelection)event.getSelection()).size();
-		envEditButton.setEnabled(size == 1);
-		envRemoveButton.setEnabled(size > 0);
-	}
-	
-	/**
-	 * Creates the add/edit/remove buttons for the environment table
-	 * @param parent the composite in which the buttons should be created
-	 */
-	protected void createTableButtons(Composite parent) {
-		// Create button composite
-		Composite buttonComposite = new Composite(parent, SWT.NONE);
-		GridLayout glayout = new GridLayout();
-		glayout.marginHeight = 0;
-		glayout.marginWidth = 0;
-		glayout.numColumns = 1;
-		GridData gdata = new GridData(GridData.VERTICAL_ALIGN_BEGINNING | GridData.HORIZONTAL_ALIGN_END);
-		buttonComposite.setLayout(glayout);
-		buttonComposite.setLayoutData(gdata);
-		buttonComposite.setFont(parent.getFont());
-
-		createVerticalSpacer(buttonComposite, 1);
-		// Create buttons
-		envAddButton = createPushButton(buttonComposite, LaunchConfigurationsMessages.EnvironmentTab_New_4, null); //$NON-NLS-1$
-		envAddButton.addSelectionListener(new SelectionAdapter()
-		{
-			public void widgetSelected(SelectionEvent event) {
-				handleEnvAddButtonSelected();
-			}
-				});
-		envSelectButton = createPushButton(buttonComposite, LaunchConfigurationsMessages.EnvironmentTab_18, null); //$NON-NLS-1$
-		envSelectButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent event) {
-				handleEnvSelectButtonSelected();
-			}
-		});
-		envEditButton = createPushButton(buttonComposite, LaunchConfigurationsMessages.EnvironmentTab_Edit_5, null); //$NON-NLS-1$
-		envEditButton.addSelectionListener(new SelectionAdapter()
-		{
-			public void widgetSelected(SelectionEvent event) {
-				handleEnvEditButtonSelected();
-			}
-		});
-		envEditButton.setEnabled(false);
-		envRemoveButton = createPushButton(buttonComposite, LaunchConfigurationsMessages.EnvironmentTab_Remove_6, null); //$NON-NLS-1$
-		envRemoveButton.addSelectionListener(new SelectionAdapter()
-		{
-			public void widgetSelected(SelectionEvent event) {
-				handleEnvRemoveButtonSelected();
-			}
-		});
-		envRemoveButton.setEnabled(false);
-	}
-	
-	/**
-	 * Adds a new environment variable to the table.
-	 */
-	protected void handleEnvAddButtonSelected() {
-		MultipleInputDialog dialog = new MultipleInputDialog(getShell(), LaunchConfigurationsMessages.EnvironmentTab_22); //$NON-NLS-1$
-		dialog.addTextField(NAME_LABEL, null, false);
-		dialog.addVariablesField(VALUE_LABEL, null, true);
-		
-		if (dialog.open() != Window.OK) {
-			return;
-		}
-		
-		String name = dialog.getStringValue(NAME_LABEL);
-		String value = dialog.getStringValue(VALUE_LABEL);
-		
-		if (name != null && value != null && name.length() > 0 && value.length() >0) {
-			addVariable(new EnvironmentVariable(name.trim(), value.trim()));
-			updateAppendReplace();
-		}
-	}
-	
-	/**
-	 * Attempts to add the given variable. Returns whether the variable
-	 * was added or not (as when the user answers not to overwrite an
-	 * existing variable).
-	 * @param variable the variable to add
-	 * @return whether the variable was added
-	 */
-	protected boolean addVariable(EnvironmentVariable variable) {
-		String name= variable.getName();
-		TableItem[] items = environmentTable.getTable().getItems();
-		for (int i = 0; i < items.length; i++) {
-			EnvironmentVariable existingVariable = (EnvironmentVariable) items[i].getData();
-			if (existingVariable.getName().equals(name)) {
-				boolean overWrite= MessageDialog.openQuestion(getShell(), LaunchConfigurationsMessages.EnvironmentTab_12, MessageFormat.format(LaunchConfigurationsMessages.EnvironmentTab_13, new String[] {name})); //$NON-NLS-1$ //$NON-NLS-2$
-				if (!overWrite) {
-					return false;
-				}
-				environmentTable.remove(existingVariable);
-				break;
-			}
-		}
-		environmentTable.add(variable);
-		updateLaunchConfigurationDialog();
-		return true;
-	}
-	
-	/**
-	 * Displays a dialog that allows user to select native environment variables 
-	 * to add to the table.
-	 */
-	private void handleEnvSelectButtonSelected() {
-		//get Environment Variables from the OS
-		Map envVariables = getNativeEnvironment();
-		
-		//get Environment Variables from the table
-		TableItem[] items = environmentTable.getTable().getItems();
-		for (int i = 0; i < items.length; i++) {
-			EnvironmentVariable var = (EnvironmentVariable) items[i].getData();
-			envVariables.remove(var.getName());
-		}
-		
-		ListSelectionDialog dialog = new NativeEnvironmentDialog(getShell(), envVariables, createSelectionDialogContentProvider(), createSelectionDialogLabelProvider(), LaunchConfigurationsMessages.EnvironmentTab_19); //$NON-NLS-1$
-		dialog.setTitle(LaunchConfigurationsMessages.EnvironmentTab_20); //$NON-NLS-1$
-		
-		int button = dialog.open();
-		if (button == Window.OK) {
-			Object[] selected = dialog.getResult();		
-			for (int i = 0; i < selected.length; i++) {
-				environmentTable.add(selected[i]);				
-			}
-		}
-		
-		updateAppendReplace();
-		updateLaunchConfigurationDialog();
-	}
-
-	/**
-	 * Creates a label provider for the native native environment variable selection dialog.
-	 * @return A label provider for the native native environment variable selection dialog.
-	 */
-	private ILabelProvider createSelectionDialogLabelProvider() {
-		return new ILabelProvider() {
-			public Image getImage(Object element) {
-				return DebugPluginImages.getImage(IDebugUIConstants.IMG_OBJS_ENVIRONMENT);
-			}
-			public String getText(Object element) {
-				EnvironmentVariable var = (EnvironmentVariable) element;
-				return var.getName() + " [" + var.getValue() + "]"; //$NON-NLS-1$ //$NON-NLS-2$
-			}
-			public void addListener(ILabelProviderListener listener) {
-			}
-			public void dispose() {
-			}
-			public boolean isLabelProperty(Object element, String property) {
-				return false;
-			}
-			public void removeListener(ILabelProviderListener listener) {
-			}				
-		};
-	}
-
-	/**
-	 * Creates a content provider for the native native environment variable selection dialog.
-	 * @return A content provider for the native native environment variable selection dialog.
-	 */
-	private IStructuredContentProvider createSelectionDialogContentProvider() {
-		return new IStructuredContentProvider() {
-			public Object[] getElements(Object inputElement) {
-				EnvironmentVariable[] elements = null;
-				if (inputElement instanceof HashMap) {
-					Comparator comparator = new Comparator() {
-						public int compare(Object o1, Object o2) {
-							String s1 = (String)o1;
-							String s2 = (String)o2;
-							return s1.compareTo(s2);
-						}
-					
-					};
-					TreeMap envVars = new TreeMap(comparator);
-					envVars.putAll((Map)inputElement);
-					elements = new EnvironmentVariable[envVars.size()];
-					int index = 0;
-					for (Iterator iterator = envVars.keySet().iterator(); iterator.hasNext(); index++) {
-						Object key = iterator.next();
-						elements[index] = (EnvironmentVariable) envVars.get(key);
-					}
-				}
-				return elements;
-			}
-			public void dispose() {	
-			}
-			public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
-			}
-		};
-	}
-
-	/**
-	 * Gets native environment variable from the LaunchManager. Creates EnvironmentVariable objects.
-	 * @return Map of name - EnvironmentVariable pairs based on native environment.
-	 */
-	private Map getNativeEnvironment() {
-		Map stringVars = DebugPlugin.getDefault().getLaunchManager().getNativeEnvironmentCasePreserved();
-		HashMap vars = new HashMap();
-		for (Iterator i = stringVars.keySet().iterator(); i.hasNext(); ) {
-			String key = (String) i.next();
-			String value = (String) stringVars.get(key);
-			vars.put(key, new EnvironmentVariable(key, value));
-		}
-		return vars;
-	}
-
-	/**
-	 * Creates an editor for the value of the selected environment variable.
-	 */
-	private void handleEnvEditButtonSelected() {
-		IStructuredSelection sel= (IStructuredSelection) environmentTable.getSelection();
-		EnvironmentVariable var= (EnvironmentVariable) sel.getFirstElement();
-		if (var == null) {
-			return;
-		}
-		String originalName= var.getName();
-		String value= var.getValue();
-		MultipleInputDialog dialog= new MultipleInputDialog(getShell(), LaunchConfigurationsMessages.EnvironmentTab_11); //$NON-NLS-1$
-		dialog.addTextField(NAME_LABEL, originalName, false);
-		dialog.addVariablesField(VALUE_LABEL, value, true);
-		
-		if (dialog.open() != Window.OK) {
-			return;
-		}
-		String name= dialog.getStringValue(NAME_LABEL);
-		value= dialog.getStringValue(VALUE_LABEL);
-		if (!originalName.equals(name)) {
-			if (addVariable(new EnvironmentVariable(name, value))) {
-				environmentTable.remove(var);
-			}
-		} else {
-			var.setValue(value);
-			environmentTable.update(var, null);
-			updateLaunchConfigurationDialog();
-		}
-	}
-
-	/**
-	 * Removes the selected environment variable from the table.
-	 */
-	private void handleEnvRemoveButtonSelected() {
-		IStructuredSelection sel = (IStructuredSelection) environmentTable.getSelection();
-		environmentTable.getControl().setRedraw(false);
-		for (Iterator i = sel.iterator(); i.hasNext(); ) {
-			EnvironmentVariable var = (EnvironmentVariable) i.next();	
-		environmentTable.remove(var);
-		}
-		environmentTable.getControl().setRedraw(true);
-		updateAppendReplace();
-		updateLaunchConfigurationDialog();
-	}
-
-	/**
-	 * Updates the environment table for the given launch configuration
-	 * @param configuration
-	 */
-	protected void updateEnvironment(ILaunchConfiguration configuration) {
-		environmentTable.setInput(configuration);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration) {
-		boolean append= true;
-		try {
-			append = configuration.getAttribute(ILaunchManager.ATTR_APPEND_ENVIRONMENT_VARIABLES, true);
-		} catch (CoreException e) {
-			DebugUIPlugin.log(e.getStatus());
-		}
-		if (append) {
-			appendEnvironment.setSelection(true);
-	        replaceEnvironment.setSelection(false);
-		} else {
-			replaceEnvironment.setSelection(true);
-			appendEnvironment.setSelection(false);
-		}
-		updateEnvironment(configuration);
-		updateAppendReplace();
-	}
-
-	/**
-	 * Stores the environment in the given configuration
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {	
-		// Convert the table's items into a Map so that this can be saved in the
-		// configuration's attributes.
-		TableItem[] items = environmentTable.getTable().getItems();
-		Map map = new HashMap(items.length);
-		for (int i = 0; i < items.length; i++)
-		{
-			EnvironmentVariable var = (EnvironmentVariable) items[i].getData();
-			map.put(var.getName(), var.getValue());
-		} 
-		if (map.size() == 0) {
-			configuration.setAttribute(ILaunchManager.ATTR_ENVIRONMENT_VARIABLES, (Map) null);
-		} else {
-			configuration.setAttribute(ILaunchManager.ATTR_ENVIRONMENT_VARIABLES, map);
-		}
-		configuration.setAttribute(ILaunchManager.ATTR_APPEND_ENVIRONMENT_VARIABLES, appendEnvironment.getSelection());
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName()
-	 */
-	public String getName() {
-		return LaunchConfigurationsMessages.EnvironmentTab_Environment_7; //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getImage()
-	 */
-	public Image getImage() {
-		return DebugPluginImages.getImage(IDebugUIConstants.IMG_OBJS_ENVIRONMENT);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing when activated
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#deactivated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void deactivated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing when deactivated
-	}
-	
-	private class NativeEnvironmentDialog extends ListSelectionDialog {
-		public NativeEnvironmentDialog(Shell parentShell, Object input, IStructuredContentProvider contentProvider, ILabelProvider labelProvider, String message) {
-			super(parentShell, input, contentProvider, labelProvider, message);
-			setShellStyle(getShellStyle() | SWT.RESIZE);
-		}
-		
-		protected IDialogSettings getDialogSettings() {
-			IDialogSettings settings = DebugUIPlugin.getDefault().getDialogSettings();
-			IDialogSettings section = settings.getSection(getDialogSettingsSectionName());
-			if (section == null) {
-				section = settings.addNewSection(getDialogSettingsSectionName());
-			} 
-			return section;
-		}
-		
-		/**
-		 * Returns the name of the section that this dialog stores its settings in
-		 * 
-		 * @return String
-		 */
-		protected String getDialogSettingsSectionName() {
-			return IDebugUIConstants.PLUGIN_ID + ".ENVIRONMENT_TAB.NATIVE_ENVIROMENT_DIALOG"; //$NON-NLS-1$
-		}
-
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.window.Window#getInitialLocation(org.eclipse.swt.graphics.Point)
-		 */
-		protected Point getInitialLocation(Point initialSize) {
-			Point initialLocation= DialogSettingsHelper.getInitialLocation(getDialogSettingsSectionName());
-			if (initialLocation != null) {
-				return initialLocation;
-			}
-			return super.getInitialLocation(initialSize);
-		}
-			
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.window.Window#getInitialSize()
-		 */
-		protected Point getInitialSize() {
-			Point size = super.getInitialSize();
-			return DialogSettingsHelper.getInitialSize(getDialogSettingsSectionName(), size);
-		}
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.jface.window.Window#close()
-		 */
-		public boolean close() {
-			DialogSettingsHelper.persistShellGeometry(getShell(), getDialogSettingsSectionName());
-			return super.close();
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointOrganizerDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointOrganizerDelegate.java
deleted file mode 100644
index 0ce0b56..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointOrganizerDelegate.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.util.IPropertyChangeListener;
-
-/**
- * A breakpoint organizer is used to categorize breakpoints and provides
- * change notification when categorization has changed. Categories are represented
- * as arbitrary adaptable objects. For example, projects could be used to
- * categorize breakpoints. Images and labels for categories are generated
- * via workbench adapaters.
- * <p>
- * Organizers may optionally support breakpoint recategorization. 
- * </p>
- * <p>
- * Following is example plug-in XML for contributing a breakpoint organizer.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.breakpointOrganizers"&gt;
- * 	&lt;breakpointOrganizer
- * 		class="com.example.BreakpointOrganizer"
- *      id="com.example.BreakpointOrganizer"
- *      label="Example Organizer"
- *      icon="icons/full/obj16/example_org.gif"/&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>class</code> Fully qualified name of a Java class that implements
- * {@link IBreakpointOrganizerDelegate}.</li>
- * <li><code>id</code> Unique identifier for this breakpoint organizer.</li>
- * <li><code>label</code> Label for this organizer which is suitable for
- * presentation to the user.</li>
- * <li><code>icon</code> Optional path to an icon which can be shown for this
- * organizer</li>
- * </ul>
- * </p>
- * <p>
- * Clients contributing a breakpoint organizer are intended to implement
- * this interface.
- * </p>
- * @since 3.1
- */
-public interface IBreakpointOrganizerDelegate {
-    
-    /**
-     * Change event id when a category's breakpoints have changed.
-     * The <code>oldValue</code> of the <code>PropertyChangeEvent</code> will be the
-     * category that has changed, and the source of the event will the the
-     * breakpoint organizer. Breakpoints in the category will be
-     * recategorized when this event is fired.
-     *
-     * @see IPropertyChangeListener
-     */
-    public static final String P_CATEGORY_CHANGED = DebugUIPlugin.getUniqueIdentifier() + ".P_CATEGORY_CHANGED"; //$NON-NLS-1$
-
-    /**
-     * Returns objects representing the categories of the specified
-     * breakpoint or <code>null</code> if this organizer cannot classify
-     * the breakpoint. Categories must return <code>true</code> when sent
-     * the message <code>equals(Object)</code> with an equivalent category
-     * as an argument.
-     * 
-     * @param breakpoint breakpoint to classify
-     * @return categories of the given breakpoint or <code>null</code>
-     */
-    public IAdaptable[] getCategories(IBreakpoint breakpoint);
-    
-    /**
-     * Adds the specified listener. Has no effect if an identical listener is
-     * already registered.
-     * 
-     * @param listener listener to add
-     */
-    public void addPropertyChangeListener(IPropertyChangeListener listener);
-    
-    /**
-     * Removes the specified listener. Has no effect if an identical listener
-     * is not already registered.
-     * 
-     * @param listener listener to remove
-     */
-    public void removePropertyChangeListener(IPropertyChangeListener listener);
-    
-    /**
-     * Adds the specified breakpoint to the given category. Only called
-     * if <code>canAdd(...)</code> returns <code>true</code> for the given
-     * breakpoint and category.
-     * 
-     * @param breakpoint breakpoint to recategorize
-     * @param category the breakpoint's new category
-     */
-    public void addBreakpoint(IBreakpoint breakpoint, IAdaptable category);
-    
-    /**
-     * Removes the specified breakpoint from the given category. Only
-     * called if <code>canRemove(...)</code> returns <code>true</code> for
-     * the given breakpoint and category.
-     * 
-     * @param breakpoint breakpoint to recategorize
-     * @param category the category the breakpoint is remove from
-     */
-    public void removeBreakpoint(IBreakpoint breakpoint, IAdaptable category);
-    
-    /**
-     * Returns whether the given breakpoint can be categorized in the
-     * specified category.
-     *  
-     * @param breakpoint breakpoint to recatogorize
-     * @param category the category to add the breakpoint to
-     * @return whether the given breakpoint can be categorized in the
-     * specified category
-     */
-    public boolean canAdd(IBreakpoint breakpoint, IAdaptable category);
-    
-    /**
-     * Returns whether the given breakpoint can be removed from the given
-     * category.
-     * 
-     * @param breakpoint breakpoint to recategorize
-     * @param category the category to remove the breakpoint from
-     * @return whether the given breakpoint can be removed from the given
-     * category
-     */
-    public boolean canRemove(IBreakpoint breakpoint, IAdaptable category);
-    
-    /**
-     * Returns all categories managed by this organizer, or <code>null</code>.
-     * When <code>null</code> is returned, the breakpoints view only displays
-     * categories that contain breakpoints. When a collection of categories
-     * is returned the breakpoints will display all of the categories, some of
-     * which may be empty.
-     *  
-     * @return all categories managed by this organizer, or <code>null</code>
-     */
-    public IAdaptable[] getCategories();
-    
-    /**
-     * Disposes this breakpoint organizer.
-     */
-    public void dispose();
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointTypeCategory.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointTypeCategory.java
deleted file mode 100644
index ddb1ea8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IBreakpointTypeCategory.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.core.runtime.IAdaptable;
-
-/**
- * Represents a breakpoint's type to support organization of breakpoints
- * by type in the breakpoints view. A default breakpoint type adapter
- * is provided for breakpoints by the debug platform, but clients may override
- * the default adapter by providing their own adapter for breakpoints.
- * <p>
- * A breakpoint type category is an adaptable that must provide an
- * <code>IWorkbenchAdapter</code> such that it can be rendered in the
- * breakpoints view.
- * </p>
- * <p>
- * Implementations should ensure that <code>equals</code> and <code>hashCode</code>
- * are implemented properly to reflect the equality of type categories.
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * @see org.eclipse.debug.ui.BreakpointTypeCategory
- * @since 3.1
- */
-public interface IBreakpointTypeCategory extends IAdaptable {
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugEditorPresentation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugEditorPresentation.java
deleted file mode 100644
index 645ec76..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugEditorPresentation.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.ui.IEditorPart;
-
-/**
- * A debug model presentation may implement this interface to override
- * standard editor positioning and annotations associated with
- * source code display for stack frames.
- * 
- * @since 3.0
- */
-public interface IDebugEditorPresentation {
-	/**
-	 * Positions and adds annotations to the given editor for the specified
-	 * stack frame and returns whether any annotations were added. When
-	 * <code>true</code> is returned, a call will be made to remove anntations
-	 * when the source selection is cleared for the stack frame. When
-	 * <code>false</code> is returned, the debugger will position and add
-	 * standard annotations to the editor, and a corresponding call to remove
-	 * annotations will not be made. This method is called when the debugger is
-	 * has opened an editor to display source for the given stack frame. 
-	 * 
-	 * @param editorPart the editor the debugger has opened
-	 * @param frame the stack frame for which the debugger is displaying
-	 *  source
-	 */
-	public boolean addAnnotations(IEditorPart editorPart, IStackFrame frame);
-	
-	/**
-	 * Removes any debug related annotations from the given editor.
-	 * This method is called when the debugger clears the source selection
-	 * in an editor opened by the debugger. For example, when a debug
-	 * session is resumed or terminated.
-	 *   
-	 * @param editorPart an editor that annotations were added to for
-	 *  a stack frame
-	 * @param thread the thread for which stack frame annotations were
-	 *  added to the editor
-	 */
-	public void removeAnnotations(IEditorPart editorPart, IThread thread);	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugModelPresentation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugModelPresentation.java
deleted file mode 100644
index cdcbc3c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugModelPresentation.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.swt.graphics.Image;
-
-/**
- * A debug model presentation is responsible for providing labels, images,
- * and editors associated with debug elements in a specific debug model.
- * Extensions of type <code>org.eclipse.debug.ui.debugModelPresentations</code> implement
- * this interface. Generally, a debug model implementation will also provide a
- * debug model presentation extension to render and display its elements. A debug
- * model presentation is registered for a specific debug model, and is responsible
- * for the presentation elements defined/implemented by that model.
- * <p>
- * A debug model presentation extension is defined in <code>plugin.xml</code>.
- * Following is an example definition of a debug model presentation extension.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.debugModelPresentations"&gt;
- *   &lt;debugModelPresentation 
- *      id="com.example.debugModelIdentifier"
- *      class="com.example.ExamplePresentation"
- *      detailsViewerConfiguration="com.example.ExampleSourceViewerConfiguration"&gt;
- *   &lt;/debugModelPresentation&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>id</code> specifies the identifier of the debug model this presentation
- *    is responsible for. Corresponds to the model identifier returned from a debug
- *	element - see <code>IDebugElement.getModelIndentifier</code></li>
- * <li><code>class</code> specifies the fully qualified name of the Java class
- *   that implements this interface.</li>
- * <li><code>detailsViewerConfiguration</code> optionally specifies the fully qualified name of the Java class
- *   that is an instance of <code>org.eclipse.jface.text.source.SourceViewerConfiguration</code>.
- *   When specified, the source viewer configuration will be used in the "details" area of the
- *   variables and expressions view when displaying the details of an element from the
- *   debug model associated with this debug model presentation. When unspecified,
- *   a default configuration is used.</li>
- * </ul>
- * </p>
- * <p>
- * To allow for an extensible configuration, this interface defines
- * a <code>setAttribute</code> method. The debug UI plug-in defines
- * one presentation attribute:
- * <ul>
- *  <li><code>DISPLAY_VARIABLE_TYPE_NAMES</code> - This is a boolean attribute 
- *     indicating whether variable elements should be rendered with the declared
- *     type of a variable. For example, a Java debug model presentation would render
- *     an integer as <code>"int x = 3"</code> when true, and <code>"x = 3"</code>
- *     when false.</li>
- * </ul>
- * </p>
- * <p>
- * Clients may define new presentation attributes. For example, a client may wish
- * to define a "hexadecimal" property to display numeric values in hexadecimal. Implementations
- * should honor the presentation attributes defined by this interface where possible,
- * but do not need to honor presentation attributes defined by other clients.
- * To access the debug model presentation for a debug view, clients should use
- * <code>IDebugView#getPresentation(String)</code>.
- * </p>
- * <p>
- * Since 3.1, debug model presentations may optionally implement <code>IColorProvider</code>
- * and <code>IFontProvider</code> to override default fonts and colors for debug elements. 
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * @see org.eclipse.debug.core.model.IDebugElement
- * @see org.eclipse.jface.viewers.ILabelProvider
- * @see org.eclipse.debug.ui.IDebugView
- */
-
-public interface IDebugModelPresentation extends ILabelProvider, ISourcePresentation {
-	/** 
-	 * Variable type names presentation property (value <code>"org.eclipse.debug.ui.displayVariableTypeNames"</code>).
-	 * When <code>DISPLAY_VARIABLE_TYPE_NAMES</code> is set to <code>true</code>,
-	 * this label provider should include the reference type of a variable  when rendering
-	 * variables. When set to <code>false</code>, this label provider 
-	 * should not include the reference type of a variable when rendering
-	 * variables.
-	 * @see #setAttribute(String, Object)
-	 */
-	public final static String DISPLAY_VARIABLE_TYPE_NAMES= IDebugUIConstants.PLUGIN_ID + ".displayVariableTypeNames"; //$NON-NLS-1$
-	/**
-	 * Sets a presentation attribute of this label provider. For example,
-	 * see the presentation attribute <code>DISPLAY_VARIABLE_TYPE_NAMES</code>
-	 * defined by this interface.
-	 *
-	 * @param attribute the presentation attribute identifier
-	 * @param value the value of the attribute
-	 */
-	void setAttribute(String attribute, Object value);
-	/**
-	 * Returns an image for the element, or <code>null</code> if a default
-	 * image should be used.
-	 *
-	 * @param element the debug model element
-	 * @return an image for the element, or <code>null</code> if a default
-	 *    image should be used
-	 * @see ILabelProvider
-	 */
-	public Image getImage(Object element);
-	/**
-	 * Returns a label for the element, or <code>null</code> if a default
-	 * label should be used.
-	 *
-	 * @param element the debug model element
-	 * @return a label for the element, or <code>null</code> if a default
-	 *    label should be used
-	 * @see ILabelProvider
-	 */
-	public String getText(Object element);
-	
-	/**
-	 * Computes a detailed description of the given value, reporting
-	 * the result to the specified listener. This allows a presentation
-	 * to provide extra details about a selected value in the variable detail
-	 * portion of the variables view. Since this can be a long-running operation,
-	 * the details are reported back to the specified listener asynchronously.
-	 * If <code>null</code> is reported, the value's value string is displayed
-	 * (<code>IValue.getValueString()</code>).
-	 * 
-	 * @param value the value for which a detailed description
-	 * 	is required
-	 * @param listener the listener to report the details to
-	 * 	asynchronously
-	 * @since 2.0
-	 */
-	void computeDetail(IValue value, IValueDetailListener listener);	
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugUIConstants.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugUIConstants.java
deleted file mode 100644
index 1873419..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugUIConstants.java
+++ /dev/null
@@ -1,1017 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     QNX Software Systems - Mikhail Khodjaiants - Registers View (Bug 53640)
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
- 
-/**
- * Constant definitions for debug UI plug-in.
- * <p>
- * Popup menus in the debug UI support action contribution via the
- * <code>org.eclipse.ui.popupMenus</code>  extension. Actions may be
- * contributed to any group on the menu. To facilitate insertion of actions
- * inbetween existing groups, empty groups have been defined
- * in the menu. Each group prefixed by "empty" indicates an empty group.
- * </p>
- * <h3>Debug View Popup Menu</h3>
- * <ul>
- *   <li>Empty edit group</li>
- *   <li>Edit group</li>
- *   <li>Copy stack action</li>
- *   <li>Empty step group</li>
- *   <li>Step group</li>
- *   <li>Step into group</li>
- *   <li>Step into action</li>
- * 	 <li>Step over group</li>
- *   <li>Step over action</li>
- *   <li>Step return group</li> 
- *   <li>Step return action</li>
- *   <li>Empty thread group</li>
- *   <li>Thread group</li>
- *   <li>Resume action</li>
- *   <li>Suspend action</li>
- *   <li>Terminate action</li>
- *   <li>Disconnect action</li>
- *   <li>Empty launch group</li>
- *   <li>Launch group</li>
- *   <li>Remove all terminated action</li>
- *   <li>Terminate and Remove action</li>
- *   <li>Relaunch action</li>
- *   <li>Terminate all action</li>
- *   <li>Empty render group</li>
- *   <li>Render group</li>
- *   <li>Property group</li>
- *   <li>Property dialog action</li>
- *   <li>Additions group</li>
- * </ul>
- * <h3>Variables View Popup Menus</h3>
- * <ul>
- *   <li>Empty variable group</li>
- *   <li>Variable group</li>
- *   <li>Select all action</li>
- *   <li>Copy to clipboard action</li>
- *   <li>Change value action</li>
- *   <li>Empty render group</li>
- *   <li>Render group</li>
- *   <li>Show type names action</li>
- *   <li>Additions group</li>
- * </ul>
- * <h3>Breakpoints View Popup Menu</h3>
- * <ul>
- *   <li>Empty Navigation group</li>
- *   <li>Navigation group</li>
- *   <li>Open action</li>
- *   <li>Empty Breakpoint goup</li>
- *   <li>Breakpoint group</li>
- *   <li>Enable action</li> 
- *   <li>Disable action</li>
- *   <li>Remove action</li>
- *   <li>Remove all action</li>
- *   <li>Empty render group</li>
- *   <li>Render group</li>
- * 	 <li>Show breakpoints for model action</li>
- *   <li>Additions group</li>
- * </ul>
- * <h3>Expressions View Popup Menu</h3>
- * <ul>
- *   <li>Empty Expression group</li>
- *   <li>Expression group</li>
- *   <li>Select all action</li>
- * 	 <li>Copy to clipboard action</li>	 
- *   <li>Remove action</li>
- *   <li>Remove all action</li>
- *   <li>Change variable value action</li>
- *   <li>Empty Render group</li>
- *   <li>Render group</li>
- * 	 <li>Show type names action</li>
- *   <li>Additions group</li>
- * </ul>
- * <p>
- * Constants only; not intended to be implemented or extended.
- * </p>
- */
-
-public interface IDebugUIConstants {
-	
-	/**
-	 * Debug UI plug-in identifier (value <code>"org.eclipse.debug.ui"</code>).
-	 */
-	public static final String PLUGIN_ID = DebugUIPlugin.getUniqueIdentifier();
-	
-	/**
-	 * Debug perspective identifier (value <code>"org.eclipse.debug.ui.DebugPerspective"</code>).
-	 */
-	public static final String ID_DEBUG_PERSPECTIVE = PLUGIN_ID + ".DebugPerspective"; //$NON-NLS-1$
-	
-	/**
-	 * Console type identifier (value <code>"org.eclipse.debug.ui.ProcessConsoleType"</code>).
-	 * 
-	 * @since 3.1
-	 */
-	public static final String ID_PROCESS_CONSOLE_TYPE = PLUGIN_ID + ".ProcessConsoleType"; //$NON-NLS-1$
-	
-	/**
-	 * Constant for referring to no perspective.
-	 */
-	public static final String PERSPECTIVE_NONE = "perspective_none"; //$NON-NLS-1$
-	
-	/**
-	 * Constant for referring to a default perspective.
-	 */
-	public static final String PERSPECTIVE_DEFAULT = "perspective_default"; //$NON-NLS-1$
-
-	// Preferences
-
-	/**
-	 * String preference that identifies the default 'switch to perspective id' when running a 
-	 * launch configuration.  This default is used if a particular launch configuration does not
-	 * override the 'switch to perspective when in run mode' attribute with something else.
-	 */
-	public static final String PREF_SHOW_RUN_PERSPECTIVE_DEFAULT= PLUGIN_ID + ".show_run_perspective_default";  //$NON-NLS-1$
-	
-	/**
-	 * String preference that identifies the default 'switch to perspective id' when debugging a 
-	 * launch configuration.  This default is used if a particular launch configuration does not
-	 * override the 'switch to perspective when in debug mode' attribute with something else.
-	 */
-	public static final String PREF_SHOW_DEBUG_PERSPECTIVE_DEFAULT= PLUGIN_ID + ".show_debug_perspective_default";  //$NON-NLS-1$
-	
-	/**
-	 * Boolean preference controlling whether a build is done before
-	 * launching a program (if one is needed).
-	 */
-	public static final String PREF_BUILD_BEFORE_LAUNCH= PLUGIN_ID + ".build_before_launch"; //$NON-NLS-1$
-	/**
-	 * Boolean preference controlling automatic removal of terminated launches
-	 * when a new launch is registered.
-	 * @since 2.0
-	 */
-	public static final String PREF_AUTO_REMOVE_OLD_LAUNCHES= PLUGIN_ID + ".auto_remove_old_launches"; //$NON-NLS-1$
-
-	/**
-	 * Boolean preference controlling whether the debugger re-uses non-dirty editors
-	 * that it opens when displaying source. When <code>true</code> the debugger
-	 * re-uses the same editor when showing source for a selected stack frame (unless
-	 * the editor is dirty).
-	 * 
-	 * @since 2.0
-	 */
-	public static final String PREF_REUSE_EDITOR = PLUGIN_ID + ".reuse_editor"; //$NON-NLS-1$
-	
-	/**
-	 * Integer preference that specifies the length of the Run & Debug launch history lists.
-	 * 
-	 * @since 2.0
-	 */
-	public static final String PREF_MAX_HISTORY_SIZE = PLUGIN_ID + ".max_history_size"; //$NON-NLS-1$
-	
-	/**
-	 * Boolean preference controlling whether the debugger shows types names
-	 * in its variable view. When <code>true</code> the debugger
-	 * will display type names in new variable views.
-	 * 
-	 * @since 2.0
-	 * @deprecated no longer used
-	 */
-	public static final String PREF_SHOW_TYPE_NAMES = PLUGIN_ID + ".show_type_names"; //$NON-NLS-1$	
-	
-	/**
-	 * Boolean preference controlling whether the debugger shows the detail pane
-	 * in its variable view. When <code>true</code> the debugger
-	 * will show the detail panes in new variable views.
-	 * 
-	 * @since 2.0
-	 * @deprecated no longer used
-	 */
-	public static final String PREF_SHOW_DETAIL_PANE = PLUGIN_ID + ".show_detail_pane"; //$NON-NLS-1$
-	
-	/**
-	 * Boolean preference controlling whether the debugger will force activate the active
-	 * shell/window of the Eclipse workbench when a breakpoint is hit.
-	 * 
-	 * @since 2.1
-	 */
-	public static final String PREF_ACTIVATE_WORKBENCH= PLUGIN_ID + ".activate_workbench"; //$NON-NLS-1$
-	
-	/**
-	 * Boolean preference controlling whether breakpoints are
-	 * automatically skipped during a Run To Line operation.
-	 * If true, breakpoints will be skipped automatically
-	 * during Run To Line. If false, they will be hit.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE= PLUGIN_ID + ".skip_breakpoints_during_run_to_line"; //$NON-NLS-1$
-	
-	/**
-	 * String preference controlling in which perspectives view
-	 * management will occur. The value is a comma-separated list
-	 * of plug-in identifiers.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String PREF_MANAGE_VIEW_PERSPECTIVES= PLUGIN_ID + ".manage_view_perspectives"; //$NON-NLS-1$
-	
-	/**
-	 * Debug view identifier (value <code>"org.eclipse.debug.ui.DebugView"</code>).
-	 */
-	public static final String ID_DEBUG_VIEW= "org.eclipse.debug.ui.DebugView"; //$NON-NLS-1$
-	
-	/**
-	 * Breakpoint view identifier (value <code>"org.eclipse.debug.ui.BreakpointView"</code>).
-	 */
-	public static final String ID_BREAKPOINT_VIEW= "org.eclipse.debug.ui.BreakpointView"; //$NON-NLS-1$
-	
-	/**
-	 * Variable view identifier (value <code>"org.eclipse.debug.ui.VariableView"</code>).
-	 */
-	public static final String ID_VARIABLE_VIEW= "org.eclipse.debug.ui.VariableView"; //$NON-NLS-1$
-	
-	/**
-	 * Expression view identifier (value <code>"org.eclipse.debug.ui.ExpressionView"</code>).
-	 * @since 2.0
-	 */
-	public static final String ID_EXPRESSION_VIEW= "org.eclipse.debug.ui.ExpressionView"; //$NON-NLS-1$
-		
-	/**
-	 * Register view identifier (value <code>"org.eclipse.debug.ui.RegisterView"</code>).
-	 * @since 3.0
-	 */
-	public static final String ID_REGISTER_VIEW= "org.eclipse.debug.ui.RegisterView"; //$NON-NLS-1$
-		
-	/**
-	 * Console view identifier (value <code>"org.eclipse.debug.ui.ConsoleView"</code>).
-	 * @deprecated Use org.eclipse.ui.console.IConsoleConstants.ID_CONSOLE_VIEW 
-	 * @since 3.0
-	 */
-	public static final String ID_CONSOLE_VIEW= "org.eclipse.debug.ui.ConsoleView"; //$NON-NLS-1$
-	
-	// Console stream identifiers
-	
-	/**
-	 * Identifier for the standard out stream.
-	 * 
-	 * @see org.eclipse.debug.ui.console.IConsoleColorProvider#getColor(String)
-	 * @since 2.1
-	 */
-	public static final String ID_STANDARD_OUTPUT_STREAM = IDebugUIConstants.PLUGIN_ID + ".ID_STANDARD_OUTPUT_STREAM"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for the standard error stream.
-	 *
-	 * @see org.eclipse.debug.ui.console.IConsoleColorProvider#getColor(String)
-	 * @since 2.1
-	 */	
-	public static final String ID_STANDARD_ERROR_STREAM = IDebugUIConstants.PLUGIN_ID + ".ID_STANDARD_ERROR_STREAM"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for the standard input stream.
-	 *
-	 * @see org.eclipse.debug.ui.console.IConsoleColorProvider#getColor(String)
-	 * @since 2.1
-	 */	
-	public static final String ID_STANDARD_INPUT_STREAM = IDebugUIConstants.PLUGIN_ID + ".ID_STANDARD_INPUT_STREAM"; //$NON-NLS-1$
-	
-	// Debug Action images
-	
-	/**
-	 * Debug action image identifier.
-	 */
-	public static final String IMG_ACT_DEBUG= "IMG_ACT_DEBUG"; //$NON-NLS-1$
-
-	/**
-	 * Run action image identifier.
-	 */
-	public static final String IMG_ACT_RUN= "IMG_ACT_RUN"; //$NON-NLS-1$
-    
-    /** "Link with View" action image identifier. */
-    public static final String IMG_ACT_SYNCED= "IMG_ACT_SYNCED"; //$NON-NLS-1$
-	
-	/** "Skip Breakpoints" action image identifier */
-	public static final String IMG_SKIP_BREAKPOINTS= "IMG_SKIP_BREAKPOINTS"; //$NON-NLS-1$
-	
-	/** Clear action image identifier. 
-	 * @deprecated */
-	public static final String IMG_LCL_CLEAR= "IMG_LCL_CLEAR"; //$NON-NLS-1$
-	
-	/** Display variable type names action image identifier. */
-	public static final String IMG_LCL_TYPE_NAMES= "IMG_LCL_TYPE_NAMES"; //$NON-NLS-1$
-	
-	/** Toggle detail pane action image identifier.*/
-	public static final String IMG_LCL_DETAIL_PANE= "IMG_LCL_DETAIL_PANE"; //$NON-NLS-1$
-	
-	/** Change variable value action image identifier.*/
-	public static final String IMG_LCL_CHANGE_VARIABLE_VALUE= "IMG_LCL_CHANGE_VARIABLE_VALUE"; //$NON-NLS-1$
-		
-	/**
-	 * Disconnect action image identifier
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_LCL_DISCONNECT= "IMG_LCL_DISCONNECT"; //$NON-NLS-1$
-	
-	/**
-	 * Scroll lock action image identifier
-	 * 
-	 * @since 2.1
-	 */
-	public static final String IMG_LCL_LOCK = "IMG_LCL_LOCK"; //$NON-NLS-1$	
-	
-	/**
-	 * Remove all action image identifier
-	 * 
-	 * @since 2.1
-	 */
-	public static final String IMG_LCL_REMOVE_ALL = "IMG_LCL_REMOVE_ALL"; //$NON-NLS-1$	
-	
-	/**
-	 * Content assist action image identifier.
-	 */
-	public static final String IMG_LCL_CONTENT_ASSIST= "IMG_LCL_CONTENT_ASSIST"; //$NON-NLS-1$
-		
-	/**
-	 * Content assist action image identifier (enabled).
-	 */
-	public static final String IMG_ELCL_CONTENT_ASSIST= "IMG_ELCL_CONTENT_ASSIST"; //$NON-NLS-1$
-	
-	/**
-	 * Content assist action image identifier (disabled).
-	 */
-	public static final String IMG_DLCL_CONTENT_ASSIST= "IMG_DLCL_CONTENT_ASSIST"; //$NON-NLS-1$
-	
-	/**
-	 * Content assist action image identifier.
-	 */
-	public static final String IMG_LCL_DETAIL_PANE_UNDER= "IMG_LCL_DETAIL_PANE_UNDER"; //$NON-NLS-1$
-	
-	/**
-	 * Content assist action image identifier.
-	 */
-	public static final String IMG_LCL_DETAIL_PANE_RIGHT= "IMG_LCL_DETAIL_PANE_RIGHT"; //$NON-NLS-1$
-	
-	/**
-	 * Content assist action image identifier.
-	 */
-	public static final String IMG_LCL_DETAIL_PANE_HIDE= "IMG_LCL_DETAIL_PANE_HIDE"; //$NON-NLS-1$
-	
-	// Debug element images
-	
-	/** Debug mode launch image identifier. */
-	public static final String IMG_OBJS_LAUNCH_DEBUG= "IMG_OBJS_LAUNCH_DEBUG"; //$NON-NLS-1$
-	
-	/** Run mode launch image identifier. */
-	public static final String IMG_OBJS_LAUNCH_RUN= "IMG_OBJS_LAUNCH_RUN"; //$NON-NLS-1$
-	
-	/** Terminated run mode launch image identifier. */
-	public static final String IMG_OBJS_LAUNCH_RUN_TERMINATED= "IMG_OBJS_LAUNCH_RUN_TERMINATED"; //$NON-NLS-1$
-	
-	/** Running debug target image identifier. */
-	public static final String IMG_OBJS_DEBUG_TARGET= "IMG_OBJS_DEBUG_TARGET"; //$NON-NLS-1$
-	
-	/** Suspended debug target image identifier. */
-	public static final String IMG_OBJS_DEBUG_TARGET_SUSPENDED= "IMG_OBJS_DEBUG_TARGET_SUSPENDED"; //$NON-NLS-1$
-	
-	/** Terminated debug target image identifier. */
-	public static final String IMG_OBJS_DEBUG_TARGET_TERMINATED= "IMG_OBJS_DEBUG_TARGET_TERMINATED"; //$NON-NLS-1$
-	
-	/** Running thread image identifier. */
-	public static final String IMG_OBJS_THREAD_RUNNING= "IMG_OBJS_THREAD_RUNNING"; //$NON-NLS-1$
-	
-	/** Suspended thread image identifier. */
-	public static final String IMG_OBJS_THREAD_SUSPENDED= "IMG_OBJS_THREAD_SUSPENDED"; //$NON-NLS-1$
-	
-	/** Terminated thread image identifier. */
-	public static final String IMG_OBJS_THREAD_TERMINATED= "IMG_OBJS_THREAD_TERMINATED"; //$NON-NLS-1$
-	
-	/** Stack frame (suspended) image identifier. */
-	public static final String IMG_OBJS_STACKFRAME= "IMG_OBJS_STACKFRAME"; //$NON-NLS-1$
-	
-	/** Stack frame (running) image identifier. */
-	public static final String IMG_OBJS_STACKFRAME_RUNNING= "IMG_OBJS_STACKFRAME_RUNNING"; //$NON-NLS-1$
-	
-	/** Enabled breakpoint image identifier. */
-	public static final String IMG_OBJS_BREAKPOINT= "IMG_OBJS_BREAKPOINT"; //$NON-NLS-1$
-	
-	/** Disabled breakpoint image identifier. */
-	public static final String IMG_OBJS_BREAKPOINT_DISABLED= "IMG_OBJS_BREAKPOINT_DISABLED"; //$NON-NLS-1$
-	
-	/**
-	 * Breakpoint group image identifier.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String IMG_OBJS_BREAKPOINT_GROUP = "IMG_OBJS_BREAKPOINT_GROUP"; //$NON-NLS-1$
-	
-	/**
-	 * Disabled breakpoint group image identifier.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String IMG_OBJS_BREAKPOINT_GROUP_DISABLED = "IMG_OBJS_BREAKPOINT_GROUP_DISABLED"; //$NON-NLS-1$
-		
-	/**
-	 * Enabled watchpoint image identifier (access & modification).
-	 * @since 3.0
-	 */
-	public static final String IMG_OBJS_WATCHPOINT= "IMG_OBJS_WATCHPOINT"; //$NON-NLS-1$
-	
-	/**
-	 * Disabled watchpoint image identifier (access & modification).
-	 * @since 3.0
-	 */
-	public static final String IMG_OBJS_WATCHPOINT_DISABLED= "IMG_OBJS_WATCHPOINT_DISABLED"; //$NON-NLS-1$
-	
-	/**
-	 * Enabled access watchpoint image identifier.
-	 * @since 3.1
-	 */
-	public static final String IMG_OBJS_ACCESS_WATCHPOINT= "IMG_OBJS_ACCESS_WATCHPOINT"; //$NON-NLS-1$
-	
-	/**
-	 * Disabled access watchpoint image identifier.
-	 * @since 3.1
-	 */
-	public static final String IMG_OBJS_ACCESS_WATCHPOINT_DISABLED= "IMG_OBJS_ACCESS_WATCHPOINT_DISABLED"; //$NON-NLS-1$
-	
-	/**
-	 * Enabled modification watchpoint image identifier.
-	 * @since 3.1
-	 */
-	public static final String IMG_OBJS_MODIFICATION_WATCHPOINT= "IMG_OBJS_MODIFICATION_WATCHPOINT"; //$NON-NLS-1$
-	
-	/**
-	 * Disabled modification watchpoint image identifier.
-	 * @since 3.1
-	 */
-	public static final String IMG_OBJS_MODIFICATION_WATCHPOINT_DISABLED= "IMG_OBJS_MODIFICATION_WATCHPOINT_DISABLED"; //$NON-NLS-1$
-
-	/** Running system process image identifier. */
-	public static final String IMG_OBJS_OS_PROCESS= "IMG_OBJS_OS_PROCESS"; //$NON-NLS-1$
-	
-	/** Terminated system process image identifier. */
-	public static final String IMG_OBJS_OS_PROCESS_TERMINATED= "IMG_OBJS_OS_PROCESS_TERMINATED"; //$NON-NLS-1$
-		
-	/**
-	 * Expression image identifier.
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_OBJS_EXPRESSION= "IMG_OBJS_EXPRESSION"; //$NON-NLS-1$
-	
-	/**
-	 * Generic variable image identifier.
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_OBJS_VARIABLE= "IMG_OBJS_VARIABLE"; //$NON-NLS-1$
-
-	/**
-	 * Generic identifier of register group image.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String IMG_OBJS_REGISTER_GROUP= "IMG_OBJS_REGISTER_GROUP"; //$NON-NLS-1$
-
-	/**
-	 * Generic register image identifier.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String IMG_OBJS_REGISTER= "IMG_OBJS_REGISTER"; //$NON-NLS-1$
-
-	/**
-	 * Environment image identifier.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String IMG_OBJS_ENVIRONMENT = "IMG_OBJS_ENVIRONMENT"; //$NON-NLS-1$
-	
-	/**
-	 * Environment variable image identifier.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String IMG_OBJS_ENV_VAR = "IMG_OBJS_ENV_VAR"; //$NON-NLS-1$	
-	
-	// views
-	
-	/** 
-	 * Launches view image identifier
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_VIEW_LAUNCHES= "IMG_VIEW_LAUNCHES"; //$NON-NLS-1$
-	
-	/** 
-	 * Breakpoints view image identifier
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_VIEW_BREAKPOINTS= "IMG_VIEW_BREAKPOINTS"; //$NON-NLS-1$	
-
-	/** 
-	 * Variables view image identifier
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_VIEW_VARIABLES= "IMG_VIEW_VARIABLES"; //$NON-NLS-1$
-	
-	/** 
-	 * Expressions view image identifier
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_VIEW_EXPRESSIONS= "IMG_VIEW_EXPRESSIONS"; //$NON-NLS-1$	
-
-	/** 
-	 * Console view image identifier
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_VIEW_CONSOLE= "IMG_VIEW_CONSOLE"; //$NON-NLS-1$
-	
-	// perspective
-	/** 
-	 * Debug perspective image identifier
-	 * 
-	 * @since 2.0
-	 */
-	public static final String IMG_PERSPECTIVE_DEBUG= "IMG_PERSPECTIVE_DEBUG"; //$NON-NLS-1$			
-			
-	// wizard banners
-	/** Debug wizard banner image identifier. */
-	public static final String IMG_WIZBAN_DEBUG= "IMG_WIZBAN_DEBUG"; //$NON-NLS-1$
-	
-	/** Run wizard banner image identifier. */
-	public static final String IMG_WIZBAN_RUN= "IMG_WIZBAN_RUN"; //$NON-NLS-1$
-	
-	// overlays
-	/** Error overlay image identifier. */
-	public static final String IMG_OVR_ERROR = "IMG_OVR_ERROR";  //$NON-NLS-1$
-
-    /**
-     * Skip breakpoint image overlay identifier.
-     * @since 3.1
-     */
-    public static final String IMG_OVR_SKIP_BREAKPOINT = "IMG_OVR_SKIP_BREAKPOINT"; //$NON-NLS-1$
-    
-	/**
-	 * Debug action set identifier (value <code>"org.eclipse.debug.ui.debugActionSet"</code>).
-	 */
-	public static final String DEBUG_ACTION_SET= PLUGIN_ID + ".debugActionSet"; //$NON-NLS-1$
-
-	
-	/**
-	 * Launch action set identifier (value <code>"org.eclipse.debug.ui.launchActionSet"</code>).
-	 */
-	public static final String LAUNCH_ACTION_SET= PLUGIN_ID + ".launchActionSet"; //$NON-NLS-1$
-	
-	// extensions
-	/**
-	 * Identifier for the standard 'debug' launch group.
-	 * @since 2.1 
-	 */
-	public static final String ID_DEBUG_LAUNCH_GROUP = PLUGIN_ID + ".launchGroup.debug"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for the standard 'run' launch group.
-	 * @since 2.1 
-	 */
-	public static final String ID_RUN_LAUNCH_GROUP = PLUGIN_ID + ".launchGroup.run"; //$NON-NLS-1$	
-	
-	/**
-	 * Identifier for the standard 'profile' launch group.
-	 * @since 3.0 
-	 */
-	public static final String ID_PROFILE_LAUNCH_GROUP = PLUGIN_ID + ".launchGroup.profile"; //$NON-NLS-1$	
-	
-	// menus 
-	
-	/** 
-	 * Identifier for an empty group preceding an
-	 * edit group in a menu (value <code>"emptyEditGroup"</code>).
-	 */
-	public static final String EMPTY_EDIT_GROUP = "emptyEditGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for an edit group in a menu (value <code>"editGroup"</code>).
-	 */
-	public static final String EDIT_GROUP = "editGroup"; //$NON-NLS-1$
-	
-	/** 
-	 * Identifier for an empty group preceding a
-	 * step group in a menu (value <code>"emptyStepGroup"</code>).
-	 */
-	public static final String EMPTY_STEP_GROUP = "emptyStepGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a step group in a menu or toolbar (value <code>"stepGroup"</code>).
-	 */
-	public static final String STEP_GROUP = "stepGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a step into group in a menu or toolbar (value <code>"stepIntoGroup"</code>).
-	 */
-	public static final String STEP_INTO_GROUP = "stepIntoGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a step over group in a menu or toolbar (value <code>"stepOverGroup"</code>).
-	 */
-	public static final String STEP_OVER_GROUP = "stepOverGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a step return group in a menu or toolbar (value <code>"stepReturnGroup"</code>).
-	 */
-	public static final String STEP_RETURN_GROUP = "stepReturnGroup"; //$NON-NLS-1$
-	
-	/** 
-	 * Identifier for an empty group preceding a
-	 * thread group in a menu (value <code>"emptyThreadGroup"</code>).
-	 */
-	public static final String EMPTY_THREAD_GROUP = "emptyThreadGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a thread group in a menu or toolbar(value <code>"threadGroup"</code>).
-	 */
-	public static final String THREAD_GROUP = "threadGroup"; //$NON-NLS-1$
-	
-	/** 
-	 * Identifier for an empty group preceding a
-	 * launch group in a menu (value <code>"emptyLaunchGroup"</code>).
-	 */
-	public static final String EMPTY_LAUNCH_GROUP = "emptyLaunchGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a launch group in a menu (value <code>"launchGroup"</code>).
-	 */
-	public static final String LAUNCH_GROUP = "launchGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for an output group in a menu (value
-	 * <code>"outputGroup"</code>).
-	 */
-	public static final String OUTPUT_GROUP = "outputGroup"; //$NON-NLS-1$	
-	
-	/** 
-	 * Identifier for an empty group preceding a
-	 * variable group in a menu (value <code>"emptyVariableGroup"</code>).
-	 */
-	public static final String EMPTY_VARIABLE_GROUP = "emptyVariableGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a variable group in a menu (value <code>"variableGroup"</code>).
-	 */
-	public static final String VARIABLE_GROUP = "variableGroup"; //$NON-NLS-1$
-	
-	/** 
-	 * Identifier for an empty group preceding a
-	 * navigation group in a menu (value <code>"emptyNavigationGroup"</code>).
-	 */
-	public static final String EMPTY_NAVIGATION_GROUP = "emptyNavigationGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a navigation group in a menu (value <code>"navigationGroup"</code>).
-	 */
-	public static final String NAVIGATION_GROUP = "navigationGroup"; //$NON-NLS-1$
-	
-	/** 
-	 * Identifier for an empty group preceding a
-	 * breakpoint group in a menu (value <code>"emptyBreakpointGroup"</code>).
-	 */
-	public static final String EMPTY_BREAKPOINT_GROUP = "emptyBreakpointGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a breakpoint group in a menu (value <code>"breakpointGroup"</code>).
-	 */
-	public static final String BREAKPOINT_GROUP = "breakpointGroup"; //$NON-NLS-1$
-		
-	/**
-	 * Identifier for a "breakpoint group" group in a menu (value <code>"breakpointGroupGroup"</code>).
-	 * 
-	 * @since 3.1
-	 */
-	public static final String BREAKPOINT_GROUP_GROUP = "breakpointGroupGroup"; //$NON-NLS-1$
-		
-	/** 
-	 * Identifier for an empty group preceding an
-	 * expression group in a menu (value <code>"emptyExpressionGroup"</code>).
-	 * 
-	 * @since 2.0
-	 */
-	public static final String EMPTY_EXPRESSION_GROUP = "emptyExpressionGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for an expression group in a menu (value <code>"expressionGroup"</code>).
-	 * 
-	 * @since 2.0
-	 */
-	public static final String EXPRESSION_GROUP = "expressionGroup"; //$NON-NLS-1$
-	/** 
-	 * Identifier for an empty group preceding a
-	 * render group in a menu (value <code>"emptyRenderGroup"</code>).
-	 */
-	public static final String EMPTY_RENDER_GROUP = "emptyRenderGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a render group in a menu or toolbar(value <code>"renderGroup"</code>).
-	 */
-	public static final String RENDER_GROUP = "renderGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a property group in a menu (value <code>"propertyGroup"</code>).
-	 */
-	public static final String PROPERTY_GROUP = "propertyGroup"; //$NON-NLS-1$
-	
-	/** 
-	 * Identifier for an empty group preceding a
-	 * register group in a menu (value <code>"emptyRegisterGroup"</code>).
-	 */
-	public static final String EMPTY_REGISTER_GROUP = "emptyRegisterGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Identifier for a register group in a menu (value <code>"registerGroup"</code>).
-	 */
-	public static final String REGISTER_GROUP = "registerGroup"; //$NON-NLS-1$
-	
-	/**
-	 * Id for the popup menu associated with the variables (tree viewer) part of the VariableView
-	 */
-	public static final String VARIABLE_VIEW_VARIABLE_ID = "org.eclipse.debug.ui.VariableView.variables"; //$NON-NLS-1$
-	
-	/**
-	 * Id for the popup menu associated with the detail (text viewer) part of the VariableView
-	 */
-	public static final String VARIABLE_VIEW_DETAIL_ID = "org.eclipse.debug.ui.VariableView.detail"; //$NON-NLS-1$
-	
-	// status codes
-	/**
-	 * Status indicating an invalid extension definition.
-	 */
-	public static final int STATUS_INVALID_EXTENSION_DEFINITION = 100;
-		
-	/**
-	 * Status code indicating an unexpected internal error.
-	 */
-	public static final int INTERNAL_ERROR = 120;		
-	
-	// launch configuration attribute keys
-	/**
-	 * Launch configuration attribute - the perspective to
-	 * switch to when a launch configuration is launched in
-	 * run mode (value <code>org.eclipse.debug.ui.target_run_perspective</code>).
-	 * Value is a string corresponding to a perspective identifier,
-	 * or <code>null</code> indicating no perspective change.
-	 * 
-	 * @since 2.0
-	 * @deprecated Since 3.0, this launch configuration attribute is no longer supported.
-	 *  Use <code>DebugUITools.setLaunchPerspective(ILaunchConfigurationType type, String mode, String perspective)</code>.
-	 */
-	public static final String ATTR_TARGET_RUN_PERSPECTIVE = PLUGIN_ID + ".target_run_perspective";	 //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration attribute - the perspective to
-	 * switch to when a launch configuration is launched in
-	 * debug mode (value <code>org.eclipse.debug.ui.target_debug_perspective</code>).
-	 * Value is a string corresponding to a perspective identifier,
-	 * or <code>null</code> indicating no perspective change.
-	 * 
-	 * @since 2.0
-	 * @deprecated Since 3.0, this launch configuration attribute is no longer supported.
-	 *  Use <code>DebugUITools.setLaunchPerspective(ILaunchConfigurationType type, String mode, String perspective)</code>.
-	 */
-	public static final String ATTR_TARGET_DEBUG_PERSPECTIVE = PLUGIN_ID + ".target_debug_perspective";		 //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration attribute - the container where the configuration file
-	 * is stored.  The container is set via the 'setContainer()' call on ILaunchConfigurationWorkingCopy.
-	 * This constant is only needed for persisting and reading the default value of the
-	 * container value for individual resources.
-	 * 
-	 * @since 2.0
-	 */
-	public static final String ATTR_CONTAINER = PLUGIN_ID + ".container"; //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration attribute - a boolean value that indicates if the launch configuration
-	 * is 'private'.  A private configuration is one that does not appear to the user in the launch
-	 * history or the launch configuration dialog.
-	 * 
-	 * @since 2.0
-	 */
-	public static final String ATTR_PRIVATE = PLUGIN_ID + ".private"; //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration attribute - a boolean value that indicates if the launch configuration
-	 * is displayed in the debug favorites menu. Default value is
-	 * <code>false</code> if absent.
-	 * 
-	 * @since 2.0
-	 * @deprecated use <code>ATTR_FAVORITE_GROUPS</code> instead
-	 */
-	public static final String ATTR_DEBUG_FAVORITE = PLUGIN_ID + ".debugFavorite"; //$NON-NLS-1$	
-	
-	/**
-	 * Launch configuration attribute - a boolean value that indicates if the launch configuration
-	 * is displayed in the run favorites menu.Default value is
-	 * <code>false</code> if absent.
-	 * 
-	 * @since 2.0
-	 * @deprecated use <code>ATTR_FAVORITE_GROUPS</code> instead
-	 */
-	public static final String ATTR_RUN_FAVORITE = PLUGIN_ID + ".runFavorite"; //$NON-NLS-1$		
-	
-	/**
-	 * Launch configuration attribute - a list of launch group identifiers
-	 * representing the favorite histories a launch configuration should appear
-	 * in. When <code>null</code>, the configuration does not appear in any
-	 * favorite lists.
-	 * 
-	 * @since 2.1
-	 */
-	public static final String ATTR_FAVORITE_GROUPS = PLUGIN_ID + ".favoriteGroups"; //$NON-NLS-1$
-		
-	/**
-	 * Launch configuration attribute - a boolean value indicating whether a
-	 * configuration should be launched in the background. Default value is <code>true</code>.
-	 * 
-	 * @since 3.0
-	 */
-	public static final String ATTR_LAUNCH_IN_BACKGROUND = PLUGIN_ID + ".ATTR_LAUNCH_IN_BACKGROUND"; //$NON-NLS-1$
-	
-	/**
-	 * ProcessConsole attribute - references the process that was launched.
-	 * 
-	 * @since 3.1 
-	 */
-	public static final String ATTR_CONSOLE_PROCESS = PLUGIN_ID + ".ATTR_CONSOLE_PROCESS"; //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration attribute specifying the encoding that the console should use.
-	 * When unspecified, the default encoding is used. Encoding names are available 
-	 * from {@link org.eclipse.ui.WorkbenchEncoding}.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String ATTR_CONSOLE_ENCODING = PLUGIN_ID + ".ATTR_CONSOLE_ENCODING"; //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration boolean attribute specifying whether output from the launched process will
-	 * be captured and written to the console. Default value is <code>true</code>.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String ATTR_CAPTURE_IN_CONSOLE = PLUGIN_ID + ".ATTR_CONSOLE_OUTPUT_ON"; //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration attribute specifying a file name that console output should
-	 * be written to or <code>null</code> if none. Default value is <code>null</code>.
-	 * When specified, all output from the launched process will be written to the file.
-	 * The file name attribute may contain variables which will be resolved by the
-	 * {@link org.eclipse.core.variables.IStringVariableManager}.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String ATTR_CAPTURE_IN_FILE = PLUGIN_ID + ".ATTR_CAPTURE_IN_FILE"; //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration attribute specifying whether process output will be appended to the
-	 * file specified by the <code>ATTR_CAPTURE_IN_FILE</code> attribute instead of overwriting
-	 * the file. Default value is <code>false</code>.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String ATTR_APPEND_TO_FILE = PLUGIN_ID + ".ATTR_APPEND_TO_FILE"; //$NON-NLS-1$
-	
-	// Extension points
-	
-	/**
-	 * Debug model presentation simple extension point identifier (value <code>"debugModelPresentations"</code>).
-	 */
-	public static final String ID_DEBUG_MODEL_PRESENTATION= "debugModelPresentations"; //$NON-NLS-1$
-	
-	/**
-	 * Debug action groups extension point identifier
-	 * (value <code>"debugActionGroups"</code>).
-	 * 
-	 * @since 2.0
-	 * @deprecated The Debug Action Groups extension point no longer exists. Product
-	 *  vendors should use Activities instead. 
-	 */
-	public static final String EXTENSION_POINT_DEBUG_ACTION_GROUPS= "debugActionGroups";	 //$NON-NLS-1$
-	
-	/**
-	 * Launch configuration tab groups extension point identifier
-	 * (value <code>"launchConfigurationTabGroups"</code>).
-	 * 
-	 * @since 2.0
-	 */
-	public static final String EXTENSION_POINT_LAUNCH_CONFIGURATION_TAB_GROUPS= "launchConfigurationTabGroups";	 //$NON-NLS-1$	
-
-	/**
-	 * Launch shortcuts extension point identifier
-	 * (value <code>"launchShortcuts"</code>).
-	 * 
-	 * @since 2.0
-	 */
-	public static final String EXTENSION_POINT_LAUNCH_SHORTCUTS= "launchShortcuts";	 //$NON-NLS-1$
-	
-	/**
-	 * Extension point for launch configuration type images.
-	 * 
-	 * @since 2.0
-	 */
-	public static final String EXTENSION_POINT_LAUNCH_CONFIGURATION_TYPE_IMAGES = "launchConfigurationTypeImages"; //$NON-NLS-1$	
-	
-	/**
-	 * Console document color provider extension point identifier
-	 * (value <code>"consoleColorProviders"</code>).
-	 * 
-	 * @since 2.1
-	 */
-	public static final String EXTENSION_POINT_CONSOLE_COLOR_PROVIDERS = "consoleColorProviders";	 //$NON-NLS-1$
-	
-	/**
-	 * Launch groups extension point identifier (value
-	 * <code>"launchGroups"</code>).
-	 * 
-	 * @since 2.1
-	 */
-	public static final String EXTENSION_POINT_LAUNCH_GROUPS = "launchGroups";	 //$NON-NLS-1$
-	
-	/**
-	 * Console line trackers extension point identifier (value
-	 * <code>"consoleLineTrackers"</code>).
-	 *
-	 * @since 2.1
-	 */
-	public static final String EXTENSION_POINT_CONSOLE_LINE_TRACKERS = "consoleLineTrackers";	 //$NON-NLS-1$		
-		
-	/**
-	 * Variables content providers extension point identifier (value
-	 * <code>"variablesContentProviders"</code>).
-	 *
-	 * @since 3.0
-	 */
-	public static final String EXTENSION_POINT_OBJECT_BROWSERS = "objectBrowsers";	 //$NON-NLS-1$
-		
-	/**
-	 * Launch variable components extension point identifier (value
-	 * <code>"launchVariableComponents"</code>). The launch variable
-	 * components extension point specifies an <code>IVariableComponent</code>
-	 * for an <code>IContextLaunchVariable</code>.
-	 */
-	public static final String EXTENSION_POINT_LAUNCH_VARIABLE_COMPONENTS = "launchVariableComponents";		//$NON-NLS-1$
-		
-	/**
-	 * Variable value editors extension point identifier (value
-	 * <code>"variableValueEditors"</code>
-     * 
-     * @since 3.1
-	 */
-	public static final String EXTENSION_POINT_VARIABLE_VALUE_EDITORS = "variableValueEditors"; //$NON-NLS-1$
-	
-    /**
-     * Memory renderings extension point identifier (value
-     * <code>"memoryRenderings"</code>
-     * 
-     * @since 3.1
-     */
-    public static final String EXTENSION_POINT_MEMORY_RENDERIGNS = "memoryRenderings"; //$NON-NLS-1$
-    
-    /**
-     * Breakpoint organizers extension point identifier (value
-     * <code>"breakpointOrganizers"</code>
-     * 
-     * @since 3.1
-     */
-    public static final String EXTENSION_POINT_BREAKPOINT_ORGANIZERS = "breakpointOrganizers"; //$NON-NLS-1$    
-
-	/**
-	 * Padded string preference for renderings.  Padded string is the string to be used in place of 
-	 * of a memory byte if a rendering cannot render the data properly.
-	 * @since 3.1
-	 */
-	public static final String PREF_PADDED_STR = PLUGIN_ID + ".memory.paddedStr"; //$NON-NLS-1$
-
-	/**
-	 * ASCII code page for rendering memory to ASCII strings.
-	 * @since 3.1
-	 */
-	public static final String PREF_DEFAULT_ASCII_CODE_PAGE = PLUGIN_ID + ".defaultAsciiCodePage"; //$NON-NLS-1$
-
-	/**
-	 * EBCDIC code page for rendering memory to EBCDIC strings.
-	 * @since 3.1
-	 */
-	public static final String PREF_DEFAULT_EBCDIC_CODE_PAGE = PLUGIN_ID + ".defaultEbcdicCodePage"; //$NON-NLS-1$
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugView.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugView.java
deleted file mode 100644
index f864ae0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IDebugView.java
+++ /dev/null
@@ -1,177 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * Common function for debug views. Provides access to the underlying viewer and
- * debug model presentation being used by a viewer. This allows clients to do
- * such things as add and remove filters to a viewer, and configure a debug
- * model presentation.
- * <p>
- * Clients may implement this interface. Generally, clients should subclass
- * <code>AbstractDebugView</code> when creating a new debug view.
- * </p>
- * @see org.eclipse.core.runtime.IAdaptable
- * @see org.eclipse.debug.ui.IDebugModelPresentation
- * @see org.eclipse.debug.ui.AbstractDebugView
- * @since 2.0
- */
-
-public interface IDebugView extends IViewPart {
-	
-	/**
-	 * Action id for a view's copy action. Any view
-	 * with a copy action that should be invoked when
-	 * ctrl+c is pressed should store their
-	 * copy action with this key.
-	 * 
-	 * @see #setAction(String, IAction)
-	 */
-	public static final String COPY_ACTION = ActionFactory.COPY.getId();
-
-	/**
-	 * Action id for a view's cut action. Any view
-	 * with a cut action that should be invoked when
-	 * ctrl+x is pressed should store their
-	 * copy action with this key.
-	 * 
-	 * @see #setAction(String, IAction)
-	 */
-	public static final String CUT_ACTION = ActionFactory.CUT.getId();
-
-	/**
-	 * Action id for a view's double-click action. Any view
-	 * with an action that should be invoked when
-	 * the mouse is double-clicked should store their
-	 * action with this key.
-	 * 
-	 * @see #setAction(String, IAction)
-	 */
-	public static final String DOUBLE_CLICK_ACTION = "Double_Click_ActionId";	 //$NON-NLS-1$
-
-	/**
-	 * Action id for a view's find action. Any view
-	 * with a find action that should be invoked when
-	 * ctrl+f is pressed should store their
-	 * copy action with this key.
-	 * 
-	 * @see #setAction(String, IAction)
-	 */
-	public static final String FIND_ACTION = ActionFactory.FIND.getId();
-
-	/**
-	 * Action id for a view's paste action. Any view
-	 * with a paste action that should be invoked when
-	 * ctrl+v is pressed should store their
-	 * copy action with this key.
-	 * 
-	 * @see #setAction(String, IAction)
-	 */
-	public static final String PASTE_ACTION = ActionFactory.PASTE.getId();
-
-	/**
-	 * Action id for a view's remove action. Any view
-	 * with a remove action that should be invoked when
-	 * the delete key is pressed should store their
-	 * remove action with this key.
-	 * 
-	 * @see #setAction(String, IAction)
-	 */
-	public static final String REMOVE_ACTION = "Remove_ActionId"; //$NON-NLS-1$
-
-	/**
-	 * Action id for a view's select all action. Any view
-	 * with a select all action that should be invoked when
-	 * ctrl+a is pressed should store their
-	 * select all action with this key.
-	 * 
-	 * @see #setAction(String, IAction)
-	 */
-	public static final String SELECT_ALL_ACTION = ActionFactory.SELECT_ALL.getId();
-	
-	/**
-	 * Returns the viewer contained in this debug view.
-	 *
-	 * @return viewer
-	 */
-	public Viewer getViewer();
-	
-	/**
-	 * Returns the debug model presentation for this view specified
-	 * by the debug model identifier.
-	 *
-	 * @param id the debug model identifier that corresponds to the <code>id</code>
-	 *     attribute of a debug model presentation extension
-	 * @return the debug model presentation, or <code>null</code> if no
-	 *     presentation is registered for the specified id
-	 */
-	public IDebugModelPresentation getPresentation(String id);
-	
-	/**
-	 * Installs the given action under the given action id.
-	 *
-	 * If the action has an id that maps to one of the global
-	 * action ids defined by this interface, the action is registered 
-	 * as a global action handler.
-	 *
-	 * If the action is an instance of <code>IUpdate</code> it is added/remove
-	 * from the collection of updateables associated with this view.
-	 * 
-	 * @param actionID the action id
-	 * @param action the action, or <code>null</code> to clear it
-	 * @see #getAction
-	 */
-	public void setAction(String actionID, IAction action);
-	
-	/**
-	 * Adds the given IUpdate to this view's collection of updatable
-	 * objects.  Allows the view to periodically update these registered
-	 * objects.  
-	 * Has no effect if an identical IUpdate is already registered.
-	 * 
-	 * @param updatable The IUpdate instance to be added
-	 */
-	public void add(IUpdate updatable);
-	
-	/**
-	 * Removes the given IUpdate from this view's collection of updatable
-	 * objects.
- 	 * Has no effect if an identical IUpdate was not already registered.
- 	 * 
-	 * @param updatable The IUpdate instance to be removed
-	 */
-	public void remove(IUpdate updatable);
-	
-	/**
-	 * Returns the action installed under the given action id.
-	 *
-	 * @param actionID the action id
-	 * @return the action, or <code>null</code> if none
-	 * @see #setAction
-	 */
-	public IAction getAction(String actionID);
-	
-	/**
-	 * Returns the context menu manager for this view.
-	 *
-	 * @return the context menu manager for this view, or <code>null</code> if none
-	 * @deprecated See AbstractDebugView#getContextMenuManagers()
-	 */
-	public IMenuManager getContextMenuManager();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationDialog.java
deleted file mode 100644
index a7cd863..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationDialog.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.jface.operation.IRunnableContext;
-
- 
- /**
-  * A launch configuration dialog is used to edit and launch
-  * launch configurations. It contains a launch configuration
-  * tab group.
-  * <p>
-  * Clients are not intended to implement this interface.
-  * </p>
-  * @see ILaunchConfigurationTabGroup
-  * @see ILaunchConfigurationTab
-  * @since 2.0
-  */
-
-public interface ILaunchConfigurationDialog extends IRunnableContext {
-	
-	/**
-	 * Return value from <code>open()</code> method of a
-	 * launch configuration dialog when a launch completed
-	 * successfully with a single click (without opening a
-	 * launch configuration dialog).
-	 * 
-	 * @deprecated the launch dialog no longer supports launching without
-	 * 	opening - this constant will never be returned by the dialog
-	 */
-	public static final int LAUNCHED_BEFORE_OPENING = 2;
-			
-	/**
-	 * Adjusts the enable state of this dialog's buttons
-	 * to reflect the state of the active tab group.
-	 * <p>
-	 * This may be called by to force a button state
-	 * update.
-	 * </p>
-	 */
-	public void updateButtons();
-	
-	/**
-	 * Updates the message (or error message) shown in the message line to 
-	 * reflect the state of the currently active tab in this launch
-	 * configuration dialog.
-	 * <p>
-	 * This method may be called to force a message 
-	 * update.
-	 * </p>
-	 */
-	public void updateMessage();
-	
-	/**
-	 * Sets the contents of the name field to the given name.
-	 * 
-	 * @param name new name value
-	 */ 
-	public void setName(String name);
-	
-	/**
-	 * Returns a unique launch configuration name, using the given name
-	 * as a seed.
-	 * 
-	 * @param name seed from which to generate a new unique name
-	 */ 
-	public String generateName(String name);
-	
-	/**
-	 * Returns the tabs currently being displayed, or
-	 * <code>null</code> if none.
-	 * 
-	 * @return currently displayed tabs, or <code>null</code>
-	 */
-	public ILaunchConfigurationTab[] getTabs();
-	
-	/**
-	 * Returns the currently active <code>ILaunchConfigurationTab</code>
-	 * being displayed, or <code>null</code> if there is none.
-	 * 
-	 * @return currently active <code>ILaunchConfigurationTab</code>, or <code>null</code>.
-	 */
-	public ILaunchConfigurationTab getActiveTab();
-	
-	/**
-	 * Returns the mode in which this dialog was opened -
-	 * run or debug.
-	 * 
-	 * @return one of <code>RUN_MODE</code> or <code>DEBUG_MODE</code> defined in <code>ILaunchManager</code>
-	 * @see org.eclipse.debug.core.ILaunchManager
-	 */
-	public String getMode();	
-	
-	/**
-	 * Sets the displayed tab to the given tab. Has no effect if the specified
-	 * tab is not one of the tabs being displayed in the dialog currently.
-	 * 
-	 * @param tab the tab to display/activate
-	 * @since 2.1
-	 */
-	public void setActiveTab(ILaunchConfigurationTab tab);
-	
-	/**
-	 * Sets the displayed tab to the tab with the given index. Has no effect if
-	 * the specified index is not within the limits of the tabs returned by
-	 * <code>getTabs()</code>.
-	 * 
-	 * @param index the index of the tab to dispay
-	 * @since 2.1
-	 */
-	public void setActiveTab(int index);	
-		
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTab.java
deleted file mode 100644
index 9415181..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTab.java
+++ /dev/null
@@ -1,238 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
- 
-/**
- * A launch configuration tab is used to edit/view attributes
- * of a specific type of launch configuration. Launch
- * configurations are presented in a dialog, with a tab folder.
- * Each tab manipulates one ore more attributes of a launch
- * configuration. 
- * <p>
- * A tab has the following lifecycle methods:
- * <ul>
- * <li><code>setLaunchConfigurationDialog(ILaunchConfigurationDialog)</code> - 
- *  this is the first method called on a tab after it is instantiated.</li>
- * <li><code>initializeFrom(ILaunchConfiguration)</code> - called when a 
- *  launch configuration is selected to be displayed.</li>
- * <li><code>activated(ILaunchConfigurationWorkingCopy)</code> - called when
- *  a tab is entered.</li>
- * <li><code>deactivated(ILaunchConfigurationWorkingCopy)</code> - called when
- *  a tab is exited.</li>
- * <li><code>performApply(ILaunchConfigurationWorkingCopy)</code> - called when
- *  a tab is to write its values to a launch configuration.</li>
- * <li><code>dispose()</code> - the last method called on a tab, when it is
- *  to perform any required cleanup. Note that a tab can be disposed before its control
- * has been created.</li>
- * </ul>
- * The method <code>setDefaults(ILaunchConfigurationWorkingCopy)</code>
- * can be called before a tab's controls are created.
- * <p>
- * The launch tab framework was originially designed to handle inter tab
- * communication by applying attributes from the active tab to a launch configuration
- * being edited, when a tab is exited, and by initializing a tab when activated.
- * In 3.0, the addition of the methods <code>activated</code> and <code>deactivated</code>
- * allow tabs to determine the appropriate course of action. The default implementation
- * in <code>AbstractLaunchConfigurationTab</code> is to call the old methods
- * (<code>initializeFrom</code> and <code>performApply</code>). Tabs should overeride
- * the new methods as required.
- * </p>
- * <p>
- * This interface is intended to be implemented by clients.
- * </p>
- * @see org.eclipse.debug.core.ILaunchConfigurationType
- * @see org.eclipse.debug.core.ILaunchConfiguration
- * @since 2.0
- */
-public interface ILaunchConfigurationTab {
-
-	/**
-	 * Creates the top level control for this launch configuration
-	 * tab under the given parent composite.  This method is called once on
-	 * tab creation, after <code>setLaunchConfigurationDialog</code>
-	 * is called.
-	 * <p>
-	 * Implementors are responsible for ensuring that
-	 * the created control can be accessed via <code>getControl</code>
-	 * </p>
-	 *
-	 * @param parent the parent composite
-	 */
-	public void createControl(Composite parent);
-	
-	/**
-	 * Returns the top level control for this tab.
-	 * <p>
-	 * May return <code>null</code> if the control
-	 * has not been created yet.
-	 * </p>
-	 *
-	 * @return the top level control or <code>null</code>
-	 */
-	public Control getControl();	
-	
-	/**
-	 * Initializes the given launch configuration with
-	 * default values for this tab. This method
-	 * is called when a new launch configuration is created
-	 * such that the configuration can be initialized with
-	 * meaningful values. This method may be called before this
-	 * tab's control is created.
-	 * 
-	 * @param configuration launch configuration
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration);	
-	
-	/**
-	 * Initializes this tab's controls with values from the given
-	 * launch configuration. This method is called when
-	 * a configuration is selected to view or edit, after this
-	 * tab's control has been created.
-	 * 
-	 * @param configuration launch configuration
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration);		
-	
-	/**
-	 * Notifies this launch configuration tab that it has
-	 * been disposed. Marks the end of this tab's lifecycle,
-	 * allowing this tab to perform any cleanup required.
-	 */
-	public void dispose();
-	
-	/**
-	 * Copies values from this tab into the given 
-	 * launch configuration.
-	 * 
-	 * @param configuration launch configuration
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration);
-	
-	/**
-	 * Returns the current error message for this tab.
-	 * May be <code>null</code> to indicate no error message.
-	 * <p>
-	 * An error message should describe some error state,
-	 * as opposed to a message which may simply provide instruction
-	 * or information to the user.
-	 * </p>
-	 * 
-	 * @return the error message, or <code>null</code> if none
-	 */
-	public String getErrorMessage();
-	
-	/**
-	 * Returns the current message for this tab.
-	 * <p>
-	 * A message provides instruction or information to the 
-	 * user, as opposed to an error message which should 
-	 * describe some error state.
-	 * </p>
-	 * 
-	 * @return the message, or <code>null</code> if none
-	 */
-	public String getMessage();	
-	
-	/**
-	 * Returns whether this tab is in a valid state in the context of the specified launch configuration.
-	 * <p>
-	 * This information is typically used by the launch configuration
-	 * dialog to decide when it is okay to launch.
-	 * </p>
-	 *
-	 * @param launchConfig launch configuration which provides context for validating this tab.
-	 *         This value must not be <code>null</code>.
-	 *
-	 * @return whether this tab is in a valid state
-	 */
-	public boolean isValid(ILaunchConfiguration launchConfig);
-	
-	/**
-	 * Returns whether this tab is in a state that allows the launch configuration whose values
-	 * this tab is showing to be saved.  This differs from <code>isValid()</code> in that <code>canSave()</code>
-	 * determines if this tab prevents the current launch configuration from being saved, whereas
-	 * <code>isValid()</code> determines if this tab prevents the current launch configuration from
-	 * being launched.
-	 * 
-	 * <p>
-	 * This information is typically used by the launch configuration
-	 * dialog to decide when it is okay to save a launch configuration.
-	 * </p>
-	 * 
-	 * @return whether this tab is in a state that allows the current launch configuration to be saved
-	 */
-	public boolean canSave();
-	
-	/**
-	 * Sets the launch configuration dialog that hosts this tab.
-	 * This is the first method called on a launch configuration
-	 * tab, and marks the beginning of this tab's lifecycle.
-	 * 
-	 * @param dialog launch configuration dialog
-	 */
-	public void setLaunchConfigurationDialog(ILaunchConfigurationDialog dialog);
-	
-	/**
-	 * Notifies this tab that the specified configuration has been
-	 * launched, resulting in the given launch. This method can be
-	 * called when a tab's control does not exist, to support single-click
-	 * launching.
-	 * 
-	 * @param launch the result of launching the current
-	 *  launch configuration
-	 * @deprecated As of R3.0, this method is no longer called by the launch
-	 *  framework. Since tabs do not exist when launching is performed elsewhere
-	 *  than the launch dialog, this method cannot be relied upon for launching
-	 *  functionality.
-	 */
-	public void launched(ILaunch launch);
-	
-	/**
-	 * Returns the name of this tab.
-	 * 
-	 * @return the name of this tab
-	 */
-	public String getName();
-	
-	/**
-	 * Returns the image for this tab, or <code>null</code> if none
-	 * 
-	 * @return the image for this tab, or <code>null</code> if none
-	 */
-	public Image getImage();	
-	
-	/**
-	 * Notification that this tab has become the active tab in the launch
-	 * configuration dialog.
-	 * 
-	 * @param workingCopy the launch configuration being edited
-	 * @since 3.0
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy);
-	
-	/**
-	 * Notification that this tab is no longer the active tab in the launch
-	 * configuration dialog.
-	 *  
-	 * @param workingCopy the launch configuration being edited
-	 * @since 3.0
-	 */
-	public void deactivated(ILaunchConfigurationWorkingCopy workingCopy);
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTabGroup.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTabGroup.java
deleted file mode 100644
index d5f4c39..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchConfigurationTabGroup.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
- 
-/**
- * A launch configuration tab group is used to edit/view attributes
- * of a specific type of launch configuration. Launch
- * configurations are presented in a dialog, with a tab folder.
- * Each tab manipulates one or more attributes of a launch
- * configuration. The tab group controls which tabs are
- * displayed for a specific type of launch configuration,
- * and provides a mechanism for overriding configuration
- * initialization performed by tabs.
- * <p>
- * A tab group has the following lifecycle methods:
- * <ul>
- * <li><code>createTabs(ILaunchConfigurationDialog, String)</code> - 
- *  this is the first method called on a tab group after it is instantiated.</li>
- * <li><code>initializeFrom(ILaunchConfiguration)</code> - called when a 
- *  launch configuration is selected to be displayed.</li>
- * <li><code>performApply(ILaunchConfigurationWorkingCopy)</code> - called when
- *  a tab group's values are to be written to a launch configuration.</li>
- * <li><code>dispose()</code> - the last method called on a tab group, when it is
- *  to perform any required cleanup. Note that a tab can be disposed before its control
- *  has been created.</li>
- * </ul>
- * The method <code>setDefaults(ILaunchConfigurationWorkingCopy)</code>
- * can be called before a tab's controls are created.
- * </p>
- * <p>
- * The launch tab framework was originially designed to handle inter tab
- * communication by applying attributes from the active tab to a launch configuration
- * being edited, when a tab is exited, and by initializing a tab when activated.
- * In 3.0, the addition of the methods <code>activated</code> and <code>deactivated</code>
- * allow tabs to determine the appropriate course of action. The default implementation
- * in <code>AbstractLaunchConfigurationTab</code> is to call the old methods
- * (<code>initializeFrom</code> and <code>performApply</code>). Tabs should overeride
- * the new methods as required.
- * </p>
- * <p>
- * A launch configuration group extension is defined in <code>plugin.xml</code>.
- * Following is an example definition of a launch configuration
- * group extension.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.launchConfigurationTabGroups"&gt;
- *   &lt;launchConfigurationTabGroup 
- *      id="com.example.ExampleTabGroup"
- *      type="com.example.ExampleLaunchConfigurationTypeIdentifier"
- *      class="com.example.ExampleLaunchConfigurationTabGroupClass"&gt;
- *   &lt;/launchConfigurationTabGroup&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>id</code> specifies a unique identifier for this launch configuration
- *  tab group.</li>
- * <li><code>type</code> specifies launch configuration type that this tab
- *  group is applicable to (corresponds to the id of a launch configuration type
- *  extension).</li>
- * <li><code>class</code> specifies a fully qualified name of a Java class
- *  that implements <code>ILaunchConfigurationTabGroup</code>.</li>
- * </ul>
- * </p>
- * <p>
- * This interface is intended to be implemented by clients.
- * </p>
- * @see org.eclipse.debug.core.ILaunchConfigurationType
- * @see org.eclipse.debug.core.ILaunchConfiguration
- * @see org.eclipse.debug.ui.ILaunchConfigurationTab
- * @since 2.0
- */
-public interface ILaunchConfigurationTabGroup {
-
-	/**
-	 * Creates the tabs contained in this tab group for the specified
-	 * launch mode. The tabs control's are not created. This is the
-	 * fist method called in the lifecycle of a tab group.
-	 * 
-	 * @param dialog the launch configuration dialog this tab group
-	 *  is contained in
-	 * @param mode the mode the launch configuration dialog was
-	 *  opened in
-	 */
-	public void createTabs(ILaunchConfigurationDialog dialog, String mode);
-	
-	/**
-	 * Returns the tabs contained in this tab group.
-	 * 
-	 * @return the tabs contained in this tab group
-	 */
-	public ILaunchConfigurationTab[] getTabs();
-
-	/**
-	 * Notifies this launch configuration tab group that it has
-	 * been disposed, and disposes this group's tabs. Marks the end
-	 * of this tab group's lifecycle, allowing this tab group to
-	 * perform any cleanup required.
-	 */
-	public void dispose();
-			
-	/**
-	 * Initializes the given launch configuration with
-	 * default values for this tab group. This method
-	 * is called when a new launch configuration is created
-	 * such that the configuration can be initialized with
-	 * meaningful values. This method may be called before
-	 * tab controls are created.
-	 * 
-	 * @param configuration launch configuration
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration);	
-	
-	/**
-	 * Initializes this group's tab controls with values from the given
-	 * launch configuration. This method is called when
-	 * a configuration is selected to view or edit.
-	 * 
-	 * @param configuration launch configuration
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration);		
-		
-	/**
-	 * Copies values from this group's tabs into the given 
-	 * launch configuration.
-	 * 
-	 * @param configuration launch configuration
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration);
-	
-	/**
-	 * Notifies this tab that a configuration has been
-	 * launched, resulting in the given launch. This method can be
-	 * called when a tab's control does not exist, to support single-click
-	 * launching.
-	 * 
-	 * @param launch the result of launching the current
-	 *  launch configuration
-	 * @deprecated As of R3.0, this method is no longer called by the launch
-	 *  framework. Since tabs do not exist when launching is performed elsewhere
-	 *  than the launch dialog, this method cannot be relied upon for launching
-	 *  functionality.
-	 */
-	public void launched(ILaunch launch);
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchGroup.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchGroup.java
deleted file mode 100644
index d666958..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchGroup.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
- 
-import org.eclipse.jface.resource.ImageDescriptor;
-
-/**
- * A launch group identifies a group of launch configurations by a launch
- * mode and category. The launch configuration dialog can be opened on
- * a launch group, and a launch history is maintained for each group.
- * A launch group is defined in plug-in XML via the <code>launchGroups</code>
- * extension point.
- * <p> 
- * Following is an example of a launch group contribution:
- * <pre>
- * 	&lt;extension point="org.eclipse.debug.ui.launchGroups"&gt;
- * 		&lt;launchGroup
- * 			  id="com.example.ExampleLaunchGroupId"
- * 			  mode="run"
- * 			  label="Run"
- * 			  image="icons\run.gif"
- * 		&lt;/launchGroup&gt;
- * 	&lt;/extension&gt;
- * </pre>
- * </p>
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @since 3.0
- */
-public interface ILaunchGroup {
-	
-	/**
-	 * Returns the image for this launch group, or <code>null</code>
-	 * if none.
-	 * 
-	 * @return the image for this launch group, or <code>null</code> if none
-	 */
-	public ImageDescriptor getImageDescriptor();
-	
-	/**
-	 * Returns the banner image for this launch group, or <code>null</code> if
-	 * none
-	 * 
-	 * @return the banner image for this launch group, or <code>null</code> if
-	 * none
-	 */
-	public ImageDescriptor getBannerImageDescriptor();
-	
-	/**
-	 * Returns the label for this launch group
-	 * 
-	 * @return the label for this launch group
-	 */
-	public String getLabel();
-		
-	/**
-	 * Returns the id for this launch group
-	 * 
-	 * @return the id for this launch group
-	 */
-	public String getIdentifier();
-	
-	/**
-	 * Returns the category for this launch group, possibly <code>null</code>
-	 * 
-	 * @return the category for this launch group, possibly <code>null</code>
-	 */
-	public String getCategory();
-	
-	/**
-	 * Returns the mode for this launch group
-	 * 
-	 * @return the mode for this launch group
-	 */
-	public String getMode();
-	
-	/**
-	 * Returns whether this launch group is public
-	 *  
-	 * @return boolean
-	 */
-	public boolean isPublic();
-	
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchShortcut.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchShortcut.java
deleted file mode 100644
index d504ae6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ILaunchShortcut.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IEditorPart;
-
-/**
- * A launch shortcut is capable of launching a selection
- * or active editor in the workbench. The delegate is responsible for
- * interpretting the selection or active editor (if it applies), and launching
- * an application. This may require creating a new launch configuration
- * with default values, or re-using an existing launch configuration.
- * <p>
- * A launch shortcut is defined as an extension
- * of type <code>org.eclipse.debug.ui.launchShortcuts</code>.
- * A shortcut specifies the perspectives in which is should be available
- * from the "Run/Debug" cascade menus.
- * </p>
- * <p>
- * A launch shortcut extension is defined in <code>plugin.xml</code>.
- * Following is an example definition of a launch shortcut extension.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.launchShortcuts"&gt;
- *   &lt;launchShortcut
- *      id="com.example.ExampleLaunchShortcut"
- *      class="com.example.ExampleLaunchShortcutClass"
- *      filterClass="com.example.ExampleLaunchShortcutFilterClass"
- * 		label="Example Label"
- * 		icon="\icons\exampleshortcut.gif"
- * 		helpContextId="com.example.shortcut_context"
- * 		modes="run, debug"&gt;
- *      &lt;perspective id="com.example.perspectiveId1"/&gt;
- *      &lt;perspective id="com.example.perspectiveId2"/&gt;
- *      &lt;filter
- *           name="NameMatches"
- *           value="*.java"/&gt;
- *      &lt;filter
- *        	name="ContextualLaunchActionFilter"
- *        	value="supportsContextualLaunch"/&gt;
- *      &lt;contextLabel
- *        	mode="run"
- *        	label="%RunJavaApplet.label"/&gt;
- * 	    &lt;contextLabel
- * 		 	mode="debug"
- * 		 	label="%DebugJavaApplet.label"/&gt;
- * 		  ...
- *   &lt;/launchShortcut&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>id</code> specifies a unique identifier for this launch shortcut.</li>
- * <li><code>class</code> specifies a fully qualified name of a Java class
- *  that implements <code>ILaunchShortcut</code>.</li><li>
- * <code>filterClass</code> optionally specifies a fully qualified name of a Java class
- *  that implements <code>ILaunchFilter</code> for context menu filtering.</li>
- * <li><code>label</code> specifies a label used to render this shortcut.</li>
- * <li><code>icon</code> specifies a plug-in relative path to an icon used to
- * 	render this shortcut.</li>
- * <li><code>helpContextId</code> optional attribute specifying the help context
- * identifier to associate with the launch shortcut action in a menu.</li>
- * <li><code>modes</code> specifies a comma separated list of modes this shortcut
- *  supports.</li>
- * <li><code>perspective</code> one or more perspective entries enumerate the
- * 	perspectives that this shortcut is avilable in, from the run/debug cascade
- * 	menus.</li>
- * <li><code>filter</code> zero or more filter entries specify the attribute
- * <code>name</code> and attribute <code>value</code> that will be supplied to
- * the <code>testAttribute</code> method implemented by the <code>filterClass</code>
- * Java Class. If all filters in this list return <code>true</code> when applied
- * to a selection target, the shortcut will be avilable in the run/debug context menu.
- * 	menu.</li>
- * <li><code>contextLabel</code> zero or more context menu labels. For
- * shortcuts that pass their filter tests, the specified label will appear
- * in the "Run ->" context menu and be bound to a launch action of the
- * specified mode (e.g. run,debug,profile).</li>
- * </ul>
- * </p>
- * <p>
- * Clients contributing a lanuch shortcut are intended to implement this interface.
- * </p>
- * @since 2.0
- */
-public interface ILaunchShortcut {
-
-	/**
-	 * Locates a launchable entity in the given selection and launches
-	 * an application in the specified mode. This launch configuration
-	 * shortcut is responsible for progress reporting as well
-	 * as error handling, in the event that a launchable entity cannot
-	 * be found, or launching fails.
-	 * 
-	 * @param selection workbench selection
-	 * @param mode one of the launch modes defined by the 
-	 * 	launch manager
-	 * @see org.eclipse.debug.core.ILaunchManager
-	 */
-	public void launch(ISelection selection, String mode);
-	
-	/**
-	 * Locates a launchable entity in the given active editor, and launches
-	 * an application in the specified mode. This launch configuration
-	 * shortcut is responsible for progress reporting as well as error
-	 * handling, in the event that a launchable entity cannot be found,
-	 * or launching fails.
-	 * 
-	 * @param editor the active editor in the workbench
-	 * @param mode one of the launch modes defined by the launch
-	 * 		manager
-	 * @see org.eclipse.debug.core.ILaunchManager
-	 */
-	public void launch(IEditorPart editor, String mode);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ISourcePresentation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ISourcePresentation.java
deleted file mode 100644
index 329ce6b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/ISourcePresentation.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.ui.IEditorInput;
- 
-/**
- * A source presentation is used to resolve an editor in
- * which to display a debug model element, breakpoint, or
- * source element. By default, a debug model presentation
- * (which implements this interface) is used to resolve
- * editors when performing source lookup. However, a source
- * locator may override default editor resolution by implementing
- * this interface. 
- * <p>
- * Source lookup consists of the following steps:<ol>
- * <li>Locating a source element - the source locator associated
- *  with a launch is queried for the source element associated
- *  with a stack frame.</li>
- * <li>Resolving an editor in which to display a source element -
- *  by default, the debug model presentation associated with the
- *  debug model being debugged is queried for an editor input
- *  and editor id in which to display a source element. However,
- *  clients may override editor resolution by specifying a source
- *  locator that is an instance of <code>ISourcePresentation</code>.
- *  When a source presentation is specified as a source locator,
- *  the source presentation is used to resolve an editor, rather
- *  than the default debug model presentation.</li>
- * </ol>
- * </p>
- * <p>
- * Clients may implement this interface as part of an
- * {@link org.eclipse.debug.ui.IDebugModelPresentation} or as an optional
- * extension to an {@link org.eclipse.debug.core.model.ISourceLocator}.
- * </p>
- * @since 2.0
- */ 
-public interface ISourcePresentation {
-
-	/**
-	 * Returns an editor input that should be used to display the given object
-	 * in an editor or <code>null</code> if unable to provide an editor input
-	 * for the given object.
-	 *
-	 * @param element a debug model element, breakpoint, or a source element
-	 *  that was returned by a source locator's <code>getSourceElement(IStackFrame)</code>
-	 *  method
-	 * @return an editor input, or <code>null</code> if none
-	 */
-	public IEditorInput getEditorInput(Object element);
-	
-	/**
-	 * Returns the id of the editor to use to display the
-	 * given editor input and object, or <code>null</code> if
-	 * unable to provide an editor id.
-	 *
-	 * @param input an editor input that was previously retrieved from this
-	 *    source presentation's <code>getEditorInput</code> method
-	 * @param element the object that was used in the call to
-	 *  <code>getEditorInput</code>, that corresponds to the given editor
-	 *  input
-	 * @return an editor id, or <code>null</code> if none
-	 */
-	public String getEditorId(IEditorInput input, Object element);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IValueDetailListener.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IValueDetailListener.java
deleted file mode 100644
index 05bcc48..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/IValueDetailListener.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import org.eclipse.debug.core.model.IValue;
-
-/**
- * Notified of detailed value descriptions.
- * <p>
- * Clients may implement this interface.
- * </p>
- * @see IDebugModelPresentation
- * @since 2.0
- */
-
-public interface IValueDetailListener {
-	/**
-	 * Notifies this listener that the details for the given
-	 * value have been computed as the specified result.
-	 *  
-	 * @param value the value for which the detail is provided
-	 * @param result the detailed description of the given value
-	 */
-	public void detailComputed(IValue value, String result);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/RefreshTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/RefreshTab.java
deleted file mode 100644
index 94b941f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/RefreshTab.java
+++ /dev/null
@@ -1,616 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-
-import java.io.IOException;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.text.MessageFormat;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.NullProgressMonitor;
-import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.stringsubstitution.SelectedResourceManager;
-import org.eclipse.debug.internal.ui.stringsubstitution.StringSubstitutionMessages;
-import org.eclipse.jface.window.Window;
-import org.eclipse.jface.wizard.WizardDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Group;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.IWorkingSetManager;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.WorkbenchException;
-import org.eclipse.ui.XMLMemento;
-import org.eclipse.ui.dialogs.IWorkingSetEditWizard;
-
-/**
- * A launch configuration tab which allows the user to specify
- * which resources should be refreshed when the launch
- * terminates.
- * <p>
- * This class may be instantiated; this class is not intended
- * to be subclassed.
- * </p>
- * @since 3.0
- */
-public class RefreshTab extends AbstractLaunchConfigurationTab {
-
-	/**
-	 * Boolean attribute indicating if a refresh scope is recursive. Default
-	 * value is <code>false</code>.
-	 */
-	public static final String ATTR_REFRESH_RECURSIVE = DebugPlugin.getUniqueIdentifier() + ".ATTR_REFRESH_RECURSIVE"; //$NON-NLS-1$
-
-	/**
-	 * String attribute identifying the scope of resources that should be
-	 * refreshed after an external tool is run. The value is either a refresh
-	 * variable or the default value, <code>null</code>, indicating no refresh.
-	 */
-	public static final String ATTR_REFRESH_SCOPE = DebugPlugin.getUniqueIdentifier() + ".ATTR_REFRESH_SCOPE"; //$NON-NLS-1$
-	
-	// indicates no working set has been selected
-	private static final String NO_WORKING_SET = "NONE"; //$NON-NLS-1$
-	
-	// Check Buttons
-	private Button fRefreshButton;
-	private Button fRecursiveButton;
-	
-	// Group box
-	private Group fGroup;
-	
-	// Radio Buttons
-	private Button fContainerButton;
-	private Button fProjectButton;
-	private Button fResourceButton;
-	private Button fWorkingSetButton;
-	private Button fWorkspaceButton;
-	
-	// Push Button
-	private Button fSelectButton;
-	
-	// Working set
-	private IWorkingSet fWorkingSet;
-
-	/**
-	 * XML tag used to designate the root of the persisted IWorkingSet
-	 */
-	private static final String TAG_LAUNCH_CONFIGURATION_WORKING_SET= "launchConfigurationWorkingSet"; //$NON-NLS-1$
-
-	/**
-	 * XML tag used for setting / getting the factory ID of the persisted IWorkingSet
-	 * Bug 37143
-	 */	
-	private static final String TAG_FACTORY_ID = "factoryID"; //$NON-NLS-1$
-	
-	/**
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		Composite mainComposite = new Composite(parent, SWT.NONE);
-		setControl(mainComposite);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getControl(), IDebugHelpContextIds.LAUNCH_CONFIGURATION_DIALOG_REFRESH_TAB);
-		
-		GridLayout layout = new GridLayout();
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		mainComposite.setLayout(layout);
-		mainComposite.setLayoutData(gd);
-		mainComposite.setFont(parent.getFont());
-		
-		fRefreshButton = createCheckButton(mainComposite, StringSubstitutionMessages.RefreshTab_31); //$NON-NLS-1$
-		fRefreshButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				updateEnabledState();
-				updateLaunchConfigurationDialog();
-			}
-		});
-		
-		fGroup = new Group(mainComposite, SWT.NONE);
-		fGroup.setFont(mainComposite.getFont());
-		layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.makeColumnsEqualWidth = false;
-		fGroup.setLayout(layout);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		fGroup.setLayoutData(gd);
-
-		SelectionAdapter adapter = new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				if (((Button)e.getSource()).getSelection()) {
-					updateEnabledState();
-					updateLaunchConfigurationDialog();
-				}
-			}
-		};
-		
-		fWorkspaceButton = createRadioButton(fGroup, StringSubstitutionMessages.RefreshTab_32); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		fWorkspaceButton.setLayoutData(gd);
-		fWorkspaceButton.addSelectionListener(adapter);
-
-		fResourceButton = createRadioButton(fGroup, StringSubstitutionMessages.RefreshTab_33); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		fResourceButton.setLayoutData(gd);
-		fResourceButton.addSelectionListener(adapter);
-
-		fProjectButton = createRadioButton(fGroup, StringSubstitutionMessages.RefreshTab_34); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		fProjectButton.setLayoutData(gd);		
-		fProjectButton.addSelectionListener(adapter);
-
-		fContainerButton = createRadioButton(fGroup, StringSubstitutionMessages.RefreshTab_35); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		fContainerButton.setLayoutData(gd);
-		fContainerButton.addSelectionListener(adapter);
-				
-		fWorkingSetButton = createRadioButton(fGroup, StringSubstitutionMessages.RefreshTab_36); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 1;
-		fWorkingSetButton.setLayoutData(gd);
-		fWorkingSetButton.addSelectionListener(adapter);		
-		
-		fSelectButton = createPushButton(fGroup, StringSubstitutionMessages.RefreshTab_37, null); //$NON-NLS-1$
-		gd = (GridData)fSelectButton.getLayoutData();
-		gd.horizontalAlignment = GridData.HORIZONTAL_ALIGN_END;
-		fSelectButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				selectResources();
-			}
-		});
-		
-		createVerticalSpacer(fGroup, 2);
-		createRecursiveComponent(fGroup);
-	}
-
-	/**
-	 * Prompts the user to select the resources to refresh.
-	 */
-	private void selectResources() {
-		IWorkingSetManager workingSetManager= PlatformUI.getWorkbench().getWorkingSetManager();
-		
-		if (fWorkingSet == null){
-			fWorkingSet = workingSetManager.createWorkingSet(StringSubstitutionMessages.RefreshTab_40, new IAdaptable[0]); //$NON-NLS-1$
-		}
-		IWorkingSetEditWizard wizard= workingSetManager.createWorkingSetEditWizard(fWorkingSet);
-		WizardDialog dialog = new WizardDialog(DebugUIPlugin.getStandardDisplay().getActiveShell(), wizard);
-		dialog.create();		
-		
-		if (dialog.open() == Window.CANCEL) {
-			return;
-		}
-		fWorkingSet = wizard.getSelection();
-		updateLaunchConfigurationDialog();
-	}
-	
-	/**
-	 * Creates the controls needed to edit the refresh recursive
-	 * attribute of a launch configuration
-	 * 
-	 * @param parent the composite to create the controls in
-	 */
-	private void createRecursiveComponent(Composite parent) {
-		fRecursiveButton = createCheckButton(parent, StringSubstitutionMessages.RefreshTab_0); //$NON-NLS-1$
-		GridData data = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
-		data.horizontalSpan = 2;
-		fRecursiveButton.setLayoutData(data);
-		fRecursiveButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				updateLaunchConfigurationDialog();
-			}
-		});
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration) {
-		updateRefresh(configuration);
-		updateRecursive(configuration);
-		updateScope(configuration);
-		updateEnabledState();		
-	}
-	
-	/**
-	 * Updates the tab to display the refresh scope specified by the launch config
-	 */
-	private void updateScope(ILaunchConfiguration configuration) {
-		String scope = null;
-		try {
-			scope= configuration.getAttribute(ATTR_REFRESH_SCOPE, (String)null);
-		} catch (CoreException ce) {
-			DebugUIPlugin.log(DebugUIPlugin.newErrorStatus("Exception reading launch configuration", ce)); //$NON-NLS-1$
-		}
-		fWorkspaceButton.setSelection(false);
-		fResourceButton.setSelection(false);
-		fContainerButton.setSelection(false);
-		fProjectButton.setSelection(false);
-		fWorkingSetButton.setSelection(false);
-		if (scope == null) {
-			// select the workspace by default
-			fWorkspaceButton.setSelection(true);
-		} else {
-			if (scope.equals("${workspace}")) { //$NON-NLS-1$
-				fWorkspaceButton.setSelection(true);
-			} else if (scope.equals("${resource}")) { //$NON-NLS-1$
-				fResourceButton.setSelection(true);
-			} else if (scope.equals("${container}")) { //$NON-NLS-1$
-				fContainerButton.setSelection(true);
-			} else if (scope.equals("${project}")) { //$NON-NLS-1$
-				fProjectButton.setSelection(true);
-			} else if (scope.startsWith("${resource:")) { //$NON-NLS-1$
-				fWorkingSetButton.setSelection(true);
-				try {
-					IResource[] resources = getRefreshResources(scope);
-					IWorkingSetManager workingSetManager= PlatformUI.getWorkbench().getWorkingSetManager();
-					fWorkingSet = workingSetManager.createWorkingSet(StringSubstitutionMessages.RefreshTab_40, resources);					 //$NON-NLS-1$
-				} catch (CoreException e) {
-					fWorkingSet = null;
-				}
-			} else if (scope.startsWith("${working_set:")) { //$NON-NLS-1$
-				fWorkingSetButton.setSelection(true);
-				String memento = scope.substring(14, scope.length() - 1);
-				fWorkingSet = restoreWorkingSet(memento);
-			}
-		}
-	}
-	/**
-	 * Method updateRecursive.
-	 * @param configuration
-	 */
-	private void updateRecursive(ILaunchConfiguration configuration) {
-		boolean recursive= true;
-		try {
-			recursive= configuration.getAttribute(ATTR_REFRESH_RECURSIVE, true);
-		} catch (CoreException ce) {
-			DebugUIPlugin.log(DebugUIPlugin.newErrorStatus("Exception reading launch configuration", ce)); //$NON-NLS-1$
-		}
-		fRecursiveButton.setSelection(recursive);
-	}
-	/**
-	 * Method updateRefresh.
-	 * @param configuration
-	 */
-	private void updateRefresh(ILaunchConfiguration configuration) {
-		String scope= null;
-		try {
-			scope= configuration.getAttribute(ATTR_REFRESH_SCOPE, (String)null);
-		} catch (CoreException ce) {
-			DebugUIPlugin.log(DebugUIPlugin.newErrorStatus("Exception reading launch configuration", ce)); //$NON-NLS-1$
-		}
-		fRefreshButton.setSelection(scope != null);
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {
-		if (fRefreshButton.getSelection()) {
-			String scope = generateScopeMemento();
-			configuration.setAttribute(ATTR_REFRESH_SCOPE, scope);
-			setAttribute(ATTR_REFRESH_RECURSIVE, configuration, fRecursiveButton.getSelection(), true);
-		} else {
-			//clear the refresh attributes
-			configuration.setAttribute(ATTR_REFRESH_SCOPE, (String)null);
-			setAttribute(ATTR_REFRESH_RECURSIVE, configuration, true, true);
-		}
-	}
-
-	/**
-	 * Generates a memento for the refresh scope. This is based on old refresh
-	 * variables.
-	 * 
-	 * @return a memento
-	 */
-	private String generateScopeMemento() {
-		if (fWorkspaceButton.getSelection()) {
-			return "${workspace}"; //$NON-NLS-1$
-		}
-		if (fResourceButton.getSelection()) {
-			return "${resource}"; //$NON-NLS-1$
-		}
-		if (fContainerButton.getSelection()) {
-			return "${container}"; //$NON-NLS-1$
-		}
-		if (fProjectButton.getSelection()) {
-			return "${project}"; //$NON-NLS-1$
-		}
-		if (fWorkingSetButton.getSelection()) {
-			return getRefreshAttribute(fWorkingSet);
-		}
-		return null;
-	}
-
-	/**
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName()
-	 */
-	public String getName() {
-		return StringSubstitutionMessages.RefreshTab_6; //$NON-NLS-1$
-	}
-	
-	/**
-	 * Updates the enablement state of the fields.
-	 */
-	private void updateEnabledState() {
-		boolean enabled= fRefreshButton.getSelection();
-		fRecursiveButton.setEnabled(enabled);
-		fGroup.setEnabled(enabled);
-		fWorkspaceButton.setEnabled(enabled);
-		fResourceButton.setEnabled(enabled);
-		fContainerButton.setEnabled(enabled);
-		fProjectButton.setEnabled(enabled);
-		fWorkingSetButton.setEnabled(enabled);
-		fSelectButton.setEnabled(enabled && fWorkingSetButton.getSelection());
-		if (!enabled) {
-			super.setErrorMessage(null);
-		}
-	}
-	
-	/**
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getImage()
-	 */
-	public Image getImage() {
-		return DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_OBJS_REFRESH_TAB);
-	}
-
-	public boolean isValid(ILaunchConfiguration launchConfig) {
-		setErrorMessage(null);
-		setMessage(null);
-		if (fWorkingSetButton.getSelection() && (fWorkingSet == null || fWorkingSet.getElements().length == 0)) {
-			setErrorMessage(StringSubstitutionMessages.RefreshTab_42); //$NON-NLS-1$
-			return false;
-		}
-		return true;
-	}
-	
-	/**
-	 * Refreshes the resources as specified by the given launch configuration.
-	 * 
-	 * @param configuration launch configuration
-	 * @param monitor progress monitor which may be <code>null</code>
-	 * @throws CoreException if an exception occurs while refreshing resources
-	 */
-	public static void refreshResources(ILaunchConfiguration configuration, IProgressMonitor monitor) throws CoreException {
-		if (monitor == null) {
-			monitor = new NullProgressMonitor();
-		}
-		String scope = getRefreshScope(configuration);
-		IResource[] resources= null;
-		if (scope != null) {
-			resources = getRefreshResources(scope);
-		}
-		if (resources == null || resources.length == 0){
-			return;
-		}
-		int depth = IResource.DEPTH_ONE;
-		if (isRefreshRecursive(configuration))
-			depth = IResource.DEPTH_INFINITE;
-	
-		if (monitor.isCanceled()) {
-			return;
-		}
-	
-		monitor.beginTask(StringSubstitutionMessages.RefreshTab_7, //$NON-NLS-1$
-			resources.length);
-	
-		MultiStatus status = new MultiStatus(DebugUIPlugin.getUniqueIdentifier(), 0, StringSubstitutionMessages.RefreshTab_8, null); //$NON-NLS-1$
-		for (int i = 0; i < resources.length; i++) {
-			if (monitor.isCanceled())
-				break;
-			if (resources[i] != null && resources[i].isAccessible()) {
-				try {
-					resources[i].refreshLocal(depth, null);
-				} catch (CoreException e) {
-					status.merge(e.getStatus());
-				}
-			}
-			monitor.worked(1);
-		}
-	
-		monitor.done();
-		if (!status.isOK()) {
-			throw new CoreException(status);
-		}
-	}
-
-	/**
-	 * Returns a collection of resources referred to by a refresh scope attribute.
-	 * 
-	 * @param scope refresh scope attribute (<code>ATTR_REFRESH_SCOPE</code>)
-	 * @return collection of resources referred to by the refresh scope attribute
-	 * @throws CoreException if unable to resolve a set of resources
-	 */
-	public static IResource[] getRefreshResources(String scope) throws CoreException {
-		if (scope.startsWith("${resource:")) { //$NON-NLS-1$
-			// This is an old format that is replaced with 'working_set'
-			String pathString = scope.substring(11, scope.length() - 1);
-			Path path = new Path(pathString);
-			IResource resource = ResourcesPlugin.getWorkspace().getRoot().findMember(path);
-			if (resource == null) {
-				throw new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.INTERNAL_ERROR, MessageFormat.format(StringSubstitutionMessages.RefreshTab_38, new String[]{pathString}), null)); //$NON-NLS-1$
-			} 
-			return new IResource[]{resource};
-		} else if (scope.startsWith("${working_set:")) { //$NON-NLS-1$
-			IWorkingSet workingSet =  getWorkingSet(scope);
-			if (workingSet == null) {
-				throw new CoreException(new Status(IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(), IDebugUIConstants.INTERNAL_ERROR, StringSubstitutionMessages.RefreshTab_39, null)); //$NON-NLS-1$
-			} 
-			IAdaptable[] elements = workingSet.getElements();
-			IResource[] resources = new IResource[elements.length];
-			for (int i = 0; i < elements.length; i++) {
-				IAdaptable adaptable = elements[i];
-				if (adaptable instanceof IResource) {
-					resources[i] = (IResource) adaptable;
-				} else {
-					resources[i] = (IResource) adaptable.getAdapter(IResource.class);
-				}
-			}
-			return resources;				
-		} else if(scope.equals("${workspace}")) { //$NON-NLS-1$
-			return new IResource[]{ResourcesPlugin.getWorkspace().getRoot()};
-		} else {
-			IResource resource = SelectedResourceManager.getDefault().getSelectedResource();
-			if (resource == null) {
-				// empty selection
-				return new IResource[]{};
-			}
-			if (scope.equals("${resource}")) { //$NON-NLS-1$
-				// resource = resource
-			} else if (scope.equals("${container}")) { //$NON-NLS-1$
-				resource = resource.getParent();
-			} else if (scope.equals("${project}")) { //$NON-NLS-1$
-				resource = resource.getProject();
-			}
-			return new IResource[]{resource};
-		}
-	}
-	
-	/**
-	 * Restores a working set based on the XMLMemento represented within
-	 * the mementoString.
-	 * 
-	 * @param mementoString The string memento of the working set
-	 * @return the restored working set or <code>null</code> if problems occurred restoring the
-	 * working set.
-	 */
-	private static IWorkingSet restoreWorkingSet(String mementoString) {
-		if (NO_WORKING_SET.equals(mementoString)) {
-			return null;
-		}
-		StringReader reader= new StringReader(mementoString);
-		XMLMemento memento= null;
-		try {
-			memento = XMLMemento.createReadRoot(reader);
-		} catch (WorkbenchException e) {
-			DebugUIPlugin.log(e);
-			return null;
-		}
-
-		IWorkingSetManager workingSetManager= PlatformUI.getWorkbench().getWorkingSetManager();
-		return workingSetManager.createWorkingSet(memento);
-	}	
-	
-	/**
-	 * Returns the refresh scope attribute specified by the given launch configuration
-	 * or <code>null</code> if none.
-	 * 
-	 * @param configuration launch configuration
-	 * @return refresh scope attribute (<code>ATTR_REFRESH_SCOPE</code>)
-	 * @throws CoreException if unable to access the associated attribute
-	 */
-	public static String getRefreshScope(ILaunchConfiguration configuration) throws CoreException {
-		return configuration.getAttribute(ATTR_REFRESH_SCOPE, (String) null);
-	}
-
-	/**
-	 * Returns whether the refresh scope specified by the given launch
-	 * configuration is recursive.
-	 * 
-	 * @param configuration
-	 * @return whether the refresh scope is recursive
-	 * @throws CoreException if unable to access the associated attribute
-	 */
-	public static boolean isRefreshRecursive(ILaunchConfiguration configuration) throws CoreException {
-		return configuration.getAttribute(ATTR_REFRESH_RECURSIVE, true);
-	}	
-	
-	/**
-	 * Creates and returns a memento for the given working set, to be used as a
-	 * refresh attribute.
-	 * 
-	 * @param workingSet a working set, or <code>null</code>
-	 * @return an equivalent refresh attribute
-	 */
-	public static String getRefreshAttribute(IWorkingSet workingSet) {
-		String set = null;
-		if (workingSet == null || workingSet.getElements().length == 0) {
-			set = NO_WORKING_SET;
-		} else {
-			XMLMemento workingSetMemento = XMLMemento.createWriteRoot(TAG_LAUNCH_CONFIGURATION_WORKING_SET);
-			workingSetMemento.putString(RefreshTab.TAG_FACTORY_ID, workingSet.getFactoryId());
-			workingSet.saveState(workingSetMemento);
-			StringWriter writer= new StringWriter();
-			try {
-				workingSetMemento.save(writer);
-			} catch (IOException e) {
-				DebugUIPlugin.log(e);
-			}
-			set = writer.toString();
-		}
-		if (set != null) {
-			StringBuffer memento = new StringBuffer();
-			memento.append("${working_set:"); //$NON-NLS-1$
-			memento.append(set);
-			memento.append("}"); //$NON-NLS-1$
-			return memento.toString();
-		}
-		return null;
-	}
-	
-	/**
-	 * Creates and returns a working set from the given refresh attribute created by
-	 * the method <code>getRefreshAttribute(IWorkingSet)</code>, or <code>null</code>
-	 * if none.
-	 * 
-	 * @param refreshAttribute a refresh attribute that represents a working set
-	 * @return equivalent working set, or <code>null</code>
-	 */
-	public static IWorkingSet getWorkingSet(String refreshAttribute) {
-		if (refreshAttribute.startsWith("${working_set:")) { //$NON-NLS-1$
-			String memento = refreshAttribute.substring(14, refreshAttribute.length() - 1);
-			return  restoreWorkingSet(memento);
-		}
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing on activation
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#deactivated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void deactivated(ILaunchConfigurationWorkingCopy workingCopy) {
-		// do nothing on deactivation
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/StringVariableSelectionDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/StringVariableSelectionDialog.java
deleted file mode 100644
index 7a50ebd..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/StringVariableSelectionDialog.java
+++ /dev/null
@@ -1,306 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui;
-
-import org.eclipse.core.variables.IDynamicVariable;
-import org.eclipse.core.variables.IStringVariable;
-import org.eclipse.core.variables.VariablesPlugin;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.DialogSettingsHelper;
-import org.eclipse.debug.internal.ui.SWTUtil;
-import org.eclipse.debug.internal.ui.preferences.StringVariablePreferencePage;
-import org.eclipse.debug.internal.ui.stringsubstitution.IArgumentSelector;
-import org.eclipse.debug.internal.ui.stringsubstitution.StringSubstitutionMessages;
-import org.eclipse.debug.internal.ui.stringsubstitution.StringVariableLabelProvider;
-import org.eclipse.debug.internal.ui.stringsubstitution.StringVariablePresentationManager;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.preference.IPreferenceNode;
-import org.eclipse.jface.preference.PreferenceDialog;
-import org.eclipse.jface.preference.PreferenceManager;
-import org.eclipse.jface.preference.PreferenceNode;
-import org.eclipse.jface.preference.PreferencePage;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.dialogs.ElementListSelectionDialog;
-
-/**
- * A dialog that prompts the user to choose and configure a string
- * substitution variable.
- * <p>
- * Clients may instantiate this class; not intended to be subclassed.
- * </p>
- * @since 3.1
- */
-public class StringVariableSelectionDialog extends ElementListSelectionDialog {
-	
-	// button to configure variable's argument
-	private Button fArgumentButton;
-	// variable description
-	private Text fDescriptionText;
-	// the argument value
-	private Text fArgumentText;
-	private String fArgumentValue;
-	private Button fEditVariablesButton;
-
-	/**
-	 * Constructs a new string substitution variable selection dialog.
-	 *  
-	 * @param parent parent shell
-	 */
-	public StringVariableSelectionDialog(Shell parent) {
-		super(parent, new StringVariableLabelProvider());
-		setShellStyle(getShellStyle() | SWT.RESIZE);
-		setTitle(StringSubstitutionMessages.StringVariableSelectionDialog_2); //$NON-NLS-1$
-		setMessage(StringSubstitutionMessages.StringVariableSelectionDialog_3); //$NON-NLS-1$
-		setMultipleSelection(false);
-		setElements(VariablesPlugin.getDefault().getStringVariableManager().getVariables());
-	}
-	
-	/**
-	 * Returns the variable expression the user generated from this
-	 * dialog, or <code>null</code> if none.
-	 *  
-	 * @return variable expression the user generated from this
-	 * dialog, or <code>null</code> if none
-	 */
-	public String getVariableExpression() {
-		Object[] selected = getResult();
-		if (selected != null && selected.length == 1) {
-			IStringVariable variable = (IStringVariable)selected[0];
-			StringBuffer buffer = new StringBuffer();
-			buffer.append("${"); //$NON-NLS-1$
-			buffer.append(variable.getName());
-			if (fArgumentValue != null && fArgumentValue.length() > 0) {
-				buffer.append(":"); //$NON-NLS-1$
-				buffer.append(fArgumentValue);
-			}
-			buffer.append("}"); //$NON-NLS-1$
-			return buffer.toString();
-		}
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		Control control = super.createDialogArea(parent);
-		createArgumentArea((Composite)control);
-		return control;
-	}
-
-	/**
-	 * Creates an area to display a description of the selected variable
-	 * and a button to configure the variable's argument.
-	 * 
-	 * @param parent parnet widget
-	 */
-	private void createArgumentArea(Composite parent) {
-		Composite container = new Composite(parent, SWT.NONE);
-		GridLayout layout = new GridLayout();
-		layout.numColumns = 2;
-		layout.makeColumnsEqualWidth = false;
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		container.setLayout(layout);
-		GridData gd = new GridData(GridData.FILL_HORIZONTAL);
-		container.setLayoutData(gd);
-		container.setFont(parent.getFont());
-		
-		fEditVariablesButton = new Button(container, SWT.PUSH);
-		fEditVariablesButton.setFont(container.getFont());
-		fEditVariablesButton.setText(StringSubstitutionMessages.StringVariableSelectionDialog_0); //$NON-NLS-1$
-		gd = new GridData(GridData.HORIZONTAL_ALIGN_END);
-		gd.horizontalSpan = 2;
-		fEditVariablesButton.setLayoutData(gd);
-		fEditVariablesButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				editVariables();
-			}
-		});	
-		
-		Label desc = new Label(container, SWT.NONE);
-		desc.setFont(parent.getFont());
-		desc.setText(StringSubstitutionMessages.StringVariableSelectionDialog_6); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		desc.setLayoutData(gd);		
-		
-		Composite args = new Composite(container, SWT.NONE);
-		layout = new GridLayout(2, false);
-		layout.marginHeight = 0;
-		layout.marginWidth = 0;
-		args.setLayout(layout);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		args.setLayoutData(gd);
-		args.setFont(container.getFont());
-		
-		fArgumentText = new Text(args, SWT.BORDER);
-		fArgumentText.setFont(container.getFont());
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		fArgumentText.setLayoutData(gd);		
-		
-		fArgumentButton = new Button(args, SWT.PUSH);
-		fArgumentButton.setFont(parent.getFont());
-		fArgumentButton.setText(StringSubstitutionMessages.StringVariableSelectionDialog_7); //$NON-NLS-1$
-		gd = new GridData(GridData.HORIZONTAL_ALIGN_END);
-		gd.widthHint = SWTUtil.getButtonWidthHint(fArgumentButton);
-		fArgumentButton.setLayoutData(gd);
-		fArgumentButton.addSelectionListener(new SelectionAdapter() {
-			public void widgetSelected(SelectionEvent e) {
-				configureArgument();
-			}
-		});
-
-		
-		desc = new Label(container, SWT.NONE);
-		desc.setFont(parent.getFont());
-		desc.setText(StringSubstitutionMessages.StringVariableSelectionDialog_8); //$NON-NLS-1$
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		desc.setLayoutData(gd);
-		
-		fDescriptionText = new Text(container, SWT.BORDER | SWT.WRAP | SWT.V_SCROLL);
-		fDescriptionText.setFont(container.getFont());
-		fDescriptionText.setEditable(false);
-		gd = new GridData(GridData.FILL_HORIZONTAL);
-		gd.horizontalSpan = 2;
-		gd.heightHint = 50;
-		fDescriptionText.setLayoutData(gd);		
-		
-	}
-
-
-	protected void editVariables() {
-		PreferencePage page = new StringVariablePreferencePage();
-		page.setTitle(StringSubstitutionMessages.StringVariableSelectionDialog_1); //$NON-NLS-1$
-		final IPreferenceNode targetNode = new PreferenceNode("org.eclipse.debug.ui.StringVariablePreferencePage", page); //$NON-NLS-1$
-		
-		PreferenceManager manager = new PreferenceManager();
-		manager.addToRoot(targetNode);
-		final PreferenceDialog dialog = new PreferenceDialog(getShell(), manager);
-		
-		final Display display = DebugUIPlugin.getStandardDisplay();
-		BusyIndicator.showWhile(display, new Runnable() {
-			public void run() {
-				dialog.create();
-				dialog.setMessage(targetNode.getLabelText());
-				if(dialog.open() == IDialogConstants.OK_ID) {
-					final IStringVariable[] elements = VariablesPlugin.getDefault().getStringVariableManager().getVariables();
-					display.asyncExec(new Runnable() {
-						public void run() {
-							setListElements(elements);
-						}
-					});
-				}
-			}
-		});		
-	}
-
-	/**
-	 * Configures the argument for the selected variable.
-	 */
-	protected void configureArgument() {
-		Object[] objects = getSelectedElements();
-		IStringVariable variable = (IStringVariable)objects[0];
-		IArgumentSelector selector = StringVariablePresentationManager.getDefault().getArgumentSelector(variable);
-		String value = selector.selectArgument(variable, getShell());
-		if (value != null) {
-			fArgumentText.setText(value);
-		}
-	}
-
-	/**
-	 * Update variable description and argument button enablement.
-	 * 
-	 * @see org.eclipse.ui.dialogs.AbstractElementListSelectionDialog#handleSelectionChanged()
-	 */
-	protected void handleSelectionChanged() {
-		super.handleSelectionChanged();
-		Object[] objects = getSelectedElements();
-		boolean buttonEnabled = false;
-		boolean argEnabled = false;
-		String text = null;
-		if (objects.length == 1) {
-			IStringVariable variable = (IStringVariable)objects[0];
-			 IArgumentSelector selector = StringVariablePresentationManager.getDefault().getArgumentSelector(variable);
-			 if (variable instanceof IDynamicVariable) {
-			 	argEnabled = ((IDynamicVariable)variable).supportsArgument();
-			 }
-			 buttonEnabled = argEnabled && selector != null;
-			 text = variable.getDescription();
-		}
-		if (text == null) {
-			text = ""; //$NON-NLS-1$
-		}
-		fArgumentText.setEnabled(argEnabled);
-		fArgumentButton.setEnabled(buttonEnabled);
-		fDescriptionText.setText(text);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		fArgumentValue = fArgumentText.getText().trim();
-		super.okPressed();
-	}
-
-	/**
-	 * Returns the name of the section that this dialog stores its settings in
-	 * 
-	 * @return String
-	 */
-	private String getDialogSettingsSectionName() {
-		return IDebugUIConstants.PLUGIN_ID + ".STRING_VARIABLE_SELECTION_DIALOG_SECTION"; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialLocation(org.eclipse.swt.graphics.Point)
-	 */
-	protected Point getInitialLocation(Point initialSize) {
-		Point initialLocation= DialogSettingsHelper.getInitialLocation(getDialogSettingsSectionName());
-		if (initialLocation != null) {
-			return initialLocation;
-		}
-		return super.getInitialLocation(initialSize);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#getInitialSize()
-	 */
-	protected Point getInitialSize() {
-		Point size = super.getInitialSize();
-		return DialogSettingsHelper.getInitialSize(getDialogSettingsSectionName(), size);
-	}
-	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#close()
-	 */
-	public boolean close() {
-		DialogSettingsHelper.persistShellGeometry(getShell(), getDialogSettingsSectionName());
-		return super.close();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchHistoryAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchHistoryAction.java
deleted file mode 100644
index 0728915..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchHistoryAction.java
+++ /dev/null
@@ -1,354 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
- 
-import java.text.MessageFormat;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.ILaunchHistoryChangedListener;
-import org.eclipse.debug.internal.ui.actions.ActionMessages;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchHistory;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MenuAdapter;
-import org.eclipse.swt.events.MenuEvent;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.MenuItem;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowPulldownDelegate2;
-
-/**
- * Abstract implementation of an action that displays a drop-down launch
- * history for a specific launch group.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 2.1
- */
-public abstract class AbstractLaunchHistoryAction implements IWorkbenchWindowPulldownDelegate2, ILaunchHistoryChangedListener {
-	
-	/**
-	 * The menu created by this action
-	 */
-	private Menu fMenu;
-		
-	/**
-	 * The action used to render this delegate.
-	 */
-	private IAction fAction;
-	
-	/**
-	 * Launch group identifier
-	 */
-	private String fLaunchGroupIdentifier;
-	
-	/**
-	 * Indicates whether the launch history has changed and
-	 * the sub menu needs to be recreated.
-	 */
-	protected boolean fRecreateMenu= false;
-	
-	/**
-	 * Constructs a launch history action.
-	 * 
-	 * @param launchGroupIdentifier unique identifier of the launch group
-	 * extension that this action displays a launch history for.
-	 */
-	public AbstractLaunchHistoryAction(String launchGroupIdentifier) {
-		fLaunchGroupIdentifier = launchGroupIdentifier;
-	}
-
-	/**
-	 * Sets the action used to render this delegate.
-	 * 
-	 * @param action the action used to render this delegate
-	 */
-	private void setAction(IAction action) {
-		fAction = action;
-	}
-
-	/**
-	 * Returns the action used to render this delegate.
-	 * 
-	 * @return the action used to render this delegate
-	 */
-	protected IAction getAction() {
-		return fAction;
-	}
-	
-	/**
-	 * Adds the given action to the specified menu with an accelerator specified
-	 * by the given number.
-	 * 
-	 * @param menu the menu to add the action to
-	 * @param action the action to add
-	 * @param accelerator the number that should appear as an accelerator
-	 */
-	protected void addToMenu(Menu menu, IAction action, int accelerator) {
-		StringBuffer label= new StringBuffer();
-		if (accelerator >= 0 && accelerator < 10) {
-			//add the numerical accelerator
-			label.append('&');
-			label.append(accelerator);
-			label.append(' ');
-		}
-		label.append(action.getText());
-		action.setText(label.toString());
-		ActionContributionItem item= new ActionContributionItem(action);
-		item.fill(menu, -1);
-	}
-
-	/**
-	 * Initialize this action so that it can dynamically set its tooltip.  Also set the enabled state
-	 * of the underlying action based on whether there are any registered launch configuration types that 
-	 * understand how to launch in the mode of this action.
-	 */
-	private void initialize(IAction action) {
-		getLaunchConfigurationManager().addLaunchHistoryListener(this);
-		setAction(action);
-		updateTooltip();	
-		action.setEnabled(existsConfigTypesForMode());	
-	}
-	
-	/**
-	 * Return whether there are any registered launch configuration types for
-	 * the mode of this action.
-	 * 
-	 * @return whether there are any registered launch configuration types for
-	 * the mode of this action
-	 */
-	private boolean existsConfigTypesForMode() {
-		ILaunchConfigurationType[] configTypes = DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurationTypes();
-		for (int i = 0; i < configTypes.length; i++) {
-			ILaunchConfigurationType configType = configTypes[i];
-			if (configType.supportsMode(getMode())) {
-				return true;
-			}
-		}		
-		return false;
-	}
-	
-	/**
-	 * Updates this action's tooltip to correspond to the most recent launch.
-	 */
-	protected void updateTooltip() {
-		ILaunchConfiguration lastLaunched = getLastLaunch();
-		String tooltip = null;
-		if (lastLaunched == null) {
-			tooltip = DebugUIPlugin.removeAccelerators(getLaunchHistory().getLaunchGroup().getLabel());
-		} else {
-			tooltip= getToolTip(lastLaunched);
-		}
-		getAction().setToolTipText(tooltip);
-	}
-	
-	protected String getToolTip(ILaunchConfiguration lastLaunched) {
-		String launchName= lastLaunched.getName();
-		String mode= getMode();
-		String label;
-		if (mode.equals(ILaunchManager.RUN_MODE)) {
-			label= ActionMessages.AbstractLaunchHistoryAction_1; //$NON-NLS-1$
-		} else if (mode.equals(ILaunchManager.DEBUG_MODE)){
-			label= ActionMessages.AbstractLaunchHistoryAction_2; //$NON-NLS-1$
-		} else if (mode.equals(ILaunchManager.PROFILE_MODE)){
-			label= ActionMessages.AbstractLaunchHistoryAction_3; //$NON-NLS-1$
-		} else {
-			label= ActionMessages.AbstractLaunchHistoryAction_4; //$NON-NLS-1$
-		}
-		return MessageFormat.format(ActionMessages.AbstractLaunchHistoryAction_0, new String[] {label, launchName}); //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see ILaunchHistoryChangedListener#launchHistoryChanged()
-	 */
-	public void launchHistoryChanged() {
-		fRecreateMenu= true;
-		updateTooltip();
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-		setMenu(null);
-		getLaunchConfigurationManager().removeLaunchHistoryListener(this);
-	}
-	
-	/**
-	 * Return the last launch in this action's launch history
-	 */
-	protected ILaunchConfiguration getLastLaunch() {
-		return getLaunchConfigurationManager().getLastLaunch(getLaunchGroupIdentifier());
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowPulldownDelegate#getMenu(org.eclipse.swt.widgets.Control)
-	 */
-	public Menu getMenu(Control parent) {
-		setMenu(new Menu(parent));
-		fillMenu(fMenu);
-		initMenu();
-		return fMenu;
-	}
-	
-	/**
-	 * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu)
-	 */
-	public Menu getMenu(Menu parent) {
-		setMenu(new Menu(parent));
-		fillMenu(fMenu);
-		initMenu();
-		return fMenu;
-	}
-	
-	/**
-	 * Creates the menu for the action
-	 */
-	private void initMenu() {
-		// Add listener to repopulate the menu each time
-		// it is shown because of dynamic history list
-		fMenu.addMenuListener(new MenuAdapter() {
-			public void menuShown(MenuEvent e) {
-				if (fRecreateMenu) {
-					Menu m = (Menu)e.widget;
-					MenuItem[] items = m.getItems();
-					for (int i=0; i < items.length; i++) {
-						items[i].dispose();
-					}
-					fillMenu(m);
-					fRecreateMenu= false;
-				}
-			}
-		});
-	}
-
-	/**
-	 * Sets this action's drop-down menu, disposing the previous menu.
-	 * 
-	 * @param menu the new menu
-	 */
-	private void setMenu(Menu menu) {
-		if (fMenu != null) {
-			fMenu.dispose();
-		}
-		fMenu = menu;
-	}
-
-	/**
-	 * Fills the drop-down menu with favorites and launch history
-	 * 
-	 * @param menu the menu to fill
-	 */
-	protected void fillMenu(Menu menu) {	
-		ILaunchConfiguration[] historyList= LaunchConfigurationManager.filterConfigs(getLaunchHistory().getHistory());
-		ILaunchConfiguration[] favoriteList = LaunchConfigurationManager.filterConfigs(getLaunchHistory().getFavorites());
-		
-		// Add favorites
-		int accelerator = 1;
-		for (int i = 0; i < favoriteList.length; i++) {
-			ILaunchConfiguration launch= favoriteList[i];
-			LaunchAction action= new LaunchAction(launch, getMode());
-			addToMenu(menu, action, accelerator);
-			accelerator++;
-		}		
-		
-		// Separator between favorites and history
-		if (favoriteList.length > 0 && historyList.length > 0) {
-			addSeparator(menu);
-		}
-		
-		// Add history launches next
-		for (int i = 0; i < historyList.length; i++) {
-			ILaunchConfiguration launch= historyList[i];
-			LaunchAction action= new LaunchAction(launch, getMode());
-			addToMenu(menu, action, accelerator);
-			accelerator++;
-		}
-	}
-	
-	/**
-	 * Adds a separator to the given menu
-	 * 
-	 * @param menu 
-	 */
-	protected void addSeparator(Menu menu) {
-		new MenuItem(menu, SWT.SEPARATOR);
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		// do nothing - this is just a menu
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection){
-		if (fAction == null) {
-			initialize(action);
-		} 
-	}
-	
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window){
-	}
-	
-	/**
-	 * Returns the launch history associated with this action's launch group.
-	 * 
-	 * @return the launch history associated with this action's launch group
-	 */
-	protected LaunchHistory getLaunchHistory() {
-		return getLaunchConfigurationManager().getLaunchHistory(getLaunchGroupIdentifier());
-	} 
-		
-	/**
-	 * Returns the mode (e.g., 'run' or 'debug') of this drop down.
-	 * 
-	 * @return the mode of this action
-	 */
-	protected String getMode() {
-		return getLaunchHistory().getLaunchGroup().getMode();
-	}
-	
-	/**
-	 * Returns the launch configuration manager.
-	 * 
-	 * @return launch configuration manager
-	 */
-	private LaunchConfigurationManager getLaunchConfigurationManager() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager();
-	}
-	
-	/**
-	 * Returns the identifier of the launch group this action is associated
-	 * with.
-	 * 
-	 * @return the identifier of the launch group this action is associated
-	 * with
-	 */
-	protected String getLaunchGroupIdentifier() {
-		return fLaunchGroupIdentifier;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchToolbarAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchToolbarAction.java
deleted file mode 100644
index 1cd7add..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/AbstractLaunchToolbarAction.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.launchConfigurations.OrganizeFavoritesAction;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.widgets.Menu;
-
-/**
- * A launch history action that also includes launch shortcut actions (run/debug
- * as), and an action to open the launch configuration dialog.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 2.1
- */
-public class AbstractLaunchToolbarAction extends AbstractLaunchHistoryAction {
-
-
-	/**
-	 * Constructs a launch toolbar action.
-	 *
-	 * @param launchGroupIdentifier unique identifier of the launch group
-	 * extension that this action displays a launch history, shortcuts, and
-	 * launch configuration dialog for.
-	 */
-	public AbstractLaunchToolbarAction(String launchGroupIdentifier) {
-		super(launchGroupIdentifier);
-	}
-
-	/**
-	 * Fills the drop-down menu with favorites and launch history,
-	 * launch shortcuts, and an action to open the launch configuration dialog.
-	 *
-	 * @param menu the menu to fill
-	 */
-	protected void fillMenu(Menu menu) {
-		super.fillMenu(menu);
-
-		// Separator between history and common actions
-		if (menu.getItemCount() > 0) {
-			addSeparator(menu);
-		}
-
-		addToMenu(menu, new LaunchShortcutsAction(getLaunchGroupIdentifier()), -1);
-		addToMenu(menu, getOpenDialogAction(), -1);
-		addToMenu(menu, new OrganizeFavoritesAction(getLaunchGroupIdentifier()), -1);
-	}
-	
-	/**
-	 * Returns an action to open the launch dialog
-	 * @since 3.1
-	 */
-	protected IAction getOpenDialogAction() {
-		return new OpenLaunchDialogAction(getLaunchGroupIdentifier());
-	}
-
-	/**
-	 * Launch the last launch, or open the launch config dialog if none.
-	 * 
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		ILaunchConfiguration configuration = getLastLaunch();
-		if (configuration == null) {
-			DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUIPlugin.getShell(), new StructuredSelection(), getLaunchGroupIdentifier());
-		} else {
-			DebugUITools.launch(configuration, getMode());
-		}
-	}	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ContextualLaunchAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ContextualLaunchAction.java
deleted file mode 100644
index 8169fa3..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ContextualLaunchAction.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.IEvaluationContext;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.actions.LaunchShortcutAction;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchShortcutExtension;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuCreator;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.MenuAdapter;
-import org.eclipse.swt.events.MenuEvent;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.MenuItem;
-import org.eclipse.ui.IObjectActionDelegate;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-
-/**
- * An action delegate that builds a context menu with applicable launch shortcuts
- * for a specific launch mode.
- * <p>
- * This class can be subclassed and contributed as an object contribution pop-up
- * menu extension action. When invoked, it becomes a sub-menu that dynamically
- * builds a list of applicable launch shortcuts for the current selection.
- * Each launch shortcut may have optional information to support a context menu action.
- * </p>
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 3.0
- */
-public abstract class ContextualLaunchAction implements IObjectActionDelegate, IMenuCreator {
-
-	private IStructuredSelection fSelection;
-	private IAction fDelegateAction;
-	private String fMode;
-	// default launch group for this mode (null category)
-	private ILaunchGroup fGroup = null;
-	// map of launch groups by (non-null) categories, for this mode
-	private Map fGroupsByCategory = null;
-	// whether to re-fill the menu (reset on selection change)
-	private boolean fFillMenu = true;
-	
-	/**
-	 * Constructs a contextual launch action for the given launch mode.
-	 * 
-	 * @param mode launch mode
-	 */
-	public ContextualLaunchAction(String mode) {
-		fMode = mode;
-		ILaunchGroup[] groups = DebugUITools.getLaunchGroups();
-		fGroupsByCategory = new HashMap(3);
-		for (int i = 0; i < groups.length; i++) {
-			ILaunchGroup group = groups[i];
-			if (group.getMode().equals(mode)) {
-				if (group.getCategory() == null) {
-					fGroup = group;
-				} else {
-					fGroupsByCategory.put(group.getCategory(), group);
-				}
-			}
-		}
-	}
-	
-	/*
-	 * @see org.eclipse.ui.IObjectActionDelegate#setActivePart(org.eclipse.jface.action.IAction, org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void setActivePart(IAction action, IWorkbenchPart targetPart) {
-		// We don't have a need for the active part.
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#dispose()
-	 */
-	public void dispose() {
-		// nothing to do
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Control)
-	 */
-	public Menu getMenu(Control parent) {
-		// never called
-		return null;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu)
-	 */
-	public Menu getMenu(Menu parent) {
-		//Create the new menu. The menu will get filled when it is about to be shown. see fillMenu(Menu).
-		Menu menu = new Menu(parent);
-		/**
-		 * Add listener to repopulate the menu each time
-		 * it is shown because MenuManager.update(boolean, boolean) 
-		 * doesn't dispose pulldown ActionContribution items for each popup menu.
-		 */
-		menu.addMenuListener(new MenuAdapter() {
-			public void menuShown(MenuEvent e) {
-				if (fFillMenu) {
-					Menu m = (Menu)e.widget;
-					MenuItem[] items = m.getItems();
-					for (int i=0; i < items.length; i++) {
-						items[i].dispose();
-					}
-					fillMenu(m);
-					fFillMenu = false;
-				}
-			}
-		});
-		return menu;
-	}
-
-	/*
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		// Never called because we become a menu.
-	}
-	
-	/*
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		// if the selection is an IResource, save it and enable our action
-		if (selection instanceof IStructuredSelection) {
-			fFillMenu = true;
-			if (fDelegateAction != action) {
-				fDelegateAction = action;
-				fDelegateAction.setMenuCreator(this);
-			}
-			// save selection and enable our menu
-			fSelection = (IStructuredSelection) selection;
-			action.setEnabled(true);
-			return;
-		}
-		action.setEnabled(false);
-	}
-
-    /**
-     * Fills the menu with applicable launch shortcuts
-     * @param menu The menu to fill
-     */
-	protected void fillMenu(Menu menu) {
-		if (fSelection == null) {
-			return;
-		}
-		
-		IEvaluationContext context = createContext();
-		// gather all shortcuts and run their filters so that we only run the
-		// filters one time for each shortcut. Running filters can be expensive.
-		// Also, only *LOADED* plugins get their filters run.
-		List /* <LaunchShortcutExtension> */ allShortCuts = getLaunchConfigurationManager().getLaunchShortcuts();
-		Iterator iter = allShortCuts.iterator();
-		List filteredShortCuts = new ArrayList(10);
-		while (iter.hasNext()) {
-			LaunchShortcutExtension ext = (LaunchShortcutExtension) iter.next();
-			try {
-				if (!WorkbenchActivityHelper.filterItem(ext) && isApplicable(ext, context)) {
-					filteredShortCuts.add(ext);
-				}
-			} catch (CoreException e) {
-				// not supported
-			}
-		}
-		iter = filteredShortCuts.iterator();
-		int accelerator = 1;
-		List categories = new ArrayList();
-		while (iter.hasNext()) {
-			LaunchShortcutExtension ext = (LaunchShortcutExtension) iter.next();
-			Set modes = ext.getModes(); // supported launch modes
-			Iterator modeIter = modes.iterator();
-			while (modeIter.hasNext()) {
-				String mode = (String) modeIter.next();
-				if (mode.equals(fMode)) {
-					String category = ext.getCategory();
-					// NOTE: category can be null
-					if (!categories.contains(category)) {
-						categories.add(category);
-					}
-					populateMenuItem(mode, ext, menu, accelerator++);
-				}
-			}
-		}
-		
-		
-		if (categories.isEmpty()) {
-			IAction action = new OpenLaunchDialogAction(fGroup.getIdentifier());
-		    ActionContributionItem item= new ActionContributionItem(action);
-		    item.fill(menu, -1);
-		} else {
-			iter = categories.iterator();
-			while (iter.hasNext()) {
-				// NOTE: category can be null
-				String category = (String) iter.next();
-				ILaunchGroup group = fGroup;
-				if (category != null) {
-					group = (ILaunchGroup) fGroupsByCategory.get(category);
-				}
-				if (group != null) {
-				    if (accelerator > 1) {
-						new MenuItem(menu, SWT.SEPARATOR);
-					}
-				    IAction action = new OpenLaunchDialogAction(group.getIdentifier());
-				    ActionContributionItem item= new ActionContributionItem(action);
-				    item.fill(menu, -1);
-				}
-			}
-		}
-
-	}
-
-	/**
-	 * @return an Evaluation context with default variable = selection
-	 */
-	private IEvaluationContext createContext() {
-		// create a default evaluation context with default variable of the user selection
-		List selection = getSelectedElements();
-		IEvaluationContext context = new EvaluationContext(null, selection);
-		context.addVariable("selection", selection); //$NON-NLS-1$
-		
-		return context;
-	}
-	
-	/**
-	 * @return current selection as a List.
-	 */
-	private List getSelectedElements() {
-		ArrayList result = new ArrayList();
-		Iterator iter = fSelection.iterator();
-		while (iter.hasNext()) {
-			result.add(iter.next());
-		}
-		return result;
-	}
-	
-	/**
-	 * Evaluate the enablement logic in the contextualLaunch
-	 * element description. A true result means that we should
-	 * include this shortcut in the context menu.
-	 * @return true iff shortcut should appear in context menu
-	 */
-	private boolean isApplicable(LaunchShortcutExtension ext, IEvaluationContext context) throws CoreException {
-		Expression expr = ext.getContextualLaunchEnablementExpression();
-		return ext.evalEnablementExpression(context, expr);
-	}
-
-	/**
-	 * Add the shortcut to the context menu's launch submenu.
-	 */
-	private void populateMenuItem(String mode, LaunchShortcutExtension ext, Menu menu, int accelerator) {
-		LaunchShortcutAction action = new LaunchShortcutAction(mode, ext);
-		action.setActionDefinitionId(ext.getId() + "." + mode); //$NON-NLS-1$
-		String helpContextId = ext.getHelpContextId();
-		if (helpContextId != null) {
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(action, helpContextId);
-		}
-		StringBuffer label= new StringBuffer();
-		if (accelerator >= 0 && accelerator < 10) {
-			//add the numerical accelerator
-			label.append('&');
-			label.append(accelerator);
-			label.append(' ');
-		}
-		String contextLabel= ext.getContextLabel(mode);
-		// replace default action label with context label if specified.
-		label.append((contextLabel != null) ? contextLabel : action.getText());
-		action.setText(label.toString());
-		ActionContributionItem item= new ActionContributionItem(action);
-		item.fill(menu, -1);
-	}
-
-	/**
-	 * Returns the launch configuration manager.
-	*
-	* @return launch configuration manager
-	*/
-	private LaunchConfigurationManager getLaunchConfigurationManager() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager();
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/DebugAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/DebugAction.java
deleted file mode 100644
index 009cf94..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/DebugAction.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.actions.ExecutionAction;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Action to launch the last launch configuration that was successfully
- * launched, in debug mode. If no configurations have been launched, the launch
- * configuration dialog is opened.
- * <p>
- * This class is not intended to be subclassed. This class may
- * be instantiated.
- * </p>
- * @since 2.0
- */
-public final class DebugAction extends ExecutionAction {
-	
-	public DebugAction() {
-		super(IDebugUIConstants.ID_DEBUG_LAUNCH_GROUP);
-	}
-
-	/**
-	 * @see ExecutionAction#getMode()
-	 */
-	protected String getMode() {
-		return ILaunchManager.DEBUG_MODE;
-	}
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ILaunchable.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ILaunchable.java
deleted file mode 100644
index fddbcc9..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ILaunchable.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-/**
- * Interface used to tag objects as launchable. Objects that provide
- * an adapter of this type will be considered by the contextual
- * launch support. 
- * <p>
- * This interface is not intended to be implemented. Instead clients
- * may contribute an adapter of this type for launchable objects
- * via the <code>org.eclipse.core.runtime.adapters</code> extension
- * point. A factory and implementation of this interface are not actually
- * required.
- * </p>
- * @see org.eclipse.debug.ui.actions.ContextualLaunchAction
- * @since 3.0
- */
-public interface ILaunchable {
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IRunToLineTarget.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IRunToLineTarget.java
deleted file mode 100644
index e16d020..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IRunToLineTarget.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * An adapter for a "run to line" operation. The debug platform provides
- * a retargettable "run to line" action that debuggers may plug into
- * by providing an adapter (see <code>IAdaptable</code>) of this type.
- * This allows the platform to provide one command and keybinding for
- * the "run to line" function to be shared by many debuggers.
- * <p>
- * When a part is activated, a retargettable action asks the part
- * for its <code>IRunToLineTarget</code> adapter. If one exists,
- * that adapter is delegated to to perform "run to line" operations when
- * the user invokes an associated action. If an adapter does not exist
- * for the part, the retargettable actions asks selected objects in the
- * active part for an adapter. Generally, a debug implementation will
- * provide breakpoint adapters for relevant editors and model objects. 
- * </p>  
- * <p>
- * Clients are intended to implement this interface and provide instances as
- * an adapter on applicable parts (for example, editors) that support the
- * operation.
- * </p>
- * @since 3.0
- */
-public interface IRunToLineTarget {
-	
-	/**
-	 * Perform a run to line operation on the given element that is 
-	 * currently selected and suspended in the Debug view. Implementations
-	 * must honor the user preference of whether to skip breakpoints
-	 * during the operation -
-	 * see <code>IDebugUIConstants.PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE</code>.
-	 * 
-	 * @param part the part on which the action has been invoked
-	 * @param selection the selection on which the action has been invoked
-	 * @param target suspended element to perform the "run to line" action on
-	 * @throws CoreException if unable to perform the action 
-	 */
-	public void runToLine(IWorkbenchPart part, ISelection selection, ISuspendResume target) throws CoreException;
-
-	/**
-	 * Returns whether a run to line operation can be performed on the given
-	 * element that is currently selected and suspended in the Debug view.
-	 * 
-	 * @param part the part on which the action has been invoked
-	 * @param selection the selection on which the action has been invoked
-	 * @param target suspended element to perform the "run to line" action on
-	 * @throws CoreException if unable to perform the action 
-	 */
-	public boolean canRunToLine(IWorkbenchPart part, ISelection selection, ISuspendResume target);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTarget.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTarget.java
deleted file mode 100644
index bab1710..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTarget.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * An adapter to support breakpoint creation/deletion for an active part
- * or selection within an active part. The debug platform provides
- * retargettable actions for toggling line breakpoints, method breakpoints,
- * and watchpoints. A debug implementation can plug into the global actions
- * by providing an adapter of this type on relevant parts and objects.
- * The debug platform provides one command and keybinding for each breakpoint
- * operation.
- * <p>
- * When a part is activated, a retargettable action asks the part
- * for its <code>IToggleBreakpointTarget</code> adapter. If one exists,
- * that adapter is delegated to to perform breakpoint operations when
- * the user invokes an associated action. If an adapter does not exist
- * for the part, the retargettable actions asks selected objects in the
- * active part for an adapter. Generally, a debug implementation will
- * provide breakpoint adapters for relevant editors and model objects. 
- * </p> 
- * <p>
- * Clients are intended to implement this interface and provide instances as
- * an adapter on applicable parts (for example, editors) and objects (for
- * example, methods and fields) that support breakpoint toggling.
- * </p>
- * @since 3.0
- */
-public interface IToggleBreakpointsTarget {
-	
-	/**
-	 * Creates new line breakpoints or removes existing breakpoints.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked  
-	 * @param selection selection on which line breakpoints should be toggled
-	 * @throws CoreException if unable to perform the action 
-	 */
-	public void toggleLineBreakpoints(IWorkbenchPart part, ISelection selection) throws CoreException;
-	
-	/**
-	 * Returns whether line breakpoints can be toggled on the given selection.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked
-	 * @param selection selection on which line breakpoints may be toggled
-	 * @return whether line breakpoints can be toggled on the given selection
-	 */
-	public boolean canToggleLineBreakpoints(IWorkbenchPart part, ISelection selection);
-
-	/**
-	 * Creates new method breakpoints or removes existing breakpoints.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked  
-	 * @param selection selection on which method breakpoints should be toggled
-	 * @throws CoreException if unable to perform the action 
-	 */
-	public void toggleMethodBreakpoints(IWorkbenchPart part, ISelection selection) throws CoreException;
-	
-	/**
-	 * Returns whether method breakpoints can be toggled on the given selection.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked
-	 * @param selection selection on which method breakpoints may be toggled
-	 * @return whether method breakpoints can be toggled on the given selection
-	 */
-	public boolean canToggleMethodBreakpoints(IWorkbenchPart part, ISelection selection);
-	
-	/**
-	 * Creates new watchpoints or removes existing breakpoints.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked  
-	 * @param selection selection on which watchpoints should be toggled
-	 * @throws CoreException if unable to perform the action 
-	 */
-	public void toggleWatchpoints(IWorkbenchPart part, ISelection selection) throws CoreException;
-	
-	/**
-	 * Returns whether watchpoints can be toggled on the given selection.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked
-	 * @param selection selection on which watchpoints may be toggled
-	 * @return whether watchpoints can be toggled on the given selection
-	 */
-	public boolean canToggleWatchpoints(IWorkbenchPart part, ISelection selection);	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTargetExtension.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTargetExtension.java
deleted file mode 100644
index 99e7e08..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IToggleBreakpointsTargetExtension.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * Extension interface for {@link org.eclipse.debug.ui.actions.IToggleBreakpointsTarget}.
- * This interface provides the ability to selectively create any type of breakpoint
- * when invoked, rather than a specific type of breakpoint (for example, a line
- * breakpoint). This allows targets to choose the type of breakpoint to create
- * when the user double-clicks in the vertical ruler. 
- * <p>
- * Clients implementing <code>IToggleBreakpointsTarget</code> may optionally
- * implement this interface.
- * </p>
- * @since 3.1
- * @see org.eclipse.debug.ui.actions.ToggleBreakpointAction
- */
-public interface IToggleBreakpointsTargetExtension extends IToggleBreakpointsTarget {
-	
-	/**
-	 * Creates new line breakpoints or removes existing breakpoints.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked  
-	 * @param selection selection on which line breakpoints should be toggled
-	 * @throws CoreException if unable to perform the action 
-	 */
-	public void toggleBreakpoints(IWorkbenchPart part, ISelection selection) throws CoreException;
-	
-	/**
-	 * Returns whether line breakpoints can be toggled on the given selection.
-	 * The selection varies depending on the given part. For example,
-	 * a text selection is provided for text editors, and a structured
-	 * selection is provided for tree views, and may be a multi-selection.
-	 * 
-	 * @param part the part on which the action has been invoked
-	 * @param selection selection on which line breakpoints may be toggled
-	 * @return whether line breakpoints can be toggled on the given selection
-	 */
-	public boolean canToggleBreakpoints(IWorkbenchPart part, ISelection selection);
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IVariableValueEditor.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IVariableValueEditor.java
deleted file mode 100644
index 0fc8f98..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/IVariableValueEditor.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * A variable value editor allows the user to edit a variable's value.
- * Variable value editors are contributed for a debug model via the
- * <code>org.eclipse.debug.ui.variableValueEditors</code> extension point.
- * <p>
- * Following is example plug-in XML for contributing a variable value editor.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.variableValueEditors"&gt;
- *    &lt;variableEditor
- *       modelId="com.examples.myDebugModel"
- *       class="com.examples.variables.MyVariableValueEditor"/&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>modelId</code> the debug model identifier for which the given
- * variable value editor is applicable</li>
- * <li><code>class</code> fully qualified name of a class that implements 
- * {@link IVariableValueEditor}</li>
- * </ul>
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IVariableValueEditor {
-
-    /**
-     * Edits the given variable, if appropriate. If this editor does not apply to
-     * the given variable this method returns false, which indicates that the
-     * Debug Platform's default variable edit dialog should be used.
-     * 
-     * @param variable the variable to edit
-     * @param shell the currently active shell, which can be used to open a dialog
-     *  for the user
-     * @return whether this editor has completed the edit operation for the given variable.
-     *  <code>true</code> if no more work should be done, <code>false</code> if the debug
-     *  platform should prompt the user to edit the given variable using the default
-     *  variable editor
-     */
-    public boolean editVariable(IVariable variable, Shell shell);
-    
-    /**
-     * Saves the given expression to the given variable, if appropriate. If this
-     * editor does not set the given variable's value from the given expression, this
-     * method returns false. Returning false indicates that the Debug Platform should
-     * perform the default operation to set a variable's value based on a String.
-     * 
-     * @param variable the variable to edit
-     * @param expression the expression to assign to the given variable
-     * @param shell the currently active shell, which can be used to report errors to the
-     *  user. May be <code>null</code> if no active shell could be found.
-     * @return whether this editor has completed the save operation for the given variable.
-     *  <code>true</code> if no more work should be done, <code>false</code> if the debug
-     *  platform should perform the default save operation
-     */
-    public boolean saveVariable(IVariable variable, String expression, Shell shell);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAction.java
deleted file mode 100644
index dfce1e6..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAction.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Launches a launch configuration in a specific mode.
- * <p>
- * Clients are not intended to subclass this class; clients may instantiate this
- * class.
- * </p>
- * @since 2.1
- */
-public class LaunchAction extends Action {
-
-	/**
-	 * The configuration to launch.
-	 */
-	private ILaunchConfiguration fConfiguration;
-	/**
-	 * The mode to launch in
-	 */
-	private String fMode;
-	
-	/**
-	 * Constucts an action that launches the specified launch configuration
-	 * in the specified mode.
-	 * 
-	 * @param configuration launch configuration
-	 * @param mode launch mode - one of <code>ILaunchManager.RUN_MODE</code> or
-	 * <code>ILaunchManager.DEBUG_MODE</code>
-	 */
-	public LaunchAction(ILaunchConfiguration configuration, String mode) {
-		fConfiguration = configuration;
-		fMode = mode;
-		setText(configuration.getName());
-		setImageDescriptor(DebugUITools.getDefaultImageDescriptor(configuration));
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(
-			this,
-			IDebugHelpContextIds.RELAUNCH_HISTORY_ACTION);
-	}
-
-	/**
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		DebugUITools.launch(fConfiguration, fMode);
-	}
-	
-	/**
-	 * If the user has control-clicked the launch history item, open the launch
-	 * configuration dialog on the launch configuration, rather than running it.
-	 * 
-	 * @see org.eclipse.jface.action.IAction#runWithEvent(org.eclipse.swt.widgets.Event)
-	 */
-	public void runWithEvent(Event event) {
-		if ((event.stateMask & SWT.MOD1) > 0) {
-			IStructuredSelection selection = new StructuredSelection(fConfiguration);
-			String id = DebugUITools.getLaunchGroup(fConfiguration, fMode).getIdentifier();
-			DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUIPlugin.getShell(), selection, id); 
-		} else {
-			run();
-		}
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAsAction.java
deleted file mode 100644
index dcfcf69..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchAsAction.java
+++ /dev/null
@@ -1,309 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-
-import java.text.MessageFormat;
-import java.util.Iterator;
-import java.util.List;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchMode;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.actions.ActionMessages;
-import org.eclipse.debug.internal.ui.actions.LaunchShortcutAction;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchGroupExtension;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchShortcutExtension;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuCreator;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.swt.events.MenuAdapter;
-import org.eclipse.swt.events.MenuEvent;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.MenuItem;
-import org.eclipse.ui.IPerspectiveDescriptor;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowPulldownDelegate2;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-
-/**
- * A cascading sub-menu that shows all launch shortcuts pertinent to a
- * launch group.
- * <p>
- * Clients may instantiate this class; not intended to be subclassed.
- * </p>
- * @since 2.1
- * @deprecated The use of perspective based launch shorcuts has been deprecated
- *  in the 3.1 release. Instead, selection sensitive launch is supported in the top level
- *  menus. Use <code>LaunchShorcutsAction</code> instead.
- */
-public class LaunchAsAction extends Action implements IMenuCreator, IWorkbenchWindowPulldownDelegate2 {
-	
-	/**
-	 * Cascading menu 
-	 */
-	private Menu fCreatedMenu;
-	
-	/**
-	 * Launch group identifier 
-	 */
-	private String fLaunchGroupIdentifier;
-	
-	/**
-	 * Presentation wrapper for this action
-	 */
-	private IAction fAction;
-	
-	/**
-	 * Creates a cascading menu action to populate with shortcuts in the given
-	 * launch group.
-	 *  
-	 * @param launchGroupIdentifier launch group identifier
-	 */
-	public LaunchAsAction(String launchGroupIdentifier) {
-		super();
-		fLaunchGroupIdentifier = launchGroupIdentifier;
-		ILaunchMode launchMode = DebugPlugin.getDefault().getLaunchManager().getLaunchMode(getMode());
-		setText(MessageFormat.format(ActionMessages.LaunchAsAction_0, new String[]{launchMode.getLabel()})); //$NON-NLS-1$
-		setMenuCreator(this);
-	}
-	
-	/**
-	 * Returns the launch group associatd with this action.
-	 * 
-	 * @return the launch group associatd with this action
-	 */
-	private LaunchGroupExtension getLaunchGroup() {
-		return getLaunchConfigurationManager().getLaunchGroup(fLaunchGroupIdentifier);
-	}
-
-	/**
-	 * @see IAction#run()
-	 */
-	public void run() {
-		//do nothing, this action just creates a cascading menu.
-	}
-		
-	private void createAction(Menu parent, IAction action, int count) {
-		StringBuffer label= new StringBuffer();
-		//add the numerical accelerator
-		if (count < 10) {
-			label.append('&');
-			label.append(count);
-			label.append(' ');
-		}
-		label.append(action.getText());
-		action.setText(label.toString());
-		ActionContributionItem item= new ActionContributionItem(action);
-		item.fill(parent, -1);
-	}
-	
-	/**
-	 * @see IMenuCreator#dispose()
-	 */
-	public void dispose() {
-		if (getCreatedMenu() != null) {
-			getCreatedMenu().dispose();
-		}
-	}
-	
-	/**
-	 * @see IMenuCreator#getMenu(Control)
-	 */
-	public Menu getMenu(Control parent) {
-		return null;
-	}
-	
-	/**
-	 * @see IMenuCreator#getMenu(Menu)
-	 */
-	public Menu getMenu(Menu parent) {
-		if (getCreatedMenu() != null) {
-			 getCreatedMenu().dispose();
-		 }
-		setCreatedMenu(new Menu(parent));
-		fillMenu();
-		initMenu();
-		return getCreatedMenu();
-	}
-	
-	private void fillMenu() {
-		//Retrieve the current perspective and the registered shortcuts
-		 List shortcuts = null;
-		 String activePerspID = getActivePerspectiveID();
-		 if (activePerspID != null) {
-			 shortcuts = getLaunchConfigurationManager().getLaunchShortcuts(activePerspID, getCategory());
-		 }
-	
-		 // If NO shortcuts are listed in the current perspective, add ALL shortcuts
-		 // to avoid an empty cascading menu
-		 if (shortcuts == null || shortcuts.isEmpty()) {
-			 shortcuts = getLaunchConfigurationManager().getLaunchShortcuts(getCategory());
-		 }
-
-		 int menuCount = 1;
-		 
-		 Iterator iter = shortcuts.iterator();
-		 while (iter.hasNext()) {
-			 LaunchShortcutExtension ext = (LaunchShortcutExtension) iter.next();
-			 if (ext.getModes().contains(getMode()) && !WorkbenchActivityHelper.filterItem(ext)) {
-				populateMenu(ext, getCreatedMenu(), menuCount);
-				menuCount++;
-			 }
-		 }
-	}
-	
-	/**
-	 * Creates the menu for the action
-	 */
-	private void initMenu() {
-		// Add listener to repopulate the menu each time
-		// it is shown to reflect changes in selection or active perspective
-		fCreatedMenu.addMenuListener(new MenuAdapter() {
-			public void menuShown(MenuEvent e) {
-				Menu m = (Menu)e.widget;
-				MenuItem[] items = m.getItems();
-				for (int i=0; i < items.length; i++) {
-					items[i].dispose();
-				}
-				fillMenu();
-			}
-		});
-	}
-		
-	/**
-	 * Add the shortcut to the menu.
-	 */
-	private void populateMenu(LaunchShortcutExtension ext, Menu menu, int menuCount) {
-		LaunchShortcutAction action = new LaunchShortcutAction(getMode(), ext);
-		action.setActionDefinitionId(ext.getId() + "." + getMode()); //$NON-NLS-1$
-		String helpContextId = ext.getHelpContextId();
-		if (helpContextId != null) {
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(action, helpContextId);
-		}
-		/*if (fKeyBindingService != null) {
-			fKeyBindingService.registerGlobalAction(action);	
-		}*/
-		createAction(menu, action, menuCount);
-	}
-	
-	/**
-	 * Return the ID of the currently active perspective, or <code>null</code>
-	 * if there is none.
-	 */
-	private String getActivePerspectiveID() {
-		IWorkbenchWindow window = DebugUIPlugin.getActiveWorkbenchWindow();
-		if (window != null) {
-			IWorkbenchPage page = window.getActivePage();
-			if (page != null) {
-				IPerspectiveDescriptor persp = page.getPerspective();
-				if (persp != null) {
-					return persp.getId();
-				}
-			}
-		}
-		return null;
-	}
-		
-	/**
-	 * Returns the mode of this action - run or debug 
-	 * 
-	 * @return the mode of this action - run or debug
-	 */
-	private String getMode() {
-		return getLaunchGroup().getMode();
-	}
-	
-	/**
-	 * Returns the category of this action - possibly <code>null</code>
-	 *
-	 * @return the category of this action - possibly <code>null</code>
-	 */
-	private String getCategory() {
-		return getLaunchGroup().getCategory();
-	}
-	
-	private Menu getCreatedMenu() {
-		return fCreatedMenu;
-	}
-	
-	private void setCreatedMenu(Menu createdMenu) {
-		fCreatedMenu = createdMenu;
-	}
-	
-	/**
-	 * Returns the launch configuration manager.
-	 *
-	 * @return launch configuration manager
-	 */
-	private LaunchConfigurationManager getLaunchConfigurationManager() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager();
-	}	
-	
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window) {
-//		if (window instanceof WorkbenchWindow) {
-//			fKeyBindingService= ((WorkbenchWindow)window).getKeyBindingService();
-//		}
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		// do nothing - this is just a menu
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		if (fAction == null) {
-			initialize(action);
-		}
-	}
-	
-	/**
-	 * Set the enabled state of the underlying action based on whether there are any
-	 * registered launch shortcuts for this launch mode.
-	 */
-	private void initialize(IAction action) {
-		fAction = action;
-		action.setEnabled(existsShortcutsForMode());	
-	}	
-
-	/**
-	 * Return whether there are any registered launch shortcuts for
-	 * the mode of this action.
-	 * 
-	 * @return whether there are any registered launch shortcuts for
-	 * the mode of this action
-	 */
-	private boolean existsShortcutsForMode() {
-		List shortcuts = getLaunchConfigurationManager().getLaunchShortcuts(getCategory());
-		Iterator iter = shortcuts.iterator();
-		while (iter.hasNext()) {
-			LaunchShortcutExtension ext = (LaunchShortcutExtension) iter.next();
-			if (ext.getModes().contains(getMode())) {
-				return true;
-			}
-		}		
-		return false;
-	}	
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchShortcutsAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchShortcutsAction.java
deleted file mode 100644
index 6f5a259..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/LaunchShortcutsAction.java
+++ /dev/null
@@ -1,338 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.IEvaluationContext;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.actions.ActionMessages;
-import org.eclipse.debug.internal.ui.actions.LaunchShortcutAction;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationManager;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchShortcutExtension;
-import org.eclipse.debug.ui.ILaunchGroup;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuCreator;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.events.MenuAdapter;
-import org.eclipse.swt.events.MenuEvent;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.MenuItem;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowPulldownDelegate2;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-
-/**
- * A cascading sub-menu that shows all launch shortcuts pertinent to a
- * selection. This action is similar to <code>ContextualLaunchAction</code>
- * except this action is an <code>IAction</code> rather than an action
- * delegate.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 3.1
- */
-public class LaunchShortcutsAction extends Action implements IMenuCreator, IWorkbenchWindowPulldownDelegate2 {
-	
-	/**
-	 * Cascading menu 
-	 */
-	private Menu fCreatedMenu;
-	
-	/**
-	 * Launch group
-	 */
-	private ILaunchGroup fGroup;
-	
-	/**
-	 * Whether this actions enablement has been initialized
-	 */
-	private boolean fInitialized = false;
-		
-	/**
-	 * Creates a cascading menu action to populate with shortcuts in the given
-	 * launch group.
-	 *  
-	 * @param launchGroupIdentifier launch group identifier
-	 */
-	public LaunchShortcutsAction(String launchGroupIdentifier) {
-		super();
-		fGroup = DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroup(launchGroupIdentifier);
-		String label = DebugPlugin.getDefault().getLaunchManager().getLaunchMode(fGroup.getMode()).getLabel();
-		setText(MessageFormat.format(ActionMessages.LaunchShortcutsAction_0, new String[] { label })); //$NON-NLS-1$
-		setMenuCreator(this);
-		setEnabled(existsConfigTypesForMode());
-	}
-	
-	/**
-	 * Returns the launch group associatd with this action.
-	 * 
-	 * @return the launch group associatd with this action
-	 */
-	private ILaunchGroup getLaunchGroup() {
-		return fGroup;
-	}
-
-	/**
-	 * @see IAction#run()
-	 */
-	public void run() {
-		//do nothing, this action just creates a cascading menu.
-	}
-	
-	/**
-	 * @see IMenuCreator#dispose()
-	 */
-	public void dispose() {
-		if (getCreatedMenu() != null) {
-			getCreatedMenu().dispose();
-		}
-	}
-	
-	/**
-	 * @see IMenuCreator#getMenu(Control)
-	 */
-	public Menu getMenu(Control parent) {
-		return null;
-	}
-	
-	/**
-	 * @see IMenuCreator#getMenu(Menu)
-	 */
-	public Menu getMenu(Menu parent) {
-		if (getCreatedMenu() != null) {
-			 getCreatedMenu().dispose();
-		 }
-		setCreatedMenu(new Menu(parent));
-		initMenu();
-		return getCreatedMenu();
-	}
-	
-	/**
-	 * @return an Evaluation context with default variable = selection
-	 */
-	private IEvaluationContext createContext() {
-	    List list = null;
-		IWorkbenchWindow window = DebugUIPlugin.getActiveWorkbenchWindow();
-		if (window != null) {
-			IWorkbenchPage page = window.getActivePage();
-			if (page != null) {
-			    IWorkbenchPart activePart = page.getActivePart();
-			    if (activePart instanceof IEditorPart) {
-			        list = new ArrayList();
-			        list.add(((IEditorPart)activePart).getEditorInput());
-			    } else if (activePart != null) {
-			        IWorkbenchPartSite site = activePart.getSite();
-			        if (site != null) {
-	                    ISelectionProvider selectionProvider = site.getSelectionProvider();
-	                    if (selectionProvider != null) {
-	                        ISelection selection = selectionProvider.getSelection();
-					        if (selection instanceof IStructuredSelection) {
-					            list = ((IStructuredSelection)selection).toList();
-					        }
-	                    }
-			        }
-			    }
-			}
-		}	    
-		// create a default evaluation context with default variable
-		// of the user selection or editor input
-		if (list == null) {
-		    list = Collections.EMPTY_LIST;
-		}
-		IEvaluationContext context = new EvaluationContext(null, list);
-		context.addVariable("selection", list); //$NON-NLS-1$
-		
-		return context;
-	}	
-	
-	private void fillMenu() {
-		IEvaluationContext context = createContext();
-		// gather all shortcuts and run their filters so that we only run the
-		// filters one time for each shortcut. Running filters can be expensive.
-		// Also, only *LOADED* plugins get their filters run.
-		List /* <LaunchShortcutExtension> */ allShortCuts = getLaunchConfigurationManager().getLaunchShortcuts(getLaunchGroup().getCategory());
-		Iterator iter = allShortCuts.iterator();
-		List filteredShortCuts = new ArrayList(10);
-		while (iter.hasNext()) {
-			LaunchShortcutExtension ext = (LaunchShortcutExtension) iter.next();
-			try {
-				if (!WorkbenchActivityHelper.filterItem(ext) && isApplicable(ext, context)) {
-					filteredShortCuts.add(ext);
-				}
-			} catch (CoreException e) {
-				// not supported
-			}
-		}
-		iter = filteredShortCuts.iterator();
-		int accelerator = 1;
-		while (iter.hasNext()) {
-			LaunchShortcutExtension ext = (LaunchShortcutExtension) iter.next();
-			Set modes = ext.getModes(); // supported launch modes
-			Iterator modeIter = modes.iterator();
-			while (modeIter.hasNext()) {
-				String mode = (String) modeIter.next();
-				if (mode.equals(getMode())) {
-					populateMenuItem(mode, ext, fCreatedMenu, accelerator++);
-				}
-			}
-		}
-		if (accelerator == 1) {
-			// No shortcuts added. Add "none available" action.
-			IAction action= new Action(ActionMessages.LaunchShortcutsAction_1) {}; //$NON-NLS-1$
-			action.setEnabled(false);
-			ActionContributionItem item= new ActionContributionItem(action);
-			item.fill(fCreatedMenu, -1);
-		}
-	}
-	
-	/**
-	 * Add the shortcut to the context menu's launch submenu.
-	 */
-	private void populateMenuItem(String mode, LaunchShortcutExtension ext, Menu menu, int accelerator) {
-		LaunchShortcutAction action = new LaunchShortcutAction(mode, ext);
-		action.setActionDefinitionId(ext.getId() + "." + mode); //$NON-NLS-1$
-		String helpContextId = ext.getHelpContextId();
-		if (helpContextId != null) {
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(action, helpContextId);
-		}
-		StringBuffer label= new StringBuffer();
-		if (accelerator >= 0 && accelerator < 10) {
-			//add the numerical accelerator
-			label.append('&');
-			label.append(accelerator);
-			label.append(' ');
-		}
-		String contextLabel= ext.getContextLabel(mode);
-		// replace default action label with context label if specified.
-		label.append((contextLabel != null) ? contextLabel : action.getText());
-		action.setText(label.toString());
-		ActionContributionItem item= new ActionContributionItem(action);
-		item.fill(menu, -1);
-	}
-	
-	/**
-	 * Evaluate the enablement logic in the contextualLaunch
-	 * element description. A true result means that we should
-	 * include this shortcut in the context menu.
-	 * @return true iff shortcut should appear in context menu
-	 */
-	private boolean isApplicable(LaunchShortcutExtension ext, IEvaluationContext context) throws CoreException {
-		Expression expr = ext.getContextualLaunchEnablementExpression();
-		return ext.evalEnablementExpression(context, expr);
-	}
-	
-	/**
-	 * Creates the menu for the action
-	 */
-	private void initMenu() {
-		// Add listener to repopulate the menu each time
-		// it is shown to reflect changes in selection or active perspective
-		fCreatedMenu.addMenuListener(new MenuAdapter() {
-			public void menuShown(MenuEvent e) {
-				Menu m = (Menu)e.widget;
-				MenuItem[] items = m.getItems();
-				for (int i=0; i < items.length; i++) {
-					items[i].dispose();
-				}
-				fillMenu();
-			}
-		});
-	}
-		
-	/**
-	 * Returns the mode of this action - run or debug 
-	 * 
-	 * @return the mode of this action - run or debug
-	 */
-	private String getMode() {
-		return getLaunchGroup().getMode();
-	}
-	
-	private Menu getCreatedMenu() {
-		return fCreatedMenu;
-	}
-	
-	private void setCreatedMenu(Menu createdMenu) {
-		fCreatedMenu = createdMenu;
-	}
-	
-	/**
-	 * Returns the launch configuration manager.
-	 *
-	 * @return launch configuration manager
-	 */
-	private LaunchConfigurationManager getLaunchConfigurationManager() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager();
-	}	
-	
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		// do nothing - this is just a menu
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-	    if (!fInitialized) {
-	        action.setEnabled(existsConfigTypesForMode());
-	        fInitialized = true;
-	    }
-	}
-
-	/**
-	 * Return whether there are any registered launch configuration types for
-	 * the mode of this action.
-	 * 
-	 * @return whether there are any registered launch configuration types for
-	 * the mode of this action
-	 */
-	private boolean existsConfigTypesForMode() {
-		ILaunchConfigurationType[] configTypes = DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurationTypes();
-		for (int i = 0; i < configTypes.length; i++) {
-			ILaunchConfigurationType configType = configTypes[i];
-			if (configType.supportsMode(getMode())) {
-				return true;
-			}
-		}		
-		return false;
-	}
-}
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/OpenLaunchDialogAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/OpenLaunchDialogAction.java
deleted file mode 100644
index 8c38edc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/OpenLaunchDialogAction.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationType;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchGroupExtension;
-import org.eclipse.debug.internal.ui.launchConfigurations.LaunchHistory;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.jface.viewers.StructuredSelection;
-import org.eclipse.jface.window.Window;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * Opens the launch configuration dialog in the context of a launch group.
- * <p>
- * Clients are not intended to subclass this class; clients may instantiate this
- * class.
- * </p>
- * @since 2.1
- */
-public class OpenLaunchDialogAction extends Action implements IWorkbenchWindowActionDelegate {
-
-	/**
-	 * Launch group identifier
-	 */
-	private String fIdentifier;
-	
-	/**
-	 * The action used to render this delegate.
-	 */
-	private IAction fAction;	
-	
-	/**
-	 * Constructs an action that opens the launch configuration dialog in
-	 * the context of the specified launch group.
-	 * 
-	 * @param identifier unique identifier of a launch group extension
-	 */
-	public OpenLaunchDialogAction(String identifier) {
-		fIdentifier = identifier;
-		LaunchGroupExtension extension = DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroup(identifier);
-		if (extension != null) {
-			setText(extension.getLabel() + "..."); //$NON-NLS-1$
-			setImageDescriptor(extension.getImageDescriptor());
-		}
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugHelpContextIds.OPEN_LAUNCH_CONFIGURATION_ACTION);
-	}
-
-	/**
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		LaunchHistory history = DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchHistory(fIdentifier);
-		ILaunchConfiguration configuration = history.getRecentLaunch();
-		IStructuredSelection selection = null;
-		if (configuration == null) {
-			selection = new StructuredSelection();
-		} else {
-			selection = new StructuredSelection(configuration);
-		}
-		int result = DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUIPlugin.getShell(), selection, fIdentifier);
-		notifyResult(result == Window.OK);
-	}
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#dispose()
-	 */
-	public void dispose() {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IWorkbenchWindowActionDelegate#init(org.eclipse.ui.IWorkbenchWindow)
-	 */
-	public void init(IWorkbenchWindow window) {
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		run();
-	}
-
-	/**
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		if (fAction == null) {
-			initialize(action);
-		} 		
-	}
-	
-	/**
-	 * Set the enabled state of the underlying action based on whether there are any
-	 * registered launch configuration types that understand how to launch in the
-	 * mode of this action.
-	 */
-	private void initialize(IAction action) {
-		fAction = action;
-		action.setEnabled(existsConfigTypesForMode());	
-	}	
-
-	/**
-	 * Return whether there are any registered launch configuration types for
-	 * the mode of this action.
-	 * 
-	 * @return whether there are any registered launch configuration types for
-	 * the mode of this action
-	 */
-	private boolean existsConfigTypesForMode() {
-		ILaunchConfigurationType[] configTypes = DebugPlugin.getDefault().getLaunchManager().getLaunchConfigurationTypes();
-		for (int i = 0; i < configTypes.length; i++) {
-			ILaunchConfigurationType configType = configTypes[i];
-			if (configType.supportsMode(getMode())) {
-				return true;
-			}
-		}		
-		return false;
-	}
-	
-	/**
-	 * Returns the launch mode for this action.
-	 * 
-	 * @return launch mode
-	 */
-	private String getMode() {
-		return DebugUIPlugin.getDefault().getLaunchConfigurationManager().getLaunchGroup(fIdentifier).getMode();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RulerToggleBreakpointActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RulerToggleBreakpointActionDelegate.java
deleted file mode 100644
index b38d459..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RulerToggleBreakpointActionDelegate.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.swt.widgets.Event;
-
-import org.eclipse.jface.action.IAction;
-
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.texteditor.AbstractRulerActionDelegate;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Toggles a breakpoint when ruler is double-clicked. This action delegate can be 
- * contributed to an editor with the <code>editorActions</code> extension point.
- * This action is as a factory that creates another action that performs the
- * actual breakpoint toggling. The created action acts on the editor's
- * <code>IToggleBreakpointsTagret</code> to toggle breakpoints.
- * <p>
- * Following is example plug-in XML used to contribute this action to an editor.
- * Note that the label attribute of this action is not displayed in the editor.
- * Instead, the label of the created action is displayed. 
- * <pre>
- * &lt;extension point="org.eclipse.ui.editorActions"&gt;
- *    &lt;editorContribution
- *          targetID="example.editor"
- *          id="example.rulerActions"&gt;
- *       &lt;action
- *             label="Not Used"
- *             class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
- *             style="push"
- *             actionID="RulerDoubleClick"
- *             id="example.doubleClickBreakpointAction"/&gt;
- *    &lt;/editorContribution&gt;
- * &lt;/extension&gt;
- * </pre>
- * </p>
- * <p>
- * This action can also be contributed to a vertical ruler context menu via the
- * <code>popupMenus</code> extension point, by referencing the ruler's context
- * menu identifier in the <code>targetID</code> attribute.
- * <pre>
- * &lt;extension point="org.eclipse.ui.popupMenus"&gt;
- *   &lt;viewerContribution
- *     targetID="example.rulerContextMenuId"
- *     id="example.RulerPopupActions"&gt;
- *       &lt;action
- *         label="Toggle Breakpoint"
- *         class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
- *         menubarPath="additions"
- *         id="example.rulerContextMenu.toggleBreakpointAction"&gt;
- *       &lt;/action&gt;
- *   &lt;/viewerContribution&gt;
- * </pre>
- * </p>
- * <p>
- * Clients may refer to this class as an action delegate in plug-in XML. This class
- * is not intended to be subclassed.
- * </p>
- * @since 3.1
- */
-public class RulerToggleBreakpointActionDelegate extends AbstractRulerActionDelegate implements IActionDelegate2 {
-	
-	private IEditorPart fEditor = null;
-	private ToggleBreakpointAction fDelegate = null;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.AbstractRulerActionDelegate#createAction(org.eclipse.ui.texteditor.ITextEditor, org.eclipse.jface.text.source.IVerticalRulerInfo)
-	 */
-	protected IAction createAction(ITextEditor editor, IVerticalRulerInfo rulerInfo) {
-		fDelegate = new ToggleBreakpointAction(editor, null, rulerInfo);
-		return fDelegate;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IEditorActionDelegate#setActiveEditor(org.eclipse.jface.action.IAction, org.eclipse.ui.IEditorPart)
-	 */
-	public void setActiveEditor(IAction callerAction, IEditorPart targetEditor) {
-		if (fEditor != null) {
-			if (fDelegate != null) {
-				fDelegate.dispose();
-				fDelegate = null;
-			}
-		}
-		fEditor = targetEditor;
-		super.setActiveEditor(callerAction, targetEditor);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#dispose()
-	 */
-	public void dispose() {
-		if (fDelegate != null) {
-			fDelegate.dispose();
-		}
-		fDelegate = null;
-		fEditor = null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-	 */
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunAction.java
deleted file mode 100644
index 9ef2847..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunAction.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.internal.ui.actions.ExecutionAction;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Action to launch the last launch configuration that was successfully
- * launched, in run mode. If no configurations have been launched, the launch
- * configuration dialog is opened.
- * </p>
- * <p>
- * This class is not intended to be subclassed. This class may
- * be instantiated.
- * </p>
- * @since 2.0
- */
-public final class RunAction extends ExecutionAction {
-	
-	public RunAction() {
-		super(IDebugUIConstants.ID_RUN_LAUNCH_GROUP);
-	}
-
-	/**
-	 * @see ExecutionAction#getMode()
-	 */
-	protected String getMode() {
-		return ILaunchManager.RUN_MODE;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineActionDelegate.java
deleted file mode 100644
index 1c0c694..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineActionDelegate.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *     Mikhail Khodjaiants (QNX) - https://bugs.eclipse.org/bugs/show_bug.cgi?id=83464
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdapterManager;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.actions.ActionMessages;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.ui.IActionDelegate2;
-import org.eclipse.ui.IEditorActionDelegate;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.ISelectionListener;
-import org.eclipse.ui.IViewActionDelegate;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartSite;
-
-/**
- * A run to line action that can be contributed to a an editor or view. The action
- * will perform the "run to line" operation for parts that provide
- * an appropriate <code>IRunToLineTarget</code> adapter.
- * <p>
- * Clients may reference/contribute this class as an action delegate
- * in plug-in XML. This class is not intended to be subclassed.
- * </p>
- * <p>
- * Since 3.1, this action also implements {@link org.eclipse.ui.IViewActionDelegate}.
- * </p>
- * @since 3.0
- */
-public class RunToLineActionDelegate implements IEditorActionDelegate, IActionDelegate2, IViewActionDelegate {
-	
-	private IWorkbenchPart fActivePart = null;
-	private IRunToLineTarget fPartTarget = null;
-	private IAction fAction = null;
-	private ISelectionListener fSelectionListener = new DebugSelectionListener();
-	private ISuspendResume fTargetElement = null;
-	
-	class DebugSelectionListener implements ISelectionListener {
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.ISelectionListener#selectionChanged(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-		 */
-		public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-			fTargetElement = null;
-			if (selection instanceof IStructuredSelection) {
-				IStructuredSelection ss = (IStructuredSelection) selection;
-				if (ss.size() == 1) {
-					Object object = ss.getFirstElement();
-					if (object instanceof ISuspendResume) {
-						fTargetElement = (ISuspendResume) object;
-					}
-				}
-			}
-			update();
-		}
-		
-	}
-	
-	/*(non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#dispose()
-	 */
-	public void dispose() {
-		fActivePart.getSite().getWorkbenchWindow().getSelectionService().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, fSelectionListener);
-		fActivePart = null;
-		fPartTarget = null;
-		
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
-	 */
-	public void run(IAction action) {
-		if (fPartTarget != null && fTargetElement != null) {
-			try {
-				fPartTarget.runToLine(fActivePart, fActivePart.getSite().getSelectionProvider().getSelection(), fTargetElement);
-			} catch (CoreException e) {
-				DebugUIPlugin.errorDialog(fActivePart.getSite().getWorkbenchWindow().getShell(), ActionMessages.RunToLineAction_0, ActionMessages.RunToLineAction_1, e.getStatus()); //$NON-NLS-1$ //$NON-NLS-2$
-			}
-		}
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction, org.eclipse.jface.viewers.ISelection)
-	 */
-	public void selectionChanged(IAction action, ISelection selection) {
-		this.fAction = action;
-		update();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		if (fAction == null) {
-			return;
-		}
-		boolean enabled = false;
-		if (fPartTarget != null && fTargetElement != null) {
-			IWorkbenchPartSite site = fActivePart.getSite();
-			if (site != null) {
-			    ISelectionProvider selectionProvider = site.getSelectionProvider();
-			    if (selectionProvider != null) {
-			        ISelection selection = selectionProvider.getSelection();
-			        enabled = fTargetElement.isSuspended() && fPartTarget.canRunToLine(fActivePart, selection, fTargetElement);
-			    }
-			}
-		}
-		fAction.setEnabled(enabled);
-	}
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#init(org.eclipse.jface.action.IAction)
-	 */
-	public void init(IAction action) {
-		this.fAction = action; 
-		if (action != null) {
-			action.setText(ActionMessages.RunToLineActionDelegate_4); //$NON-NLS-1$
-			action.setImageDescriptor(DebugUITools.getImageDescriptor(IInternalDebugUIConstants.IMG_LCL_RUN_TO_LINE));
-			action.setDisabledImageDescriptor(DebugUITools.getImageDescriptor(IInternalDebugUIConstants.IMG_DLCL_RUN_TO_LINE));
-		}
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IActionDelegate2#runWithEvent(org.eclipse.jface.action.IAction, org.eclipse.swt.widgets.Event)
-	 */
-	public void runWithEvent(IAction action, Event event) {
-		run(action);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IEditorActionDelegate#setActiveEditor(org.eclipse.jface.action.IAction, org.eclipse.ui.IEditorPart)
-	 */
-	public void setActiveEditor(IAction action, IEditorPart targetEditor) {
-		init(action);
-		bindTo(targetEditor);	
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
-	 */
-	public void init(IViewPart view) {
-		bindTo(view);
-	}
-	
-	/**
-	 * Binds this action to operate on the given part's run to line adapter.
-	 *  
-	 * @param part
-	 */
-	private void bindTo(IWorkbenchPart part) {
-		if (fActivePart != null && !fActivePart.equals(part)) {
-			fActivePart.getSite().getWorkbenchWindow().getSelectionService().removeSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, fSelectionListener);
-		}
-		fPartTarget = null;
-		fActivePart = part;
-		if (part != null) {
-			part.getSite().getWorkbenchWindow().getSelectionService().addSelectionListener(IDebugUIConstants.ID_DEBUG_VIEW, fSelectionListener);
-			fPartTarget  = (IRunToLineTarget) part.getAdapter(IRunToLineTarget.class);
-			if (fPartTarget == null) {
-				IAdapterManager adapterManager = Platform.getAdapterManager();
-				// TODO: we could restrict loading to cases when the debugging context is on
-				if (adapterManager.hasAdapter(part, IRunToLineTarget.class.getName())) {
-					fPartTarget = (IRunToLineTarget) adapterManager.loadAdapter(part, IRunToLineTarget.class.getName());
-				}
-			}
-			ISelection selection = part.getSite().getWorkbenchWindow().getSelectionService().getSelection(IDebugUIConstants.ID_DEBUG_VIEW);
-			fSelectionListener.selectionChanged(part, selection);
-		}
-		update();			
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineHandler.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineHandler.java
deleted file mode 100644
index 4cb9467..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/RunToLineHandler.java
+++ /dev/null
@@ -1,150 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.resources.IWorkspaceRunnable;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.IBreakpointManager;
-import org.eclipse.debug.core.IBreakpointManagerListener;
-import org.eclipse.debug.core.IDebugEventSetListener;
-import org.eclipse.debug.core.model.IBreakpoint;
-import org.eclipse.debug.core.model.IDebugTarget;
-import org.eclipse.debug.core.model.ISuspendResume;
-import org.eclipse.debug.core.model.IThread;
-import org.eclipse.debug.internal.ui.actions.ActionMessages;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Handles a run to line operation. Clients implementing a run to line action
- * can use this handler to carry out a run to line operation implemented with 
- * a breakpoint. Handles the user preference to skip breakpoints while performing
- * a run to line operation, and cancelling the run to line operation if another
- * breakpoint is encountered before the operation is completed. 
- * <p>
- * Clients may instantiate this class. This class is not intended to be subclassed.
- * </p>
- * @since 3.1
- */
-public class RunToLineHandler implements IDebugEventSetListener, IBreakpointManagerListener, IWorkspaceRunnable {
-    
-    private IDebugTarget fTarget;
-    private ISuspendResume fResumee;
-    private IBreakpoint fBreakpoint;
-    private boolean fAutoSkip = false;
-    
-    /**
-     * Constructs a handler to perform a run to line operation.
-     * 
-     * @param target the debug target in which the operation is to be performed
-     * @param suspendResume the element to be resumed to begin the operation
-     * @param breakpoint the run to line breakpoint
-     */
-    public RunToLineHandler(IDebugTarget target, ISuspendResume suspendResume, IBreakpoint breakpoint) {
-        fResumee = suspendResume;
-        fTarget = target;
-        fBreakpoint = breakpoint;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[])
-     */
-    public void handleDebugEvents(DebugEvent[] events) {
-        for (int i = 0; i < events.length; i++) {
-            DebugEvent event= events[i];
-            Object source= event.getSource();
-            if (source instanceof IThread && event.getKind() == DebugEvent.SUSPEND &&
-                    event.getDetail() == DebugEvent.BREAKPOINT) {
-                IThread thread = (IThread) source;
-                IDebugTarget suspendee = (IDebugTarget) thread.getAdapter(IDebugTarget.class);
-                if (fTarget.equals(suspendee)) {
-                    // cleanup if the breakpoint was hit or not
-                    cancel();
-                }
-            } else if (source instanceof IDebugTarget && event.getKind() == DebugEvent.TERMINATE) {
-                if (source.equals(fTarget)) {
-                    // Clean up if the debug target terminates without
-                    // hitting the breakpoint.
-                    cancel();
-                }
-            }
-        }
-        
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.debug.core.IBreakpointManagerListener#breakpointManagerEnablementChanged(boolean)
-     */
-    public void breakpointManagerEnablementChanged(boolean enabled) {
-        // if the user changes the breakpoint manager enablement, don't restore it
-        fAutoSkip = false;
-    }
-    
-    private IBreakpointManager getBreakpointManager() {
-        return getDebugPlugin().getBreakpointManager();
-    }
-    
-    private DebugPlugin getDebugPlugin() {
-        return DebugPlugin.getDefault();
-    }
-    
-    /**
-     * Cancels the run to line operation.
-     */
-    public void cancel() {
-        IBreakpointManager manager = getBreakpointManager();
-        try {
-            getDebugPlugin().removeDebugEventListener(this);
-            manager.removeBreakpointManagerListener(this);
-            fTarget.breakpointRemoved(fBreakpoint, null);
-        } finally {
-            if (fAutoSkip) {
-                manager.setEnabled(true);
-            }
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.resources.IWorkspaceRunnable#run(org.eclipse.core.runtime.IProgressMonitor)
-     */
-    public void run(IProgressMonitor monitor) throws CoreException {
-        getDebugPlugin().addDebugEventListener(this);
-        IBreakpointManager breakpointManager = getBreakpointManager();
-        fAutoSkip = DebugUITools.getPreferenceStore().getBoolean(IDebugUIConstants.PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE) && breakpointManager.isEnabled();
-        if (fAutoSkip) {
-            getBreakpointManager().setEnabled(false);
-            breakpointManager.addBreakpointManagerListener(this);
-        }
-        Job job = new Job(ActionMessages.RunToLineHandler_0) { //$NON-NLS-1$
-            protected IStatus run(IProgressMonitor jobMonitor) {
-                if (!jobMonitor.isCanceled()) {
-                    fTarget.breakpointAdded(fBreakpoint);
-                    try {
-                        fResumee.resume();
-                    } catch (DebugException e) {
-                        cancel();
-                        return e.getStatus();
-                    }
-                }
-                return Status.OK_STATUS;
-            }  
-        };
-        job.schedule();
-    }
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleBreakpointAction.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleBreakpointAction.java
deleted file mode 100644
index 7e6ac0d..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleBreakpointAction.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.actions.ActionMessages;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITextSelection;
-import org.eclipse.jface.text.TextSelection;
-import org.eclipse.jface.text.source.IVerticalRulerInfo;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * Action to toggle a breakpoint in a vertical ruler of a workbench part
- * containing a document. The part must provide an <code>IToggleBreakpointsTarget</code>
- * adapter which may optionally be an instance of an
- * <code>IToggleBreakpointsTargetExtension</code>.
- * <p>
- * Clients may instantiate this class. This class is not intended to be subclassed.
- * </p>
- * @since 3.1
- * @see org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate
- */
-public class ToggleBreakpointAction extends Action {
-	
-	private IWorkbenchPart fPart;
-	private IDocument fDocument;
-	private IVerticalRulerInfo fRulerInfo;
-
-	/**
-	 * Constructs a new action to toggle a breakpoint in the given
-	 * part containing the given document and ruler.
-	 * 
-	 * @param part the part in which to toggle the breakpoint - provides
-	 *  an <code>IToggleBreakpointsTarget</code> adapter
-	 * @param document the document breakpoints are being set in or 
-	 * <code>null</code> when the document should be derived from the
-	 * given part
-	 * @param rulerInfo specifies location the user has double-clicked 
-	 */
-	public ToggleBreakpointAction(IWorkbenchPart part, IDocument document, IVerticalRulerInfo rulerInfo) {
-		super(ActionMessages.ToggleBreakpointAction_0); //$NON-NLS-1$
-		fPart = part;
-		fDocument = document;
-		fRulerInfo = rulerInfo;
-	}
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		IDocument document= getDocument();
-		if (document == null) {
-			return;
-		}
-		IToggleBreakpointsTarget adapter = (IToggleBreakpointsTarget) fPart.getAdapter(IToggleBreakpointsTarget.class);
-		int line = fRulerInfo.getLineOfLastMouseButtonActivity();
-		try {
-			IRegion region = document.getLineInformation(line);
-			ITextSelection selection = new TextSelection(document, region.getOffset(), 0);
-			if (adapter instanceof IToggleBreakpointsTargetExtension) {
-				IToggleBreakpointsTargetExtension extension = (IToggleBreakpointsTargetExtension) adapter;
-				if (extension.canToggleBreakpoints(fPart, selection)) {
-					extension.toggleBreakpoints(fPart, selection);
-					return;
-				}
-			}
-			if (adapter.canToggleLineBreakpoints(fPart, selection)) {
-				adapter.toggleLineBreakpoints(fPart, selection);
-			} else if (adapter.canToggleWatchpoints(fPart, selection)) {
-				adapter.toggleWatchpoints(fPart, selection);
-			} else if (adapter.canToggleMethodBreakpoints(fPart, selection)) {
-				adapter.toggleMethodBreakpoints(fPart, selection);
-			}
-		} catch (BadLocationException e) {
-			reportException(e);
-		} catch (CoreException e) {
-			reportException(e);
-		}
-	}
-	
-	/**
-	 * Report an error to the user.
-	 * 
-	 * @param e underlying exception
-	 */
-	private void reportException(Exception e) {
-		DebugUIPlugin.errorDialog(fPart.getSite().getShell(), ActionMessages.ToggleBreakpointAction_1, ActionMessages.ToggleBreakpointAction_2, e); //$NON-NLS-1$ //$NON-NLS-2$
-	}
-	
-	/**
-	 * Disposes this action. Clients must call this method when
-	 * this action is no longer needed.
-	 */
-	public void dispose() {
-		fDocument = null;
-		fPart = null;
-		fRulerInfo = null;
-	}
-
-	/**
-	 * Returns the document on which this action operates.
-	 * 
-	 * @return the document or <code>null</null> if none
-	 */
-	private IDocument getDocument() {
-		if (fDocument != null)
-			return fDocument;
-		
-		if (fPart instanceof ITextEditor) {
-			ITextEditor editor= (ITextEditor)fPart;
-			IDocumentProvider provider = editor.getDocumentProvider();
-			if (provider != null)
-				return provider.getDocument(editor.getEditorInput());
-		}
-		
-		IDocument doc = (IDocument) fPart.getAdapter(IDocument.class);
-		if (doc != null) {
-			return doc;
-		}
-		
-		return null;
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleMethodBreakpointActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleMethodBreakpointActionDelegate.java
deleted file mode 100644
index 8d55566..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleMethodBreakpointActionDelegate.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.actions.ToggleBreakpointObjectActionDelegate;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * A toggle method breakpoint action that can be contributed an object
- * contribution. The action will toggle method breakpoints on objects
- * that provide an <code>IToggleBreakpointsTarget</code> adapter.
- * <p>
- * Clients may reference/contribute this class as an object contribution
- * action delegate in plug-in XML. This class is not intended to be
- * subclassed.
- * </p>
- * @since 3.0
- */
-public class ToggleMethodBreakpointActionDelegate extends ToggleBreakpointObjectActionDelegate {
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.ToggleBreakpointObjectActionDelegate#performAction(org.eclipse.debug.internal.ui.actions.IToggleBreakpointsTarget, org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	protected void performAction(IToggleBreakpointsTarget target, IWorkbenchPart part, ISelection selection) throws CoreException {
-		target.toggleMethodBreakpoints(part, selection);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleWatchpointActionDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleWatchpointActionDelegate.java
deleted file mode 100644
index 2740566..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/ToggleWatchpointActionDelegate.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.actions;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.debug.internal.ui.actions.ToggleBreakpointObjectActionDelegate;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-
-/**
- * A toggle watchpoint action that can be contributed an object
- * contribution. The action will toggle watchpoints on objects
- * that provide an <code>IToggleBreakpointsTarget</code> adapter.
- * <p>
- * Clients may reference/contribute this class as an object contribution
- * action delegate in plug-in XML. This class is not intended to be
- * subclassed.
- * </p>
- * @since 3.0
- */
-public class ToggleWatchpointActionDelegate extends ToggleBreakpointObjectActionDelegate {
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.actions.ToggleBreakpointObjectActionDelegate#performAction(org.eclipse.debug.internal.ui.actions.IToggleBreakpointsTarget, org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
-	 */
-	protected void performAction(IToggleBreakpointsTarget target, IWorkbenchPart part, ISelection selection) throws CoreException {
-		target.toggleWatchpoints(part, selection);
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/package.html b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/package.html
deleted file mode 100644
index ea275ff..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/actions/package.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Debug UI Actions</title>
-</head>
-
-<body link="#0000FF" vlink="#800080">
-
-<p align="left">Provides a set of actions related to running and debugging applications.</p>
-
-<h2 align="left">Package Specification</h2>
-
-<p>This package provides a set of actions related to running and debugging applications.</p>
-</body>
-</html>
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/ConsoleColorProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/ConsoleColorProvider.java
deleted file mode 100644
index 23a5355..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/ConsoleColorProvider.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.console;
-
-
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStreamsProxy;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.swt.graphics.Color;
-
-/**
- * Default console color provider for a processs. Colors output to standard
- * out, in, and error, as specified by user preferences.
- * <p>
- * Clients implementing a console color provider should subclass this class.
- * </p>
- * @since 2.1
- */
-public class ConsoleColorProvider implements IConsoleColorProvider {
-
-	private IProcess fProcess;
-	private IConsole fConsole;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.console.IConsoleColorProvider#connect(org.eclipse.debug.core.model.IProcess, org.eclipse.debug.ui.console.IConsole)
-	 */
-	public void connect(IProcess process, IConsole console) {
-		fProcess = process;
-		fConsole = console;
-		IStreamsProxy streamsProxy = fProcess.getStreamsProxy();
-		if (streamsProxy != null) { 
-			fConsole.connect(streamsProxy);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.console.IConsoleColorProvider#disconnect()
-	 */
-	public void disconnect() {
-		fConsole = null;
-		fProcess = null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.console.IConsoleColorProvider#isReadOnly()
-	 */
-	public boolean isReadOnly() {
-		return fProcess == null || fProcess.isTerminated();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.console.IConsoleColorProvider#getColor(java.lang.String)
-	 */
-	public Color getColor(String streamIdentifer) {
-		if (IDebugUIConstants.ID_STANDARD_OUTPUT_STREAM.equals(streamIdentifer)) {
-			return DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.CONSOLE_SYS_OUT_COLOR);
-		}
-		if (IDebugUIConstants.ID_STANDARD_ERROR_STREAM.equals(streamIdentifer)) {
-			return DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.CONSOLE_SYS_ERR_COLOR);
-		}		
-		if (IDebugUIConstants.ID_STANDARD_INPUT_STREAM.equals(streamIdentifer)) {
-			return DebugUIPlugin.getPreferenceColor(IDebugPreferenceConstants.CONSOLE_SYS_IN_COLOR);
-		}		
-		return null;
-	}
-
-	/**
-	 * Returns the process this color provider is providing color for, or
-	 * <code>null</code> if none.
-	 * 
-	 * @return the process this color provider is providing color for, or
-	 * <code>null</code> if none
-	 */
-	protected IProcess getProcess() {
-		return fProcess;
-	}
-	
-	/**
-	 * Returns the console this color provider is connected to, or
-	 * <code>null</code> if none.
-	 * 
-	 * @return IConsole the console this color provider is connected to, or
-	 * <code>null</code> if none
-	 */
-	protected IConsole getConsole() {
-		return fConsole;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/FileLink.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/FileLink.java
deleted file mode 100644
index a2633c4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/FileLink.java
+++ /dev/null
@@ -1,150 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.console;
-
-
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.content.IContentDescription;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.ui.IEditorDescriptor;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IEditorRegistry;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.part.FileEditorInput;
-import org.eclipse.ui.texteditor.IDocumentProvider;
-import org.eclipse.ui.texteditor.ITextEditor;
-
-/**
- * A hyperlink that opens a file in a text editor and selects a range of text.
- * <p>
- * This class is not intended to be subclassed; clients may instantiate this
- * class.
- * </p>
- * @since 2.1
- */
-public class FileLink implements IConsoleHyperlink {
-
-	private IFile fFile;
-	private int fFileOffset;
-	private int fFileLength;
-	private int fFileLineNumber;
-	private String fEditorId;
-	
-	/**
-	 * Constructs a hyperlink to the specified file.
-	 * 
-	 * @param file the file to open when activated
-	 * @param editorId the identifier of the editor to open the file in, or
-	 * <code>null</code> if the default editor should be used
-	 * @param fileOffset the offset in the file to select when activated, or -1
-	 * @param fileLength the length of text to select in the file when activated
-	 * or -1
-	 * @param fileLineNumber the line number to select in the file when
-	 * activated, or -1
-	 */
-	public FileLink(IFile file, String editorId, int fileOffset, int fileLength, int fileLineNumber) {
-		fFile = file;
-		fFileOffset = fileOffset;
-		fFileLength = fileLength;
-		fFileLineNumber = fileLineNumber;
-		fEditorId = editorId;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.console.IConsoleHyperlink#linkActivated()
-	 */
-	public void linkActivated() {
-		IWorkbenchWindow window = DebugUIPlugin.getActiveWorkbenchWindow();
-		if (window != null) {
-			IWorkbenchPage page = window.getActivePage();
-			if (page != null) {
-				try {
-					IEditorPart editorPart = page.openEditor(new FileEditorInput(fFile), getEditorId() , false);
-					if (fFileLineNumber > 0 && editorPart instanceof ITextEditor) {
-						ITextEditor textEditor = (ITextEditor)editorPart;
-						IEditorInput input = editorPart.getEditorInput();
-						if (fFileOffset < 0) {
-							IDocumentProvider provider = textEditor.getDocumentProvider();
-							try {
-								provider.connect(input);
-							} catch (CoreException e) {
-								// unable to link
-								DebugUIPlugin.log(e);
-								return;
-							}
-							IDocument document = provider.getDocument(input);
-							try {
-                                IRegion region= document.getLineInformation(fFileLineNumber - 1);
-								fFileOffset = region.getOffset();
-								fFileLength = region.getLength();
-							} catch (BadLocationException e) {
-								// unable to link
-								DebugUIPlugin.log(e);
-							}
-							provider.disconnect(input);
-						}
-						if (fFileOffset >= 0 && fFileLength >=0) {
-							textEditor.selectAndReveal(fFileOffset, fFileLength);
-						}
-					}
-				} catch (PartInitException e) {
-					DebugUIPlugin.log(e);
-				}	
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.console.IConsoleHyperlink#linkEntered()
-	 */
-	public void linkEntered() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.console.IConsoleHyperlink#linkExited()
-	 */
-	public void linkExited() {
-	}
-	
-	private String getEditorId() {
-		if (fEditorId == null) {
-			IWorkbench workbench= DebugUIPlugin.getDefault().getWorkbench();
-			// If there is a registered editor for the file use it.
-			IEditorDescriptor desc = workbench.getEditorRegistry().getDefaultEditor(fFile.getName(), getFileContentType());
-			if (desc == null) {
-				//default editor
-				desc= workbench.getEditorRegistry().findEditor(IEditorRegistry.SYSTEM_EXTERNAL_EDITOR_ID);
-			}
-			fEditorId= desc.getId();
-		}
-		return fEditorId;
-	}
-
-    private IContentType getFileContentType() {
-        try {
-            IContentDescription description= fFile.getContentDescription();
-            if (description != null) {
-                return description.getContentType();
-            }
-        } catch (CoreException e) {
-        }
-        return null;
-    }
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsole.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsole.java
deleted file mode 100644
index 283296b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsole.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.console;
-
-
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.debug.core.model.IStreamMonitor;
-import org.eclipse.debug.core.model.IStreamsProxy;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.ui.console.IHyperlink;
-import org.eclipse.ui.console.IOConsoleOutputStream;
-import org.eclipse.ui.console.IPatternMatchListener;
-
-/**
- * A console that displays output and writes input to a process. Implementors of
- * <code>IConsoleColorProvider</code> should connect streams to a console
- * document when connected to.
- * <p>
- * Clients are <b>not</b> intended to implement this interface.
- * </p>
- * @see org.eclipse.debug.ui.console.IConsoleColorProvider
- * @since 2.1
- */
-public interface IConsole {
-
-	/**
-	 * Connects this console to the given streams proxy. This associates the
-	 * standard in, out, and error streams with the console. Keyboard input will
-	 * be written to the given proxy.
-	 * 
-	 * @param streamsProxy
-	 */
-	public void connect(IStreamsProxy streamsProxy);
-	
-	/**
-	 * Connects this console to the given stream monitor, uniquely identified by
-	 * the given identifier. This allows for more than the standard (in, out,
-	 * error) streams to be connected to the console.
-	 * 
-	 * @param streamMonitor
-	 * @param streamIdentifer
-	 */
-	public void connect(IStreamMonitor streamMonitor, String streamIdentifer);
-	
-	/**
-	 * Adds the given hyperlink to this console. The link will be notified when
-	 * entered, exited, and activated.
-	 * <p>
-	 * If the link's region (offset/length) is within the console's document
-	 * current bounds, it is added immediately. Otherwise, the link is added
-	 * when the console's document grows to contain the link's region.
-	 * </p>
-	 * @param link the hyperlink to add 
-	 * @param offset the character offset within the console document where the
-	 * text assoicated with the hyperlink begins
-	 * @param length the length of the associated hyperlink text
-	 * @deprecated replaced with addLink(IHyperlink link, int offset, int length)
-	 */
-	public void addLink(IConsoleHyperlink link, int offset, int length);
-
-	/**
-	 * Adds the given hyperlink to this console. The link will be notified when
-	 * entered, exited, and activated.
-	 * <p>
-	 * If the link's region (offset/length) is within the console's document
-	 * current bounds, it is added immediately. Otherwise, the link is added
-	 * when the console's document grows to contain the link's region.
-	 * </p>
-	 * @param link the hyperlink to add 
-	 * @param offset the character offset within the console document where the
-	 * text assoicated with the hyperlink begins
-	 * @param length the length of the associated hyperlink text
-	 * @since 3.1
-	 */
-	public void addLink(IHyperlink link, int offset, int length);
-	
-	/**
-	 * Returns the region of text associated with the given hyperlink, or
-	 * <code>null</code> if the given hyperlink is not contained in this
-	 * console.
-	 * 
-	 * @param link a console hyperlink
-	 * @return region of text associated with the hyperlink, or <code>null</code>
-	 * @deprecated replaced with getRegion(IHyperlink link) instead
-	 */
-	public IRegion getRegion(IConsoleHyperlink link);
-
-	/**
-	 * Returns the region of text associated with the given hyperlink, or
-	 * <code>null</code> if the given hyperlink is not contained in this
-	 * console.
-	 * 
-	 * @param link a console hyperlink
-	 * @return region of text associated with the hyperlink, or <code>null</code>
-	 * @since 3.1
-	 */
-	public IRegion getRegion(IHyperlink link);
-	
-	/**
-	 * Returns the document associated with this console.
-	 * 
-	 * @return document
-	 */
-	public IDocument getDocument(); 
-	
-	/**
-	 * Returns the process associated with this console.
-	 * 
-	 * @return the process associated with this console
-	 */
-	public IProcess getProcess();
-	
-	/**
-	 * Adds the given pattern match listener to this console. The listener will
-     * be connected and receive match notifications.
-	 * @param matchListener the listener to add
-	 * @since 3.1
-	 */
-	public void addPatternMatchListener(IPatternMatchListener matchListener);
-	
-    /**
-     * Removes the given pattern match listener from this console. The listener will be
-     * disconnected and will no longer receive match notifications. 
-     * @param matchListener the pattern match listener to remove.
-     * @since 3.1
-     */
-	public void removePatternMatchListener(IPatternMatchListener matchListener);
-	
-	/**
-	 * Returns the stream associated with the specified stream identifier.
-     * @param streamIdentifier Uniquely identifies the required stream 
-     * @return The stream or <code>null</code> if none found with matching streamIdentifier
-     * @since 3.1
-     */
-	public IOConsoleOutputStream getStream(String streamIdentifier);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleColorProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleColorProvider.java
deleted file mode 100644
index 86b1bf8..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleColorProvider.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.console;
-
-
-import org.eclipse.debug.core.model.IProcess;
-import org.eclipse.swt.graphics.Color;
-
-/**
- * Provides coloring for a console document. When a process is added to a
- * registered launch the debug plug-in creates a console document for the
- * process. By default, a document is created which is connected to the standard
- * input, output, and error streams associated with the process. A client may
- * override the default coloring by specifying a custom content provider for a
- * process type. A proccess type is defined via the process attribute
- * <code>IProcess. ATTR_PROCESS_TYPE</code>.
- * <p>
- * A console color provider extension is defined in <code>plugin.xml</code>.
- * Following is an example definition of a console color
- * provider extension.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.consoleColorProviders"&gt;
- *   &lt;consoleColorProvider 
- *      id="com.example.ExampleConsoleColorProvider"
- *      class="com.example.ExampleConsoleColorProviderClass"
- *      processType="ExampleProcessType"&gt;
- *   &lt;/consoleColorProvider&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>id</code> specifies a unique identifier for this color provider.</li>
- * <li><code>class</code> specifies a fully qualified name of a Java class
- *  that implements <code>IConsoleColorProvider</code>.</li>
- * <li><code>processType</code> specifies the identifier of the process type
- * this content provider is associated with (which corresponds to the
- * <code>ATTR_PROCESS_TYPE</code> attribute on a process).</li>
- * </ul>
- * </p> 
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 2.1
- */
-
-public interface IConsoleColorProvider {
-
-	/**
-	 * Returns whether the console associated with this color provider's
-	 * process can currently accept keyboard input. This attribute is dynamic
-	 * and may change over the lifetime of a process/document.
-	 * 
-	 * @return whether the console associated with this color provider's
-	 * process can currently accept keyboard input
-	 */
-	public boolean isReadOnly();
-	
-	/**
-	 * Returns the color to draw output associated with the given stream.
-	 * 
-	 * @param streamIdentifer the identifier of the stream
-	 * @return Color
-	 */
-	public Color getColor(String streamIdentifer);
-	
-	/**
-	 * Connects this color provider to the given process and console.
-	 * This color provider should connect its streams to the given console
-	 * document.
-	 * 
-	 * @param process the process to connect this color provider to
-	 * @param console the console  to connect this color provider to
-	 */
-	public void connect(IProcess process, IConsole console);
-	
-	/**
-	 * Disconnects this color provider.
-	 */
-	public void disconnect();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleHyperlink.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleHyperlink.java
deleted file mode 100644
index b735fac..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleHyperlink.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.console;
-
-import org.eclipse.ui.console.IHyperlink;
-
-
-/**
- * A hyperlink in the console. Link behavior is implementation dependent.
- * <p>
- * Clients may implement this interface.
- * </p>
- * <p>
- * Since 3.1, this interface now extends {@link org.eclipse.ui.console.IHyperlink}.
- * </p>
- * @since 2.1
- * @deprecated replaced by org.eclipse.ui.console.IHyperlink
- */
-public interface IConsoleHyperlink extends IHyperlink {
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTracker.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTracker.java
deleted file mode 100644
index a518818..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTracker.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.console;
-
-
-import org.eclipse.jface.text.IRegion;
-
-/**
- * Notified of lines appended to the console. A line tracker is defined in
- * <code>plugin.xml</code>. A line tracker is associated with a type of
- * process. Following is an example definition of a console line tracker
- * extension.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.consoleLineTrackers"&gt;
- *   &lt;consoleLineTracker 
- *      id="com.example.ExampleConsoleLineTracker"
- *      class="com.example.ExampleConsoleLineTrackerClass"
- *      processType="ExampleProcessType"&gt;
- *   &lt;/consoleLineTracker&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>id</code> specifies a unique identifier for this line tracker.</li>
- * <li><code>class</code> specifies a fully qualified name of a Java class
- *  that implements <code>IConsoleLineTracker</code>.</li>
- * <li><code>processType</code> specifies the identifier of the process type
- * this line tracker is associated with (which corresponds to the
- * <code>ATTR_PROCESS_TYPE</code> attribute on a process).</li>
- * </ul>
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 2.1
- */
-public interface IConsoleLineTracker {
-	
-	/**
-	 * Notification that a console document has been created for which this
-	 * listener is registered. 
-	 *  
-	 * @param console console that has been created
-	 */
-	public void init(IConsole console);
-
-	/**
-	 * Notification that a line of text has been appended to the console. The
-	 * given region describes the offset and length of the line appended to the
-	 * console, excluding the line delimiter.
-	 * 
-	 * @param line region describing the offset and length of line appended to
-	 * the console, excluding the line delimiter
-	 */
-	public void lineAppended(IRegion line);
-	
-	/**
-	 * Disposes this console line tracker. 
-	 */
-	public void dispose();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTrackerExtension.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTrackerExtension.java
deleted file mode 100644
index e8c61ad..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/IConsoleLineTrackerExtension.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.console;
-
-/**
- * An extension to the console line tracker interface that console line
- * trackers may implement to be notified when output from the console is complete.
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IConsoleLineTrackerExtension extends IConsoleLineTracker {
-	
-	/**
-	 * Notification that all output streams connected to the console have been
-	 * closed. No more lines will be appended after this method is called.
-	 */
-	public void consoleClosed();
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/package.html b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/package.html
deleted file mode 100644
index 1e27d95..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/console/package.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Debug Console</title>
-</head>
-
-<body link="#0000FF" vlink="#800080">
-
-<p align="left">Provides a set of interfaces and classes for rendering and annotating text in the debug console.</p>
-
-<h2 align="left">Package Specification</h2>
-
-<p>This package provides a set interfaces and classses for coloring streams of 
-  text, parsing output, and creating hyperlinks in the debug console.</p>
-<h3>Coloring Console Output</h3>
-<p>A process may have standard input, output, and error streams associated with, 
-  as defined by <b>org.eclipse.debug.core.model.IProcess</b> 
-  and <b>org.eclipse.debug.core.model.IStreamsProxy</b>. 
-  When a process is registered with the debug plug-in, a document is created to 
-  display the output of that process, and to provide input to the process via 
-  the keyboard. A console document is displayed in the Console View. By default, 
-  the output, error, and input streams are rendered in colors specified by user 
-  preferences.</p>
-<p>A client can specialize coloring for a process's streams by defining an <b>IConsoleColorProvider</b> 
-  extension (using the <b>org.eclipse.debug.ui.consoleColorProviders</b> 
-  extension point). A console color provider is defined for a <i>type</i> of process. 
-  A process type is defined by the creator of a process, and is specified on an 
-  <b>IProcess</b> via the <b>ATTR_PROCESS_TYPE</b> 
-  attribute. When a process is registered with the debug plug-in, a console color 
-  provider associated with the process type is instantiated, and connected to 
-  the process (<b>IProcess</b>) and a 
-  console (<b>IConsole</b>). The console 
-  color provider then connects its streams to the console (<b>IConsole</b>), 
-  via the console methods <b>connect(IStreamsProxy)</b> 
-  and <b>connect(IStreamMonitor, String)</b>. 
-  The color provider will then be consulted to provide a color when the console 
-  needs to render output from a stream.</p>
-<h3>Parsing Console Output</h3>
-<p>A client can be notified of output appended to a process's console document, 
-  by defining an <b>IConsoleLineTracker</b> 
-  extension (using the <b>org.eclipse.debug.ui.consoleLineTrackers</b> 
-  extension point). A console line tracker is defined for a <i>type</i> of process. 
-  When a process is registered with the debug plug-in, a console document is created 
-  for that process, and output is appended to that document. As output is written 
-  to the document, each console line tracker extension defined for that process 
-  type is notified of output, line by line. This support is most commonly used 
-  to annotate output with hyperlinks.</p>
-</body>
-</html>
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRendering.java
deleted file mode 100644
index 713db84..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRendering.java
+++ /dev/null
@@ -1,324 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.internal.ui.views.memory.PropertyChangeNotifier;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.ListenerList;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelectionProvider;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.IWorkbenchActionConstants;
-
-/**
- * Abstract implementation of a memory rendering.
- * <p>
- * To contribute an action to a rendering, an <code>objectContribution</code> can
- * be used on a rendering implementation class itself using a 
- * <code>popupMenus</code> extension. Additionaly, the context menu created
- * by <code>createPopupMenu()</code> is registered with an identifier of this
- * rendering's container identifier. Actions may also be contributed to the
- * container's context menu specifically by using a  <code>viewerContribution</code>
- * on a <code>popupMenus</code> extension that has a <code>targetID</code> refering
- * to this rendering container's identifier. 
- * </p>
- * <p>
- * Clients implementing memory renderings must subclass this class.
- * </p>
- * @since 3.1
- */
-public abstract class AbstractMemoryRendering extends PlatformObject implements IMemoryRendering{
-
-	private IMemoryBlock fMemoryBlock;
-	private IMemoryRenderingContainer fContainer;
-	private ListenerList fPropertyListeners;
-	private boolean fVisible = true;
-	private MenuManager fPopupMenuMgr;
-	private String fRenderingId;
-	
-	/**
-	 * Constructs a new rendering of the given type.
-	 * 
-	 * @param renderingId memory rendering type identifier
-	 */
-	public AbstractMemoryRendering(String renderingId)
-	{
-		fRenderingId = renderingId;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#init(org.eclipse.debug.ui.memory.IMemoryRenderingSite, org.eclipse.debug.core.model.IMemoryBlock)
-	 */
-	public void init(IMemoryRenderingContainer container, IMemoryBlock block) {
-		fContainer = container;
-		fMemoryBlock = block;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#dispose()
-	 */
-	public void dispose()
-	{
-		// disconnect from memory block when rendering is disposed
-		if (fMemoryBlock instanceof IMemoryBlockExtension)
-		{
-			((IMemoryBlockExtension)fMemoryBlock).disconnect(this);
-		}
-		
-		if (fPropertyListeners != null)
-			fPropertyListeners.clear();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#activated()
-	 */
-	public void activated() {
-		if (fContainer.getMemoryRenderingSite().getSynchronizationService() != null)
-			fContainer.getMemoryRenderingSite().getSynchronizationService().setSynchronizationProvider(this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#deactivated()
-	 */
-	public void deactivated() {
-		// do nothing when deactivated
-		// we do not want to set the sync provider from rendering site
-		// to null because Linux GTK unexpectedly fires deactivated event.
-		// If we reset the sync provider upon a deactivated event, it screws
-		// up synchronizatoin on Linux GTK.
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#becomesVisible()
-	 */
-	public void becomesVisible() {
-		fVisible = true;
-		if (fMemoryBlock instanceof IMemoryBlockExtension)
-		{
-			((IMemoryBlockExtension)fMemoryBlock).connect(this);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#becomesHidden()
-	 */
-	public void becomesHidden() {
-		fVisible = false;
-		if (fMemoryBlock instanceof IMemoryBlockExtension)
-		{
-			((IMemoryBlockExtension)fMemoryBlock).disconnect(this);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#getMemoryBlock()
-	 */
-	public IMemoryBlock getMemoryBlock() {
-		return fMemoryBlock;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#getRenderingId()
-	 */
-	public String getRenderingId()
-	{
-		return fRenderingId;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-	 */
-	public void addPropertyChangeListener(IPropertyChangeListener listener) {
-				
-		if (fPropertyListeners == null)
-			fPropertyListeners = new ListenerList();
-		
-		fPropertyListeners.add(listener);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-	 */
-	public void removePropertyChangeListener(IPropertyChangeListener listener) {
-		
-		if (fPropertyListeners == null)
-			return;
-		fPropertyListeners.remove(listener);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#getImage()
-	 */
-	public Image getImage() {
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#getLabel()
-	 */
-	public  String getLabel()
-	{
-		if (fMemoryBlock == null)
-			return ""; //$NON-NLS-1$
-		
-		StringBuffer label = new StringBuffer(""); //$NON-NLS-1$
-		
-		if (fMemoryBlock instanceof IMemoryBlockExtension)
-		{
-			String expression = ((IMemoryBlockExtension)fMemoryBlock).getExpression();
-			
-			if (expression == null)
-				expression = ""; //$NON-NLS-1$
-			
-			label.append(expression);
-			
-			if (expression.startsWith("&")) //$NON-NLS-1$
-				label.insert(0, "&"); //$NON-NLS-1$		
-			
-			// show full address if the rendering is visible
-			// hide address if the rendering is invisible
-			try {
-				if (fVisible && ((IMemoryBlockExtension)fMemoryBlock).getBigBaseAddress() != null)
-				{	
-					label.append(" : 0x"); //$NON-NLS-1$
-					label.append(((IMemoryBlockExtension)fMemoryBlock).getBigBaseAddress().toString(16).toUpperCase());
-				}
-			} catch (DebugException e) {
-				// do nothing... the label will not show memory block's address
-			}
-		}
-		else
-		{
-			long address = fMemoryBlock.getStartAddress();
-			label.append(Long.toHexString(address).toUpperCase());
-		}
-		
-		IMemoryRenderingType type = DebugUITools.getMemoryRenderingManager().getRenderingType(getRenderingId());
-		
-		if (type != null)
-		{
-			String preName = type.getLabel();
-			
-			if (preName != null)
-			{
-				label.append(" <"); //$NON-NLS-1$
-				label.append(preName);
-				label.append(">");  //$NON-NLS-1$
-			}
-		}
-		return label.toString();
-	}
-	
-	/**
-	 * Helper method for creating a pop up menu in the rendering for a control.
-	 * Call this method when a context menu is required for a control
-	 * in a rendering.
-	 * <p>
-	 * To contribute an action to a rendering, an <code>objectContribution</code> can
-	 * be used on a rendering implementation class itself using a 
-	 * <code>popupMenus</code> extension. Additionaly, the context menu created
-	 * by this method is registered with an identifier of this rendering's container.
-	 * Actions may also be contributed to the context menu specifically by using a 
-	 * <code>viewerContribution</code> on a <code>popupMenus</code> extension
-	 * that has a <code>targetID</code> refering to this rendering container's identifier. 
-	 * </p>
-	 * <p>
-	 * Clients are expected to become a menu listener for their pop  up 
-	 * menu if they require to fill the context menu for the rendering.
-	 * </p>
-	 * @param control - control to create the pop up menu for
-	 */
-	protected void createPopupMenu(Control control)
-	{
-		if (fPopupMenuMgr == null)
-		{
-			fPopupMenuMgr = new MenuManager("#PopupMenu"); //$NON-NLS-1$
-			fPopupMenuMgr.setRemoveAllWhenShown(true);
-			IMemoryRenderingSite site = fContainer.getMemoryRenderingSite();
-			String menuId = fContainer.getId();
-						
-			ISelectionProvider selProvider = site.getSite().getSelectionProvider();
-			
-			// must add additions seperator before registering the menu
-			// otherwise, we will get an error
-			fPopupMenuMgr.addMenuListener(new IMenuListener() {
-				public void menuAboutToShow(IMenuManager manager) {
-					manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-				}});
-			
-			site.getSite().registerContextMenu(menuId, fPopupMenuMgr, selProvider);
-		}
-		
-		Menu popupMenu = fPopupMenuMgr.createContextMenu(control);
-		control.setMenu(popupMenu);
-	}
-	
-	/**
-	 * Returns the pop up menu manager for this rendering, or <code>null</code>
-	 * if none.
-	 * 
-	 * @return the pop up menu manager for this rendering, or <code>null</code>
-	 */
-	protected MenuManager getPopupMenuManager()
-	{
-		return fPopupMenuMgr;
-	}
-	
-	/**
-	 * Fires the given event to all registered listeners.
-	 * 
-	 * @param event the event to fire
-	 */
-	protected void firePropertyChangedEvent(PropertyChangeEvent event)
-	{
-		if (fPropertyListeners == null)
-			return;
-		
-		Object[] listeners = fPropertyListeners.getListeners();
-		
-		for (int i=0; i<listeners.length; i++)
-		{	
-			PropertyChangeNotifier notifier = new PropertyChangeNotifier((IPropertyChangeListener)listeners[i], event);
-			Platform.run(notifier);
-		}
-	}
-	
-	/**
-	 * Returns the container hosting this memory rendering.
-	 * 
-	 * @return the container hosting this memory rendering
-	 */
-	public IMemoryRenderingContainer getMemoryRenderingContainer()
-	{
-		return fContainer;
-	}
-
-	/**
-	 * Returns whether this rendering is currently visible.
-	 * 
-	 * @return whether this rendering is currently visible
-	 */
-	public boolean isVisible() {
-		return fVisible;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRenderingBindingsProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRenderingBindingsProvider.java
deleted file mode 100644
index 38a4172..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractMemoryRenderingBindingsProvider.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.jface.util.ListenerList;
-
-/**
- * Common function for a dynamic memory rendering bindings provider.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider
- * @since 3.1
- */
-public abstract class AbstractMemoryRenderingBindingsProvider implements IMemoryRenderingBindingsProvider {
-    	
-	// list of binding listeners
-	private ListenerList fListeners;
-        
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#addListener(org.eclipse.debug.ui.memory.IMemoryRenderingBindingsListener)
-	 */
-	public void addListener(IMemoryRenderingBindingsListener listener) {
-		if (fListeners == null) {
-			fListeners = new ListenerList();
-		}
-		fListeners.add(listener);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider#removeListener(org.eclipse.debug.ui.memory.IMemoryRenderingBindingsListener)
-	 */
-	public void removeListener(IMemoryRenderingBindingsListener listener) {
-		if (fListeners != null) {
-			fListeners.remove(listener);
-		}
-	}
-	
-	/**
-	 * Notifies all registered listeners that bindings have changed.
-	 */
-	protected void fireBindingsChanged() {
-		if (fListeners == null) {
-			return;
-		}
-		
-		Object[] listeners = fListeners.getListeners();
-		
-		for (int i=0; i<listeners.length; i++) {
-			if (listeners[i] instanceof IMemoryRenderingBindingsListener) {
-				final IMemoryRenderingBindingsListener listener = (IMemoryRenderingBindingsListener)listeners[i];
-				ISafeRunnable runnable = new ISafeRunnable () {
-					public void handleException(Throwable exception) {
-						DebugUIPlugin.log(exception);
-					}
-					public void run() throws Exception {
-						listener.memoryRenderingBindingsChanged();
-					}};
-				Platform.run(runnable);
-			}
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTableRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTableRendering.java
deleted file mode 100644
index d63e8d0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTableRendering.java
+++ /dev/null
@@ -1,3217 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.ui.memory;
-
-import java.math.BigInteger;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.core.model.IMemoryBlockExtension;
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIMessages;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.memory.IMemoryBlockConnection;
-import org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants;
-import org.eclipse.debug.internal.ui.views.memory.MemoryViewUtil;
-import org.eclipse.debug.internal.ui.views.memory.renderings.CopyTableRenderingToClipboardAction;
-import org.eclipse.debug.internal.ui.views.memory.renderings.FormatColumnAction;
-import org.eclipse.debug.internal.ui.views.memory.renderings.GoToAddressAction;
-import org.eclipse.debug.internal.ui.views.memory.renderings.PrintTableRenderingAction;
-import org.eclipse.debug.internal.ui.views.memory.renderings.ReformatAction;
-import org.eclipse.debug.internal.ui.views.memory.renderings.ResetToBaseAddressAction;
-import org.eclipse.debug.internal.ui.views.memory.renderings.SetColumnSizeDefaultAction;
-import org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingCellModifier;
-import org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingContentInput;
-import org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingContentProvider;
-import org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingLabelProvider;
-import org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingLabelProviderEx;
-import org.eclipse.debug.internal.ui.views.memory.renderings.TableRenderingLine;
-import org.eclipse.debug.ui.DebugUITools;
-import org.eclipse.debug.ui.IDebugUIConstants;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.TextViewer;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.IBasicPropertyConstants;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.jface.viewers.IColorProvider;
-import org.eclipse.jface.viewers.IFontProvider;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.TextCellEditor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.custom.TableCursor;
-import org.eclipse.swt.custom.TableEditor;
-import org.eclipse.swt.events.DisposeEvent;
-import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.events.FocusAdapter;
-import org.eclipse.swt.events.FocusEvent;
-import org.eclipse.swt.events.KeyAdapter;
-import org.eclipse.swt.events.KeyEvent;
-import org.eclipse.swt.events.MouseAdapter;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.events.TraverseEvent;
-import org.eclipse.swt.events.TraverseListener;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.ScrollBar;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.dialogs.PropertyDialogAction;
-import org.eclipse.ui.model.IWorkbenchAdapter;
-import org.eclipse.ui.part.PageBook;
-
-/**
- * Abstract implementation of a table rendering.
- * <p>
- * Clients should subclass from this class if they wish to provide a
- * table rendering.
- * </p>
- * <p>
- *
- * The label of the rendering is constructed by retrieving the expression from
- * <code>IMemoryBlockExtension</code>.  For IMemoryBlock, the label is constructed
- * using the memory block's start address.
- * 
- * This rendering manages the change states of its memory bytes if the memory
- * block does not opt to manage the change states.  For IMemoryBlockExtension, if
- * the memory block returns false when #supportsChangeManagement() is called, this
- * rendering will calculate the change state for each byte when its content is updated.
- * Clients may manages the change states of its memory block by returning true when
- * #supportsChangeManagement() is called.  This will cause this rendering to stop
- * calculating the change states of the memory block.  Instead it would rely on the
- * attributes returned in the MemoryByte array to determine if a byte has changed.
- * For IMemoryBlock, this rendering will manage the change states its content.   
- * 
- *  When firing change event, be aware of the following:
- *  - whenever a change event is fired, the content provider for Memory View
- *    view checks to see if memory has actually changed.  
- *  - If memory has actually changed, a refresh will commence.  Changes to the memory block
- *    will be computed and will be shown with the delta icons.
- *  - If memory has not changed, content will not be refreshed.  However, previous delta information 
- * 	  will be erased.  The screen will be refreshed to show that no memory has been changed.  (All
- *    delta icons will be removed.)
- *    
- * Please note that these APIs will be called multiple times by the Memory View.
- * To improve performance, debug adapters need to cache the content of its memory block and only
- * retrieve updated data when necessary.
- * </p>
-
- * @since 3.1
- */
-public abstract class AbstractTableRendering extends AbstractMemoryRendering implements IPropertyChangeListener{	
-
-	/**
-	 *  Property identifier for the selected address in a table rendering
-	 */
-	public static final String PROPERTY_SELECTED_ADDRESS = "selectedAddress"; //$NON-NLS-1$
-	
-	/**
-	 * Property identifier for the column size in a table rendering
-	 */
-	public static final String PROPERTY_COL_SIZE = "columnSize"; //$NON-NLS-1$
-	
-	/**
-	 * Property identifier for the top row address in a table rendering
-	 */
-	public static final String PROPERTY_TOP_ADDRESS = "topAddress"; //$NON-NLS-1$
-	
-	private PageBook fPageBook;
-	private TableViewer fTableViewer;
-	private TextViewer fTextViewer;
-	
-	private int fBytePerLine;								// number of bytes per line: 16
-	private int fColumnSize;								// number of bytes per column:  1,2,4,8
-	private int fAddressableSize;	
-	
-	private boolean fIsShowingErrorPage;
-	
-	private TableRenderingContentProvider fContentProvider;
-	private BigInteger fSelectedAddress;
-	private TableRenderingContentInput fContentInput;
-	private TableRenderingCellModifier fCellModifier;
-	private boolean fIsCreated;
-	private CellEditor[] fEditors;
-	private String fLabel;
-	private TableCursor fTableCursor;
-	private boolean fIsDisposed;
-	private TraverseListener fCursorTraverseListener;
-	private KeyAdapter fCursorKeyAdapter;
-	private BigInteger fTopRowAddress;
-	
-	private CopyTableRenderingToClipboardAction fCopyToClipboardAction;
-	private GoToAddressAction fGoToAddressAction;
-	private ResetToBaseAddressAction fResetMemoryBlockAction;
-	private PrintTableRenderingAction fPrintViewTabAction;
-	private Action[] fFormatColumnActions;
-	private ReformatAction fReformatAction;
-	private ToggleAddressColumnAction fToggleAddressColumnAction;
-	private EventHandleLock fEvtHandleLock = new EventHandleLock();
-	private TableEditor fCursorEditor;
-	private FocusAdapter fEditorFocusListener;
-	private MouseAdapter fCursorMouseListener;
-	private KeyAdapter fEditorKeyListener;
-	private SelectionAdapter fCursorSelectionListener;
-	private IWorkbenchAdapter fWorkbenchAdapter;
-	private IMemoryBlockConnection fConnection;
-	
-	private boolean fIsShowAddressColumn = true;
-	private SelectionAdapter fScrollbarSelectionListener;
-
-	private PropertyDialogAction fPropertiesAction;
-	
-	private int fPageSize;
-	private NextPageAction fNextAction;
-	private PrevPageAction fPrevAction;
-	
-	private class EventHandleLock
-	{
-		Object fOwner;
-		
-		public boolean acquireLock(Object client)
-		{
-			if (fOwner == null)
-			{
-				fOwner = client;
-				return true;
-			}
-			return false;
-		}
-		
-		public boolean releaseLock(Object client)
-		{
-			if (fOwner == client)
-			{
-				fOwner = null;
-				return true;
-			}
-			return false;
-		}
-		
-		public boolean isLocked()
-		{
-			return (fOwner != null);
-		}
-	}	
-	
-	
-	private class ToggleAddressColumnAction extends Action {
-
-		public ToggleAddressColumnAction() {
-			super();
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID
-					+ ".ShowAddressColumnAction_context"); //$NON-NLS-1$
-			updateActionLabel();
-		}
-
-		/*
-		 * (non-Javadoc)
-		 * 
-		 * @see org.eclipse.jface.action.IAction#run()
-		 */
-		public void run() {
-			fIsShowAddressColumn = !fIsShowAddressColumn;
-			resizeColumnsToPreferredSize();
-			updateActionLabel();
-		}
-
-		/**
-		 * 
-		 */
-		private void updateActionLabel() {
-			if (fIsShowAddressColumn) {
-				setText(DebugUIMessages.ShowAddressColumnAction_0); //$NON-NLS-1$
-			} else {
-				setText(DebugUIMessages.ShowAddressColumnAction_1); //$NON-NLS-1$
-			}
-		}
-	}
-	
-	
-	private class NextPageAction extends Action
-	{
-		private NextPageAction()
-		{
-			super();
-			setText(DebugUIMessages.AbstractTableRendering_4);
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".NextPageAction_context"); //$NON-NLS-1$ 
-		}
-
-		public void run() {
-			BigInteger address = fContentInput.getLoadAddress();
-			address = address.add(BigInteger.valueOf(getPageSizeInUnits()));
-			handlePageStartAddressChanged(address);
-		}
-	}
-	
-	private class PrevPageAction extends Action
-	{
-		private PrevPageAction()
-		{
-			super();
-			setText(DebugUIMessages.AbstractTableRendering_6);
-			PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IDebugUIConstants.PLUGIN_ID + ".PrevPageAction_context"); //$NON-NLS-1$
-		}
-
-		public void run() {
-			BigInteger address = fContentInput.getLoadAddress();
-			address = address.subtract(BigInteger.valueOf(getPageSizeInUnits()));
-			handlePageStartAddressChanged(address);
-		}
-	}
-	
-	/**
-	 * Constructs a new table rendering of the specified type.
-	 * 
-	 * @param renderingId memory rendering type identifier
-	 */
-	public AbstractTableRendering(String renderingId) {
-		super(renderingId);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		// if memory view table font has changed
-		if (event.getProperty().equals(IInternalDebugUIConstants.FONT_NAME))
-		{
-			if (!fIsDisposed)
-			{			
-				Font memoryViewFont = JFaceResources.getFont(IInternalDebugUIConstants.FONT_NAME);
-				setFont(memoryViewFont);		
-			}
-			return;
-		}
-		
-		if (event.getProperty().equals(IDebugUIConstants.PREF_PADDED_STR))
-		{
-			if (!fIsDisposed)
-			{
-				fTableViewer.refresh();
-				fTableCursor.redraw();
-			}
-			return;
-		}
-		
-		Object evtSrc = event.getSource();
-		
-		if (event.getProperty().equals(IDebugPreferenceConstants.PREF_TABLE_RENDERING_PAGE_SIZE)) {
-			// always update page size, only refresh if the table is visible
-			getPageSizeFromPreference();
-		}
-		
-		// do not handle event if the rendering is displaying an error
-		if (isDisplayingError())
-			return;
-		
-		// do not handle property change event if the rendering is not visible
-		if (!isVisible())
-			return;
-		
-		if (event.getProperty().equals(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM)) {
-			handleDyanicLoadChanged();
-			return;
-		}
-		
-		if (event.getProperty().equals(IDebugPreferenceConstants.PREF_TABLE_RENDERING_PAGE_SIZE)) {
-			if (!isDynamicLoad())
-			{
-				// only refresh if in non-autoload mode
-				refresh();
-			}
-			return;
-		}
-		
-		if (evtSrc == this)
-			return;
-		
-		if (!(evtSrc instanceof IMemoryRendering))
-			return;
-		
-		IMemoryRendering rendering = (IMemoryRendering)evtSrc;
-		IMemoryBlock memoryBlock = rendering.getMemoryBlock();
-		
-		// do not handle event from renderings displaying other memory blocks
-		if (memoryBlock != getMemoryBlock())
-			return;
-	
-		String propertyName = event.getProperty();
-		Object value = event.getNewValue();
-		
-		if (propertyName.equals(AbstractTableRendering.PROPERTY_SELECTED_ADDRESS) && value instanceof BigInteger)
-		{
-			selectedAddressChanged((BigInteger)value);
-		}
-		else if (propertyName.equals(AbstractTableRendering.PROPERTY_COL_SIZE) && value instanceof Integer)
-		{
-			columnSizeChanged(((Integer)value).intValue());
-		}
-		else if (propertyName.equals(AbstractTableRendering.PROPERTY_TOP_ADDRESS) && value instanceof BigInteger)
-		{
-			if (needMoreLines())
-			{
-				if (isDynamicLoad())
-					reloadTable(getTopVisibleAddress(), false);
-			}
-			topVisibleAddressChanged((BigInteger)value);
-		}
-		else if (propertyName.equals(IInternalDebugUIConstants.PROPERTY_PAGE_START_ADDRESS) && value instanceof BigInteger)
-		{
-			handlePageStartAddressChanged((BigInteger)value);
-		}
-	}
-
-	private void handleDyanicLoadChanged() {
-		
-		// if currently in dynamic load mode, update page
-		// start address
-		updateSyncPageStartAddress();
-		
-		updateDynamicLoadProperty();
-		if (isDynamicLoad())
-		{
-			refresh();
-		}
-		else
-		{
-			BigInteger pageStart = (BigInteger)getSynchronizedProperty(IInternalDebugUIConstants.PROPERTY_PAGE_START_ADDRESS);
-			if (pageStart == null)
-				pageStart = fTopRowAddress;
-			handlePageStartAddressChanged(pageStart);
-		}
-	}
-
-	private void updateDynamicLoadProperty() {
-		
-		boolean value = DebugUIPlugin
-				.getDefault()
-				.getPreferenceStore()
-				.getBoolean(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM);
-		
-		if (value != isDynamicLoad())
-		{
-			fContentProvider.setDynamicLoad(value);
-		
-			if (!fIsDisposed) {
-				if (isDynamicLoad()) {
-					fContentInput.setPostBuffer(20);
-					fContentInput.setPreBuffer(20);
-					fContentInput.setDefaultBufferSize(20);
-					fContentInput.setNumLines(getNumberOfVisibleLines());
-	
-				} else {
-					fContentInput.setPostBuffer(0);
-					fContentInput.setPreBuffer(0);
-					fContentInput.setDefaultBufferSize(0);
-					fContentInput.setNumLines(fPageSize);
-				}	
-			}
-		}
-	}
-
-	/**
-	 * Handle top visible address change event from synchronizer
-	 * @param address
-	 */
-	private void topVisibleAddressChanged(final BigInteger address)
-	{
-		// do not handle event if view tab is disabled
-		if (!isVisible())
-			return;
-		
-		// do not handle event if the base address of the memory
-		// block has changed, wait for debug event to update to
-		// new location
-		if (isBaseAddressChanged())
-			return;
-	
-		if (!address.equals(fTopRowAddress))
-		{
-			fTopRowAddress = address;
-			updateSyncTopAddress();
-			if (getMemoryBlock() instanceof IMemoryBlockExtension)
-			{
-			
-				handleTopAddressChangedforExtended(address);
-			}
-			else
-			{
-				handleTopAddressChangedForSimple(address);
-			}
-		}
-	}
-
-	/**
-	 * @param address
-	 */
-	private void handleTopAddressChangedForSimple(final BigInteger address) {
-		// IMemoryBlock support
-		int index = findAddressIndex(address);
-		Table table = fTableViewer.getTable();
-		if (index >= 0)
-		{
-			setTopIndex(table,  index);
-		}
-		
-		if (isAddressVisible(fSelectedAddress))
-			fTableCursor.setVisible(true);
-		else
-			fTableCursor.setVisible(false);
-		
-	}
-
-	/**
-	 * @param address
-	 */
-	private void handleTopAddressChangedforExtended(final BigInteger address) {
-		
-		Object evtLockClient = new Object();
-		try 
-		{
-		if (!fEvtHandleLock.acquireLock(evtLockClient))
-			return;
-		
-		if (!isAddressOutOfRange(address))
-		{
-			Table table = fTableViewer.getTable();
-			int index = findAddressIndex(address);
-			if (index >= 3 && table.getItemCount() - (index+getNumberOfVisibleLines()) >= 3)
-			{
-				// update cursor position
-				setTopIndex(table, index);
-			}
-			else
-			{
-				int numInBuffer = table.getItemCount();
-				if (index < 3)
-				{
-					if(isAtTopLimit())
-					{
-						setTopIndex(table, index);
-					}
-					else
-					{
-						if (isDynamicLoad())
-							reloadTable(address, false);
-						else
-							setTopIndex(table, index);
-					}
-				}
-				else if ((numInBuffer-(index+getNumberOfVisibleLines())) < 3)
-				{
-					if (!isAtBottomLimit() && isDynamicLoad())
-						reloadTable(address, false);
-					else
-						setTopIndex(table, index);
-				}
-			}
-		}
-		else
-		{	
-			// approaching limit, reload table
-			reloadTable(address, false);
-		}
-		
-		if (isAddressVisible(fSelectedAddress))
-			fTableCursor.setVisible(true);
-		else
-			fTableCursor.setVisible(false);
-		}
-		finally
-		{
-			fEvtHandleLock.releaseLock(evtLockClient);
-		}
-	}	
-	
-	/**
-	 * @param value
-	 */
-	private void selectedAddressChanged(BigInteger value) {
-		
-		// do not handle event if the base address of the memory
-		// block has changed, wait for debug event to update to
-		// new location
-		if (isBaseAddressChanged())
-			return;
-		
-		try {
-			// do not handle event if the event is out of range and the 
-			// rendering is in non-dynamic-load mode, otherwise, will
-			// cause rendering to continue to scroll when it shouldn't
-			if (isDynamicLoad())
-				goToAddress(value);
-			else if (!isAddressOutOfRange(value))
-				goToAddress(value);
-		} catch (DebugException e) {
-			// do nothing
-		}
-	}
-	
-	private void handlePageStartAddressChanged(BigInteger address)
-	{
-		// do not handle if in dynamic mode
-		if (isDynamicLoad())
-			return;
-		
-		if (fContentInput == null)
-			return;
-		
-		if (!(getMemoryBlock() instanceof IMemoryBlockExtension))
-			return;
-		
-		// do not handle event if the base address of the memory
-		// block has changed, wait for debug event to update to
-		// new location
-		if (isBaseAddressChanged())
-			return;
-		
-		if(fContentProvider.getBufferTopAddress().equals(address))
-			return;
-	
-		BigInteger start = fContentInput.getStartAddress();
-		BigInteger end = fContentInput.getEndAddress();
-		
-		// smaller than start address, load at start address
-		if (address.compareTo(start) < 0)
-		{
-			if (isAtTopLimit())
-				return;
-			
-			address = start;
-		}
-		
-		// bigger than end address, no need to load, alread at top
-		if (address.compareTo(end) > 0)
-		{
-			if (isAtBottomLimit())
-				return;
-			
-			address = end.subtract(BigInteger.valueOf(getPageSizeInUnits()));
-		}
-		
-		fContentInput.setLoadAddress(address);
-		refresh();
-		updateSyncPageStartAddress();
-		setTopIndex(fTableViewer.getTable(), 0);
-		fTopRowAddress = address;
-		updateSyncTopAddress();
-		
-		BigInteger selectedAddress = (BigInteger)getSynchronizedProperty(AbstractTableRendering.PROPERTY_SELECTED_ADDRESS);
-		if (selectedAddress != null)
-		{
-			fSelectedAddress = selectedAddress;
-			if (!isAddressOutOfRange(fSelectedAddress))
-			{
-				setCursorAtAddress(fSelectedAddress);
-				fTableCursor.setVisible(true);
-			}
-			else
-			{
-				fTableCursor.setVisible(false);
-			}
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public Control createControl(Composite parent) {
-		
-		fPageBook = new PageBook(parent, SWT.NONE);
-		createErrorPage(fPageBook);
-		createTableViewer(fPageBook);
-		
-		fTableViewer.getTable().redraw();
-		
-		return fPageBook;
-	}
-
-	/**
-	 * Create the table viewer and other support controls
-	 * for this rendering.
-	 * 
-	 * @param parent parent composite
-	 */
-	private void createTableViewer(Composite parent) {
-		
-		fTableViewer= new TableViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.HIDE_SELECTION | SWT.BORDER);
-		
-		TableRenderingLabelProvider labelProvider;
-		if (hasCustomizedDecorations())
-			labelProvider = new TableRenderingLabelProviderEx(this);
-		else
-			labelProvider = new TableRenderingLabelProvider(this);
-		
-		fTableViewer.setLabelProvider(labelProvider);
-		
-		fContentProvider = new TableRenderingContentProvider();
-		fContentProvider.setDynamicLoad(DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM));
-		
-		fTableViewer.setContentProvider(fContentProvider);		
-		fContentProvider.setViewer(fTableViewer);
-		
-		ScrollBar scroll = ((Table)fTableViewer.getControl()).getVerticalBar();
-		scroll.setMinimum(-100);
-		scroll.setMaximum(200);		
-
-		fTableViewer.getTable().setHeaderVisible(true);
-		fTableViewer.getTable().setLinesVisible(true);
-		
-// FORMAT RENDERING
-		// set up addressable size and figure out number of bytes required per line
-		fAddressableSize = -1;
-		try {
-			if (getMemoryBlock() instanceof IMemoryBlockExtension)
-				fAddressableSize = ((IMemoryBlockExtension)getMemoryBlock()).getAddressableSize();
-		} catch (DebugException e1) {
-			// log error and default to 1
-			fAddressableSize = 1;
-			displayError(e1);
-			return;
-			
-		}
-		if (getAddressableSize() < 1)
-			fAddressableSize = 1;
-		int bytePerLine = IInternalDebugUIConstants.ADD_UNIT_PER_LINE * getAddressableSize();
-		
-		// get default column size from preference store
-		IPreferenceStore prefStore = DebugUIPlugin.getDefault().getPreferenceStore();
-		// column size is now stored as number of addressable units
-		int columnSize = prefStore.getInt(IDebugPreferenceConstants.PREF_COLUMN_SIZE);
-		// actual column size is number of addressable units * size of the addressable unit
-		columnSize = columnSize * getAddressableSize();
-		
-		// check synchronized col size
-		Integer colSize = (Integer)getSynchronizedProperty(AbstractTableRendering.PROPERTY_COL_SIZE);
-		
-		if (colSize != null)
-		{
-			int syncColSize = colSize.intValue(); 
-			if (syncColSize > 0)
-			{
-				columnSize = syncColSize;
-			}	
-		}
-		
-		// format memory block with specified "bytesPerLine" and "columnSize"	
-		boolean ok = format(bytePerLine, columnSize);
-
-		if (!ok)
-		{
-			DebugException e = new DebugException(DebugUIPlugin.newErrorStatus(DebugUIMessages.AbstractTableRendering_0, null)); //$NON-NLS-1$
-			displayError(e);
-			return;
-		}
-// END FORMAT RENDERING		
-		
-		// figure out selected address 
-		BigInteger selectedAddress = (BigInteger) getSynchronizedProperty(AbstractTableRendering.PROPERTY_SELECTED_ADDRESS);
-		if (selectedAddress == null)
-		{
-			if (getMemoryBlock() instanceof IMemoryBlockExtension) {
-				try {
-					selectedAddress = ((IMemoryBlockExtension) getMemoryBlock())
-							.getBigBaseAddress();
-				} catch (DebugException e1) {
-					selectedAddress = new BigInteger("0"); //$NON-NLS-1$
-				}
-				if (selectedAddress == null) {
-					selectedAddress = new BigInteger("0"); //$NON-NLS-1$
-				}
-
-			} else {
-				long address = getMemoryBlock().getStartAddress();
-				selectedAddress = BigInteger.valueOf(address);
-			}
-		}
-		setSelectedAddress(selectedAddress);
-		// figure out top visible address
-		BigInteger topVisibleAddress = (BigInteger) getSynchronizedProperty(AbstractTableRendering.PROPERTY_TOP_ADDRESS);
-		if (topVisibleAddress == null)
-		{
-			if (getMemoryBlock() instanceof IMemoryBlockExtension)
-			{
-				try {
-					topVisibleAddress = ((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress();
-				} catch (DebugException e1) {
-					topVisibleAddress = new BigInteger("0"); //$NON-NLS-1$
-				}
-			}
-			else
-			{
-				topVisibleAddress = BigInteger.valueOf(getMemoryBlock().getStartAddress());
-			}
-		}
-		
-		getPageSizeFromPreference();
-		if (isDynamicLoad())
-			fContentInput = new TableRenderingContentInput(this, 20, 20, 20, topVisibleAddress, getNumberOfVisibleLines(), false);
-		else
-		{
-			BigInteger addressToLoad = topVisibleAddress;
-			
-			// check synchronization service to see if we need to sync with another rendering
-			Object obj = getSynchronizedProperty(IInternalDebugUIConstants.PROPERTY_PAGE_START_ADDRESS);
-			if (obj != null && obj instanceof BigInteger)
-			{
-				addressToLoad = (BigInteger)obj;
-			}
-			fContentInput = new TableRenderingContentInput(this, 0, 0, 0, addressToLoad, fPageSize, false);
-		}
-		
-		fTableViewer.setInput(fContentInput);
-		fCellModifier = new TableRenderingCellModifier(this);
-		fTableViewer.setCellModifier(fCellModifier);
-		// SET UP FONT		
-		// set to a non-proportional font
-		fTableViewer.getTable().setFont(JFaceResources.getFont(IInternalDebugUIConstants.FONT_NAME));
-		if (!(getMemoryBlock() instanceof IMemoryBlockExtension))
-		{		
-			// If not extended memory block, do not create any buffer
-			// no scrolling
-			fContentInput.setPreBuffer(0);
-			fContentInput.setPostBuffer(0);
-			fContentInput.setDefaultBufferSize(0);
-		}
-		createCursor(fTableViewer.getTable(), fSelectedAddress);
-		fTableViewer.getTable().addMouseListener(new MouseAdapter() {
-			public void mouseDown(MouseEvent e) {
-				handleTableMouseEvent(e);
-			}});
-		// create pop up menu for the rendering
-		createActions();
-		createPopupMenu(fTableViewer.getControl());
-		createPopupMenu(fTableCursor);
-		getPopupMenuManager().addMenuListener(new IMenuListener() {
-			public void menuAboutToShow(IMenuManager manager) {
-				fillContextMenu(manager);
-				manager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-			}});
-		fIsCreated = true;
-		addRenderingToSyncService();
-		//synchronize
-		synchronize();
-		fTopRowAddress = getTopVisibleAddress();
-		// Need to resize column after content is filled in
-		// Pack function does not work unless content is not filled in
-		// since the table is not able to compute the preferred size.
-		resizeColumnsToPreferredSize();
-		try {
-			if (getMemoryBlock() instanceof IMemoryBlockExtension)
-			{
-				if(((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress() == null)
-				{
-					DebugException e = new DebugException(DebugUIPlugin.newErrorStatus(DebugUIMessages.AbstractTableRendering_1, null)); //$NON-NLS-1$
-					displayError(e);				
-				}
-			}
-		} catch (DebugException e1) {
-			displayError(e1);	
-		}
-		// add font change listener and update font when the font has been changed
-		JFaceResources.getFontRegistry().addListener(this);
-		fScrollbarSelectionListener = new SelectionAdapter() {
-
-			public void widgetSelected(SelectionEvent event) {
-				handleScrollBarSelection();
-				
-			}};
-		scroll.addSelectionListener(fScrollbarSelectionListener);
-		DebugUIPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(this);
-	}
-	
-	private void getPageSizeFromPreference()
-	{
-		fPageSize = DebugUIPlugin.getDefault().getPreferenceStore().getInt(IDebugPreferenceConstants.PREF_TABLE_RENDERING_PAGE_SIZE);
-	}
-	
-	private void createCursor(Table table, BigInteger address)
-	{
-		fTableCursor = new TableCursor(table, SWT.NONE);
-		Display display = fTableCursor.getDisplay();
-		
-		// set up cursor color
-		fTableCursor.setBackground(display.getSystemColor(SWT.COLOR_LIST_SELECTION));
-		fTableCursor.setForeground(display.getSystemColor(SWT.COLOR_LIST_SELECTION_TEXT));
-		
-		fTableCursor.setFont(JFaceResources.getFont(IInternalDebugUIConstants.FONT_NAME));
-		fTableCursor.setVisible(true);
-		fTableCursor.setFocus();
-		
-		fCursorKeyAdapter = new KeyAdapter() {
-			public void keyPressed(KeyEvent e)
-			 {
-			 	handleCursorKeyPressed(e);
-			 }	
-		};
-		fTableCursor.addKeyListener(fCursorKeyAdapter);
-		
-		fCursorTraverseListener = new TraverseListener() {
-			public void keyTraversed(TraverseEvent e) {
-				handleCursorTraverseEvt(e);
-			}};
-					
-		fTableCursor.addTraverseListener(fCursorTraverseListener);
-		
-		fCursorMouseListener = new MouseAdapter() {
-			public void mouseDown(MouseEvent e) {
-				handleCursorMouseEvent(e);
-			}};
-		fTableCursor.addMouseListener(fCursorMouseListener);
-		
-		// cursor may be disposed before disposed is called
-		// remove listeners whenever the cursor is disposed
-		fTableCursor.addDisposeListener(new DisposeListener() {
-			public void widgetDisposed(DisposeEvent e) {
-				if (fTableCursor == null)
-					return;
-				fTableCursor.removeTraverseListener(fCursorTraverseListener);
-				fTableCursor.removeKeyListener(fCursorKeyAdapter);
-				fTableCursor.removeMouseListener(fCursorMouseListener);
-				fTableCursor.removeSelectionListener(fCursorSelectionListener);
-			}});
-		
-		fCursorSelectionListener = new SelectionAdapter() {
-					public void widgetSelected(SelectionEvent e) {
-						
-						if (!fEvtHandleLock.acquireLock(this))
-							return;
-	
-						handleCursorMoved();
-						
-						fEvtHandleLock.releaseLock(this);
-
-					}
-				};
-		fTableCursor.addSelectionListener(fCursorSelectionListener);
-		
-		
-		setCursorAtAddress(address);
-		
-		fCursorEditor = new TableEditor (fTableViewer.getTable());	
-	}
-	
-	private void handleCursorTraverseEvt(TraverseEvent e){
-		
-		if (fTableCursor.getRow() == null)
-			return;
-		
-		Table table = (Table)fTableCursor.getParent();
-		int row = table.indexOf(fTableCursor.getRow());
-		int col = fTableCursor.getColumn();
-		if (col == getNumCol() && e.keyCode == SWT.ARROW_RIGHT)
-		{
-			if (row + 1>= table.getItemCount())
-			{
-				return;
-			}
-			
-			row = row +1;
-			col = 0;
-			fTableCursor.setSelection(row, col);
-		}
-		if (col <= 1 && e.keyCode == SWT.ARROW_LEFT)
-		{
-			if (row-1 < 0)
-			{
-				return;
-			}
-			
-			row = row - 1;
-			col = getNumCol()+1;
-			fTableCursor.setSelection(row, col);
-		}			
-		
-		Object evtLockClient = new Object();
-		if (!fEvtHandleLock.acquireLock(evtLockClient))
-			return;
-		
-		handleCursorMoved();
-		
-		fEvtHandleLock.releaseLock(evtLockClient);
-
-	}
-	
-	/**
-	 * Update selected address.
-	 * Load more memory if required.
-	 */
-	private void handleCursorMoved()
-	{	
-		if (fIsDisposed)
-			return;
-		
-		BigInteger selectedAddress = getSelectedAddressFromCursor(fTableCursor);
-		
-		// when the cursor is moved, the selected address is changed
-		if (selectedAddress != null && !selectedAddress.equals(fSelectedAddress))
-		{
-			setSelectedAddress(selectedAddress);
-			updateSyncSelectedAddress();
-		}
-		
-		// now check to see if the cursor is approaching buffer limit
-		TableItem item = fTableCursor.getRow();
-		if (item == null)
-			return;
-		
-		if (getMemoryBlock() instanceof IMemoryBlockExtension)
-		{
-			int row = fTableViewer.getTable().indexOf(item);
-			
-			if (row < 3)
-			{
-				if (!isAtTopLimit())
-				{
-					if (isDynamicLoad())
-					{
-						refresh();
-						setCursorAtAddress(fSelectedAddress);
-					}
-				}
-			}
-			else if (row >= fTableViewer.getTable().getItemCount() - 3)
-			{
-				if (!isAtBottomLimit())
-				{
-					if (isDynamicLoad())
-					{
-						refresh();
-						setCursorAtAddress(fSelectedAddress);
-					}
-				}
-			}
-		}
-		
-		// if the cursor has moved, the top index of the table may change
-		// just update the synchronization service
-		BigInteger address = getTopVisibleAddress();
-		if (!address.equals(fTopRowAddress))
-		{
-			fTopRowAddress = address;
-			updateSyncTopAddress();
-		}
-	}
-	
-	private void handleCursorKeyPressed(KeyEvent event)
-	{
-		// allow edit if user hits return
-		if (event.character == '\r' && event.getSource() instanceof TableCursor)
-		{
-			activateCellEditor(null);
-			return;
-		}		
-		
-		if (MemoryViewUtil.isValidEditEvent(event.keyCode))
-		{	
-			// activate edit as soon as user types something at the cursor
-			if (event.getSource() instanceof TableCursor)
-			{
-				String initialValue = String.valueOf(event.character);
-				activateCellEditor(initialValue);
-				return;
-			}
-		}
-	}
-	
-	/**
-	 * Calculate selected address based on cursor's current position
-	 * @param cursor
-	 * @return the selected address
-	 */
-	private BigInteger getSelectedAddressFromCursor(TableCursor cursor)
-	{
-		TableItem row = cursor.getRow();
-		int col = cursor.getColumn();
-		
-		if (row == null)
-			return null;
-		
-		// get row address
-		String temp = ((TableRenderingLine)row.getData()).getAddress();
-		BigInteger rowAddress = new BigInteger(temp, 16);
-		
-		int offset;
-		if (col > 0)
-		{	
-			// 	get address offset
-			int addressableUnit = getAddressableUnitPerColumn();
-			offset = (col-1) * addressableUnit;
-		}
-		else
-		{
-			offset = 0;
-		}
-		
-		return rowAddress.add(BigInteger.valueOf(offset));
-	}
-	
-	
-	/**
-	 * Sets the cursor at the specified address
-	 * @param address
-	 * @return true if successful, false otherwise
-	 */
-	private boolean setCursorAtAddress(BigInteger address)
-	{
-		// selected address is out of range, simply return false
-		if (address.compareTo(fContentProvider.getBufferTopAddress()) < 0)
-			return false;
-		
-		// calculate selected row address
-		int addressableUnit = getAddressableUnitPerLine();
-		int numOfRows = address.subtract(fContentProvider.getBufferTopAddress()).intValue()/addressableUnit;
-		BigInteger rowAddress = fContentProvider.getBufferTopAddress().add(BigInteger.valueOf(numOfRows * addressableUnit));
-
-		// try to find the row of the selected address
-		int row = findAddressIndex(address);
-			
-		if (row == -1)
-		{
-			return false;
-		}
-		
-		// calculate offset to the row address
-		BigInteger offset = address.subtract(rowAddress);
-		
-		// locate column
-		int colAddressableUnit = getAddressableUnitPerColumn();
-		int col = ((offset.intValue()/colAddressableUnit)+1);
-		
-		if (col == 0)
-			col = 1;
-		
-		fTableCursor.setSelection(row, col);
-		
-		return true;		
-	}
-	
-	
-	/**
-	 * Format view tab based on the bytes per line and column.
-	 * 
-	 * @param bytesPerLine - number of bytes per line, possible values: 16 * addressableSize
-	 * @param columnSize - number of bytes per column, possible values: (1 / 2 / 4 / 8 / 16) * addressableSize
-	 * @return true if format is successful, false, otherwise
-	 */
-	public boolean format(int bytesPerLine, int columnSize)
-	{			
-		// selected address gets changed as the cursor is moved
-		// during the reformat.
-		// Back up the address and restore it later.
-		BigInteger selectedAddress = fSelectedAddress;
-		
-		// check parameter, limit number of addressable unit to 16
-		if (bytesPerLine/getAddressableSize() != IInternalDebugUIConstants.ADD_UNIT_PER_LINE)
-		{
-			return false;
-		}
-		
-		// bytes per cell must be divisible to bytesPerLine
-		if (bytesPerLine % columnSize != 0)
-		{
-			return false;
-		}
-		
-		// do not format if the view tab is already in that format
-		if(fBytePerLine == bytesPerLine && fColumnSize == columnSize){
-			return false;
-		}
-		
-		fBytePerLine = bytesPerLine;
-		fColumnSize = columnSize;
-		
-		Object evtLockClient = new Object();
-		if (!fEvtHandleLock.acquireLock(evtLockClient))
-			return false;
-		
-		// if the tab is already created and is being reformated
-		if (fIsCreated)
-		{	
-			if (fTableViewer == null)
-				return false;
-			
-			if (fTableViewer.getTable() == null)
-				return false;
-			
-			// clean up old columns
-			TableColumn[] oldColumns = fTableViewer.getTable().getColumns();
-			
-			for (int i=0; i<oldColumns.length; i++)
-			{
-				oldColumns[i].dispose();
-			}
-			
-			// clean up old cell editors
-			CellEditor[] oldCellEditors = fTableViewer.getCellEditors();
-			
-			for (int i=0; i<oldCellEditors.length; i++)
-			{
-				oldCellEditors[i].dispose();
-			}
-		}
-		
-		TableColumn column0 = new TableColumn(fTableViewer.getTable(),SWT.LEFT,0);
-		column0.setText(DebugUIMessages.AbstractTableRendering_2); //$NON-NLS-1$
-		
-		// create new byte columns
-		TableColumn [] byteColumns = new TableColumn[bytesPerLine/columnSize];		
-		
-		String[] columnLabels = new String[0];
-		IMemoryBlockTablePresentation presentation = getTablePresentationAdapter();
-		if (presentation != null)
-		{
-			columnLabels = presentation.getColumnLabels(getMemoryBlock(), bytesPerLine, getNumCol());
-		}
-		
-		// check that column labels are not null
-		if (columnLabels == null)
-			columnLabels = new String[0];
-		
-		for (int i=0;i<byteColumns.length; i++)
-		{
-			TableColumn column = new TableColumn(fTableViewer.getTable(), SWT.LEFT, i+1);
-			
-			// if the number of column labels returned is correct
-			// use supplied column labels
-			if (columnLabels.length == byteColumns.length)
-			{
-				column.setText(columnLabels[i]);
-			}
-			else
-			{
-				// otherwise, use default
-				int addressableUnit = columnSize/getAddressableSize();
-				if (getAddressableUnitPerColumn() >= 4)
-				{
-					column.setText(Integer.toHexString(i*addressableUnit).toUpperCase() + 
-						" - " + Integer.toHexString(i*addressableUnit+addressableUnit-1).toUpperCase()); //$NON-NLS-1$
-				}
-				else
-				{
-					column.setText(Integer.toHexString(i*addressableUnit).toUpperCase());
-				}
-			}
-		}
-		
-		//Empty column for cursor navigation
-		TableColumn emptyCol = new TableColumn(fTableViewer.getTable(),SWT.LEFT,byteColumns.length+1);
-		emptyCol.setText(" "); //$NON-NLS-1$
-		emptyCol.setWidth(1);
-		emptyCol.setResizable(false);
-
-		// +2 to include properties for address and navigation column
-		String[] columnProperties = new String[byteColumns.length+2];
-		columnProperties[0] = TableRenderingLine.P_ADDRESS;
-		
-		int addressableUnit = columnSize / getAddressableSize();
-
-		// use column beginning offset to the row address as properties
-		for (int i=1; i<columnProperties.length-1; i++)
-		{
-			// column properties are stored as number of addressable units from the
-			// the line address
-			columnProperties[i] = Integer.toHexString((i-1)*addressableUnit);
-		}
-		
-		// Empty column for cursor navigation
-		columnProperties[columnProperties.length-1] = " "; //$NON-NLS-1$
-		
-		fTableViewer.setColumnProperties(columnProperties);		
-		
-		
-		Table table = fTableViewer.getTable();
-		fEditors = new CellEditor[table.getColumnCount()];
-		for (int i=0; i<fEditors.length; i++)
-		{
-			fEditors[i] = new TextCellEditor(table);
-		}
-		
-		// create and set cell editors
-		fTableViewer.setCellEditors(fEditors);	
-		
-		if (fIsCreated)
-		{
-			fTableViewer.refresh();
-		}		
-		
-		
-		resizeColumnsToPreferredSize();
-		updateSyncColSize();
-		
-		if (fIsCreated)
-		{
-			// for Linux GTK, this must happen after table viewer is refreshed
-			int i = findAddressIndex(fTopRowAddress);
-			
-			if (i >= 0)
-				setTopIndex(fTableViewer.getTable(), i);
-			
-			if (isAddressVisible(selectedAddress))
-				// after refresh, make sure the cursor is at the correct position
-				setCursorAtAddress(selectedAddress);			
-		}
-		
-		fEvtHandleLock.releaseLock(evtLockClient);
-		
-		return true;
-	}
-	
-	/**
-	 * Create the error page for this rendering.
-	 * The error page is used to report any error resulted from
-	 * getting memory from a memory block.
-	 * @param parent
-	 */
-	private void createErrorPage(Composite parent)
-	{
-		if (fTextViewer == null)
-		{
-			fTextViewer = new TextViewer(parent, SWT.WRAP);	
-			fTextViewer.setDocument(new Document());
-			StyledText styleText = fTextViewer.getTextWidget();
-			styleText.setEditable(false);
-			styleText.setEnabled(false);
-		}
-	}
-	
-	/**
-	 * Displays the content of the table viewer.
-	 */
-	public void displayTable()
-	{
-		fIsShowingErrorPage = false;
-		fPageBook.showPage(fTableViewer.getControl());
-	}
-	
-	/**
-	 * Displays an error message for the given exception.
-	 * 
-	 * @param e exception to display 
-	 */
-	public void displayError(DebugException e)
-	{
-		StyledText styleText = null;
-		fIsShowingErrorPage = true;
-
-		styleText = fTextViewer.getTextWidget();
-		
-		if (styleText != null)
-			styleText.setText(DebugUIMessages.AbstractTableRendering_3 + e.getMessage());	 //$NON-NLS-1$
-		fPageBook.showPage(fTextViewer.getControl());
-		
-		// clear content cache if we need to display error
-		fContentProvider.clearContentCache();
-	}
-	
-	/**
-	 * Returns whether the error page is displayed.
-	 * 
-	 * @return whether the error page is displayed
-	 */
-	public boolean isDisplayingError()
-	{	
-		return fIsShowingErrorPage;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#getControl()
-	 */
-	public Control getControl() {
-		return fPageBook;
-	}
-	
-	/**
-	 * Returns the addressible size of this rendering's memory block in bytes.
-	 * 
-	 * @return the addressible size of this rendering's memory block in bytes
-	 */
-	public int getAddressableSize() {
-		return fAddressableSize;
-	}
-	
-	private Object getSynchronizedProperty(String propertyId)
-	{
-		IMemoryRenderingSynchronizationService syncService = getMemoryRenderingContainer().getMemoryRenderingSite().getSynchronizationService();
-		
-		if (syncService == null)
-			return null;
-		
-		return syncService.getProperty(getMemoryBlock(), propertyId);	
-	}
-	
-	/**
-	 * This method estimates the number of visible lines in the rendering
-	 * table.  
-	 * @return estimated number of visible lines in the table
-	 */
-	private int getNumberOfVisibleLines()
-	{
-		if(fTableViewer == null)
-			return -1;
-		
-		Table table = fTableViewer.getTable();
-		int height = fTableViewer.getTable().getSize().y;
-		
-		// when table is not yet created, height is zero
-		if (height == 0)
-		{
-			// make use of the table viewer to estimate table size
-			height = fTableViewer.getTable().getParent().getSize().y;
-		}
-		
-		// height of border
-		int border = fTableViewer.getTable().getHeaderHeight();
-		
-		// height of scroll bar
-		int scroll = fTableViewer.getTable().getHorizontalBar().getSize().y;
-
-		// height of table is table's area minus border and scroll bar height		
-		height = height-border-scroll;
-
-		// calculate number of visible lines
-		int lineHeight = getMinTableItemHeight(table);
-		
-		int numberOfLines = height/lineHeight;
-		
-		if (numberOfLines <= 0)
-			return 20;
-	
-		return numberOfLines;		
-	}
-	
-	private static void  setTopIndex(Table table, int index)
-	{
-		table.setTopIndex(index);
-	}
-
-	private void addRenderingToSyncService()
-	{
-		IMemoryRenderingSynchronizationService syncService = getMemoryRenderingContainer().getMemoryRenderingSite().getSynchronizationService();
-		
-		if (syncService == null)
-			return;
-		
-		syncService.addPropertyChangeListener(this, null);
-	
-		if (!isDisplayingError())
-		{
-			if (syncService.getSynchronizationProvider() == null)
-				syncService.setSynchronizationProvider(this);
-			
-			// check if there is already synchronization info available
-			Object selectedAddress =getSynchronizedProperty( AbstractTableRendering.PROPERTY_SELECTED_ADDRESS);
-			Object size =getSynchronizedProperty( AbstractTableRendering.PROPERTY_COL_SIZE);
-			Object topAddress =getSynchronizedProperty( AbstractTableRendering.PROPERTY_TOP_ADDRESS);
-			
-			if (!isDynamicLoad())
-			{
-				Object pageStartAddress = getSynchronizedProperty(IInternalDebugUIConstants.PROPERTY_PAGE_START_ADDRESS);
-				if (pageStartAddress == null)
-					updateSyncPageStartAddress();
-			}
-			
-			// if info is available, some other view tab has already been
-			// created
-			// do not overwirte info int he synchronizer if that's the case
-			if (selectedAddress == null) {
-				updateSyncSelectedAddress();
-			}
-
-			if (size == null) {
-				updateSyncColSize();
-			}
-			if (topAddress == null) {
-				updateSyncTopAddress();
-			}
-		}
-	}
-	
-	/**
-	 * Get properties from synchronizer and synchronize settings
-	 */
-	private void synchronize()
-	{			
-		if (!isDynamicLoad())
-		{
-			BigInteger pageStart = (BigInteger)getSynchronizedProperty(IInternalDebugUIConstants.PROPERTY_PAGE_START_ADDRESS);
-			if (pageStart != null && fContentInput != null && fContentInput.getLoadAddress() != null)
-			{
-				if (!fContentInput.getLoadAddress().equals(pageStart))
-					handlePageStartAddressChanged(pageStart);
-			}
-			else if (pageStart != null)
-			{
-				handlePageStartAddressChanged(pageStart);
-			}
-		}
-		
-		Integer columnSize = (Integer) getSynchronizedProperty(AbstractTableRendering.PROPERTY_COL_SIZE);
-		BigInteger selectedAddress = (BigInteger)getSynchronizedProperty(AbstractTableRendering.PROPERTY_SELECTED_ADDRESS);
-		BigInteger topAddress = (BigInteger)getSynchronizedProperty(AbstractTableRendering.PROPERTY_TOP_ADDRESS);
-		
-		if (columnSize != null) {
-			int colSize = columnSize.intValue();
-			if (colSize > 0 && colSize != fColumnSize) {
-				columnSizeChanged(colSize);
-			}
-		}
-		if (topAddress != null) {
-			if (!topAddress.equals(getTopVisibleAddress())) {
-				if (selectedAddress != null) {
-					if (!fSelectedAddress.equals(selectedAddress)) {
-						selectedAddressChanged(selectedAddress);
-					}
-				}
-				topVisibleAddressChanged(topAddress);
-			}
-		}
-		if (selectedAddress != null) {
-			if (selectedAddress.compareTo(fSelectedAddress) != 0) {
-				selectedAddressChanged(selectedAddress);
-			}
-		}
-	}
-	
-	/**
-	 * Resize column to the preferred size.
-	 */
-	public void resizeColumnsToPreferredSize() {
-		// pack columns
-		Table table = fTableViewer.getTable();
-		TableColumn[] columns = table.getColumns();
-		
-		for (int i=0 ;i<columns.length-1; i++)
-		{	
-			columns[i].pack();
-		}
-		
-		if (!fIsShowAddressColumn)
-		{
-			columns[0].setWidth(0);
-		}
-	}
-	
-	/**
-	 * update selected address in synchronizer if update is true.
-	 */
-	private void updateSyncSelectedAddress() {
-		
-		if (!fIsCreated)
-			return;
-		PropertyChangeEvent event = new PropertyChangeEvent(this, AbstractTableRendering.PROPERTY_SELECTED_ADDRESS, null, fSelectedAddress);
-		firePropertyChangedEvent(event);
-	}
-
-	/**
-	 * update column size in synchronizer
-	 */
-	private void updateSyncColSize() {
-		
-		if (!fIsCreated)
-			return;
-		
-		PropertyChangeEvent event = new PropertyChangeEvent(this, AbstractTableRendering.PROPERTY_COL_SIZE, null, new Integer(fColumnSize));
-		firePropertyChangedEvent(event);
-	}
-	
-	/**
-	 * update top visible address in synchronizer
-	 */
-	private void updateSyncTopAddress() {
-		
-		if (!fIsCreated)
-			return;
-
-		PropertyChangeEvent event = new PropertyChangeEvent(this, AbstractTableRendering.PROPERTY_TOP_ADDRESS, null, fTopRowAddress);
-		firePropertyChangedEvent(event);
-	}
-	
-	private void updateSyncPageStartAddress() {
-	
-		if (!fIsCreated)
-			return;
-		
-		if (isBaseAddressChanged())
-			return;
-		
-		BigInteger pageStart;
-		if (isDynamicLoad())
-		{
-			// if dynamic loading, the page address should be the top
-			// row address
-			pageStart = fTopRowAddress;
-		}
-		else
-		{
-			// otherwise, the address is the buffer's start address
-			pageStart = fContentProvider.getBufferTopAddress();
-		}
-		
-		PropertyChangeEvent event = new PropertyChangeEvent(this, IInternalDebugUIConstants.PROPERTY_PAGE_START_ADDRESS, null, pageStart);
-		firePropertyChangedEvent(event);
-	}
-	
-	/**
-	 * Fills the context menu for this rendering
-	 * 
-	 * @param menu menu to fill
-	 */
-	protected void fillContextMenu(IMenuManager menu) {
-	
-		menu.add(new Separator("topMenu")); //$NON-NLS-1$
-		menu.add(fResetMemoryBlockAction);
-		menu.add(fGoToAddressAction);
-	
-		menu.add(new Separator());
-		
-		if (fFormatColumnActions.length > 0)
-		{
-			// Format view tab actions
-			IMenuManager formatMenu = new MenuManager(DebugUIMessages.AbstractTableRendering_5,  //$NON-NLS-1$
-				"format"); //$NON-NLS-1$
-			
-			menu.appendToGroup("topMenu", formatMenu); //$NON-NLS-1$
-		
-			for (int i=0; i<fFormatColumnActions.length; i++)
-			{
-				formatMenu.add(fFormatColumnActions[i]);	
-		
-				// add check mark to the action to reflect current format of the view tab
-				if (fFormatColumnActions[i] instanceof FormatColumnAction)
-				{
-					if (((FormatColumnAction)fFormatColumnActions[i]).getColumnSize() == getBytesPerColumn())
-					{
-						fFormatColumnActions[i].setChecked(true);
-					}
-					else
-					{
-						fFormatColumnActions[i].setChecked(false);
-					}
-				}
-			}
-		}
-		if (!isDynamicLoad())
-		{		
-			menu.add(new Separator());
-			menu.add(fPrevAction);
-			menu.add(fNextAction);
-		}
-		
-		menu.add(new Separator());
-		menu.add(fReformatAction);
-		menu.add(fToggleAddressColumnAction);
-		menu.add(new Separator());
-		menu.add(fCopyToClipboardAction);
-		menu.add(fPrintViewTabAction);
-		if (fPropertiesAction != null)
-		{
-			menu.add(new Separator());
-			menu.add(fPropertiesAction);
-		}
-		
-	}
-	
-	/**
-	 * Returns the number of addressable units per row.
-	 *  
-	 * @return number of addressable units per row
-	 */
-	public int getAddressableUnitPerLine() {
-		return fBytePerLine / getAddressableSize();
-	}
-	
-	/**
-	 * Returns the number of addressable units per column.
-	 * 
-	 * @return number of addressable units per column
-	 */
-	public int getAddressableUnitPerColumn() {
-		return fColumnSize / getAddressableSize();
-	}
-	
-	/**
-	 * Returns the number of bytes displayed in a single column cell.
-	 * 
-	 * @return the number of bytes displayed in a single column cell
-	 */
-	public int getBytesPerColumn()
-	{
-		return fColumnSize;
-	}
-
-	/**
-	 * Returns the number of bytes displayed in a row.
-	 * 
-	 * @return the number of bytes displayed in a row
-	 */
-	public int getBytesPerLine()
-	{
-		return fBytePerLine;
-	}
-	
-	/**
-	 * Updates labels of this rendering.
-	 */
-	public void updateLabels()
-	{
-		// update tab labels
-		updateRenderingLabel(true);
-		
-		if (fTableViewer != null)
-		{
-			// update column labels
-			setColumnHeadings();
-			fTableViewer.refresh();
-		}
-	}
-	/**
-	 * Updates the label of this rendering, optionally displaying the
-	 * base address of this rendering's memory block.
-	 * 
-	 * @param showAddress whether to display the base address of this
-	 *  rendering's memory block in this rendering's label
-	 */
-	protected void updateRenderingLabel(boolean showAddress)
-	{	
-		fLabel = ""; //$NON-NLS-1$
-		if (getMemoryBlock() instanceof IMemoryBlockExtension)
-		{
-			fLabel = ((IMemoryBlockExtension)getMemoryBlock()).getExpression();
-			
-			if (fLabel.startsWith("&")) //$NON-NLS-1$
-				fLabel = "&" + fLabel; //$NON-NLS-1$
-			
-			if (fLabel == null)
-			{
-				fLabel = DebugUIMessages.AbstractTableRendering_8; //$NON-NLS-1$
-			}
-			
-			try {
-				if (showAddress && ((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress() != null)
-				{	
-					fLabel += " : 0x"; //$NON-NLS-1$
-					fLabel += ((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress().toString(16).toUpperCase();
-				}
-			} catch (DebugException e) {
-				// do nothing, the label will not show the address
-			}
-		}
-		else
-		{
-			long address = getMemoryBlock().getStartAddress();
-			fLabel = Long.toHexString(address).toUpperCase();
-		}
-		
-		String preName = DebugUITools.getMemoryRenderingManager().getRenderingType(getRenderingId()).getLabel();
-		
-		if (preName != null)
-			fLabel += " <" + preName + ">"; //$NON-NLS-1$ //$NON-NLS-2$
-		
-		firePropertyChangedEvent(new PropertyChangeEvent(this, IBasicPropertyConstants.P_TEXT, null, fLabel));
-	}
-	
-	private void setColumnHeadings()
-	{
-		String[] columnLabels = new String[0];
-
-		
-		IMemoryBlockTablePresentation presentation = getTablePresentationAdapter();
-		if (presentation != null)
-		{
-			columnLabels = presentation.getColumnLabels(getMemoryBlock(), fBytePerLine, getNumCol());
-		}
-		
-		// check that column labels returned are not null
-		if (columnLabels == null)
-			columnLabels = new String[0];
-		
-		int numByteColumns = fBytePerLine/fColumnSize;
-		
-		TableColumn[] columns = fTableViewer.getTable().getColumns();
-		
-		int j=0;
-		for (int i=1; i<columns.length-1; i++)
-		{	
-			// if the number of column labels returned is correct
-			// use supplied column labels
-			if (columnLabels.length == numByteColumns)
-			{
-				columns[i].setText(columnLabels[j]);
-				j++;
-			}
-			else
-			{
-				// otherwise, use default
-				if (fColumnSize >= 4)
-				{
-					columns[i].setText(Integer.toHexString(j*fColumnSize).toUpperCase() + 
-							" - " + Integer.toHexString(j*fColumnSize+fColumnSize-1).toUpperCase()); //$NON-NLS-1$
-				}
-				else
-				{
-					columns[i].setText(Integer.toHexString(j*fColumnSize).toUpperCase());
-				}
-				j++;
-			}
-		}
-	}
-	
-	/**
-	 * Refresh the table viewer with the current top visible address.
-	 * Update labels in the memory rendering.
-	 */
-	public void refresh()
-	{	
-		// refresh at start address of this memory block
-		// address may change if expression is evaluated to a different value
-		IMemoryBlock mem = getMemoryBlock();
-		BigInteger address;
-		
-		if (mem instanceof IMemoryBlockExtension)
-		{
-			try {
-				address = ((IMemoryBlockExtension)mem).getBigBaseAddress();
-				if (address == null)
-				{	
-					DebugException e = new DebugException(DebugUIPlugin.newErrorStatus(DebugUIMessages.AbstractTableRendering_10, null)); //$NON-NLS-1$
-					displayError(e);
-					return;
-				}
-				updateRenderingLabel(true);
-				// base address has changed
-				if (address.compareTo(fContentProvider.getContentBaseAddress()) != 0)
-				{
-					// get to new address
-					setSelectedAddress(address);
-					updateSyncSelectedAddress();
-					
-					reloadTable(address, true);
-					
-					if (!isDynamicLoad())
-					{
-						updateSyncPageStartAddress();
-						setTopIndex(fTableViewer.getTable(), 0);
-					}
-					
-					fTopRowAddress = getTopVisibleAddress();
-					updateSyncTopAddress();
-					
-					fContentInput.updateContentBaseAddress();
-				}
-				else
-				{
-					// reload at top of table
-					if (isDynamicLoad())
-						address = getTopVisibleAddress();
-					else
-						address = fContentInput.getLoadAddress();
-					reloadTable(address, true);
-				}
-			} catch (DebugException e) {
-				displayError(e);
-				return;
-			}				
-		}
-		else
-		{
-			address = BigInteger.valueOf(mem.getStartAddress());
-			reloadTable(address, true);
-		}
-	}
-	
-	synchronized private void reloadTable(BigInteger topAddress, boolean updateDelta){
-		
-		if (fTableViewer == null)
-			return;
-		
-		try
-		{
-			Table table = (Table)fTableViewer.getControl();	
-			
-			TableRenderingContentInput input;
-			if (isDynamicLoad())
-				input = new TableRenderingContentInput(this, fContentInput.getPreBuffer(), fContentInput.getPostBuffer(), fContentInput.getDefaultBufferSize(), topAddress, getNumberOfVisibleLines(), updateDelta);
-			else
-				input = new TableRenderingContentInput(this, fContentInput.getPreBuffer(), fContentInput.getPostBuffer(), fContentInput.getDefaultBufferSize(), topAddress, fPageSize, updateDelta);
-			
-			fContentInput = input;
-			fTableViewer.setInput(fContentInput);
-	
-			if (isDynamicLoad())
-			{
-				if (getMemoryBlock() instanceof IMemoryBlockExtension)
-				{
-					int topIdx = findAddressIndex(topAddress);
-					
-					if (topIdx != -1)
-					{
-						setTopIndex(table, topIdx);
-					}
-				}
-				
-				// cursor needs to be refreshed after reload
-				if (isAddressVisible(fSelectedAddress))
-					setCursorAtAddress(fSelectedAddress);
-			}
-			else
-			{
-				if (!isAddressOutOfRange(fSelectedAddress))
-				{
-					setCursorAtAddress(fSelectedAddress);
-					fTableCursor.setVisible(true);
-				}
-				else
-				{
-					fTableCursor.setVisible(false);
-				}
-			}
-		}
-		finally
-		{
-		}
-	}
-	
-	private BigInteger getTopVisibleAddress() {
-		
-		if (fTableViewer == null)
-			return BigInteger.valueOf(0);
-
-		Table table = fTableViewer.getTable();
-		int topIndex = getTopVisibleIndex(table);
-
-		if (topIndex < 1) { topIndex = 0; }
-
-		if (table.getItemCount() > topIndex) 
-		{
-			TableRenderingLine topItem = (TableRenderingLine)table.getItem(topIndex).getData();
-			
-			String calculatedAddress = null;
-			if (topItem == null)
-			{
-				calculatedAddress = table.getItem(topIndex).getText();
-			}
-			else
-			{
-				calculatedAddress = topItem.getAddress();				
-			}
-			
-			BigInteger bigInt = new BigInteger(calculatedAddress, 16);
-			return bigInt;
-		}
-		return BigInteger.valueOf(0);
-	}
-	
-	private int findAddressIndex(BigInteger address)
-	{
-		TableItem items[] = fTableViewer.getTable().getItems();
-	
-		for (int i=0; i<items.length; i++){
-			
-			// Again, when the table resizes, the table may have a null item
-			// at then end.  This is to handle that.
-			if (items[i] != null)
-			{	
-				TableRenderingLine line = (TableRenderingLine)items[i].getData();
-				BigInteger lineAddress = new BigInteger(line.getAddress(), 16);
-				int addressableUnit = getAddressableUnitPerLine();
-				BigInteger endLineAddress = lineAddress.add(BigInteger.valueOf(addressableUnit));
-				
-				if (lineAddress.compareTo(address) <= 0 && endLineAddress.compareTo(address) > 0)
-				{	
-					return i;
-				}
-			}
-		}
-		
-		return -1;
-	}
-	
-	private static int getTopVisibleIndex(Table table)
-	{
-		int index = table.getTopIndex();
-		
-		TableItem item = table.getItem(index);
-		int cnt = table.getItemCount();
-		
-		while (item.getBounds(0).y < 0)
-		{
-			index++;
-			if (index >= cnt)
-			{
-				index--;
-				break;
-			}
-			item = table.getItem(index);
-		}
-		
-		return index;
-	}
-	
-	/**
-	 * Returns this rendering's table viewer.
-	 */
-	public TableViewer getTableViewer()
-	{
-		return fTableViewer;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#dispose()
-	 */
-	public void dispose() {
-		try {	
-			// prevent rendering from being disposed again
-			if (fIsDisposed)
-				return;
-			
-			fIsDisposed = true;
-			
-			if (fContentProvider != null)
-				fContentProvider.dispose();
-			
-			ScrollBar scroll = ((Table)fTableViewer.getControl()).getVerticalBar();
-			if (scroll != null)
-				scroll.removeSelectionListener(fScrollbarSelectionListener);
-			
-			fTableCursor.removeTraverseListener(fCursorTraverseListener);
-			fTableCursor.removeKeyListener(fCursorKeyAdapter);
-			fTableCursor.removeMouseListener(fCursorMouseListener);
-			
-			fCursorEditor.dispose();
-			
-			fTextViewer = null;
-			fTableViewer = null;
-			fTableCursor = null;
-			
-			// clean up cell editors
-			for (int i=0; i<fEditors.length; i++)
-			{
-				fEditors[i].dispose();
-			}
-			
-			// remove font change listener when the view tab is disposed
-			JFaceResources.getFontRegistry().removeListener(this);
-			
-			// remove the view tab from the synchronizer
-			IMemoryRenderingSynchronizationService syncService = getMemoryRenderingContainer().getMemoryRenderingSite().getSynchronizationService();
-			if (syncService != null)
-				syncService.removePropertyChangeListener(this);
-			
-			DebugUIPlugin.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-			
-			super.dispose();
-
-		} catch (Exception e) {}
-	}
-	
-	private int getNumCol() {
-		
-		int bytesPerLine = getBytesPerLine();
-		int columnSize = getBytesPerColumn();
-		
-		return bytesPerLine/columnSize;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.IMemoryViewTab#setFont(org.eclipse.swt.graphics.Font)
-	 */
-	private void setFont(Font font)
-	{	
-		int oldIdx = getTopVisibleIndex(fTableViewer.getTable());
-		
-		// BUG in table, if font is changed when table is not starting
-		// from the top, causes table gridline to be misaligned.
-		setTopIndex(fTableViewer.getTable(),  0);
-		
-		// set font
-		fTableViewer.getTable().setFont(font);
-		fTableCursor.setFont(font);
-		
-		setTopIndex(fTableViewer.getTable(),  oldIdx);
-		
-		resizeColumnsToPreferredSize();
-		
-		// update table cursor and force redraw
-		setCursorAtAddress(fSelectedAddress);
-	}
-	
-	
-	/**
-	 * Moves the cursor to the specified address.
-	 * Will load more memory if the address is not currently visible.
-	 * 
-	 * @param address address to position cursor at
-	 * @throws DebugException if an exception occurrs
-	 */
-	public void goToAddress(BigInteger address) throws DebugException {
-		Object evtLockClient = new Object();
-		try
-		{	
-			if (!fEvtHandleLock.acquireLock(evtLockClient))
-				return;
-
-			// if address is within the range, highlight			
-			if (!isAddressOutOfRange(address))
-			{
-				setSelectedAddress(address);
-				updateSyncSelectedAddress();
-				setCursorAtAddress(fSelectedAddress);
-				
-				// force the cursor to be shown
-				if (!isAddressVisible(fSelectedAddress))
-				{	
-					int i = findAddressIndex(fSelectedAddress);
-					fTableViewer.getTable().showItem(fTableViewer.getTable().getItem(i));
-				}
-			}
-			else
-			{
-				// if not extended memory block
-				// do not allow user to go to an address that's out of range
-				if (!(getMemoryBlock() instanceof IMemoryBlockExtension))
-				{
-					Status stat = new Status(
-					 IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(),
-					 DebugException.NOT_SUPPORTED, DebugUIMessages.AbstractTableRendering_11, null  //$NON-NLS-1$
-					);
-					DebugException e = new DebugException(stat);
-					throw e;
-				}
-
-				BigInteger startAdd = fContentInput.getStartAddress();
-				BigInteger endAdd = fContentInput.getEndAddress();
-				
-				if (address.compareTo(startAdd) < 0 ||
-					address.compareTo(endAdd) > 0)
-				{
-					Status stat = new Status(
-					 IStatus.ERROR, DebugUIPlugin.getUniqueIdentifier(),
-					 DebugException.NOT_SUPPORTED, DebugUIMessages.AbstractTableRendering_11, null  //$NON-NLS-1$
-					);
-					DebugException e = new DebugException(stat);
-					throw e;
-				}
-				
-				setSelectedAddress(address);
-				updateSyncSelectedAddress();
-				
-				reloadTable(address, false);
-				
-				if (!isDynamicLoad())
-				{						
-					updateSyncPageStartAddress();
-				}
-				
-				// if the table is reloaded, the top address is chagned in this case
-				fTopRowAddress = address;
-				updateSyncTopAddress();
-				
-				// set the cursor at the selected address after reload
-				setCursorAtAddress(address);
-			}
-			fTableCursor.setVisible(true);
-		}
-		catch (DebugException e)
-		{
-			throw e;
-		}
-		finally
-		{
-			fEvtHandleLock.releaseLock(evtLockClient);
-		}
-	}
-	
-	/**
-	 * Check if address provided is out of buffered range
-	 * @param address
-	 * @return if address is out of bufferred range
-	 */
-	private boolean isAddressOutOfRange(BigInteger address)
-	{
-		return fContentProvider.isAddressOutOfRange(address);
-	}
-	
-	/**
-	 * Check if address is visible
-	 * @param address
-	 * @return if the given address is visible
-	 */
-	private boolean isAddressVisible(BigInteger address)
-	{
-		// if view tab is not yet created 
-		// cursor should always be visible
-		if (!fIsCreated)
-			return true;
-		
-		BigInteger topVisible = getTopVisibleAddress();
-		int addressableUnit = getAddressableUnitPerLine();
-		BigInteger lastVisible = getTopVisibleAddress().add(BigInteger.valueOf((getNumberOfVisibleLines() * addressableUnit) + addressableUnit));
-		
-		if (topVisible.compareTo(address) <= 0 && lastVisible.compareTo(address) > 0)
-		{
-			return true;
-		}
-		return false;
-	}
-	
-	/**
-	 * Create actions for the view tab
-	 */
-	protected void createActions() {
-		fCopyToClipboardAction = new CopyTableRenderingToClipboardAction(this);
-		fGoToAddressAction = new GoToAddressAction(this);
-		fResetMemoryBlockAction = new ResetToBaseAddressAction(this);
-		fPrintViewTabAction = new PrintTableRenderingAction(this);
-		
-		fFormatColumnActions = new Action[6];
-		fFormatColumnActions[0] =  new FormatColumnAction(1, getAddressableSize(), this);
-		fFormatColumnActions[1] =  new FormatColumnAction(2, getAddressableSize(), this);
-		fFormatColumnActions[2] =  new FormatColumnAction(4, getAddressableSize(), this);
-		fFormatColumnActions[3] =  new FormatColumnAction(8, getAddressableSize(), this);
-		fFormatColumnActions[4] =  new FormatColumnAction(16, getAddressableSize(), this);
-		fFormatColumnActions[5] =  new SetColumnSizeDefaultAction(this);
-		
-		fReformatAction = new ReformatAction(this);
-		fToggleAddressColumnAction = new ToggleAddressColumnAction();
-		
-		IMemoryRenderingSite site = getMemoryRenderingContainer().getMemoryRenderingSite();
-		if (site.getSite().getSelectionProvider() != null)
-		{
-			fPropertiesAction = new PropertyDialogAction(site.getSite(),site.getSite().getSelectionProvider()); 
-		}
-		
-		fNextAction = new NextPageAction();
-		fPrevAction = new PrevPageAction();
-	}
-	
-	/**
-	 * Handle scrollling and reload table if necessary
-	 * @param event
-	 */
-	private synchronized void handleScrollBarSelection()
-	{
-		Object evtLockClient = new Object();
-		try
-		{			
-			if (fIsDisposed)
-				return;
-			
-			BigInteger address = getTopVisibleAddress();
-	
-			if (!fTopRowAddress.equals(address))
-			{
-				fTopRowAddress = address;
-				updateSyncTopAddress();
-			}
-			
-			if (!fEvtHandleLock.acquireLock(evtLockClient))
-				return;
-			
-			if (getMemoryBlock() instanceof IMemoryBlockExtension)
-			{
-
-				if (isDynamicLoad())
-				{
-					if (!isAddressOutOfRange(address))
-					{
-						Table table = fTableViewer.getTable();
-						int numInBuffer = table.getItemCount();
-						int index = findAddressIndex(address);
-						if (index < 3)
-						{
-							if (isAtTopLimit())
-							{
-								setTopIndex(table, index);
-							}
-							else
-							{
-								reloadTable(address, false);
-							}
-						}
-						else if ((numInBuffer-(index+getNumberOfVisibleLines())) < 3)
-						{
-							if (!isAtBottomLimit())
-								reloadTable(address, false);
-						}
-					}
-					else
-					{	
-						// approaching limit, reload table
-						reloadTable(address, false);
-					}
-				}
-				
-				if (isAddressVisible(fSelectedAddress))
-					fTableCursor.setVisible(true);
-				else
-					fTableCursor.setVisible(false);
-			}
-		}
-		finally
-		{
-			fEvtHandleLock.releaseLock(evtLockClient);
-		}
-	}
-	
-	
-	private boolean isAtTopLimit()
-	{	
-		BigInteger startAddress = fContentInput.getStartAddress();
-		startAddress = MemoryViewUtil.alignDoubleWordBoundary(startAddress);
-		
-		BigInteger startBufferAddress = fContentProvider.getBufferTopAddress();
-		startBufferAddress = MemoryViewUtil.alignDoubleWordBoundary(startBufferAddress);
-		
-		if (startAddress.compareTo(startBufferAddress) == 0)
-			return true;
-		
-		return false;
-	}
-	
-	private boolean isAtBottomLimit()
-	{
-		BigInteger endAddress = fContentInput.getEndAddress();
-		endAddress = MemoryViewUtil.alignDoubleWordBoundary(endAddress);
-		
-		BigInteger endBufferAddress = fContentProvider.getBufferEndAddress();
-		endBufferAddress = MemoryViewUtil.alignDoubleWordBoundary(endBufferAddress);
-		
-		if (endAddress.compareTo(endBufferAddress) == 0)
-			return true;
-		
-		return false;		
-	}
-	
-	private boolean needMoreLines()
-	{
-		if (getMemoryBlock() instanceof IMemoryBlockExtension)
-		{		
-			Table table = fTableViewer.getTable();
-			TableItem firstItem = table.getItem(0);
-			TableItem lastItem = table.getItem(table.getItemCount()-1);
-			
-			if (firstItem == null || lastItem == null)
-				return true;
-			
-			TableRenderingLine first = (TableRenderingLine)firstItem.getData();
-			TableRenderingLine last = (TableRenderingLine) lastItem.getData();
-			
-			if (first == null ||last == null)
-			{
-				// For some reason, the table does not return the correct number
-				// of table items in table.getItemCount(), causing last to be null.
-				// This check is to ensure that we don't get a null pointer exception.
-				return true;
-			}
-			
-			BigInteger startAddress = new BigInteger(first.getAddress(), 16);
-			BigInteger lastAddress = new BigInteger(last.getAddress(), 16);
-			int addressableUnit = getAddressableUnitPerLine();
-			lastAddress = lastAddress.add(BigInteger.valueOf(addressableUnit));
-			
-			BigInteger topVisibleAddress = getTopVisibleAddress();
-			long numVisibleLines = getNumberOfVisibleLines();
-			long numOfBytes = numVisibleLines * addressableUnit;
-			
-			BigInteger lastVisibleAddrss = topVisibleAddress.add(BigInteger.valueOf(numOfBytes));
-			
-			// if there are only 3 lines left at the top, refresh
-			BigInteger numTopLine = topVisibleAddress.subtract(startAddress).divide(BigInteger.valueOf(addressableUnit));
-			if (numTopLine.compareTo(BigInteger.valueOf(3)) <= 0 && (startAddress.compareTo(BigInteger.valueOf(0)) != 0))
-			{
-				if (!isAtTopLimit())
-					return true;
-			}
-			
-			// if there are only 3 lines left at the bottom, refresh
-			BigInteger numBottomLine = lastAddress.subtract(lastVisibleAddrss).divide(BigInteger.valueOf(addressableUnit));
-			if (numBottomLine.compareTo(BigInteger.valueOf(3)) <= 0)
-			{
-				if (!isAtBottomLimit())
-					return true;
-			}
-			
-			return false;
-		}
-		
-		return false;
-	}
-
-	private void handleTableMouseEvent(MouseEvent e) {
-		// figure out new cursor position based on here the mouse is pointing
-		TableItem[] tableItems = fTableViewer.getTable().getItems();
-		TableItem selectedRow = null;
-		int colNum = -1;
-		int numCol = fTableViewer.getColumnProperties().length;
-		
-		for (int j=0; j<tableItems.length; j++)
-		{
-			TableItem item = tableItems[j];
-			for (int i=0; i<numCol; i++)
-			{
-				Rectangle bound = item.getBounds(i);
-				if (bound.contains(e.x, e.y))
-				{
-					colNum = i;
-					selectedRow = item;
-					break;
-				}
-			}
-		}
-		
-		// if column position cannot be determined, return
-		if (colNum < 1)
-			return;
-		
-		// handle user mouse click onto table
-		// move cursor to new position
-		if (selectedRow != null)
-		{
-			int row = fTableViewer.getTable().indexOf(selectedRow);
-			fTableCursor.setVisible(true);
-			fTableCursor.setSelection(row, colNum);
-			
-			// manually call this since we don't get an event when
-			// the table cursor changes selection.
-			handleCursorMoved();
-			
-			fTableCursor.setFocus();
-		}			
-	}
-	
-	/**
-	 * Handle column size changed event from synchronizer
-	 * @param newColumnSize
-	 */
-	private void columnSizeChanged(final int newColumnSize) {
-		// ignore event if view tab is disabled
-		if (!isVisible())
-			return;
-
-		Display.getDefault().asyncExec(new Runnable() {
-			public void run() {
-				format(getBytesPerLine(), newColumnSize);
-			}
-		});
-	}
-	
-	private void handleCursorMouseEvent(MouseEvent e){
-		if (e.button == 1)
-		{
-			int col = fTableCursor.getColumn();
-			if (col > 0 && col <= (getNumCol()))
-				activateCellEditor(null);
-		}			
-	}
-	
-	/**
-	 * Activate celll editor and prefill it with initial value.
-	 * If initialValue is null, use cell content as initial value
-	 * @param initialValue
-	 */
-	private void activateCellEditor(String initialValue) {
-		
-		int col = fTableCursor.getColumn();
-		int row = findAddressIndex(fSelectedAddress);
-		
-		if (row < 0)
-			return;
-		// do not allow user to edit address column
-		if (col == 0 || col > getNumCol())
-		{
-			return;
-		}
-		
-		ICellModifier cellModifier = null;
-		
-		if (fTableViewer == null)
-		{
-			return;
-		}
-		cellModifier = fTableViewer.getCellModifier();
-		
-		TableItem tableItem = fTableViewer.getTable().getItem(row);
-		
-		Object element = tableItem.getData();
-		Object property = fTableViewer.getColumnProperties()[col];
-		Object value = cellModifier.getValue(element, (String)property);
-		
-		// The cell modifier canModify function always returns false if the edit action 
-		// is not invoked from here.  This is to prevent data to be modified when
-		// the table cursor loses focus from a cell.  By default, data will
-		// be changed in a table when the cell loses focus.  This is to workaround
-		// this default behaviour and only change data when the cell editor
-		// is activated.
-		((TableRenderingCellModifier)cellModifier).setEditActionInvoked(true);
-		boolean canEdit = cellModifier.canModify(element, (String)property);
-		((TableRenderingCellModifier)cellModifier).setEditActionInvoked(false);
-		
-		if (!canEdit)
-			return;
-		
-		// activate based on current cursor position
-		TextCellEditor selectedEditor = (TextCellEditor)fTableViewer.getCellEditors()[col];
-
-		
-		if (fTableViewer != null && cellModifier != null && selectedEditor != null && tableItem != null)
-		{
-			// The control that will be the editor must be a child of the Table
-			Text text = (Text)selectedEditor.getControl();
-			
-			String cellValue  = null;
-			
-			if (initialValue != null)
-			{
-				cellValue = initialValue;	
-			}
-			else	
-			{
-				cellValue = ((String)value);
-			}
-			
-			text.setText(cellValue);
-	
-			fCursorEditor.horizontalAlignment = SWT.LEFT;
-			fCursorEditor.grabHorizontal = true;
-	
-			// Open the text editor in selected column of the selected row.
-			fCursorEditor.setEditor (text, tableItem, col);
-	
-			// Assign focus to the text control
-			selectedEditor.setFocus();
-			
-			if (initialValue != null)
-			{
-				text.clearSelection();
-			}
-			
-			text.setFont(JFaceResources.getFont(IInternalDebugUIConstants.FONT_NAME));
-
-			// add listeners for the text control
-			addListeners(text);
-			
-			// move cursor below text control
-			fTableCursor.moveBelow(text);
-		}
-	}
-	
-	/**
-	 * @param text
-	 */
-	private void addListeners(Text text) {
-		fEditorFocusListener = new FocusAdapter() {
-			public void focusLost(FocusEvent e)
-			{
-				handleTableEditorFocusLost(e);
-			}
-		};
-		text.addFocusListener(fEditorFocusListener);
-		
-		fEditorKeyListener = new KeyAdapter() {
-			public void keyPressed(KeyEvent e) {
-				handleKeyEventInEditor(e);
-			}
-		};
-
-		text.addKeyListener(fEditorKeyListener);
-	}
-	
-	/**
-	 * @param text
-	 */
-	private void removeListeners(Text text) {
-		
-		text.removeFocusListener(fEditorFocusListener);
-		text.removeKeyListener(fEditorKeyListener);
-	}
-	
-	private void handleTableEditorFocusLost(FocusEvent event)
-	{
-		final FocusEvent e = event;
-
-		Display.getDefault().syncExec(new Runnable() {
-
-			public void run()
-			{
-				try
-				{
-					int row = findAddressIndex(fSelectedAddress);
-					int col = fTableCursor.getColumn();
-					
-					Text text = (Text)e.getSource();
-					removeListeners(text);
-
-					// get new value
-					String newValue = text.getText();
-					
-					// modify memory at fRow and fCol
-					modifyValue(row, col, newValue);
-							
-					// show cursor after modification is completed
-					setCursorAtAddress(fSelectedAddress);
-					fTableCursor.moveAbove(text);
-					fTableCursor.setVisible(false);
-					fTableCursor.setVisible(true);
-				}
-				catch (NumberFormatException e1)
-				{
-					MemoryViewUtil.openError(DebugUIMessages.MemoryViewCellModifier_failure_title, 
-						DebugUIMessages.MemoryViewCellModifier_data_is_invalid, null);
-				}		
-			}
-		});		
-	}
-	
-	/**
-	 * @param event
-	 */
-	private void handleKeyEventInEditor(KeyEvent event) {
-		final KeyEvent e = event;
-		Display.getDefault().asyncExec(new Runnable()
-		{
-			public void run()
-			{
-				Text text = (Text)e.getSource();
-				int row = findAddressIndex(fSelectedAddress);
-				int col = fTableCursor.getColumn();
-				
-				try
-				{
-					switch (e.keyCode)
-					{
-						case SWT.ARROW_UP :
-							
-							// move text editor box up one row		
-							if (row-1 < 0)
-								return;
-						
-							// modify value for current cell
-							modifyValue(row, col, text.getText());
-													
-							row--;
-
-							//	update cursor location and selection in table	
-							fTableCursor.setSelection(row, col);
-							handleCursorMoved();
-							
-							// remove listeners when focus is lost
-							removeListeners(text);
-							activateCellEditor(null);
-							break;
-						case SWT.ARROW_DOWN :
-							
-							// move text editor box down one row
-							
-							if (row+1 >= fTableViewer.getTable().getItemCount())
-								return;
-							
-							// modify value for current cell
-							modifyValue(row, col, text.getText());
-						
-							row++;
-							
-							//	update cursor location and selection in table								
-							fTableCursor.setSelection(row, col);
-							handleCursorMoved();
-												
-							// remove traverse listener when focus is lost
-							removeListeners(text);
-							activateCellEditor(null);		
-							break;
-						case 0:
-							
-						// if user has entered the max number of characters allowed in a cell, move to next cell
-						// Extra changes will be used as initial value for the next cell
-							int numCharsPerByte = getNumCharsPerByte();
-							if (numCharsPerByte > 0)
-							{
-								if (text.getText().length() > getBytesPerColumn()*numCharsPerByte)
-								{
-									String newValue = text.getText();
-									text.setText(newValue.substring(0, getBytesPerColumn()*numCharsPerByte));
-									
-									modifyValue(row, col, text.getText());
-									
-									// if cursor is at the end of a line, move to next line
-									if (col >= getNumCol())
-									{
-										col = 1;
-										row++;
-									}
-									else
-									{
-										// move to next column
-										row++;
-									}
-									
-									// update cursor position and selected address
-									fTableCursor.setSelection(row, col);
-									handleCursorMoved();
-									
-									removeListeners(text);
-						
-									// activate text editor at next cell
-									activateCellEditor(newValue.substring(getBytesPerColumn()*numCharsPerByte));
-								}
-							}
-							break;	
-						case SWT.ESC:
-
-							// if user has pressed escape, do not commit the changes
-							// that's why "modifyValue" is not called
-							fTableCursor.setSelection(row, col);
-							handleCursorMoved();
-					
-							removeListeners(text);
-							
-							// cursor needs to have focus to remove focus from cell editor
-							fTableCursor.setFocus();
-							break;	
-						default :
-							numCharsPerByte = getNumCharsPerByte();
-							if (numCharsPerByte > 0)
-							{								
-								if (text.getText().length()> getBytesPerColumn()* numCharsPerByte)
-								{
-									String newValue = text.getText();
-									text.setText(newValue.substring(0,getBytesPerColumn()* numCharsPerByte));
-									modifyValue(row, col, text.getText());
-									// if cursor is at the end of a line, move to next line
-									if (col >= getNumCol())
-									{
-										col = 1;
-										row++;
-									}
-									else
-									{
-										col++;
-									}
-									
-									fTableCursor.setSelection(row, col);
-									handleCursorMoved();
-									
-									removeListeners(text);
-									
-									activateCellEditor(newValue.substring(getBytesPerColumn()*numCharsPerByte));
-								}
-							}
-						break;
-					}
-				}
-				catch (NumberFormatException e1)
-				{
-					MemoryViewUtil.openError(DebugUIMessages.MemoryViewCellModifier_failure_title, 
-						DebugUIMessages.MemoryViewCellModifier_data_is_invalid, null);
-					
-					fTableCursor.setSelection(row, col);
-					handleCursorMoved();
-			
-					removeListeners(text);
-				}
-			}
-		});
-	}
-
-	
-	/**
-	 * Modify value and send new value to debug adapter
-	 * @param row
-	 * @param col
-	 * @param newValue
-	 * @throws NumberFormatException
-	 */
-	private void modifyValue(int row, int col, String newValue) throws NumberFormatException
-	{
-		if (newValue.length() == 0)
-		{	
-			// do not do anything if user has not entered anything
-			return;
-		}
-		
-		TableItem tableItem = fTableViewer.getTable().getItem(row);
-
-		Object property = fTableViewer.getColumnProperties()[col];
-		fTableViewer.getCellModifier().modify(tableItem, (String)property, newValue);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#becomesHidden()
-	 */
-	public void becomesHidden() {
-		
-		if (isVisible() == false)
-		{
-			// super should always be called
-			super.becomesHidden();
-			return;
-		}
-
-		super.becomesHidden();
-		
-		if (getMemoryBlock() instanceof IMemoryBlockExtension)
-		{	
-			updateRenderingLabel(false);
-		}
-			
-		// once the view tab is disabled, all deltas information becomes invalid.
-		// reset changed information and recompute if data has really changed when
-		// user revisits the same tab.	
-		fContentProvider.resetDeltas();
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.IMemoryRendering#becomesVisible()
-	 */
-	public void becomesVisible() {
-		
-		// do not do anything if already visible
-		if (isVisible() == true)
-		{
-			// super should always be called
-			super.becomesVisible();
-			return;
-		}
-		
-		super.becomesVisible();
-		
-		boolean value = DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IDebugPreferenceConstants.PREF_DYNAMIC_LOAD_MEM);
-		if (value != isDynamicLoad())
-			// this call will cause a reload
-			handleDyanicLoadChanged();
-		else
-			refresh();
-		
-		synchronize();
-		updateRenderingLabel(true);
-	}
-	
-	/**
-	 * Resets this memory rendering.
-	 * The cursor will be moved to the base address of the memory block.
-	 * The table will be positioned to have the base address
-	 * at the top.
-	 */
-	public void reset()
-	{
-		try {
-			BigInteger baseAddress;
-		
-			if (getMemoryBlock() instanceof IMemoryBlockExtension)
-			{
-				baseAddress = ((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress();
-			}
-			else
-			{
-				baseAddress = BigInteger.valueOf(getMemoryBlock().getStartAddress());
-			}
-	
-			goToAddress(baseAddress);
-			topVisibleAddressChanged(baseAddress);
-		} catch (DebugException e) {
-			MemoryViewUtil.openError(DebugUIMessages.AbstractTableRendering_12, DebugUIMessages.AbstractTableRendering_13, e); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-	
-	/**
-	 * Returns the currently selected address in this rendering.
-	 * 
-	 * @return the currently selected address in this rendering
-	 */
-	public BigInteger getSelectedAddress() {
-		return fSelectedAddress;
-	}
-
-	/**
-	 * Returns the currently selected content in this rendering as a String.
-	 * 
-	 * @return the currently selected content in this rendering
-	 */
-	public String getSelectedAsString() {
-
-		if (isAddressOutOfRange(fSelectedAddress))
-			return ""; //$NON-NLS-1$
-		
-		int col = fTableCursor.getColumn();
-		TableItem rowItem = fTableCursor.getRow();
-		int row = fTableViewer.getTable().indexOf(rowItem);
-		
-		if (col == 0)
-		{
-			return rowItem.getText(0);
-		}
-		
-		// check precondition
-		if (col > getBytesPerLine()/getBytesPerColumn())
-		{
-			return ""; //$NON-NLS-1$
-		}
-				
-		TableItem tableItem = getTableViewer().getTable().getItem(row);
-		
-		return tableItem.getText(col);	
-	}
-	
-	/**
-	 * Returns the currently selected content in this rendering as MemoryByte.
-	 * 
-	 * @return the currently selected content in array of MemoryByte.  
-	 * Returns an empty array if the selected address is out of buffered range.
-	 */
-	public MemoryByte[] getSelectedAsBytes()
-	{
-		if (isAddressOutOfRange(fSelectedAddress))
-			return new MemoryByte[0];
-		
-		int col = fTableCursor.getColumn();
-		TableItem rowItem = fTableCursor.getRow();
-		
-		// check precondition
-		if (col == 0 || col > getBytesPerLine()/getBytesPerColumn())
-		{
-			return new MemoryByte[0];
-		}
-		
-		Object data = rowItem.getData();
-		if (data == null || !(data instanceof TableRenderingLine))
-			return new MemoryByte[0];
-		
-		TableRenderingLine line = (TableRenderingLine)data;
-		int offset = (col-1)*(getAddressableUnitPerColumn()*getAddressableSize());
-		int end = offset + (getAddressableUnitPerColumn()*getAddressableSize());
-		
-		// make a copy of the bytes to ensure that data cannot be changed
-		// by caller
-		MemoryByte[] bytes = line.getBytes(offset, end);
-		MemoryByte[] retBytes = new MemoryByte[bytes.length];
-		
-		System.arraycopy(bytes, 0, retBytes, 0, bytes.length);
-		
-		return retBytes;
-	}
-	
-	/**
-	 * Returns the number of characters a byte will convert to
-	 * or -1 if unknown.
-	 * 
-	 * @return the number of characters a byte will convert to
-	 *  or -1 if unknown
-	 */
-	public int getNumCharsPerByte()
-	{
-		return -1;
-	}
-	
-	private int getMinTableItemHeight(Table table){
-		
-		// Hack to get around Linux GTK problem.
-		// On Linux GTK, table items have variable item height as
-		// carriage returns are actually shown in a cell.  Some rows will be
-		// taller than others.  When calculating number of visible lines, we
-		// need to find the smallest table item height.  Otherwise, the rendering
-		// underestimates the number of visible lines.  As a result the rendering
-		// will not be able to get more memory as needed.
-		if (MemoryViewUtil.isLinuxGTK())
-		{
-			// check each of the items and find the minimum
-			TableItem[] items = table.getItems();
-			int minHeight = table.getItemHeight();
-			for (int i=0; i<items.length; i++)
-			{
-				minHeight = Math.min(items[i].getBounds(0).height, minHeight);
-			}
-			
-			return minHeight;
-				
-		}
-		return table.getItemHeight();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		
-		if (adapter == IColorProvider.class)
-			return getColorProviderAdapter();
-		
-		if (adapter == ILabelProvider.class)
-			return getLabelProviderAdapter();
-		
-		if (adapter == IFontProvider.class)
-			return getFontProviderAdapter();
-		
-		if (adapter == IMemoryBlockTablePresentation.class)
-			return getTablePresentationAdapter();
-		
-		if (adapter == IWorkbenchAdapter.class)
-		{
-			// needed workbench adapter to fill the title of property page
-			if (fWorkbenchAdapter == null) {
-				fWorkbenchAdapter = new IWorkbenchAdapter() {
-					public Object[] getChildren(Object o) {
-						return new Object[0];
-					}
-	
-					public ImageDescriptor getImageDescriptor(Object object) {
-						return null;
-					}
-	
-					public String getLabel(Object o) {
-						return getInstance().getLabel();
-					}
-	
-					public Object getParent(Object o) {
-						return null;
-					}
-				};
-			}
-			return fWorkbenchAdapter;
-		}
-		
-		if (adapter == IMemoryBlockConnection.class) {
-			if (fConnection == null) {
-				fConnection = new IMemoryBlockConnection() {
-					public void update() {
-						try {
-							fContentProvider.takeContentSnapshot();
-							if (getMemoryBlock() instanceof IMemoryBlockExtension)
-							{
-								BigInteger address = ((IMemoryBlockExtension)getMemoryBlock()).getBigBaseAddress();
-								if (address.compareTo(fContentProvider.getContentBaseAddress()) != 0)
-								{
-									// get to new address
-									setSelectedAddress(address);
-									updateSyncSelectedAddress();
-									fTopRowAddress = address;
-									fContentInput.updateContentBaseAddress();
-									fContentInput.setLoadAddress(address);
-								}
-								fContentProvider.loadContentForExtendedMemoryBlock();
-							}
-							else
-								fContentProvider.loadContentForSimpleMemoryBlock();
-	
-							// update UI asynchrounously
-							Display display = DebugUIPlugin.getDefault().getWorkbench().getDisplay();
-							display.asyncExec(new Runnable() {
-								public void run() {
-									updateLabels();
-									
-									if (getMemoryBlock() instanceof IMemoryBlockExtension) {
-										int topIdx = findAddressIndex(fTopRowAddress);
-										if (topIdx != -1) {
-											setTopIndex(fTableViewer.getTable(),topIdx);
-										}
-									}
-									
-									// cursor needs to be refreshed after reload
-									if (isAddressVisible(fSelectedAddress))
-									{
-										setCursorAtAddress(fSelectedAddress);
-										fTableCursor.setVisible(true);
-										fTableCursor.redraw();
-									}
-									else
-									{
-										fTableCursor.setVisible(false);
-									}
-									
-									if (!isDynamicLoad())
-										updateSyncPageStartAddress();
-									
-									updateSyncTopAddress();
-								}
-							});
-						} catch (DebugException e) {
-							displayError(e);
-						}
-					}
-				};
-			}
-			return fConnection;
-		}	
-		
-		return super.getAdapter(adapter);
-	}
-	
-	private AbstractTableRendering getInstance()
-	{
-		return this;
-	}
-	
-	private boolean hasCustomizedDecorations()
-	{
-		if (getFontProviderAdapter() == null &&
-			getColorProviderAdapter() == null &&
-			getLabelProviderAdapter() == null)
-			return false;
-		return true;
-	}
-	
-	private boolean isBaseAddressChanged()
-	{
-		try {
-			IMemoryBlock mb = getMemoryBlock();
-			if (mb instanceof IMemoryBlockExtension)
-			{
-				BigInteger baseAddress = ((IMemoryBlockExtension)mb).getBigBaseAddress();
-				if (baseAddress != null)
-				{
-					if (!baseAddress.equals(fContentInput.getContentBaseAddress()))
-						return true;
-				}
-			}
-		} catch (DebugException e1) {
-			return false;
-		}
-		return false;
-	}
-	
-	/**
-	 * Returns the color provider for this rendering's memory block or
-	 * <code>null</code> if none.
-	 * <p>
-	 * By default a color provider is obtained by aksing this rendering's
-	 * memory bock for its {@link IColorProvider} adapter. When the color
-	 * provider is queried for color information, it is provided with a
-	 * {@link MemoryRenderingElement} as an argument. 
-	 * </p>
-	 * @return the color provider for this rendering's memory block,
-	 *  or <code>null</code>
-	 */
-	protected IColorProvider getColorProviderAdapter()
-	{
-		return (IColorProvider)getMemoryBlock().getAdapter(IColorProvider.class);
-	}
-	
-	/**
-	 * Returns the label provider for this rendering's memory block or
-	 * <code>null</code> if none.
-	 * <p>
-	 * By default a label provider is obtained by aksing this rendering's
-	 * memory bock for its {@link ILabelProvider} adapter. When the label
-	 * provider is queried for label information, it is provided with a
-	 * {@link MemoryRenderingElement} as an argument. 
-	 * </p>
-	 * @return the label provider for this rendering's memory block,
-	 *  or <code>null</code>
-	 */
-	protected ILabelProvider getLabelProviderAdapter()
-	{
-		return (ILabelProvider)getMemoryBlock().getAdapter(ILabelProvider.class);
-	}
-	
-	/**
-	 * Returns the font provider for this rendering's memory block or
-	 * <code>null</code> if none.
-	 * <p>
-	 * By default a font provider is obtained by aksing this rendering's
-	 * memory bock for its {@link IFontProvider} adapter. When the font
-	 * provider is queried for font information, it is provided with a
-	 * {@link MemoryRenderingElement} as an argument. 
-	 * </p>
-	 * @return the font provider for this rendering's memory block,
-	 *  or <code>null</code>
-	 */
-	protected IFontProvider getFontProviderAdapter()
-	{
-		return (IFontProvider)getMemoryBlock().getAdapter(IFontProvider.class);
-	}
-	
-	/**
-	 * Returns the table presentation for this rendering's memory block or
-	 * <code>null</code> if none.
-	 * <p>
-	 * By default a table presentation is obtained by aksing this rendering's
-	 * memory bock for its {@link IMemoryBlockTablePresentation} adapter.
-	 * </p>
-	 * @return the table presentation for this rendering's memory block,
-	 *  or <code>null</code>
-	 */
-	protected IMemoryBlockTablePresentation getTablePresentationAdapter()
-	{
-		return (IMemoryBlockTablePresentation)getMemoryBlock().getAdapter(IMemoryBlockTablePresentation.class);
-	}
-	
-	private boolean isDynamicLoad()
-	{
-		return fContentProvider.isDynamicLoad();
-	}
-	
-	private int getPageSizeInUnits()
-	{
-		return fPageSize * getAddressableUnitPerLine();
-	}
-	
-	private void setSelectedAddress(BigInteger address)
-	{
-		fSelectedAddress = address;
-	}
-
-	
-	/**
-	 * Returns text for the given memory bytes at the specified address for the specified
-	 * rendering type. This is called by the label provider for.
-	 * Subclasses must override.
-	 * 
-	 * @param renderingTypeId rendering type identifier
-	 * @param address address where the bytes belong to
-	 * @param data the bytes
-	 * @return a string to represent the memory. Cannot not return <code>null</code>.
-	 * 	Returns a string to pad the cell if the memory cannot be converted
-	 *  successfully.
-	 */
-	abstract public String getString(String renderingTypeId, BigInteger address, MemoryByte[] data);
-	
-	/**
-	 * Returns bytes for the given text corresponding to bytes at the given
-	 * address for the specified rendering type. This is called by the cell modifier
-	 * when modifying bytes in a memory block.
-	 * Subclasses must convert the string value to an array of bytes.  The bytes will
-	 * be passed to the debug adapter for memory block modification.
-	 * Returns <code>null</code> if the bytes cannot be formatted properly.
-	 * 
-	 * @param renderingTypeId rendering type identifier
-	 * @param address address the bytes begin at
-	 * @param currentValues current values of the data in bytes format
-	 * @param newValue the string to be converted to bytes
-	 * @return the bytes converted from a string
-	 */
-	abstract public byte[] getBytes(String renderingTypeId, BigInteger address, MemoryByte[] currentValues, String newValue);
-
-}	
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTextRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTextRendering.java
deleted file mode 100644
index d5d5a98..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/AbstractTextRendering.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import java.io.UnsupportedEncodingException;
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.ui.IDebugUIConstants;
-
-/**
- * Abstract implementation of a rendering that translates memory into 
- * text, displayed in a table.
- * <p>
- * Clients should subclass from this class if they wish to provide a table
- * text rendering with a specific code page.
- * </p>
- * @since 3.1
- */
-abstract public class AbstractTextRendering extends AbstractTableRendering { 	
-	
-	private String fCodePage;
-
-	/**
-	 * Constructs a text rendering of the specified type.
-	 * 
-	 * @param renderingId memory rendering type identifier
-	 */
-	public AbstractTextRendering(String renderingId)
-	{
-		super(renderingId);
-	}
-	
-	/**
-	 * Constructs a text rendering of the specified type on the given
-	 * code page.
-	 * 
-	 * @param renderingId memory rendering type identifier
-	 * @param codePage the name of a supported
-     *  {@link java.nio.charset.Charset </code>charset<code>}, for
-     *  example <code>CP1252</code>
-	 */
-	public AbstractTextRendering(String renderingId, String codePage)
-	{
-		super(renderingId);
-		fCodePage = codePage;
-	}
-	
-	/**
-	 * Sets the code page for this rendering.  This does not cause
-	 * the rendering to be updated with the new code page.  Clients need
-	 * to update the rendering manually when the code page is changed.
-	 * 
-	 * @param codePage the name of a supported
-	 * {@link java.nio.charset.Charset </code>charset<code>}, for
-     *  example <code>CP1252</code>
-	 */
-	public void setCodePage(String codePage)
-	{
-		fCodePage = codePage;
-	}
-	
-	/**
-	 * Returns the current code page used by this rendering.  Returns null
-	 * if not set.
-	 * @return  Returns the current code page used by this rendering.  Returns null
-	 * if not set.
-	 */
-	public String getCodePage()
-	{
-		return fCodePage;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.memory.AbstractTableRendering#getString(java.lang.String, java.math.BigInteger, org.eclipse.debug.core.model.MemoryByte[])
-	 */
-	public String getString(String dataType, BigInteger address,  MemoryByte[] data) {
-		try {
-			String paddedStr = DebugUIPlugin.getDefault().getPreferenceStore().getString(IDebugUIConstants.PREF_PADDED_STR);
-			if(fCodePage == null)
-				return ""; //$NON-NLS-1$
-			
-			boolean invalid = false;
-			for (int i=0; i<data.length; i++)
-			{
-				if (!data[i].isReadable())
-				{
-					invalid = true;
-					break;
-				}
-			}
-			
-			if (invalid)
-			{
-				StringBuffer strBuf = new StringBuffer();
-				for (int i=0; i<data.length; i++)
-				{
-					strBuf.append(paddedStr);
-				}
-				return strBuf.toString();
-			}
-			
-			byte byteArray[] = new byte[data.length];
-			for (int i=0; i<byteArray.length; i++)
-			{
-				byteArray[i] = data[i].getValue(); 
-			}
-
-			return new String(byteArray, fCodePage);
-
-		} catch (UnsupportedEncodingException e) {
-			return "-- error --"; //$NON-NLS-1$
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see com.ibm.debug.extended.ui.AbstractTableViewTabLabelProvider#getBytes(java.lang.String)
-	 */
-	public byte[] getBytes(String dataType, BigInteger address, MemoryByte[] currentValues, String data) {
-		try {
-			
-			if (fCodePage == null)
-				return new byte[0];
-			
-			byte[] bytes =  data.getBytes(fCodePage);
-			return bytes;
-			
-		} catch (UnsupportedEncodingException e) {
-			return new byte[0];
-		}
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryBlockTablePresentation.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryBlockTablePresentation.java
deleted file mode 100644
index 5da90cc..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryBlockTablePresentation.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-
-package org.eclipse.debug.ui.memory;
-
-import java.math.BigInteger;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.debug.ui.IDebugModelPresentation;
-
-
-/**
- * Allows debug models to customize the rendering of addresses for its memory blocks
- * in table and text based renderings provided by the debug platform.
- * <p>
- * To contribute a memory block table presentation, implement your debug model
- * presentaion as documented in <code>org.eclipse.debug.ui.IDebugModelPresentation</code>.
- * In addition, implement this interface in your debug model presentation.  Your model
- * presentation will be called when <code>org.eclipse.debug.ui.memory.AbstractTableRendering</code>
- * contructs its column and row labels. 
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IMemoryBlockTablePresentation extends IDebugModelPresentation
-{
-	
-	/**
-     * Returns a collection of labels to head columns in a <code>AbstractTableRendering</code>
-     * rendering, or <code>null</code> if default labels should be used.
-     *  
-	 * @param blk memory block
-	 * @param bytesPerLine the number if bytes to be displayed
-	 * @param numColumns the number of columns the bytes are divided into 
-	 * @return a collection of labels to head columns in a <code>AbstractTableRendering</code>
-     * rendering, or <code>null</code> if default labels should be used
-	 */
-	public String[] getColumnLabels(IMemoryBlock blk, int bytesPerLine, int numColumns);
-	
-	
-	/**
-     * Renders and returns a label for a row starting at the given address within the given
-     * memory block, or <code>null</code> if default rendering should be used.
-     * 
-	 * @param blk memory block
-	 * @param address an address in the memory block
-	 * @return a label for a row starting at the given address within the given
-     * memory block, or <code>null</code> if default rendering should be used
-	 */
-	public String getRowLabel(IMemoryBlock blk, BigInteger address);
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRendering.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRendering.java
deleted file mode 100644
index 8893f77..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRendering.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-
-/**
- * An arbitrary rendering of a memory block. A memory rendering is contributed
- * via the <code>memoryRenderings</code> extension point.
- * <p>
- * Following is an example definition of a memory renderings extension.
- * <pre>
- * &lt;extension point="org.eclipse.debug.ui.memoryRenderings"&gt;
- *   &lt;memoryRenderingType
- *      id="com.example.asciiRendering"
- *      name="ASCII"
- *      class="com.example.RenderingFactory"&gt;
- *   &lt;/memoryRenderingType&gt;
- * &lt;/extension&gt;
- * </pre>
- * The attributes are specified as follows:
- * <ul>
- * <li><code>id</code> specifies a unique identifier for a type of memory rendering</li>
- * <li><code>name</code> specifies a human readable label for a rendering type</li>
- * <li><code>class</code> specifies the fully qualified name of the Java class
- *   that implements <code>IMemoryRenderingTypeDelegate</code>. Renderings are created
- *   via this factory.</li>
- * </ul>
- * </p>
- * <p>
- * A rendering provides an image and label. To support dynamic labels and images, property
- * change notification is used with the following property constants defined in
- * <code>IBasicPropertyConstants</code>:
- * <ul>
- * <li><code>P_TEXT</code> - indicates a label change</li>
- * <li><code>P_IMAGE</code> - indicates a image change</li>
- * </ul>
- * </p>
- * <p>
- * Renderings needing to synchronize with other renderings are intended to use
- * property change notifications via its synchronization service. For example, when a
- * rendering becomes visible, it can register for property change events with its rendering
- * site's synchronization service, and when it becomes hidden it can deregister. When a
- * rendering is activated, it should set itself as the synchrnoization provider in its
- * rendering site and fire property change events to communicate information to
- * interested listeners.
- * </p> 
- * <p>
- * Clients contributing a memory rendering type are intended to implement this interface
- * and <code>IMemoryRenderingTypeDelegate</code>. The factory will be used to create instances
- * of <code>IMemoryRendering</code>.
- * </p>
- * @since 3.1
- */
-public interface IMemoryRendering extends IAdaptable{
-    
-    /**
-     * Initializes this rendering to be hosted in the given container, displaying
-     * the given memory block. This method is called before this rendering's control
-     * has been created.
-     * 
-     * @param container container hosting this rendering
-     * @param block the memory block to render
-     */
-    public void init(IMemoryRenderingContainer container, IMemoryBlock block);
-    
-    /**
-     * Creates the top level control for this rendering under the given parent composite.
-     * This method is called after this rendering's <code>init</code> method has been
-     * called.
-     * <p>
-     * Implementors are responsible for ensuring that
-     * the created control can be accessed via <code>getControl</code>
-     * </p>
-     * @param parent the parent composite
-     */
-    public Control createControl(Composite parent);
-
-    /**
-     * Returns the top level control for this rendering.
-     * <p>
-     * May return <code>null</code> if the control
-     * has not been created yet.
-     * </p>
-     * @return the top level control or <code>null</code>
-     */
-    public Control getControl();
-    
-    /**
-     * Disposes this rendering.
-     */
-    public void dispose();
-    
-    /**
-     * Notification this rendering has become the active rendering. Only one
-     * rendering can be active at once. Generally, the active rendering is
-     * visible and has focus.
-     */
-    public void activated();
-    
-    /**
-     * Notification this rendering is no longer the active rendering.
-     */
-    public void deactivated();
-    
-    /**
-     * Notification this rendering has become visible in its container.
-     * Note that a rendering does not have to be active to be visible.
-     */
-    public void becomesVisible();
-    
-    /**
-     * Notification this rendering has become hidden in its container.
-     */
-    public void becomesHidden();
-    
-    /**
-     * Returns the memory block displayed by this rendering.
-     * 
-     * @return the memory block displayed by this rendering
-     */
-    public IMemoryBlock getMemoryBlock();
-    
-    /**
-     * Returns the identifier associated with this rendering's type.
-     *  
-     * @return the identifier associated with this rendering's type
-     * @see IMemoryRenderingType
-     */
-    public String getRenderingId();
-    
-    /**
-     * Adds a listener for property changes to this rendering.
-     * Has no effect if an identical listener is already registered.
-     * 
-     * @param listener a property change listener
-     */
-    public void addPropertyChangeListener(IPropertyChangeListener listener);
-    
-    /**
-     * Removes the given property change listener from this rendering.
-     * Has no effect if the identical listener is not registered.
-     *
-     * @param listener a property change listener
-     */
-    public void removePropertyChangeListener(IPropertyChangeListener listener);
-    
-    /**
-     * Returns an image for this rendering. Clients should not dispose
-     * this image. This rendering will dispose the image if required when
-     * this rendering is disposed.
-     * 
-     * @return an image for this rendering
-     */
-    public Image getImage();
-    
-    /**
-     * Returns a label for this rendering.
-     * 
-     * @return a label for this rendering
-     */
-    public String getLabel();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsListener.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsListener.java
deleted file mode 100644
index 6e5ab8c..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsListener.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.ui.memory;
-
-/** 
- * A rendering bindings listener is notified of changes in the renderings provided by
- * a rendering bindings provider. When bindings change, a memory block may be bound
- * to a different set of renderings.
- * <p>
- * Clients who wish to detect changes to a dynamic bindings provider should
- * implement this interface and register as a listener with the
- * {@link org.eclipse.debug.ui.memory.IMemoryRenderingManager}.
- * </p>
- * @since 3.1
- * @see IMemoryRenderingBindingsProvider#addListener
- * @see IMemoryRenderingBindingsProvider#removeListener
- */
-public interface IMemoryRenderingBindingsListener {
-	
-	/**
-	 * Notification that the bindings provided by a rendering bindings
-	 * provider have changed.
-	 */
-	void memoryRenderingBindingsChanged();
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsProvider.java
deleted file mode 100644
index fc5d2f4..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingBindingsProvider.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.debug.core.model.IMemoryBlock;
-
-
-/**
- * A rendering bindings provider provides rendering type bindings for a memory block.
- * <p>
- * By defualt, bindings for a memory block are provided by the memory rendering
- * manager. However, a client can provide dynamic renderings for a memory block
- * by contributing a dynamic rendering binding in the <code>renderingBindings</code>
- * element of a <code>memoryRenderings</code> extension.
- * </p>
- * <p>
- * Clients contributing dynamic rendering bindings are intended to implement this
- * interface.
- * </p>
- * @since 3.1
- */
-public interface IMemoryRenderingBindingsProvider {
-	
-	/**
-     * Retunrs all rendering types bound to the given memory block.
-     * This includes default and primary rendering types.
-     * 
-     * @param block memory block
-	 * @return all rendering types bound to the given memory block
-	 */
-	public IMemoryRenderingType[] getRenderingTypes(IMemoryBlock block);
-    
-    /**
-     * Returns default rendering types bound to the given memory block, 
-     * possibly empty.
-     * 
-     * @param block memory block
-     * @return default rendering types bound to the given memory block, 
-     * possibly empty
-     */
-    public IMemoryRenderingType[] getDefaultRenderingTypes(IMemoryBlock block);
-    
-    /**
-     * Returns the primary rendering type bound to the given memory block,
-     * or <code>null</code> if none.
-     * 
-     * @param block memory block
-     * @return the primary rendering type bound to the given memory block,
-     * or <code>null</code> if none
-     */
-    public IMemoryRenderingType getPrimaryRenderingType(IMemoryBlock block);
-		
-    /**
-     * Adds a listener to this binding provider.  The listener will be notified
-     * when rendering bindings change.
-     * <p>
-     * Has no affect if an identical listener is already registered.
-     * </p>
-     * @param listener listener to add
-     */
-	public void addListener(IMemoryRenderingBindingsListener listener);
-	
-    /**
-     * Removes a listener from this binding provider.  
-     * <p>
-     * Has no affect if an identical listener is not already registered.
-     * </p>
-     * @param listener listener to remove
-     */
-	public void removeListener(IMemoryRenderingBindingsListener listener);
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingContainer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingContainer.java
deleted file mode 100644
index b73e9ea..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingContainer.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-
-
-/**
- * A memory rendering container is a container within a memory rendering site
- * for hosting a memory renderings.
- * <p>
- * Clients hosting memory renderings may implement this interface.
- * </p>  
- * @since 3.1
- */
-public interface IMemoryRenderingContainer {
-	/**
-	 * Returns the rendering site hosting this container.
-	 * 
-	 * @return the rendering site hosting this container
-	 */
-	public IMemoryRenderingSite getMemoryRenderingSite();
-	
-	/**
-	 * Reutrns the identifier of this container. Identifiers
-	 * are unique within a container.
-	 * 
-	 * @return the identifier of this container
-	 */
-	public String getId();
-	
-	/**
-	 * Adds the given rendering to this container. A rendering must be
-	 * initialized before it is added to a container. This causes
-	 * the rendering's control to be created.
-	 * 
-	 * @param rendering the rendering to add
-	 */
-	public void addMemoryRendering(IMemoryRendering rendering);
-	
-	/**
-	 * Removes the given rendering from this container. This 
-	 * causes the rendering to be disposed.
-	 * 
-	 * @param rendering the rendering to remove
-	 */
-	public void removeMemoryRendering(IMemoryRendering rendering);
-	
-	/**
-	 * Returns all renderings currently hosted by this container.
-	 *  
-	 * @return all renderings currently hosted by this container
-	 */
-	public IMemoryRendering[] getRenderings();
-	
-	/**
-	 * Returns the active rendering in this container, or <code>null</code>
-	 * if none.
-	 * 
-	 * @return the active rendering in this container, or <code>null</code>
-	 * if none
-	 */
-	public IMemoryRendering getActiveRendering();
-	
-	/**
-	 * Returns the label for this container.
-	 * 
-	 * @return the label for this container
-	 */
-	public String getLabel();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingManager.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingManager.java
deleted file mode 100644
index a02e9ee..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingManager.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-
-
-/**
- * Manager for memory renderings. Provides facilities for creating
- * renderings and retrieving memory rendering bindings.
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IMemoryRenderingManager extends IMemoryRenderingBindingsProvider {
- 
-    
-    /**
-     * Returns all contributed memory rendering types.
-     * 
-     * @return all contributed memory rendering types
-     */
-    public IMemoryRenderingType[] getRenderingTypes();
-    
-    /**
-     * Returns the memory rendering type with the given identifier, or
-     * <code>null</code> if none.  The memory rendering manager will
-     * search through rendering types that are contributed via explicit
-     * rendering bindings.  (i.e. rendering types contributed via the
-     * memoryRenderings extension point). This method will not return 
-     * rendering types that are contributed by a memory binding provider.
-     * 
-     * @param id memory rendering type identifier
-     * @return the memory rendering type with the given identifier, or
-     * <code>null</code> if none
-     */
-    public IMemoryRenderingType getRenderingType(String id);
-    
-}
-
-
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSite.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSite.java
deleted file mode 100644
index 4cdf20f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSite.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.ui.IWorkbenchPartSite;
-
-/**
- * A workbench site that hosts memory renderings and provides
- * synchronization services for memory renderings.
- * <p>
- * A rendering site has an optional synchronization provider at any one time. If a
- * rendering provides synchronization information it should set itself as the synchronization
- * prodiver for its memory rendering site when it is activated. 
- * </p>
- * <p>
- * Clients hosting memory rendering may implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IMemoryRenderingSite {
-
-    /**
-     * Returns the workbench part site hosting memory renderings for this rendering site.
-     * 
-     * @return the view site hosting memory renderings for this rendering site
-     */
-    public IWorkbenchPartSite getSite();
-        
-    /**
-     * Returns the syncrhonization serivce for this rendering site
-     * or <code>null</code> if none.
-     * 
-     * @return the syncrhonization serivce for this rendering site or <code>null</code>
-     */
-    public IMemoryRenderingSynchronizationService getSynchronizationService();
-    
-    /**
-     * Returns all the memory rendering containers within this rendering site.
-     * 
-     * @return all the memory rendering containers within this rendering site
-     */
-    public IMemoryRenderingContainer[] getMemoryRenderingContainers();
-    
-    /**
-     * Returns the rendering container with the given id or <code>null</code>
-     * if none.
-     *
-     * @param id identifier of the container being requested
-     * @return the rendering container with the given id or <code>null</code>
-     * if none
-     */
-    public IMemoryRenderingContainer getContainer(String id);
-    
-    
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSynchronizationService.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSynchronizationService.java
deleted file mode 100644
index 06bc818..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingSynchronizationService.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.debug.core.model.IMemoryBlock;
-import org.eclipse.jface.util.IPropertyChangeListener;
-
-
-/**
- * Provides facilities related to the synchronization of memory renderings.
- * <p>
- * Clients hosting renderings may implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IMemoryRenderingSynchronizationService {
-    
-    /**
-     * Adds a listener for property changes notification for the specified properties.
-     * Specifying <code>null</code> indicates that the listener is interested in all 
-     * properties. If an identical listener is already registered, the properties
-     * it is registered to listen for are updated.
-     *
-     * @param listener a property change listener
-     * @param properites properties the listener is interested in, or <code>null</code>
-     *  to indicate all properties.
-     */    
-    public void addPropertyChangeListener(IPropertyChangeListener listener, String[] properties);
-    
-    /**
-     * Removes the given listener for property change notification.
-     * Has no effect if the identical listener is not registered.
-     *
-     * @param listener a property change listener
-     */
-    public void removePropertyChangeListener(IPropertyChangeListener listener);
-    
-    /**
-     * Returns the current value of the specified property for the given memory block, or
-     * <code>null</code> if none.
-     * 
-     * @param block memory block for which a property is requested
-     * @param property the name of the property
-     * @return the property value or <code>null</code>
-     */
-    public Object getProperty(IMemoryBlock block, String property);
-	
-    /**
-     * Sets the rendering currently providing sychronization information for
-     * this synchronization service, or <code>null</code> if none.
-     * 
-     * @param rendering active rendering providing synchronization information or
-     *  <code>null</code>
-     */
-    public void setSynchronizationProvider(IMemoryRendering rendering);
-    
-    /**
-     * Returns the rendering currengly providing synchronization information for
-     * this synchronization service, or <code>null</code if none.
-     * 
-     * @return rendering providing synchronization information or <code>null</null>
-     */
-    public IMemoryRendering getSynchronizationProvider(); 
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingType.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingType.java
deleted file mode 100644
index f6b0598..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingType.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * Represents a type of memory rendering contributed via the <code>memoryRenderings</code>
- * extension point.
- * <p>
- * Clients contributing a rendering usually
- * implement {@link org.eclipse.debug.ui.memory.IMemoryRenderingTypeDelegate}
- * and {@link org.eclipse.debug.ui.memory.IMemoryRendering}. Clients providing
- * dynamic rendering bindings via an 
- * {@link org.eclipse.debug.ui.memory.IMemoryRenderingBindingsProvider}
- * may implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IMemoryRenderingType {
-    
-    /**
-     * Returns a label for this type of memory rendering.
-     * 
-     * @return a label for this type of memory rendering
-     */
-    public String getLabel();
-    
-    /**
-     * Returns the unique identifier for this rendering type.
-     * 
-     * @return the unique identifier for this rendering type
-     */
-    public String getId();
-    
-    /**
-     * Creates and returns a new rendering of this type or <code>null</code>
-     * if none.
-     * 
-     * @return a new rendering of this type
-     * @exception CoreException if an exception occurrs creating
-     *  the rendering
-     */
-    public IMemoryRendering createRendering() throws CoreException;
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingTypeDelegate.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingTypeDelegate.java
deleted file mode 100644
index 9429124..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/IMemoryRenderingTypeDelegate.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.memory;
-
-import org.eclipse.core.runtime.CoreException;
-
-/**
- * A factory that creates memory renderings.
- * <p>
- * Clients contributing a memory rendering type are intended to implement this
- * interface. This factory will be used to create renderings. 
- * </p>
- * @since 3.1
- * @see org.eclipse.debug.ui.memory.IMemoryRendering
- */
-public interface IMemoryRenderingTypeDelegate {
-    
-    /**
-     * Creates and returns a rendering of the specified type, or <code>null</code>
-     * if none.
-     * 
-     * @param id unique identifier of a memory rendering type
-     * @return a new rendering of the given type or <code>null</code>
-     * @exception CoreException if unable to create the rendering
-     */
-    public IMemoryRendering createRendering(String id) throws CoreException;
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/MemoryRenderingElement.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/MemoryRenderingElement.java
deleted file mode 100644
index 7629ec1..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/memory/MemoryRenderingElement.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.debug.ui.memory;
-
-import java.math.BigInteger;
-
-import org.eclipse.debug.core.model.MemoryByte;
-
-/**
- * A memory rendering element represents a set of memory bytes being
- * rendered in a memory rendering. Instances of this class are passed
- * to a rendering's label provider, color provider, and font provider
- * to be rendered.
- * <p>
- * Clients may instantiate this class. Clients may subclass this class to add
- * other members / settings as required by a rendering.
- * </p>
- * @since 3.1
- */
-public class MemoryRenderingElement {
-	private IMemoryRendering fRendering;
-	private BigInteger fAddress;
-	private MemoryByte[] fBytes;
-	
-	/**
-	 * Constructs a new memory rendering element for the given rendering
-	 * and specified bytes.
-	 * 
-	 * @param rendering the rendering containing the memory block being rendered
-	 * @param address the address at which the rendering is taking place
-	 * @param bytes the memory bytes being rendered
-	 */
-	public MemoryRenderingElement(IMemoryRendering rendering, BigInteger address, MemoryByte[] bytes)
-	{
-		fRendering = rendering;
-		fAddress = address;
-		fBytes = bytes;
-	}
-	
-	/**
-	 * Returns the memory rendering in which bytes are being rendered.
-	 * 
-	 * @return the memory rendering in which bytes are being rendered
-	 */
-	public IMemoryRendering getRendering()
-	{
-		return fRendering;
-	}
-	
-	/**
-	 * Returns the address at which bytes are being rendered.
-	 * 
-	 * @return the address at which bytes are being rendered
-	 */
-	public BigInteger getAddress() {
-		return fAddress;
-	}
-	
-
-	/**
-	 * Returns the memory bytes being rendered.
-	 * 
-	 * @return the memory bytes being rendered
-	 */
-	public MemoryByte[] getBytes() {
-		return fBytes;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/package.html b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/package.html
deleted file mode 100644
index 6950f14..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/package.html
+++ /dev/null
@@ -1,72 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Eclipse Debug Tools</title>
-</head>
-
-<body bgcolor="#FFFFFF">
-
-<p>Provides a generic debugger user interface that clients may customize via standard
-workbench extension points.</p>
-
-<h2>Package Specification</h2>
-
-<p>The Eclipse platform debug UI plug-in provides a set of classes and interfaces to
-support a language independent debugger user interface. A generic debug perspective is provided with a common
-set of views. Clients contribute actions to the debug views via the
-standard workbench extension points.</p>
-
-<h4>The Debug View</h4>
-
-<p>The debug view presents a tree of launched programs in debug and non-debug (run) mode.
-The view provides support for standard interactions such as terminating, stepping, suspending, and resuming
-threads, debug targets, and processes. The debug view is linked to an editor view, variable view, and
-console. The editor view is used to display source code for stack frames. A selection in
-the debug view causes the line of code being executed to be highlighted in the editor
-view. The variable view shows the visible variables in the selected stack frame, and the
-console view handles I/O for the debuggable process.</p>
-
-<h4>The Variables View</h4>
-
-<p>The variables view presents a tree of variables for the currently selected stack frame.
-A "details" area may be hidden/shown which provides a detailed description of 
-the selected variable. For example, the Java debugger displays the result of
-invoking 'toString()' on the selected variable in this area.</p>
-
-<h4>The Breakpoints View</h4>
-
-<p>The breakpoints view presents a list of all breakpoints currently defined in the
-workspace. It supports enabling/disabling and breakpoint removal.</p>
-
-<h4>The Expression View</h4>
-
-<p>The expression view presents a tree of expressions and their corresponding values.</p>
-
-<h4>Debug Model Presentation</h4>
-
-<p>The debug UI plug-in defines an extension (<b>org.eclipse.debug.ui.debugModelPresentations</b>)
-point to allow implementations of debug models to provide custom rendering and
-presentation of its debug elements. Extensions are registered for a specific debug
-model. It is intended that an implementation of a debug model will also provide an
-implementation of a debug model presentation. The presentation provides: 
-
-<ul>
-  <li>an image for a debug element or breakpoint</li>
-  <li>a label for a debug element or breakpoint</li>
-  <li>an editor input and editor id used to display a debug element, breakpoint, or source element</li>
-  <li>a detailed description of a variable value, used to display
-   in the "details" section of the variables view</li>
-</ul>
-
-<h4>Launch Configuration Dialog</h4>
-
-<p>The debug UI plug-in provides a lanuch configuration dialog for
-creating and editing launch configurations. Clients may contribute
-tabs to the launch configuration dialog via the launchConfigurationTabGroup
-extension point.</p>
-
-
-</body>
-</html>
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/AbstractSourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/AbstractSourceContainerBrowser.java
deleted file mode 100644
index 6a7a19f..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/AbstractSourceContainerBrowser.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.swt.widgets.Shell;
-
-/**
- * Common implementation for source container browsers.
- * <p>
- * Clients implementing <code>ISourceContainerBrowser</code> should
- * subclass this class.
- * </p>
- * @since 3.0
- */
-public class AbstractSourceContainerBrowser implements ISourceContainerBrowser {
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#addSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.sourcelookup.ISourceLookupDirector)
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director) {
-		return new ISourceContainer[0];
-	}
-	/* (non-Javadoc)
-	 * 
-	 * Generally, a source container browser can add source containers. Subclasses
-	 * should override as required.
-	 * 
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#canAddSourceContainers(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector)
-	 */
-	public boolean canAddSourceContainers(ISourceLookupDirector director) {
-		return true;
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#editSourceContainers(org.eclipse.swt.widgets.Shell, org.eclipse.debug.core.sourcelookup.ISourceLookupDirector, org.eclipse.debug.core.sourcelookup.ISourceContainer[])
-	 */
-	public ISourceContainer[] editSourceContainers(Shell shell, ISourceLookupDirector director, ISourceContainer[] containers) {
-		return new ISourceContainer[0];
-	}
-	/* (non-Javadoc)
-	 * 
-	 * Not all source containers can be edited. Subclasses should override
-	 * as required.
-	 * 
-	 * @see org.eclipse.debug.internal.ui.sourcelookup.ISourceContainerBrowser#canEditSourceContainers(org.eclipse.debug.core.sourcelookup.ISourceLookupDirector, org.eclipse.debug.core.sourcelookup.ISourceContainer[])
-	 */
-	public boolean canEditSourceContainers(ISourceLookupDirector director, ISourceContainer[] containers) {
-		return false;
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceContainerBrowser.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceContainerBrowser.java
deleted file mode 100644
index 71688b0..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceContainerBrowser.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.swt.widgets.Shell;
-
-
-/**
- * Creates and edits source containers for a source lookup director.
- * Contributed via a source container presentation extension for
- * a specific type of source container.
- * <p>
- * Following is an example source container presentation definition
- * that contributes a source container browser via the
- * <code>browserClass</code> attribute.
- * <pre>
- * &lt;extension point=&quot;org.eclipse.debug.ui.sourceContainerPresentations&quot;&gt;
- *    &lt;sourceContainerPresentation
- *          browserClass=&quot;org.eclipse.debug.internal.ui.sourcelookup.browsers.ProjectSourceContainerBrowser&quot;
- *          containerTypeID=&quot;org.eclipse.debug.core.containerType.project&quot;
- *          icon=&quot;icons/full/obj16/prj_obj.gif&quot;
- *          id=&quot;org.eclipse.debug.ui.containerPresentation.project&quot;&gt;
- *    &lt;/sourceContainerPresentation&gt;
- * &lt;/extension&gt;
- * </pre>
- * </p>
- * @since 3.0
- */
-public interface ISourceContainerBrowser {
-	/**
-	 * Creates and returns new source containers to add to the given
-	 * source lookup director.
-	 * 
-	 * @param shell the shell to use to parent any dialogs
-	 * @param director the director the new containers will be added to
-	 * @return the new source containers to add
-	 */
-	public ISourceContainer[] addSourceContainers(Shell shell, ISourceLookupDirector director);
-	
-	/**
-	 * Returns whether this browser can add any source containers to the
-	 * given source lookup director.
-	 * 
-	 * @param director source lookup director to potentially add source
-	 *  containers to
-	 * @return whether this browser can add any source containers to the
-	 * given source lookup director
-	 */
-	public boolean canAddSourceContainers(ISourceLookupDirector director);
-	
-	/**
-	 * Edits and returns source containers to replace the given source
-	 * containers.
-	 * 
-	 * @param shell the shell to use to parent any dialogs
-	 * @param director the director the new containers will be added to
-	 * @param containers the source containers to be edited
-	 * @return the replacement source containers
-	 */
-	public ISourceContainer[] editSourceContainers(Shell shell, ISourceLookupDirector director, ISourceContainer[] containers);
-	
-	/**
-	 * Returns whether this browser can edit the given source containers.
-	 * 
-	 * @param director source lookup director to potentially edit source
-	 *  containers for
-	 * @param containers the containers to edit
-	 * @return whether this browser can edit the given source containers
-	 */
-	public boolean canEditSourceContainers(ISourceLookupDirector director, ISourceContainer[] containers);	
-	
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceLookupResult.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceLookupResult.java
deleted file mode 100644
index b485638..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/ISourceLookupResult.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.sourcelookup;
-
-import org.eclipse.ui.IEditorInput;
-
-/**
- * The result of performing source lookup on a debug artifact.
- * The result contains the resolved source element and description
- * of an editor (editor id, and editor input) in which to display
- * the result.
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @see org.eclipse.debug.ui.DebugUITools#lookupSource(Object, ISourceLocator)
- * @see org.eclipse.debug.ui.DebugUITools#displaySource(ISourceLookupResult, IWorkbenchPage)  
- * @since 3.1
- */
-public interface ISourceLookupResult {
-
-    /**
-     * Returns the artifact for which source lookup was performed,
-     * such as a stack frame.
-     * 
-     * @return the artifact for which source lookup was performed
-     */
-    public Object getArtifact();
-    
-    /**
-     * Returns the source element resolved during source lookup,
-     * or <code>null</code> if a source element was not resolved.
-     * 
-     * @return resolved source element or <code>null</code> if unknown
-     */
-    public Object getSourceElement();
-        
-    /**
-     * Returns the identifier of an editor used to display this result,
-     * or <code>null</code> if unknown.
-     * 
-     * @return the identifier of an editor used to display this result,
-     * or <code>null</code> if unknown
-     */
-    public String getEditorId();
-    
-    /**
-     * Returns the editor input used to display result,
-     * or <code>null</code> if unknown.
-     * 
-     * @return the editor input used to display result,
-     * or <code>null</code> if unknown
-     */
-    public IEditorInput getEditorInput();
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupDialog.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupDialog.java
deleted file mode 100644
index 7f21f91..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupDialog.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.sourcelookup;
-
-import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupPanel;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.IDialogConstants;
-import org.eclipse.jface.dialogs.TitleAreaDialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * A dialog for editing the source lookup path of a
- * source lookup director.
- * <p>
- * This class may be instantiated; it is not intended to be
- * subclassed.
- * </p>
- * @since 3.0
- */
-public class SourceLookupDialog extends TitleAreaDialog {
-	
-	private SourceLookupPanel fPanel;
-	private ISourceLookupDirector fDirector;
-	
-	/**
-	 * Constructs a dialog to edit the source lookup path managed by the
-	 * given source lookup director. Persists the resulting source lookup
-	 * path on the launch configuration associated with the given source
-	 * lookup director.
-	 * 
-	 * @param shell shell to parent the dialog
-	 * @param director source lookup director managing the source lookup
-	 *  path to be edited
-	 */
-	public SourceLookupDialog(Shell shell, ISourceLookupDirector director) {
-		super(shell);					
-		fDirector = director;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(org.eclipse.swt.widgets.Composite)
-	 */
-	protected Control createDialogArea(Composite parent) {
-		// create a composite with standard margins and spacing
-		setTitle(SourceLookupUIMessages.manageSourceDialog_description); //$NON-NLS-1$
-		setTitleImage(DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_EDIT_SRC_LOC_WIZ));
-		Composite composite = new Composite(parent, SWT.NONE);
-		
-		GridLayout layout = new GridLayout();
-		layout.marginHeight =
-			convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
-		layout.marginWidth =
-			convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
-		layout.verticalSpacing =
-			convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
-		layout.horizontalSpacing =
-			convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
-		composite.setLayout(layout);
-		GridData data = new GridData(GridData.FILL_BOTH);			
-		composite.setLayoutData(data);
-		composite.setFont(parent.getFont());
-		fPanel = new SourceLookupPanel();
-		fPanel.createControl(composite);
-		fPanel.initializeFrom(fDirector);
-		
-		Dialog.applyDialogFont(composite);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(getShell(),  IDebugHelpContextIds.EDIT_SOURCELOOKUP_DIALOG);
-		
-		return composite;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.dialogs.Dialog#okPressed()
-	 */
-	protected void okPressed() {
-		fPanel.performApply(null);
-		super.okPressed();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)
-	 */	
-	protected void configureShell(Shell shell) {
-		super.configureShell(shell);
-		shell.setText(SourceLookupUIMessages.manageSourceDialog_title); //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.window.Window#close()
-	 */
-	public boolean close() {
-		fPanel.dispose();
-		return super.close();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupTab.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupTab.java
deleted file mode 100644
index a05d861..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/SourceLookupTab.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.sourcelookup;
-
-import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy;
-import org.eclipse.debug.internal.ui.DebugPluginImages;
-import org.eclipse.debug.internal.ui.IDebugHelpContextIds;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupPanel;
-import org.eclipse.debug.internal.ui.sourcelookup.SourceLookupUIMessages;
-import org.eclipse.debug.ui.AbstractLaunchConfigurationTab;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * A launch configuration tab that displays and edits the source
- * lookup path for a launch configuration. This tab works with the
- * debug platform source lookup facilities - a source lookup director
- * with associated participants and source containers.
- * <p>
- * This tab may be instantiated. This class is not intended to be subclassed.
- * </p>
- * @since 3.0	 
- */
-
-public class SourceLookupTab extends AbstractLaunchConfigurationTab {
-	//the panel displaying the containers
-	private SourceLookupPanel fSourceLookupPanel;
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#createControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createControl(Composite parent) {
-		Composite comp = new Composite(parent, SWT.NONE);
-		setControl(comp);
-		GridLayout topLayout = new GridLayout();
-		topLayout.marginWidth = 0;
-		topLayout.marginHeight = 0;
-		topLayout.numColumns = 1;
-		comp.setLayout(topLayout);
-		comp.setFont(parent.getFont());
-		
-		fSourceLookupPanel = new SourceLookupPanel();
-		fSourceLookupPanel.setLaunchConfigurationDialog(
-				getLaunchConfigurationDialog());
-		fSourceLookupPanel.createControl(comp);
-		GridData gd = (GridData) fSourceLookupPanel.getControl().getLayoutData();
-		gd.heightHint = 200;
-		gd.widthHint = 250;
-		Dialog.applyDialogFont(comp);
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(comp,IDebugHelpContextIds.SOURCELOOKUP_TAB);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#setDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void setDefaults(ILaunchConfigurationWorkingCopy configuration) {
-		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#initializeFrom(org.eclipse.debug.core.ILaunchConfiguration)
-	 */
-	public void initializeFrom(ILaunchConfiguration configuration) {
-		fSourceLookupPanel.initializeFrom(configuration);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void performApply(ILaunchConfigurationWorkingCopy configuration) {
-		fSourceLookupPanel.performApply(configuration);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getName()
-	 */
-	public String getName() {
-		return SourceLookupUIMessages.sourceTab_tabTitle; //$NON-NLS-1$
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getImage()
-	 */
-	public Image getImage() {
-		return DebugPluginImages.getImage(IInternalDebugUIConstants.IMG_SRC_LOOKUP_TAB);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
-	 */
-	public void activated(ILaunchConfigurationWorkingCopy workingCopy) {
-		fSourceLookupPanel.activated(workingCopy);
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#dispose()
-	 */
-	public void dispose() {
-		if (fSourceLookupPanel != null) {
-			if (fSourceLookupPanel.getDirector() != null) {
-				fSourceLookupPanel.getDirector().dispose();
-			}
-			fSourceLookupPanel.dispose();
-		}
-		fSourceLookupPanel = null;		
-		super.dispose();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getErrorMessage()
-	 */
-	public String getErrorMessage() {
-		if (fSourceLookupPanel != null) {
-			return fSourceLookupPanel.getErrorMessage();
-		}
-		return super.getErrorMessage();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.ui.ILaunchConfigurationTab#getMessage()
-	 */
-	public String getMessage() {
-		if (fSourceLookupPanel != null) {
-			return fSourceLookupPanel.getMessage();
-		}
-		return super.getMessage();
-	}
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/WorkingSetSourceContainer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/WorkingSetSourceContainer.java
deleted file mode 100644
index f0bd93b..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/WorkingSetSourceContainer.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2003, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.debug.ui.sourcelookup;
-
-import java.util.ArrayList;
-import org.eclipse.core.resources.IFolder;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.debug.core.sourcelookup.ISourceContainer;
-import org.eclipse.debug.core.sourcelookup.ISourceContainerType;
-import org.eclipse.debug.core.sourcelookup.containers.CompositeSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.FolderSourceContainer;
-import org.eclipse.debug.core.sourcelookup.containers.ProjectSourceContainer;
-import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.ui.IWorkingSet;
-
-/**
- * A working set in the workspace.  Source is searched for in the projects (referenced
- * projects) and folders (sub-folders) that are part of the working set.
- * <p>
- * This class may be instantiated; it is not intended to be subclassed.
- * </p>
- * @since 3.0
- */
-public class WorkingSetSourceContainer extends CompositeSourceContainer{
-	
-	private IWorkingSet fWorkingSet;
-	/**
-	 * Unique identifier for the working set source container type
-	 * (value <code>org.eclipse.debug.ui.containerType.workingSet</code>.)
-	 */
-	public static final String TYPE_ID = DebugUIPlugin.getUniqueIdentifier()+".containerType.workingSet"; //$NON-NLS-1$
-		
-	/**
-	 * Creates a source container for the working set.
-	 * @param workingSet the working set represented by this container
-	 */
-	public WorkingSetSourceContainer(IWorkingSet workingSet) {
-		fWorkingSet = workingSet;		
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#getName()
-	 */
-	public String getName() {
-		return fWorkingSet.getName();
-	}
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object obj) {
-		if (obj != null && obj instanceof WorkingSetSourceContainer) {			
-			return ((WorkingSetSourceContainer)obj).fWorkingSet.equals(fWorkingSet);			
-		}				
-		return false;
-	}		
-
-	public int hashCode() {
-		return fWorkingSet.hashCode();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.sourcelookup.ISourceContainer#getType()
-	 */
-	public ISourceContainerType getType() {
-		return getSourceContainerType(TYPE_ID);
-	}
-			
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.core.sourcelookup.containers.CompositeSourceContainer#createSourceContainers()
-	 */
-	protected ISourceContainer[] createSourceContainers() throws CoreException {
-		IAdaptable[] elements = fWorkingSet.getElements();
-		
-		if(elements == null)
-			return new ISourceContainer[0];
-		
-		ArrayList locationList = new ArrayList();
-		for (int i = 0; i < elements.length; i++) {
-			IResource resource = (IResource) elements[i].getAdapter(IResource.class);
-			
-			if (resource != null) {
-				switch (resource.getType()) {
-				case IResource.FOLDER:							
-					locationList.add(new FolderSourceContainer((IFolder)resource, true));											
-					break;
-				case IResource.PROJECT:
-					locationList.add(new ProjectSourceContainer((IProject)resource, true));			
-					break;
-					//if the element corresponds to an IFile, do nothing
-				}
-			}
-		}
-		return (ISourceContainer[])locationList.toArray(new ISourceContainer[locationList.size()]);
-	}
-
-}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/package.html b/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/package.html
deleted file mode 100644
index abf2aab..0000000
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/ui/sourcelookup/package.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Eclipse Debug Platform</title>
-</head>
-
-<body bgcolor="#FFFFFF">
-
-<p>Provides a user interface for debug platform source lookup facilities.</p>
-
-<h2>Package Specification</h2>
-
-<p>This package provides classes implementing a user interface for source lookup 
-  facilities based on the source lookup director architecture defined in <code>org.eclipse.debug.core.sourcelookup</code>. 
-  A source lookup tab and dialog are provided that allow the user to modify a 
-  source lookup path.</p>
-<blockquote>&nbsp;</blockquote>
-</body>
-</html>
diff --git a/org.eclipse.ui.console/.classpath b/org.eclipse.ui.console/.classpath
deleted file mode 100644
index 065ac06..0000000
--- a/org.eclipse.ui.console/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/org.eclipse.ui.console/.cvsignore b/org.eclipse.ui.console/.cvsignore
deleted file mode 100644
index ba077a4..0000000
--- a/org.eclipse.ui.console/.cvsignore
+++ /dev/null
@@ -1 +0,0 @@
-bin
diff --git a/org.eclipse.ui.console/.project b/org.eclipse.ui.console/.project
deleted file mode 100644
index aa92a70..0000000
--- a/org.eclipse.ui.console/.project
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>org.eclipse.ui.console</name>
-	<comment></comment>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.ManifestBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.pde.SchemaBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.pde.PluginNature</nature>
-	</natures>
-</projectDescription>
diff --git a/org.eclipse.ui.console/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.ui.console/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index e488162..0000000
--- a/org.eclipse.ui.console/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,69 +0,0 @@
-#Mon Nov 01 18:52:47 GMT-08:00 2004

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled

-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled

-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning

-org.eclipse.jdt.core.compiler.debug.lineNumber=generate

-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning

-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning

-org.eclipse.jdt.core.compiler.problem.unsafeTypeOperation=warning

-org.eclipse.jdt.core.compiler.problem.forbiddenReference=ignore

-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled

-org.eclipse.jdt.core.compiler.problem.unusedImport=warning

-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore

-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning

-org.eclipse.jdt.core.builder.invalidClasspath=abort

-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=*.launch

-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning

-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore

-org.eclipse.jdt.core.compiler.debug.localVariable=generate

-org.eclipse.jdt.core.compiler.problem.deprecation=warning

-org.eclipse.jdt.core.compiler.source=1.3

-org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore

-org.eclipse.jdt.core.compiler.problem.unusedParameter=warning

-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore

-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning

-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve

-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning

-org.eclipse.jdt.core.compiler.compliance=1.4

-org.eclipse.jdt.core.compiler.problem.emptyStatement=warning

-org.eclipse.jdt.core.compiler.problem.enumIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled

-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning

-org.eclipse.jdt.core.builder.cleanOutputFolder=clean

-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning

-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning

-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=enabled

-org.eclipse.jdt.core.compiler.problem.assertIdentifier=warning

-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning

-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning

-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled

-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2

-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning

-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public

-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=private

-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning

-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning

-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled

-org.eclipse.jdt.core.incompatibleJDKLevel=ignore

-eclipse.preferences.version=1

-org.eclipse.jdt.core.circularClasspath=error

-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=enabled

-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100

-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=private

-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning

-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning

-org.eclipse.jdt.core.compiler.debug.sourceFile=generate

-org.eclipse.jdt.core.compiler.doc.comment.support=disabled

-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning

-org.eclipse.jdt.core.incompleteClasspath=error

-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore

-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=enabled

-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled

-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning

-org.eclipse.jdt.core.builder.duplicateResourceTask=warning

-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled

diff --git a/org.eclipse.ui.console/.settings/org.eclipse.pde.prefs b/org.eclipse.ui.console/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index de0a1d2..0000000
--- a/org.eclipse.ui.console/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,14 +0,0 @@
-#Wed Nov 24 22:35:45 GMT-08:00 2004

-compilers.p.unused-element-or-attribute=1

-compilers.p.unresolved-ex-points=0

-compilers.p.deprecated=1

-compilers.p.unknown-element=0

-compilers.p.unknown-resource=1

-compilers.p.unknown-class=1

-compilers.p.unknown-attribute=0

-compilers.p.no-required-att=0

-eclipse.preferences.version=1

-compilers.p.unresolved-import=0

-compilers.p.not-externalized-att=1

-compilers.p.illegal-att-value=0

-compilers.use-project=true

diff --git a/org.eclipse.ui.console/META-INF/MANIFEST.MF b/org.eclipse.ui.console/META-INF/MANIFEST.MF
deleted file mode 100644
index 4e7d2b4..0000000
--- a/org.eclipse.ui.console/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,17 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.ui.console; singleton:=true
-Bundle-Version: 3.1.0
-Bundle-Activator: org.eclipse.ui.console.ConsolePlugin
-Bundle-Vendor: %providerName
-Bundle-Localization: plugin
-Export-Package: org.eclipse.ui.console,
- org.eclipse.ui.console.actions,
- org.eclipse.ui.internal.console;x-internal:=true
-Require-Bundle: org.eclipse.ui,
- org.eclipse.jface.text,
- org.eclipse.ui.workbench.texteditor,
- org.eclipse.core.runtime,
- org.eclipse.core.expressions
-Eclipse-AutoStart: true
diff --git a/org.eclipse.ui.console/about.html b/org.eclipse.ui.console/about.html
deleted file mode 100644
index 6f6b96c..0000000
--- a/org.eclipse.ui.console/about.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
-<html>
-<head>
-<title>About</title>
-<meta http-equiv=Content-Type content="text/html; charset=ISO-8859-1">
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
- 
-<p>February 24, 2005</p>	
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content.  Check the Redistributor's license that was provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content.</p>
-
-</body>
-</html>
\ No newline at end of file
diff --git a/org.eclipse.ui.console/build.properties b/org.eclipse.ui.console/build.properties
deleted file mode 100644
index da5daf5..0000000
--- a/org.eclipse.ui.console/build.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-bin.includes = icons/,\
-               plugin.xml,\
-               plugin.properties,\
-               .,\
-               about.html,\
-               META-INF/
-
-source.. src/
-src.includes = about.html,\
-               component.xml,\
-               schema/
diff --git a/org.eclipse.ui.console/component.xml b/org.eclipse.ui.console/component.xml
deleted file mode 100644
index 8912e63..0000000
--- a/org.eclipse.ui.console/component.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<component xmlns="http://eclipse.org/component"
-   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-   xsi:schemaLocation="http://eclipse.org/component ../component.xsd "
-   name="Eclipse Platform Console">
- <plugin id="org.eclipse.ui.console" />
-
- <package name="org.eclipse.ui.console">
- 	<type name="AbstractConsole" />
- 	<type name="ConsolePlugin" instantiate="false" subclass="false" />
- 	<type name="IConsole" />
- 	<type name="IConsoleConstants" implement="false" />
- 	<type name="IConsoleDocumentPartitioner" />
- 	<type name="IConsoleFactory" />
- 	<type name="IConsoleListener" />
- 	<type name="IConsoleManager" implement="false" />
- 	<type name="IConsolePageParticipant" />
- 	<type name="IConsoleView" implement="false" />
- 	<type name="IHyperlink" />
- 	<type name="IOConsole" />
- 	<type name="IOConsoleInputStream" subclass="false" instantiate="false" />
- 	<type name="IOConsoleOutputStream" subclass="false" instantiate="false" />
- 	<type name="IPatternMatchListener" />
- 	<type name="IPatternMatchListenerDelegate" />
- 	<type name="MessageConsole" subclass="false" />
- 	<type name="MessageConsoleStream" subclass="false" instantiate="false" />
- 	<type name="PatternMatchEvent" subclass="false" />
- 	<type name="TextConsole" />
- 	<type name="TextConsolePage" />
- 	<type name="TextConsoleViewer" />
- </package>
- <package name="org.eclipse.ui.console.actions">
- 	<type name="ClearOutputAction" subclass="false" />
- 	<type name="CloseConsoleAction" subclass="false" />
- 	<type name="TextViewerAction" />
- 	<type name="TextViewerGotoLineAction" subclass="false" />
- </package>
- 
- <component-depends unrestricted="true"/>
-
-</component>
\ No newline at end of file
diff --git a/org.eclipse.ui.console/icons/full/clcl16/clear_co.gif b/org.eclipse.ui.console/icons/full/clcl16/clear_co.gif
deleted file mode 100644
index af30a42..0000000
--- a/org.eclipse.ui.console/icons/full/clcl16/clear_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/clcl16/lock_co.gif b/org.eclipse.ui.console/icons/full/clcl16/lock_co.gif
deleted file mode 100644
index 68fd6cf..0000000
--- a/org.eclipse.ui.console/icons/full/clcl16/lock_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/clcl16/pin.gif b/org.eclipse.ui.console/icons/full/clcl16/pin.gif
deleted file mode 100644
index ec50b70..0000000
--- a/org.eclipse.ui.console/icons/full/clcl16/pin.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/cview16/console_view.gif b/org.eclipse.ui.console/icons/full/cview16/console_view.gif
deleted file mode 100644
index a598f60..0000000
--- a/org.eclipse.ui.console/icons/full/cview16/console_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/dlcl16/clear_co.gif b/org.eclipse.ui.console/icons/full/dlcl16/clear_co.gif
deleted file mode 100644
index 6775edf..0000000
--- a/org.eclipse.ui.console/icons/full/dlcl16/clear_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/dlcl16/lock_co.gif b/org.eclipse.ui.console/icons/full/dlcl16/lock_co.gif
deleted file mode 100644
index b776478..0000000
--- a/org.eclipse.ui.console/icons/full/dlcl16/lock_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/dlcl16/pin.gif b/org.eclipse.ui.console/icons/full/dlcl16/pin.gif
deleted file mode 100644
index 61615d5..0000000
--- a/org.eclipse.ui.console/icons/full/dlcl16/pin.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/dlcl16/rem_co.gif b/org.eclipse.ui.console/icons/full/dlcl16/rem_co.gif
deleted file mode 100644
index 559e462..0000000
--- a/org.eclipse.ui.console/icons/full/dlcl16/rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/elcl16/clear_co.gif b/org.eclipse.ui.console/icons/full/elcl16/clear_co.gif
deleted file mode 100644
index af30a42..0000000
--- a/org.eclipse.ui.console/icons/full/elcl16/clear_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/elcl16/lock_co.gif b/org.eclipse.ui.console/icons/full/elcl16/lock_co.gif
deleted file mode 100644
index 68fd6cf..0000000
--- a/org.eclipse.ui.console/icons/full/elcl16/lock_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/elcl16/new_con.gif b/org.eclipse.ui.console/icons/full/elcl16/new_con.gif
deleted file mode 100644
index 7aea894..0000000
--- a/org.eclipse.ui.console/icons/full/elcl16/new_con.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/elcl16/pin.gif b/org.eclipse.ui.console/icons/full/elcl16/pin.gif
deleted file mode 100644
index ec50b70..0000000
--- a/org.eclipse.ui.console/icons/full/elcl16/pin.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/elcl16/rem_co.gif b/org.eclipse.ui.console/icons/full/elcl16/rem_co.gif
deleted file mode 100644
index 2cd9c54..0000000
--- a/org.eclipse.ui.console/icons/full/elcl16/rem_co.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/icons/full/eview16/console_view.gif b/org.eclipse.ui.console/icons/full/eview16/console_view.gif
deleted file mode 100644
index a598f60..0000000
--- a/org.eclipse.ui.console/icons/full/eview16/console_view.gif
+++ /dev/null
Binary files differ
diff --git a/org.eclipse.ui.console/plugin.properties b/org.eclipse.ui.console/plugin.properties
deleted file mode 100644
index 1301fab..0000000
--- a/org.eclipse.ui.console/plugin.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-# 
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-pluginName=Console
-providerName=Eclipse.org
-ConsoleView.name=Console
-
-ViewCommand.consoleView.name=Console
-ViewCommand.consoleView.description=Show the Console view
-
-ConsolePatternMatchListenerName= Console Pattern Match Listeners
-ConsolePageParticipantName= Console Page Participants
-
-ConsoleFactoryName= Console Factories
-
-consoleViewConsoleFactory.name=New Console View
diff --git a/org.eclipse.ui.console/plugin.xml b/org.eclipse.ui.console/plugin.xml
deleted file mode 100644
index dc2084f..0000000
--- a/org.eclipse.ui.console/plugin.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.0"?>
-<plugin>
-
-     <extension-point id="consolePatternMatchListeners" name="%ConsolePatternMatchListenerName" schema="schema/consolePatternMatchListeners.exsd"/>
-   <extension-point id="consolePageParticipants" name="%ConsolePageParticipantName" schema="schema/consolePageParticipants.exsd"/>
-   <extension-point id="consoleFactories" name="%ConsoleFactoryName" schema="schema/consoleFactories.exsd"/>
-
-
-   <extension
-         point="org.eclipse.ui.views">
-      <view
-            allowMultiple="true"
-            class="org.eclipse.ui.internal.console.ConsoleView"
-            icon="icons/full/cview16/console_view.gif"
-            category="org.eclipse.ui"
-            name="%ConsoleView.name"
-            id="org.eclipse.ui.console.ConsoleView">
-      </view>
-   </extension>
-<!-- commands and their bindings
-NOTE: 
-M1 = CTRL/COMMAND 
-M2 = SHIFT 
-M3 = ALT 
-M4 = Platform-specific fourth key
--->   
-   <extension
-         point="org.eclipse.ui.commands">
-      <command
-            name="%ViewCommand.consoleView.name"
-            description="%ViewCommand.consoleView.description"
-            categoryId="org.eclipse.ui.category.views"
-            id="org.eclipse.ui.console.ConsoleView">
-      </command>
-   </extension>
-    <extension point="org.eclipse.ui.bindings">
-     <key 
-  	    	sequence="M3+M2+Q C"
-            contextId="org.eclipse.ui.globalScope"
-            commandId="org.eclipse.ui.console.ConsoleView"
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
-  	</extension>
-    <extension
-          point="org.eclipse.core.expressions.propertyTesters">
-       <propertyTester
-             namespace="org.eclipse.ui.console"
-             type="org.eclipse.ui.console.IConsole"
-             class="org.eclipse.ui.internal.console.ConsoleTypePropertyTester"
-             properties="consoleTypeTest"
-             id="org.eclipse.ui.console.ConsoleTypePropertyTester"/>
-    </extension>
-    <extension
-          point="org.eclipse.ui.console.consoleFactories">
-       <consoleFactory
-             label="%consoleViewConsoleFactory.name"
-             class="org.eclipse.ui.internal.console.ConsoleViewConsoleFactory"/>
-    </extension>
-
-</plugin>
diff --git a/org.eclipse.ui.console/schema/consoleFactories.exsd b/org.eclipse.ui.console/schema/consoleFactories.exsd
deleted file mode 100644
index c676dc9..0000000
--- a/org.eclipse.ui.console/schema/consoleFactories.exsd
+++ /dev/null
@@ -1,133 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.ui.console">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.ui.console" id="consoleFactories" name="Console Factories"/>

-      </appInfo>

-      <documentation>

-         A console factory creates or activates a console, and appears as action in the console view.

-      </documentation>

-   </annotation>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="consoleFactory"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="consoleFactory">

-      <complexType>

-         <attribute name="label" type="string" use="required">

-            <annotation>

-               <documentation>

-                  action label to appear in menu

-               </documentation>

-               <appInfo>

-                  <meta.attribute translatable="true"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="icon" type="string">

-            <annotation>

-               <documentation>

-                  optional plug-in relative path to an icon to appear with the action

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  class implementing &lt;code&gt;org.eclipse.ui.console.IConsoleFactory&lt;/code&gt; that will be called when the associated action is invoked

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.ui.console.IConsoleFactory"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.1

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a console factory extension point: 

-&lt;pre&gt;

-&lt;extension point=&quot;org.eclipse.ui.console.consoleFactories&quot;&gt;

-  &lt;consoleFactory 

-     label=&quot;Command Console&quot;

-     class=&quot;com.example.CommandConsoleFactory&quot;

-     icon=&quot;icons/cmd_console.gif&quot;&gt;

-  &lt;/consoleFactory&gt;

-&lt;/extension&gt;

-&lt;/pre&gt;

-This extension will cause an entry to appear in the console view&apos;s &lt;b&gt;Open Console&lt;/b&gt; drop-down menu labelled &lt;b&gt;Command Console&lt;/b&gt; with the specified icon. When the action is invoked by a user, the method &lt;b&gt;openConsole()&lt;/b&gt; on the class &lt;b&gt;com.example.CommandConsoleFactory&lt;/b&gt; will be called. The factory can the decide to create a new console or activate an existing console.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.ui.console.IConsoleFactory&lt;/b&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         The console plug-in provides a console factory to open a new console view.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2004, 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which 

-accompanies this distribution, and is available at 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.ui.console/schema/consolePageParticipants.exsd b/org.eclipse.ui.console/schema/consolePageParticipants.exsd
deleted file mode 100644
index 831bb94..0000000
--- a/org.eclipse.ui.console/schema/consolePageParticipants.exsd
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.ui.console">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.ui.console" id="consolePageParticipants" name="Console Page Participants"/>

-      </appInfo>

-      <documentation>

-         This extension point provides a mechanism for contributing a console page participant. The page participant will be able to modify the console&apos;s context menu and tool bar.

-      </documentation>

-   </annotation>

-

-   <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="consolePageParticipant"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="consolePageParticipant">

-      <complexType>

-         <sequence>

-            <element ref="enablement"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this Console Page Participant

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a fully qualified name of a Java class that implements &lt;code&gt;IConsolePageParticipant&lt;/code&gt;

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.ui.console.IConsolePageParticipant"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.1

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a console page participant extension point: 

-&lt;pre&gt;

-   &lt;extension

-         point=&quot;org.eclipse.ui.console.consolePageParticipant&quot;&gt;

-      &lt;consolePageParticipant

-            class=&quot;com.example.ExamplePageParticipant&quot;

-            id=&quot;com.example.ExamplePageParticipant&quot;&gt;

-         &lt;enablement&gt;

-            &lt;instanceof value=&quot;com.example.ExampleConsole&quot;/&gt;

-         &lt;/enablement&gt;

-      &lt;/consolePageParticipant&gt;

-   &lt;/extension&gt; 

-&lt;/pre&gt;

-In the above example, the contributed console page participant will be used for all consoles of type &quot;com.example.ExampleConsole.&quot;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.debug.ui.console.IConsolePageParticipantDelegate&lt;/b&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which 

-accompanies this distribution, and is available at 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.ui.console/schema/consolePatternMatchListeners.exsd b/org.eclipse.ui.console/schema/consolePatternMatchListeners.exsd
deleted file mode 100644
index 522ad1a..0000000
--- a/org.eclipse.ui.console/schema/consolePatternMatchListeners.exsd
+++ /dev/null
@@ -1,153 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>

-<!-- Schema file written by PDE -->

-<schema targetNamespace="org.eclipse.ui.console">

-<annotation>

-      <appInfo>

-         <meta.schema plugin="org.eclipse.ui.console" id="consolePatternMatchListeners" name="Console Pattern Match Listeners"/>

-      </appInfo>

-      <documentation>

-         Provides regular expression matching for text consoles. Pattern match listeners can be contributed to specific consoles by using an enablement expression. Listeners are notified as matches are found.

-      </documentation>

-   </annotation>

-

-   <include schemaLocation="schema://org.eclipse.core.expressions/schema/expressionLanguage.exsd"/>

-

-   <element name="extension">

-      <complexType>

-         <sequence>

-            <element ref="consolePatternMatchListener" minOccurs="0" maxOccurs="unbounded"/>

-         </sequence>

-         <attribute name="point" type="string" use="required">

-            <annotation>

-               <documentation>

-                  a fully qualified identifier of the target extension point

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="id" type="string">

-            <annotation>

-               <documentation>

-                  an optional identifier of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="name" type="string">

-            <annotation>

-               <documentation>

-                  an optional name of the extension instance

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <element name="consolePatternMatchListener">

-      <complexType>

-         <sequence>

-            <element ref="enablement"/>

-         </sequence>

-         <attribute name="id" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a unique identifier for this console pattern match listener

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="class" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies a fully qualified name of a Java class that implements &lt;code&gt;IPatternMatchListenerDelegate&lt;/code&gt;

-               </documentation>

-               <appInfo>

-                  <meta.attribute kind="java" basedOn="org.eclipse.ui.console.IPatternMatchListenerDelegate"/>

-               </appInfo>

-            </annotation>

-         </attribute>

-         <attribute name="regex" type="string" use="required">

-            <annotation>

-               <documentation>

-                  specifies the regular expression to be matched

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="flags" type="string">

-            <annotation>

-               <documentation>

-                  specifies flags to be used when matching the pattern. Acceptable flags are defined in &lt;code&gt;java.util.regex.Pattern&lt;/code&gt; and should be specified as Strings (eg &quot;Pattern.MULTILINE&quot; or &quot;MULTILINE&quot;)

-               </documentation>

-            </annotation>

-         </attribute>

-         <attribute name="qualifier" type="string">

-            <annotation>

-               <documentation>

-                  a simple regular expression used to identify a line that may contain this pattern match listener&apos;s complete regular expression &lt;code&gt;regex&lt;/code&gt;. When a line is found containing this expression, a search is performed from the beginning of the line for this pattern matcher&apos;s complete &lt;code&gt;regex&lt;/code&gt;. Use of this attribute is optional but can greatly improve performance as lines not containing this expression are disqualified from the search.

-               </documentation>

-            </annotation>

-         </attribute>

-      </complexType>

-   </element>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="since"/>

-      </appInfo>

-      <documentation>

-         3.1

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="examples"/>

-      </appInfo>

-      <documentation>

-         The following is an example of a console pattern match listener extension point: 

-&lt;pre&gt;

-   &lt;extension

-         point=&quot;org.eclipse.ui.console.consolePatternMatchListener&quot;&gt;

-      &lt;consolePatternMatchListener

-            class=&quot;com.example.ExampleConsolePatternMatcher&quot;

-            id=&quot;com.example.ExampleConsolePatternMatcher&quot;

-            regex=&quot;.*foo.*&quot;&gt;

-         &lt;enablement&gt;

-            &lt;test property=&quot;org.eclipse.ui.console.consoleTypeTest&quot; value=&quot;exampleConsole&quot;/&gt;

-         &lt;/enablement&gt;

-      &lt;/consolePatternMatchListener&gt;

-   &lt;/extension&gt;

-&lt;/pre&gt;

-In the above example, the contributed console pattern matcher will be used for consoles with a type of &quot;exampleConsole.&quot;

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="apiInfo"/>

-      </appInfo>

-      <documentation>

-         Value of the attribute &lt;b&gt;class&lt;/b&gt; must be a fully qualified name of a Java class that implements the interface &lt;b&gt;org.eclipse.ui.console.IPatternMatchListenerDelegate&lt;/b&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="implementation"/>

-      </appInfo>

-      <documentation>

-         The console plug-in provides a console type property tester for enablement expressions that tests the value of &lt;code&gt;IConsole.getType()&lt;/code&gt;. The property tester&apos;s identifier is &lt;code&gt;org.eclipse.ui.console.consoleTypeTest&lt;/code&gt;.

-      </documentation>

-   </annotation>

-

-   <annotation>

-      <appInfo>

-         <meta.section type="copyright"/>

-      </appInfo>

-      <documentation>

-         Copyright (c) 2000, 2005 IBM Corporation and others.&lt;br&gt;

-All rights reserved. This program and the accompanying materials are made 

-available under the terms of the Eclipse Public License v1.0 which 

-accompanies this distribution, and is available at 

-&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;

-      </documentation>

-   </annotation>

-

-</schema>

diff --git a/org.eclipse.ui.console/scripts/exportplugin.xml b/org.eclipse.ui.console/scripts/exportplugin.xml
deleted file mode 100644
index af246f1..0000000
--- a/org.eclipse.ui.console/scripts/exportplugin.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<!-- Export a jar of .class files for the org.eclipse.ui.console Eclipse plugin
-     along with other important plugin files to the "plugin-export" subdirectory
-     of the target Eclipse installation -->
-<project name="Export ui.console" default="export" basedir="..">
-
-	<!-- Set the timestamp and important properties -->
-	<target name="init">
-		<tstamp/>
-		<property name="destdir" value="../../plugin-export" />
-		<property name="dest"  value="${destdir}/org.eclipse.ui.console_3.0.0" />
-	</target>
-
-	<!-- Create the jar of .class files, and copy other important files to export dir -->
-	<target name="export" depends="init">
-		<mkdir dir="${destdir}" />
-		<delete dir="${dest}" />
-		<mkdir dir="${dest}" />
-		<jar 
-			jarfile="${dest}/console.jar"
-			basedir="bin"
-		/>
-		<!-- Create the source zip -->
-		<zip zipfile="${dest}/consolesrc.zip">
-			<fileset dir="src"/>
-		</zip>
-		<copy file="plugin.xml" todir="${dest}"/>
-		<copy file="plugin.properties" todir="${dest}"/>
-		<copy file=".classpath" todir="${dest}"/>
-		<copy file=".options" todir="${dest}"/>
-		<copy todir="${dest}/icons">
-			<fileset dir="icons" />
-		</copy>
-	</target>
-	
-</project>
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/AbstractConsole.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/AbstractConsole.java
deleted file mode 100644
index 91418a2..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/AbstractConsole.java
+++ /dev/null
@@ -1,323 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.ListenerList;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.IBasicPropertyConstants;
-import org.eclipse.ui.internal.console.ConsoleMessages;
-
-/**
- * Common function for consoles.
- * <p>
- * Clients implementing consoles should subclass this class.
- * </p>
- * @since 3.0
- */
-public abstract class AbstractConsole implements IConsole {
-	
-	// property listeners
-	private ListenerList fListeners;
-	
-	/**
-	 * Console name
-	 */
-	private String fName = null;
-	
-	/**
-	 * Console image descriptor
-	 */
-	private ImageDescriptor fImageDescriptor = null;
-	
-	/**
-	 * Console type identifier
-	 */
-	private String fType = null;
-	
-	/**
-	 * Used to notify this console of lifecycle methods <code>init()</code>
-	 * and <code>dispose()</code>.
-	 */
-	class Lifecycle implements IConsoleListener {
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.console.IConsoleListener#consolesAdded(org.eclipse.ui.console.IConsole[])
-		 */
-		public void consolesAdded(IConsole[] consoles) {
-			for (int i = 0; i < consoles.length; i++) {
-				IConsole console = consoles[i];
-				if (console == AbstractConsole.this) {
-					initialize();
-				}
-			}
-
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.ui.console.IConsoleListener#consolesRemoved(org.eclipse.ui.console.IConsole[])
-		 */
-		public void consolesRemoved(IConsole[] consoles) {
-			for (int i = 0; i < consoles.length; i++) {
-				IConsole console = consoles[i];
-				if (console == AbstractConsole.this) {
-					ConsolePlugin.getDefault().getConsoleManager().removeConsoleListener(this);
-					destroy();
-				}
-			}
-		}
-	}
-	
-	/**
-	 * Notifies listeners of property changes, handling any exceptions
-	 */
-	class PropertyNotifier implements ISafeRunnable {
-		
-		private IPropertyChangeListener fListener;
-		private PropertyChangeEvent fEvent;
-		
-		/**
-		 * @see org.eclipse.core.runtime.ISafeRunnable#handleException(java.lang.Throwable)
-		 */
-		public void handleException(Throwable exception) {
-			IStatus status = new Status(IStatus.ERROR, ConsolePlugin.getUniqueIdentifier(), IConsoleConstants.INTERNAL_ERROR, ConsoleMessages.AbstractConsole_0, exception); //$NON-NLS-1$
-			ConsolePlugin.log(status);
-		}
-
-		/**
-		 * @see org.eclipse.core.runtime.ISafeRunnable#run()
-		 */
-		public void run() throws Exception {
-			fListener.propertyChange(fEvent);
-		}
-
-		/**
-		 * Notifies listeners of the property change
-		 * 
-		 * @param event the event that describes the property that has changed
-		 */
-		public void notify(PropertyChangeEvent event) {
-			if (fListeners == null) {
-				return;
-			}
-			fEvent = event;
-			Object[] copiedListeners= fListeners.getListeners();
-			for (int i= 0; i < copiedListeners.length; i++) {
-				fListener = (IPropertyChangeListener)copiedListeners[i];
-				Platform.run(this);
-			}	
-			fListener = null;			
-		}
-	}	
-	
-	/**
-	 * Constructs a new console with the given name and image.
-	 * 
-	 * @param name console name, cannot be <code>null</code>
-	 * @param imageDescriptor image descriptor, or <code>null</code> if none
-	 * @param autoLifecycle whether this console's lifecycle methods should be called
-	 *  automatically when it is added (<code>initialize()</code>) and removed
-	 *  (<code>destroy()</code>) from the console manager. When <code>false</code>,
-	 *  clients are responsible for calling the lifecycle methdods.
-	 * @since 3.1
-	 */
-	public AbstractConsole(String name, ImageDescriptor imageDescriptor, boolean autoLifecycle) {
-	    this(name, null, imageDescriptor, autoLifecycle);
-	}
-	
-	/**
-	 * Constructs a new console with the given name, type, image and lifecycle.
-	 * 
-	 * @param name console name, cannot be <code>null</code>
-	 * @param consoleType console type identifier or <code>null</code>
-	 * @param imageDescriptor image descriptor, or <code>null</code> if none
-	 * @param autoLifecycle whether this console's lifecycle methods should be called
-	 *  automatically when it is added (<code>initialize()</code>) and removed
-	 *  (<code>destroy()</code>) from the console manager. When <code>false</code>,
-	 *  clients are responsible for calling the lifecycle methdods.
-	 * @since 3.1
-	 */
-	public AbstractConsole(String name, String type, ImageDescriptor imageDescriptor, boolean autoLifecycle) {
-		setName(name);
-		setType(type);
-		setImageDescriptor(imageDescriptor);
-		if (autoLifecycle) {
-		    ConsolePlugin.getDefault().getConsoleManager().addConsoleListener(new Lifecycle());
-		}
-	}	
-	
-	/**
-	 * Constructs a new console with the given name and image. The console's lifecycle
-	 * methods <code>init()</code> and <code>dispose()</code> will be called when the
-	 * console is added and removed from the console manager.
-	 * 
-	 * @param name console name, cannot be <code>null</code>
-	 * @param imageDescriptor image descriptor, or <code>null</code> if none
-	 */
-	public AbstractConsole(String name, ImageDescriptor imageDescriptor) {
-		this(name, imageDescriptor, true);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsole#getName()
-	 */
-	public String getName() {
-		return fName;
-	}
-
-	/**
-	 * Sets the name of this console to the specified value and notifies
-	 * property listeners of the change.
-	 * 
-	 * @param name the new name
-	 */
-	protected void setName(String name) {
-        if (!name.equals(fName)) {
-            String old = fName;
-            fName = name;
-            firePropertyChange(this, IBasicPropertyConstants.P_TEXT, old, name);
-        }
-    }
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsole#getImageDescriptor()
-	 */
-	public ImageDescriptor getImageDescriptor() {
-		return fImageDescriptor;
-	}
-	
-	/**
-	 * Sets the image descriptor for this console to the specified value and notifies
-	 * property listeners of the change.
-	 * 
-	 * @param imageDescriptor the new image descriptor
-	 */
-	protected void setImageDescriptor(ImageDescriptor imageDescriptor) {
-		ImageDescriptor old = fImageDescriptor;
-		fImageDescriptor =imageDescriptor;
-		firePropertyChange(this, IBasicPropertyConstants.P_IMAGE, old, imageDescriptor);
-	}	
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsole#addPropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-	 */
-	public void addPropertyChangeListener(IPropertyChangeListener listener) {
-		if (fListeners == null) {
-			fListeners = new ListenerList();
-		}
-		fListeners.add(listener);		
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsole#removePropertyChangeListener(org.eclipse.jface.util.IPropertyChangeListener)
-	 */
-	public void removePropertyChangeListener(IPropertyChangeListener listener) {
-		if (fListeners != null) {
-			fListeners.remove(listener);
-		}
-	}
-
-	/**
-	 * Notify all listeners that the given property has changed.
-	 * 
-	 * @param source the object on which a property has changed 
-	 * @param property identifier of the property that has changed
-	 * @param oldValue the old value of the property, or <code>null</code>
-	 * @param newValue the new value of the property, or <code>null</code>
-	 */
-	public void firePropertyChange(Object source, String property, Object oldValue, Object newValue) {
-		if (fListeners == null) {
-			return;
-		}
-		PropertyNotifier notifier = new PropertyNotifier();
-		notifier.notify(new PropertyChangeEvent(source, property, oldValue, newValue));
-	}
-	
-	/**
-	 * Initializes this console. This method should only be called by clients managing a
-	 * console's lifecycle, otherwise this method will be called automatically when this console
-	 * is added to the console manager. The method is called once to initialize this console,
-	 * marking the beginning of its lifecycle.
-	 * 
-	 * @since 3.1
-	 */
-	public final void initialize() {
-	    init();
-	}
-	
-	/**
-	 * Called when this console is added to the console manager. Default
-	 * implementation does nothing. Subclasses may override.
-	 * <p>
-	 * Since 3.1, this method is only called automatically if this console was
-	 * created with an automatic lifecycle.
-	 * </p>
-	 */
-	protected void init() {
-	}
-	
-	/**
-	 * Disposes this console. This method should only be called by clients managing a
-	 * console's lifecycle, otherwise this method will be called automatically when this
-	 * console is removed from the console manager. The method is called once to dispose
-	 * this console, afterwhich this console will no longer be used. 
-	 * 
-	 * @since 3.1
-	 */
-	public final void destroy() {
-	    dispose();
-	}
-	
-	/**
-	 * Called when this console is removed from the console manager. Default
-	 * implementation does nothing. Subclasses may override.
-	 * <p>
-	 * Since 3.1, this methods is only called automatically if this console was
-	 * created with an automatic lifecycle.
-	 * </p>
-	 */
-	protected void dispose() {
-	}
-	
-	/**
-	 * Shows this console in all console views. This console will be become visible
-	 * if another console is currently pinned. 
-	 * 
-	 * @since 3.1
-	 */
-    public void activate() {
-        ConsolePlugin.getDefault().getConsoleManager().showConsoleView(this);
-    }
-    
-    /**
-     * Sets this console's type identifier.
-     * 
-     * @param typeIdentifier the type identifier for this console 
-     * @since 3.1
-     */
-    protected void setType(String typeIdentifier) {
-        fType = typeIdentifier;
-    }
-    
-    /**
-     * @see org.eclipse.ui.console.IConsole#getType()
-     * @since 3.1
-     */
-    public String getType() {
-        return fType;
-    }
-    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/ConsolePlugin.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/ConsolePlugin.java
deleted file mode 100644
index a07fefa..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/ConsolePlugin.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.console;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.dialogs.ErrorDialog;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.internal.console.ConsoleManager;
-import org.eclipse.ui.internal.console.ConsolePluginImages;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-
-/**
- * The console plug-in class.
- * 
- * @since 3.0
- */
-
-public class ConsolePlugin extends AbstractUIPlugin {
-	
-	/**
-	 * Singleton console manager
-	 */
-	private IConsoleManager fConsoleManager = null;
-
-	/**
-	 * The singleton console plugin instance
-	 */
-	private static ConsolePlugin fgPlugin= null;
-	
-	/**
-	 * Unique identifier constant (value <code>"org.eclipse.ui.console"</code>)
-	 * for the UI Console plug-in.
-	 */
-	private static final String PI_UI_CONSOLE = "org.eclipse.ui.console"; //$NON-NLS-1$
-		
-	/**
-	 * Returns the singleton instance of the console plugin.
-	 */
-	public static ConsolePlugin getDefault() {
-		return fgPlugin;
-	}
-
-	public ConsolePlugin() {
-		super();
-		fgPlugin = this;
-	}
-	
-	/**
-	 * Convenience method which returns the unique identifier of this plugin.
-	 */
-	public static String getUniqueIdentifier() {
-		return PI_UI_CONSOLE;
-	}
-
-	/**
-	 * Logs the specified status with this plug-in's log.
-	 * 
-	 * @param status status to log
-	 */
-	public static void log(IStatus status) {
-		getDefault().getLog().log(status);
-	}
-
-	/**
-	 * Logs the specified throwable with this plug-in's log.
-	 * 
-	 * @param t throwable to log 
-	 */
-	public static void log(Throwable t) {
-		log(newErrorStatus("Error logged from Console plug-in: ", t)); //$NON-NLS-1$
-	}
-	
-	/**
-	 * Returns a new error status for this plugin with the given message
-	 * @param message the message to be included in the status
-	 * @param exception the exception to be included in the status or <code>null</code> if none
-	 * @return a new error status
-	 */
-	public static IStatus newErrorStatus(String message, Throwable exception) {
-		return new Status(IStatus.ERROR, getUniqueIdentifier(), IConsoleConstants.INTERNAL_ERROR, message, exception);
-	}
-	
-	/**
-	 * Returns the console manager. The manager will be created lazily on 
-	 * the first access.
-	 * 
-	 * @return IConsoleManager
-	 */
-	public IConsoleManager getConsoleManager() {
-		if (fConsoleManager == null) {
-			fConsoleManager = new ConsoleManager();
-		}
-		return fConsoleManager;
-	}
-
-	/**
-	 * Returns the standard display to be used. The method first checks, if
-	 * the thread calling this method has an associated display. If so, this
-	 * display is returned. Otherwise the method returns the default display.
-	 */
-	public static Display getStandardDisplay() {
-		Display display= Display.getCurrent();
-		if (display == null) {
-			display= Display.getDefault();
-		}
-		return display;		
-	}
-	
-	/**
-	 * Utility method with conventions
-	 */
-	public static void errorDialog(Shell shell, String title, String message, Throwable t) {
-		IStatus status;
-		if (t instanceof CoreException) {
-			status= ((CoreException)t).getStatus();
-			// if the 'message' resource string and the IStatus' message are the same,
-			// don't show both in the dialog
-			if (status != null && message.equals(status.getMessage())) {
-				message= null;
-			}
-		} else {
-			status= new Status(IStatus.ERROR, getUniqueIdentifier(), IConsoleConstants.INTERNAL_ERROR, "Error within Debug UI: ", t); //$NON-NLS-1$
-			log(status);	
-		}
-		ErrorDialog.openError(shell, title, message, status);
-	}
-    
-    /**
-     * Returns the <code>Image</code> identified by the given key,
-     * or <code>null</code> if it does not exist.
-     * 
-     * @return the <code>Image</code> identified by the given key,
-     * or <code>null</code> if it does not exist
-     * @since 3.1
-     */
-    public static Image getImage(String key) {
-        return ConsolePluginImages.getImage(key);
-    }
-    
-    /**
-     * Returns the <code>ImageDescriptor</code> identified by the given key,
-     * or <code>null</code> if it does not exist.
-     * 
-     * @return the <code>ImageDescriptor</code> identified by the given key,
-     * or <code>null</code> if it does not exist
-     * @since 3.1
-     */
-    public static ImageDescriptor getImageDescriptor(String key) {
-        return ConsolePluginImages.getImageDescriptor(key);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
-     */
-    public void stop(BundleContext context) throws Exception {
-    	if (fConsoleManager != null) {
-	        IConsole[] consoles = fConsoleManager.getConsoles();
-	        if (consoles != null) {
-	            fConsoleManager.removeConsoles(consoles);
-	        }
-    	}
-        super.stop(context);
-    }    
-    
-    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsole.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsole.java
deleted file mode 100644
index 1912450..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsole.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.ui.part.IPageBookViewPage;
-
-/**
- * A console. A console is commonly used to display messages such as the output
- * streams of a system process. A console can be displayed in one or more console
- * views.
- * <p>
- * The console implementations provided by this plug-in are textual
- * (<code>TextConsole</code>, <code>MessageConsole</code> and <code>IOConsole</code>).
- * However a client can provide alternate presentations since a console implementation
- * is responsible for providing is page for the page book views in which consoles are
- * displayed.
- * </p>
- * <p>
- * This interface is not intended to be implemented directly by clients. 
- * Subclass <code>AbstractConsole</code> instead.
- * </p>
- * @since 3.0
- */
-public interface IConsole {
-		
-	/**
-	 * Returns the name of this console.
-	 * 
-	 * @return the name of this console
-	 */
-	public String getName();
-	
-	/**
-	 * Returns an image descriptor for this console, or <code>null</code>
-	 * if none.
-	 * 
-	 * @return an image descriptor for this console, or <code>null</code>
-	 *  if none
-	 */
-	public ImageDescriptor getImageDescriptor();
-		
-	/**
-	 * Creates and returns a new page for this console. The page is displayed
-	 * for this console in the console given view.
-	 * 
-	 * @param view the view in which the page is to be created
-	 * @return a page book view page representation of this console
-	 */
-	public IPageBookViewPage createPage(IConsoleView view);
-	
-	/**
-	 * Adds a listener for changes to properties of this console.
-	 * Has no effect if an identical listener is already registered.
-	 * <p>
-	 * The changes supported by the console view are as follows:
-	 * <ul>
-	 *   <li><code>IBasicPropertyConstants.P_TEXT</code> - indicates the name
-	 *      of a console has changed</li>
-	 * 	 <li><code>IBasicPropertyConstants.P_IMAGE</code> - indicates the image
-	 *      of a console has changed</li>
-	 * </ul>
-	 * </p>
-	 * <p>
-	 * Consoles may define additional properties as required.
-	 * </p>
-	 *
-	 * @param listener a property change listener
-	 */
-	public void addPropertyChangeListener(IPropertyChangeListener listener);
-	
-	/**
-	 * Removes the given property listener from this console page.
-	 * Has no effect if an identical listener is not alread registered.
-	 * 
-	 * @param listener a property listener
-	 */
-	public void removePropertyChangeListener(IPropertyChangeListener listener);	
-	
-	/**
-	 * Returns a unique identifier for this console's type, or <code>null</code>
-	 * if unspecified.
-	 * 
-	 * @return a unique identifier for this console's type, or <code>null</code>
-	 * @since 3.1
-	 */
-	public String getType();
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleConstants.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleConstants.java
deleted file mode 100644
index 3590d64..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleConstants.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.console;
-
-/**
- * Constants relating to the console plug-in.
- * 
- * @since 3.0
- */
-public interface IConsoleConstants {
-	
-	/**
-	 * Console plug-in identifier (value <code>"org.eclipse.ui.console"</code>).
-	 */
-	public static final String PLUGIN_ID = ConsolePlugin.getUniqueIdentifier();
-	
-	/**
-	 * Console view identifier (value <code>"org.eclipse.ui.console.ConsoleView"</code>).
-	 */
-	public static final String ID_CONSOLE_VIEW= "org.eclipse.ui.console.ConsoleView"; //$NON-NLS-1$
-
-	/**
-	 * Type identifier for MessageConsole
-	 * @since 3.1
-	 */
-    public static final String MESSAGE_CONSOLE_TYPE = "org.eclipse.ui.MessageConsole"; //$NON-NLS-1$
-	
-	/**
-	 * The name of the font to use for the Console (value <code>"org.eclipse.ui.console.ConsoleFont"</code>).
-	 * 
-	 * @deprecated When a console is created, its font is set to the default text font as specified
-	 * by <code>JFaveResources.TEXT_FONT</code>. Clients must provide their own infrastructure to
-	 * manage console specific fonts. 
-	 */ 
-	public static final String CONSOLE_FONT= "org.eclipse.ui.console.ConsoleFont"; //$NON-NLS-1$
-	
-	/**
-	 * Menu group identifier for the console view context menu and toolbar, for actions pertaining to
-	 * launching (value <code>"launchGroup"</code>).
-	 */
-	public static final String LAUNCH_GROUP = "launchGroup"; //$NON-NLS-1$
-
-	/**
-	 * Menu group identifier for the console view context menu and toolbar, for actions pertaining to
-	 * console output. (value<code>"outputGroup"</code>).
-	 */
-	public static final String OUTPUT_GROUP = "outputGroup"; //$NON-NLS-1$	
-		
-	/** 
-	 * Console view image identifier.
-	 */
-	public static final String IMG_VIEW_CONSOLE= "IMG_VIEW_CONSOLE"; //$NON-NLS-1$
-	
-	/** 
-	 * Clear action image identifier. 
-	 */
-	public static final String IMG_LCL_CLEAR= "IMG_LCL_CLEAR"; //$NON-NLS-1$
-		
-	/**
-	 * Status code indicating an unexpected internal error.
-	 */
-	public static final int INTERNAL_ERROR = 120;
-
-	/**
-	 * Console pattern match listeners extension point identifier
-	 * (value <code>"consolePatternMatchListeners"</code>).
-	 * 
-	 * @since 3.1 
-	 */
-    public static final String EXTENSION_POINT_CONSOLE_PATTERN_MATCH_LISTENERS = "consolePatternMatchListeners"; //$NON-NLS-1$
-
-    /**
-     * Console page participants extension point identifier
-     * (value <code>"consolePageParticipants"</code>).
-     * 
-     * @since 3.1
-     */
-    public static final String EXTENSION_POINT_CONSOLE_PAGE_PARTICIPANTS = "consolePageParticipants"; //$NON-NLS-1$
-
-    /**
-     * Console factories extension point identifier
-     * (value <code>"consoleFactories"</code>).
-     * 
-     * @since 3.1
-     */
-    public static final String EXTENSION_POINT_CONSOLE_FACTORIES = "consoleFactories"; //$NON-NLS-1$
-    
-	/**
-	 * Property constant indicating a console's font has changed.
-	 *  
-	 * @since 3.1
-	 */
-	public static final String P_FONT = ConsolePlugin.getUniqueIdentifier() + ".P_FONT"; //$NON-NLS-1$
-	
-	/**
-	 * Property constant indicating that a font style has changed
-	 * 
-	 * @since 3.1
-	 */
-	public static final String P_FONT_STYLE = ConsolePlugin.getUniqueIdentifier() + ".P_FONT_STYLE"; //$NON-NLS-1$
-	
-	/**
-	 * Property constant indicating the color of a stream has changed.
-	 * 
-	 *  @since 3.1
-	 */
-	public static final String P_STREAM_COLOR = ConsolePlugin.getUniqueIdentifier()  + ".P_STREAM_COLOR";	 //$NON-NLS-1$
-		
-	/**
-	 * Property constant indicating tab size has changed
-	 * 
-	 *  @since 3.1
-	 */
-	public static final String P_TAB_SIZE = ConsolePlugin.getUniqueIdentifier()  + ".P_TAB_SIZE";	 //$NON-NLS-1$
-	
-	/**
-	 * Property constant indicating the width of a fixed width console has changed.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String P_CONSOLE_WIDTH = ConsolePlugin.getUniqueIdentifier() + ".P_CONSOLE_WIDTH"; //$NON-NLS-1$
-	
-	/**
-	 * Property constant indicating that all streams connected to this console have been closed
-	 * and that all queued output has been processed.
-	 * 
-	 * @since 3.1
-	 */
-	public static final String P_CONSOLE_OUTPUT_COMPLETE = ConsolePlugin.getUniqueIdentifier() + ".P_CONSOLE_STREAMS_CLOSED"; //$NON-NLS-1$
-
-    /**
-     * The default tab size for text consoles.
-     * 
-     * @since 3.1
-     */
-    public static final int DEFAULT_TAB_SIZE = 8;
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleDocumentPartitioner.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleDocumentPartitioner.java
deleted file mode 100644
index 7298fef..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleDocumentPartitioner.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.console;
-
-import org.eclipse.jface.text.IDocumentPartitioner;
-import org.eclipse.swt.custom.StyleRange;
-
-/**
- * A document partitioner for a text console.
- * <p>
- * In addition to regular partitioner duties, a console document partitioner
- * dicates which regions in its document are read-only and provides style ranges.
- * </p>
- * <p>
- * Clients may implement this interface.
- * </p>
- * @see org.eclipse.ui.console.TextConsole
- * @since 3.1
- */
-public interface IConsoleDocumentPartitioner extends IDocumentPartitioner {
-       
-    /**
-     * Returns whether this partitioner's document is read-only at the specified
-     * offset. The user is not allowed to type in read-only locations. 
-     * 
-     * @param offset document offset
-     * @return whether this partitioner's document is read-only at the specified
-     * offset
-     */
-    public boolean isReadOnly(int offset);
-    
-    /**
-     * Returns style ranges for the specified region of this partitioner's document
-     * to use when rendering, or <code>null</code> if none. 
-     * 
-     * @param offset beginning offset for which style ranges are requested
-     * @param length the length of text for which style ranges are requested
-     * @return style ranges for the specified region of this partitioner's document
-     * to use when rendering, or <code>null</code> if none
-     */
-    public StyleRange[] getStyleRanges(int offset, int length);
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleFactory.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleFactory.java
deleted file mode 100644
index 4e27fed..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleFactory.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-/**
- * A console factory extension is responsible for opening a console in the console view.
- * Extensions appear on a menu in the console view, and their <code>openConsole</code>
- * method is called when the action is invoked. Implementations may choose to open a new
- * console or activate an existing console. The extension point used to contribute a
- * console factory is <code>org.eclipse.ui.console.consoleFactories</code>.
- * <p>
- * Following is an example console factory extension.
- * <pre>
- * &lt;extension point="org.eclipse.ui.console.consoleFactories"&gt;
- *   &lt;consoleFactory
- *      label="Command Console"
- *      icon="icons\cmd_console.gif"
- *      class="com.example.CommandConsoleFactory"&gt;
- *   &lt;/consoleFactory&gt;
- * &lt;/extension&gt;
- * </pre>
- * An action appears in the console view's 'Open Console' drop-down menu with the
- * corresponding <code>label</code> and optional <code>icon</code>. When the action
- * is invoked, the specified <code>class</code> is instantiated and called to
- * open a console, via the method <code>openConsole()</code>. 
- * </p>
- * <p>
- * Clients providing console factory extensions are intended to implement
- * this interface.
- * </p>
- * @since 3.1
- */
-public interface IConsoleFactory {
-    /**
-     * Opens a console in the console view. Implementations may create a new
-     * console or activate an existing console.
-     */
-    public void openConsole();
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleListener.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleListener.java
deleted file mode 100644
index 41aedb2..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleListener.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-/**
- * A console listener is notified when consoles are added or removed from
- * the console manager.
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IConsoleListener {
-	
-	/**
-	 * Notification the given consoles have been added to the console
-	 * manager.
-	 * 
-	 * @param consoles added consoles
-	 */
-	public void consolesAdded(IConsole[] consoles);
-	
-	/**
-	 * Notification the given consoles have been removed from the
-	 * console manager.
-	 * 
-	 * @param consoles removed consoles
-	 */
-	public void consolesRemoved(IConsole[] consoles);
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleManager.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleManager.java
deleted file mode 100644
index 4c92247..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleManager.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-/**
- * The console manager manages registered consoles.
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @since 3.0 
- */
-public interface IConsoleManager {
-	
-	/**
-	 * Registers the given listener for console notifications. Has
-	 * no effect if an identical listener is already registered.
-	 * 
-	 * @param listener listener to register
-	 */
-	public void addConsoleListener(IConsoleListener listener);
-	
-	/**
-	 * Deregisters the given listener for console notifications. Has
-	 * no effect if an identical listener is not already registered.
-	 * 
-	 * @param listener listener to deregister
-	 */
-	public void removeConsoleListener(IConsoleListener listener);
-
-	/**
-	 * Adds the given consoles to the console manager. Has no effect for
-	 * equivalent consoles already registered. The consoles will be added
-	 * to any existing console views.
-	 * 
-	 * @param consoles consoles to add
-	 */
-	public void addConsoles(IConsole[] consoles);
-	
-	/**
-	 * Removes the given consoles from the console manager. If the consoles are
-	 * being displayed in any console views, the associated pages will be removed
-	 * and disposed.
-	 * 
-	 * @param consoles consoles to remove
-	 */
-	public void removeConsoles(IConsole[] consoles);
-	
-	/**
-	 * Returns a collection of consoles registered with the console manager.
-	 * 
-	 * @return a collection of consoles registered with the console manager
-	 */
-	public IConsole[] getConsoles();
-	
-	/**
-	 * Opens the console view and displays given the console.
-	 * If the view is already open, it is brought to the front unless
-	 * the view is pinned on a console other than the given console.
-	 * Has no effect if the given console is not currently registered.
-	 * 
-	 * @param console console to display
-	 */
-	public void showConsoleView(IConsole console);
-	
-	/**
-	 * Warns that the content of the given console has changed in
-	 * all console views. Has no effect if the given console is not
-	 * currently registered.
-	 * 
-	 * @param console the console that has changed
-	 */
-	public void warnOfContentChange(IConsole console);
-	
-	/**
-	 * Creates and returns a collection of new pattern match listeners enabled for
-	 * the given console. The pattern match listeners are new instances, intended
-	 * to be used in a new console. No methods on the participants have been
-	 * called. Clients are responsible for connecting to and disconnecting from
-	 * the pattern match listeners.
-     * <p>
-     * Console pattern match listeners are contributed via the
-     * <code>org.eclipse.ui.console.consolePatternMatchListeners</code> extension point.
-     * </p>
-	 * 
-	 * @param console the console for which pattern match listeners are requested
-	 * @return a collection of new pattern match listeners
-     * @see IPatternMatchListener
-	 * @since 3.1
-	 */
-	public IPatternMatchListener[] createPatternMatchListeners(IConsole console);
-    
-    /**
-     * Requests a redraw of any visible console page containing the specified console.
-     * 
-     * @param console the console to be refreshed
-     * @since 3.1
-     */
-    public void refresh(IConsole console);
-	
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsolePageParticipant.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsolePageParticipant.java
deleted file mode 100644
index 0f3d5fb..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsolePageParticipant.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.ui.part.IPageBookViewPage;
-
-/**
- * A console page participant is notified of page lifecycle events such as
- * creation, activation, deactivation and disposal. A page participant can
- * also provide adapters for a page. Participants are contributed via the
- * <code>org.eclispe.ui.console.consolePageParticipants</code> extension point.
- * <p>
- * Participant behavior is implementation dependent. For example, a page participant
- * could add actions to a console's toolbar by accessing a its page's action bars.  
- * </p>
- * <p>
- * Following is an example extension definition.
- * <pre>
- * &lt;extension point=&quot;org.eclipse.ui.console.consolePageParticipants&quot;&gt;
- *   &lt;consolePageParticipant
- *      id=&quot;com.example.ExamplePageParticipant&quot;
- *      class=&quot;com.example.ExamplePageParticipant&quot;&gt;
- *   &lt;/consolePageParticipant&gt;
- * &lt;/extension&gt;
- * </pre>
- * </p>
- * The example page participant is contributed to all console pages. An optional
- * <code>enablement</code> attribute may be specified to control which consoles
- * a page participant is applicable to.
- * <p>
- * Clients contributing console page participant extensions are intended to 
- * implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IConsolePageParticipant extends IAdaptable {
-    /**
-     * Called during page initialization. Marks the start of this 
-     * page participant's lifecycle.
-     * 
-     * @param page the page corresponsing to the given console
-     * @param console the console for which a page has been created
-     */
-    public void init(IPageBookViewPage page, IConsole console);
-    
-    /**
-     * Disposes this page participant. Marks the end of this
-     * page participant's lifecycle.
-     */
-    public void dispose();
-    
-    /**
-     * Notification this participant's page has been activated.
-     */
-    public void activated();
-    
-    /**
-     * Notification this participant's page has been deactivated.
-     */
-    public void deactivated();
-    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleView.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleView.java
deleted file mode 100644
index b76b3c3..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IConsoleView.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import org.eclipse.ui.IViewPart;
-
-/**
- * A view that displays consoles registered with the console manager.
- * <p>
- * Clients are not intended to implement this interface.
- * </p>
- * @since 3.0
- */
-public interface IConsoleView extends IViewPart {
-	
-	/**
-	 * Displays the page for the given console in this console view.
-	 * Has no effect if this console view has a pinned console. 
-	 *  
-	 * @param console console to display, cannot be <code>null</code>
-	 */
-	public void display(IConsole console);
-	
-	/**
-	 * Pins this console view. No other console page will be displayed until
-     * this console view is un-pinned.
-	 *  
-	 * @param pin <code>true</code> to pin the current console to the 
-     * top of the stack, <code>false</code> otherwise
-     * @since 3.1
-	 */
-	public void setPinned(boolean pin);
-	
-    /**
-     * Displays and pins the given console in this console view. No
-     * other console can be displayed until this console view is
-     * un-pinned. Specifying <code>null</code> un-pins this console
-     *  
-     * @param console console to pin, or <code>null</code> to un-pin
-     * @deprecated rather than pinning a specific console, a console view is
-     *  pinned - use <code>setPinned(boolean)</code>
-     */
-    public void pin(IConsole console);
-    
-	/**
-	 * Returns whether this console view is currently pinned to a
-	 * specific console.
-	 * 
-	 * @return whether this console view is currently pinned to a
-	 *  specific console
-	 */
-	public boolean isPinned();
-	
-	/**
-	 * Returns the console currently being displayed, or <code>null</code>
-	 * if none
-	 * 
-	 * @return the console currently being displayed, or <code>null</code>
-	 *  if none
-	 */
-	public IConsole getConsole();
-	
-	/**
-	 * Warns that the content of the given console has changed.
-	 * 
-	 * @param console the console that has changed
-	 */
-	public void warnOfContentChange(IConsole console);	
-    
-    /**
-     * Sets the scroll lock state of the currently active console.
-     * 
-     * @param scrollLock <code>true</code> to turn scroll lock on, otherwise <code>false</code>
-     * @since 3.1
-     */
-    public void setScrollLock(boolean scrollLock);
-    
-    /**
-     * Returns the scroll lock state of the currently active console.
-     * 
-     * @return <code>true</code> if scroll lock is on, <code>false</code> otherwise
-     * @since 3.1
-     */
-    public boolean getScrollLock();
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IHyperlink.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IHyperlink.java
deleted file mode 100644
index 38aa499..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IHyperlink.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-/**
- * A hyperlink in a console. Link behavior is implementation dependent.
- * <p>
- * Clients may implement this interface.
- * </p>
- * @since 3.1
- */
-public interface IHyperlink {
-	
-	/**
-	 * Notification that the mouse has entered this link's region.
-	 */
-	public void linkEntered();
-	
-	/**
-	 * Notification that the mouse has exited this link's region
-	 */
-	public void linkExited();
-	
-	/**
-	 * Notification that this link has been activated. Performs
-	 * context specific linking.
-	 */
-	public void linkActivated();
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsole.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsole.java
deleted file mode 100644
index 5e1177d..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsole.java
+++ /dev/null
@@ -1,254 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.console;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.WorkbenchEncoding;
-import org.eclipse.ui.internal.console.IOConsolePage;
-import org.eclipse.ui.internal.console.IOConsolePartitioner;
-import org.eclipse.ui.part.IPageBookViewPage;
-
-/**
- * A console that displays text from I/O streams. An I/O console can have multiple
- * output streams connected to it and provides one input stream connected to the
- * keyboard.
- * <p>
- * Clients may instantiate and subclass this class.
- * </p>
- * @since 3.1
- */
-public class IOConsole extends TextConsole {
-	/**
-	 * The document partitioner
-	 */
-    private IOConsolePartitioner partitioner;
-    
-    /**
-     * The stream from which user input may be read
-     */
-    private IOConsoleInputStream inputStream;
-        
-    /**
-     * A collection of open streams connected to this console.
-     */
-    private List openStreams;
-
-    /**
-     * The encoding used to for displaying console output.
-     */
-    private String fEncoding = WorkbenchEncoding.getWorkbenchDefaultEncoding();
-
-    
-    /**
-     * Constructs a console with the given name, type, image, and lifecycle, with the
-     * workbench's default encoding.
-     * 
-     * @param name name to display for this console
-     * @param consoleType console type identifier or <code>null</code>
-     * @param imageDescriptor image to display for this console or <code>null</code>
-     * @param autoLifecycle whether lifecycle methods should be called automatically
-     *  when this console is added/removed from the console manager
-     */
-    public IOConsole(String name, String consoleType, ImageDescriptor imageDescriptor, boolean autoLifecycle) {
-        this(name, consoleType, imageDescriptor, null, autoLifecycle);
-    }
-
-    /**
-     * Constructs a console with the given name, type, image, encoding and lifecycle.
-     * 
-     * @param name name to display for this console
-     * @param consoleType console type identifier or <code>null</code>
-     * @param imageDescriptor image to display for this console or <code>null</code>
-     * @param autoLifecycle whether lifecycle methods should be called automatically
-     *  when this console is added/removed from the console manager
-     */
-    public IOConsole(String name, String consoleType, ImageDescriptor imageDescriptor, String encoding, boolean autoLifecycle) {
-        super(name, consoleType, imageDescriptor, autoLifecycle);
-        if (encoding != null) {
-            fEncoding = encoding;
-        }
-        openStreams = new ArrayList();
-        inputStream = new IOConsoleInputStream(this);
-        openStreams.add(inputStream);
-        partitioner = new IOConsolePartitioner(inputStream, this);
-        partitioner.connect(getDocument());
-    }
-    
-    /**
-     * Constructs a console with the given name, type, and image with the workbench's
-     * default encoding. Lifecycle methods will be called when this console is
-     * added/removed from the console manager.
-     * 
-     * @param name name to display for this console
-     * @param consoleType console type identifier or <code>null</code>
-     * @param imageDescriptor image to display for this console or <code>null</code>
-     */
-    public IOConsole(String name, String consoleType, ImageDescriptor imageDescriptor) {
-        this(name, consoleType, imageDescriptor, true);
-    }    
-    
-    /**
-     * Constructs a console with the given name and image. Lifecycle methods
-     * will be called when this console is added/removed from the console manager.
-     * This console will have an unspecified (<code>null</code>) type.
-     * 
-     * @param name name to display for this console
-     * @param imageDescriptor image to display for this console or <code>null</code>
-     */
-    public IOConsole(String name, ImageDescriptor imageDescriptor) {
-        this(name, null, imageDescriptor);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsole#createPage(org.eclipse.ui.console.IConsoleView)
-     */
-    public IPageBookViewPage createPage(IConsoleView view) {
-        return new IOConsolePage(this, view);
-    }
-    
-    /**
-     * Creates and returns a new output stream which may be used to write to this console.
-     * A console may be connected to more than one output stream at once. Clients are
-     * responsible for closing any output streams created on this console.
-     * 
-     * @return a new output stream connected to this console
-     */
-    public IOConsoleOutputStream newOutputStream() {
-        IOConsoleOutputStream outputStream = new IOConsoleOutputStream(this);
-        outputStream.setEncoding(fEncoding);
-        synchronized(openStreams) {
-            openStreams.add(outputStream);
-        }
-        return outputStream;
-    }
-    
-    /**
-     * Returns the input stream connected to the keyboard.
-     * 
-     * @return the input stream connected to the keyboard.
-     */
-    public IOConsoleInputStream getInputStream() {
-        return inputStream;
-    }
-
-    /**
-     * Returns this console's document partitioner.
-     * 
-     * @return this console's document partitioner
-     */
-    protected IConsoleDocumentPartitioner getPartitioner() {
-        return partitioner;
-    }
-
-	/**
-	 * Returns the maximum number of characters that the console will display at
-	 * once. This is analagous to the size of the text buffer this console
-	 * maintains.
-	 * 
-	 * @return the maximum number of characters that the console will display
-	 */
-	public int getHighWaterMark() {
-	    return partitioner.getHighWaterMark();
-	}
-	
-	/**
-	 * Returns the number of characters that will remain in this console
-	 * when its high water mark is exceeded.
-	 *  
-	 * @return the number of characters that will remain in this console
-	 *  when its high water mark is exceeded
-	 */
-	public int getLowWaterMark() {
-		return partitioner.getLowWaterMark();
-	}
-	
-	/**
-	 * Sets the text buffer size for this console. The high water mark indicates
-	 * the maximum number of characters stored in the buffer. The low water mark
-	 * indicates the number of characters remaining in the buffer when the high
-	 * water mark is exceeded.
-	 * 
-	 * @param low the number of characters remaining in the buffer when the high
-	 *  water mark is exceeded (if -1 the console does not limit output)
-	 * @param high the maximum number of characters this console will cache in
-	 *  its text buffer (if -1 the console does not limit output)
-	 * @exception IllegalArgumentException if low >= high & low != -1
-	 */
-	public void setWaterMarks(int low, int high) {
-        if (low >= 0) {
-    	    if (low >= high) {
-    	        throw new IllegalArgumentException("High water mark must be greater than low water mark"); //$NON-NLS-1$
-    	    }
-        }
-		partitioner.setWaterMarks(low, high);
-	}
-
-    /**
-     * Check if all streams connected to this console are closed. If so,
-     * notifiy the partitioner that this console is finished. 
-     */
-    private void checkFinished() {
-        if (openStreams.isEmpty()) {
-            partitioner.streamsClosed();
-        }
-    }
-    
-    /**
-     * Notification that an output stream connected to this console has been closed.
-     * 
-     * @param stream stream that closed
-     */
-    void streamClosed(IOConsoleOutputStream stream) {
-    	synchronized (openStreams) {
-            openStreams.remove(stream);
-            checkFinished();
-		}
-    }
-    
-    /**
-     * Notification that the input stream connected to this console has been closed.
-     * 
-     * @param stream stream that closed
-     */
-    void streamClosed(IOConsoleInputStream stream) {
-    	synchronized (openStreams) {
-            openStreams.remove(stream);
-            checkFinished();
-		}
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.TextConsole#clearConsole()
-     */
-    public void clearConsole() {
-        if (partitioner != null) {
-            partitioner.clearBuffer();
-        }
-    }
-    
-    /**
-     * Disposes this console.
-     */
-    protected void dispose() {
-        super.dispose();
-        partitioner.disconnect();
-        try {
-            inputStream.close();
-        } catch (IOException ioe) {
-        }
-        inputStream = null;
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleInputStream.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleInputStream.java
deleted file mode 100644
index 4be3dfc..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleInputStream.java
+++ /dev/null
@@ -1,275 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import java.io.IOException;
-import java.io.InputStream;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-
-/**
- * InputStream used to read input from an IOConsole. 
- * This stream will buffer input that it receives until it has been read.
- * <p>
- * Clients are not intended to instantiate this class directly, instead
- * use <code>IOConsole.getInputStream()</code>. Clients are not intended
- * to subclass this class.
- * </p>
- * @since 3.1
- *
- */
-public class IOConsoleInputStream extends InputStream {
-    /**
-     * Buffer to hold data from console until it is read.
-     */
-    private byte[] input = new byte[100];
-    
-    /**
-     * Location in the buffer that the next byte of data from the
-     * console should be stored.
-     */
-    private int inPointer = 0;
-    
-    /**
-     * Location in the buffer that the next byte of data read from
-     * this stream should come from.
-     */
-    private int outPointer = 0;
-    
-    /**
-     * The number of bytes of real data currently in the buffer. 
-     */
-    private int size = 0;
-    
-    /**
-     * Flag to indicate that EOF has been sent already.
-     */
-    private boolean eofSent = false;
-    
-    /**
-     * Flag to indicate that the stream has been closed.
-     */
-    private boolean closed = false;
-    
-    /**
-     * The console that this stream is connected to.
-     */
-    private IOConsole console;
-    
-    /**
-     * The color used to display input in the console.
-     */
-    private Color color;
-    
-    /**
-     * The font stye used to decorate input in the console.
-     */
-    private int fontStyle = SWT.NORMAL;
-
-
-    /**
-     * Constructs a new input stream on the given console.
-     * 
-     * @param console I/O console
-     */
-    IOConsoleInputStream(IOConsole console) {
-        this.console = console;
-    }
-    
-    /*
-     *  (non-Javadoc)
-     * @see java.io.InputStream#read(byte[], int, int)
-     */
-    public synchronized int read(byte[] b, int off, int len) throws IOException {
-        waitForData();
-        if (available() == -1) {
-            return -1;
-        }
-    
-        int toCopy = Math.min(len, size);
-        if(input.length-outPointer > toCopy) {
-            System.arraycopy(input, outPointer, b, off, toCopy);
-            outPointer += toCopy;
-            size -= toCopy;
-        } else {
-            int bytesToEnd = input.length-outPointer;
-            System.arraycopy(input, outPointer, b, off, bytesToEnd);
-            System.arraycopy(input, 0, b, off+bytesToEnd, toCopy-bytesToEnd);
-            outPointer = toCopy-bytesToEnd;
-            size -=toCopy;
-        }
-        return toCopy;
-    }
-    
-    /*
-     *  (non-Javadoc)
-     * @see java.io.InputStream#read(byte[])
-     */
-    public int read(byte[] b) throws IOException {
-        return read(b, 0, b.length);
-    }
-
-    /*
-     *  (non-Javadoc)
-     * @see java.io.InputStream#read()
-     */
-    public synchronized int read() throws IOException {
-        waitForData();
-        if (available() == -1) { 
-            return -1;
-        }
-        
-        byte b = input[outPointer];
-        outPointer++;
-        if (outPointer == input.length) {
-            outPointer = 0;
-        }
-        return b;
-    }
-    
-    /**
-     * Blocks until data is available to be read.
-     * Ensure that the monitor for this object is obtained before
-     * calling this method.
-     */
-    private void waitForData() {
-        while (size == 0 && !closed) {
-            try {
-                wait();
-            } catch (InterruptedException e) {
-            }
-        }
-    }
-
-    /**
-     * Appends text to this input stream's buffer.
-     * 
-     * @param text the text to append to the buffer.
-     */
-    public synchronized void appendData(String text) {
-        byte[] newData = text.getBytes();
-        while(input.length-size < newData.length) {
-            growArray();
-        }
-        
-        if (size == 0) { //inPointer == outPointer
-            System.arraycopy(newData, 0, input, 0, newData.length);
-            inPointer = newData.length;
-            size = newData.length;
-            outPointer = 0;
-        } else if (inPointer < outPointer || input.length - inPointer > newData.length) {
-            System.arraycopy(newData, 0, input, inPointer, newData.length);
-            inPointer += newData.length;
-            size += newData.length;
-        } else {
-            System.arraycopy(newData, 0, input, inPointer, input.length-inPointer);
-            System.arraycopy(newData, input.length-inPointer, input, 0, newData.length-(input.length-inPointer));
-            inPointer = newData.length-(input.length-inPointer);
-            size += newData.length;
-        }
-        
-        if (inPointer == input.length) {
-            inPointer = 0;
-        }
-        notifyAll();
-    }
-    
-    /**
-     * Enlarges the buffer.
-     */
-    private void growArray() {
-        byte[] newInput = new byte[input.length+1024];
-        if (outPointer < inPointer) {
-            System.arraycopy(input, outPointer, newInput, 0, size);
-        } else {
-            System.arraycopy(input, outPointer, newInput, 0, input.length-outPointer);
-            System.arraycopy(input, 0, newInput, input.length-outPointer, inPointer);
-        }
-        outPointer = 0;
-        inPointer = size;
-        input = newInput;
-        newInput = null;
-    }
-
-    /**
-     * Returns this stream's font style.
-     * 
-     * @return the font style used to decorate input in the associated console
-     */
-    public int getFontStyle() {
-        return fontStyle;
-    }
-
-    /**
-     * Sets this stream's font style.
-     * 
-     * @param newFontStyle the font style to be used to decorate input in the associated console
-     */
-    public void setFontStyle(int newFontStyle) {
-        if (newFontStyle != fontStyle) {
-            int old = fontStyle;
-            fontStyle = newFontStyle;
-            console.firePropertyChange(this, IConsoleConstants.P_FONT_STYLE, new Integer(old), new Integer(fontStyle));
-        }
-    }
-    
-    /**
-     * Sets the color to used to decorate input in the associated console.
-     * 
-     * @param newColor the color to used to decorate input in the associated console.
-     */
-    public void setColor(Color newColor) {
-        Color old = color;
-        if (old == null || !old.equals(newColor)) {
-            color = newColor;
-            console.firePropertyChange(this, IConsoleConstants.P_STREAM_COLOR, old, newColor);
-        }
-    }
-    
-    /**
-     * Returns the color used to decorate input in the associated console
-     * 
-     * @return the color used to decorate input in the associated console
-     */
-    public Color getColor() {
-        return color;
-    }
-    
-    /* (non-Javadoc)
-     * @see java.io.InputStream#available()
-     */
-    public int available() throws IOException {
-        if (closed && eofSent) {
-            throw new IOException("Input Stream Closed"); //$NON-NLS-1$
-        } else if (size == 0) {
-            if (!eofSent) {
-                eofSent = true;
-                return -1;
-            } 
-            throw new IOException("Input Stream Closed"); //$NON-NLS-1$
-        }
-        
-        return size;
-    }
-    
-    /* (non-Javadoc)
-     * @see java.io.InputStream#close()
-     */
-    public synchronized void close() throws IOException {
-        if(closed) {
-            throw new IOException("Input Stream Closed"); //$NON-NLS-1$
-        }
-        closed = true;
-        notifyAll();
-        console.streamClosed(this);
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleOutputStream.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleOutputStream.java
deleted file mode 100644
index fcbc5b3..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IOConsoleOutputStream.java
+++ /dev/null
@@ -1,244 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.ui.WorkbenchEncoding;
-import org.eclipse.ui.internal.console.IOConsolePartitioner;
-
-/**
- * OutputStream used to write to an IOConsole.
- * <p>
- * Clients are not intended to instantiate this class directly, instead
- * use <code>IOConsole.newOutputStream()</code>. Clients are not intended
- * to subclass this class.
- * </p>
- * @since 3.1
- */
-public class IOConsoleOutputStream extends OutputStream {
-    /**
-     * Flag indicating whether this stream has been closed.
-     */
-    private boolean closed = false;
-
-    /**
-     * The console's document partitioner.
-     */
-    private IOConsolePartitioner partitioner;
-    
-    /**
-     * The console this stream is attached to.
-     */
-    private IOConsole console;
-    
-    /**
-     * Flag indicating that the console should be activated when data
-     * is written to this stream.
-     */
-    private boolean activateOnWrite = false;
-    
-    /**
-     * The color used to decorate data written to this stream.
-     */
-    private Color color;
-    
-    /**
-     * The font style used to decorate data written to this stream.
-     */
-    private int fontStyle;
-
-    private String fEncoding;
-    private String fDefaultEncoding = WorkbenchEncoding.getWorkbenchDefaultEncoding();
-
-    private boolean fNeedsEncoding = false;
-    
-    /**
-     * Constructs a new output stream on the given console.
-     * 
-     * @param console I/O console
-     */
-    IOConsoleOutputStream(IOConsole console) {
-        this.console = console;
-        this.partitioner = (IOConsolePartitioner) console.getPartitioner();
-    }
-
-    /**
-     * Returns the font style used to decorate data written to this stream.
-     * 
-     * @return the font style used to decorate data written to this stream
-     */
-    public int getFontStyle() {
-        return fontStyle;
-    }
-    
-    /**
-     * Sets the font style to be used to decorate data written to this stream.
-     * 
-     * @param newFontStyle the font style to be used to decorate data written to this stream
-     */
-    public void setFontStyle(int newFontStyle) {
-        if (newFontStyle != fontStyle) {
-            int old = fontStyle;
-            fontStyle = newFontStyle;
-            console.firePropertyChange(this, IConsoleConstants.P_FONT_STYLE, new Integer(old), new Integer(fontStyle));
-        }
-    }
-    
-    /**
-     * Returns whether the console this stream is writing to will be activated when this stream
-     * is written to.
-     * 
-     * @return whether the console this stream is writing to will be activated when this stream
-     * is written to.
-     */
-    public boolean isActivateOnWrite() {
-        return activateOnWrite;
-    }
-
-    /**
-     * Sets whether to activate the console this stream is writing to when this stream
-     * is written to.
-     * 
-     * @param activateOnWrite whether the console this stream is writing to will be activated when this stream
-     * is written to.
-     */
-    public void setActivateOnWrite(boolean activateOnWrite) {
-        this.activateOnWrite = activateOnWrite;
-    }
-    
-	/**
-	 * Sets the color of this stream. Use <code>null</code> to indicate
-     * the default color.
-	 * 
-	 * @param color color of this stream, or <code>null</code>
-	 */
-	public void setColor(Color newColor) {
-		Color old = color;
-		if (old == null || !old.equals(newColor)) {
-		    color = newColor;
-		    console.firePropertyChange(this, IConsoleConstants.P_STREAM_COLOR, old, newColor);
-		}
-	}
-	
-	/**
-	 * Returns the color of this stream, or <code>null</code>
-	 * if default.
-	 * 
-	 * @return the color of this stream, or <code>null</code>
-	 */
-	public Color getColor() {
-	    return color;
-	}
-	
-    /**
-     * Returns true if the stream has been closed
-     * @return true is the stream has been closed, false otherwise.
-     */
-    public synchronized boolean isClosed() {
-        return closed;
-    }
-    
-	/*
-	 *  (non-Javadoc)
-	 * @see java.io.OutputStream#close()
-	 */
-    public synchronized void close() throws IOException {
-        if(closed) {
-            throw new IOException("Output Stream is closed"); //$NON-NLS-1$
-        }
-        console.streamClosed(this);
-        closed = true;
-        partitioner = null;
-    }
-
-    /*
-     *  (non-Javadoc)
-     * @see java.io.OutputStream#flush()
-     */
-    public void flush() throws IOException {
-        if(closed) {
-            throw new IOException("Output Stream is closed"); //$NON-NLS-1$
-        }
-    }
-    
-    /*
-     *  (non-Javadoc)
-     * @see java.io.OutputStream#write(byte[], int, int)
-     */
-    public void write(byte[] b, int off, int len) throws IOException {
-        if (fNeedsEncoding) {
-            encodedWrite(new String(b, off, len, fEncoding));
-        } else {
-            encodedWrite(new String(b, off, len));
-        }
-    }
-    /*
-     *  (non-Javadoc)
-     * @see java.io.OutputStream#write(byte[])
-     */
-    public void write(byte[] b) throws IOException {
-        write(b, 0, b.length);
-    }
-    /*
-     *  (non-Javadoc)
-     * @see java.io.OutputStream#write(int)
-     */
-    public void write(int b) throws IOException {
-        write(new byte[] {(byte)b}, 0, 1);
-    }    
-    
-    /**
-     * Writes a string to the attached console.
-     * 
-     * @param str the string to write to the attached console.
-     * @throws IOException if the stream is closed.
-     */
-    public synchronized void write(String str) throws IOException {
-        if (fNeedsEncoding) {
-	        byte[] defaultBytes = str.getBytes();
-	        str = new String(defaultBytes, fEncoding);
-        }
-        encodedWrite(str);
-    }
-    
-    private void encodedWrite(String encodedString) throws IOException {
-        if(closed) {
-            throw new IOException("Output Stream is closed"); //$NON-NLS-1$
-        }
-        try {
-            partitioner.streamAppended(this, encodedString);
-
-            if (activateOnWrite) {
-            	console.activate();
-            } else {
-            	ConsolePlugin.getDefault().getConsoleManager().warnOfContentChange(console);
-            }
-        } catch (IOException e) {
-            if (!closed) {
-                close();
-            }
-            throw e;
-        }
-    }
-
-    /**
-     * Sets the character encoding used to interpret characters written to this steam. 
-     * 
-     * @param encoding endcoding identifier
-     */
-    public void setEncoding(String encoding) {
-        fEncoding = encoding;
-        fNeedsEncoding = (fEncoding!=null) && (!fEncoding.equals(fDefaultEncoding));
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListener.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListener.java
deleted file mode 100644
index d3042ea..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListener.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-/**
- * A pattern match listener is registered with a <code>TextConsole</code>,
- * and is notified when its pattern has been matched to contents in
- * that console. A pattern match listener can be registered with a console
- * programmatically or via the <code>consolePatternMatchListeners</code> extension
- * point.
- * <p>
- * Following is an example console pattern match listener extension definition.
- * </pre>
- * &lt;extension point="org.eclipse.ui.console.consolePatternMatchListeners"&gt;
- *   &lt;consolePatternMatchListener
- *      id="com.example.ConsolePatternMatcher"
- *      regex=".*foo.*"
- *      class="com.example.ConsolePatternMatcher"&gt;
- *   &lt;/consolePatternMatchListener&gt;
- * &lt;/extension&gt;
- * </pre>
- * Attributes are specified as follows:
- * <ul>
- * <li><code>id</code> - a unique identifier for the pattern match listener</li>
- * <li><code>regex</code> - regular expression to match</li>
- * <li><code>class</code> - fully qualified name of the Java class implementing
- *  <code>org.eclipse.ui.console.IPatternMatchListenerDelegate</code></li>
- * </ul>
- * </p> 
- * <p>
- * Optionally a <code>qualifier</code> attribute may be specified to improve performance
- * of regular expression matching. A qualifier specifies a simple regular expression used to
- * qualify lines for the search. Lines that do not contain the qualifier are not considered.
- * </p>
- * <p>
- * Optionally an <code>enablement</code> expression may be provided to specify
- * which console(s) a pattern matcher should be contributed to.
- * </p>
- * <p>
- * Clients may implement this interface directly if registering a pattern match listener with
- * a text console programmatically. Clients contributing a pattern match listener via an
- * extension implement <code>IPatternMatchListenerDelegate</code> instead.
- * </p>
- * @see org.eclipse.ui.console.TextConsole
- * @since 3.1
- */
-public interface IPatternMatchListener extends IPatternMatchListenerDelegate {
-    /**
-     * Returns the pattern to be used for matching. The pattern is
-     * a string representing a regular expression. 
-     * 
-     * @return the regular expression to be used for matching
-     */
-    public String getPattern();
-    
-    /**
-     * Returns the flags to use when compiling this pattern match listener's
-     * regular expression, as defined by by <code>Pattern.compile(String regex, int flags)</code>
-     * 
-     * @return the flags to use when compiling this pattern match listener's
-     * regular expression
-     * @see java.util.regex.Pattern#compile(java.lang.String, int)
-     */
-    public int getCompilerFlags();
-    
-    /**
-     * Returns a simple regular expression used to identify lines that may
-     * match this pattern matcher's complete pattern, or <code>null</code>.
-     * Use of this attribute can improve performance by disqualifying lines
-     * from the search. When a line is found containing a match for this expression,
-     * the line is searched from the beginning for this pattern matcher's
-     * complete pattern. Lines not containing this pattern are discarded.
-     * 
-     * @return a simple regular expression used to identify lines that may
-     * match this pattern matcher's complete pattern, or <code>null</code>
-     */
-    public String getLineQualifier();
-    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListenerDelegate.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListenerDelegate.java
deleted file mode 100644
index a3e60dd..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/IPatternMatchListenerDelegate.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-/**
- * A pattern match listener delegate is notified of regular expression matches
- * in a text console. A delegate is contributed via the
- * <code>consolePatternMatcherListeners</code> extension point.
- * <p>
- * Clients contributing a console pattern match listener extension are intended
- * to implement this interface.
- * </p>
- * @see org.eclipse.ui.console.IPatternMatchListener
- * @see org.eclipse.ui.console.TextConsole
- * @since 3.1
- */
-public interface IPatternMatchListenerDelegate {
-    /**
-     * Notification that pattern matching will begin in the specified console.
-     * A pattern matcher is connected to only one console at a time.
-     * 
-     * @param console the console in which pattern matching will be performed
-     */
-    public void connect(TextConsole console);
-    
-    /**
-     * Notification that pattern matching has been completed in the console
-     * this delegate was last connected to.
-     */
-    public void disconnect();
-    
-    /**
-     * Notification that a match has been found.
-     * 
-     * @param event event describing where the match was found
-     */
-    public void matchFound(PatternMatchEvent event);
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsole.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsole.java
deleted file mode 100644
index 8f49642..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsole.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.internal.console.IOConsolePage;
-import org.eclipse.ui.part.IPageBookViewPage;
-
-/**
- * A console that displays messages. A message console may have one or
- * more streams connected to it (<code>MessageConsoleStream</code>).
- * Text written to streams is buffered and processed in a Job by the 
- * console's document partitioner.
- * <p>
- * Clients may instantiate this class; not intended to be subclassed.
- * </p>
- * @since 3.0
- */
-public class MessageConsole extends IOConsole {
-	
-	/**
-	 * Property constant indicating the font of this console has changed. 
-	 * 
-	 * @deprecated use {@link IConsoleConstants.P_FONT} 
-	 */
-	public static final String P_FONT = IConsoleConstants.P_FONT;
-	
-	/**
-	 * Property constant indicating the color of a stream has changed. 
-	 * 
-	 * @deprecated use {@link IConsoleConstants.P_STREAM_COLOR} 
-	 */
-	public static final String P_STREAM_COLOR = IConsoleConstants.P_STREAM_COLOR;
-	
-	/**
-	 * Property constant indicating tab size has changed
-	 * 
-	 * @deprecated use {@link IConsoleConstants.P_TAB_SIZE}
-	 */
-	public static final String P_TAB_SIZE = IConsoleConstants.P_TAB_SIZE;
-	
-	/**
-	 * The default tab size
-	 * 
-	 * @deprecated use {@link IConsoleConstants.DEFAULT_TAB_SIZE}
-	 */
-	public static final int DEFAULT_TAB_SIZE = IConsoleConstants.DEFAULT_TAB_SIZE;	
-
-    /**
-     * Consturcts a message console with the given name and image.
-     * 
-     * @param name console name
-     * @param imageDescriptor console image descriptor or <code>null</code>
-     */
-	public MessageConsole(String name, ImageDescriptor imageDescriptor) {
-		this(name, imageDescriptor, true);
-	}
-	
-	/**
-	 * Constructs a message console.
-	 * 
-	 * @param name console name
-	 * @param imageDescriptor console image descriptor or <code>null</code>
-	 * @param autoLifecycle whether lifecycle methods should be called automatically
-	 *  when added and removed from the console manager
-	 * @since 3.1
-	 */
-	public MessageConsole(String name, ImageDescriptor imageDescriptor, boolean autoLifecycle) {
-		super(name, IConsoleConstants.MESSAGE_CONSOLE_TYPE, imageDescriptor, autoLifecycle);
-	}	
-		
-	/**
-	 * Returns a new message stream connected to this console.
-	 * 
-	 * @return a new message stream connected to this console
-	 */
-	public MessageConsoleStream newMessageStream() {
-		return new MessageConsoleStream(this);
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsole#createPage(org.eclipse.ui.console.IConsoleView)
-     */
-    public IPageBookViewPage createPage(IConsoleView view) {
-        IOConsolePage page = (IOConsolePage) super.createPage(view);
-        page.setReadOnly();
-        return page;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IOConsole#getInputStream()
-     */
-    public IOConsoleInputStream getInputStream() {
-        throw new UnsupportedOperationException("Message Console does not support user input"); //$NON-NLS-1$
-    }
-    
-	
-	/** 
-	 * Appends the given message to this console, from the specified stream.
-	 * 
-	 * @param text message
-	 * @param stream stream the message belongs to
-	 * @deprecated since 3.1, this method should no longer be called, and has no effect.\
-	 * Writing to a message console stream updates the document
-	 */
-	protected void appendToDocument(String text, MessageConsoleStream stream) {
-	}    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsoleStream.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsoleStream.java
deleted file mode 100644
index 577c6dd..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/MessageConsoleStream.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import java.io.IOException;
-
-/**
- * Used to write messages to a message console. A message console may have more
- * than one stream connected to it. Each stream may be displayed in a different
- * color.
- * <p>
- * Clients are not intended to subclass or instantiate this class. Instances
- * are created via a {@link org.eclipse.ui.console.MessageConsole}.
- * </p>
- * <p>
- * Since 3.1, this class extends {@link org.eclipse.ui.console.IOConsoleOutputStream}.
- * </p>
- * @since 3.0
- */
-public class MessageConsoleStream extends IOConsoleOutputStream {
-    
-    private MessageConsole fMessageConsole;
-    
-	/**
-	 * Constructs a new stream connected to the given console.
-	 * 
-	 * @param console the console to write messages to
-	 */
-	public MessageConsoleStream(MessageConsole console) {
-	    super(console);
-        fMessageConsole = console;
-	}
-	
-	/**
-	 * Appends the specified message to this stream.
-	 * 
-	 * @param message message to append
-	 */
-	public void print(String message) {
-		try {
-            write(message);
-        } catch (IOException e) {
-            ConsolePlugin.log(e);
-        }
-	}
-	
-	
-	/**
-	 * Appends a line separator string to this stream.
-	 */
-	public void println() {
-		try {
-            write("\n"); //$NON-NLS-1$
-        } catch (IOException e) {
-            ConsolePlugin.log(e);
-        }
-	}	
-	
-	/**
-	 * Appends the specified message to this stream, followed by a line
-	 * separator string.
-	 * 
-	 * @param message message to print
-	 */
-	public void println(String message) {
-		print(message);
-		println();
-	}	
-    
-    /**
-     * Returns the console this stream is connected to.
-     * 
-     * @return the console this stream is connected to
-     */
-    public MessageConsole getConsole() {
-        return fMessageConsole;
-    }    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/PatternMatchEvent.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/PatternMatchEvent.java
deleted file mode 100644
index 50693c4..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/PatternMatchEvent.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console;
-
-import java.util.EventObject;
-
-/**
- * An event describing a pattern match in a text console. The source of the event
- * is a <code>TextConsole</code>.
- * <p>
- * Clients may instantiate this class; not intended to be subclassed.
- * </p>
- * @see org.eclipse.ui.console.IPatternMatchListener
- * @see org.eclipse.ui.console.TextConsole
- * @since 3.1
- */
-public class PatternMatchEvent extends EventObject {
-    /*
-     * required by EventObject for ObjectSerialization.
-     */
-    private static final long serialVersionUID = 876890383326854537L;
-    
-    /**
-     * The offset of the match within the console's document. 
-     */
-    private int offset;
-    
-    /**
-     * The length of the matched string
-     */
-    private int length;
-
-    /**
-     * Constructs a new pattern match event.
-     * 
-     * @param console the console in which the match was found
-     * @param matchOffset the offset at which the match was found
-     * @param matchLength the length of the text that matched
-     */
-    public PatternMatchEvent(TextConsole console, int matchOffset, int matchLength) {
-        super(console);
-        offset = matchOffset;
-        length = matchLength;
-    }
-
-    /**
-     * Returns the length of the matched string.
-     * 
-     * @return the length of the matched string
-     */
-    public int getLength() {
-        return length;
-    }
-
-    /**
-     * Returns the offset of the match within the document.
-     * 
-     * @return the offset of the match within the document
-     */
-    public int getOffset() {
-        return offset;
-    }
-    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsole.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsole.java
deleted file mode 100644
index 7ebaccd..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsole.java
+++ /dev/null
@@ -1,497 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.console;
-
-import java.util.HashMap;
-
-import org.eclipse.core.runtime.jobs.ISchedulingRule;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.BadPositionCategoryException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.Region;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.ui.internal.console.ConsoleDocument;
-import org.eclipse.ui.internal.console.ConsoleHyperlinkPosition;
-import org.eclipse.ui.internal.console.ConsolePatternMatcher;
-import org.eclipse.ui.part.IPageBookViewPage;
-
-/**
- * An abstract text console that supports regular expression matching and
- * hyperlinks.
- * <p>
- * Pattern match listeners can be registered with a console programmatically
- * or via the <code>org.eclipse.ui.console.consolePatternMatchListeners</code>
- * extension point.
- * </p>
- * <p>
- * Clients may subclass this class. Subclasses must provide a document partitioner.
- * </p>
- * @since 3.1
- */
-public abstract class TextConsole extends AbstractConsole {
-
-    /**
-     * The current width of the console. Used for fixed width consoles.
-     * A value of <=0 means does not have a fixed width.
-     */
-    private int fConsoleWidth;
-    /**
-     * The current tab width
-     */
-    private int fTabWidth;
-    /** 
-	 * The font used by this console
-	 */
-    private Font fFont;    
-    /**
-     * The Console's regular expression pattern matcher
-     */
-    private ConsolePatternMatcher fPatternMatcher;
-    
-    /**
-     * The Console's document
-     */
-    private ConsoleDocument fDocument;
-    
-   /**
-    * indication that the console's partitioner is not expecting more input
-    */
-    private boolean fPartitionerFinished = false;
-    
-    /**
-     * Indication that the console's pattern matcher has finished.
-     * (all matches have been found and all listeners notified)
-     */
-    private boolean fMatcherFinished = false;
-    
-    /**
-     * indication that the console output complete property has been fired
-     */
-    private boolean fCompleteFired = false;
-
-    
-    /**
-     * Map of client defined attributes
-     */
-    private HashMap fAttributes = new HashMap();
-    
-    private IConsoleManager fConsoleManager = ConsolePlugin.getDefault().getConsoleManager();
-    
-   
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.AbstractConsole#dispose()
-     */
-    protected void dispose() {
-        super.dispose();
-        fFont = null;
-		synchronized(fAttributes) {
-		    fAttributes.clear();
-		}
-    }
-    /**
-     * Constructs a console with the given name, image descriptor, and lifecycle
-     * 
-     * @param name name to display for this console
-     * @param consoleType console type identifier or <code>null</code>
-     * @param imageDescriptor image to display for this console or <code>null</code>
-     * @param autoLifecycle whether lifecycle methods should be called automatically
-     *  when this console is added/removed from the console manager
-     */
-    public TextConsole(String name, String consoleType, ImageDescriptor imageDescriptor, boolean autoLifecycle) {
-        super(name, consoleType, imageDescriptor, autoLifecycle);
-        fDocument = new ConsoleDocument();
-        fDocument.addPositionCategory(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY);
-        fPatternMatcher = new ConsolePatternMatcher(this);
-        fDocument.addDocumentListener(fPatternMatcher);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsole#createPage(org.eclipse.ui.console.IConsoleView)
-     */
-    public IPageBookViewPage createPage(IConsoleView view) {
-        return new TextConsolePage(this, view);
-    }
-    
-	/**
-	 * Returns this console's document.
-     * <p>
-     * Note that a console may or may not support direct manipulation of its document.
-     * For example, an I/O console document and its partitions are produced from the
-     * streams connected to it, and clients are not intended to modify the document's
-     * contents.
-     * </p>
-	 * 
-	 * @return this console's document
-	 */
-    public IDocument getDocument() {
-        return fDocument;
-    }
-    
-    /**
-     * Returns the current width of this console. A value of zero of less 
-     * indicates this console has no fixed width.
-     * 
-     * @return the current width of this console
-     */
-    public int getConsoleWidth() {
-        return fConsoleWidth;
-    }
-    
-    /**
-     * Sets the width of this console in characters. Any value greater than zero
-     * will cause this console to have a fixed width.
-     * 
-     * @param width the width to make this console. Values of 0 or less imply
-     * the console does not have any fixed width.
-     */
-    public void setConsoleWidth(int width) {
-        if (fConsoleWidth != width) {
-            int old = fConsoleWidth;
-            fConsoleWidth = width;
-            
-            firePropertyChange(this, IConsoleConstants.P_CONSOLE_WIDTH, new Integer(old), new Integer(fConsoleWidth));
-        }
-    }
-
-	/**
-	 * Sets the tab width used in this console.
-	 * 
-	 * @param newTabWidth the tab width 
-	 */
-    public void setTabWidth(final int newTabWidth) {
-        if (fTabWidth != newTabWidth) {
-            final int oldTabWidth = fTabWidth;
-            fTabWidth = newTabWidth;
-            ConsolePlugin.getStandardDisplay().asyncExec(new Runnable() {
-                public void run() {
-                    firePropertyChange(TextConsole.this, IConsoleConstants.P_TAB_SIZE, new Integer(oldTabWidth), new Integer(fTabWidth));           
-                }
-            });
-        }
-    }
-    
-	/**
-	 * Returns the tab width used in this console.
-	 * 
-	 * @return tab width used in this console
-	 */
-    public int getTabWidth() {
-        return fTabWidth;
-    }
-    
-    /**
-	 * Returns the font used by this console. Must be called in the UI thread.
-	 * 
-	 * @return font used by this console
-	 */
-    public Font getFont() {
-        if (fFont == null) {
-            fFont = getDefaultFont();
-        }
-        return fFont;
-    }
-    
-    /**
-     * Returns the default text font.
-     * 
-     * @return the default text font
-     */
-    private Font getDefaultFont() {
-        return JFaceResources.getFont(JFaceResources.TEXT_FONT);
-    }
-    
-	/**
-	 * Sets the font used by this console. Specify <code>null</code> to use
-	 * the default text font.
-	 * 
-	 * @param font font, or <code>null</code> to indicate the default font
-	 */
-    public void setFont(Font newFont) {
-        // ensure font is initialized
-        getFont();
-        // translate null to default font
-        if (newFont == null) {
-            newFont = getDefaultFont();
-        }
-        // fire property change if required
-        if (!fFont.equals(newFont)) {
-            Font old = fFont;
-            fFont = newFont;
-            firePropertyChange(this, IConsoleConstants.P_FONT, old, fFont);
-        }
-    }
-	
-    /**
-     * Clears the console.
-     * <p>
-     * Since a console may or may not support direct manipulation
-     * of its document's contents, this method should be called to clear a text console's
-     * document. The default implementation sets this console's document content
-     * to the empty string directly. Subclasses should override as required.
-     * </p>
-     */
-    public void clearConsole() {
-        IDocument document = getDocument();
-        if (document != null) {
-            document.set(""); //$NON-NLS-1$
-        }
-    }
-
-    /**
-     * Returns the console's document partitioner.
-     * @return
-     */
-    protected abstract IConsoleDocumentPartitioner getPartitioner();
-    
-    /**
-     * Returns all hyperlinks in this console.
-     * 
-     * @return all hyperlinks in this console
-     */
-    public IHyperlink[] getHyperlinks() {
-        try {
-            Position[] positions = getDocument().getPositions(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY);
-            IHyperlink[] hyperlinks = new IHyperlink[positions.length];
-            for (int i = 0; i < positions.length; i++) {
-                ConsoleHyperlinkPosition position = (ConsoleHyperlinkPosition) positions[i];
-                hyperlinks[i] = position.getHyperLink();
-            }
-            return hyperlinks;
-        } catch (BadPositionCategoryException e) {
-            return new IHyperlink[0];
-        }
-    }
-    
-    /**
-     * Returns the hyperlink at the given offset of <code>null</code> if none.
-     * 
-     * @param offset offset for which a hyperlink is requested
-     * @return the hyperlink at the given offset of <code>null</code> if none
-     */
-    public IHyperlink getHyperlink(int offset) {
-        try {
-        	IDocument document = getDocument();
-        	if (document != null) {
-	            Position[] positions = document.getPositions(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY);
-	            Position position = findPosition(offset, positions);
-	            if (position instanceof ConsoleHyperlinkPosition) {
-	                return ((ConsoleHyperlinkPosition) position).getHyperLink();
-	            }
-        	}
-        } catch (BadPositionCategoryException e) {
-        }        
-        return null;
-    }
-
-	/**
-	 * Binary search for the position at a given offset.
-	 *
-	 * @param offset the offset whose position should be found
-	 * @return the position containing the offset, or <code>null</code>
-	 */
-	private Position findPosition(int offset, Position[] positions) {
-		
-		if (positions.length == 0)
-			return null;
-			
-		int left= 0;
-		int right= positions.length -1;
-		int mid= 0;
-		Position position= null;
-		
-		while (left < right) {
-			
-			mid= (left + right) / 2;
-				
-			position= positions[mid];
-			if (offset < position.getOffset()) {
-				if (left == mid)
-					right= left;
-				else
-					right= mid -1;
-			} else if (offset > (position.getOffset() + position.getLength() - 1)) {
-				if (right == mid)
-					left= right;
-				else
-					left= mid  +1;
-			} else {
-				left= right= mid;
-			}
-		}
-		
-		position= positions[left];
-		if (offset >= position.getOffset() && (offset < (position.getOffset() + position.getLength()))) {
-			return position;
-		}
-		return null;
-	}
-
-    /**
-     * Adds the given pattern match listener to this console. The listener will
-     * be connected and receive match notifications. Has no effect if an identical
-     * listener has already been added.
-     * 
-     * @param listener the listener to add
-     */
-    public void addPatternMatchListener(IPatternMatchListener listener) {
-        fPatternMatcher.addPatternMatchListener(listener);
-    }
-    
-    /**
-     * Removes the given pattern match listener from this console. The listener will be
-     * disconnected and will no longer receive match notifications. Has no effect
-     * if the listener was not previously added.
-     * 
-     * @param listener the pattern match listener to remove
-     */
-    public void removePatternMatchListener(IPatternMatchListener listener) {
-        fPatternMatcher.removePatternMatchListener(listener);
-    }    
-    
-    
-    /**
-     * Job scheduling rule that prevent the job from running if the console's PatternMatcher
-     * is active.
-     */
-    private class MatcherSchedulingRule implements ISchedulingRule {
-        public boolean contains(ISchedulingRule rule) {
-            return rule == this;
-        }
-
-        public boolean isConflicting(ISchedulingRule rule) {
-            if (contains(rule)) {
-                return true;
-            }
-            if (rule != this && rule instanceof MatcherSchedulingRule) {
-                return (((MatcherSchedulingRule)rule).getConsole() == TextConsole.this);   
-            }
-            return false;
-        }
-        
-        public TextConsole getConsole() {
-            return TextConsole.this;
-        }
-    }
-    
-    /**
-     * Returns a scheduling rule which can be used to prevent jobs from running
-     * while this console's pattern matcher is active.
-     * 
-     * @return a scheduling rule which can be used to prevent jobs from running
-     * while this console's pattern matcher is active
-     */
-    public ISchedulingRule getSchedulingRule() {
-        return new MatcherSchedulingRule();
-    }
-    
-    /**
-     * This console's partitioner should call this method when it is not expecting any new data
-     * to be appended to the document. 
-     */
-    public void partitionerFinished() {
-        fPatternMatcher.forceFinalMatching();
-        fPartitionerFinished  = true;
-        checkFinished();
-    }
-    
-    /**
-     * Called by this console's pattern matcher when matching is complete.
-     * <p>
-     * Clients should not call this method.
-     * <p>
-     */
-    public void matcherFinished() {
-        fMatcherFinished = true;
-        fDocument.removeDocumentListener(fPatternMatcher);
-        checkFinished();
-    }
-    
-    /**
-     * Fires the console output complete property change event.
-     */
-    private synchronized void checkFinished() {
-        if (!fCompleteFired && fPartitionerFinished && fMatcherFinished ) {
-            fCompleteFired = true;
-            firePropertyChange(this, IConsoleConstants.P_CONSOLE_OUTPUT_COMPLETE, null, null);
-        }
-    }
-    
-    /**
-     * Adds a hyperlink to this console.
-     * 
-     * @param hyperlink the hyperlink to add
-     * @param offset the offset in the console document at which the hyperlink should be added
-     * @param length the length of the text which should be hyperlinked
-     * @throws BadLocationException if the specified location is not valid.
-     */
-    public void addHyperlink(IHyperlink hyperlink, int offset, int length) throws BadLocationException {
-        IDocument document = getDocument();
-		ConsoleHyperlinkPosition hyperlinkPosition = new ConsoleHyperlinkPosition(hyperlink, offset, length); 
-		try {
-			document.addPosition(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY, hyperlinkPosition);
-            fConsoleManager.refresh(this);
-		} catch (BadPositionCategoryException e) {
-			ConsolePlugin.log(e);
-		} 
-    }
-    
-    /**
-     * Returns the region assocaited with the given hyperlink.
-     * 
-     * @param link hyperlink
-     * @return the region associated witht the hyperlink or null if the hyperlink is not found.
-     */
-    public IRegion getRegion(IHyperlink link) {
-		try {
-		    IDocument doc = getDocument();
-		    if (doc != null) {
-				Position[] positions = doc.getPositions(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY);
-				for (int i = 0; i < positions.length; i++) {
-					ConsoleHyperlinkPosition position = (ConsoleHyperlinkPosition)positions[i];
-					if (position.getHyperLink().equals(link)) {
-						return new Region(position.getOffset(), position.getLength());
-					}
-				}
-		    }
-		} catch (BadPositionCategoryException e) {
-		}
-		return null;
-    }
-    
-    /**
-     * Returns the attribue associated with the specified key.
-     * 
-     * @param key attribute key
-     * @return the attribue associated with the specified key
-     */
-    public Object getAttribute(String key) {
-        synchronized (fAttributes) {
-            return fAttributes.get(key);
-        }
-    }
-    
-    /**
-     * Sets an attribute value. Intended for client data.
-     * 
-     * @param key attribute key
-     * @param value attribute value
-     */
-    public void setAttribute(String key, Object value) {
-        synchronized(fAttributes) {
-            fAttributes.put(key, value);
-        }
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsolePage.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsolePage.java
deleted file mode 100644
index e0effbc..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsolePage.java
+++ /dev/null
@@ -1,391 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.console;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.ResourceBundle;
-
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuListener;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IFindReplaceTarget;
-import org.eclipse.jface.text.ITextListener;
-import org.eclipse.jface.text.ITextOperationTarget;
-import org.eclipse.jface.text.TextEvent;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.jface.viewers.ISelectionChangedListener;
-import org.eclipse.jface.viewers.SelectionChangedEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.IActionBars;
-import org.eclipse.ui.ISharedImages;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.console.actions.ClearOutputAction;
-import org.eclipse.ui.console.actions.TextViewerAction;
-import org.eclipse.ui.internal.console.ConsoleMessages;
-import org.eclipse.ui.internal.console.ConsoleResourceBundleMessages;
-import org.eclipse.ui.internal.console.FollowHyperlinkAction;
-import org.eclipse.ui.part.IPageBookViewPage;
-import org.eclipse.ui.part.IPageSite;
-import org.eclipse.ui.texteditor.FindReplaceAction;
-import org.eclipse.ui.texteditor.IUpdate;
-import org.eclipse.ui.texteditor.IWorkbenchActionDefinitionIds;
-
-/**
- * A page for a text console.
- * <p>
- * Clients may contribute actions to the context menu of a text console page
- * using the <code>org.eclipse.ui.popupMenus</code> extension point. The context
- * menu identifier for a text console page is the associated console's type
- * suffixed with <code>.#ContextMenu</code>. When a console does not specify 
- * a type, the context menu id is <code>#ContextMenu</code>.
- * </p>
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 3.1
- */
-public class TextConsolePage implements IPageBookViewPage, IPropertyChangeListener, IAdaptable {
-    private IPageSite fSite;
-    private TextConsole fConsole;
-    private IConsoleView fConsoleView;
-    private TextConsoleViewer fViewer;
-    private MenuManager fMenuManager;
-    protected Map fGlobalActions = new HashMap();
-    protected ArrayList fSelectionActions = new ArrayList();
-    protected ClearOutputAction fClearOutputAction;
-    
-	// text selection listener, used to update selection dependant actions on selection changes
-	private ISelectionChangedListener selectionChangedListener =  new ISelectionChangedListener() {
-		public void selectionChanged(SelectionChangedEvent event) {
-			updateSelectionDependentActions();
-		}
-	};
-    
-	// updates the find replace action if the document length is > 0
-	private ITextListener textListener = new ITextListener() {
-	    public void textChanged(TextEvent event) {
-			IUpdate findReplace = (IUpdate)fGlobalActions.get(ActionFactory.FIND.getId());
-			if (findReplace != null) {
-				findReplace.update();
-			}
-		}
-	};
-	
-    /**
-     * Constructs a text console page for the given console in the given view.
-     * 
-     * @param console text console
-     * @param view console view the page is contained in
-     */
-	public TextConsolePage(TextConsole console, IConsoleView view) {
-	    fConsole = console;
-	    fConsoleView = view;
-	}
-	
-    /**
-     * Returns a viewer used to display the contents of this page's console.
-     * 
-     * @param parent container for the viewer
-     * @return a viewer used to display the contents of this page's console
-     */
-	protected TextConsoleViewer createViewer(Composite parent) {
-	    return new TextConsoleViewer(parent, fConsole);
-	}
-    
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.ui.part.IPageBookViewPage#getSite()
-     */
-    public IPageSite getSite() {
-        return fSite;
-    }
-    	
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.ui.part.IPageBookViewPage#init(org.eclipse.ui.part.IPageSite)
-     */
-    public void init(IPageSite pageSite) throws PartInitException {
-        fSite = pageSite;
-    }
-
-    /**
-     * Updates selection dependent actions.
-     */
-    protected void updateSelectionDependentActions() {
-		Iterator iterator= fSelectionActions.iterator();
-		while (iterator.hasNext()) {
-			updateAction((String)iterator.next());		
-		}
-	}
-
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.ui.part.IPage#createControl(org.eclipse.swt.widgets.Composite)
-     */
-    public void createControl(Composite parent) {
-        fViewer = createViewer(parent);
-		fViewer.setConsoleWidth(fConsole.getConsoleWidth());
-		fViewer.setTabWidth(fConsole.getTabWidth());
-		fConsole.addPropertyChangeListener(this);
-		JFaceResources.getFontRegistry().addListener(this);
-		
-		String id = "#ContextMenu"; //$NON-NLS-1$
-		if (getConsole().getType() != null) {
-		    id = getConsole().getType() + "." + id; //$NON-NLS-1$
-		}
-		fMenuManager= new MenuManager("#ContextMenu", id);  //$NON-NLS-1$//$NON-NLS-2$
-		fMenuManager.setRemoveAllWhenShown(true);
-		fMenuManager.addMenuListener(new IMenuListener() {
-			public void menuAboutToShow(IMenuManager m) {
-				contextMenuAboutToShow(m);
-			}
-		});
-		Menu menu = fMenuManager.createContextMenu(getControl());
-		getControl().setMenu(menu);
-		
-		createActions();
-		configureToolBar(getSite().getActionBars().getToolBarManager());
-		
-		getSite().registerContextMenu(id, fMenuManager, fViewer); //$NON-NLS-1$
-		getSite().setSelectionProvider(fViewer);
-		
-		fViewer.getSelectionProvider().addSelectionChangedListener(selectionChangedListener);
-		fViewer.addTextListener(textListener);
-    }
-
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.ui.part.IPage#dispose()
-     */
-    public void dispose() {
-        fConsole.removePropertyChangeListener(this);
-        JFaceResources.getFontRegistry().removeListener(this);
-        
-        if (fMenuManager != null) {
-            fMenuManager.dispose();
-        }
-        fClearOutputAction = null;
-        fSelectionActions.clear();
-        fGlobalActions.clear();
-        
-        fViewer.getSelectionProvider().removeSelectionChangedListener(selectionChangedListener);
-        fViewer.removeTextListener(textListener);
-        fViewer = null;
-    }
-
-
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.ui.part.IPage#getControl()
-     */
-    public Control getControl() {
-        return fViewer != null ? fViewer.getControl() : null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.IPage#setActionBars(org.eclipse.ui.IActionBars)
-     */
-    public void setActionBars(IActionBars actionBars) {
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.part.IPage#setFocus()
-     */
-    public void setFocus() {
-        if (fViewer != null) {
-            fViewer.getTextWidget().setFocus();
-        }
-    }
-
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-    public void propertyChange(PropertyChangeEvent event) {
-        if (fViewer != null) {
-			Object source = event.getSource();
-			String property = event.getProperty();
-			
-			if (source.equals(fConsole) && IConsoleConstants.P_FONT.equals(property)) {
-				fViewer.setFont(fConsole.getFont());	
-			} else if (IConsoleConstants.P_FONT_STYLE.equals(property)) {
-			    fViewer.getTextWidget().redraw();
-			} else if (property.equals(IConsoleConstants.P_STREAM_COLOR)) {
-			    fViewer.getTextWidget().redraw();
-			} else if (source.equals(fConsole) && property.equals(IConsoleConstants.P_TAB_SIZE)) {
-			    Integer tabSize = (Integer)event.getNewValue();
-			    fViewer.setTabWidth(tabSize.intValue());
-			} else if (source.equals(fConsole) && property.equals(IConsoleConstants.P_CONSOLE_WIDTH)) {
-			    fViewer.setConsoleWidth(fConsole.getConsoleWidth()); 
-			} 
-        }
-	}
-
-    /**
-     * Creates actions.
-     */
-    protected void createActions() {
-        IActionBars actionBars= getSite().getActionBars();
-        TextViewerAction action= new TextViewerAction(fViewer, ITextOperationTarget.SELECT_ALL);
-		action.configureAction(ConsoleMessages.TextConsolePage_SelectAllText, ConsoleMessages.TextConsolePage_SelectAllDescrip, ConsoleMessages.TextConsolePage_SelectAllDescrip); 
-		setGlobalAction(actionBars, ActionFactory.SELECT_ALL.getId(), action);
-		
-		action= new TextViewerAction(fViewer, ITextOperationTarget.CUT);
-		action.configureAction(ConsoleMessages.TextConsolePage_CutText, ConsoleMessages.TextConsolePage_CutDescrip, ConsoleMessages.TextConsolePage_CutDescrip);  
-		action.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_TOOL_CUT));
-		action.setActionDefinitionId(IWorkbenchActionDefinitionIds.CUT);
-		setGlobalAction(actionBars, ActionFactory.CUT.getId(), action);
-		
-		action= new TextViewerAction(fViewer, ITextOperationTarget.COPY);
-		action.configureAction(ConsoleMessages.TextConsolePage_CopyText, ConsoleMessages.TextConsolePage_CopyDescrip, ConsoleMessages.TextConsolePage_CopyDescrip);
-		action.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_TOOL_COPY));
-		action.setActionDefinitionId(IWorkbenchActionDefinitionIds.COPY);
-		setGlobalAction(actionBars, ActionFactory.COPY.getId(), action);
-		
-		action= new TextViewerAction(fViewer, ITextOperationTarget.PASTE);
-		action.configureAction(ConsoleMessages.TextConsolePage_PasteText, ConsoleMessages.TextConsolePage_PasteDescrip, ConsoleMessages.TextConsolePage_PasteDescrip); 
-		action.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_TOOL_PASTE));
-		action.setActionDefinitionId(IWorkbenchActionDefinitionIds.PASTE);
-		setGlobalAction(actionBars, ActionFactory.PASTE.getId(), action);
-		
-		fClearOutputAction = new ClearOutputAction(fConsole);
-        
-        ResourceBundle bundle = ConsoleResourceBundleMessages.getBundle();
-		setGlobalAction(actionBars, ActionFactory.FIND.getId(), new FindReplaceAction(bundle, "find_replace_action_", fConsoleView)); //$NON-NLS-1$
-
-		fSelectionActions.add(ActionFactory.CUT.getId());
-		fSelectionActions.add(ActionFactory.COPY.getId());
-		fSelectionActions.add(ActionFactory.PASTE.getId());
-		fSelectionActions.add(ActionFactory.FIND.getId());
-		
-		actionBars.updateActionBars();
-    }
-    
-    /**
-     * Configures an action for key bindings.
-     * 
-     * @param actionBars action bars for this page
-     * @param actionID action definition id
-     * @param action associated action
-     */
-    protected void setGlobalAction(IActionBars actionBars, String actionID, IAction action) {
-        fGlobalActions.put(actionID, action);  
-        actionBars.setGlobalActionHandler(actionID, action);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-     */
-    public Object getAdapter(Class required) {
-		if (IFindReplaceTarget.class.equals(required)) {
-			return fViewer.getFindReplaceTarget();
-		}
-		if (Widget.class.equals(required)) {
-			return fViewer.getTextWidget();
-		}
-		return null;
-    }
-    
-    /**
-	 * Returns the view this page is contained in.
-	 * 
-	 * @return the view this page is contained in
-	 */
-	protected IConsoleView getConsoleView() {
-		return fConsoleView;
-	}
-	
-	/**
-	 * Returns the console this page is displaying.
-	 * 
-	 * @return the console this page is displaying
-	 */
-	protected IConsole getConsole() {
-		return fConsole;
-	}
-	
-    /**
-     * Updates the global action with the given id
-     * 
-     * @param actionId action definition id
-     */
-	protected void updateAction(String actionId) {
-		IAction action= (IAction)fGlobalActions.get(actionId);
-		if (action instanceof IUpdate) {
-			((IUpdate) action).update();
-		}
-	}	
-
-    
-	/**
-	 * Fill the context menu
-	 * 
-	 * @param menuManager menu
-	 */
-	protected void contextMenuAboutToShow(IMenuManager menuManager) {
-		IDocument doc= fViewer.getDocument();
-		if (doc == null) {
-			return;
-		}
-
-		menuManager.add((IAction)fGlobalActions.get(ActionFactory.CUT.getId()));
-		menuManager.add((IAction)fGlobalActions.get(ActionFactory.COPY.getId()));
-		menuManager.add((IAction)fGlobalActions.get(ActionFactory.PASTE.getId()));
-		menuManager.add((IAction)fGlobalActions.get(ActionFactory.SELECT_ALL.getId()));
-		
-		menuManager.add(new Separator("FIND")); //$NON-NLS-1$
-		menuManager.add((IAction)fGlobalActions.get(ActionFactory.FIND.getId()));
-		menuManager.add(new FollowHyperlinkAction(fViewer));
-		menuManager.add(fClearOutputAction);
-		
-		menuManager.add(new Separator(IWorkbenchActionConstants.MB_ADDITIONS));
-	}
-
-	protected void configureToolBar(IToolBarManager mgr) {
-		mgr.appendToGroup(IConsoleConstants.OUTPUT_GROUP, fClearOutputAction);
-	}
-
-
-    /**
-     * Returns the viewer contained in this page.
-     * 
-     * @return the viewer contained in this page
-     */
-    public TextConsoleViewer getViewer() {
-        return fViewer;
-    }
-    
-    /**
-     * Sets the viewer contained in this page.
-     * 
-     * @param viewer text viewer
-     */
-    public void setViewer(TextConsoleViewer viewer) {
-        this.fViewer = viewer;
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsoleViewer.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsoleViewer.java
deleted file mode 100644
index 8255ad8..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/TextConsoleViewer.java
+++ /dev/null
@@ -1,567 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.console;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.preference.JFacePreferences;
-import org.eclipse.jface.resource.ColorRegistry;
-import org.eclipse.jface.resource.JFaceColors;
-import org.eclipse.jface.resource.JFaceResources;
-import org.eclipse.jface.text.BadPositionCategoryException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentAdapter;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.jface.text.Position;
-import org.eclipse.jface.text.TextViewer;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.LineBackgroundEvent;
-import org.eclipse.swt.custom.LineBackgroundListener;
-import org.eclipse.swt.custom.LineStyleEvent;
-import org.eclipse.swt.custom.LineStyleListener;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.MouseEvent;
-import org.eclipse.swt.events.MouseListener;
-import org.eclipse.swt.events.MouseMoveListener;
-import org.eclipse.swt.events.MouseTrackListener;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.internal.console.ConsoleDocumentAdapter;
-import org.eclipse.ui.internal.console.ConsoleHyperlinkPosition;
-import org.eclipse.ui.progress.WorkbenchJob;
-
-/**
- * Default viewer used to display a <code>TextConsole</code>.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 3.1
- */
-public class TextConsoleViewer extends TextViewer implements LineStyleListener, LineBackgroundListener, MouseTrackListener, MouseMoveListener, MouseListener {
-    /**
-     * Adapts document to the text widget.
-     */
-    private ConsoleDocumentAdapter documentAdapter;
-
-    private IHyperlink hyperlink;
-
-    private Cursor handCursor;
-
-    private Cursor textCursor;
-
-    private int consoleWidth = -1;
-
-    private TextConsole console;
-    
-    private IPropertyChangeListener propertyChangeListener;
-    
-    private IDocumentListener documentListener = new IDocumentListener() {
-        public void documentAboutToBeChanged(DocumentEvent event) {
-        }
-        public void documentChanged(DocumentEvent event) {
-            updateLinks(event.fOffset);
-        }
-    };
-    
-    WorkbenchJob revealJob = new WorkbenchJob("Reveal End of Document"){//$NON-NLS-1$
-        public IStatus runInUIThread(IProgressMonitor monitor) {
-            StyledText textWidget = getTextWidget();
-            if (textWidget != null) {
-                int lineCount = textWidget.getLineCount();
-                textWidget.setTopIndex(lineCount-1);
-            }
-            return Status.OK_STATUS;
-        }
-    };
-
-    /**
-     * Constructs a new viewer in the given parent for the specified console.
-     * 
-     * @param parent containing widget
-     * @param console text console
-     */
-    public TextConsoleViewer(Composite parent, TextConsole console) {
-        super(parent, SWT.H_SCROLL | SWT.V_SCROLL);
-        this.console = console;
-        
-        IDocument document = console.getDocument();
-        setDocument(document);
-        
-        StyledText styledText = getTextWidget();
-        styledText.setDoubleClickEnabled(true);
-        styledText.addLineStyleListener(this);
-        styledText.addLineBackgroundListener(this);
-        styledText.setEditable(true);
-        setFont(console.getFont());
-        styledText.addMouseTrackListener(this);
-        
-        ColorRegistry colorRegistry = JFaceResources.getColorRegistry();
-        propertyChangeListener = new HyperlinkColorChangeListener();
-        colorRegistry.addListener(propertyChangeListener);
-        
-        revealJob.setSystem(true);
-        document.addDocumentListener(documentListener);
-    }
-
-    /**
-     * Sets the tab width used by this viewer.
-     * 
-     * @param tabWidth the tab width used by this viewer
-     */
-    public void setTabWidth(int tabWidth) {
-        StyledText styledText = getTextWidget();
-        int oldWidth = styledText.getTabs();
-        if (tabWidth != oldWidth) {
-            styledText.setTabs(tabWidth);
-        }
-    }
-
-    /**
-     * Sets the font used by this viewer.
-     * 
-     * @param font the font used by this viewer
-     */
-    public void setFont(Font font) {
-        StyledText styledText = getTextWidget();
-        Font oldFont = styledText.getFont(); 
-        if (oldFont == font) {
-            return;
-        }
-        if (font == null || !(font.equals(oldFont))) {
-            styledText.setFont(font);
-        }
-    }
-
-    /**
-     * Positions the cursor at the end of the document.
-     */
-    protected void revealEndOfDocument() {
-        revealJob.schedule(50);        
-    } 
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.custom.LineStyleListener#lineGetStyle(org.eclipse.swt.custom.LineStyleEvent)
-     */
-    public void lineGetStyle(LineStyleEvent event) {
-        IDocument document = getDocument();
-        if (document != null && document.getLength() > 0) {
-            ArrayList ranges = new ArrayList();
-            int offset = event.lineOffset;
-            int length = event.lineText.length();
-            
-            StyleRange[] partitionerStyles = ((IConsoleDocumentPartitioner) document.getDocumentPartitioner()).getStyleRanges(event.lineOffset, event.lineText.length());
-            if (partitionerStyles != null) {
-                for (int i = 0; i < partitionerStyles.length; i++) {
-                    ranges.add(partitionerStyles[i]);
-                }
-            }
-
-            try {
-                Position[] positions = getDocument().getPositions(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY);
-                Position[] overlap = findPosition(offset, length, positions);
-                Color color = JFaceColors.getActiveHyperlinkText(Display.getCurrent());
-                if (overlap != null) {
-                    for (int i = 0; i < overlap.length; i++) {
-                        Position position = overlap[i];
-                        StyleRange linkRange = new StyleRange(position.offset, position.length, color, null);
-                        linkRange.underline = true;
-                        override(ranges, linkRange);                    
-                    }
-                }
-            } catch (BadPositionCategoryException e) {
-            }
-            
-            if (ranges.size() > 0) {
-                event.styles = (StyleRange[]) ranges.toArray(new StyleRange[ranges.size()]);
-            }
-        }
-    }
-    
-    private void override(List ranges, StyleRange newRange) {
-        if (ranges.isEmpty()) {
-            ranges.add(newRange);
-            return;
-        }
-        
-        int start = newRange.start;
-        int end = start + newRange.length;
-        for (int i = 0; i < ranges.size(); i++) {
-            StyleRange existingRange = (StyleRange) ranges.get(i);
-            int rEnd = existingRange.start + existingRange.length;
-            if (end <= existingRange.start || start >= rEnd) {
-                continue;
-            }
-            
-            if (start < existingRange.start && end>existingRange.start) {
-                start = existingRange.start;
-            }
-            
-            if (start >= existingRange.start && end <=rEnd) {
-                existingRange.length = start - existingRange.start;
-                ranges.add(++i, newRange);
-                if (end != rEnd) {
-                    ranges.add(++i, new StyleRange(end, rEnd-end-1, existingRange.foreground, existingRange.background));                    
-                }
-                return;
-            } else if (start >= existingRange.start && start < rEnd) {
-                existingRange.length = start-existingRange.start;
-                ranges.add(++i, newRange);
-            } else if (end >= rEnd) {
-                ranges.remove(i);
-            } else {
-                ranges.add(++i, new StyleRange(end+1, rEnd-end+1, existingRange.foreground, existingRange.background));
-            }
-        }
-    }
-	/**
-	 * Binary search for the positions overlapping the given range
-	 *
-	 * @param offset the offset of the range
-	 * @param length the length of the range
-	 * @param positions the positions to search
-	 * @return the positions overlapping the given range, or <code>null</code>
-	 */
-	private Position[] findPosition(int offset, int length, Position[] positions) {
-		
-		if (positions.length == 0)
-			return null;
-			
-		int rangeEnd = offset + length;
-		int left= 0;
-		int right= positions.length - 1;
-		int mid= 0;
-		Position position= null;
-		
-		while (left < right) {
-			
-			mid= (left + right) / 2;
-				
-			position= positions[mid];
-			if (rangeEnd < position.getOffset()) {
-				if (left == mid)
-					right= left;
-				else
-					right= mid -1;
-			} else if (offset > (position.getOffset() + position.getLength() - 1)) {
-				if (right == mid)
-					left= right;
-				else
-					left= mid  +1;
-			} else {
-				left= right= mid;
-			}
-		}
-		
-		
-		List list = new ArrayList();
-		int index = left - 1;
-		if (index >= 0) {
-			position= positions[index];
-			while (index >= 0 && (position.getOffset() + position.getLength()) > offset) {
-				index--;
-				if (index > 0) {
-					position= positions[index];
-				}
-			}
-		}
-		index++;
-		position= positions[index];
-		while (index < positions.length && (position.getOffset() < rangeEnd)) {
-			list.add(position);
-			index++;
-			if (index < positions.length) {
-				position= positions[index];
-			}
-		}
-		
-		if (list.isEmpty()) {
-			return null;
-		}
-		return (Position[])list.toArray(new Position[list.size()]);
-	}    
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.custom.LineBackgroundListener#lineGetBackground(org.eclipse.swt.custom.LineBackgroundEvent)
-     */
-    public void lineGetBackground(LineBackgroundEvent event) {
-        event.lineBackground = null;
-    }
-
-    /**
-     * Returns the hand cursor.
-     * 
-     * @return the hand cursor
-     */
-    protected Cursor getHandCursor() {
-        if (handCursor == null) {
-            handCursor = new Cursor(ConsolePlugin.getStandardDisplay(), SWT.CURSOR_HAND);
-        }
-        return handCursor;
-    }
-
-    /**
-     * Returns the text cursor.
-     * 
-     * @return the text cursor
-     */
-    protected Cursor getTextCursor() {
-        if (textCursor == null) {
-            textCursor = new Cursor(ConsolePlugin.getStandardDisplay(), SWT.CURSOR_IBEAM);
-        }
-        return textCursor;
-    }
-
-    /**
-     * Notification a hyperlink has been entered.
-     * 
-     * @param link the link that was entered
-     */
-    protected void linkEntered(IHyperlink link) {
-        Control control = getTextWidget();
-        if (hyperlink != null) {
-            linkExited(hyperlink);
-        }
-        hyperlink = link;
-        hyperlink.linkEntered();
-        control.setCursor(getHandCursor());
-        control.redraw();
-        control.addMouseListener(this);
-    }
-
-    /**
-     * Notification a link was exited.
-     * 
-     * @param link the link that was exited
-     */
-    protected void linkExited(IHyperlink link) {
-        link.linkExited();
-        hyperlink = null;
-        Control control = getTextWidget();
-        control.setCursor(getTextCursor());
-        control.redraw();
-        control.removeMouseListener(this);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.events.MouseTrackListener#mouseEnter(org.eclipse.swt.events.MouseEvent)
-     */
-    public void mouseEnter(MouseEvent e) {
-        getTextWidget().addMouseMoveListener(this);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.events.MouseTrackListener#mouseExit(org.eclipse.swt.events.MouseEvent)
-     */
-    public void mouseExit(MouseEvent e) {
-        getTextWidget().removeMouseMoveListener(this);
-        if (hyperlink != null) {
-            linkExited(hyperlink);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.events.MouseTrackListener#mouseHover(org.eclipse.swt.events.MouseEvent)
-     */
-    public void mouseHover(MouseEvent e) {
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.events.MouseMoveListener#mouseMove(org.eclipse.swt.events.MouseEvent)
-     */
-    public void mouseMove(MouseEvent e) {
-        int offset = -1;
-        try {
-            Point p = new Point(e.x, e.y);
-            offset = getTextWidget().getOffsetAtLocation(p);
-        } catch (IllegalArgumentException ex) {
-            // out of the document range
-        }
-        updateLinks(offset);
-    }
-
-    /**
-     * The cursor has just be moved to the given offset, the mouse has hovered
-     * over the given offset. Update link rendering.
-     * 
-     * @param offset
-     */
-    protected void updateLinks(int offset) {
-        if (offset >= 0) {
-            IHyperlink link = getHyperlink(offset);
-            if (link != null) {
-                if (link.equals(hyperlink)) {
-                    return;
-                }
-                linkEntered(link);
-                return;
-            }
-        }
-        if (hyperlink != null) {
-            linkExited(hyperlink);
-        }
-    }
-
-    /**
-     * Returns the currently active hyperlink or <code>null</code> if none.
-     * 
-     * @return the currently active hyperlink or <code>null</code> if none
-     */
-    public IHyperlink getHyperlink() {
-        return hyperlink;
-    }
-
-    /**
-     * Returns the hyperlink at the specified offset, or <code>null</code> if none.
-     * 
-     * @param offset offset at which a hyperlink has been requested
-     * @return hyperlink at the specified offset, or <code>null</code> if none
-     */
-    public IHyperlink getHyperlink(int offset) {
-        if (offset >= 0 && console != null) {
-            return console.getHyperlink(offset);
-        }
-        return null;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.events.MouseListener#mouseDoubleClick(org.eclipse.swt.events.MouseEvent)
-     */
-    public void mouseDoubleClick(MouseEvent e) {
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.events.MouseListener#mouseDown(org.eclipse.swt.events.MouseEvent)
-     */
-    public void mouseDown(MouseEvent e) {
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.swt.events.MouseListener#mouseUp(org.eclipse.swt.events.MouseEvent)
-     */
-    public void mouseUp(MouseEvent e) {
-        if (hyperlink != null) {
-            String selection = getTextWidget().getSelectionText();
-            if (selection.length() <= 0) {
-                if (e.button == 1) {
-                    hyperlink.linkActivated();
-                }
-            }
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.text.TextViewer#createDocumentAdapter()
-     */
-    protected IDocumentAdapter createDocumentAdapter() {
-        if (documentAdapter == null) {
-            documentAdapter = new ConsoleDocumentAdapter(consoleWidth = -1);
-        }
-        return documentAdapter;
-    }
-
-    /**
-     * Sets the console to have a fixed character width. Use -1 to indicate that a fixed
-     * width should not be used.
-     * 
-     * @param consoleWidth fixed characater width of the console, or -1 
-     */
-    public void setConsoleWidth(int width) {
-        if (consoleWidth != width) {
-            consoleWidth = width;
-            ConsolePlugin.getStandardDisplay().asyncExec(new Runnable() {
-                public void run() {
-                    if (documentAdapter != null) {
-                        documentAdapter.setWidth(consoleWidth);
-                    }
-                }
-            });
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.text.TextViewer#handleDispose()
-     */
-    protected void handleDispose() {
-        super.handleDispose();
-        IDocument document = getDocument();
-        if (document != null) {
-            document.removeDocumentListener(documentListener);
-        }
-
-        StyledText styledText = getTextWidget();
-        styledText.removeLineStyleListener(this);
-        styledText.removeLineBackgroundListener(this);
-        styledText.removeMouseTrackListener(this);
-        
-        handCursor = null;
-        textCursor = null;
-        hyperlink = null;
-        console = null;
-        
-        ColorRegistry colorRegistry = JFaceResources.getColorRegistry();
-        colorRegistry.removeListener(propertyChangeListener);
-    }
-    
-    class HyperlinkColorChangeListener implements IPropertyChangeListener {
-		public void propertyChange(PropertyChangeEvent event) {
-			if (event.getProperty().equals(JFacePreferences.ACTIVE_HYPERLINK_COLOR) || event.getProperty().equals(JFacePreferences.HYPERLINK_COLOR)) {
-				getTextWidget().redraw();
-			}
-		}
-    	
-    }
-    
-    /*
-     * work around to memory leak in TextViewer$WidgetCommand
-     */
-    protected void updateTextListeners(WidgetCommand cmd) {
-        super.updateTextListeners(cmd);
-        cmd.preservedText = null;
-        cmd.event = null;
-        cmd.text = null;
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/ClearOutputAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/ClearOutputAction.java
deleted file mode 100644
index 7508438..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/ClearOutputAction.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console.actions;
-
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.swt.custom.BusyIndicator;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.TextConsole;
-import org.eclipse.ui.internal.console.ConsoleMessages;
-import org.eclipse.ui.internal.console.ConsolePluginImages;
-import org.eclipse.ui.internal.console.IConsoleHelpContextIds;
-import org.eclipse.ui.internal.console.IInternalConsoleConstants;
-
-/**
- * Clears the output in a text console.
- * <p>
- * Clients may instantiate this class; this class is not intended to 
- * be subclassed.
- * </p>
- * @since 3.0
- */
-public class ClearOutputAction extends Action {
-
-	private ITextViewer fViewer;
-	private TextConsole fIOConsole;
-
-	/**
-	 * Constructs a clear output action.
-	 * 
-	 * @since 3.1
-	 */
-	private ClearOutputAction() {
-		super(ConsoleMessages.ClearOutputAction_title); //$NON-NLS-1$
-		setToolTipText(ConsoleMessages.ClearOutputAction_toolTipText); //$NON-NLS-1$
-		setHoverImageDescriptor(ConsolePluginImages.getImageDescriptor(IConsoleConstants.IMG_LCL_CLEAR));		
-		setDisabledImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_DLCL_CLEAR));
-		setImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_ELCL_CLEAR));
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(this, IConsoleHelpContextIds.CLEAR_CONSOLE_ACTION);	    
-	}
-	
-	/**
-	 * Constructs a clear output action for an I/O console. Clearing an I/O console
-	 * is performed via API on the <code>IOConsole</code>, rather than clearing
-	 * its document directly.
-	 * 
-	 * @param ioConsole I/O console the action is associated with
-	 * @since 3.1
-	 */
-	public ClearOutputAction(TextConsole ioConsole) {
-		this();
-		fIOConsole = ioConsole;
-	}
-	
-	/**
-	 * Constructs an action to clear the document associated with a text viewer.
-	 * 
-	 * @param viewer viewer whose document this action is associated with 
-	 */
-	public ClearOutputAction(ITextViewer viewer) {
-	    this();
-	    fViewer = viewer;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		BusyIndicator.showWhile(ConsolePlugin.getStandardDisplay(), new Runnable() {
-			public void run() {
-			    if (fIOConsole == null) {
-					IDocument document = fViewer.getDocument();
-					if (document != null) {
-						document.set(""); //$NON-NLS-1$
-					}
-					fViewer.setSelectedRange(0, 0);
-			    } else {
-			        fIOConsole.clearConsole();
-			    }
-			}
-		});
-	}
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/CloseConsoleAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/CloseConsoleAction.java
deleted file mode 100644
index b30e801..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/CloseConsoleAction.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console.actions;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.internal.console.ConsoleMessages;
-import org.eclipse.ui.internal.console.ConsolePluginImages;
-import org.eclipse.ui.internal.console.IInternalConsoleConstants;
-
-/**
- * Removes a console from the console manager.
- * <p>
- * Clients may instantiate this class; this class is not intended to 
- * be subclassed.
- * </p>
- * @since 3.1
- */
-public class CloseConsoleAction extends Action {
-    
-    private IConsole fConsole;
-    
-    public CloseConsoleAction(IConsole console) {
-        super(ConsoleMessages.CloseConsoleAction_0, ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_ELCL_CLOSE)); //$NON-NLS-1$
-        setToolTipText(ConsoleMessages.CloseConsoleAction_1); //$NON-NLS-1$
-        fConsole = console;
-    }
-
-    public void run() {
-        ConsolePlugin.getDefault().getConsoleManager().removeConsoles(new IConsole[]{fConsole});
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerAction.java
deleted file mode 100644
index b3809ea..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerAction.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console.actions;
-
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.text.ITextOperationTarget;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * Common function for actions that operate on a text viewer.
- * <p>
- * Clients may subclass this class.
- * </p>
- * @since 3.0
- */
-public class TextViewerAction extends Action implements IUpdate {
-
-	private int fOperationCode= -1;
-	private ITextOperationTarget fOperationTarget;
-
-	/**
-	 * Constructs a new action in the given text viewer with
-	 * the specified operation code.
-	 * 
-	 * @param viewer
-	 * @param operationCode
-	 */
-	public TextViewerAction(ITextViewer viewer, int operationCode) {
-		fOperationCode= operationCode;
-		fOperationTarget= viewer.getTextOperationTarget();
-		update();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 * 
-	 * Updates the enabled state of the action.
-	 * Fires a property change if the enabled state changes.
-	 * 
-	 * @see org.eclipse.jface.action.Action#firePropertyChange(String, Object, Object)
-	 */
-	public void update() {
-
-		boolean wasEnabled= isEnabled();
-		boolean isEnabled= (fOperationTarget != null && fOperationTarget.canDoOperation(fOperationCode));
-		setEnabled(isEnabled);
-
-		if (wasEnabled != isEnabled) {
-			firePropertyChange(ENABLED, wasEnabled ? Boolean.TRUE : Boolean.FALSE, isEnabled ? Boolean.TRUE : Boolean.FALSE);
-		}
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		if (fOperationCode != -1 && fOperationTarget != null) {
-			fOperationTarget.doOperation(fOperationCode);
-		}
-	}
-	
-	/**
-	 * Configures this action with a label, tool tip, and description.
-	 * 
-	 * @param text action label
-	 * @param toolTipText action tool tip
-	 * @param description action description
-	 */
-	public void configureAction(String text, String toolTipText, String description) {
-		setText(text);
-		setToolTipText(toolTipText);
-		setDescription(description);
-	}
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerGotoLineAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerGotoLineAction.java
deleted file mode 100644
index 48870a3..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/TextViewerGotoLineAction.java
+++ /dev/null
@@ -1,121 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.console.actions;
-
-
-import java.text.MessageFormat;
-
-import org.eclipse.jface.dialogs.IInputValidator;
-import org.eclipse.jface.dialogs.InputDialog;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.ITextViewer;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.internal.console.ConsoleMessages;
-
-/**
- * Action to position a text viewer to a specific line.
- * <p>
- * Clients may instantiate this class; this class is not intended to 
- * be subclassed.
- * </p>
- * @since 3.0
- */
-public class TextViewerGotoLineAction extends TextViewerAction {
-
-	/**
-	 * Validates whether the text found in the input field of the
-	 * dialog forms a valid line number, i.e. one to which can be 
-	 * jumped.
-	 */
-	class NumberValidator implements IInputValidator {
-
-		public String isValid(String input) {
-			try {
-				int i= Integer.parseInt(input);
-				if (i <= 0 || fLastLine < i)
-					return ConsoleMessages.TextViewerGotoLineAction_Line_number_out_of_range_1; //$NON-NLS-1$
-
-			} catch (NumberFormatException x) {
-				return ConsoleMessages.TextViewerGotoLineAction_Not_a_number_2; //$NON-NLS-1$
-			}
-
-			return null;
-		}
-	}
-
-	protected int fLastLine;
-	protected ITextViewer fTextViewer;
-	
-	/**
-	 * Constructs a goto line action for the viewer using the provided resource bundle
-	 */
-	public TextViewerGotoLineAction(ITextViewer viewer) {
-		super(viewer, -1);
-		fTextViewer= viewer;
-		setText(ConsoleMessages.TextViewerGotoLineAction_Go_to__Line____Ctrl_L_4); //$NON-NLS-1$
-		setToolTipText(ConsoleMessages.TextViewerGotoLineAction_Go_To_Line_1); //$NON-NLS-1$
-		setDescription(ConsoleMessages.TextViewerGotoLineAction_Go_To_Line_1);		 //$NON-NLS-1$
-	}
-	
-	/**
-	 * @see TextViewerAction#update()
-	 */
-	public void update() {
-	}
-
-	/**
-	 * Jumps to the line.
-	 */
-	protected void gotoLine(int line) {
-
-		IDocument document= fTextViewer.getDocument();
-		try {
-			int start= document.getLineOffset(line);
-			int length= document.getLineLength(line);
-			fTextViewer.getTextWidget().setSelection(start, start + length);
-			fTextViewer.revealRange(start, length);
-		} catch (BadLocationException x) {
-			ConsolePlugin.errorDialog(fTextViewer.getTextWidget().getShell(), ConsoleMessages.TextViewerGotoLineAction_Go_To_Line_1, ConsoleMessages.TextViewerGotoLineAction_Exceptions_occurred_attempt_to_go_to_line_2, x); //$NON-NLS-1$ //$NON-NLS-2$
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		try {
-			Point selection= fTextViewer.getTextWidget().getSelection();
-			IDocument document= fTextViewer.getDocument();
-			fLastLine= document.getLineOfOffset(document.getLength()) + 1;
-			int startLine= selection == null ? 1 : fTextViewer.getTextWidget().getLineAtOffset(selection.x) + 1;
-			String title= ConsoleMessages.TextViewerGotoLineAction_Go_To_Line_1; //$NON-NLS-1$
-			String message= MessageFormat.format(ConsoleMessages.TextViewerGotoLineAction_Enter_line_number__8, new Object[] {new Integer(fLastLine)}); //$NON-NLS-1$
-			String value= Integer.toString(startLine);
-			Shell activeShell= fTextViewer.getTextWidget().getShell();
-			InputDialog d= new InputDialog(activeShell, title, message, value, new NumberValidator());
-			if (d.open() == Window.OK) {
-				try {
-					int line= Integer.parseInt(d.getValue());
-					gotoLine(line - 1);
-				} catch (NumberFormatException x) {
-					ConsolePlugin.errorDialog(activeShell, ConsoleMessages.TextViewerGotoLineAction_Go_To_Line_1, ConsoleMessages.TextViewerGotoLineAction_Exceptions_occurred_attempt_to_go_to_line_2, x); //$NON-NLS-1$ //$NON-NLS-2$
-				}
-			}
-		} catch (BadLocationException x) {
-			ConsolePlugin.errorDialog(fTextViewer.getTextWidget().getShell(), ConsoleMessages.TextViewerGotoLineAction_Go_To_Line_1, ConsoleMessages.TextViewerGotoLineAction_Exceptions_occurred_attempt_to_go_to_line_2, x); //$NON-NLS-1$ //$NON-NLS-2$
-			return;
-		}
-	}
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/package.html b/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/package.html
deleted file mode 100644
index cfb538c..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/actions/package.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Console Actions</title>
-</head>
-
-<body link="#0000FF" vlink="#800080">
-
-<p align="left"> Application programming interfaces for Eclipse console specific
-  actions.</p>
-
-<h2 align="left">Package Specification</h2>
-
-<p>This package provides a set of actions related to the Eclipse console.</p>
-<p>Clients are allowed to instantiate classes from this package. The classes are 
-  not intended to be subclassed.</p>
-</body>
-</html>
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/console/package.html b/org.eclipse.ui.console/src/org/eclipse/ui/console/package.html
deleted file mode 100644
index 95aa4ac..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/console/package.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
-<html>
-
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-<title>Eclipse Console</title>
-</head>
-
-<body bgcolor="#FFFFFF">
-
-<p>Application programming interfaces for interaction
-with the Eclipse console.</p>
-
-<h2>Package Specification</h2>
-
-<p>The Eclipse platform UI console plug-in provides a set of classes and interfaces to
-support a generic console. This package contains a generic abstract console that provides the common functionality
-for consoles. Clients implementing consoles should subclass this <b>AbstractConsole</b>.</p>
-<p>The classes <b>MessageConsole</b> and <b>MessageConsoleStream</b> provide an 
-  implementation of a message console and message console stream that enables 
-  logging of messages to a console.</p>
-<p>A console manager (<b>IConsoleManager</b>) manages all active consoles, and 
-  provides notification of consoles which are added and removed. Consoles are 
-  displayed in a page book view. Each console implementation is reponsible for 
-  creating its page (<b>IPageBookView</b>), which provides freedom of presentation 
-  to the console implementation. A single console may be displayed simultaneously 
-  in multiple console views, in different workbench windows.</p>
-</body>
-</html>
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocument.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocument.java
deleted file mode 100644
index bb7631a..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocument.java
+++ /dev/null
@@ -1,116 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.BadPositionCategoryException;
-import org.eclipse.jface.text.DefaultPositionUpdater;
-import org.eclipse.jface.text.Document;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.Position;
-
-/**
- * A console document. Requires synchronization for multi-threaded access.
- */
-public class ConsoleDocument extends Document {
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#get(int, int)
-	 */
-	public synchronized String get(int pos, int length) throws BadLocationException {
-		return super.get(pos, length);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getLength()
-	 */
-	public synchronized int getLength() {
-		return super.getLength();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getLineDelimiter(int)
-	 */
-	public synchronized String getLineDelimiter(int line) throws BadLocationException {
-		return super.getLineDelimiter(line);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getLineInformation(int)
-	 */
-	public synchronized IRegion getLineInformation(int line) throws BadLocationException {
-		return super.getLineInformation(line);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getLineInformationOfOffset(int)
-	 */
-	public synchronized IRegion getLineInformationOfOffset(int offset) throws BadLocationException {
-		return super.getLineInformationOfOffset(offset);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getLineLength(int)
-	 */
-	public synchronized int getLineLength(int line) throws BadLocationException {
-		return super.getLineLength(line);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getLineOffset(int)
-	 */
-	public synchronized int getLineOffset(int line) throws BadLocationException {
-		return super.getLineOffset(line);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getLineOfOffset(int)
-	 */
-	public synchronized int getLineOfOffset(int pos) throws BadLocationException {
-		return super.getLineOfOffset(pos);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getNumberOfLines()
-	 */
-	public synchronized int getNumberOfLines() {
-		return super.getNumberOfLines();
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#replace(int, int, java.lang.String)
-	 */
-	public synchronized void replace(int pos, int length, String text) throws BadLocationException {
-		super.replace(pos, length, text);
-	}
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#set(java.lang.String)
-	 */
-    public synchronized void set(String text) {
-        super.set(text);
-    }
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.AbstractDocument#completeInitialization()
-	 */
-    protected void completeInitialization() {
-        super.completeInitialization();
-        addPositionUpdater(new DefaultPositionUpdater(ConsoleHyperlinkPosition.HYPER_LINK_CATEGORY));
-    }
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#addPosition(java.lang.String, org.eclipse.jface.text.Position)
-	 */    
-    public synchronized void addPosition(String category, Position position) throws BadLocationException, BadPositionCategoryException {
-        super.addPosition(category, position);
-    }
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#removePosition(java.lang.String, org.eclipse.jface.text.Position)
-	 */    
-    public synchronized void removePosition(String category, Position position) throws BadPositionCategoryException {
-        super.removePosition(category, position);
-    }
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocument#getPositions(java.lang.String)
-	 */    
-    public synchronized Position[] getPositions(String category) throws BadPositionCategoryException {
-        return super.getPositions(category);
-    }    
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocumentAdapter.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocumentAdapter.java
deleted file mode 100644
index 0b345fa..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDocumentAdapter.java
+++ /dev/null
@@ -1,397 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.eclipse.jface.text.Assert;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentAdapter;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.swt.custom.TextChangeListener;
-import org.eclipse.swt.custom.TextChangedEvent;
-import org.eclipse.swt.custom.TextChangingEvent;
-
-/**
- * Adapts a Console's document to the viewer StyledText widget. Allows proper line
- * wrapping of fixed width consoles without having to add line delimeters to the StyledText.
- * 
- * By using this adapter, the offset of any character is the same in both the widget and the
- * document.
- * 
- * @since 3.1
- */
-public class ConsoleDocumentAdapter implements IDocumentAdapter, IDocumentListener {
-    
-    private int consoleWidth = -1;
-    private List textChangeListeners;
-    private IDocument document;
-    
-    int[] offsets = new int[5000];
-    int[] lengths = new int[5000];
-    private int regionCount = 0;
-    
-    private Pattern pattern = Pattern.compile("^.*$", Pattern.MULTILINE); //$NON-NLS-1$
-    
-    
-    public ConsoleDocumentAdapter(int width) {
-        textChangeListeners = new ArrayList();
-        consoleWidth = width;
-    }
-    
-    /*
-     * repairs lines list from the beginning of the line containing the offset of any 
-     * DocumentEvent, to the end of the Document.
-     */
-    private void repairLines(int eventOffset) {
-        if (document == null) {
-            return;
-        }
-        try {
-            int docLine = document.getLineOfOffset(eventOffset);
-            int docLineStart = document.getLineOffset(docLine);
-            int textLine = getLineAtOffset(docLineStart);
-            
-            for (int i=regionCount-1; i>=textLine; i--) {
-                regionCount--;
-            }
-            
-            int numLinesInDoc = document.getNumberOfLines();
-            String line = null;
-            int nextOffset =  document.getLineOffset(docLine);
-            for (int i = docLine; i<numLinesInDoc; i++) {
-                int offset = nextOffset;
-                int length = document.getLineLength(i);
-                nextOffset += length;
-                
-                if (length == 0) {
-                    addRegion(offset, 0);
-                } else {
-                    while (length > 0) {
-                        int trimmedLength = length;
-                        String lineDelimiter = document.getLineDelimiter(i);
-                        int lineDelimiterLength = 0;
-                        if (lineDelimiter != null) {
-                            lineDelimiterLength = lineDelimiter.length(); 
-                            trimmedLength -= lineDelimiterLength;
-                        }
-
-                        if (consoleWidth > 0 && consoleWidth < trimmedLength) {
-                            addRegion(offset, consoleWidth);
-                            offset += consoleWidth;
-                            length -= consoleWidth;
-                        } else {
-                            addRegion(offset, length);
-                            offset += length;
-                            length -= length;
-                        }
-                    }
-                }
-            }
-            if (line != null && lineEndsWithDelimeter(line)) {
-                addRegion(nextOffset, 0);
-            }
-            
-        } catch (BadLocationException e) {
-        }
-        
-        if (regionCount == 0) {
-            addRegion(0, document.getLength());
-        }
-    }
-    
-    private void addRegion(int offset, int length) {
-        if (regionCount == 0) {
-            offsets[0] = offset;
-            lengths[0] = length;
-        } else {
-            if (regionCount == offsets.length) {
-                growRegionArray(regionCount * 2);
-            }
-            offsets[regionCount] = offset;
-            lengths[regionCount] = length;
-        }
-        regionCount++;
-    }
-    
-    /**
-     * Returns <code>true</code> if the line ends with a legal line delimiter
-     * 
-     * @return <code>true</code> if the line ends with a legal line delimiter,
-     *         <code>false</code> otherwise
-     */
-    private boolean lineEndsWithDelimeter(String line) {
-        String[] lld = document.getLegalLineDelimiters();
-        for (int i = 0; i < lld.length; i++) {
-            if (line.endsWith(lld[i])) {
-                return true;
-            }
-        }
-        return false;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.text.IDocumentAdapter#setDocument(org.eclipse.jface.text.IDocument)
-     */
-    public void setDocument(IDocument doc) {
-        if (document != null) {
-            document.removeDocumentListener(this);
-        }
-        
-        document = doc;
-        
-        if (document != null) {
-            document.addDocumentListener(this);
-            repairLines(0);
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#addTextChangeListener(org.eclipse.swt.custom.TextChangeListener)
-     */
-    public synchronized void addTextChangeListener(TextChangeListener listener) {
-		Assert.isNotNull(listener);
-		if (!textChangeListeners.contains(listener)) {
-			textChangeListeners.add(listener);
-		}
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#removeTextChangeListener(org.eclipse.swt.custom.TextChangeListener)
-     */
-    public synchronized void removeTextChangeListener(TextChangeListener listener) {
-        if(textChangeListeners != null) {
-            Assert.isNotNull(listener);
-            textChangeListeners.remove(listener);
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#getCharCount()
-     */
-    public int getCharCount() {
-        return document.getLength();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#getLine(int)
-     */
-    public String getLine(int lineIndex) {
-        try {
-            StringBuffer line = new StringBuffer(document.get(offsets[lineIndex], lengths[lineIndex]));
-            int index = line.length() - 1;
-            while(index > -1 && (line.charAt(index)=='\n' || line.charAt(index)=='\r')) {
-                index--;
-            }
-            return new String(line.substring(0, index+1));
-        } catch (BadLocationException e) {
-        }
-        return ""; //$NON-NLS-1$    
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#getLineAtOffset(int)
-     */
-    public int getLineAtOffset(int offset) {
-        if (offset == 0 || regionCount <= 1) {
-            return 0;
-        }
-        
-        if (offset == document.getLength()) {
-            return regionCount-1;
-        }
-        
-		int left= 0;
-		int right= regionCount-1;
-		int midIndex = 0;
-		
-		while (left <= right) {
-		    midIndex= (left + right) / 2;
-		    
-		    if (offset < offsets[midIndex]) {
-		        right = midIndex;
-		    } else if (offset >= offsets[midIndex] + lengths[midIndex]) {
-		        left = midIndex + 1;
-		    } else {
-		        return midIndex;
-		    }
-		}
-		
-		return midIndex;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#getLineCount()
-     */
-    public int getLineCount() {
-        return regionCount;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#getLineDelimiter()
-     */
-    public String getLineDelimiter() {
-        return System.getProperty("line.separator"); //$NON-NLS-1$
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#getOffsetAtLine(int)
-     */
-    public int getOffsetAtLine(int lineIndex) {
-        return offsets[lineIndex];
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#getTextRange(int, int)
-     */
-    public String getTextRange(int start, int length) {
-        try {
-            return document.get(start, length);
-        } catch (BadLocationException e) {
-        }
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#replaceTextRange(int, int, java.lang.String)
-     */
-    public void replaceTextRange(int start, int replaceLength, String text) {
-        try {
-            document.replace(start, replaceLength, text);
-        } catch (BadLocationException e) {
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.swt.custom.StyledTextContent#setText(java.lang.String)
-     */
-    public synchronized void setText(String text) {
-        TextChangedEvent changeEvent = new TextChangedEvent(this);
-        for (Iterator iter = textChangeListeners.iterator(); iter.hasNext();) {
-            TextChangeListener element = (TextChangeListener) iter.next();
-            element.textSet(changeEvent);
-        }    
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
-     */
-    public synchronized void documentAboutToBeChanged(DocumentEvent event) {
-        if (document == null) {
-            return;
-        }
-        
-        TextChangingEvent changeEvent = new TextChangingEvent(this);
-        changeEvent.start = event.fOffset;
-        changeEvent.newText = (event.fText == null ? "" : event.fText); //$NON-NLS-1$
-        changeEvent.replaceCharCount = event.fLength;
-        changeEvent.newCharCount = (event.fText == null ? 0 : event.fText.length());
-        
-        int first = getLineAtOffset(event.fOffset);
-        int last = getLineAtOffset(event.fOffset + event.fLength);
-        changeEvent.replaceLineCount= last - first;
-        
-        changeEvent.newLineCount = countLines(event.fText);
-        
-        if (changeEvent.newLineCount > offsets.length-regionCount) {
-            growRegionArray(changeEvent.newLineCount);
-        }
-        
-        for (Iterator iter = textChangeListeners.iterator(); iter.hasNext();) {
-            TextChangeListener element = (TextChangeListener) iter.next();
-            element.textChanging(changeEvent);
-        }
-    }
-
-    private void growRegionArray(int minSize) {
-        int size = Math.max(offsets.length*2, minSize*2);
-        int[] newOffsets = new int[size];
-        System.arraycopy(offsets, 0, newOffsets, 0, regionCount);
-        offsets = newOffsets;
-        int[] newLengths = new int[size];
-        System.arraycopy(lengths, 0, newLengths, 0, regionCount);
-        lengths = newLengths;
-    }
-
-    /**
-     * Counts the number of lines the viewer's text widget will need to use to 
-     * display the String
-     * @return The number of lines necessary to display the string in the viewer.
-     */
-    private int countLines(String string) {
-        int count = 0;
-        if (lineEndsWithDelimeter(string)) {
-            count++;
-        }
-        
-//        work around to http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4994840
-//        see bug 84641
-        if (string.endsWith("\r")) { //$NON-NLS-1$
-            int len = string.length();
-            int index = len >= 2 ? len-2 : 0;
-            string = string.substring(0, index);
-        }
-        
-        Matcher matcher = pattern.matcher(string);
-        while (matcher.find()) {
-            count++;
-            if (consoleWidth > 0) {
-                String line = matcher.group();
-                count += (line.length() / consoleWidth);
-            } 
-        }
-        
-
-        
-        return count;
-    }
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)
-     */
-    public synchronized void documentChanged(DocumentEvent event) {
-        if (document == null) {
-            return;
-        }
-        
-        repairLines(event.fOffset);
-        
-        TextChangedEvent changeEvent = new TextChangedEvent(this);
-
-        for (Iterator iter = textChangeListeners.iterator(); iter.hasNext();) {
-            TextChangeListener element = (TextChangeListener) iter.next();
-            element.textChanged(changeEvent);
-        }
-    }
-
-    /**
-     * sets consoleWidth, repairs line information, then fires event to the viewer text widget.
-     * @param width The console's width
-     */
-    public void setWidth(int width) {
-        if (width != consoleWidth) {
-            consoleWidth = width;
-            repairLines(0);
-            TextChangedEvent changeEvent = new TextChangedEvent(this);
-            for (Iterator iter = textChangeListeners.iterator(); iter.hasNext();) {
-                TextChangeListener element = (TextChangeListener) iter.next();
-                element.textSet(changeEvent);
-            }
-        }
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDropDownAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDropDownAction.java
deleted file mode 100644
index 249f045..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleDropDownAction.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-
-import java.util.List;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IMenuCreator;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsoleListener;
-import org.eclipse.ui.console.IConsoleView;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * Drop down action in the console to select the console to display.
- */
-class ConsoleDropDownAction extends Action implements IMenuCreator, IConsoleListener, IUpdate {
-
-	private IConsoleView fView;
-	private Menu fMenu;
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		IConsole[] consoles = ConsolePlugin.getDefault().getConsoleManager().getConsoles();
-		setEnabled(consoles.length > 1);
-	}
-
-	public ConsoleDropDownAction(IConsoleView view) {
-		fView= view;
-		setText(ConsoleMessages.ConsoleDropDownAction_0); //$NON-NLS-1$
-		setToolTipText(ConsoleMessages.ConsoleDropDownAction_1); //$NON-NLS-1$
-		setImageDescriptor(ConsolePluginImages.getImageDescriptor(IConsoleConstants.IMG_VIEW_CONSOLE));
-		setMenuCreator(this);
-		ConsolePlugin.getDefault().getConsoleManager().addConsoleListener(this);
-		update();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#dispose()
-	 */
-	public void dispose() {
-		if (fMenu != null) {
-			fMenu.dispose();
-		}
-		
-		fView= null;
-		ConsolePlugin.getDefault().getConsoleManager().removeConsoleListener(this);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu)
-	 */
-	public Menu getMenu(Menu parent) {
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Control)
-	 */
-	public Menu getMenu(Control parent) {
-		if (fMenu != null) {
-			fMenu.dispose();
-		}
-		
-		fMenu= new Menu(parent);
-		IConsole[] consoles= ConsolePlugin.getDefault().getConsoleManager().getConsoles();
-		IConsole current = fView.getConsole();
-		for (int i = 0; i < consoles.length; i++) {
-			IConsole console = consoles[i];
-			Action action = new ShowConsoleAction(fView, console);
-			action.setChecked(console.equals(current));
-			addActionToMenu(fMenu, action, i + 1);
-		}
-		return fMenu;
-	}
-	
-	private void addActionToMenu(Menu parent, Action action, int accelerator) {
-	    if (accelerator < 10) {
-		    StringBuffer label= new StringBuffer();
-			//add the numerical accelerator
-			label.append('&');
-			label.append(accelerator);
-			label.append(' ');
-			label.append(action.getText());
-			action.setText(label.toString());
-		}
-		ActionContributionItem item= new ActionContributionItem(action);
-		item.fill(parent, -1);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-        ConsoleView consoleView = (ConsoleView) fView;
-        boolean pinned = consoleView.isPinned();
-        if (pinned) {
-            consoleView.setPinned(false);
-        }
-		List stack = consoleView.getConsoleStack();
-		if (stack.size() > 1) {
-			IConsole console = (IConsole) stack.get(1);
-			fView.display(console);
-		}
-        if (pinned) {
-            consoleView.setPinned(true);
-        }
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleListener#consolesAdded(org.eclipse.ui.console.IConsole[])
-	 */
-	public void consolesAdded(IConsole[] consoles) {
-		Display display = ConsolePlugin.getStandardDisplay();
-		display.asyncExec(new Runnable() {
-			public void run() {
-				update();
-			}
-		});
-	}
-
-	/* (non-Javadoc)
-	 * 
-	 * Dispose the menu when a launch is removed, such that the actions in this
-	 * menu do not hang on to associated resources.
-	 * 
-	 * @see org.eclipse.ui.console.IConsoleListener#consolesRemoved(org.eclipse.ui.console.IConsole[])
-	 */
-	public void consolesRemoved(IConsole[] consoles) {
-		Display display = ConsolePlugin.getStandardDisplay();
-		display.asyncExec(new Runnable() {
-			public void run() {
-				if (fMenu != null) {
-					fMenu.dispose();
-				}
-				update();
-			}
-		});
-	}
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleFactoryExtension.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleFactoryExtension.java
deleted file mode 100644
index 4918e06..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleFactoryExtension.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.EvaluationResult;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.ExpressionConverter;
-import org.eclipse.core.expressions.ExpressionTagNames;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.IPluginContribution;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsoleFactory;
-import org.osgi.framework.Bundle;
-
-/**
- * @since 3.1
- */
-public class ConsoleFactoryExtension implements IPluginContribution {
-
-    private IConfigurationElement fConfig;
-    private Expression fEnablementExpression;
-    private String fLabel;
-    private ImageDescriptor fImageDescriptor;
-    private IConsoleFactory fFactory;
-
-    ConsoleFactoryExtension(IConfigurationElement config) {
-        fConfig = config;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPluginContribution#getLocalId()
-     */
-    public String getLocalId() {
-        return fConfig.getAttribute("id"); //$NON-NLS-1$
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPluginContribution#getPluginId()
-     */
-    public String getPluginId() {
-        return fConfig.getNamespace();
-    }
-
-    public boolean isEnabled() {
-        try {
-            Expression enablementExpression = getEnablementExpression();
-            if (enablementExpression == null) {
-                return true;
-            } 
-            EvaluationContext context = new EvaluationContext(null, this);
-            EvaluationResult evaluationResult = enablementExpression.evaluate(context);
-            return evaluationResult != EvaluationResult.FALSE;
-        } catch (CoreException e) {
-            ConsolePlugin.log(e);
-            return false;
-        }
-    }
-    
-    public Expression getEnablementExpression() throws CoreException {
-		if (fEnablementExpression == null) {
-			IConfigurationElement[] elements = fConfig.getChildren(ExpressionTagNames.ENABLEMENT);
-			IConfigurationElement enablement = elements.length > 0 ? elements[0] : null; 
-
-			if (enablement != null) {
-			    fEnablementExpression = ExpressionConverter.getDefault().perform(enablement);
-			}
-		}
-		return fEnablementExpression;
-    }
-
-    public String getLabel() {
-        if (fLabel == null) {
-            fLabel = fConfig.getAttribute("label"); //$NON-NLS-1$
-        }
-        return fLabel;
-    }
-
-    /**
-     * @return
-     */
-    public ImageDescriptor getImageDescriptor() {
-        if (fImageDescriptor == null) {
-            try {
-                String path = fConfig.getAttributeAsIs("icon"); //$NON-NLS-1$
-                if (path != null) {
-                    Bundle bundle = Platform.getBundle(getPluginId());
-                    URL url = bundle.getEntry("/"); //$NON-NLS-1$
-                    url = new URL(url, path); //$NON-NLS-1$
-                    fImageDescriptor =  ImageDescriptor.createFromURL(url);    
-                }
-                
-            } catch (MalformedURLException e) {
-                ConsolePlugin.log(e);
-            }
-        }
-        return fImageDescriptor;
-    }
-
-    /**
-     * @return
-     * @throws CoreException
-     */
-    public IConsoleFactory createFactory() throws CoreException {
-        if (fFactory == null) {
-            fFactory = (IConsoleFactory) fConfig.createExecutableExtension("class"); //$NON-NLS-1$
-        }
-        return fFactory;
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleHyperlinkPosition.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleHyperlinkPosition.java
deleted file mode 100644
index b98df73..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleHyperlinkPosition.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.text.Position;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IHyperlink;
-
-/**
- * Describes the postition of a hyperlink within the Console's document.
- * 
- * @since 3.1
- */
-public class ConsoleHyperlinkPosition extends Position {
-    
-	public static final String HYPER_LINK_CATEGORY = ConsolePlugin.getUniqueIdentifier() + ".CONSOLE_HYPERLINK_POSITION"; //$NON-NLS-1$
-	
-	private IHyperlink fLink = null;
-
-	public ConsoleHyperlinkPosition(IHyperlink link, int offset, int length) {
-		super(offset, length);
-		fLink = link;
-	}
-	
-	public IHyperlink getHyperLink() {
-		return fLink;
-	}
-
-	/**
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object arg) {
-		return arg instanceof ConsoleHyperlinkPosition && super.equals(arg) && getHyperLink().equals(((ConsoleHyperlinkPosition)arg).getHyperLink());
-	}
-
-	/**
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return super.hashCode() + getHyperLink().hashCode();
-	}
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleManager.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleManager.java
deleted file mode 100644
index e644956..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleManager.java
+++ /dev/null
@@ -1,429 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.core.runtime.IExtensionPoint;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.ISafeRunnable;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.util.ListenerList;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.ui.IViewPart;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsoleListener;
-import org.eclipse.ui.console.IConsoleManager;
-import org.eclipse.ui.console.IConsolePageParticipant;
-import org.eclipse.ui.console.IConsoleView;
-import org.eclipse.ui.console.IPatternMatchListener;
-import org.eclipse.ui.console.TextConsole;
-import org.eclipse.ui.progress.WorkbenchJob;
-
-/**
- * The singleton console manager.
- * 
- * @since 3.0
- */
-public class ConsoleManager implements IConsoleManager {
-	
-	/**
-	 * Console listeners
-	 */
-	private ListenerList fListeners = null;
-	
-	/**
-	 * List of registered consoles
-	 */
-	private List fConsoles = new ArrayList(10); 
-
-	
-	// change notification constants
-	private final static int ADDED = 1;
-	private final static int REMOVED = 2;
-
-    private List fPatternMatchListeners;
-
-    private List fPageParticipants;
-
-    private List fConsoleFactoryExtensions;
-    
-    private List fConsoleViews = new ArrayList();
-    
-    private boolean fWarnQueued = false;
-    
-    private RepaintJob fRepaintJob = new RepaintJob();
-    
-    private class RepaintJob extends WorkbenchJob {
-        private Set list = new HashSet();
-
-        public RepaintJob() {
-            super("schedule redraw() of viewers"); //$NON-NLS-1$
-            setSystem(true);
-        }
-        
-        void addConsole(IConsole console) {
-        	synchronized (list) {
-        		list.add(console);
-			}
-        }
-        
-        public IStatus runInUIThread(IProgressMonitor monitor) {
-            synchronized (list) {
-                if (list.isEmpty()) {
-                    return Status.OK_STATUS;
-                }
-                
-                IWorkbenchWindow[] workbenchWindows = PlatformUI.getWorkbench().getWorkbenchWindows();
-                for (int i = 0; i < workbenchWindows.length; i++) {
-                    IWorkbenchWindow window = workbenchWindows[i];
-                    if (window != null) {
-                        IWorkbenchPage page = window.getActivePage();
-                        if (page != null) {
-                            IViewPart part = page.findView(IConsoleConstants.ID_CONSOLE_VIEW);
-                            if (part != null && part instanceof IConsoleView) {
-                                ConsoleView view = (ConsoleView) part;
-                                if (view != null && list.contains(view.getConsole())) {
-                                    Control control = view.getCurrentPage().getControl();
-                                    if (!control.isDisposed()) {
-                                        control.redraw();
-                                    }
-                                }
-                            }
-
-                        }
-                    }
-                }
-                list.clear();
-            }
-            return Status.OK_STATUS;
-        }
-    }
-    
-	/**
-	 * Notifies a console listener of additions or removals
-	 */
-	class ConsoleNotifier implements ISafeRunnable {
-		
-		private IConsoleListener fListener;
-		private int fType;
-		private IConsole[] fChanged;
-		
-		/* (non-Javadoc)
-		 * @see org.eclipse.core.runtime.ISafeRunnable#handleException(java.lang.Throwable)
-		 */
-		public void handleException(Throwable exception) {
-			IStatus status = new Status(IStatus.ERROR, ConsolePlugin.getUniqueIdentifier(), IConsoleConstants.INTERNAL_ERROR, ConsoleMessages.ConsoleManager_0, exception); //$NON-NLS-1$
-			ConsolePlugin.log(status);
-		}
-
-		/* (non-Javadoc)
-		 * @see org.eclipse.core.runtime.ISafeRunnable#run()
-		 */
-		public void run() throws Exception {
-			switch (fType) {
-				case ADDED:
-					fListener.consolesAdded(fChanged);
-					break;
-				case REMOVED:
-					fListener.consolesRemoved(fChanged);
-					break;
-			}
-		}
-
-		/**
-		 * Notifies the given listener of the adds/removes
-		 * 
-		 * @param consoles the consoles that changed
-		 * @param update the type of change
-		 */
-		public void notify(IConsole[] consoles, int update) {
-			if (fListeners == null) {
-				return;
-			}
-			fChanged = consoles;
-			fType = update;
-			Object[] copiedListeners= fListeners.getListeners();
-			for (int i= 0; i < copiedListeners.length; i++) {
-				fListener = (IConsoleListener)copiedListeners[i];
-				Platform.run(this);
-			}	
-			fChanged = null;
-			fListener = null;			
-		}
-	}	
-		
-	public void registerConsoleView(ConsoleView view) {
-	    synchronized (fConsoleViews) {
-	        fConsoleViews.add(view);
-	    }
-	}
-    public void unregisterConsoleView(ConsoleView view) {
-        synchronized (fConsoleViews) {
-            fConsoleViews.remove(view);
-        }
-    }
-    
-    /* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleManager#addConsoleListener(org.eclipse.ui.console.IConsoleListener)
-	 */
-	public void addConsoleListener(IConsoleListener listener) {
-		if (fListeners == null) {
-			fListeners = new ListenerList(5);
-		}
-		fListeners.add(listener);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleManager#removeConsoleListener(org.eclipse.ui.console.IConsoleListener)
-	 */
-	public void removeConsoleListener(IConsoleListener listener) {
-		if (fListeners != null) {
-			fListeners.remove(listener);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleManager#addConsoles(org.eclipse.ui.console.IConsole[])
-	 */
-	public synchronized void addConsoles(IConsole[] consoles) {
-		List added = new ArrayList(consoles.length);
-		for (int i = 0; i < consoles.length; i++) {
-		    IConsole console = consoles[i];
-		    if(console instanceof TextConsole) {
-		        TextConsole ioconsole = (TextConsole)console;
-		        IPatternMatchListener[] matchListeners = createPatternMatchListeners(ioconsole);
-		        for (int j = 0; j < matchListeners.length; j++) {
-		            ioconsole.addPatternMatchListener(matchListeners[j]);
-		        }
-		    }
-			if (!fConsoles.contains(console)) {
-				fConsoles.add(console);
-				added.add(console);
-			}
-		}
-		if (!added.isEmpty()) {
-			fireUpdate((IConsole[])added.toArray(new IConsole[added.size()]), ADDED);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleManager#removeConsoles(org.eclipse.ui.console.IConsole[])
-	 */
-	public synchronized void removeConsoles(IConsole[] consoles) {
-		List removed = new ArrayList(consoles.length);
-		for (int i = 0; i < consoles.length; i++) {
-			IConsole console = consoles[i];
-			if (fConsoles.remove(console)) {
-				removed.add(console);
-			}
-		}
-		if (!removed.isEmpty()) {
-			fireUpdate((IConsole[])removed.toArray(new IConsole[removed.size()]), REMOVED);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleManager#getConsoles()
-	 */
-	public synchronized IConsole[] getConsoles() {
-		return (IConsole[])fConsoles.toArray(new IConsole[fConsoles.size()]);
-	}
-
-	/**
-	 * Fires notification.
-	 * 
-	 * @param consoles consoles added/removed
-	 * @param type ADD or REMOVE
-	 */
-	private void fireUpdate(IConsole[] consoles, int type) {
-		new ConsoleNotifier().notify(consoles, type);
-	}
-	
-	/**
-	 * @see IConsoleManager#showConsoleView(IConsole)
-	 */
-	public void showConsoleView(final IConsole console) {
-	    ConsolePlugin.getStandardDisplay().asyncExec(new Runnable() {
-	        public void run() {
-	            boolean consoleFound = false;
-	            IWorkbenchWindow window= PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-	            if (window != null) {
-	                IWorkbenchPage page= window.getActivePage();
-	                if (page != null) {
-	                    synchronized (fConsoleViews) {
-	                        for (Iterator iter = fConsoleViews.iterator(); iter.hasNext();) {
-	                            ConsoleView consoleView = (ConsoleView) iter.next();
-	                            boolean consoleVisible = page.isPartVisible(consoleView);
-                                if (consoleVisible) {
-                                    consoleFound = true;
-                                
-                                    boolean bringToTop = shouldBringToTop(console, consoleView);
-                                    if (bringToTop) {
-                                        page.bringToTop(consoleView);
-                                    }
-                                    
-                                    consoleView.display(console);
-                                }
-	                        }
-	                    }
-	                    
-	                    if (!consoleFound) {
-	                        try {
-	                            IConsoleView consoleView = (IConsoleView) page.showView(IConsoleConstants.ID_CONSOLE_VIEW, null, IWorkbenchPage.VIEW_CREATE);
-	                            boolean bringToTop = shouldBringToTop(console, consoleView);
-	                            if (bringToTop) {
-	                                page.bringToTop(consoleView);
-	                            }
-	                            consoleView.display(console);        
-	                        } catch (PartInitException pie) {
-	                            ConsolePlugin.log(pie);
-	                        }
-	                    }
-	                }
-	            }
-	        }
-	    });
-	}	
-	
-	/**
-	 * Returns whether the given console view should be brought to the top.
-	 * The view should not be brought to the top if the view is pinned on
-	 * a console other than the given console.
-	 */
-	private boolean shouldBringToTop(IConsole console, IViewPart consoleView) {
-		boolean bringToTop= true;
-		if (consoleView instanceof IConsoleView) {
-			IConsoleView cView= (IConsoleView)consoleView;
-			if (cView.isPinned()) {
-				IConsole pinnedConsole= cView.getConsole();
-				bringToTop = console.equals(pinnedConsole);
-			}
-		}
-		return bringToTop;
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleManager#warnOfContentChange(org.eclipse.ui.console.IConsole)
-	 */
-	public void warnOfContentChange(final IConsole console) {
-		if (!fWarnQueued) {
-			fWarnQueued = true;
-			ConsolePlugin.getStandardDisplay().asyncExec(new Runnable(){
-				public void run() {
-					IWorkbenchWindow window= PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-					if (window != null) {
-						IWorkbenchPage page= window.getActivePage();
-						if (page != null) {
-							IConsoleView consoleView= (IConsoleView)page.findView(IConsoleConstants.ID_CONSOLE_VIEW);
-							if (consoleView != null) {
-								consoleView.warnOfContentChange(console);
-							}
-						} 
-					}	
-					fWarnQueued = false;
-				}			
-			});
-		}
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleManager#getPatternMatchListenerDelegates(org.eclipse.ui.console.IConsole)
-     */
-    public IPatternMatchListener[] createPatternMatchListeners(IConsole console) {
-    		if (fPatternMatchListeners == null) {
-    		    fPatternMatchListeners = new ArrayList();
-    			IExtensionPoint extensionPoint= Platform.getExtensionRegistry().getExtensionPoint(ConsolePlugin.getUniqueIdentifier(), IConsoleConstants.EXTENSION_POINT_CONSOLE_PATTERN_MATCH_LISTENERS);
-    			IConfigurationElement[] elements = extensionPoint.getConfigurationElements();
-    			for (int i = 0; i < elements.length; i++) {
-    				IConfigurationElement config = elements[i];
-    				PatternMatchListenerExtension extension = new PatternMatchListenerExtension(config);
-    				fPatternMatchListeners.add(extension); //$NON-NLS-1$
-    			}
-    		}
-    		ArrayList list = new ArrayList();
-    		for(Iterator i = fPatternMatchListeners.iterator(); i.hasNext(); ) {
-    		    PatternMatchListenerExtension extension = (PatternMatchListenerExtension) i.next();
-    		    try {
-    		        if (extension.isEnabledFor(console)) {
-    		            list.add(new PatternMatchListener(extension));
-    		        }
-    		    } catch (CoreException e) {
-    		        ConsolePlugin.log(e);
-    		    }
-    		}
-        return (PatternMatchListener[])list.toArray(new PatternMatchListener[0]);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleManager#getPageParticipants(org.eclipse.ui.console.IConsole)
-     */
-    public IConsolePageParticipant[] getPageParticipants(IConsole console) {
-        if(fPageParticipants == null) {
-            fPageParticipants = new ArrayList();
-            IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(ConsolePlugin.getUniqueIdentifier(), IConsoleConstants.EXTENSION_POINT_CONSOLE_PAGE_PARTICIPANTS);
-            IConfigurationElement[] elements = extensionPoint.getConfigurationElements();
-            for(int i = 0; i < elements.length; i++) {
-                IConfigurationElement config = elements[i];
-                ConsolePageParticipantExtension extension = new ConsolePageParticipantExtension(config);
-                fPageParticipants.add(extension);
-            }
-        }
-        ArrayList list = new ArrayList();
-        for(Iterator i = fPageParticipants.iterator(); i.hasNext(); ) {
-            ConsolePageParticipantExtension extension = (ConsolePageParticipantExtension) i.next();
-            try {
-                if (extension.isEnabledFor(console)) {
-                    list.add(extension.createDelegate());
-                }
-            } catch (CoreException e) {
-                ConsolePlugin.log(e);
-            }
-        }
-        return (IConsolePageParticipant[]) list.toArray(new IConsolePageParticipant[0]);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleManager#getConsoleFactories()
-     */
-    public ConsoleFactoryExtension[] getConsoleFactoryExtensions() {
-        if (fConsoleFactoryExtensions == null) {
-            fConsoleFactoryExtensions = new ArrayList();
-            IExtensionPoint extensionPoint = Platform.getExtensionRegistry().getExtensionPoint(ConsolePlugin.getUniqueIdentifier(), IConsoleConstants.EXTENSION_POINT_CONSOLE_FACTORIES);
-            IConfigurationElement[] configurationElements = extensionPoint.getConfigurationElements();
-            for (int i = 0; i < configurationElements.length; i++) {
-                fConsoleFactoryExtensions.add(new ConsoleFactoryExtension(configurationElements[i]));
-            }
-        }
-        return (ConsoleFactoryExtension[]) fConsoleFactoryExtensions.toArray(new ConsoleFactoryExtension[0]);
-    }
-    
-    
-    public void refresh(final IConsole console) {
-        fRepaintJob.addConsole(console);
-        fRepaintJob.schedule(50); 
-    }
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.java
deleted file mode 100644
index a3422f4..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others. All rights reserved.   This
- * program and the accompanying materials are made available under the terms of
- * the Eclipse Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors: 
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.osgi.util.NLS;
-
-public class ConsoleMessages extends NLS {
-	private static final String BUNDLE_NAME = "org.eclipse.ui.internal.console.ConsoleMessages";//$NON-NLS-1$
-
-	public static String AbstractConsole_0;
-
-	public static String ConsoleDropDownAction_0;
-	public static String ConsoleDropDownAction_1;
-
-	public static String ConsoleManager_0;
-
-	public static String ConsoleView_0;
-
-	public static String PinConsoleAction_0;
-	public static String PinConsoleAction_1;
-
-	public static String ClearOutputAction_title;
-	public static String ClearOutputAction_toolTipText;
-
-	public static String TextViewerGotoLineAction_Enter_line_number__8;
-	public static String TextViewerGotoLineAction_Exceptions_occurred_attempt_to_go_to_line_2;
-	public static String TextViewerGotoLineAction_Go_to__Line____Ctrl_L_4;
-	public static String TextViewerGotoLineAction_Go_To_Line_1;
-	public static String TextViewerGotoLineAction_Line_number_out_of_range_1;
-	public static String TextViewerGotoLineAction_Not_a_number_2;
-
-	public static String ScrollLockAction_0;
-	public static String ScrollLockAction_1;
-	public static String FollowHyperlinkAction_0;
-	public static String FollowHyperlinkAction_1;
-	public static String OpenConsoleAction_0;
-	public static String OpenConsoleAction_1;
-	public static String CloseConsoleAction_0;
-	public static String CloseConsoleAction_1;
-
-    public static String TextConsolePage_SelectAllDescrip;
-    public static String TextConsolePage_SelectAllText;
-    public static String TextConsolePage_CutText;
-    public static String TextConsolePage_CutDescrip;
-    public static String TextConsolePage_CopyText;
-    public static String TextConsolePage_CopyDescrip;
-    public static String TextConsolePage_PasteText;
-    public static String TextConsolePage_PasteDescrip;
-    
-	static {
-		// load message values from bundle file
-		NLS.initializeMessages(BUNDLE_NAME, ConsoleMessages.class);
-	}
-}
\ No newline at end of file
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.properties b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.properties
deleted file mode 100644
index d71c007..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleMessages.properties
+++ /dev/null
@@ -1,50 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-AbstractConsole_0=Exception occurred during console property change notification.
-
-ConsoleDropDownAction_0=Select Console
-ConsoleDropDownAction_1=Display Selected Console
-
-ConsoleManager_0=An exception occurred during console notification
-
-ConsoleView_0=A console is not available.
-
-PinConsoleAction_0=Pi&n Console
-PinConsoleAction_1=Pin Console
-
-ClearOutputAction_title=Clea&r
-ClearOutputAction_toolTipText=Clear Console
-
-TextViewerGotoLineAction_Enter_line_number__8=Enter line number (1...{0}):
-TextViewerGotoLineAction_Exceptions_occurred_attempt_to_go_to_line_2=Exceptions occurred attempt to go to line
-TextViewerGotoLineAction_Go_to__Line____Ctrl_L_4=Go to &Line...@Ctrl+L
-TextViewerGotoLineAction_Go_To_Line_1=Go to Line
-TextViewerGotoLineAction_Line_number_out_of_range_1=Line number out of range
-TextViewerGotoLineAction_Not_a_number_2=Not a number
-
-ScrollLockAction_0=&Scroll Lock
-ScrollLockAction_1=Scroll Lock
-FollowHyperlinkAction_0=&Open Link
-FollowHyperlinkAction_1=Follow the selected hyperlink
-OpenConsoleAction_0=Open Console
-OpenConsoleAction_1=Open Console
-CloseConsoleAction_0=&Close Console
-CloseConsoleAction_1=Close Console
-
-TextConsolePage_SelectAllDescrip=Select All
-TextConsolePage_SelectAllText=Select &All@Ctrl+A
-TextConsolePage_CutText=C&ut
-TextConsolePage_CutDescrip=Cut
-TextConsolePage_CopyText=&Copy
-TextConsolePage_CopyDescrip=Copy
-TextConsolePage_PasteText=&Paste
-TextConsolePage_PasteDescrip=Paste
\ No newline at end of file
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePageParticipantExtension.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePageParticipantExtension.java
deleted file mode 100644
index e9fff12..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePageParticipantExtension.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.EvaluationResult;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.ExpressionConverter;
-import org.eclipse.core.expressions.ExpressionTagNames;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.ui.IPluginContribution;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsolePageParticipant;
-
-public class ConsolePageParticipantExtension implements IPluginContribution {
-
-    private IConfigurationElement fConfig;
-    private Expression fEnablementExpression;
-
-    public ConsolePageParticipantExtension(IConfigurationElement config) {
-        fConfig = config;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPluginContribution#getLocalId()
-     */
-    public String getLocalId() {
-        return fConfig.getAttribute("id"); //$NON-NLS-1$
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPluginContribution#getPluginId()
-     */
-    public String getPluginId() {
-        return fConfig.getNamespace();
-    }
-    
-    public boolean isEnabledFor(IConsole console) throws CoreException {
-        EvaluationContext context = new EvaluationContext(null, console);
-        EvaluationResult evaluationResult = getEnablementExpression().evaluate(context);
-        return evaluationResult == EvaluationResult.TRUE;
-    }
-    
-    public Expression getEnablementExpression() throws CoreException {
-		if (fEnablementExpression == null) {
-			IConfigurationElement[] elements = fConfig.getChildren(ExpressionTagNames.ENABLEMENT);
-			IConfigurationElement enablement = elements.length > 0 ? elements[0] : null; 
-
-			if (enablement != null) {
-			    fEnablementExpression = ExpressionConverter.getDefault().perform(enablement);
-			}
-		}
-		return fEnablementExpression;
-    }
-
-    public IConsolePageParticipant createDelegate() throws CoreException {
-        return (IConsolePageParticipant) fConfig.createExecutableExtension("class"); //$NON-NLS-1$;
-    }
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePatternMatcher.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePatternMatcher.java
deleted file mode 100644
index 8b1e283..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePatternMatcher.java
+++ /dev/null
@@ -1,301 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.ui.internal.console;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IPatternMatchListener;
-import org.eclipse.ui.console.PatternMatchEvent;
-import org.eclipse.ui.console.TextConsole;
-
-public class ConsolePatternMatcher implements IDocumentListener {
-
-    private MatchJob fMatchJob = new MatchJob();
-
-    /**
-     * Collection of compiled pattern match listeners
-     */
-    private ArrayList fPatterns = new ArrayList();
-
-    private TextConsole fConsole;
-
-    private boolean fFinalMatch;
-
-	private boolean fScheduleFinal;
-
-    public ConsolePatternMatcher(TextConsole console) {
-        fConsole = console;
-        fMatchJob.setRule(fConsole.getSchedulingRule());
-    }
-
-    private class MatchJob extends Job {
-        MatchJob() {
-            super("Match Job"); //$NON-NLS-1$
-            setSystem(true);
-        }
-
-        /*
-         * (non-Javadoc)
-         * 
-         * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        protected IStatus run(IProgressMonitor monitor) {
-            IDocument doc = fConsole.getDocument();
-            String text = null;
-            int prevBaseOffset = -1;
-            if (doc != null && !monitor.isCanceled()) {
-                int endOfSearch = doc.getLength();
-                int indexOfLastChar = endOfSearch;
-                if (indexOfLastChar > 0) {
-                    indexOfLastChar--;
-                }
-                int lastLineToSearch = 0;
-                int offsetOfLastLineToSearch = 0;
-                try {
-                    lastLineToSearch = doc.getLineOfOffset(indexOfLastChar);
-                    offsetOfLastLineToSearch = doc.getLineOffset(lastLineToSearch);
-                } catch (BadLocationException e) {
-                    // perhaps the buffer was re-set
-                    return Status.OK_STATUS;
-                }
-                for (int i = 0; i < fPatterns.size(); i++) {
-                    if (monitor.isCanceled()) {
-                        break;
-                    }
-                    CompiledPatternMatchListener notifier = (CompiledPatternMatchListener) fPatterns.get(i);
-                    int baseOffset = notifier.end;
-                    int lengthToSearch = endOfSearch - baseOffset;
-                    if (lengthToSearch > 0) {
-                        try {
-                            if (prevBaseOffset != baseOffset) {
-                                // reuse the text string if possible
-                                text = doc.get(baseOffset, lengthToSearch);
-                            }
-                            Matcher reg = notifier.pattern.matcher(text);
-                            Matcher quick = null;
-                            if (notifier.qualifier != null) {
-                                quick = notifier.qualifier.matcher(text);
-                            }
-                            int startOfNextSearch = 0;
-                            int endOfLastMatch = -1;
-                            int lineOfLastMatch = -1;
-                            while ((startOfNextSearch < lengthToSearch) && !monitor.isCanceled()) {
-                                if (quick != null) {
-                                    if (quick.find(startOfNextSearch)) {
-                                        // start searching on the beginning
-                                        // of the line where the potential
-                                        // match was found, or after the
-                                        // last match on the same line
-                                        int matchLine = doc.getLineOfOffset(baseOffset + quick.start());
-                                        if (lineOfLastMatch == matchLine) {
-                                            startOfNextSearch = endOfLastMatch;
-                                        } else {
-                                            startOfNextSearch = doc.getLineOffset(matchLine) - baseOffset;
-                                        }
-                                    } else {
-                                        startOfNextSearch = lengthToSearch;
-                                    }
-                                }
-                                if (startOfNextSearch < 0) {
-                                    startOfNextSearch = 0;
-                                }
-                                if (startOfNextSearch < lengthToSearch) {
-                                    if (reg.find(startOfNextSearch)) {
-                                        endOfLastMatch = reg.end();
-                                        lineOfLastMatch = doc.getLineOfOffset(baseOffset + endOfLastMatch - 1);
-                                        int regStart = reg.start();
-                                        IPatternMatchListener listener = notifier.listener;
-                                        if (listener != null && !monitor.isCanceled()) {
-                                            listener.matchFound(new PatternMatchEvent(fConsole, baseOffset + regStart, endOfLastMatch - regStart));
-                                        }
-                                        startOfNextSearch = endOfLastMatch;
-                                    } else {
-                                        startOfNextSearch = lengthToSearch;
-                                    }
-                                }
-                            }
-                            // update start of next search to the last line
-                            // searched
-                            // or the end of the last match if it was on the
-                            // line that
-                            // was last searched
-                            if (lastLineToSearch == lineOfLastMatch) {
-                                notifier.end = baseOffset + endOfLastMatch;
-                            } else {
-                                notifier.end = offsetOfLastLineToSearch;
-                            }
-                        } catch (BadLocationException e) {
-                            ConsolePlugin.log(e);
-                        }
-                    }
-                    prevBaseOffset = baseOffset;
-                }
-            }
-            
-            if (fFinalMatch) {
-                fConsole.matcherFinished();
-            } else if (fScheduleFinal) {
-            	fFinalMatch = true;
-            	schedule();
-            }
-            
-
-            return Status.OK_STATUS;
-        }
-    }
-
-    private class CompiledPatternMatchListener {
-        Pattern pattern;
-
-        Pattern qualifier;
-
-        IPatternMatchListener listener;
-
-        int end = 0;
-
-        CompiledPatternMatchListener(Pattern pattern, Pattern qualifier, IPatternMatchListener matchListener) {
-            this.pattern = pattern;
-            this.listener = matchListener;
-            this.qualifier = qualifier;
-        }
-
-        public void dispose() {
-            listener.disconnect();
-            pattern = null;
-            qualifier = null;
-            listener = null;
-        }
-    }
-
-    /**
-     * Adds the given pattern match listener to this console. The listener will
-     * be connected and receive match notifications.
-     * 
-     * @param matchListener
-     *            the pattern match listener to add
-     */
-    public void addPatternMatchListener(IPatternMatchListener matchListener) {
-        synchronized (fPatterns) {
-            
-            // check for dups
-            for (Iterator iter = fPatterns.iterator(); iter.hasNext();) {
-                CompiledPatternMatchListener element = (CompiledPatternMatchListener) iter.next();
-                if (element.listener == matchListener) {
-                    return;
-                }
-            }
-            
-            if (matchListener == null || matchListener.getPattern() == null) {
-                throw new IllegalArgumentException("Pattern cannot be null"); //$NON-NLS-1$
-            }
-
-            Pattern pattern = Pattern.compile(matchListener.getPattern(), matchListener.getCompilerFlags());
-            String qualifier = matchListener.getLineQualifier();
-            Pattern qPattern = null;
-            if (qualifier != null) {
-                qPattern = Pattern.compile(qualifier, matchListener.getCompilerFlags());
-            }
-            CompiledPatternMatchListener notifier = new CompiledPatternMatchListener(pattern, qPattern, matchListener);
-            fPatterns.add(notifier);
-            matchListener.connect(fConsole);
-            fMatchJob.schedule();
-        }
-    }
-
-    /**
-     * Removes the given pattern match listener from this console. The listener
-     * will be disconnected and will no longer receive match notifications.
-     * 
-     * @param matchListener
-     *            the pattern match listener to remove.
-     */
-    public void removePatternMatchListener(IPatternMatchListener matchListener) {
-        synchronized (fPatterns) {
-            for (Iterator iter = fPatterns.iterator(); iter.hasNext();) {
-                CompiledPatternMatchListener element = (CompiledPatternMatchListener) iter.next();
-                if (element.listener == matchListener) {
-                    iter.remove();
-                    matchListener.disconnect();
-                }
-            }
-        }
-    }
-
-    public void disconnect() {
-        fMatchJob.cancel();
-        synchronized (fPatterns) {
-            Iterator iterator = fPatterns.iterator();
-            while (iterator.hasNext()) {
-                CompiledPatternMatchListener notifier = (CompiledPatternMatchListener) iterator.next();
-                notifier.dispose();
-            }
-            fPatterns.clear();
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
-     */
-    public void documentAboutToBeChanged(DocumentEvent event) {
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)
-     */
-    public void documentChanged(DocumentEvent event) {
-        if (event.fLength > 0) {
-            synchronized (fPatterns) {
-                if (event.fDocument.getLength() == 0) {
-                    // document has been cleared, reset match listeners
-                    Iterator iter = fPatterns.iterator();
-                    while (iter.hasNext()) {
-                        CompiledPatternMatchListener notifier = (CompiledPatternMatchListener) iter.next();
-                        notifier.end = 0;
-                    }
-                } else {
-                    if (event.fOffset == 0) { 
-                        //document was trimmed
-                        Iterator iter = fPatterns.iterator();
-                        while (iter.hasNext()) {
-                            CompiledPatternMatchListener notifier = (CompiledPatternMatchListener) iter.next();
-                            notifier.end = notifier.end > event.fLength ? notifier.end-event.fLength : 0;
-                        }
-                    }
-                }
-            }
-        }
-        fMatchJob.schedule();
-    }
-
-    
-    public void forceFinalMatching() {
-    	fScheduleFinal = true;
-    	fMatchJob.schedule();
-    }
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePluginImages.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePluginImages.java
deleted file mode 100644
index c5abc8c..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsolePluginImages.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-
-import java.net.MalformedURLException;
-import java.net.URL;
-
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.resource.ImageRegistry;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsoleConstants;
-
-/**
- * The images provided by the debug plugin.
- */
-public class ConsolePluginImages {
-
-	/** 
-	 * The image registry containing <code>Image</code>s and the <code>ImageDescriptor</code>s.
-	 */
-	private static ImageRegistry imageRegistry;
-		
-	/* Declare Common paths */
-	private static URL ICON_BASE_URL= null;
-
-	static {
-		String pathSuffix = "icons/full/"; //$NON-NLS-1$
-		ICON_BASE_URL= ConsolePlugin.getDefault().getBundle().getEntry(pathSuffix);
-	}
-
-	// Use IPath and toOSString to build the names to ensure they have the slashes correct
-	private final static String LOCALTOOL= "clcl16/"; //basic colors - size 16x16 //$NON-NLS-1$
-	private final static String DLCL= "dlcl16/"; //disabled - size 16x16 //$NON-NLS-1$
-	private final static String ELCL= "elcl16/"; //enabled - size 16x16 //$NON-NLS-1$
-	private final static String VIEW= "cview16/"; // views //$NON-NLS-1$
-	
-	/**
-	 * Declare all images
-	 */
-	private static void declareImages() {
-		// Actions
-		
-		//local toolbars
-		declareRegistryImage(IConsoleConstants.IMG_LCL_CLEAR, LOCALTOOL + "clear_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_LCL_PIN, LOCALTOOL + "pin.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_LCL_LOCK, LOCALTOOL + "lock_co.gif"); //$NON-NLS-1$
-			
-		// disabled local toolbars
-		declareRegistryImage(IInternalConsoleConstants.IMG_DLCL_CLEAR, DLCL + "clear_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_DLCL_PIN, DLCL + "pin.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_DLCL_LOCK, DLCL + "lock_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_DLCL_CLOSE, DLCL + "rem_co.gif"); //$NON-NLS-1$
-		
-		// enabled local toolbars
-		declareRegistryImage(IInternalConsoleConstants.IMG_ELCL_CLEAR, ELCL + "clear_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_ELCL_PIN, ELCL + "pin.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_ELCL_LOCK, ELCL + "lock_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_ELCL_CLOSE, ELCL + "rem_co.gif"); //$NON-NLS-1$
-		declareRegistryImage(IInternalConsoleConstants.IMG_ELCL_NEW_CON, ELCL + "new_con.gif"); //$NON-NLS-1$
-		
-		// Views
-		declareRegistryImage(IConsoleConstants.IMG_VIEW_CONSOLE, VIEW + "console_view.gif"); //$NON-NLS-1$				
-	}
-
-	/**
-	 * Declare an Image in the registry table.
-	 * @param key 	The key to use when registering the image
-	 * @param path	The path where the image can be found. This path is relative to where
-	 *				this plugin class is found (i.e. typically the packages directory)
-	 */
-	private final static void declareRegistryImage(String key, String path) {
-		ImageDescriptor desc= ImageDescriptor.getMissingImageDescriptor();
-		try {
-			desc= ImageDescriptor.createFromURL(makeIconFileURL(path));
-		} catch (MalformedURLException me) {
-			ConsolePlugin.log(me);
-		}
-		imageRegistry.put(key, desc);
-	}
-	
-	/**
-	 * Returns the ImageRegistry.
-	 */
-	public static ImageRegistry getImageRegistry() {
-		if (imageRegistry == null) {
-			initializeImageRegistry();
-		}
-		return imageRegistry;
-	}
-
-	/**
-	 *	Initialize the image registry by declaring all of the required
-	 *	graphics. This involves creating JFace image descriptors describing
-	 *	how to create/find the image should it be needed.
-	 *	The image is not actually allocated until requested.
-	 *
-	 * 	Prefix conventions
-	 *		Wizard Banners			WIZBAN_
-	 *		Preference Banners		PREF_BAN_
-	 *		Property Page Banners	PROPBAN_
-	 *		Color toolbar			CTOOL_
-	 *		Enable toolbar			ETOOL_
-	 *		Disable toolbar			DTOOL_
-	 *		Local enabled toolbar	ELCL_
-	 *		Local Disable toolbar	DLCL_
-	 *		Object large			OBJL_
-	 *		Object small			OBJS_
-	 *		View 					VIEW_
-	 *		Product images			PROD_
-	 *		Misc images				MISC_
-	 *
-	 *	Where are the images?
-	 *		The images (typically gifs) are found in the same location as this plugin class.
-	 *		This may mean the same package directory as the package holding this class.
-	 *		The images are declared using this.getClass() to ensure they are looked up via
-	 *		this plugin class.
-	 *	@see org.eclipse.jface.resource.ImageRegistry
-	 */
-	public static ImageRegistry initializeImageRegistry() {
-		imageRegistry= new ImageRegistry(ConsolePlugin.getStandardDisplay());
-		declareImages();
-		return imageRegistry;
-	}
-
-	/**
-	 * Returns the <code>Image<code> identified by the given key,
-	 * or <code>null</code> if it does not exist.
-	 */
-	public static Image getImage(String key) {
-		return getImageRegistry().get(key);
-	}
-	
-	/**
-	 * Returns the <code>ImageDescriptor<code> identified by the given key,
-	 * or <code>null</code> if it does not exist.
-	 */
-	public static ImageDescriptor getImageDescriptor(String key) {
-		return getImageRegistry().getDescriptor(key);
-	}
-	
-	private static URL makeIconFileURL(String iconPath) throws MalformedURLException {
-		if (ICON_BASE_URL == null) {
-			throw new MalformedURLException();
-		}
-			
-		return new URL(ICON_BASE_URL, iconPath);
-	}
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.java
deleted file mode 100644
index 33b7d85..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-public class ConsoleResourceBundleMessages {
-    private static final String BUNDLE_NAME = "org.eclipse.ui.internal.console.ConsoleResourceBundleMessages"; //$NON-NLS-1$
-
-    private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);
-
-    private ConsoleResourceBundleMessages() {
-    }
-
-    public static String getString(String key) {
-        try {
-            return RESOURCE_BUNDLE.getString(key);
-        } catch (MissingResourceException e) {
-            return '!' + key + '!';
-        }
-    }
-
-    public static ResourceBundle getBundle() {
-        return RESOURCE_BUNDLE; 
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.properties b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.properties
deleted file mode 100644
index 9aeb0ef..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleResourceBundleMessages.properties
+++ /dev/null
@@ -1,19 +0,0 @@
-###############################################################################
-# Copyright (c) 2000, 2005 IBM Corporation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-#
-# Contributors:
-#     IBM Corporation - initial API and implementation
-###############################################################################
-
-
-# These strings are used by the Find Replace Action and loaded as a Resource Bundle.
-# See TextConsolePage.createActions()
-
-find_replace_action_label=&Find/Replace...
-find_replace_action_tooltip=Find/Replace
-find_replace_action_image=
-find_replace_action_description=Find/Replace
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleTypePropertyTester.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleTypePropertyTester.java
deleted file mode 100644
index 46dc213..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleTypePropertyTester.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.core.expressions.PropertyTester;
-import org.eclipse.ui.console.IConsole;
-
-/**
- * Tests if an IOConsole's type matches the expected value
- * 
- * @since 3.1
- */
-public class ConsoleTypePropertyTester extends PropertyTester {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.expressions.IPropertyTester#test(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.Object)
-     */
-    public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
-        IConsole console = (IConsole) receiver;
-        String type = console.getType();
-        return type != null ? type.equals(expectedValue) : false;
-    }
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleView.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleView.java
deleted file mode 100644
index 967b216..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleView.java
+++ /dev/null
@@ -1,656 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-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.IBasicPropertyConstants;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IPartListener2;
-import org.eclipse.ui.IViewReference;
-import org.eclipse.ui.IViewSite;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartReference;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsoleListener;
-import org.eclipse.ui.console.IConsoleManager;
-import org.eclipse.ui.console.IConsolePageParticipant;
-import org.eclipse.ui.console.IConsoleView;
-import org.eclipse.ui.part.IPage;
-import org.eclipse.ui.part.IPageBookViewPage;
-import org.eclipse.ui.part.MessagePage;
-import org.eclipse.ui.part.PageBook;
-import org.eclipse.ui.part.PageBookView;
-import org.eclipse.ui.progress.IWorkbenchSiteProgressService;
-
-/**
- * Page book console view.
- * 
- * @since 3.0
- */
-public class ConsoleView extends PageBookView implements IConsoleView, IConsoleListener, IPropertyChangeListener, IPartListener2 {
-	
-	/**
-	 * Whether this console is pinned.
-	 */
-	private boolean fPinned = false;
-	
-	/**
-	 * Stack of consoles in MRU order
-	 */
-	private List fStack = new ArrayList();
-	
-	/**
-	 * The console being displayed, or <code>null</code> if none
-	 */
-	private IConsole fActiveConsole = null;
-	
-	/**
-	 * Map of consoles to dummy console parts (used to close pages)
-	 */
-	private Map fConsoleToPart;
-	
-	/**
-	 * Map of consoles to array of page participants
-	 */
-	private Map fConsoleToPageParticipants;
-	
-	/**
-	 * Map of parts to consoles
-	 */
-	private Map fPartToConsole;
-	
-	/**
-	 * Whether this view is active
-	 */
-	private boolean fActive = false;
-	
-	// actions
-	private PinConsoleAction fPinAction = null; 
-	private ConsoleDropDownAction fDisplayConsoleAction = null;
-	
-	private OpenConsoleAction fOpenConsoleAction = null;
-
-    private boolean fScrollLock;
-
-	private boolean isAvailable() {
-		return getPageBook() != null && !getPageBook().isDisposed();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.util.IPropertyChangeListener#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
-	 */
-	public void propertyChange(PropertyChangeEvent event) {
-		Object source = event.getSource();
-		if (source instanceof IConsole && event.getProperty().equals(IBasicPropertyConstants.P_TEXT)) {
-			if (source.equals(getConsole())) {
-				updateTitle();
-			}
-		}
-
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener#partClosed(org.eclipse.ui.IWorkbenchPart)
-	 */
-	public void partClosed(IWorkbenchPart part) {
-		super.partClosed(part);
-		fPinAction.update();
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.debug.internal.ui.console.IConsoleView#getConsole()
-	 */
-	public IConsole getConsole() {
-		return fActiveConsole;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.PageBookView#showPageRec(org.eclipse.ui.part.PageBookView.PageRec)
-	 */
-	protected void showPageRec(PageRec pageRec) {
-        // don't show the page when pinned, unless this is the first console to be added
-        // or its the default page
-        if (fActiveConsole != null && pageRec.page != getDefaultPage() && fPinned && fConsoleToPart.size() > 1) {
-            IConsole console = (IConsole)fPartToConsole.get(pageRec.part);
-            if (!fStack.contains(console)) {
-                fStack.add(console);
-            }
-            return;
-        }
-        
-        IConsole recConsole = (IConsole)fPartToConsole.get(pageRec.part);
-        if (recConsole!=null && recConsole.equals(fActiveConsole)) {
-            return;
-        }
-        
-	    super.showPageRec(pageRec);
-	    fActiveConsole = recConsole;
-	    IConsole tos = null;
-	    if (!fStack.isEmpty()) {
-	        tos = (IConsole) fStack.get(0);
-	    }
-	    if (tos != null && !tos.equals(fActiveConsole)) {
-	        deactivateParticipants(tos);
-	    }
-	    if (fActiveConsole != null && !fActiveConsole.equals(tos)) {
-	        fStack.remove(fActiveConsole);
-	        fStack.add(0,fActiveConsole);
-	        activateParticipants(fActiveConsole);
-	    }
-	    updateTitle();		
-	    // update console actions
-	    if (fPinAction != null) {
-	        fPinAction.update();
-	    }
-	    IPage page = getCurrentPage();
-	    if (page instanceof IOConsolePage) {
-	        ((IOConsolePage)page).setAutoScroll(!fScrollLock);
-	    }
-	}
-	
-	/**
-	 * Activates the participants fot the given console, if any.
-	 * 
-	 * @param console
-	 */
-	private void activateParticipants(IConsole console) {
-		// activate
-		if (console != null && fActive) {
-			IConsolePageParticipant[] participants = getParticipants(console);
-			if (participants != null) {
-			    for (int i = 0; i < participants.length; i++) {
-			        // TODO: safe runnable
-			        participants[i].activated();
-			    }
-			}
-		}
-	}
-
-	/**
-	 * Returns a stack of consoles in the view in MRU order.
-	 * 
-	 * @return a stack of consoles in the view in MRU order
-	 */
-	protected List getConsoleStack() {
-		return fStack;
-	}
-
-	/**
-	 * Updates the view title based on the active console
-	 */
-    protected void updateTitle() {
-        IConsole console = getConsole();
-        if (console == null) {
-            setContentDescription(ConsoleMessages.ConsoleView_0); //$NON-NLS-1$
-        } else {
-            String newName = console.getName();
-            String oldName = getContentDescription();
-            if (newName!=null && !(newName.equals(oldName))) {
-                setContentDescription(console.getName()); //$NON-NLS-1$
-            }
-        }
-    }
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.PageBookView#doDestroyPage(org.eclipse.ui.IWorkbenchPart, org.eclipse.ui.part.PageBookView.PageRec)
-	 */
-	protected void doDestroyPage(IWorkbenchPart part, PageRec pageRecord) {
-	    IConsole console = (IConsole)fPartToConsole.get(part);
-	    
-		// dispose page participants
-		IConsolePageParticipant[] participants = (IConsolePageParticipant[]) fConsoleToPageParticipants.remove(console);
-		for (int i = 0; i < participants.length; i++) {
-            IConsolePageParticipant participant = participants[i];
-            // TODO: this should be done in a safe runnable
-            participant.dispose();
-        }
-
-		IPage page = pageRecord.page;
-		page.dispose();
-		pageRecord.dispose();
-		console.removePropertyChangeListener(this);
-						
-		// empty cross-reference cache
-		fPartToConsole.remove(part);
-		fConsoleToPart.remove(console);
-        if (fPartToConsole.isEmpty()) {
-            fActiveConsole = null;
-        }
-		
-		// update console actions
-		fPinAction.update();		
-	}
-	
-	/**
-	 * Returns the page participants registered for the given console, or <code>null</code>
-	 * 
-	 * @param console
-	 * @return registered page participants or <code>null</code>
-	 */
-	private IConsolePageParticipant[] getParticipants(IConsole console) {
-	    return (IConsolePageParticipant[]) fConsoleToPageParticipants.get(console);
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.PageBookView#doCreatePage(org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected PageRec doCreatePage(IWorkbenchPart dummyPart) {
-		ConsoleWorkbenchPart part = (ConsoleWorkbenchPart)dummyPart;
-		IConsole console = part.getConsole();
-		IPageBookViewPage page = console.createPage(this);
-		initPage(page);
-		page.createControl(getPageBook());
-		console.addPropertyChangeListener(this);
-		
-		// initialize page participants
-		IConsolePageParticipant[] participants = ((ConsoleManager)getConsoleManager()).getPageParticipants(console);
-		fConsoleToPageParticipants.put(console, participants);
-		for (int i = 0; i < participants.length; i++) {
-            IConsolePageParticipant participant = participants[i];
-            // TODO: this should be done in a safe runnable
-            participant.init(page, console);
-        }
-		
-		PageRec rec = new PageRec(dummyPart, page);
-		return rec;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.PageBookView#isImportant(org.eclipse.ui.IWorkbenchPart)
-	 */
-	protected boolean isImportant(IWorkbenchPart part) {
-		return part instanceof ConsoleWorkbenchPart;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-		super.dispose();
-		getViewSite().getPage().removePartListener((IPartListener2)this);
-        ConsoleManager consoleManager = (ConsoleManager) ConsolePlugin.getDefault().getConsoleManager();
-        consoleManager.removeConsoleListener(this);        
-        consoleManager.registerConsoleView(this);
-	}
-
-	/**
-	 * Returns the console manager.
-	 * 
-     * @return the console manager
-     */
-    private IConsoleManager getConsoleManager() {
-        return ConsolePlugin.getDefault().getConsoleManager();
-    }
-
-    /* (non-Javadoc)
-	 * @see org.eclipse.ui.part.PageBookView#createDefaultPage(org.eclipse.ui.part.PageBook)
-	 */
-	protected IPage createDefaultPage(PageBook book) {
-		MessagePage page = new MessagePage();
-		page.createControl(getPageBook());
-		initPage(page);
-		return page;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleListener#consolesAdded(org.eclipse.ui.console.IConsole[])
-	 */
-	public void consolesAdded(final IConsole[] consoles) {
-		if (isAvailable()) {
-			Runnable r = new Runnable() {
-				public void run() {
-					for (int i = 0; i < consoles.length; i++) {
-						if (isAvailable()) {
-							IConsole console = consoles[i];
-							// ensure it's still registered since this is done asynchronously
-							IConsole[] allConsoles = getConsoleManager().getConsoles();
-							for (int j = 0; j < allConsoles.length; j++) {
-                                IConsole registered = allConsoles[j];
-                                if (registered.equals(console)) {
-        							ConsoleWorkbenchPart part = new ConsoleWorkbenchPart(console, getSite());
-        							fConsoleToPart.put(console, part);
-        							fPartToConsole.put(part, console);
-        							partActivated(part);
-        							break;
-                                }
-                            }
-
-						}
-					}
-				}
-			};
-			asyncExec(r);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleListener#consolesRemoved(org.eclipse.ui.console.IConsole[])
-	 */
-	public void consolesRemoved(final IConsole[] consoles) {
-		if (isAvailable()) {
-			Runnable r = new Runnable() {
-				public void run() {
-					for (int i = 0; i < consoles.length; i++) {
-						if (isAvailable()) {
-							IConsole console = consoles[i];
-							fStack.remove(console);
-							ConsoleWorkbenchPart part = (ConsoleWorkbenchPart)fConsoleToPart.get(console);
-							if (part != null) {
-								partClosed(part);
-							}
-							if (getConsole() == null) {
-								IConsole[] available = getConsoleManager().getConsoles();
-								if (available.length > 0) {
-									display(available[available.length - 1]);
-								}
-							}
-						}
-					}
-				}
-			};
-			asyncExec(r);
-		}
-	}
-
-	/**
-	 * Constructs a console view
-	 */
-	public ConsoleView() {
-		super();
-		fConsoleToPart = new HashMap();
-		fPartToConsole = new HashMap();
-		fConsoleToPageParticipants = new HashMap();
-        
-		ConsoleManager consoleManager = (ConsoleManager) ConsolePlugin.getDefault().getConsoleManager();
-		consoleManager.registerConsoleView(this);
-	}
-	
-	protected void createActions() {
-		fPinAction = new PinConsoleAction(this);
-		fDisplayConsoleAction = new ConsoleDropDownAction(this);
-		ConsoleFactoryExtension[] extensions = ((ConsoleManager)ConsolePlugin.getDefault().getConsoleManager()).getConsoleFactoryExtensions();
-		if (extensions.length > 0) {
-		    fOpenConsoleAction = new OpenConsoleAction();
-		}
-	}
-
-	protected void configureToolBar(IToolBarManager mgr) {
-		mgr.add(new Separator(IConsoleConstants.LAUNCH_GROUP));
-		mgr.add(new Separator(IConsoleConstants.OUTPUT_GROUP));
-		mgr.add(new Separator("fixedGroup")); //$NON-NLS-1$
-		mgr.add(fPinAction);
-		mgr.add(fDisplayConsoleAction);
-		if (fOpenConsoleAction != null) {
-		    mgr.add(fOpenConsoleAction);
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleView#display(org.eclipse.ui.console.IConsole)
-	 */
-	public void display(IConsole console) {
-	    if (fPinned && fActiveConsole != null) {
-            return;
-        }
-        if (console.equals(fActiveConsole)) {
-            return;
-        }
-	    ConsoleWorkbenchPart part = (ConsoleWorkbenchPart)fConsoleToPart.get(console);
-	    if (part != null) {
-	        partActivated(part);
-	    }
-	}
-
-	/*/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleView#pin(org.eclipse.ui.console.IConsole)
-	 */
-	public void setPinned(boolean pin) {
-        fPinned = pin;
-	    if (fPinAction != null) {
-			fPinAction.update();
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleView#isPinned()
-	 */
-	public boolean isPinned() {
-		return fPinned;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.part.PageBookView#getBootstrapPart()
-	 */
-	protected IWorkbenchPart getBootstrapPart() {
-		return null;
-	}
-	
-	/**
-	 * Registers the given runnable with the display
-	 * associated with this view's control, if any.
-	 * 
-	 * @see org.eclipse.swt.widgets.Display#asyncExec(java.lang.Runnable)
-	 */
-	public void asyncExec(Runnable r) {
-		if (isAvailable()) {
-			getPageBook().getDisplay().asyncExec(r);
-		}
-	}
-	
-	/**
-	 * Creates this view's underlying viewer and actions.
-	 * Hooks a pop-up menu to the underlying viewer's control,
-	 * as well as a key listener. When the delete key is pressed,
-	 * the <code>REMOVE_ACTION</code> is invoked. Hooks help to
-	 * this view. Subclasses must implement the following methods
-	 * which are called in the following order when a view is
-	 * created:<ul>
-	 * <li><code>createViewer(Composite)</code> - the context
-	 *   menu is hooked to the viewer's control.</li>
-	 * <li><code>createActions()</code></li>
-	 * <li><code>configureToolBar(IToolBarManager)</code></li>
-	 * <li><code>getHelpContextId()</code></li>
-	 * </ul>
-	 * @see IWorkbenchPart#createPartControl(Composite)
-	 */
-	public void createPartControl(Composite parent) {
-		super.createPartControl(parent);
-		createActions();
-		IToolBarManager tbm= getViewSite().getActionBars().getToolBarManager();
-		configureToolBar(tbm);
-		updateForExistingConsoles();
-		getViewSite().getActionBars().updateActionBars();
-		PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IConsoleHelpContextIds.CONSOLE_VIEW);
-		getViewSite().getPage().addPartListener((IPartListener2)this);
-	}
-	
-	/**
-	 * Initialize for existing consoles
-	 */
-	private void updateForExistingConsoles() {
-		IConsoleManager manager = getConsoleManager();
-		// create pages for consoles
-		IConsole[] consoles = manager.getConsoles();
-		consolesAdded(consoles);
-		// add as a listener
-		manager.addConsoleListener(this);		
-	}	
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IConsoleView#warnOfContentChange(org.eclipse.ui.console.IConsole)
-	 */
-	public void warnOfContentChange(IConsole console) {
-		IWorkbenchPart part = (IWorkbenchPart)fConsoleToPart.get(console);
-		if (part != null) {
-			IWorkbenchSiteProgressService service = (IWorkbenchSiteProgressService) part.getSite().getAdapter(IWorkbenchSiteProgressService.class);
-			if (service != null) {
-				service.warnOfContentChange();
-			}
-		}
-	}
-	
-    public Object getAdapter(Class key) {
-        Object adpater = super.getAdapter(key);
-        if (adpater == null) {
-            IConsole console = getConsole();
-            if (console != null) {
-                IConsolePageParticipant[] participants = (IConsolePageParticipant[]) fConsoleToPageParticipants.get(console);
-                // an adapter can be asked for before the console participants are created
-                if (participants != null) {
-                    for (int i = 0; i < participants.length; i++) {
-                        IConsolePageParticipant participant = participants[i];
-                        adpater = participant.getAdapter(key);
-                        if (adpater != null) {
-                            return adpater;
-                        }
-                    }
-                }
-            }
-        }
-        return adpater;
-    }
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partActivated(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partActivated(IWorkbenchPartReference partRef) {
-		if (isThisPart(partRef)) {
-			fActive = true;
-			activateParticipants(fActiveConsole); 
-		}
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partBroughtToTop(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partBroughtToTop(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partClosed(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partClosed(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partDeactivated(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partDeactivated(IWorkbenchPartReference partRef) {
-        if (isThisPart(partRef)) {
-			fActive = false;
-			deactivateParticipants(fActiveConsole);
-        }
-	}
-    
-    protected boolean isThisPart(IWorkbenchPartReference partRef) {
-        if (partRef instanceof IViewReference) {
-            IViewReference viewRef = (IViewReference) partRef;
-            if (viewRef.getId().equals(getViewSite().getId())) {
-                String secId = viewRef.getSecondaryId();
-                String mySec = null;
-                if (getSite() instanceof IViewSite) {
-                    mySec = ((IViewSite)getSite()).getSecondaryId();
-                }
-                if (mySec == null) {
-                    return secId == null;
-                }
-                return mySec.equals(secId);
-            }
-        }
-        return false;
-    }
-
-	/**
-	 * Deactivates participants for the given console, if any.
-	 * 
-	 * @param console console to deactivate
-	 */
-	private void deactivateParticipants(IConsole console) {
-		// deactivate
-	    if (console != null) {
-			IConsolePageParticipant[] participants = getParticipants(console);
-			if (participants != null) {
-			    for (int i = 0; i < participants.length; i++) {
-			        // TODO: safe runnable
-                    participants[i].deactivated();
-                }
-			}
-	    }
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partOpened(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partOpened(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partHidden(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partHidden(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partVisible(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partVisible(IWorkbenchPartReference partRef) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IPartListener2#partInputChanged(org.eclipse.ui.IWorkbenchPartReference)
-	 */
-	public void partInputChanged(IWorkbenchPartReference partRef) {		
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleView#setScrollLock(boolean)
-     */
-    public void setScrollLock(boolean scrollLock) {
-        fScrollLock = scrollLock;
-
-        IPage page = getCurrentPage();
-        if (page instanceof IOConsolePage) {
-            ((IOConsolePage)page).setAutoScroll(!scrollLock);
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleView#getScrollLock()
-     */
-    public boolean getScrollLock() {
-        return fScrollLock;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleView#pin(org.eclipse.ui.console.IConsole)
-     */
-    public void pin(IConsole console) {
-        if (console == null) {
-            setPinned(false);
-        } else {
-            if (isPinned()) {
-                setPinned(false);
-            }
-            display(console);
-            setPinned(true);
-        }
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleViewConsoleFactory.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleViewConsoleFactory.java
deleted file mode 100644
index 8a32fc8..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleViewConsoleFactory.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsoleFactory;
-
-public class ConsoleViewConsoleFactory implements IConsoleFactory {
-
-    int counter = 1;
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.console.IConsoleFactory#openConsole()
-     */
-    public void openConsole() {
-        IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-        if (window != null) {
-            IWorkbenchPage page = window.getActivePage();
-            if (page != null) {
-                try {
-                    String secondaryId = "Console View #" + counter; //$NON-NLS-1$
-                    page.showView(IConsoleConstants.ID_CONSOLE_VIEW, secondaryId, 1);
-                    counter++;
-                } catch (PartInitException e) {
-                    ConsolePlugin.log(e);
-                }
-            }
-        }
-    }
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleWorkbenchPart.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleWorkbenchPart.java
deleted file mode 100644
index e3377a4..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ConsoleWorkbenchPart.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IPropertyListener;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.console.IConsole;
-
-/**
- * Fake part to use as keys in page book for console pages
- */
-public class ConsoleWorkbenchPart implements IWorkbenchPart {
-
-	private IConsole fConsole = null;
-	private IWorkbenchPartSite fSite = null;
-	
-	/* (non-Javadoc)
-	 * @see java.lang.Object#equals(java.lang.Object)
-	 */
-	public boolean equals(Object obj) {
-		return (obj instanceof ConsoleWorkbenchPart) &&
-			fConsole.equals(((ConsoleWorkbenchPart)obj).fConsole);
-	}
-
-	/* (non-Javadoc)
-	 * @see java.lang.Object#hashCode()
-	 */
-	public int hashCode() {
-		return fConsole.hashCode();
-	}
-
-	/**
-	 * Constructs a part for the given console that binds to the given
-	 * site
-	 */
-	public ConsoleWorkbenchPart(IConsole console, IWorkbenchPartSite site) {
-		fConsole = console;
-		fSite = site;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#addPropertyListener(org.eclipse.ui.IPropertyListener)
-	 */
-	public void addPropertyListener(IPropertyListener listener) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
-	 */
-	public void createPartControl(Composite parent) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#dispose()
-	 */
-	public void dispose() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#getSite()
-	 */
-	public IWorkbenchPartSite getSite() {
-		return fSite;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#getTitle()
-	 */
-	public String getTitle() {
-		return ""; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#getTitleImage()
-	 */
-	public Image getTitleImage() {
-		return null;
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#getTitleToolTip()
-	 */
-	public String getTitleToolTip() {
-		return ""; //$NON-NLS-1$
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#removePropertyListener(org.eclipse.ui.IPropertyListener)
-	 */
-	public void removePropertyListener(IPropertyListener listener) {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.IWorkbenchPart#setFocus()
-	 */
-	public void setFocus() {
-	}
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-	 */
-	public Object getAdapter(Class adapter) {
-		return null;
-	}
-
-	/**
-	 * Returns the console associated with this part.
-	 * 
-	 * @return console associated with this part
-	 */
-	protected IConsole getConsole() {
-		return fConsole;
-	}
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/FollowHyperlinkAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/FollowHyperlinkAction.java
deleted file mode 100644
index b604054..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/FollowHyperlinkAction.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.console.IHyperlink;
-import org.eclipse.ui.console.TextConsoleViewer;
-
-/**
- * Follows a hyperlink in the console
- * 
- * @since 3.1
- */
-public class FollowHyperlinkAction extends Action {
-
-	private TextConsoleViewer viewer;
-
-    /**
-	 * Constructs a follow link action
-	 */
-	public FollowHyperlinkAction(TextConsoleViewer consoleViewer) {
-	    super(ConsoleMessages.FollowHyperlinkAction_0); //$NON-NLS-1$
-		setToolTipText(ConsoleMessages.FollowHyperlinkAction_1); //$NON-NLS-1$
-		this.viewer = consoleViewer;
-	}
-	
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IAction#isEnabled()
-     */
-    public boolean isEnabled() {
-        return viewer.getHyperlink() != null;
-    }
-	
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.jface.action.IAction#run()
-     */
-	public void run() {
-		IHyperlink link = viewer.getHyperlink();
-		if (link != null) {
-			link.linkActivated();
-		}
-	}
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IConsoleHelpContextIds.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IConsoleHelpContextIds.java
deleted file mode 100644
index cf93f64..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IConsoleHelpContextIds.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.ui.console.IConsoleConstants;
-
-/**
- * Help context ids for the debug ui.
- * <p>
- * This interface contains constants only; it is not intended to be implemented
- * or extended.
- * </p>
- * 
- */
-public interface IConsoleHelpContextIds {
-	
-	public static final String PREFIX = IConsoleConstants.PLUGIN_ID + "."; //$NON-NLS-1$
-	
-	// Actions
-	public static final String CLEAR_CONSOLE_ACTION = PREFIX + "clear_console_action_context"; //$NON-NLS-1$
-	public static final String CONSOLE_SCROLL_LOCK_ACTION = PREFIX + "console_scroll_lock_action_context"; //$NON-NLS-1$	
-		
-	// Views
-	public static final String CONSOLE_VIEW = PREFIX + "console_view_context"; //$NON-NLS-1$
-
-	// Preference pages
-	public static final String CONSOLE_PREFERENCE_PAGE = PREFIX + "console_preference_page_context"; //$NON-NLS-1$
-}
-
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IInternalConsoleConstants.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IInternalConsoleConstants.java
deleted file mode 100644
index 00f5cbc..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IInternalConsoleConstants.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-public interface IInternalConsoleConstants {
-    
-	// tool images
-	public static final String IMG_LCL_PIN = "IMG_LCL_PIN"; //$NON-NLS-1$
-	public static final String IMG_LCL_LOCK = "IMG_LCL_LOCK"; //$NON-NLS-1$
-	
-	// disabled local tool images
-	public static final String IMG_DLCL_PIN = "IMG_DLCL_PIN"; //$NON-NLS-1$
-	public static final String IMG_DLCL_CLEAR= "IMG_DLCL_CLEAR"; //$NON-NLS-1$
-	public static final String IMG_DLCL_LOCK = "IMG_DLCL_LOCK"; //$NON-NLS-1$
-	public static final String IMG_DLCL_CLOSE = "IMG_DLCL_CLOSE"; //$NON-NLS-1$
-	
-	// enabled local tool images	
-	public static final String IMG_ELCL_PIN = "IMG_ELCL_PIN"; //$NON-NLS-1$
-	public static final String IMG_ELCL_CLEAR= "IMG_ELCL_CLEAR"; //$NON-NLS-1$
-	public static final String IMG_ELCL_LOCK = "IMG_ELCL_LOCK"; //$NON-NLS-1$
-	public static final String IMG_ELCL_CLOSE = "IMG_ELCL_CLOSE"; //$NON-NLS-1$
-    public static final String IMG_ELCL_NEW_CON = "IMG_ELCL_NEW_CON"; //$NON-NLS-1$
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePage.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePage.java
deleted file mode 100644
index 3f8d72f..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePage.java
+++ /dev/null
@@ -1,141 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.util.IPropertyChangeListener;
-import org.eclipse.jface.util.PropertyChangeEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.console.IConsoleConstants;
-import org.eclipse.ui.console.IConsoleView;
-import org.eclipse.ui.console.TextConsole;
-import org.eclipse.ui.console.TextConsolePage;
-import org.eclipse.ui.console.TextConsoleViewer;
-
-/**
- * A page for an IOConsole
- * 
- * @since 3.1
- *  
- */
-public class IOConsolePage extends TextConsolePage {
-
-    private ScrollLockAction fScrollLockAction;
-
-    private boolean fReadOnly;
-
-    private IPropertyChangeListener fPropertyChangeListener;
-
-    public IOConsolePage(TextConsole console, IConsoleView view) {
-        super(console, view);
-
-        fPropertyChangeListener = new IPropertyChangeListener() {
-            public void propertyChange(PropertyChangeEvent event) {
-                String property = event.getProperty();
-                if (property.equals(IConsoleConstants.P_CONSOLE_OUTPUT_COMPLETE)) {
-                    setReadOnly();
-                }
-            }
-        };
-        console.addPropertyChangeListener(fPropertyChangeListener);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.part.IPage#createControl(org.eclipse.swt.widgets.Composite)
-     */
-    public void createControl(Composite parent) {
-        super.createControl(parent);
-        if (fReadOnly) {
-            IOConsoleViewer viewer = (IOConsoleViewer) getViewer();
-            viewer.setReadOnly();
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.console.TextConsolePage#createViewer(org.eclipse.swt.widgets.Composite,
-     *      org.eclipse.ui.console.TextConsole)
-     */
-    protected TextConsoleViewer createViewer(Composite parent) {
-        return new IOConsoleViewer(parent, (TextConsole)getConsole());
-    }
-
-    public void setAutoScroll(boolean scroll) {
-        IOConsoleViewer viewer = (IOConsoleViewer) getViewer();
-        if (viewer != null) {
-            viewer.setAutoScroll(scroll);
-            fScrollLockAction.setChecked(!scroll);
-        }
-    }
-
-    /**
-     * Informs the viewer that it's text widget should not be editable.
-     */
-    public void setReadOnly() {
-        fReadOnly = true;
-        IOConsoleViewer viewer = (IOConsoleViewer) getViewer();
-        if (viewer != null) {
-            viewer.setReadOnly();
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.TextConsolePage#createActions()
-     */
-    protected void createActions() {
-        super.createActions();
-        fScrollLockAction = new ScrollLockAction(getConsoleView());
-        setAutoScroll(!fScrollLockAction.isChecked());
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.TextConsolePage#contextMenuAboutToShow(org.eclipse.jface.action.IMenuManager)
-     */
-    protected void contextMenuAboutToShow(IMenuManager menuManager) {
-        super.contextMenuAboutToShow(menuManager);
-        menuManager.add(fScrollLockAction);
-        IOConsoleViewer viewer = (IOConsoleViewer) getViewer();
-        if (!viewer.isReadOnly()) {
-            menuManager.remove(ActionFactory.CUT.getId());
-            menuManager.remove(ActionFactory.PASTE.getId());
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.console.TextConsolePage#configureToolBar(org.eclipse.jface.action.IToolBarManager)
-     */
-    protected void configureToolBar(IToolBarManager mgr) {
-        super.configureToolBar(mgr);
-        mgr.appendToGroup(IConsoleConstants.OUTPUT_GROUP, fScrollLockAction);
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.ui.part.IPage#dispose()
-     */
-    public void dispose() {
-        if (fScrollLockAction != null) {
-            fScrollLockAction.dispose();
-            fScrollLockAction = null;
-        }
-        getConsole().removePropertyChangeListener(fPropertyChangeListener);
-        super.dispose();
-    }
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartition.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartition.java
deleted file mode 100644
index b9d447a..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartition.java
+++ /dev/null
@@ -1,175 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IOConsoleInputStream;
-import org.eclipse.ui.console.IOConsoleOutputStream;
-
-/**
- * A region in an IOConsole's document.
- * @since 3.1
- *
- */
-public class IOConsolePartition implements ITypedRegion {
-	public static final String OUTPUT_PARTITION_TYPE = ConsolePlugin.getUniqueIdentifier() + ".io_console_output_partition_type"; //$NON-NLS-1$
-	public static final String INPUT_PARTITION_TYPE = ConsolePlugin.getUniqueIdentifier() + ".io_console_input_partition_type"; //$NON-NLS-1$
-
-	/**
-	 * The data contained by this partition.
-	 */
-	private StringBuffer buffer;
-    private String type;
-    private int offset;
-    /**
-     * Output partitions are all read only.
-     * Input partitions are read only once they have been appended to the console's input stream.
-     */
-    private boolean readOnly;
-    
-    /**
-     * Only one of inputStream or outputStream will be null depending on the partitions type.
-     */
-    private IOConsoleOutputStream outputStream;
-    private IOConsoleInputStream inputStream;
-    private int length;
-    
-    /**
-     * Creates a new partition to contain output to console.
-     */
-    public IOConsolePartition(IOConsoleOutputStream outputStream, int length) {
-        this.outputStream = outputStream;
-        this.length = length;
-        this.type = OUTPUT_PARTITION_TYPE;
-        this.readOnly = true;
-    }
-    
-    /**
-     * Creates a new partition to contain input from a console
-     */
-    public IOConsolePartition(IOConsoleInputStream inputStream, String text) {
-        this.inputStream = inputStream;
-        buffer = new StringBuffer(text);
-        length = text.length();
-        this.type = INPUT_PARTITION_TYPE;
-        this.readOnly = false;
-    }
-    
-    /**
-     * Inserts a string into this partition
-     * @param s The string to insert
-     * @param offset the offset in the partition
-     */
-    public void insert(String s, int insertOffset) {
-        buffer.insert(insertOffset, s);
-        length += s.length();
-    }
-      
-    /**
-     * Deletes data from this partition.
-     * @param delOffset
-     * @param delLength
-     */
-    public void delete(int delOffset, int delLength) {
-        buffer.delete(delOffset, delOffset+delLength);
-        length -= delLength;
-    }
-    
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.jface.text.ITypedRegion#getType()
-     */
-    public String getType() {
-        return type;
-    }
-
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.jface.text.IRegion#getLength()
-     */
-    public int getLength() {
-        return length;
-    }
-
-    /*
-     *  (non-Javadoc)
-     * @see org.eclipse.jface.text.IRegion#getOffset()
-     */
-    public int getOffset() {
-        return offset;
-    }
-    
-    /**
-     * Sets this partitions offset in the document.
-     * @param offset This partitions offset in the document.
-     */
-    public void setOffset(int offset) {
-        this.offset = offset;
-    }
-    
-    /**
-     * Sets this partitions length
-     * 
-     * @param length
-     */
-    public void setLength(int length) {
-    	this.length = length;
-    }
-    
-    /**
-     * Returns the data contained in this partition.
-     * @return The data contained in this partition.
-     */
-    public String getString() {
-        return buffer != null ? buffer.toString() : ""; //$NON-NLS-1$
-    }
-    
-    /**
-     * Returns a StyleRange object which may be used for setting the style
-     * of this partition in a viewer.
-     */
-    public StyleRange getStyleRange(int rangeOffset, int rangeLength) {
-        return new StyleRange(rangeOffset, rangeLength, getColor(), null, getFontStyle());
-    }
-
-    private int getFontStyle() {
-        if (type.equals(INPUT_PARTITION_TYPE)) {
-            return inputStream.getFontStyle();
-        } 
-        return outputStream.getFontStyle();
-    }
-
-    public Color getColor() {
-        if (type.equals(INPUT_PARTITION_TYPE)) {
-            return inputStream.getColor();
-        } 
-        return outputStream.getColor();
-    }
-
-    public boolean isReadOnly() {
-        return readOnly;
-    }
-    
-    public void setReadOnly() {
-        readOnly = true;
-    }
-
-    public void clearBuffer() {
-        buffer = null;
-    }
-    
-    IOConsoleOutputStream getStream() {
-        return outputStream;
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartitioner.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartitioner.java
deleted file mode 100644
index 82d9d38..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsolePartitioner.java
+++ /dev/null
@@ -1,673 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentPartitionerExtension;
-import org.eclipse.jface.text.IRegion;
-import org.eclipse.jface.text.ITypedRegion;
-import org.eclipse.jface.text.Region;
-import org.eclipse.swt.custom.StyleRange;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsoleDocumentPartitioner;
-import org.eclipse.ui.console.IOConsole;
-import org.eclipse.ui.console.IOConsoleInputStream;
-import org.eclipse.ui.console.IOConsoleOutputStream;
-import org.eclipse.ui.progress.WorkbenchJob;
-
-/**
- * Partitions an IOConsole's document
- * @since 3.1
- *
- */
-public class IOConsolePartitioner implements IConsoleDocumentPartitioner, IDocumentPartitionerExtension {
-	private PendingPartition consoleClosedPartition;
-	private IDocument document;
-	private ArrayList partitions;
-	/**
-	 * Blocks of data that have not yet been appended to the document.
-	 */
-	private ArrayList pendingPartitions;
-	/**
-	 * A list of PendingPartitions to be appended by the updateJob
-	 */
-	private ArrayList updatePartitions;
-	/**
-	 * The last partition appended to the document
-	 */
-	private IOConsolePartition lastPartition;
-	/**
-	 * Job that appends pending partitions to the document.
-	 */
-	private QueueProcessingJob queueJob;	    
-	/**
-	 * The input stream attached to this document.
-	 */
-	private IOConsoleInputStream inputStream;
-	/**
-	 * Flag to indicate that the updateJob is updating the document.
-	 */
-	private boolean updateInProgress;
-	/**
-	 * A list of partitions containing input from the console, that have
-	 * not been appended to the input stream yet.
-	 */
-	private ArrayList inputPartitions;
-	/**
-	 * offset used by updateJob
-	 */
-	private int firstOffset;
-	/**
-	 * An array of legal line delimiters
-	 */
-	private String[] lld;
-	private int highWaterMark = -1;
-	private int lowWaterMark = -1;
-    private boolean connected = false;
-
-    private IOConsole console;
-	
-	private TrimJob trimJob = new TrimJob();
-	/**
-	 * Lock for appending to and removing from the document - used
-	 * to synchronize addition of new text/partitions in the update
-	 * job and handling buffer overflow/clearing of the console. 
-	 */
-	private Object overflowLock = new Object();
-	
-	public IOConsolePartitioner(IOConsoleInputStream inputStream, IOConsole console) {
-		this.inputStream = inputStream;
-		this.console = console;
-		trimJob.setRule(console.getSchedulingRule());
-	}
-	
-	public IDocument getDocument() {
-		return document;
-	}
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#connect(org.eclipse.jface.text.IDocument)
-	 */
-	public void connect(IDocument doc) {
-		document = doc;
-		document.setDocumentPartitioner(this);
-		lld = document.getLegalLineDelimiters();
-		partitions = new ArrayList();
-		pendingPartitions = new ArrayList();
-		inputPartitions = new ArrayList();
-		queueJob = new QueueProcessingJob();
-		queueJob.setSystem(true);
-		queueJob.setRule(console.getSchedulingRule());
-		connected = true;
-	}
-	
-	public int getHighWaterMark() {
-	    return highWaterMark;
-	}
-	
-	public int getLowWaterMark() {
-	    return lowWaterMark;
-	}
-	
-	public void setWaterMarks(int low, int high) {
-		lowWaterMark = low;
-		highWaterMark = high;
-		ConsolePlugin.getStandardDisplay().asyncExec(new Runnable() {
-			public void run() {
-				checkBufferSize();
-			}
-		});
-	}
-	
-	/**
-	 * Notification from the console that all of its streams have been closed.
-	 */
-    public void streamsClosed() {
-        consoleClosedPartition = new PendingPartition(null, null);
-        synchronized (pendingPartitions) {
-            pendingPartitions.add(consoleClosedPartition);
-        }
-        queueJob.schedule(); //ensure that all pending partitions are processed.
-    }
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#disconnect()
-	 */
-	public void disconnect() {
-		synchronized (overflowLock) {    
-			document = null;
-			partitions.clear();
-			connected = false;
-			try {
-	            inputStream.close();
-	        } catch (IOException e) {
-	        }
-		}
-	}
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)
-	 */
-	public void documentAboutToBeChanged(DocumentEvent event) {
-	}
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#documentChanged(org.eclipse.jface.text.DocumentEvent)
-	 */
-	public boolean documentChanged(DocumentEvent event) {
-		return documentChanged2(event) != null;
-	}
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#getLegalContentTypes()
-	 */
-	public String[] getLegalContentTypes() {
-		return new String[] { IOConsolePartition.OUTPUT_PARTITION_TYPE, IOConsolePartition.INPUT_PARTITION_TYPE };
-	}
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#getContentType(int)
-	 */
-	public String getContentType(int offset) {
-		return getPartition(offset).getType();
-	}
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#computePartitioning(int, int)
-	 */
-	public ITypedRegion[] computePartitioning(int offset, int length) {					
-		int rangeEnd = offset + length;
-		int left= 0;
-		int right= partitions.size() - 1;
-		int mid= 0;
-		IOConsolePartition position= null;
-		
-		if (left == right) {
-		    return new IOConsolePartition[]{(IOConsolePartition) partitions.get(0)};
-		}
-		while (left < right) {
-			
-			mid= (left + right) / 2;
-				
-			position= (IOConsolePartition) partitions.get(mid);
-			if (rangeEnd < position.getOffset()) {
-				if (left == mid)
-					right= left;
-				else
-					right= mid -1;
-			} else if (offset > (position.getOffset() + position.getLength() - 1)) {
-				if (right == mid)
-					left= right;
-				else
-					left= mid  +1;
-			} else {
-				left= right= mid;
-			}
-		}
-		
-		
-		List list = new ArrayList();
-		int index = left - 1;
-		if (index >= 0) {
-		    position= (IOConsolePartition) partitions.get(index);
-			while (index >= 0 && (position.getOffset() + position.getLength()) > offset) {
-				index--;
-				if (index >= 0) {
-					position= (IOConsolePartition) partitions.get(index);
-				}
-			}		    
-		}
-		index++;
-		position= (IOConsolePartition) partitions.get(index);
-		while (index < partitions.size() && (position.getOffset() < rangeEnd)) {
-			list.add(position);
-			index++;
-			if (index < partitions.size()) {
-				position= (IOConsolePartition) partitions.get(index);
-			}
-		}
-		
-		return (ITypedRegion[]) list.toArray(new IOConsolePartition[list.size()]);
-	}    
-
-	
-	/*
-	 *  (non-Javadoc)
-	 * @see org.eclipse.jface.text.IDocumentPartitioner#getPartition(int)
-	 */
-	public ITypedRegion getPartition(int offset) {
-		for (int i = 0; i < partitions.size(); i++) {
-			ITypedRegion partition = (ITypedRegion) partitions.get(i);
-			int start = partition.getOffset();
-			int end = start + partition.getLength();
-			if (offset >= start && offset < end) {
-				return partition;
-			} 
-		}
-		
-		if (lastPartition == null)  {
-			synchronized(partitions) {
-				lastPartition = new IOConsolePartition(inputStream, ""); //$NON-NLS-1$
-				lastPartition.setOffset(offset);
-				partitions.add(lastPartition);
-				inputPartitions.add(lastPartition);
-			}
-		}
-		return lastPartition;
-	}
-		
-	/**
-	 * Enforces the buffer size.
-	 * When the number of lines in the document exceeds the high water mark, the 
-	 * beginning of the document is trimmed until the number of lines equals the 
-	 * low water mark.
-	 */
-	private void checkBufferSize() {
-		if (document != null && highWaterMark > 0) {
-			int length = document.getLength();
-			if (length > highWaterMark) {
-			    if (trimJob.getState() == Job.NONE) { //if the job isn't already running
-				    trimJob.setOffset(length - lowWaterMark);
-				    trimJob.schedule();
-			    }
-			}
-		}
-	}
-	
-	/**
-	 * Clears the console
-	 */
-	public void clearBuffer() {
-	    synchronized (overflowLock) {
-	        trimJob.setOffset(-1);
-		    trimJob.schedule();
-        }
-	}
-	
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.eclipse.jface.text.IDocumentPartitionerExtension#documentChanged2(org.eclipse.jface.text.DocumentEvent)
-	 */
-	public IRegion documentChanged2(DocumentEvent event) {
-	    if (document == null) {
-	        return null; //another thread disconnected the partitioner
-	    }
-		if (document.getLength() == 0) { //document cleared
-			partitions.clear();
-			inputPartitions.clear();
-			pendingPartitions.clear();     
-			lastPartition = null;
-			return new Region(0, 0);
-		}
-		
-		
-		if (updateInProgress) {
-			synchronized(partitions) {
-				if (updatePartitions != null) {
-				    for (Iterator i = updatePartitions.iterator(); i.hasNext(); ) {
-				        PendingPartition pp = (PendingPartition) i.next();
-				        if (pp == consoleClosedPartition) {
-				            continue;
-				        }
-				        
-				        int ppLen = pp.text.length();
-				        if (lastPartition != null && lastPartition.getStream() == pp.stream) {
-				            int len = lastPartition.getLength();
-				            lastPartition.setLength(len + ppLen);
-				        } else {
-				            IOConsolePartition partition = new IOConsolePartition(pp.stream, ppLen);
-				            partition.setOffset(firstOffset);				        
-				            lastPartition = partition;
-				            partitions.add(partition);
-				        }
-				        firstOffset += ppLen;
-				    }
-				}
-			}
-		} else {// user input.
-			int amountDeleted = event.getLength() ;
-			
-			if (amountDeleted > 0) {
-				int offset = event.fOffset;    
-				IOConsolePartition partition = (IOConsolePartition) getPartition(offset);
-				if(partition == lastPartition) {
-					partition.delete(event.fOffset-partition.getOffset(), amountDeleted);
-				} 
-			}
-			
-			synchronized(partitions) {
-				if (lastPartition == null || lastPartition.isReadOnly()) {
-					lastPartition = new IOConsolePartition(inputStream, event.fText); //$NON-NLS-1$
-					lastPartition.setOffset(event.fOffset);
-					partitions.add(lastPartition);
-					inputPartitions.add(lastPartition);
-				} else {
-					lastPartition.insert(event.fText, (event.fOffset-lastPartition.getOffset()));
-				}
-				
-				int lastLineDelimiter = -1;
-				String partitionText = lastPartition.getString();
-				for (int i = 0; i < lld.length; i++) {
-					String ld = lld[i];
-					int index = partitionText.lastIndexOf(ld);
-					if (index != -1) {
-					    index += ld.length();
-					}
-					if (index > lastLineDelimiter) {
-					    lastLineDelimiter = index;
-					}
-				}
-				if (lastLineDelimiter != -1) {
-					StringBuffer input = new StringBuffer();
-					Iterator it = inputPartitions.iterator();
-					while (it.hasNext()) {
-					    IOConsolePartition partition = (IOConsolePartition) it.next();
-					    if (partition.getOffset() + partition.getLength() <= event.fOffset + lastLineDelimiter) {
-					        if (partition == lastPartition) {
-					            lastPartition = null;
-					        }
-					        input.append(partition.getString());
-							partition.clearBuffer();
-							partition.setReadOnly();
-							it.remove();
-					    } else {
-					        //create a new partition containing everything up to the line delimiter
-					        //and append that to the string buffer.
-					        String contentBefore = partitionText.substring(0, lastLineDelimiter);
-					        IOConsolePartition newPartition = new IOConsolePartition(inputStream, contentBefore);
-					        newPartition.setOffset(partition.getOffset());
-					        newPartition.setReadOnly();
-					        newPartition.clearBuffer();
-					        int index = partitions.indexOf(partition);
-						    partitions.add(index, newPartition);
-					        input.append(contentBefore);
-					        //delete everything that has been appended to the buffer.
-					        partition.delete(0, lastLineDelimiter);
-					        partition.setOffset(lastLineDelimiter + partition.getOffset());
-					        lastLineDelimiter = 0;
-					    }
-					}
-					if (input.length() > 0) {
-					    inputStream.appendData(input.toString());
-					}
-
-				}
-			}
-		}   
-		
-		return new Region(event.fOffset, event.fText.length());
-	}
-	
-	private void setUpdateInProgress(boolean b) {
-		updateInProgress = b;
-	}
-		
-	/**
-	 * A stream has been appended, add to pendingPartions list and schedule updateJob.
-	 * updateJob is scheduled with a slight delay, this allows the console to run the job
-	 * less frequently and update the document with a greater amount of data each time 
-	 * the job is run
-	 * @param stream The stream that was written to.
-	 * @param s The string that should be appended to the document.
-	 */
-	public void streamAppended(IOConsoleOutputStream stream, String s) throws IOException {
-        if (document == null) {
-            throw new IOException("Document is closed"); //$NON-NLS-1$
-        }
-		synchronized(pendingPartitions) {
-			PendingPartition last = (PendingPartition) (pendingPartitions.size() > 0 ? pendingPartitions.get(pendingPartitions.size()-1) : null);
-			if (last != null && last.stream == stream) {
-				last.append(s);
-			} else {
-				pendingPartitions.add(new PendingPartition(stream, s));
-				queueJob.schedule(100);
-			}
-		}
-	}
-	
-	/**
-	 * Holds data until updateJob can be run and the document can be updated.
-	 */
-	private class PendingPartition {
-		StringBuffer text = new StringBuffer(8192);
-		IOConsoleOutputStream stream;
-		
-		PendingPartition(IOConsoleOutputStream stream, String text) {
-			this.stream = stream;
-			if (text != null) {
-                append(text);
-            }
-		}
-		
-		void append(String moreText) {
-			text.append(moreText);
-		}
-	}
-	
-	/**
-	 * Updates the document. Will append everything that is available before 
-	 * finishing.
-	 */
-	private class QueueProcessingJob extends Job {
-
-        QueueProcessingJob() {
-			super("IOConsole Updater"); //$NON-NLS-1$
-		}
-		
-        /*
-         *  (non-Javadoc)
-         * @see org.eclipse.core.internal.jobs.InternalJob#run(org.eclipse.core.runtime.IProgressMonitor)
-         */
-		protected IStatus run(IProgressMonitor monitor) {
-		    synchronized (overflowLock) {
-
-				Display display = ConsolePlugin.getStandardDisplay();
-				
-				ArrayList pendingCopy = new ArrayList();
-				StringBuffer buffer = null;
-				boolean consoleClosed = false;
-				while (display != null && pendingPartitions.size() > 0) {
-					synchronized(pendingPartitions) {
-						pendingCopy.addAll(pendingPartitions);
-						pendingPartitions.clear();
-					}
-					
-					buffer = new StringBuffer();
-					for (Iterator i = pendingCopy.iterator(); i.hasNext(); ) {
-					    PendingPartition pp = (PendingPartition) i.next();
-					    if (pp != consoleClosedPartition) { 
-					        buffer.append(pp.text);
-					    } else {
-					        consoleClosed = true;
-					    }
-					}
-				}
-				
-				final ArrayList finalCopy = pendingCopy;
-				final String toAppend = buffer.toString();
-				final boolean notifyClosed = consoleClosed;
-				
-				display.asyncExec(new Runnable() {
-                    public void run() {
-				        if (connected) {
-				            setUpdateInProgress(true);
-				            updatePartitions = finalCopy;
-				            firstOffset = document.getLength();
-				            try {
-				                document.replace(firstOffset, 0, toAppend.toString());
-				            } catch (BadLocationException e) {
-				            }
-				            updatePartitions = null;
-				            setUpdateInProgress(false);
-				        }
-				        if (notifyClosed) {
-				            console.partitionerFinished();
-			            }
-				        checkBufferSize();
-				    }
-				});
-		    }
-			
-			return Status.OK_STATUS;
-		}        
-		
-        /* 
-         * Job will process as much as it can each time it's run, but it gets
-         * scheduled everytime a PendingPartition is added to the list, meaning
-         * that this job could get scheduled unnecessarily in cases of heavy output.
-         * Note however, that schedule() will only reschedule a running/scheduled Job
-         * once even if it's called many times.
-         */
-        public boolean shouldRun() {
-            boolean shouldRun = connected && pendingPartitions != null && pendingPartitions.size() > 0;
-            return shouldRun;
-        }
-	}
-
- 
-    
-	
-	
-
-    
-    /**
-     * Job to trim the console document, runs in the  UI thread.
-     */
-    private class TrimJob extends WorkbenchJob {
-        
-        /**
-         * trims output up to the line containing the given offset,
-         * or all output if -1.
-         */
-        private int truncateOffset;
-        
-        /**
-         * Creates a new job to trim the buffer.
-         */
-        TrimJob() {
-            super("Trim Job"); //$NON-NLS-1$
-            setSystem(true);
-        }
-        
-        /**
-         * Sets the trim offset.
-         * 
-         * @param offset trims output up to the line containing the given offset
-         */
-        public void setOffset(int offset) {
-            truncateOffset = offset;
-        }
-
-        /* (non-Javadoc)
-         * @see org.eclipse.ui.progress.UIJob#runInUIThread(org.eclipse.core.runtime.IProgressMonitor)
-         */
-        public IStatus runInUIThread(IProgressMonitor monitor) {
-        	if (document == null) {
-        		return Status.OK_STATUS;
-        	}
-        	
-        	int length = document.getLength();
-        	if (truncateOffset < length) {
-        		synchronized (overflowLock) {
-        			try {
-        				if (truncateOffset < 0) {
-        				    // clear
-        				    setUpdateInProgress(true);
-        					document.set(""); //$NON-NLS-1$
-        					setUpdateInProgress(false);
-        					partitions.clear();        					
-        				} else {
-        				    // overflow
-        				    int cutoffLine = document.getLineOfOffset(truncateOffset);
-        				    int cutOffset = document.getLineOffset(cutoffLine);
-
-
-        					// set the new length of the first partition
-        					IOConsolePartition partition = (IOConsolePartition) getPartition(cutOffset);
-        					partition.setLength(partition.getOffset() + partition.getLength() - cutOffset);
-        					
-        					setUpdateInProgress(true);
-        					document.replace(0, cutOffset, ""); //$NON-NLS-1$
-        					setUpdateInProgress(false);
-        					
-        					//remove partitions and reset Partition offsets
-        					int index = partitions.indexOf(partition);
-        					for (int i = 0; i < index; i++) {
-                                partitions.remove(0);
-                            }
-        					
-        					int offset = 0;
-        					for (Iterator i = partitions.iterator(); i.hasNext(); ) {
-        						IOConsolePartition p = (IOConsolePartition) i.next();
-        						p.setOffset(offset);
-        						offset += p.getLength();
-        					}
-        				}
-        			} catch (BadLocationException e) {
-        			}
-        		}
-        	}
-        	return Status.OK_STATUS;
-        }
-    }
-
-
-
-
-
-
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleDocumentPartitioner#isReadOnly(int)
-     */
-    public boolean isReadOnly(int offset) {
-        return ((IOConsolePartition)getPartition(offset)).isReadOnly();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IConsoleDocumentPartitioner#computeStyleRange(int, int)
-     */
-    public StyleRange[] getStyleRanges(int offset, int length) {
-    	if (!connected) {
-    		return new StyleRange[0];
-    	}
-        IOConsolePartition[] computedPartitions = (IOConsolePartition[])computePartitioning(offset, length);
-        StyleRange[] styles = new StyleRange[computedPartitions.length];        
-        for (int i = 0; i < computedPartitions.length; i++) {                
-            int rangeStart = Math.max(computedPartitions[i].getOffset(), offset);
-            int rangeLength = computedPartitions[i].getLength();
-            styles[i] = computedPartitions[i].getStyleRange(rangeStart, rangeLength);
-        }
-        return styles;
-    }
-    
-	
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsoleViewer.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsoleViewer.java
deleted file mode 100644
index 6d6e6d5..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/IOConsoleViewer.java
+++ /dev/null
@@ -1,140 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
-import org.eclipse.jface.text.IDocument;
-import org.eclipse.jface.text.IDocumentListener;
-import org.eclipse.swt.custom.StyledText;
-import org.eclipse.swt.events.VerifyEvent;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsoleDocumentPartitioner;
-import org.eclipse.ui.console.TextConsole;
-import org.eclipse.ui.console.TextConsoleViewer;
-
-/**
- * Viewer used to display an IOConsole
- * 
- * @since 3.1
- */
-public class IOConsoleViewer extends TextConsoleViewer {
-    /**
-     * will always scroll with output if value is true.
-     */
-    private boolean fAutoScroll = true;
-
-    private IDocumentListener fDocumentListener;
-    
-    public IOConsoleViewer(Composite parent, TextConsole console) {
-        super(parent, console);
-    }
-
-    public boolean isAutoScroll() {
-        return fAutoScroll;
-    }
-
-    public void setAutoScroll(boolean scroll) {
-        fAutoScroll = scroll;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.jface.text.TextViewer#handleVerifyEvent(org.eclipse.swt.events.VerifyEvent)
-     */
-    protected void handleVerifyEvent(VerifyEvent e) {
-        IDocument doc = getDocument();
-        String[] legalLineDelimiters = doc.getLegalLineDelimiters();
-        String eventString = e.text;
-
-        IConsoleDocumentPartitioner partitioner = (IConsoleDocumentPartitioner) doc.getDocumentPartitioner();
-        if (!partitioner.isReadOnly(e.start)) {
-            boolean isCarriageReturn = false;
-            for (int i = 0; i < legalLineDelimiters.length; i++) {
-                if (e.text.equals(legalLineDelimiters[i])) {
-                    isCarriageReturn = true;
-                    break;
-                }
-            }
-
-            if (!isCarriageReturn) {
-                super.handleVerifyEvent(e);
-                return;
-            }
-        }
-
-        int length = doc.getLength();
-        if (e.start == length) {
-            super.handleVerifyEvent(e);
-        } else {
-            try {
-                doc.replace(length, 0, eventString);
-            } catch (BadLocationException e1) {
-            }
-            e.doit = false;
-        }
-    }
-
-    /**
-     * makes the associated text widget uneditable.
-     */
-    public void setReadOnly() {
-        ConsolePlugin.getStandardDisplay().asyncExec(new Runnable() {
-            public void run() {
-                StyledText text = getTextWidget();
-                if (text != null) {
-                    text.setEditable(false);
-                }
-            }
-        });
-    }
-
-    /**
-     * @return <code>false</code> if text is editable
-     */
-    public boolean isReadOnly() {
-        return !getTextWidget().getEditable();
-    }
-   
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.text.ITextViewer#setDocument(org.eclipse.jface.text.IDocument)
-     */
-    public void setDocument(IDocument document) {
-        IDocument oldDocument= getDocument();
-        
-        super.setDocument(document);
-        
-        if (oldDocument != null) {
-            oldDocument.removeDocumentListener(getDocumentListener());
-        }
-        if (document != null) {
-            document.addDocumentListener(getDocumentListener());
-        }
-    }
-    
-    private IDocumentListener getDocumentListener() {
-        if (fDocumentListener == null) {
-            fDocumentListener= new IDocumentListener() {
-                public void documentAboutToBeChanged(DocumentEvent event) {
-                }
-
-                public void documentChanged(DocumentEvent event) {
-                    if (fAutoScroll) {
-                        revealEndOfDocument();
-                    }
-                }
-            };
-        }
-        return fDocumentListener;
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/OpenConsoleAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/OpenConsoleAction.java
deleted file mode 100644
index c7d0954..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/OpenConsoleAction.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.ActionContributionItem;
-import org.eclipse.jface.action.IMenuCreator;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Menu;
-import org.eclipse.ui.activities.WorkbenchActivityHelper;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsoleFactory;
-
-/**
- * @since 3.1
- */
-public class OpenConsoleAction extends Action implements IMenuCreator {
-
-    private ConsoleFactoryExtension[] fFactoryExtensions;
-    private Menu fMenu;
-
-    public OpenConsoleAction() {
-        fFactoryExtensions = ((ConsoleManager)ConsolePlugin.getDefault().getConsoleManager()).getConsoleFactoryExtensions();
-		setText(ConsoleMessages.OpenConsoleAction_0); //$NON-NLS-1$
-		setToolTipText(ConsoleMessages.OpenConsoleAction_1);  //$NON-NLS-1$
-		setImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_ELCL_NEW_CON));
-		setMenuCreator(this);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IMenuCreator#dispose()
-     */
-    public void dispose() {
-        fFactoryExtensions = null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Control)
-     */
-    public Menu getMenu(Control parent) {
-        if (fMenu != null) {
-            fMenu.dispose();
-        }
-        
-        fMenu= new Menu(parent);
-        int accel = 1;
-        for (int i = 0; i < fFactoryExtensions.length; i++) {
-            ConsoleFactoryExtension extension = fFactoryExtensions[i];
-            if (!WorkbenchActivityHelper.filterItem(extension) && extension.isEnabled()) {
-                String label = extension.getLabel();
-                ImageDescriptor image = extension.getImageDescriptor();
-                addActionToMenu(fMenu, new ConsoleFactoryAction(label, image, extension), accel);
-                accel++;
-            }
-        }
-        return fMenu;
-    }
-    
-	private void addActionToMenu(Menu parent, Action action, int accelerator) {
-		if (accelerator < 10) {
-		    StringBuffer label= new StringBuffer();
-			//add the numerical accelerator
-			label.append('&');
-			label.append(accelerator);
-			label.append(' ');
-			label.append(action.getText());
-			action.setText(label.toString());
-		}
-		
-		ActionContributionItem item= new ActionContributionItem(action);
-		item.fill(parent, -1);
-	}
-
-    /* (non-Javadoc)
-     * @see org.eclipse.jface.action.IMenuCreator#getMenu(org.eclipse.swt.widgets.Menu)
-     */
-    public Menu getMenu(Menu parent) {
-        return null;
-    }
-    
-    private class ConsoleFactoryAction extends Action {
-        
-        private ConsoleFactoryExtension fConfig;
-        private IConsoleFactory fFactory;
-
-        public ConsoleFactoryAction(String label, ImageDescriptor image, ConsoleFactoryExtension extension) {
-            setText(label);
-            if (image != null) {
-                setImageDescriptor(image);
-            }
-            fConfig = extension;
-        }
-        
-        
-        /* (non-Javadoc)
-         * @see org.eclipse.jface.action.IAction#run()
-         */
-        public void run() {
-            try {
-                if (fFactory == null) {
-                    fFactory = fConfig.createFactory();
-                }
-                
-                fFactory.openConsole();
-            } catch (CoreException e) {
-                ConsolePlugin.log(e);
-            }
-        }
-        
-        /* (non-Javadoc)
-         * @see org.eclipse.jface.action.IAction#runWithEvent(org.eclipse.swt.widgets.Event)
-         */
-        public void runWithEvent(Event event) {
-            run();
-        }
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListener.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListener.java
deleted file mode 100644
index eab7513..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListener.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.ui.console.IPatternMatchListener;
-import org.eclipse.ui.console.IPatternMatchListenerDelegate;
-import org.eclipse.ui.console.PatternMatchEvent;
-import org.eclipse.ui.console.TextConsole;
-
-public class PatternMatchListener implements IPatternMatchListener {
-
-    private PatternMatchListenerExtension fExtension;
-    private IPatternMatchListenerDelegate fDelegate;
-    
-    public PatternMatchListener(PatternMatchListenerExtension extension) throws CoreException {
-        fExtension = extension;
-        fDelegate = fExtension.createDelegate();
-    }   
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#getPattern()
-     */
-    public String getPattern() {
-        return fExtension.getPattern();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#getCompilerFlags()
-     */
-    public int getCompilerFlags() {
-        return fExtension.getCompilerFlags();
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#matchFound(org.eclipse.ui.console.PatternMatchEvent)
-     */
-    public void matchFound(PatternMatchEvent event) {
-        fDelegate.matchFound(event);
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListenerDelegate#connect(org.eclipse.ui.console.TextConsole)
-     */
-    public void connect(TextConsole console) {
-        fDelegate.connect(console);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.console.IPatternMatchListener#disconnect()
-     */
-    public void disconnect() {
-        fDelegate.disconnect();
-    }
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.console.IPatternMatchListener#getQuickPattern()
-	 */
-	public String getLineQualifier() {
-		return fExtension.getQuickPattern();
-	}
-
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListenerExtension.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListenerExtension.java
deleted file mode 100644
index 9347c02..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PatternMatchListenerExtension.java
+++ /dev/null
@@ -1,128 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import java.lang.reflect.Field;
-
-import org.eclipse.core.expressions.EvaluationContext;
-import org.eclipse.core.expressions.EvaluationResult;
-import org.eclipse.core.expressions.Expression;
-import org.eclipse.core.expressions.ExpressionConverter;
-import org.eclipse.core.expressions.ExpressionTagNames;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.ui.IPluginContribution;
-import org.eclipse.ui.console.ConsolePlugin;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IPatternMatchListenerDelegate;
-
-public class PatternMatchListenerExtension implements IPluginContribution {
-
-    private IConfigurationElement fConfig;
-    private Expression fEnablementExpression;
-    private String fPattern;
-    private int fFlags = -1;
-   
-    public PatternMatchListenerExtension(IConfigurationElement extension) {
-        fConfig = extension;
-    }    
-
-    /*
-     * returns the integer value of the flags defined in java.util.regex.Pattern.
-     * Both <code>Pattern.MULTILINE</code> and <code>MULTILINE</code> will return
-     * the same value.
-     */
-    public int parseFlags(String flagsElement) {
-        int val = 0;
-        if (flagsElement == null) {
-            return val;
-        }
-            
-        try {
-            flagsElement = flagsElement.replaceAll("Pattern.", ""); //$NON-NLS-1$ //$NON-NLS-2$
-            String[] tokens = flagsElement.split("\\s\\|\\s"); //$NON-NLS-1$
-            Class clazz = Class.forName("java.util.regex.Pattern"); //$NON-NLS-1$
-            
-            for (int i = 0; i < tokens.length; i++) {
-                Field field = clazz.getDeclaredField(tokens[i]);
-                val |= field.getInt(null);
-            }
-        } catch (ClassNotFoundException e) {
-            ConsolePlugin.log(e);
-        } catch (NoSuchFieldException e) {
-            ConsolePlugin.log(e);
-        } catch (IllegalAccessException e) {
-            ConsolePlugin.log(e);
-        }
-        return val;
-    }
-    
-    public boolean isEnabledFor(IConsole console) throws CoreException {
-        EvaluationContext context = new EvaluationContext(null, console);
-        EvaluationResult evaluationResult = getEnablementExpression().evaluate(context);
-        return evaluationResult == EvaluationResult.TRUE;
-    }
-    
-    public IPatternMatchListenerDelegate createDelegate() throws CoreException {
-        return (IPatternMatchListenerDelegate) fConfig.createExecutableExtension("class"); //$NON-NLS-1$
-    }
-    
-    public Expression getEnablementExpression() throws CoreException {
-		if (fEnablementExpression == null) {
-			IConfigurationElement[] elements = fConfig.getChildren(ExpressionTagNames.ENABLEMENT);
-			IConfigurationElement enablement = elements.length > 0 ? elements[0] : null; 
-
-			if (enablement != null) {
-			    fEnablementExpression = ExpressionConverter.getDefault().perform(enablement);
-			}
-		}
-		return fEnablementExpression;
-    }
-    
-    /*
-     * returns the regular expression to be matched.
-     */
-    public String getPattern() {
-        if (fPattern == null) {
-            fPattern = fConfig.getAttributeAsIs("regex"); //$NON-NLS-1$
-        }
-        return fPattern;
-    }
-
-    /*
-     * returns the flags to be used by <code>Pattern.compile(pattern, flags)</code>
-     */
-    public int getCompilerFlags() {
-        if(fFlags < 0) {
-            String flagsAttribute = fConfig.getAttributeAsIs("flags"); //$NON-NLS-1$
-            fFlags = parseFlags(flagsAttribute);
-        }
-        return fFlags;
-    }
-    
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPluginContribution#getLocalId()
-     */
-    public String getLocalId() {
-        return fConfig.getAttribute("id"); //$NON-NLS-1$
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IPluginContribution#getPluginId()
-     */
-    public String getPluginId() {
-        return fConfig.getNamespace();
-    }
-
-    public String getQuickPattern() {
-    	return fConfig.getAttribute("qualifier"); //$NON-NLS-1$
-    }
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PinConsoleAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PinConsoleAction.java
deleted file mode 100644
index ff324bb..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/PinConsoleAction.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.ui.console.IConsoleView;
-import org.eclipse.ui.texteditor.IUpdate;
-
-/**
- * Pins the currently visible console in a console view.
- */
-public class PinConsoleAction extends Action implements IUpdate {
-	
-	private IConsoleView fView = null;
-
-	/**
-	 * Constructs a 'pin console' action
-	 */
-	public PinConsoleAction(IConsoleView view) {
-		super(ConsoleMessages.PinConsoleAction_0, IAction.AS_CHECK_BOX); //$NON-NLS-1$
-		setToolTipText(ConsoleMessages.PinConsoleAction_1); //$NON-NLS-1$
-		setImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_ELCL_PIN));
-		setDisabledImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_DLCL_PIN));
-		setHoverImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_LCL_PIN));
-		fView = view;
-		update();
-	}
-	
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-        fView.setPinned(isChecked());
-	}
-		
-	/* (non-Javadoc)
-	 * @see org.eclipse.ui.texteditor.IUpdate#update()
-	 */
-	public void update() {
-		setEnabled(fView.getConsole() != null);
-		setChecked(fView.isPinned());
-	}
-}
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ScrollLockAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ScrollLockAction.java
deleted file mode 100644
index 997da2e..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ScrollLockAction.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2004, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.console.IConsoleView;
-
-/**
- * Toggles console auto-scroll
- * 
- * @since 3.1
- */
-public class ScrollLockAction extends Action {
-
-    private IConsoleView fConsoleView;
-	
-	public ScrollLockAction(IConsoleView consoleView) {
-		super(ConsoleMessages.ScrollLockAction_0); //$NON-NLS-1$
-        fConsoleView = consoleView;
-		
-		setToolTipText(ConsoleMessages.ScrollLockAction_1);  //$NON-NLS-1$
-		setHoverImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_LCL_LOCK));		
-		setDisabledImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_DLCL_LOCK));
-		setImageDescriptor(ConsolePluginImages.getImageDescriptor(IInternalConsoleConstants.IMG_ELCL_LOCK));
-
-		boolean checked = fConsoleView.getScrollLock();  
-		setChecked(checked);
-	}
-
-	/**
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-        fConsoleView.setScrollLock(isChecked());
-	}
-	
-	public void dispose() {
-        fConsoleView = null;
-	}
-
-}
-
diff --git a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ShowConsoleAction.java b/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ShowConsoleAction.java
deleted file mode 100644
index a8907bd..0000000
--- a/org.eclipse.ui.console/src/org/eclipse/ui/internal/console/ShowConsoleAction.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.ui.internal.console;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.ui.console.IConsole;
-import org.eclipse.ui.console.IConsoleView;
-
-/**
- * Shows a specific console in the console view
- */
-public class ShowConsoleAction extends Action {
-	
-	private IConsole fConsole;
-	private IConsoleView fView;
-
-	/* (non-Javadoc)
-	 * @see org.eclipse.jface.action.IAction#run()
-	 */
-	public void run() {
-		if (!fConsole.equals(fView.getConsole())) {
-            boolean pinned = fView.isPinned();
-            if (pinned) {
-                fView.setPinned(false);
-            }
-		    fView.display(fConsole);
-            if (pinned) {
-               fView.setPinned(true); 
-            }
-		}
-	}
-
-	/**
-	 * Constructs an action to display the given console.
-	 * 
-	 * @param view the console view in which the given console is contained
-	 * @param console the console
-	 */
-	public ShowConsoleAction(IConsoleView view, IConsole console) {
-		super();
-		fConsole = console;
-		fView = view;
-		setText(console.getName());
-		setImageDescriptor(console.getImageDescriptor());
-	}
-}
diff --git a/org.eclipse.ui.externaltools/External Tools Base/org/eclipse/ui/externaltools/internal/ui/BuilderPropertyPage.java b/org.eclipse.ui.externaltools/External Tools Base/org/eclipse/ui/externaltools/internal/ui/BuilderPropertyPage.java
index 16e1b38..fde8356 100644
--- a/org.eclipse.ui.externaltools/External Tools Base/org/eclipse/ui/externaltools/internal/ui/BuilderPropertyPage.java
+++ b/org.eclipse.ui.externaltools/External Tools Base/org/eclipse/ui/externaltools/internal/ui/BuilderPropertyPage.java
@@ -67,6 +67,7 @@
 import org.eclipse.swt.widgets.Event;
 import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Shell;
 import org.eclipse.swt.widgets.Table;
 import org.eclipse.swt.widgets.TableItem;
 import org.eclipse.ui.PlatformUI;
@@ -213,6 +214,10 @@
 			Object element= null;
 			if (config != null) {
 				if (!config.isWorkingCopy() && !config.exists()) {
+                    Shell shell= getShell();
+                    if (shell == null) {
+                        return;
+                    }
 					IStatus status = new Status(IStatus.ERROR, IExternalToolConstants.PLUGIN_ID, 0, MessageFormat.format(ExternalToolsUIMessages.BuilderPropertyPage_Exists, new String[]{config.getLocation().toOSString()}), null); 	 //$NON-NLS-1$
 					ErrorDialog.openError(getShell(), ExternalToolsUIMessages.BuilderPropertyPage_errorTitle, //$NON-NLS-1$
 									MessageFormat.format(ExternalToolsUIMessages.BuilderPropertyPage_External_Tool_Builder__0__Not_Added_2, new String[]{config.getName()}),  //$NON-NLS-1$
@@ -240,7 +245,11 @@
 			boolean prompt= store.getBoolean(IPreferenceConstants.PROMPT_FOR_PROJECT_MIGRATION);
 			boolean proceed= true;
 			if (prompt) {
-				MessageDialogWithToggle dialog= MessageDialogWithToggle.openYesNoQuestion(getShell(), ExternalToolsUIMessages.BuilderPropertyPage_0, ExternalToolsUIMessages.BuilderPropertyPage_1, ExternalToolsUIMessages.BuilderPropertyPage_2, false, null, null); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+                Shell shell= getShell();
+                if (shell == null) {
+                    return;
+                }
+				MessageDialogWithToggle dialog= MessageDialogWithToggle.openYesNoQuestion(shell, ExternalToolsUIMessages.BuilderPropertyPage_0, ExternalToolsUIMessages.BuilderPropertyPage_1, ExternalToolsUIMessages.BuilderPropertyPage_2, false, null, null); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
 				proceed= dialog.getReturnCode() == IDialogConstants.YES_ID;
 				store.setValue(IPreferenceConstants.PROMPT_FOR_PROJECT_MIGRATION, !dialog.getToggleState());
 			}
@@ -390,6 +399,9 @@
 		} else if (button == downButton) {
 			moveSelectionDown();
 		}
+        if (getControl().isDisposed()) {
+            return;
+        }
 		handleTableSelectionChanged();
 		viewer.getTable().setFocus();
 	}
@@ -402,7 +414,11 @@
 		if (element instanceof ILaunchConfiguration) {
 			enableLaunchConfiguration((ILaunchConfiguration) element, event.getChecked());
 		} else if (element instanceof ICommand) {
-			if (MessageDialog.openConfirm(getShell(), ExternalToolsUIMessages.BuilderPropertyPage_6, ExternalToolsUIMessages.BuilderPropertyPage_7)) { //$NON-NLS-1$ //$NON-NLS-2$
+            Shell shell= getShell();
+            if (shell == null) {
+                return;
+            }
+			if (MessageDialog.openConfirm(shell, ExternalToolsUIMessages.BuilderPropertyPage_6, ExternalToolsUIMessages.BuilderPropertyPage_7)) { //$NON-NLS-1$ //$NON-NLS-2$
 				enableCommand((ICommand)element, event.getChecked());
 			} else {
 				viewer.removeCheckStateListener(this);
@@ -465,7 +481,11 @@
 			} catch (CoreException e) {
 			}
 		}
-		ElementListSelectionDialog dialog= new ElementListSelectionDialog(getShell(), new BuilderLabelProvider());
+        Shell shell= getShell();
+        if (shell == null) {
+            return;
+        }
+		ElementListSelectionDialog dialog= new ElementListSelectionDialog(shell, new BuilderLabelProvider());
 		dialog.setTitle(ExternalToolsUIMessages.BuilderPropertyPage_4); //$NON-NLS-1$
 		dialog.setMessage(ExternalToolsUIMessages.BuilderPropertyPage_5); //$NON-NLS-1$
 		dialog.setElements(configurations.toArray());
@@ -584,7 +604,11 @@
 	private int editConfiguration(ILaunchConfiguration config) {
 		ILaunchManager manager= DebugPlugin.getDefault().getLaunchManager();
 		manager.addLaunchConfigurationListener(configurationListener);
-		int code= DebugUITools.openLaunchConfigurationPropertiesDialog(getShell(), config, IExternalToolConstants.ID_EXTERNAL_TOOLS_BUILDER_LAUNCH_GROUP);
+        Shell shell= getShell();
+        if (shell == null) {
+            return Window.CANCEL;
+        }
+		int code= DebugUITools.openLaunchConfigurationPropertiesDialog(shell, config, IExternalToolConstants.ID_EXTERNAL_TOOLS_BUILDER_LAUNCH_GROUP);
 		manager.removeLaunchConfigurationListener(configurationListener);
 		return code;
 	}
@@ -599,8 +623,11 @@
 	 */
 	private ILaunchConfigurationType promptForConfigurationType() {
 		List externalToolTypes= getConfigurationTypes(IExternalToolConstants.ID_EXTERNAL_TOOLS_BUILDER_LAUNCH_CATEGORY);
-
-		ElementListSelectionDialog dialog = new ElementListSelectionDialog(getShell(), new BuilderLabelProvider());
+        Shell shell= getShell();
+        if (shell == null) {
+            return null;
+        }
+		ElementListSelectionDialog dialog = new ElementListSelectionDialog(shell, new BuilderLabelProvider());
 		dialog.setElements(externalToolTypes.toArray());
 		dialog.setMultipleSelection(false);
 		dialog.setTitle(ExternalToolsUIMessages.BuilderPropertyPage_Choose_configuration_type_8); //$NON-NLS-1$
@@ -697,6 +724,10 @@
 			// User has asked not to be prompted
 			return true;
 		}
+        Shell shell= getShell();
+        if (shell == null) {
+            return false;
+        }
 		// Warn the user that editing an old config will cause storage migration.
 		MessageDialogWithToggle dialog= MessageDialogWithToggle.openYesNoQuestion(getShell(), 
 			ExternalToolsUIMessages.BuilderPropertyPage_Migrate_project_builder_10, //$NON-NLS-1$
@@ -718,9 +749,12 @@
 		} else {
 			status = new Status(IStatus.ERROR, IExternalToolConstants.PLUGIN_ID, 0, ExternalToolsUIMessages.BuilderPropertyPage_statusMessage, e); //$NON-NLS-1$
 		}
-		ErrorDialog.openError(getShell(), ExternalToolsUIMessages.BuilderPropertyPage_errorTitle, //$NON-NLS-1$
-				ExternalToolsUIMessages.BuilderPropertyPage_errorMessage, //$NON-NLS-1$
-				status);
+        Shell shell= getShell();
+        if (shell != null) {
+            ErrorDialog.openError(shell, ExternalToolsUIMessages.BuilderPropertyPage_errorTitle, //$NON-NLS-1$
+                    ExternalToolsUIMessages.BuilderPropertyPage_errorMessage, //$NON-NLS-1$
+                    status);
+        }
 	}
 
 	/**
@@ -935,7 +969,10 @@
 						try {
 							workingCopy.doSave();
 						} catch (CoreException e) {
-							MessageDialog.openError(getShell(), ExternalToolsUIMessages.BuilderPropertyPage_39, MessageFormat.format(ExternalToolsUIMessages.BuilderPropertyPage_40, new String[] {workingCopy.getName()})); //$NON-NLS-1$ //$NON-NLS-2$
+                            Shell shell= getShell();
+                            if (shell != null) {
+                                MessageDialog.openError(shell, ExternalToolsUIMessages.BuilderPropertyPage_39, MessageFormat.format(ExternalToolsUIMessages.BuilderPropertyPage_40, new String[] {workingCopy.getName()})); //$NON-NLS-1$ //$NON-NLS-2$
+                            }
 						}
 					}
 				}
@@ -998,7 +1035,10 @@
 			configsToBeDeleted.add(config);
 			return newCommand;
 		} catch (CoreException exception) {
-			MessageDialog.openError(getShell(), ExternalToolsUIMessages.BuilderPropertyPage_13, ExternalToolsUIMessages.BuilderPropertyPage_error); //$NON-NLS-1$ //$NON-NLS-2$
+            Shell shell= getShell();
+            if (shell != null) {
+                MessageDialog.openError(shell, ExternalToolsUIMessages.BuilderPropertyPage_13, ExternalToolsUIMessages.BuilderPropertyPage_error); //$NON-NLS-1$ //$NON-NLS-2$
+            }
 			return null;
 		}
 	}
@@ -1160,4 +1200,11 @@
 		}
 		return super.performCancel();
 	}
+    
+    public Shell getShell() {
+        if (getControl().isDisposed()) {
+			return null;
+        }
+        return super.getShell();
+    }
 }