# Copyright (c) 2010-2012 Eike Stepper (Berlin, Germany) 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:
#    Eike Stepper - initial API and implementation

# TODO: manually put keys and values
AcoreCreationWizardTitle=New Acore Diagram
AcoreCreationWizard_DiagramModelFilePageTitle=Create Acore Diagram
AcoreCreationWizard_DiagramModelFilePageDescription=Select resource that will contain diagram model.
AcoreCreationWizard_DomainModelFilePageTitle=Create Acore Domain Model
AcoreCreationWizard_DomainModelFilePageDescription=Select resource that will contain domain model.
AcoreCreationWizardOpenEditorError=Error opening diagram editor
AcoreCreationWizardCreationError=Creation Problems
AcoreCreationWizardPageExtensionError=File name should have {0} extension.
AcoreDiagramEditorUtil_OpenModelResourceErrorDialogTitle=Error
AcoreDiagramEditorUtil_OpenModelResourceErrorDialogMessage=Failed to load model file {0}
AcoreDiagramEditorUtil_CreateDiagramProgressTask=Creating diagram and model files
AcoreDiagramEditorUtil_CreateDiagramCommandLabel=Creating diagram and model
AcoreDocumentProvider_isModifiable=Updating cache failed
AcoreDocumentProvider_handleElementContentChanged=Failed to refresh hierarchy for changed resource
AcoreDocumentProvider_IncorrectInputError={1}
AcoreDocumentProvider_NoDiagramInResourceError=Diagram is not present in resource
AcoreDocumentProvider_DiagramLoadingError=Error loading diagram
AcoreDocumentProvider_UnsynchronizedFileSaveError=The file has been changed on the file system
AcoreDocumentProvider_SaveDiagramTask=Saving diagram
AcoreDocumentProvider_SaveNextResourceTask=Saving {0}
AcoreDocumentProvider_SaveAsOperation=Saving {0} diagram as
InitDiagramFile_ResourceErrorDialogTitle=Error
InitDiagramFile_ResourceErrorDialogMessage=Model file loading failed
InitDiagramFile_WizardTitle=Initialize new {0} diagram file
InitDiagramFile_OpenModelFileDialogTitle=Select domain model
AcoreNewDiagramFileWizard_CreationPageName=Initialize new diagram file
AcoreNewDiagramFileWizard_CreationPageTitle=Diagram file
AcoreNewDiagramFileWizard_CreationPageDescription=Create new diagram based on {0} model content
AcoreNewDiagramFileWizard_RootSelectionPageName=Select diagram root element
AcoreNewDiagramFileWizard_RootSelectionPageTitle=Diagram root element
AcoreNewDiagramFileWizard_RootSelectionPageDescription=Select semantic model element to be depicted on diagram
AcoreNewDiagramFileWizard_RootSelectionPageSelectionTitle=Select diagram root element:
AcoreNewDiagramFileWizard_RootSelectionPageNoSelectionMessage=Diagram root element is not selected
AcoreNewDiagramFileWizard_RootSelectionPageInvalidSelectionMessage=Invalid diagram root element is selected
AcoreNewDiagramFileWizard_InitDiagramCommand=Initializing diagram contents
AcoreNewDiagramFileWizard_IncorrectRootError=Incorrect model object stored as a root resource object
AcoreDiagramEditor_SavingDeletedFile=The original file "{0}" has been deleted.
AcoreDiagramEditor_SaveAsErrorTitle=Problem During Save As...
AcoreDiagramEditor_SaveAsErrorMessage=Save could not be completed. Target file is already open in another editor.
AcoreDiagramEditor_SaveErrorTitle=Save Problems
AcoreDiagramEditor_SaveErrorMessage=Could not save file.
AcoreElementChooserDialog_SelectModelElementTitle=Select model element
ModelElementSelectionPageMessage=Select model element:
ValidateActionMessage=Validate
Node1Group_title=Node
Connections2Group_title=Connections
AClass1CreationTool_title=AClass
AClass1CreationTool_desc=Create new AClass
AInterface2CreationTool_title=AInterface
AInterface2CreationTool_desc=Create new AInterface
AAttribute3CreationTool_title=AAttribute
AAttribute3CreationTool_desc=Create an Attribute
AOperation4CreationTool_title=AOperation
AOperation4CreationTool_desc=Create an Operation
Inherits1CreationTool_title=inherits
Inherits1CreationTool_desc=Create new AClassSubClasses
Implements2CreationTool_title=implements
Implements2CreationTool_desc=Create new AClassImplementedInterfaces
Association3CreationTool_title=association
Association3CreationTool_desc=Create new AClassSubClasses
Aggregation4CreationTool_title=aggregation
Aggregation4CreationTool_desc=Create new AClassSubClasses
Composition5CreationTool_title=composition
Composition5CreationTool_desc=Create new AClassSubClasses
AInterfaceAAttributeInterfaceCompartmentEditPart_title=AAttributeInterfaceCompartment
AInterfaceAOperationInterfaceCompartmentEditPart_title=AOperationInterfaceCompartment
AClassAAttributeCompartmentEditPart_title=AAttributeCompartment
AClassAOperationClassCompartmentEditPart_title=AOperationClassCompartment

CommandName_OpenDiagram=Open Diagram
NavigatorGroupName_AClassSubClasses_4001_target=target
NavigatorGroupName_AClassSubClasses_4001_source=source
NavigatorGroupName_AClassCompositions_4005_target=target
NavigatorGroupName_AClassCompositions_4005_source=source
NavigatorGroupName_AInterface_2001_incominglinks=incoming links
NavigatorGroupName_AClassAggregations_4004_target=target
NavigatorGroupName_AClassAggregations_4004_source=source
NavigatorGroupName_AClassImplementedInterfaces_4002_target=target
NavigatorGroupName_AClassImplementedInterfaces_4002_source=source
NavigatorGroupName_AClass_2002_incominglinks=incoming links
NavigatorGroupName_AClass_2002_outgoinglinks=outgoing links
NavigatorGroupName_ACoreRoot_1000_links=links
NavigatorGroupName_AClassAssociations_4003_target=target
NavigatorGroupName_AClassAssociations_4003_source=source
NavigatorActionProvider_OpenDiagramActionName=Open Diagram
AbstractParser_UnexpectedValueType=Value of type {0} is expected
AbstractParser_WrongStringConversion=String value does not convert to {0} value
AbstractParser_UnknownLiteral=Unknown literal: {0}

MessageFormatParser_InvalidInputError=Invalid input at {0}
AcoreModelingAssistantProviderTitle=Select domain model element
AcoreModelingAssistantProviderMessage=Available domain model elements:
