###############################################################################
# Copyright (c) 2000, 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

pluginName=JDI Debug UI
vmInstallTypePage=VM Install Type UI Page

accessAction.label=&Access

AddBreakpoint.label=Toggle &Breakpoint

addTypeStepFilterAction.label=&Filter Type
addTypeStepFilterAction.tooltip=Filter the selected type(s)
addPackageStepFilterAction.label=Filter Pac&kage
addPackageStepFilterAction.tooltip=Filter the selected package(s)

breakpointPropertiesAction.label=P&roperties...

caughtAction.label=&Caught

debugAction.label=&Debug...
debugAction.tooltip=Debug

debuggingJavaActivityName=Debugging Java

debugSourcePageName=Debugger Source Lookup

Display.label=Displa&y
Display.tooltip=Display Result of Evaluating Selected Text

editStepFiltersAction.label=Edit Ste&p Filters...
editStepFiltersAction.tooltip=Manage the set of defined step filters

Execute.label=E&xecute
Execute.tooltip=Evaluate the Selected Text

displayViewName=Display

dropFrameAction.label=&Drop to Frame
dropFrameAction.tooltip=Drop to Frame

filteringPage.label=Filtering
commonPage.label=Common

terminateEvaluationAction.label=&Terminate Evaluation
terminateEvaluationAction.tooltip=Terminate Current Evaluation

EnableBreakpoint.label=&Toggle Breakpoint Enabled

entryAction.label=Entr&y

exceptionAction.label=Add Java Exception Breakpoint
exceptionAction.accel.label=Add Java E&xception Breakpoint...
exceptionAction.tooltip=Add Java Exception Breakpoint

classPrepareAction.label=Add Class Load Break&point...

execArgPageName=Execution Arguments

exitAction.label=E&xit

hitCount.label=&Hit Count

Inspect.label=Insp&ect
Inspect.tooltip=Inspect Result of Evaluating Selected Text

installJREPageName=Installed JREs

snippetEditorPageName=Scrapbook Runtime

JavaBreakpointProperties.label=Breakpoint P&roperties...

javaDebugPrefName=Debug

JavaSnippetEditor.label= Scrapbook

javaStepFilterPrefName=Step Filtering
javaDetailFormattersPrefName=Detail Formatters

javaVariableHoverLabel=Variable Values
javaVariableHoverDescription=Shows the value of the selected variable when debugging.

JDTDebugActionSet.label=Java Debug

LauncherPropertyPage.name=Launcher

ManageBreakpointAction.label=Toggle Brea&kpoint

manageMethodBreakpointAction.label=Toggle &Method Breakpoint

manageWatchpointAction.label=Toggle &Watchpoint

toggleClassPrepareAction.label=Toggle Class Load Break&point

instanceFiltersAction.label=&Instance Breakpoints...

modificationAction.label=&Modification

openDeclType.label=O&pen Declaring Type
openDeclType.tooltip=Open the Declaring Type

openDeclTypeHierarchy.label=Open Declaring Type &Hierarchy
openDeclTypeHierarchy.tooltip=Open the Declaring Type's Hierarchy

openDeclVarType.label=&Open Declared Type
openDeclVarType.tooltip=Open the Variable's Declared Type

openDeclVarTypeHierarchy.label=Open Declared Type &Hierarchy
openDeclVarTypeHierarchy.tooltip=Open the Variable's Declared Type Hierarchy

openConcreteVarType.label=Open Conc&rete Type
openConcreteVarType.tooltip=Open the Variable's Concrete Implementation Type

openConcreteVarTypeHierarchy.label=Open Concrete Type Hierarch&y
openConcreteVarTypeHierarchy.tooltip=Open the Variable's Concrete Implementation Type Hierarchy

openRecType.label=Open Receiving T&ype
openRecType.tooltip=Open the Receiving Type

openRecTypeHierarchy.label=Open Receiving Type Hier&archy
openRecTypeHierarchy.tooltip=Open the Receiving Type's Hierarchy

newDetailFormatter.label=Ne&w Detail Formatter...
newDetailFormatter.tooltip=Associate a Detail Formatter with this Type

editDetailFormatter.label=Edit Detai&l Formatter...
editDetailFormatter.tooltip=Edit the Detail Formatter Associated with this Type

removeDetailFormatter.label=&Remove Detail Formatter
removeDetailFormatter.tooltip=Remove the Detail Formatter Associated with this Type

runAction.label=&Run...
runAction.tooltip=Run

RunMenu.label=&Run

runToLineAction.label=Run to &Line

scrapbookLauncher.label=Java Scrapbook Page

showQualifiedAction.label=Show &Qualified Names
showQualifiedAction.tooltip=Show Qualified Names

showStaticAction.label=Show &Static Variables
showStaticAction.tooltip=Show Static Variables

showConstantsAction.label=Show &Constants
showConstatnsAction.tooltip=Show Static Final Variables

showSystemThreads.label=Show &System Threads
showSystemThreads.tooltip=Show System Threads

showNullEntriesAction.label=Show &Null Array Entries
showNullEntriesAction.tooltip=Show Null Array Entries

