###############################################################################
# Copyright (c) 2000, 2018 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
#     Sebastian Davids (sdavids@gmx.de)
#        - Fix for Bug 57087
#        - Fix for Bug 138034 [Preferences] Label decorations page - extra space
#        - Fix for Bug 128529
#     Semion Chichelnitsky (semion@il.ibm.com) - bug 278064
#     Tristan Hume - <trishume@gmail.com> -
#     		Fix for Bug 2369 [Workbench] Would like to be able to save workspace without exiting
#     		Implemented workbench auto-save to correctly restore state in case of crash.
#     Andrey Loskutov <loskutov@gmx.de> - Bug 445538
#     Alain Bernard <alain.bernard1224@gmail.com> - Bug 281490
#     Lars Vogel <Lars.Vogel@vogella.com> - Bug 407432
#     Patrik Suzzi <psuzzi@itemis.com> - Bug 491572, 491785, 501811, 511198, 529885
#     Kaloyan Raev <kaloyan.r@zend.com> - Bug 322002
#     Lucas Bullen (Red Hat Inc.) - Bug 500051, 530654
###############################################################################

# package: org.eclipse.ui

PlatformUI_NoWorkbench = Workbench has not been created yet.

Workbench_CreatingWorkbenchTwice = Workbench already exists and cannot be created again.

# ==============================================================================
# Workbench Actions
# ==============================================================================

# --- File Menu ---
NewWizardAction_text = &Other...
NewWizardAction_toolTip = New
CloseAllAction_text = C&lose All
CloseAllAction_toolTip = Close All
CloseOthersAction_text = Close O&thers
CloseOthersAction_toolTip = Close Others
CloseAllSavedAction_text = Cl&ose All Saved
CloseAllSavedAction_toolTip = Close All Saved
CloseEditorAction_text = &Close
CloseEditorAction_toolTip = Close
NewEditorAction_text=New &Editor
NewEditorAction_tooltip=New Editor
SaveAction_text = &Save
SaveAction_toolTip = Save
SaveAs_text = Save &As...
SaveAs_toolTip = Save As
SaveAll_text = Sav&e All
SaveAll_toolTip = Save All
Workbench_revert = Rever&t
Workbench_revertToolTip = Revert
Workbench_missingPropertyMessage=Unable to relaunch the platform with the current workspace because the ''{0}'' property has not been set.
Workbench_move = Mo&ve...
Workbench_moveToolTip = Move
Workbench_rename = Rena&me...
Workbench_renameToolTip = Rename
Workbench_refresh = Re&fresh
Workbench_refreshToolTip = Refresh
Workbench_properties = P&roperties
Workbench_propertiesToolTip = Properties
Workbench_print = &Print...
Workbench_printToolTip = Print
ExportResourcesAction_text = E&xport...
ExportResourcesAction_fileMenuText = Exp&ort...
ExportResourcesAction_toolTip = Export
ImportResourcesAction_text = &Import...
ImportResourcesAction_toolTip = Import
OpenRecentDocumentsClear_text = Clear History
OpenRecentDocuments_text = Recent Files
OpenRecent_errorTitle = Problems opening editor
OpenRecent_unableToOpen = Unable to open ''{0}''.
Exit_text = E&xit
Exit_toolTip = Exit Workbench


# --- Edit Menu ---
Workbench_undo = &Undo
Workbench_undoToolTip = Undo
Workbench_redo = &Redo
Workbench_redoToolTip = Redo
Workbench_cut = Cu&t
Workbench_cutToolTip = Cut
Workbench_copy = &Copy
Workbench_copyToolTip = Copy
Workbench_paste = &Paste
Workbench_pasteToolTip = Paste
Workbench_delete = &Delete
Workbench_deleteToolTip = Delete
Workbench_selectAll = Select &All
Workbench_selectAllToolTip = Select All
Workbench_findReplace = &Find/Replace...
Workbench_findReplaceToolTip = Find/Replace

# --- Navigate Menu ---
Workbench_goInto = Go &Into
Workbench_goIntoToolTip = Go Into
Workbench_back = &Back
Workbench_backToolTip = Back
Workbench_forward = &Forward
Workbench_forwardToolTip = Forward
Workbench_up = &Up One Level
Workbench_upToolTip = Up
Workbench_next = Ne&xt
Workbench_nextToolTip = Next
Workbench_previous = Pre&vious
Workbench_previousToolTip = Previous

NavigationHistoryAction_forward_text=&Forward
NavigationHistoryAction_forward_toolTip=Forward
NavigationHistoryAction_backward_text=&Back
NavigationHistoryAction_backward_toolTip=Back
NavigationHistoryAction_forward_toolTipName=Forward to {0}
NavigationHistoryAction_backward_toolTipName=Back to {0}
NavigationHistoryAction_locations = {0} ({1} locations)

Workbench_showInNoTargets = <No Applicable Views>
Workbench_showInNoPerspectives = <No Applicable Perspectives>
Workbench_noApplicableItems = <No Applicable Items>

OpenPreferences_text = &Preferences
OpenPreferences_toolTip = Preferences

# --- Window Menu ---
PerspectiveMenu_otherItem = &Other...
SelectPerspective_shellTitle = Open Perspective
SelectPerspective_selectPerspectiveHelp = Use F2 to display the description for a selected perspective.
SelectPerspective_noDesc = No description available.
SelectPerspective_open_button_label=&Open
Workbench_showPerspectiveError = Problems opening perspective ''{0}''
ChangeToPerspectiveMenu_errorTitle = Problems Changing Perspective

ShowView_title = &Other...
ShowView_shellTitle = Show View
ShowView_selectViewHelp = Use F2 to display the description for a selected view.
ShowView_noDesc = No description available.
ShowView_open_button_label=&Open

ToggleEditor_hideEditors = Hide &Editors
ToggleEditor_showEditors = Show &Editors
ToggleEditor_toolTip = Hide/Show Editors

LockToolBarAction_toolTip = Toggle Lock Toolbars

# --- Customize Perspective Dialog ---

CustomizePerspectiveDialog_okButtonLabel = &Apply and Close
EditActionSetsAction_text = Customi&ze Perspective...
EditActionSetsAction_toolTip = Customize Perspective
ActionSetSelection_customize = Customize Perspective - {0}
ActionSetDialogInput_viewCategory = Show View
ActionSetDialogInput_perspectiveCategory = Open Perspective
ActionSetDialogInput_wizardCategory = New

