# <copyright>
# 
# Copyright (c) 2010 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:
#    Reiner Hille-Doering (SAP AG) - initial API and implementation and/or initial documentation
# 
# </copyright>

pluginName = BPMN2 Editor
providerName = Eclipse Modeling Project

_UI_Bpmn2Editor_menu = &Bpmn2 Editor
_UI_Bpmn2DiEditor_menu = &Bpmn2Di Editor
_UI_DiEditor_menu = &Di Editor
_UI_DcEditor_menu = &Dc Editor

_UI_CreateChild_menu_item = &New Child
_UI_CreateSibling_menu_item = N&ew Sibling

_UI_ShowPropertiesView_menu_item = Show &Properties View
_UI_RefreshViewer_menu_item = &Refresh

_UI_SelectionPage_label = Selection
_UI_ParentPage_label = Parent
_UI_ListPage_label = List
_UI_TreePage_label = Tree
_UI_TablePage_label = Table
_UI_TreeWithColumnsPage_label = Tree with Columns
_UI_ObjectColumn_label = Object
_UI_SelfColumn_label = Self

_UI_NoObjectSelected = Selected Nothing
_UI_SingleObjectSelected = Selected Object: {0}
_UI_MultiObjectSelected = Selected {0} Objects

_UI_OpenEditorError_label = Open Editor

_UI_Wizard_category = BPMN2

_UI_CreateModelError_message = Problems encountered in file "{0}"

_UI_Bpmn2ModelWizard_label = BPMN2 Model
_UI_Bpmn2ModelWizard_description = Create a new BPMN2 model

_UI_Bpmn2Editor_label = Bpmn2 Model Editor

_UI_Bpmn2EditorFilenameDefaultBase = My
_UI_Bpmn2EditorFilenameExtensions = bpmn2

_UI_Bpmn2DiModelWizard_label = Bpmn2Di Model
_UI_Bpmn2DiModelWizard_description = Create a new Bpmn2Di model

_UI_Bpmn2DiEditor_label = Bpmn2Di Model Editor

_UI_Bpmn2DiEditorFilenameDefaultBase = My
_UI_Bpmn2DiEditorFilenameExtensions = bpmn2di

_UI_DiModelWizard_label = Di Model
_UI_DiModelWizard_description = Create a new Di model

_UI_DiEditor_label = Di Model Editor

_UI_DiEditorFilenameDefaultBase = My
_UI_DiEditorFilenameExtensions = di

_UI_DcModelWizard_label = Dc Model
_UI_DcModelWizard_description = Create a new Dc model

_UI_DcEditor_label = Dc Model Editor

_UI_DcEditorFilenameDefaultBase = My
_UI_DcEditorFilenameExtensions = dc

_UI_Wizard_label = New

_WARN_FilenameExtension = The file name must end in ''.{0}''
_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}

_UI_ModelObject = &Model Object
_UI_XMLEncoding = &XML Encoding
_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
_UI_Wizard_initial_object_description = Select a model object to create

_UI_FileConflict_label = File Conflict
_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor.  Do you wish to discard this editor's changes?

_UI_BpmnDiEditor_menu = &BpmnDi Editor
_UI_BpmnDiModelWizard_label = BpmnDi Model
_UI_BpmnDiModelWizard_description = Create a new BpmnDi model
_UI_BpmnDiEditor_label = BpmnDi Model Editor
_UI_BpmnDiEditorFilenameDefaultBase = My
_UI_BpmnDiEditorFilenameExtensions = bpmndi


_UI_BpmnEditorSaveAsXMILabel = Save As XMI
