
# <copyright>
##
#  Copyright (c) 2009-2010 Thales Corporate Services S.A.S.
#  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:
#      Thales Corporate Services S.A.S - initial API and implementation
##
# </copyright>
#
# $Id$

pluginName = EGF Jet Pattern Edit
providerName = Eclipse Modeling Project

_UI_CreateChild_text = {0}
_UI_CreateChild_text2 = {1} {0}
_UI_CreateChild_text3 = {1}
_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.

_UI_PropertyDescriptor_description = The {0} of the {1}

_UI_JetNature_type = Jet Nature
_UI_JetRunner_type = Jet Runner
_UI_Unknown_type = Object

_UI_Unknown_datatype= Value

_UI_Unknown_feature = Unspecified

_UI_JetNature_templateClassName_feature = Template Class Name
_UI_JetEngine_type = Jet Engine