Shortcuts_shortcutTab = Shortcuts
Shortcuts_selectShortcutsLabel = Select the shortcuts that you want to see added as cascade items to the following submenus.  The selections made will only affect the current perspective ({0}).
Shortcuts_availableMenus = &Submenus:
Shortcuts_availableCategories = Shortcut &Categories:
Shortcuts_allShortcuts = S&hortcuts:

ActionSetSelection_actionSetsTab = Action Set Availability
ActionSetSelection_selectActionSetsLabel = Select the action sets that you want to see added to the current perspective ({0}).  The details field identifies which menu items and/or toolbar items are added to the perspective by the selected action set.
ActionSetSelection_availableActionSets = Available &action sets:
ActionSetSelection_menubarActions = &Menubar details:
ActionSetSelection_toolbarActions = &Toolbar details:
ActionSetSelection_descriptionColumnHeader = Description
ActionSetSelection_menuColumnHeader = Shortcut

HideItems_itemInActionSet = Contributed by the <a>''{0}'' action set</a>.
HideItems_itemInUnavailableActionSet = This item cannot be made visible because the <a>action set ''{0}''</a> which contributes it is unavailable.
HideItems_itemInUnavailableCommand = This command cannot be made visible in this dialog.
HideItems_unavailableChildCommandGroup = This item cannot be made visible because all of its children are in the unavailable <a href="{0}">action set ''{1}''</a>.
HideItems_unavailableChildCommandGroups = This item cannot be made visible because all of its children are in unavailable action sets: {0}
HideItems_keyBindings = Key bindings: <a>{0}</a>.
HideItems_keyBindingsActionSetUnavailable = Key bindings (cannot be used because action set is unavailable): <a>{0}</a>
HideItems_noKeyBindings = No <a>key bindings</a>
HideItems_noKeyBindingsActionSetUnavailable = No key bindings (to edit, make action set available).
HideItems_commandGroupTitle = &Action Sets:
HideItems_turnOnActionSets = &Filter by action set


HideItems_dynamicItemName = [Dynamic]
HideItems_dynamicItemDescription = The labels and number of menu items contributed by this dynamic entry are variable.
HideItems_dynamicItemList = The items which are currently being displayed are:
HideItems_dynamicItemEmptyList = There are no items which are currently being displayed.

HideItemsCannotMakeVisible_dialogTitle = Make Item Visible
HideItemsCannotMakeVisible_unavailableCommandGroupText = ''{0}'' cannot be made visible because it is in the unavailable ''{1}'' action set.
HideItemsCannotMakeVisible_unavailableCommandItemText = ''{0}'' command cannot be made visible in this dialog.
HideItemsCannotMakeVisible_switchToCommandGroupTab = Would you like to switch to the Action Set Availability tab?
HideItemsCannotMakeVisible_unavailableChildrenText = ''{0}'' cannot be made visible because all of its children are in unavailable action sets.

HideMenuItems_menuItemsTab = Menu Visibility
HideMenuItems_chooseMenuItemsLabel = Choose which menu items to display.
HideMenuItems_menuStructure = &Menu Structure:

HideToolBarItems_toolBarItemsTab = Tool Bar Visibility
HideToolBarItems_chooseToolBarItemsLabel = Choose which tool bar items to display.
HideToolBarItems_toolBarStructure = &Tool Bar Structure:

SavePerspective_text = Save Perspective &As...
SavePerspective_toolTip = Save Perspective As
SavePerspective_shellTitle = Save Perspective As...
SavePerspective_saveButtonLabel = &Save
SavePerspectiveDialog_description = Enter or select a name to save the current\nperspective as.
SavePerspective_name = &Name:
SavePerspective_existing = &Existing Perspectives:
SavePerspective_overwriteTitle = Overwrite Perspective
SavePerspective_overwriteQuestion = A perspective with the name ''{0}'' already exists. Do you want to overwrite?
SavePerspective_singletonQuestion = The current perspective can only be opened once and cannot be saved using a new name. Do you want to overwrite?
SavePerspective_errorTitle = Cannot Save Perspective
SavePerspective_errorMessage = Invalid Perspective Descriptor

ResetPerspective_text = &Reset Perspective...
ResetPerspective_toolTip = Reset Perspective
ResetPerspective_message = Do you want to reset the current {0} perspective to its defaults?
ResetPerspective_title = Reset Perspective
ResetPerspective_buttonLabel= &Reset Perspective
RevertPerspective_note='Revert' removes the customization from the selected perspective.\nThis only applies to newly opened perspectives.

RevertPerspective_title = Reset Perspective
RevertPerspective_message = Do you want to reset the current {0} perspective to its saved state?
RevertPerspective_option = &Also discard perspective's customization

ClosePerspectiveAction_text = &Close Perspective
ClosePerspectiveAction_toolTip = Close Perspective
CloseAllPerspectivesAction_text = Close A&ll Perspectives
CloseAllPerspectivesAction_toolTip = Close All Perspectives

OpenInNewWindowAction_text = Open in &New Window
OpenInNewWindowAction_toolTip = Open in New Window
OpenInNewWindowAction_errorTitle = Problems Opening New Window
CycleEditorAction_next_text = Next &Editor
CycleEditorAction_next_toolTip = Next Editor
CycleEditorAction_prev_text = P&revious Editor
CycleEditorAction_prev_toolTip = Previous Editor
CycleEditorAction_header=Editors
CyclePartAction_next_text = Next &View
CyclePartAction_next_toolTip = Next View
CyclePartAction_prev_text = Previ&ous View
CyclePartAction_prev_toolTip = Previous View
CyclePartAction_header = Views
CyclePartAction_editor = Editor
CyclePerspectiveAction_next_text = Next &Perspective
CyclePerspectiveAction_next_toolTip = Next Perspective
CyclePerspectiveAction_prev_text = Previo&us Perspective
CyclePerspectiveAction_prev_toolTip = Previous Perspective
CyclePerspectiveAction_header=Perspectives
ActivateEditorAction_text = &Activate Editor
ActivateEditorAction_toolTip = Activate Editor
MaximizePartAction_toolTip = Toggles Maximize/Restore State of Active View or Editor
MinimizePartAction_toolTip = Minimizes the Active View or Editor
# --- Filtered Table Base ---
FilteredTableBase_Filter=Filter


