###############################################################################
# Copyright (c) 2008, 2012 Obeo.
# 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
###############################################################################

_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_GenEditionContext_type = Gen Edition Context
_UI_Unknown_type = Object

_UI_Unknown_datatype= Value

_UI_GenEditionContext_PropertiesEditionContext_feature = Properties Edition Context
_UI_GenEditionContext_basePackage_feature = Base Package
_UI_GenEditionContext_genDirectory_feature = Gen Directory
_UI_Unknown_feature = Unspecified

_UI_GenEditionContext_PropertiesEditionContext_description = The PropertiesEditioContext to describe
_UI_GenEditionContext_basePackage_description = The base package for all the generated code
_UI_GenEditionContext_genDirectory_description = The target directory for the generated code
_UI_GenEditionContext_swtViews_feature = Swt Views
_UI_GenEditionContext_swtViews_description = Whether to include the SWT implementation of views
_UI_GenEditionContext_formViews_feature = Form Views
_UI_GenEditionContext_formViews_description = Whether to include the Eclipse Forms implementation of views
_UI_GenEditionContext_descriptorsGenericPropertiesViews_feature = Descriptors Generic Properties Views
_UI_GenEditionContext_descriptorsGenericPropertiesViews_description = Whether to include a sample configuration for plugin.xml to use a generic EEF properties view
_UI_GenEditionContext_gmfPropertiesViews_feature = Gmf Properties Views
_UI_GenEditionContext_gmfPropertiesViews_description = Whether to include a views implementation and a sample configuration for plugin.xml to use EEF on a GMF modeler
_UI_ParametersPropertyCategory = Parameters
_UI_ActivationPropertyCategory = Activation
_UI_ReferencesPropertyCategory = References
_UI_GenEditionContext_helpStrategy_feature = Help Strategy
_UI_GenEditionContext_helpStrategy_description = Defines where the generators have to search the help entries
_UI_GenEditionContext_descriptorsContributorID_feature = Descriptors Contributor ID
_UI_GenEditionContext_descriptorsContributorID_description = Override if necessary the contributorID to use for generic descriptors
_UI_HELP_STRATEGY_GENMODEL_literal = GENMODEL
_UI_HELP_STRATEGY_ECOREMODEL_literal = ECOREMODEL
_UI_GenEditionContext_author_feature = Author
_UI_GenEditionContext_author_description = The string that must be generated for the @author tag
_UI_GenEditionContext_license_feature = License
_UI_GenEditionContext_license_description = The license text of the generated code
_UI_GenEditionContextReference_type = Gen Edition Context Reference
_UI_GenEditionContext_viewsPackagePrefix_feature = Views Package Prefix
_UI_GenEditionContext_references_feature = References
_UI_GenEditionContextReference_referencedContext_feature = Referenced Context
_UI_EEFGenModelReference_type = Model Reference
_UI_EEFGenModel_type = Model
_UI_GenViewsRepository_type = Gen Views Repository
_UI_EEFGenModelReference_referencedContext_feature = Referenced Context
_UI_EEFGenModel_editionContexts_feature = Edition Contexts
_UI_EEFGenModel_genDirectory_feature = Gen Directory
_UI_EEFGenModel_author_feature = Author
_UI_EEFGenModel_license_feature = License
_UI_EEFGenModel_references_feature = References
_UI_GenViewsRepository_viewsRepository_feature = Views Repository
_UI_GenViewsRepository_basePackage_feature = Base Package
_UI_GenViewsRepository_swtViews_feature = Swt Views
_UI_GenViewsRepository_formViews_feature = Form Views
_UI_GenViewsRepository_descriptorsGenericPropertiesViews_feature = Descriptors Generic Properties Views
_UI_GenViewsRepository_gmfPropertiesViews_feature = Gmf Properties Views
_UI_GenViewsRepository_helpStrategy_feature = Help Strategy
_UI_GenViewsRepository_descriptorsContributorID_feature = Descriptors Contributor ID
_UI_GenEditionContext_eefGenModel_feature = Eef Gen Model
_UI_EEFGenModel_viewsRepositories_feature = Views Repositories
_UI_GenViewsRepository_eefGenModel_feature = Eef Gen Model
_UI_GenEditionContext_generateJunitTestCases_feature = Generate Junit Test Cases
_UI_EEFGenModel_testsGenDirectory_feature = Tests Gen Directory
_UI_GenEditionContext_useJMergeForUserCode_feature = Use JMerge For User Code
_UI_EEFGenModel_useJMergeForUserCode_feature = Use JMerge For User Code
_UI_GenEditionContext_leafComponentsSuperClass_feature = Leaf Components Super Class
_UI_GenEditionContext_propertiesEditingProvidersSuperClass_feature = Properties Editing Providers Super Class
_UI_GenViewsRepository_partsSuperClass_feature = Parts Super Class
_UI_GenEditionContext_leafComponentsSuperClass_description = The base from which implementations of leaf PropertiesEditingComponents extend
_UI_GenEditionContext_propertiesEditingProvidersSuperClass_description = The base from which implementations of leaf PropertiesEditingProviders extend
_UI_GenViewsRepository_partsSuperClass_description = The base from which implementations of leaf PropertiesEditingParts extend
_UI_implementationPropertyCategory = implementation
_UI_GenViewsRepository_formsSuperClass_feature = Forms Super Class
