###############################################################################
# Copyright (c) 2010, 2015 Willink Transformations 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:
#     E.D.Willink - initial API and implementation
###############################################################################

pluginName = OCL Unified OCL-in-Ecore User Interface and Editor
providerName = Eclipse OCL

MF_CreateDynamicInstance = Create Dynamic &Instance...
MF_CreateDynamicInstance_Command = Create Dynamic Instance Command
MF_CreateDynamicInstance_Description = Create a new Model containing a Dynamic Instance of this Class
MF_OCLinEcore = OCLinEcore
MF_OCLinEcoreEditor = OCLinEcore Editor
MF_OpenQuickOutline = Open the quick outline.
MF_Problem = OCLinEcore Problem
MF_QuickOutline = Quick Outline
MF_SaveAs = Save As
MF_SaveAsEcore = As Ecore
MF_SaveAsEcore_Command = Save As Ecore Command
MF_SaveAsEcore_Description = Save file changing to Ecore (String changes to EString)
MF_SaveInEcore = In Ecore
MF_SaveInEcore_Command = Save In Ecore Command
MF_SaveInEcore_Description = Save file changing format to Ecore (String stays as String)
MF_SaveAsOCLinEcore = OCLinEcore
MF_SaveAsOCLinEcore_Command = Save As OCLinEcore Command
MF_SaveAsOCLinEcore_Description = Save file changing format to OCLinEcore
MF_SaveAsPivot = Pivot
MF_SaveAsPivot_Command = Save As Pivot Command
MF_SaveAsPivot_Description = Save file changing format to Pivot
MF_SaveAsUML = UML
MF_SaveAsUML_Command = Save As UML Command
MF_SaveAsUML_Description = Save file changing format to UML
MF_SetExportDelegateURI = Set &Export Delegate URI...
MF_SetExportDelegateURI_LPG = .../OCL/LPG
MF_SetExportDelegateURI_LPG_Command = Set LPG Export Delegate URI Command
MF_SetExportDelegateURI_LPG_Description = Specify use of the LPG Delegate URI to be used when saving to Ecore
MF_SetExportDelegateURI_Pivot = .../OCL/Pivot
MF_SetExportDelegateURI_Pivot_Command = Set Pivot Export Delegate URI Command
MF_SetExportDelegateURI_Pivot_Description = Specify use of the Pivot Delegate URI to be used when saving to Ecore
MF_SetExportDelegateURI_Virtual = .../OCL
MF_SetExportDelegateURI_Virtual_Command = Set Virtual Export Delegate URI Command
MF_SetExportDelegateURI_Virtual_Description = Specify the virtual Delegate URI to be used when saving to Ecore
MF_SyntaxColoring = Syntax Coloring
MF_Templates = Templates
MF_TriggerExpensiveValidation = Trigger expensive validation
MF_Validate = Validate

MF_OCL_IN_ECORE_WIZARD_NAME = OCLinEcore Ecore File
MF_OCL_IN_ECORE_WIZARD_DESCRIPTION = Create a new OCLinEcore File that is persisted as a *.ecore file
MF_OCLINECORE_WIZARD_NAME = OCLinEcore Text File
MF_OCLINECORE_WIZARD_DESCRIPTION = Create a new OCLEcore File that is persisted as a *.oclinecore text file

_UI_SaveFailure = Failed to save to ''{0}''

_UI_SaveFailure_title = Save Problems
_UI_SaveFailure_message = Save could not be completed.

MF_Save_AS = Save Abstract Syntax
MF_Save_CS = Save Concrete (Xtext) Syntax