# --- Help Menu ---
AboutAction_text = &About {0}
AboutAction_toolTip = About {0}
HelpContentsAction_text = &Help Contents
HelpContentsAction_toolTip= Help Contents
HelpSearchAction_text = S&earch
HelpSearchAction_toolTip= Search Help
DynamicHelpAction_text = &Show Contextual Help
DynamicHelpAction_toolTip = Show Contextual Help
AboutDialog_shellTitle = About {0}
AboutDialog_defaultProductName =
AboutDialog_DetailsButton=&Installation Details
ProductInfoDialog_errorTitle = Problems Opening Link
ProductInfoDialog_unableToOpenWebBrowser = Unable to open web browser on {0}
PreferencesExportDialog_ErrorDialogTitle=Error
AboutPluginsDialog_shellTitle = About {0} Plug-ins
AboutPluginsDialog_pluginName = Plug-in Name
AboutPluginsDialog_pluginId = Plug-in Id
AboutPluginsDialog_version = Version
AboutPluginsDialog_provider = Provider
AboutPluginsDialog_signed = Signed
AboutPluginsDialog_state_installed = Installed
AboutPluginsDialog_state_resolved = Resolved
AboutPluginsDialog_state_starting = Starting
AboutPluginsDialog_state_stopping = Stopping
AboutPluginsDialog_state_uninstalled = Uninstalled
AboutPluginsDialog_state_active = Active
AboutPluginsDialog_state_unknown = Unknown State
AboutPluginsDialog_moreInfo = &Legal Info
AboutPluginsDialog_signingInfo_show = &Show Signing Info
AboutPluginsDialog_signingInfo_hide = &Hide Signing Info
AboutPluginsDialog_columns = C&olumns...
AboutPluginsDialog_errorTitle = Problems Opening File
AboutPluginsDialog_unableToOpenFile = Unable to find file {0} in plug-in {1}.
AboutPluginsDialog_filterTextMessage=type filter text
AboutPluginsPage_Load_Bundle_Data=Loading Bundle Data...
AboutFeaturesDialog_shellTitle = About {0} Features
AboutFeaturesDialog_featureName = Feature Name
AboutFeaturesDialog_featureId = Feature Id
AboutFeaturesDialog_version = Version
AboutFeaturesDialog_provider = Provider
AboutFeaturesDialog_moreInfo = &License
AboutFeaturesDialog_pluginsInfo = &Plug-in Details
AboutFeaturesDialog_columns = C&olumns...
AboutFeaturesDialog_noInformation = No further information is available for this feature.
AboutFeaturesDialog_pluginInfoTitle = Feature Plug-ins
AboutFeaturesDialog_pluginInfoMessage = Plug-ins contributed by feature: {0}
AboutFeaturesDialog_noInfoTitle = No Further Information
AboutFeaturesDialog_SimpleTitle=Features
AboutSystemDialog_browseErrorLogName = &View Error Log
AboutSystemDialog_copyToClipboardName = Copy &to Clipboard
AboutSystemDialog_noLogTitle = Error Log Not Found
AboutSystemDialog_noLogMessage = The error log was not found at {0}.  No errors have been reported in this workspace.
AboutSystemPage_FetchJobTitle=Fetch Configuration
AboutSystemPage_RetrievingSystemInfo=Retrieving system information...

# --- Shortcutbar ---
PerspectiveBarContributionItem_toolTip = {0} perspective
PerspectiveBarNewContributionItem_toolTip = Open Perspective

#--- Coolbar ---
WorkbenchWindow_HelpToolbar = Help
WorkbenchWindow_FileToolbar = File
WorkbenchWindow_EditToolbar = Edit
WorkbenchWindow_NavigateToolbar = Navigate
WorkbenchWindow_searchCombo_toolTip = Enter help search expression and press Enter
WorkbenchWindow_searchCombo_text = Search help


WorkbenchWindow_close = &Close
WorkbenchPage_ErrorCreatingPerspective = Unable to create perspective ''{0}''.  There is no corresponding perspective extension.

SelectWorkingSetAction_text= Select &Working Set...
SelectWorkingSetAction_toolTip= Select a working set
EditWorkingSetAction_text= &Edit Active Working Set...
EditWorkingSetAction_toolTip= Edit the active working set
EditWorkingSetAction_error_nowizard_title= Edit Working Set
EditWorkingSetAction_error_nowizard_message= Can not edit the active working set.
ClearWorkingSetAction_text= Deselect Wor&king Set
ClearWorkingSetAction_toolTip= Deselect the active working set
WindowWorkingSets= &Window Working Sets
NoWorkingSet = N&o Working Sets
SelectedWorkingSets = Se&lected Working Sets
NoApplicableWorkingSets = No applicable working sets

# ==============================================================================
# Drill Actions
# ==============================================================================
GoHome_text = Go &Home
GoHome_toolTip = Home
GoBack_text = Go &Back
GoBack_toolTip = Back
GoInto_text = Go &Into
GoInto_toolTip = Go Into


ICategory_other = Other
ICategory_general = General

# ==============================================================================
# Wizards
# ==============================================================================
NewWizard_title = New
NewWorkingSet=New Working Set
NewWizardNewPage_description = The following resource creation wizards are available.
NewWizardNewPage_wizardsLabel = &Wizards:
NewWizardNewPage_showAll = &Show All Wizards.
WizardList_description = The following wizards are available.
Select = Select
NewWizardSelectionPage_description = Select a wizard
NewWizardShortcutAction_errorTitle = Problem Opening Wizard
NewWizardShortcutAction_errorMessage = The selected wizard could not be started.

NewWizardsRegistryReader_otherCategory = Other
NewWizardDropDown_text = &New Wizards

WizardHandler_menuLabel = {0}...
WorkbenchWizard_errorMessage = The selected wizard could not be started.
WorkbenchWizard_errorTitle = Problem Opening Wizard
WizardTransferPage_selectAll = &Select All
WizardTransferPage_deselectAll = &Deselect All
TypesFiltering_title = Select Types
TypesFiltering_message = Reduce selection to only files of &type(s):
TypesFiltering_otherExtensions = &Other extensions:
TypesFiltering_typeDelimiter = ,

# --- Import/Export ---
ImportExportPage_chooseImportWizard=Choose import wizard.
ImportExportPage_chooseExportWizard=Choose export wizard.

# --- Import ---
ImportWizard_title = Import
ImportWizard_selectWizard=&Select an import wizard:

