#################################################################################
# Copyright (c) 2005 The Regents of the University of California. 
# This material was produced under U.S. Government contract W-7405-ENG-36 
# for Los Alamos National Laboratory, which is operated by the University 
# of California for the U.S. Department of Energy. The U.S. Government has 
# rights to use, reproduce, and distribute this software. NEITHER THE 
# GOVERNMENT NOR THE UNIVERSITY MAKES ANY WARRANTY, EXPRESS OR IMPLIED, OR 
# ASSUMES ANY LIABILITY FOR THE USE OF THIS SOFTWARE. If software is modified 
# to produce derivative works, such modified software should be clearly marked, 
# so as not to confuse it with the version available from LANL.
# 
# Additionally, this program and the accompanying materials 
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
# 
# LA-CC 04-115
#
# Contributors:
#     Clement Chu
#################################################################################

pluginName=PTP Debug UI
pluginProvider=Eclipse.org

ParallelDebugPerspective.name=Parallel Debug
ParallelDebugPerspective.description=This Debug perspective is designed to support application debugging.  It incorporates views for displaying the debug stack, variables and breakpoint management.
ParallelDebugView.name=Parallel Debug

ArrayView.name=Arrays

PVariableView.name=Variables

PLocationView.name=Parallel Debug Locations 

PDebuggerPage.name=PTP Debugger UI Page
PDebugPreferencePage.name=Debug

DefaultSourceLocator.name=Default PTP Source Locator

ShowFullPathsAction.label=Show Full &Paths
ShowFullPathsAction.tooltip=Show Full Paths

PBreakpointSet.label=Parallel Breakpoint Set
PBreakpointSet.others=Unknown Set

PBreakpointAnnotation.label=Parallel Breakpoint
CurrentRegIPAnnotation.label=Current Registered Instruction Pointer
RegIPAnnotation.label=Registered Instruction Pointer
CurrentSetIPAnnotation.label=Current Set Instruction Pointer
SetIPAnnotation.label=Set Instruction Pointer

EditorRulerAction.label=Parallel Breakpoint
PBreakpointProperties.label=Breakpoint properties
EnableDisableBreakpoint.label=Enable Disable breakpoint
ToggleBreakpoint.label=Toggle breakpoint

CommonBreakpointPage.label=Common
CommonSignalPage.label=Common
BreakpointPropertiesAction.label=P&roperties...

GotoSet.label=Goto set

DebugTextHover.label=Debugger
DebugTextHover.description=Shows the value of the expression selected in the ptp debug perspective.


PVariableMenu.label=Variables
AddPVariableAction.label=Add PTP variable
AddPVariableAction.tooltip=Add PTP variable
RemoveAllPVariableAction.label=Remove all PTP variables
RemoveAllPVariableAction.tooltip=Remove all PTP variables
OpenPVariableDialogAction.label=Open PTP Variable Dialog
OpenPVariableDialogAction.tooltip=Open PTP Variable Dialog
UpdateAllPVariableAction.label=Refresh all PTP variables
UpdateAllPVariableAction.tooltip=Refresh all PTP variables


SignalsView.name=Signals
SignalAction.label=Resume With Signal
SignalAction.tooltip=Resume With Signal
SignalZeroAction.label=Resume Without Signal
SignalZeroAction.tooltip=Resume Ignoring Signal
SignalPropertiesAction.label=Signal Properties...
SignalPropertiesAction.tooltip=Open Signal Properties Dialog


RunMenu.label=&Run
DebugActionSet.label=PTP Debug

RestartAction.label=Restart
RestartAction.tooltip=Restart

JumpToLineAction.label=Resume At Li&ne
GlobalJumpToLineAction.label=Resume At Li&ne PTP
AddWatchpoint.label=Add Watchpoint PTP...
AddWatchpoint.tooltip=Add Watchpoint PTP
AddExpressionAction.label=Add Watch Expression...
RunToLineAction.label=Run To &Line

ToggleInstructionStepModeAction.label=Instruction Stepping Mode
ToggleInstructionStepModeAction.tooltip=Instruction Stepping Mode

EnableVariablesAction.label=Enable
EnableVariablesAction.tooltip=Enable Selected Variables

DisableVariablesAction.label=Disable
DisableVariablesAction.tooltip=Disable Selected Variables

DebuggingPContext.name=Debugging Parallel
DebuggingPContext.description=Debugging Parallel Programs

