# /**
#  * Copyright (c) 2002-2010 IBM Corporation and others.
#  * All rights reserved.   This program and the accompanying materials
#  * are made available under the terms of the Eclipse Public License v2.0
#  * which accompanies this distribution, and is available at
#  * http://www.eclipse.org/legal/epl-v20.html
#  * 
#  * Contributors: 
#  *   IBM - Initial API and implementation
#  */

# NLS_MESSAGEFORMAT_VAR

pluginName = EMF RAP Common UI
providerName = Eclipse Modeling Project

_UI_Maximize_menu_item = Ma&ximize
_UI_Restore_menu_item = &Restore

_UI_FolderSelection_title = Folder Selection
_UI_FileSelection_title = File Selection
_UI_NewFile_title = New File
_UI_NewFolder_label = &New Folder...
_UI_FileName_label = &File Name:

_UI_ResourceDialog_title = Resource
_UI_ResourceURI_label = Resource &URI:
_UI_ResourceURIs_label = Resource &URIs:
_UI_BrowseFileSystem_label = Browse &File System...
_UI_BrowseWorkspace_label = Browse &Workspace...

_UI_ErrorEditor_CreateMarkers_label = Create Markers
_UI_ErrorEditor_OpenEditor_label = &Open with Text Editor

_UI_Error_label = Error
_UI_Problems_label = Problems
_UI_DiagnosticError_label = Diagnostic: Error
_UI_DiagnosticWarning_label = Diagnostic: Warning
_UI_Diagnostic_label = Diagnostic
_UI_OpenEditorError_message = Unable to open the Text Editor
_UI_CreateMarkerError_message = Unable to create the markers for this file

_UI_NoProblems_message = There are no problems with this file
_UI_DefaultProblem_message = Problems encountered.  Click the 'Details' button for further information

_UI_ExampleInstallerWizard_title = New Example
_UI_InstallingExample_message = Installing the example 
_UI_CreatingProjects_message = Creating the projects 
_UI_OpeningFiles_message = Opening files
_UI_ProjectPage_title = Example Projects
_UI_ProjectPage_description = Create the example projects listed below.
_UI_NoProjectError_message = There are no projects to be installed for this example.
_UI_InstallExampleError_message = Unable to install one or more projects of the example.
_UI_ExistingProjectName_message = * {0}
_UI_ProjectRename_message = * A project with this name already exists in the workspace and will be deleted. Use the 'Rename' button to rename the existing project instead.
_UI_ProjectDescriptionAndRename_message = {0}\n\n{1} 
_UI_Rename_label = &Rename...
_UI_CreateProject_message = Creating project ''{0}''
_UI_DirectoryError_message = The content directory ''{0}'' does not exist or cannot be read.
_UI_FileError_message = The content file ''{0}'' does not exist or is not supported.

_UI_ConfirmSingleDeletion_title = Confirm Project Delete
_UI_ConfirmSingleDeletion_message = The following project exists in the workspace and must be removed before the example is installed: {0}.\n\nDelete the project (including its contents on disk)?
_UI_ConfirmMultipleDeletion_title = Confirm Multiple Project Delete
_UI_ConfirmMultipleDeletion_message = The following projects exist in the workspace and must be removed before the example is installed: {0}.\n\nDelete the projects (including their contents on disk)?

_UI_Examples_extensionpoint = Examples