# --- Export ---
ExportWizard_title = Export
ExportWizard_selectWizard=&Select an export wizard:
# --- New Project ---
NewProject_title = New Project

# ==============================================================================
# Preference Pages
# ==============================================================================
PreferenceNode_errorMessage = Unable to create the selected preference page.
PreferenceNode_NotFound = {0} not found
Preference_note = Note:
Preference_import = Import
Preference_export = Export

PreferenceExportWarning_title = Possible Unapplied Changes
PreferenceExportWarning_message = Unapplied changes to preferences will not be exported.
PreferenceExportWarning_continue = &Continue
PreferenceExportWarning_applyAndContinue = &Apply and Continue

# --- Workbench ---
WorkbenchPreference_showMultipleEditorTabsButton = Show &multiple editor tabs
WorkbenchPreference_allowInplaceEditingButton = Allow in-place &system editors
WorkbenchPreference_useIPersistableEditorButton = Restore &editor state on startup
WorkbenchPreference_promptWhenStillOpenButton = Pr&ompt to save on close even if still open elsewhere
WorkbenchPreference_stickyCycleButton = Keep &next/previous editor, view and perspectives dialog open
WorkbenchPreference_RunInBackgroundButton=Always r&un in background
WorkbenchPreference_RunInBackgroundToolTip=Run long operations in the background where possible
WorkbenchPreference_HeapStatusButton = Sho&w heap status
WorkbenchPreference_HeapStatusButtonToolTip = Show the heap status area on the bottom of the window


# --- Appearance ---
ViewsPreferencePage_Theme=&Theme:
ViewsPreference_currentTheme = &Color and Font theme:
ViewsPreference_currentThemeDescription = Descr&iption:
ViewsPreference_currentThemeFormat = {0} (current)
ViewsPreference_enableAnimations = &Enable animations
ViewsPreference_useColoredLabels = &Use mixed fonts and colors for labels
ViewsPreference_visibleTabs_description = Visible tabs on overflow:
ViewsPreference_enableMRU = Show &most recently used tabs
ToggleFullScreenMode_ActivationPopup_Description=You have gone full screen. Use the Toggle Full Screen command ({0}) to deactivate.
ToggleFullScreenMode_ActivationPopup_Description_NoKeybinding=You have gone full screen. Use the Toggle Full Screen command to deactivate.
ToggleFullScreenMode_ActivationPopup_DoNotShowAgain=Do not show again
# --- File Editors ---
FileEditorPreference_fileTypes = File &types:
FileEditorPreference_add = &Add...
FileEditorPreference_remove = &Remove
FileEditorPreference_associatedEditors = Associated &editors:
FileEditorPreference_addEditor = A&dd...
FileEditorPreference_removeEditor = Re&move
FileEditorPreference_default = De&fault
FileEditorPreference_existsTitle = File Type Exists
FileEditorPreference_existsMessage = An entry already exists for that file type
FileEditorPreference_defaultLabel = (default)
FileEditorPreference_contentTypesRelatedLink = See <a>''{0}''</a> for content-type based file associations.
FileEditorPreference_isLocked = {0} (locked by ''{1}'' content type)

FileExtension_extensionEmptyMessage = The file extension cannot be empty
FileExtension_fileNameInvalidMessage = The file name cannot include the wild card character (*) in the current location
FilteredPreferenceDialog_Key_Scrolling=Key &Scrolling
FilteredPreferenceDialog_PreferenceSaveFailed=Preferences save failed.
FilteredPreferenceDialog_Resize = &Resize tree
FilteredPreferenceDialog_FilterToolTip = Additional Dialog Actions

FileExtension_fileTypeMessage =  Enter file type to add: (*.doc or report.doc for example)
FileExtension_fileTypeLabel = File &type:
FileExtension_shellTitle = Add File Type
FileExtension_dialogTitle = Define a New File Type

Choose_the_editor_for_file = Choose the editor for files of type ({0})
EditorSelection_chooseAnEditor = Choose an editor:
EditorSelection_internal = &Internal editors
EditorSelection_external = &External programs
EditorSelection_rememberEditor = &Use this editor for all ''{0}'' files
EditorSelection_rememberType = Use it for &all ''*.{0}'' files
EditorSelection_browse = &Browse...
EditorSelection_title = Editor Selection

# --- Perspectives ---
OpenPerspectiveMode_optionsTitle = Open a new perspective
OpenPerspectiveMode_sameWindow = In the &same window
OpenPerspectiveMode_newWindow = In a &new window

PerspectivesPreference_MakeDefault = Ma&ke Default
PerspectivesPreference_MakeDefaultTip = Make the Current Selection the Default Perspective
PerspectivesPreference_Reset = &Revert
PerspectivesPreference_ResetTip = Reverts the Current Selection to its Original Value
PerspectivesPreference_Delete = D&elete
PerspectivesPreference_DeleteTip = Delete a User Defined Perspective
PerspectivesPreference_available = Available &perspectives:
PerspectivesPreference_defaultLabel = {0} (default)
PerspectivesPreference_perspectiveopen_title=Delete Perspective
PerspectivesPreference_perspectiveopen_message=Are you sure you want to delete the ''{0}'' perspective? It has open instances.

PerspectiveLabelProvider_unknown = Unknown Element Type

OpenPerspectiveDialogAction_text=&Open Perspective...
OpenPerspectiveDialogAction_tooltip=Open Perspective

#---- General Preferences----
PreferencePage_noDescription = (No description available)
PreferencePageParameterValues_pageLabelSeparator = \ >\ 
ThemingEnabled = E&nable theming (requires restart)
ThemeChangeWarningText = A restart is required for the theme change to take full effect. 
ThemeChangeWarningTitle = Theme change 
# --- Workbench -----
WorkbenchPreference_openMode=Open mode
WorkbenchPreference_doubleClick=D&ouble click
WorkbenchPreference_singleClick=&Single click
WorkbenchPreference_singleClick_SelectOnHover=Select on &hover
WorkbenchPreference_singleClick_OpenAfterDelay=Open when using arrow &keys
WorkbenchPreference_noEffectOnAllViews=This preference may not take effect on all views

# --- Globalization -----
GlobalizationPreference_nlExtensions=&Unicode locale extensions:
GlobalizationPreference_layoutDirection=&Graphical layout direction:
GlobalizationPreference_bidiSupport=&Enable bidirectional support
GlobalizationPreference_textDirection=&Text direction:
GlobalizationPreference_defaultDirection=OS Default
GlobalizationPreference_ltrDirection=Left to right
GlobalizationPreference_autoDirection=Contextual
GlobalizationPreference_rtlDirection=Right to left
GlobalizationPreference_restartWidget=A restart is required for these preferences to take full effect.

