# ==============================================================================
#*+------------------------------------------------------------------------+
#*| 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                    |
#*+------------------------------------------------------------------------+
# ==============================================================================

# ==============================================================================
# Global Action Labels - Translation Instruction: section to be translated
# ==============================================================================
GlobalCloseAction_label=&Close
CopyAction_label=Copy
GlobalCutAction_label=Cut
GlobalDeleteAction_label=&Delete
GlobalRedoAction_label=&Redo
GlobalUndoAction_label=&Undo
GlobalRedoAction_formattedLabel=&Redo {0}
GlobalUndoAction_formattedLabel=&Undo {0}
GlobalFindAction_label=Find/Repla&ce...
GlobalMoveAction_label=Mo&ve...
GlobalOpenAction_label=&Open
GlobalPasteAction_label=Paste
GlobalPrintAction_label=&Print...
GlobalPropertiesAction_label=P&roperties
GlobalRefreshAction_label=Refresh
GlobalRevertAction_label=Rever&t
GlobalRenameAction_label=Rena&me...
GlobalSaveAction_label=&Save
SelectAllAction_label=Select All

# The string for the prompt dialog shown when reverting to the last saved version of a
# saveable workbench part
# ================================ BEGIN ==================================================
RevertGlobalActionHandler_messageBox_title=Revert
RevertGlobalActionHandler_messageBox_message=Unsaved changes will be lost.
RevertGlobalActionHandler_messageBox_prompt=Are you sure that you want to revert to the last saved version?
# ==================================== END =================================================
