###############################################################################
# <copyright>
#
# Copyright (c) 2005, 2011 SAP AG.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#    SAP AG - initial API, implementation and documentation
#    mwenz - Bug 327669 - removed dependencies to GEF internal stuff
#    mwenz - Bug 323359 Avoid usage of java.lang.text, ICU4J etc
#    jpasch - Bug 323025 ActionBarContributor cleanup
#    Felix Velasco (mwenz) - Bug 323351 - Enable to suppress/reactivate the speed buttons
#
# </copyright>
#
###############################################################################
AbstractFigureSelectionDialog_0_xtxt=Select picture options
AbstractFigureSelectionDialog_1_xtxt=Figure
AbstractFigureSelectionDialog_2_xbut=&All
AbstractFigureSelectionDialog_3_xbut=&Selected (only single-selection)
CopyAction_0_xmsg=&Copy selected PEs and BOs
CopyAction_1_xfld=&Copy
CreateConnectionCommand_0_xmsg=connection creation
DefaultDeleteFeature_1_xfld=Delete
DefaultDeleteFeature_2_xmsg=Are you sure you want to delete these {0} elements ?
DefaultDeleteFeature_3_xmsg=Are you sure you want to delete {0} ?
DefaultDeleteFeature_4_xmsg=Are you sure you want to delete this element ?
DefaultDeleteFeature_5_xfld=Confirm Delete
ExportDiagramDialog_0=Width value is negative: 
ExportDiagramDialog_1=Height value is negative: 
GFMarqueeToolEntry_Marquee=Marquee
GFMarqueeToolEntry_MarqueeBothNodesAndRelatedConnections=Marquee Tool to select both nodes (fully enclosed by marquee rectangle) and related connections
GFMarqueeToolEntry_MarqueeNodesTouched=Marquee Tool to select nodes (touched by marquee rectangle) only
GFMarqueeToolEntry_MarqueeSelectionTouched=Marquee Tool for Selection (touched by marquee rectangle) only
GFPanningSelectionToolEntry_0_xmsg=Selection Tool to select nodes only
GFPanningSelectionToolEntry_Select=Select
GraphicsActionBarContributor_0_xmen=View
GraphicsContextMenuProvider_0_xmen=Alignment
GraphicsPaletteRoot_0_xmen=Standard tools
DiscardChangesDialog_0_xmsg=File Conflict
DiscardChangesDialog_1_xmsg=There are unsaved changes that conflict with changes made outside the editor.  Do you wish to discard this editor's changes?
ModelClipBoardPasteAction_0_xfld=&Paste Objects
PasteAction_0_xfld=&Paste
PrintFigureDialog_0_xfld=Change &Printer...
PrintFigureDialog_1_xfld=OK
PrintFigureDialog_10_xmsg=Number of pages to be printed:
PrintFigureDialog_11_xfld=Size
PrintFigureDialog_12_xfld=Fit t&o page
PrintFigureDialog_14_xfld=Scali&ng
PrintFigureDialog_16_xfld=&Width
PrintFigureDialog_17_xfld=Fi&xed aspect ratio
PrintFigureDialog_18_xfld=Position
PrintFigureDialog_2_xfld=Cancel
PrintFigureDialog_20_xfld=&Height
PrintFigureDialog_22_xfld=Warning
PrintFigureDialog_23_xfld=C&ustom size
PrintFigureDialog_25_xfld=Do you want to proceed?
PrintFigureDialog_26_xfld=Wi&dth
PrintFigureDialog_28_xfld=H&eight
PrintFigureDialog_3_xfld=Print preview and preferences
PrintFigureDialog_30_xfld=&Left margin
PrintFigureDialog_32_xfld=&Top margin
PrintFigureDialog_34_xfld=&Center image
PrintFigureDialog_38_xfld=Unsupported size-mode: 
PrintFigureDialog_39_xmsg=No preview: \n Image too large
PrintFigureDialog_4_xfld=Units
PrintFigureDialog_5_xfld=c&m
PrintFigureDialog_6_xfld=&inches
PrintFigureDialog_7_xfld=Affects "Position" and "Size - Custom"
PrintFigureDialog_8_xfld=Print preview for first page
PrintFigureDialog_9_xmsg=Page(s) to print:
DefaultDirectEditPolicy_0_xmsg=Can not edit value
DeleteAction_0_xmsg=&Delete selected PEs and BOs
DeleteAction_1_xfld=&Delete
DiagramEditor_0_xmsg=Refresh
DiagramEditorActionBarContributor_0_xmen=A&lign
DiagramEditorActionBarContributor_Grid=&Grid
DiagramEditorActionBarContributor_SnapGeometry=Snap to Geo&metry
DoubleFieldWithDropDown_0=Scale factor is negative:
RemoveAction_0_xmsg=Re&move selected PEs
RemoveAction_1_xfld=Re&move
SaveFigureAsImageDialog_0_xfld=&Width:
SaveFigureAsImageDialog_1_xfld=&Height:
SaveFigureAsImageDialog_2_xfld=I&mage Format
SaveFigureAsImageDialog_3_xfld=Size
SaveFigureAsImageDialog_4_xfld=S&cale-factor:
SaveFigureAsImageDialog_5_xtxt=Export Diagram
SaveImageAction_0_xmsg=&Export Diagram...
SaveImageAction_1_xmsg=&Export Diagram...
UpdateAction_0_xmsg=Upda&te selected PEs
UpdateAction_1_xfld=Upda&te
ToggleContextButtonPadAction_0_xmsg=Hide Context Buttons
ToggleContextButtonPadAction_1_xfld=Hide Context Buttons