# --- Fonts ---
FontsPreference_useSystemFont=&Use System Font

# --- Decorators ---
DecoratorsPreferencePage_description = Descriptio&n:
DecoratorsPreferencePage_decoratorsLabel = Available &label decorations:
DecoratorsPreferencePage_explanation = Label decorations show extra information about an item on its label or icon. Select which additional decorations should be displayed.
DecoratorError = Exception in Decorator.
DecoratorWillBeDisabled = Exception in Decorator. The ''{0}'' decorator will be disabled.

# --- Startup preferences ---
StartupPreferencePage_label=&Plug-ins activated on startup:

# ==============================================================================
# Property Pages
# ==============================================================================
PropertyDialog_text = P&roperties
PropertyDialog_toolTip = Open Properties Dialog
PropertyDialog_messageTitle = Property Pages
PropertyDialog_noPropertyMessage = No property pages for {0}.
PropertyDialog_propertyMessage = Properties for {0}
PropertyPageNode_errorMessage = Unable to create the selected property page.

SystemInPlaceDescription_name = &In-Place Editor
SystemEditorDescription_name = &System Editor

# ==============================================================================
# Dialogs
# ==============================================================================
Error = Error
Information = Information
InstallationDialog_ShellTitle={0} Installation Details

Workbench_NeedsClose_Title = Restart Needed
Workbench_NeedsClose_Message = A required plug-in is no longer available and the Workbench needs to be restarted. You will be prompted to save if there is any unsaved work.

ErrorPreferencePage_errorMessage = An error has occurred when creating this preference page.

ListSelection_title = Selection Needed
ListSelection_message = Select the items:

SelectionDialog_selectLabel = &Select All
SelectionDialog_deselectLabel = &Deselect All

ElementTreeSelectionDialog_nothing_available=No entries available.

CheckedTreeSelectionDialog_nothing_available=No entries available.
CheckedTreeSelectionDialog_select_all=Select &All
CheckedTreeSelectionDialog_deselect_all=&Deselect All

# ==============================================================================
# Editor Framework
# ==============================================================================
EditorManager_saveResourcesMessage = Select the &resources to save:
EditorManager_saveResourcesOptionallyMessage = The following resources have been modified, but are still open elsewhere with identical changes. Closing will not lose those changes. Select the &resources to save now anyway:
EditorManager_saveResourcesTitle = Save Resources

# The parameter {0} stands for the status message

EditorManager_systemEditorError = System editor can only open file base resources.
EditorManager_siteIncorrect = Editor initialization failed: {0}.  Site is incorrect.
EditorManager_unknownEditorIDMessage = Unable to open editor, unknown editor ID: ''{0}''
EditorManager_errorOpeningExternalEditor = Unable to open external editor {0} ({1}).
EditorManager_operationFailed = {0} Failed
EditorManager_saveChangesQuestion = Save changes in ''{0}''?
EditorManager_saveChangesOptionallyQuestion = ''{0}'' has been modified, but is still open elsewhere with identical changes. Closing this will not lose those changes. Would you like to save now anyway?
EditorManager_closeWithoutPromptingOption = Do not prompt to save on close when still open elsewhere
EditorManager_no_in_place_support=Unable to restore in-place editor. In-place support is missing.
EditorManager_no_input_factory_ID=No input factory ID found for editor id={0} name={1}
EditorManager_bad_element_factory=Cannot instantiate input element factory {0} for editor id={1} name={2}
EditorManager_openNewEditorLabel=&Open New Editor
EditorManager_no_persisted_state=No saved state can be found for editor id={0} name={1}
EditorManager_reuseEditorDialogTitle=Close Editor Automatically
EditorManager_wrong_createElement_result=Factory {0} returned a result from createElement that is not an IEditorInput for editor id={1} name={2}
EditorManager_create_element_returned_null=Factory {0} returned null from createElement for editor id={1} name={2}
EditorManager_missing_editor_descriptor=No editor descriptor for id {0}
EditorManager_backgroundSaveJobName=Saving {0}
EditorManager_largeDocumentWarning= The document you are trying to open is large. This may affect the stability of the application. Opening with an external program is recommended.

ExternalEditor_errorMessage = Error opening external editor ({0}).
Save = Save
Save_Resource = Save Resource
Saving_Modifications = Saving modifications
Save_All = Save All
Dont_Save = Don't Save

SaveableHelper_Save = &Save
SaveableHelper_Cancel = Cancel
SaveableHelper_Dont_Save = Do&n't Save
SaveableHelper_Save_Selected = S&ave Selected

# ==============================================================================
# Perspective Framework
# ==============================================================================
OpenNewPageMenu_dialogTitle = Problems Opening Page
OpenNewPageMenu_unknownPageInput = Unknown Page Input

OpenNewWindowMenu_dialogTitle = Problems Opening Window
OpenNewWindowMenu_unknownInput = Unknown Window Input

OpenPerspectiveMenu_pageProblemsTitle = Problems Opening Perspective
OpenPerspectiveMenu_errorUnknownInput = Unknown Perspective Input

Perspective_localCopyLabel = <{0}>
WorkbenchPage_problemRestoringTitle = Restoring Problems

# ==============================================================================
# Views Framework
# ==============================================================================
ViewLabel_unknown = Unknown

# The parameter {0} stands for the status message
ViewFactory_initException = Could not create the view: {0}
ViewFactory_siteException = View initialization failed: {0}.  Site is incorrect.

# The parameter {0} stands for the view ID
ViewFactory_couldNotCreate = Could not create view: {0}

# ==============================================================================
# Workbench
# ==============================================================================
WorkbenchPage_UnknownLabel = <Unknown Label>

# These four keys are marked as unused by the NLS search, but they are indirectly used
# and should be removed.

PartPane_sizeLeft=&Left
PartPane_sizeRight=&Right
PartPane_sizeTop=&Top
PartPane_sizeBottom=&Bottom

PluginAction_operationNotAvailableMessage = The chosen operation is not currently available.
PluginAction_disabledMessage = The chosen operation is not enabled.
ActionDescriptor_invalidLabel = Unknown Label

