# ====================================================================
#   Copyright (c) 2007, 2013 THALES GLOBAL SERVICES.
#   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:
#      Obeo - initial API and implementation
# ====================================================================

# ====================================================================
# To code developer:
#   Do NOT change the properties between this line and the
#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
#   Make a new property name, append to the end of the file and change
#   the code to use the new property.
# ====================================================================

# ====================================================================
# %%% END OF TRANSLATED PROPERTIES %%%
# ====================================================================

pluginName = Sirius Viewpoints Specification Editor
providerName = Eclipse Modeling Project

_UI_SiriusEditor_menu = &Viewpoint Editor
_UI_SiriusEditor_menu = &Description Editor
_UI_SiriusEditor_menu = &Style Editor
_UI_SiriusEditor_menu = &Tool Editor
_UI_SiriusEditor_menu = &Validation Editor
_UI_SiriusEditor_menu = &Audit 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 = Example EMF Model Creation Wizards

_UI_CreateModelError_message = Problems encountered in file "{0}"

_UI_ViewpointModelWizard_label = Viewpoint Model
_UI_ViewpointModelWizard_description = Create a new Viewpoint model

_UI_SiriusEditor_label = Viewpoint Specification Editor

_UI_SiriusEditorFilenameDefaultBase = My
_UI_SiriusEditorFilenameExtension = Viewpoint
_UI_DescriptionModelWizard_label = Description Model
_UI_DescriptionModelWizard_description = Create a new Description model

_UI_SiriusEditor_label = Description Model Editor

_UI_SiriusEditorFilenameDefaultBase = My
_UI_SiriusEditorFilenameExtension = Description
_UI_StyleModelWizard_label = Style Model
_UI_StyleModelWizard_description = Create a new Style model

_UI_SiriusEditor_label = Style Model Editor

_UI_SiriusEditorFilenameDefaultBase = My
_UI_SiriusEditorFilenameExtension = Style
_UI_ToolModelWizard_label = Tool Model
_UI_ToolModelWizard_description = Create a new Tool model

_UI_SiriusEditor_label = Tool Model Editor

_UI_SiriusEditorFilenameDefaultBase = My
_UI_SiriusEditorFilenameExtension = Tool
_UI_ValidationModelWizard_label = Validation Model
_UI_ValidationModelWizard_description = Create a new Validation model

_UI_SiriusEditor_label = Validation Model Editor

_UI_SiriusEditorFilenameDefaultBase = My
_UI_SiriusEditorFilenameExtension = Validation
_UI_AuditModelWizard_label = Audit Model
_UI_AuditModelWizard_description = Create a new Audit model

_UI_SiriusEditor_label = Audit Model Editor

_UI_SiriusEditorFilenameDefaultBase = My
_UI_SiriusEditorFilenameExtension = Audit

_UI_Wizard_label = New

_WARN_FilenameExtension = The file name must end in ".{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?

#Start of user code specific keys

_UI_SiriusEditor_label =  Viewpoint Specification Editor
_UI_SiriusEditorFilenameExtension = odesign
_UI_SiriusModelWizard_label = Viewpoint Specification Model
_UI_SiriusModelWizard_description = Create a new Viewpoint Specification Model
_UI_SiriusEditor_menu = &Viewpoint Specification Editor
_UI_Group_type = Group
_UI_ShowType_menu_item = Show Types
_UI_HideType_menu_item = Hide Types

_UI_ViewpointSpecificationProjectWizard_label = Create a Viewpoint Specification Project
_UI_ViewpointSpecificationProjectWizard_description = Enter a project name
_UI_SiriusModelWizard_label = Viewpoint Specification Model
_UI_SiriusModelWizard_description = Create a new Viewpoint Specification Model
_UI_SiriusModelWizardName_default = My
_UI_SiriusModelWizardName_label = Viewpoint Specification Model name:
 
#End of user code specific keys