# Copyright (c) 2006, 2009 IBM Corporation, Embarcadero Technologies, 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: 
#   IBM - initial API and implementation
#   Kenn Hussey (Embarcadero Technologies) - 204200
#
# $Id: plugin.properties,v 1.9 2009/04/07 18:24:02 jbruck Exp $

# NLS_MESSAGEFORMAT_VAR

pluginName = UML2 UML Examples UI
providerName = Eclipse Modeling Project

_UI_editorActions_label = UML2 UML Examples UI Editor Actions

_UI_DiagnosticOK_message = The operation was successful.
_UI_DiagnosticProblems_message = Problems were ecountered.

_UI_OptionsDialog_message = Please choose options.

_UI_ConvertToUMLModelAction_label = &Convert to UML Model...
_UI_ConvertToUMLActionCommand_label = Convert package ''{0}'' to UML model
_UI_ConvertingToUML_message = Converting package ''{0}'' to UML model...

_UI_ConvertToMenu_label = &Convert To

_UI_EcoreModelAction_label = &Ecore Model...
_UI_ConvertToEcoreActionCommand_label = Convert package ''{0}'' to Ecore package
_UI_ConvertingToEcore_message = Converting package ''{0}'' to Ecore package...

_UI_MetamodelAction_label = &Metamodel
_UI_ConvertToMetamodelActionCommand_label = Convert model {0} to a metamodel

_UI_ModelLibraryAction_label = Model &Library
_UI_ConvertToModelLibraryActionCommand_label = Convert model {0} to a model library

_UI_GenerateMenu_label = &Generate

_UI_PrimitiveTypesMenu_label = &Primitive Types

_UI_StereotypesMenu_label = &Stereotypes

_UI_EcoreAction_label = &Ecore
_UI_GenerateEcorePrimitiveTypesActionCommand_label = Generate Ecore primitive types into model {0}
_UI_GenerateEcoreStereotypesActionCommand_label = Generate Ecore stereotypes into profile {0}

_UI_JavaAction_label = &Java
_UI_GenerateJavaPrimitiveTypesActionCommand_label = Generate Java primitive types into model {0}

_UI_StandardAction_label = &Standard
_UI_GenerateStandardStereotypesActionCommand_label = Generate standard stereotypes into profile {0}

_UI_UML2Action_label = &UML2
_UI_GenerateUML2StereotypesActionCommand_label = Generate UML2 stereotypes into profile {0}

_UI_UMLAction_label = &UML
_UI_GenerateUMLPrimitiveTypesActionCommand_label = Generate UML primitive types into model {0}

_UI_ExternalizeMenu_label = E&xternalize

_UI_KeywordsAction_label = &Keywords
_UI_LabelsAction_label = &Labels

_UI_XMLAction_label = &XML
_UI_GenerateXMLPrimitiveTypesActionCommand_label = Generate XML primitive types into Model {0}