XMLMemento_parserConfigError = Internal XML parser configuration error.
XMLMemento_ioError = Could not read content of XML file.
XMLMemento_formatError = Could not parse content of XML file.
XMLMemento_noElement = Could not find root element node of XML file.

StatusUtil_errorOccurred = An unexpected exception was thrown.

# --- Workbench Errors/Problems ---
WorkbenchWindow_exceptionMessage = Abnormal Workbench Condition
WorkbenchPage_AbnormalWorkbenchCondition = Abnormal Workbench Condition
WorkbenchPage_IllegalSecondaryId = Illegal secondary id (cannot be empty or contain a colon)
WorkbenchPage_IllegalViewMode = Illegal view mode
WorkbenchPart_AutoTitleFormat={0} ({1})
AbstractWorkingSetManager_updatersActivating=Activating working set updaters for bundle {0}

DecoratorManager_ErrorActivatingDecorator = An error has occurred activating decorator {0}.

EditorRegistry_errorTitle = Load Problem
EditorRegistry_errorMessage = Unable to load editor associations.

ErrorClosing = An error has occurred when closing the workbench. See error log for more details.
ErrorClosingNoArg = An error has occurred. See error log for more details. Do you want to exit?
ErrorClosingOneArg = An error has occurred: {0}. See error log for more details. Do you want to exit?
ErrorLogUtil_ShowErrorLogHyperlink=<a>Show Error Log</a>
ErrorLogUtil_ShowErrorLogTooltip=Show the Error Log View
SavingProblem = Saving Problems

Problems_Opening_Page = Problems Opening Page

Startup_Loading=Loading {0}
Startup_Loading_Workbench=Loading Workbench
Startup_Done=Done

Workbench_problemsSavingMsg=Could not save workbench layout.
Workbench_problemsRestoring=Problems occurred restoring workbench.
Workbench_problemsSaving=Problems occurred saving workbench.

PageLayout_missingRefPart=Referenced part does not exist yet: {0}.


# ==============================================================================
# Keys used in the reuse editor which is released as experimental.
# ==============================================================================
PinEditorAction_toolTip=Pin Editor
WorkbenchPreference_reuseEditors=&Close editors automatically
WorkbenchPreference_reuseEditorsThreshold=Number of opened editors before closi&ng:
WorkbenchPreference_reuseEditorsThresholdError=The number of opened editors should be more than 0.
WorkbenchPreference_recentFiles=Size of &recently opened files list:
WorkbenchPreference_recentFilesError=The size of the recently opened files list should be between 0 and {0}.
WorkbenchPreference_workbenchSaveInterval=Workbench save &interval (in minutes):
WorkbenchPreference_workbenchSaveIntervalError=The workbench save interval should be an integer between 0 and {0}.
WorkbenchEditorsAction_label=S&witch to Editor...
WorkbookEditorsAction_label=&Quick Switch Editor

WorkbenchEditorsDialog_title=Switch to Editor
WorkbenchEditorsDialog_label=Select an &editor to switch to:
WorkbenchEditorsDialog_closeSelected=&Close Selected Editors
WorkbenchEditorsDialog_saveSelected=&Save Selected Editors
WorkbenchEditorsDialog_selectClean=Se&lect Clean Editors
WorkbenchEditorsDialog_invertSelection=&Invert Selection
WorkbenchEditorsDialog_allSelection=Select &All
WorkbenchEditorsDialog_showAllPersp=Show editors from all &windows
WorkbenchEditorsDialog_name=Name
WorkbenchEditorsDialog_path=Path
WorkbenchEditorsDialog_activate=Ac&tivate Selected Editor
WorkbenchEditorsDialog_close=Close

ShowPartPaneMenuAction_text=Show &System Menu
ShowPartPaneMenuAction_toolTip=Show System Menu
ShowViewMenuAction_text=Show View &Menu
ShowViewMenuAction_toolTip=Show View Menu
QuickAccessAction_text=&Quick Access
QuickAccessAction_toolTip=Quick Access

ToggleCoolbarVisibilityAction_show_text = Show &Toolbar
ToggleCoolbarVisibilityAction_hide_text = Hide &Toolbar
ToggleStatusBarVisibilityAction_show_text = Show &Status Bar
ToggleStatusBarVisibilityAction_hide_text = Hide &Status Bar
ToggleCoolbarVisibilityAction_toolTip = Toggle the visibility of the window toolbar and perspective switcher
# ==============================================================================
# Working Set Framework.
# ==============================================================================
ProblemSavingWorkingSetState_message = Unable to store working set state.
ProblemSavingWorkingSetState_title = Saving Problems
ProblemRestoringWorkingSetState_message = Unable to restore working set state.
ProblemRestoringWorkingSetState_title = Restoring Problems
ProblemCyclicDependency = Removed cyclic dependency in the working set ''{0}''.

WorkingSetEditWizard_title=Edit Working Set
WorkingSetNewWizard_title=New Working Set

WorkingSetTypePage_description=Select a working set type
WorkingSetTypePage_typesLabel=&Working set type:

WorkingSetSelectionDialog_title= Select Working Set
WorkingSetSelectionDialog_title_multiSelect= Select Working Sets
WorkingSetSelectionDialog_message= Selec&t a working set:
WorkingSetSelectionDialog_message_multiSelect= &Select working sets:
WorkingSetSelectionDialog_detailsButton_label= &Edit...
WorkingSetSelectionDialog_newButton_label= &New...
WorkingSetSelectionDialog_removeButton_label= &Remove

WorkbenchPage_workingSet_default_label=Window Working Set
WorkbenchPage_workingSet_multi_label=Multiple Working Sets

# =================================================================
# System Summary
# =================================================================
SystemSummary_timeStamp= *** Date: {0}
SystemSummary_systemProperties= *** System properties:
SystemSummary_systemVariables= *** System environment variables:
SystemSummary_features= *** Features:
SystemSummary_pluginRegistry= *** Plug-in Registry:
SystemSummary_userPreferences= *** User Preferences:
SystemSummary_sectionTitle = *** {0}:
SystemSummary_sectionError = Could not write section, see error log.

# parameter 0 is the feature name, parameter 1 is the version and parameter 2 is the Id
SystemSummary_featureVersion= {0} ({1}) "{2}"

# parameter 0 is the description name, parameter 1 is the version and parameter 2 is the Id
SystemSummary_descriptorIdVersionState= {0} ({1}) "{2}" [{3}]

# =================================================================
# Editor List
# =================================================================
DecorationScheduler_UpdateJobName=Update for Decoration Completion
DecorationScheduler_CalculationJobName=Decoration Calculation
DecorationScheduler_UpdatingTask=Updating
DecorationScheduler_CalculatingTask=Calculating Decorations
DecorationScheduler_ClearResultsJob=Clear Results
DecorationScheduler_DecoratingSubtask=Decorating {0}

PerspectiveBar_showText=Show &Text
PerspectiveBar_customize=Customi&ze...
PerspectiveBar_saveAs= Save &As...
PerspectiveBar_reset= &Reset

WorkbenchPlugin_extension=Cannot create extension

EventLoopProgressMonitor_OpenDialogJobName=Open Blocked Dialog
DecorationReference_EmptyReference=Decorating
RectangleAnimation_Animating_Rectangle=Animating rectangle
FilteredList_UpdateJobName=Table Update
FilteredTree_ClearToolTip=Clear
FilteredTree_FilterMessage=type filter text
FilteredTree_FilteredDialogTitle={0} (Filtered)
FilteredTree_AccessibleListenerClearButton=Clear filter field
FilteredTree_AccessibleListenerFiltered={0} {1} matches.
Workbench_startingPlugins = Starting plug-ins
ScopedPreferenceStore_DefaultAddedError=Do not add the default to the search contexts

WorkbenchEncoding_invalidCharset = {0} is not a valid charset.

#==============================================================
# Undo/Redo Support

################################################################################
#Operations_undoCommand and Operations_redoCommand are
#used to concatenate the Undo or Redo command with a specific
#operation name such as Delete Resources, Typing, Add Bookmark, etc.
#to result in a string such as "Undo Typing".
#The commmand should include the mnemonic character somewhere in the
#string.  {0} represents the operation to be undone or redone
################################################################################
Operations_undoCommand=&Undo {0}
Operations_redoCommand=&Redo {0}

################################################################################
#Operations_undoTooltipCommand and Operations_redoTooltipCommand are
#used to concatenate the Undo or Redo command with a specific
#operation name such as Delete Resources, Typing, Add Bookmark, etc.
#to result in a string such as "Undo Typing".
#The commmand should NOT include the mnemonic character.
################################################################################
Operations_undoTooltipCommand=Undo {0}
Operations_redoTooltipCommand=Redo {0}

################################################################################
#Operations_undoRedoCommandDisabled is used when no undo or redo
#operation is available.  {0} represents "Undo" or "Redo"
################################################################################
Operations_undoRedoCommandDisabled=Can''t {0}

Operations_undoProblem=Undo Problem
Operations_redoProblem=Redo Problem
Operations_executeProblem=Problem Executing Operation
Operations_undoInfo=Undo Information
Operations_redoInfo=Redo Information
Operations_executeInfo=Operation Information
Operations_undoWarning=Undo Warning
Operations_redoWarning=Redo Warning
Operations_executeWarning=Operation Warning
Operations_linearUndoViolation=There have been local changes in ''{0}'' since ''{1}'' was performed.  These changes must be undone before proceeding.  Proceed anyway?
Operations_linearRedoViolation=Local changes in ''{0}'' have been undone since ''{1}'' was undone.  They must be redone before proceeding.  Continue with redoing ''{1}''?
Operations_nonLocalUndoWarning=Undoing ''{0}'' affects elements outside of ''{1}''.  Continue with undoing ''{0}''?
Operations_nonLocalRedoWarning=Redoing ''{0}'' affects elements outside of ''{1}''.  Continue with redoing ''{0}''?
Operations_discardUndo=&Discard Undo
Operations_discardRedo=&Discard Redo
Operations_proceedWithNonOKUndoStatus={0}\nProceed with undoing ''{1}'' anyway?
Operations_proceedWithNonOKRedoStatus={0}\nProceed with redoing ''{1}'' anyway?
Operations_proceedWithNonOKExecuteStatus={0}\nProceed with executing ''{1}'' anyway?
Operations_stoppedOnUndoErrorStatus=''{1}'' cannot be undone.  \nReason: {0}
Operations_stoppedOnRedoErrorStatus=''{1}'' cannot be redone.  \nReason: {0}
Operations_stoppedOnExecuteErrorStatus=''{1}'' cannot be performed.  \nReason: {0}
#==============================================================
# Heap Status


HeapStatus_status={0} of {1}
HeapStatus_widthStr=MMMMMMMMMMMM
HeapStatus_memoryToolTip= Heap size: {0} of total: {1} max: {2} mark: {3}
HeapStatus_meg= {0}M
HeapStatus_maxUnknown= <unknown>
HeapStatus_noMark= <none>
HeapStatus_buttonToolTip= Run Garbage Collector
SetMarkAction_text=&Set Mark
ClearMarkAction_text=&Clear Mark
ShowMaxAction_text=Show &Max Heap
SplitValues_Horizontal=Horizontal
SplitValues_Vertical=Vertical
#ShowKyrsoftViewAction_text=Show &Kyrsoft Memory Monitor View
#ShowKyrsoftViewAction_KyrsoftNotInstalled=The Kyrsoft Memory Monitor plug-in is not installed.\n\
#  For more info, visit:\n\
#  http://www.kyrsoft.com/opentools/memmon.html\n\
#  http://eclipse-plugins.2y.net/eclipse/plugin_details.jsp?id=205
#ShowKyrsoftViewAction_OpenPerspectiveFirst=Please open a perspective first.
#ShowKyrsoftViewAction_ErrorShowingKyrsoftView=Error showing Kyrsoft Memory Monitor view.

#==============================================================
# Content Types
ContentTypes_lockedFormat = {0} (locked)
ContentTypes_characterSetLabel = Default &encoding:
ContentTypes_characterSetUpdateLabel = &Update
ContentTypes_unsupportedEncoding = The selected encoding is not supported.
ContentTypes_fileAssociationsLabel = &File associations:
ContentTypes_fileAssociationsAddLabel = &Add...
ContentTypes_fileAssociationsEditLabel = Ed&it...
ContentTypes_fileAssociationsRemoveLabel = &Remove
ContentTypes_contentTypesLabel = &Content types:
ContentTypes_errorDialogMessage = There was an error removing content type file association(s).
ContentTypes_FileEditorsRelatedLink=See <a>''{0}''</a> for associating editors with file types.
ContentTypes_addDialog_title=Add Content Type Association
ContentTypes_addDialog_messageHeader=Define New Content Type Association
ContentTypes_addDialog_message=Enter content type association to add: (*.doc or report.doc for example)
ContentTypes_addDialog_label=&Content type:

