######################################################################
# Copyright (c) 2000, 2002 IBM Corp. and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Common Public License v0.5
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v05.html
#
# Contributors:
#    IBM Corporation - Initial implementation
######################################################################

pluginName=JDI Debug UI

accessAction.label=&Access

AddBreakpoint.label=Add/Remove &Breakpoint

breakpointPropertiesAction.label=P&roperties...

caughtAction.label=&Caught

debugAction.label=&Debug...
debugAction.tooltip=Debug

debugSourcePageName=Debugger Source Lookup

Display.label=Displa&y@Ctrl+D
Display.tooltip=Display Result of Evaluating Selected Text

displayViewName=Display

dropFrameAction.label=&Drop to Frame
dropFrameAction.tooltip=Drop Current Stack Frame

EnableBreakpoint.label=T&oggle Breakpoint

entryAction.label=Entr&y

exceptionAction.label=Add Java Exception Breakpoint
exceptionAction.accel.label=Add Java E&xception Breakpoint
exceptionAction.tooltip=Add Java Exception Breakpoint

execArgPageName=Execution Arguments

exitAction.label=E&xit

hitCount.label=&Hit Count

Inspect.label=Insp&ect@Ctrl+Q
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
javaDebugAppearancePrefName=Appearance

JDTDebugActionSet.label=Java Debug

LauncherPropertyPage.name=Launcher

ManageBreakpointAction.label=Add/Remove Brea&kpoint@Ctrl+Shift+B

manageMethodBreakpointAction.label=Add/Remove &Method Breakpoint

manageWatchpointAction.label=Add/Remove &Watchpoint

modificationAction.label=&Modification

openDeclType.label=&Declaring Type
openDeclType.tooltip=Open on Declaring Type

openDeclVarType.label=&Open Declared Type
openDeclVarType.tooltip=Open Variable's Type

openOnAction.label=O&pen On

openOnConsoleTypeAction.label=&Open On Type
openOnConsoleTypeAction.tooltip=Open On Type

openRecType.label=&Receiving Type
openRecType.tooltip=Open on Receiving Type

processInfoPageName=Process Info

runAction.label=&Run...
runAction.tooltip=Run

RunMenu.label=&Run

RunSnippet.label=Run Sni&ppet@Ctrl+U

runToLineAction.label=Run to &Line@Ctrl+R

scrapbookLauncher.label=Java Scrapbook Page

showFinalAction.label=Show &Final Fields
showFinalAction.tooltip=Show Final Fields

showQualifiedAction.label=Show &Qualified Names
showQualifiedAction.tooltip=Show Qualified Names

showStaticAction.label=Show &Static Fields
showStaticAction.tooltip=Show Static Fields

suspendPolicy.label=&Suspend VM

toggleStepFilterAction.label=Use Step &Filters
toggleStepFilterAction.tooltip=Toggle Enabled State of All Step Filters

uncaughtAction.label=&Uncaught

vmPageName=Runtime JRE

JavaApplicationShortcut.label=Java Application

jreSystemLibrary.name=JRE System Library

JDTLaunchActionSet.label=Java Launch

providerName=Eclipse.org