stepIntoSelectionAction.label=Step &into Selection
stepIntoSelectionAction.tooltip=Step into the selected method

suspendPolicy.label=&Suspend VM

Watch.label=Wa&tch

primitiveOptionsAction.label=&Java Primitives...
primitiveOptionsAction.tooltip=Set display options for Java primitives

uncaughtAction.label=&Uncaught

vmPageName=Runtime JRE

JavaApplicationShortcut.label=Java Application

jreSystemLibrary.name=JRE System Library

JDTLaunchActionSet.label=Java Launch

providerName=Eclipse.org

JavaSourceLocator.name=Prompting Java Source Locator

excludeExceptionLocationAction.label=E&xclude Exception Location
excludeExceptionLocationAction.tooltip=Excludes the Exception Location from Consideration in the Exception Breakpoint

MonitorsView.name= Threads and Monitors
MonitorTraceAction.label=&Suspend All Threads
MonitorTraceAction.tooltip=Suspend All Threads for Selected Debug Target
MonitorQuitAction.label=&Resume All Threads
MonitorQuitAction.tooltip=Resume All Threads for Selected Debug Target
DeadlockView.label=Deadlock View
DeadlockView.tooltip=Switch to Deadlock View
MonitorView.label=Monitor View
MonitorView.tooltip=Switch to Monitor View
ThreadView.label=Thread View
ThreadView.tooltip=Switch to Thread View

AppletShortcut.label=Java Applet

ActionDefinition.addClassPrepareBreakpoint.name=Add Class Load Breakpoint
ActionDefinition.addClassPrepareBreakpoint.description=Add a class load breakpoint
ActionDefinition.localJavaShortcut.name=Run as Java Application
ActionDefinition.localJavaShortcut.description=Attempts to run the currently selected element as a Java application
ActionDefinition.javaAppletShortcut.name=Run as Java Applet
ActionDefinition.javaAppletShortcut.description=Attempts to run the currently selected element as a Java applet
ActionDefinition.manageWatchpoint.name= Toggle Watchpoint
ActionDefinition.manageWatchpoint.description=Add or remove a Java watchpoint
ActionDefinition.manageMethodBreakpoint.name= Toggle Method Breakpoint
ActionDefinition.manageMethodBreakpoint.description=Add or remove a Java method breakpoint
ActionDefinition.addException.name=Add Java Exception Breakpoint
ActionDefinition.addException.description=Add a Java exception breakpoint
ActionDefinition.manageBreakpoint.name= Toggle Breakpoint
ActionDefinition.manageBreakpoint.description=Add or remove a Java Breakpoint
ActionDefinition.stepIntoSelection.name=Step Into Selection
ActionDefinition.stepIntoSelection.description=Step into the current selected statement
ActionDefinition.execute.name=Execute
ActionDefinition.execute.description=Evaluate selected text
ActionDefinition.display.name=Display
ActionDefinition.display.description=Display result of evaluating selected text
ActionDefinition.inspect.name=Inspect
ActionDefinition.inspect.description=Inspect result of evaluating selected text

AddBookmark.label=Add Boo&kmark...
AddBookmark.tooltip=Add Bookmark...
AddTask.label=Add &Task...
AddTask.tooltip=Add Task...

localJavaApplicationTabGroupDescription.debug=Create a configuration that will launch a Java virtual machine in debug mode.
localJavaApplicationTabGroupDescription.run=Create a configuration that will launch a Java virtual machine.
remoteJavaApplicationTabGroupDescription=Create a configuration that will connect to a Java virtual machine running a debug server on a specified port.
appletTabGroupDescription.debug=Create a configuration that will launch a Java applet in debug mode.
appletTabGroupDescription.run=Create a configuration that will launch a Java applet.

java_type_name.description=Returns the fully qualified Java type name of the primary type in the selected resource.

Context.javaDebugging.name= Debugging Java
Context.javaDebugging.description= Debugging Java programs

newWizardCategoryName=Java Run/Debug
NewJavaScrapbookPage.label= Scrapbook Page
NewJavaScrapbookPage.description=Create a Java scrapbook page file

OpenSnippetWizardAction.label=Scrap&book...
OpenSnippetWizardAction.tooltip=New Scrapbook Page

JavaMethodBreakpointIMethodRenameParticipant.name=Method breakpoint participant
JavaWatchpointIFieldRenameParticipant.name=Watchpoint participant
LaunchConfigurationIJavaProjectRenameParticipant.name=Launch configuration participant
LaunchConfigurationIPackageFragmentRenameParticipant.name=Launch configuration participant
LaunchConfigurationITypeRenameParticipant.name=Launch configuration participant
LaunchConfigurationITypeMoveParticipant.name=Launch configuration participant
JavaBreakpointITypeRenameParticipant.name=Breakpoint participant
JavaBreakpointIJavaProjectRenameParticipant.name=Breakpoint participant
JavaBreakpointIPackageFragmentRenameParticipant.name=Breakpoint participant
JavaBreakpointIPackageFragmentMoveParticipant.name=Breakpoint participant

snippetDocumentSetupParticipant.name= Java Snippet Document Setup Participant
snippetDocumentFactory.name= Java Snippet Document Factory