ContentTypes_editDialog_title=Edit Content Type Association
ContentTypes_editDialog_messageHeader=Edit Content Type Association
ContentTypes_editDialog_message=Edit content type association: (*.doc or report.doc for example)
ContentTypes_editDialog_label=Co&ntent type:
ContentTypes_addRootContentTypeButton=Add Roo&t...
ContentTypes_addChildContentTypeButton=Add C&hild...
ContentTypes_removeContentTypeButton=Re&move
ContentTypes_newContentTypeDialog_title=Create a new content-type
ContentTypes_newContentTypeDialog_descritption=Set initial attributes of a new content-type
ContentTypes_newContentTypeDialog_nameLabel=&Name:
ContentTypes_newContentTypeDialog_defaultNameNoParent=Custom Content-Type
ContentTypes_newContentTypeDialog_defaultNameWithParent=Custom Sub-type of {0}
ContentTypes_newContentTypeDialog_invalidContentTypeName=Invalid name for a content-type
ContentTypes_failedAtEditingContentTypes=Couldn't edit content-type registry
ContentTypes_editorAssociations=Associated editors:
ContentTypes_editorAssociationAddLabel=A&dd...
ContentTypes_editorAssociationRemoveLabel=Rem&ove


# =========================================================================
# Deprecated actions support
# =========================================================================
CommandService_AutogeneratedCategoryName = Uncategorized
CommandService_AutogeneratedCategoryDescription = Commands that were either auto-generated or have no category
LegacyActionPersistence_AutogeneratedCommandName = Legacy Action With No Label

Edit=&Edit...

#==============================================================
# Trim Common UI

# Menu strings
TrimCommon_DockOn=&Dock On
TrimCommon_Left=&Left
TrimCommon_Right=&Right
TrimCommon_Bottom=&Bottom
TrimCommon_Top=&Top
TrimCommon_Close=&Close

# Trim Display Names
TrimCommon_Progress_TrimName=&Progress

# FilteredItemsSelectionDialog
FilteredItemsSelectionDialog_menu = Menu
FilteredItemsSelectionDialog_refreshJob = Dialog refresh
FilteredItemsSelectionDialog_progressRefreshJob = Progress message refresh
FilteredItemsSelectionDialog_cacheRefreshJob = Cache refresh
FilteredItemsSelectionDialog_cacheRefreshJob_checkDuplicates = Checking for duplicates
FilteredItemsSelectionDialog_cacheRefreshJob_getFilteredElements = Get filtered elements
FilteredItemsSelectionDialog_cacheSearchJob_taskName = Searching in cache
FilteredItemsSelectionDialog_patternLabel = &Select an item to open (? = any character, * = any string):
FilteredItemsSelectionDialog_listLabel = &Matching items:
FilteredItemsSelectionDialog_searchJob_taskName = Searching
FilteredItemsSelectionDialog_toggleStatusAction = &Show Status Line
FilteredItemsSelectionDialog_removeItemsFromHistoryAction = &Remove from History
FilteredItemsSelectionDialog_separatorLabel = Workspace matches
FilteredItemsSelectionDialog_nItemsSelected = {0} items selected

FilteredItemsSelectionDialog_jobLabel=Items filtering
FilteredItemsSelectionDialog_jobError=Items filtering failed

FilteredItemsSelectionDialog_storeError=Storing the dialog failed
FilteredItemsSelectionDialog_restoreError=Restoring the dialog failed

FilteredItemsSelectionDialog_taskProgressMessage={0} ({1}%)
FilteredItemsSelectionDialog_subtaskProgressMessage={0}: {1}

#==============================================================
# Content Assist

# Content Assist cue strings
ContentAssist_Cue_Description_Key=Content Assist Available ({0})

#===============================================================
WorkbenchLayoutSettings_Name=Workbench Layout;
WorkbenchSettings_CouldNotCreateDirectories = Could not create workspace directories
WorkbenchSettings_CouldNotFindLocation=Could not find workbench settings location
WorkingSets_Name=Working Sets
WorkingSets_CannotSave=Cannot save working sets
WorkbenchPreferences_Name=Preferences
BundleSigningTray_Signing_Date=Signing Date:
BundleSigningTray_Working=Working...
BundleSigningTray_Signing_Certificate=Signing Certificate:
BundleSigningTray_Cant_Find_Service=Could not find certificate service.
BundleSigningTray_Determine_Signer_For=Determine Signer for {0}
BundleSigningTray_Unsigned=Unsigned
BundleSigningTray_Unknown=Unknown
BundleSigningTray_Unget_Signing_Service=Return Signing Service

# StatusDialog
WorkbenchStatusDialog_SupportTooltip=Get Support
WorkbenchStatusDialog_SupportHyperlink=<a>Get Support</a>
WorkbenchStatusDialog_StatusWithChildren=This status has children statuses. See 'Details' for more information.
WorkbenchStatusDialog_SeeDetails=See 'Details' for more information.
WorkbenchStatusDialog_MultipleProblemsHaveOccured=Multiple problems have occurred
WorkbenchStatusDialog_ProblemOccurred=A problem has occurred.
WorkbenchStatusDialog_ProblemOccurredInJob=''{0}'' has encountered a problem.
StackTraceSupportArea_CausedBy=Caused by:
StackTraceSupportArea_NoStackTrace=No stack trace found
StackTraceSupportArea_Title=Stacktrace:

# WorkingSetConfigurationBlock
WorkingSetConfigurationBlock_WorkingSetText_name=W&orking sets:
WorkingSetConfigurationBlock_SelectWorkingSet_button=S&elect...
WorkingSetConfigurationBlock_NewWorkingSet_button=Ne&w...

WorkingSetPropertyPage_ReadOnlyWorkingSet_description=This is a read-only working set. Its content can not be changed.
WorkingSetPropertyPage_ReadOnlyWorkingSet_title=Read-only Working Set

WorkingSetGroup_EnableWorkingSet_button=Add projec&t to working sets
WorkingSetGroup_WorkingSetSelection_message=The new project will be added to the selected working sets:
WorkingSetGroup_WorkingSets_group=Working sets

FilteredTableBaseHandler_Close=&Close

# ==============================================================================
# Util
# ==============================================================================
Util_List={0}, {1}
Util_listNull=null
