# /**
#  * Copyright (c) 2002-2010 IBM Corporation 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: 
#  *   IBM - Initial API and implementation
#  */

# NLS_MESSAGEFORMAT_VAR

pluginName = EMF Ecore Code Generator UI
providerName = Eclipse Modeling Project

_UI_GenModel_Editor = EMF Generator

_UI_EcorePropertyCategory = Ecore
_UI_ModelPropertyCategory = Model
_UI_EditPropertyCategory = Edit
_UI_EditorPropertyCategory = Editor
_UI_AllPropertyCategory = All
_UI_JETPropertyCategory = Templates & Merge

_UI_GenModel_type = Model
_UI_GenPackage_type = Package
_UI_GenClass_type = Class
_UI_GenFeature_type = Feature
_UI_GenBase_type = Base
_UI_GenEnum_type = Enum
_UI_GenEnumLiteral_type = Enum Literal
_UI_GenClassifier_type = Classifier
_UI_GenDataType_type = Data Type
_UI_GenOperation_type = Operation
_UI_GenParameter_type = Parameter
_UI_GenTypedElement_type = Typed Element
_UI_Unknown_type = Object

_UI_PropertyDescriptor_description = The {0} of the {1}

_UI_GenModel_copyrightText_feature = Copyright Text
_UI_GenModel_copyrightText_description = A copyright string to appear in the header of each generated artifact
_UI_GenModel_modelDirectory_feature = Model Directory
_UI_GenModel_modelDirectory_description = The target directory for generated model code
_UI_GenModel_creationCommands_feature = Creation Commands
_UI_GenModel_creationCommands_description = Whether to include support for child creation
_UI_GenModel_editDirectory_feature = Edit Directory
_UI_GenModel_editDirectory_description = The target directory for generated edit code
_UI_GenModel_editorDirectory_feature = Editor Directory
_UI_GenModel_editorDirectory_description = The target directory for generated editor code
_UI_GenModel_modelPluginID_feature = Model Plug-in ID
_UI_GenModel_modelPluginID_description = The unique string that identifies the model plug-in to Eclipse
_UI_GenModel_templateDirectory_feature = Template Directory
_UI_GenModel_templateDirectory_description = The location of the dynamic templates directory
_UI_GenModel_runtimeJar_feature = Runtime Jar
_UI_GenModel_dynamicTemplates_feature = Dynamic Templates
_UI_GenModel_dynamicTemplates_description = Whether to ignore precompiled, packaged templates
_UI_GenModel_redirection_feature = Redirection Pattern
_UI_GenModel_redirection_description = Redirect output to the specified alternate file names (use {0} in place of the normal file name)
_UI_GenModel_forceOverwrite_feature = Force Overwrite
_UI_GenModel_forceOverwrite_description = Whether to overwrite existing read-only files
_UI_GenModel_modelName_feature = Model Name
_UI_GenModel_modelName_description = The name of the model
_UI_GenModel_modelPluginClass_feature = Model Plug-in Class
_UI_GenModel_modelPluginClass_description = The fully qualified name for the model plug-in class
_UI_GenModel_editPluginClass_feature = Edit Plug-in Class
_UI_GenModel_editPluginClass_description = The fully qualified name for the edit plug-in class
_UI_GenModel_editorPluginClass_feature = Editor Plug-in Class
_UI_GenModel_editorPluginClass_description = The fully qualified name for the editor plug-in class
_UI_GenModel_updateClasspath_feature = Update Classpath
_UI_GenModel_updateClasspath_description = Whether project classpaths or manifests should be updated during generation
_UI_GenModel_generateSchema_feature = Generate Schema
_UI_GenModel_generateSchema_description = Whether an XML Schema should be generated with the model
_UI_GenModel_nonNLSMarkers_feature = Non-NLS Markers
_UI_GenModel_nonNLSMarkers_description = Whether strings that do not require externalization should be marked

_UI_GenPackage_prefix_feature = Prefix
_UI_GenPackage_prefix_description = The prefix for names of several packaged-related classes, including package, factory, switch, and adapter factory
_UI_GenPackage_basePackage_feature = Base Package
_UI_GenPackage_basePackage_description = The base package for all generated code
_UI_GenPackage_resource_feature = Resource Type
_UI_GenPackage_resource_description = Whether to generate model-specific resource and resource factory implementations and which basic type to extend
_UI_GenPackage_adapterFactory_feature = Adapter Factory
_UI_GenPackage_adapterFactory_description = Whether to generate an adapter factory and switch class for the package
_UI_GenPackage_ecorePackage_feature = Package
_UI_GenPackage_ecorePackage_description = The Ecore model element for this package

_UI_GenClass_provider_feature = Provider Type
_UI_GenClass_provider_description = Whether to generate an item provider and which pattern to use
_UI_GenClass_labelFeature_feature = Label Feature
_UI_GenClass_labelFeature_description = Which feature the item provider should use in forming the object labels
_UI_GenClass_image_feature = Image
_UI_GenClass_image_description = Whether to generate an icon file for this class
_UI_GenClass_ecoreClass_feature = Class
_UI_GenClass_ecoreClass_description = The Ecore model element for this class

_UI_GenFeature_property_feature = Property Type
_UI_GenFeature_property_description = Whether this feature should be included in the property sheet and whether it should be editable
_UI_GenFeature_notify_feature = Notify
_UI_GenFeature_notify_description = Whether the item provider should forward notifications for this feature
_UI_GenFeature_children_feature = Children
_UI_GenFeature_children_description = Whether objects in this feature are returned as children
_UI_GenFeature_ecoreFeature_feature = Feature
_UI_GenFeature_ecoreFeature_description = The Ecore model element for this structural feature

_UI_GenEnum_ecoreEnum_feature = Enum
_UI_GenEnum_ecoreEnum_description = The Ecore model element for this enumerated type

_UI_GenEnumLiteral_ecoreEnumLiteral_feature = Enum Literal
_UI_GenEnumLiteral_ecoreEnumLiteral_description = The Ecore model element for this enumerated type literal

_UI_GenDataType_ecoreDataType_feature = Data Type
_UI_GenDataType_ecoreDataType_description = The Ecore model element for this data type

_UI_GenOperation_ecoreOperation_feature = Operation
_UI_GenOperation_ecoreOperation_description = The Ecore model element for this operation

_UI_GenParameter_ecoreParameter_feature = Parameter
_UI_GenParameter_ecoreParameter_description = The Ecore model element for this parameter

_UI_SingleObjectSelected = Selected object: {0}
_UI_NoObjectSelected = Selected nothing
_UI_MultiObjectSelected = Selected {0} objects
_UI_FileConflict_label = File Conflict
_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor.  Do you wish to discard this editor's changes?

_UI_Generate_menu = &Generator
_UI_GenerateModel_menu_item = Generate &Model Code
_UI_GenerateEdit_menu_item = Generate Ed&it Code
_UI_GenerateEditor_menu_item = Generate Edit&or Code
_UI_GenerateAll_menu_item = Generate &All

_UI_ModelProblems_title = Model Problems

_UI_Unknown_feature = Unspecified

_UI_GenModel_staticPackages_feature = Static Packages
_UI_GenModel_staticPackages_description = If a Root Implements Interface is specified and is a modeled class, but is not available within the generator model, enter the namespace URI of its package
_UI_GenModel_modelPluginVariables_feature = Model Plug-in Variables
_UI_GenModel_modelPluginVariables_description = Plug-ins to be included in the model's classpath, optionally specifying classpath variable names (as VARIABLE=plugin.id)
_UI_GenModel_rootExtendsInterface_feature = Root Extends Interface
_UI_GenModel_rootExtendsInterface_description = The base from which interfaces for model classes with no supertypes extend
_UI_GenModel_rootExtendsClass_feature = Root Extends Class
_UI_GenModel_rootExtendsClass_description = The base from which implementations of model classes with no supertypes extend
_UI_GenModel_rootImplementsInterface_feature = Root Implements Interface
_UI_GenModel_rootImplementsInterface_description = An interface already implemented by the Root Extends Class, which must also be mixed in by classes whose supertypes do not implement it themselves
_UI_GenModel_suppressEMFTypes_feature = Suppress EMF Types
_UI_GenModel_suppressEMFTypes_description = Whether to use standard Java, rather than EMF, collection and object types for features and operations
_UI_GenModel_featureMapWrapperInterface_feature = Feature Map Wrapper Interface
_UI_GenModel_featureMapWrapperInterface_description = An alternate interface for feature maps to be provided by a wrapper
_UI_GenModel_featureMapWrapperInternalInterface_feature = Feature Map Wrapper Internal Interface
_UI_GenModel_featureMapWrapperInternalInterface_description = An internal interface for handling feature map wrappers within the class implementation
_UI_GenModel_featureMapWrapperClass_feature = Feature Map Wrapper Class
_UI_GenModel_featureMapWrapperClass_description = A wrapper class for feature maps to present an alternate interface

_UI_ModelClassPropertyCategory = Model Class Defaults
_UI_ModelFeaturePropertyCategory = Model Feature Defaults

_UI_GenerateSchema_menu_item = Generate &Schema

# Block the following properties from being generated
#
#_UI_GenModelModelWizard_description = Create a new GenModel model
#_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
#_UI_GenModelModelWizard_label = GenModel Model
#_UI_Wizard_initial_object_description = Select a model object to create
#_UI_OpenEditorError_label = Open Editor
#_UI_Wizard_category = Example EMF Model Creation Wizards
#_UI_GenModelEditorFilenameDefaultBase = My
#_UI_ListPage_label = List
#_UI_GenModelEditor_menu = &GenModel Editor
#_UI_TablePage_label = Table
#_UI_ParentPage_label = Parent
#_UI_ObjectColumn_label = Object
#_UI_TreePage_label = Tree
#_UI_SelfColumn_label = Self
#_UI_XMLEncoding = XML Encoding
#_UI_Wizard_label = New
#_UI_GenModelEditor_label = GenModel Model Editor
#_UI_SelectionPage_label = Selection
#_UI_ModelObject = Model Object
#_WARN_FilenameExtension = The filename must end in ".{0}"
#_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
#_UI_GenModelEditorFilenameExtensions = genmodel
_UI_ShowPropertiesView_menu_item = Show &Properties View
_UI_RefreshViewer_menu_item = &Refresh
_UI_GenFeature_createChild_feature = Create Child
_UI_GenFeature_createChild_description = Whether child objects can be created via this feature
_UI_GenModel_runtimeCompatibility_feature = Runtime Compatibility
_UI_GenModel_runtimeCompatibility_description = Whether to generate with runtime compatibility support
_UI_GenModel_richClientPlatform_feature = Rich Client Platform
_UI_GenModel_richClientPlatform_description = Whether to generate for Rich Client Platform
_UI_GenPackage_loadInitialization_feature = Initialize by Loading
_UI_GenPackage_loadInitialization_description = Whether to initialize package metadata by loading from serialized form (required for large models)
_UI_GenModel_reflectiveDelegation_feature = Reflective Delegation
_UI_GenModel_reflectiveDelegation_description = Whether the generated accessor methods should delegate to the reflective methods
_UI_GenPropertyKind_Editable_literal = Editable
_UI_GenResourceKind_None_literal = None
_UI_GenResourceKind_XMI_literal = XMI
_UI_GenPropertyKind_None_literal = None
_UI_GenProviderKind_None_literal = None
_UI_GenPropertyKind_Readonly_literal = Readonly
_UI_GenResourceKind_Basic_literal = Basic
_UI_GenProviderKind_Stateful_literal = Stateful
_UI_GenProviderKind_Singleton_literal = Singleton
_UI_GenResourceKind_XML_literal = XML

_UI_Unknown_datatype= Value
_UI_GenPackage_disposableProviderFactory_feature = Disposable Provider Factory
_UI_GenPackage_disposableProviderFactory_description = Whether the generated item provider adapter factory should be able to dispose its item providers
_UI_GenModel_codeFormatting_feature = Code Formatting
_UI_GenModel_codeFormatting_description = Whether to fully format generated Java files with the JDT code formatter
_UI_GenModel_commentFormatting_feature = Comment Formatting
_UI_GenModel_commentFormatting_description = Whether to fully format comments in generated Java files with the JDT code formatter

_UI_GenModel_testsDirectory_feature = Tests Directory
_UI_GenModel_testsDirectory_description = The target directory for generated unit tests
_UI_GenModel_testSuiteClass_feature = Test Suite Class
_UI_GenModel_testSuiteClass_description = The fully qualified name for the test suite class

_UI_TestsPropertyCategory = Tests

_UI_GenerateTests_menu_item = Generate &Test Code

_UI_GenModel_booleanFlagsField_feature = Boolean Flags Field
_UI_GenModel_booleanFlagsField_description = Name of the bit field in which to represent values of boolean attributes and whether unsettable features are set
_UI_GenModel_booleanFlagsReservedBits_feature = Boolean Flags Reserved Bits
_UI_GenModel_booleanFlagsReservedBits_description = Number of bits to reserve in the boolean flags field, typically because they are used by parent classes
_UI_GenModel_creationIcons_feature = Creation Icons
_UI_GenModel_creationIcons_description = Whether to generate child creation icons
_UI_GenFeature_propertyCategory_feature = Property Category
_UI_GenFeature_propertyCategory_description = The category for this feature's property descriptor
_UI_GenFeature_propertyFilterFlags_feature = Property Filter Flags
_UI_GenFeature_propertyFilterFlags_description = The filter flags for this feature's property descriptor
_UI_GenFeature_propertyDescription_feature = Property Description
_UI_GenFeature_propertyDescription_description = The description for this feature's property descriptor

_UI_Wizard_Category = Eclipse Modeling Framework

_UI_NewEmptyProject_title = New Empty EMF Project
_UI_EmptyProject_title = Empty EMF Project
_UI_EmptyProject_description = Create an empty Java plug-in project with EMF dependencies

_UI_GenModelStub_label = [{0}]

_UI_GenPackage_interfacePackageSuffix_feature = Interface
_UI_GenPackage_reflectionPackageSuffix_feature = Reflection
_UI_GenPackage_classPackageSuffix_feature = Implementation
_UI_GenPackage_utilityPackageSuffix_feature = Utility
_UI_GenPackage_providerPackageSuffix_feature = Provider
_UI_GenPackage_presentationPackageSuffix_feature = Presentation
_UI_GenPackage_testsPackageSuffix_feature = Tests
_UI_PackageSuffixesPropertyCategory = Package Suffixes
_UI_GenPackage_interfacePackageSuffix_description = The suffix of the package for interfaces; it may use substitutions of the form {n} where {0} is the full name, e.g., x.y ("{0}" by default), {1} is the name of the root package, e.g., x, and so on
_UI_GenPackage_metaDataPackageSuffix_description = The suffix of the package for factory and package interfaces; it may use substitutions of the form {n} where {0} is the full name, e.g., x.y ("{0}" by default), {1} is the name of the root package, e.g., x, and so on
_UI_GenPackage_classPackageSuffix_description = The suffix of the package for implementation classes; it may use substitutions of the form {n} where {0} is the full name, e.g., x.y ("{0}.impl" by default), {1} is the name of the root package, e.g., x, and so on
_UI_GenPackage_utilityPackageSuffix_description = The suffix of the package for utility classes; it may use substitutions of the form {n} where {0} is the full name, e.g., x.y ("{0}.util" by default), {1} is the name of the root package, e.g., x, and so on
_UI_GenPackage_providerPackageSuffix_description = The suffix of the package for item providers; it may use substitutions of the form {n} where {0} is the full name, e.g., x.y ("{0}.provider" by default), {1} is the name of the root package, e.g., x, and so on
_UI_GenPackage_presentationPackageSuffix_description = The suffix of the package for UI classes; it may use substitutions of the form {n} where {0} is the full name, e.g., x.y ("{0}.presentation" by default), {1} is the name of the root package, e.g., x, and so on
_UI_GenPackage_testsPackageSuffix_description = The suffix of the package for JUnit tests; it may use substitutions of the form {n} where {0} is the full name, e.g., x.y ("{0}.tests" by default), {1} is the name of the root package, e.g., x, and so on
_UI_GenPackage_generateExampleClass_feature = Generate Example Class
_UI_GenPackage_generateExampleClass_description = Whether to generate an example class in the test plug-in
_UI_GenModel_bundleManifest_feature = Bundle Manifest
_UI_GenModel_bundleManifest_description = Whether to generate the OSGi bundle manifest
_UI_GenModel_runtimeJar_description = Whether the compiled classes are to be packaged in a JAR file (for JARed plug-ins, this should be false)
_UI_GenModel_featureDelegation_feature = Feature Delegation
_UI_GenModel_featureDelegation_description = Delegation pattern to use for feature accessors
_UI_GenDelegationKind_None_literal = None
_UI_GenDelegationKind_Reflective_literal = Reflective
_UI_GenDelegationKind_Virtual_literal = Virtual
_UI_GenModel_containmentProxies_feature = Containment Proxies
_UI_GenModel_containmentProxies_description = Whether to respect the resolveProxies setting for containment references
_UI_GenPackage_literalsInterface_feature = Literals Interface
_UI_GenPackage_literalsInterface_description = Whether to generate an interface defining metadata literals
_UI_GenModel_minimalReflectiveMethods_feature = Minimal Reflective Methods
_UI_GenModel_minimalReflectiveMethods_description = Whether reflective methods should call super and be smaller or duplicate the code from super and be faster
_UI_GenClass_dynamic_feature = Dynamic
_UI_GenClass_dynamic_description = Whether to use a dynamic implementation instead of a generated implementation
_UI_GenModel_suppressEMFModelTags_feature = Suppress EMF Model Tags
_UI_GenModel_suppressEMFModelTags_description = Whether to suppress the generation of @model tags in the Javadoc
_UI_GenModel_suppressInterfaces_feature = Suppress Interfaces
_UI_GenModel_suppressInterfaces_description = Whether to generate separate interface and implementation classes
_UI_GenModel_suppressEMFMetaData_feature = Suppress EMF Metadata
_UI_GenModel_suppressEMFMetaData_description = Whether to suppress the generated package from the interface
_UI_GenPackage_metaDataPackageSuffix_feature = Metadata
_UI_GenAnnotation_type = Gen Annotation
_UI_GenAnnotation_source_feature = Source
_UI_GenAnnotation_references_feature = References

_UI_ShowGenAnnotation_menu_item = Show A&nnotations
_UI_Annotate_menu_item = A&nnotate
_UI_Annotate_text = Annotate
_UI_AddDetail_menu_item = Add &Detail
_UI_AddDetail_text = Add Detail
_UI_GenModel_suppressContainment_feature = Suppress Containment
_UI_GenModel_suppressContainment_description = Whether to suppress the support for containment features updating the container
_UI_GenModel_suppressNotification_feature = Suppress Notification
_UI_GenModel_suppressNotification_description = Whether to suppress generating support for notification
_UI_GenModel_arrayAccessors_feature = Array Accessors
_UI_GenModel_arrayAccessors_description = Whether to generate bean-like array accessors for many-valued features
_UI_GenPackage_dataTypeConverters_feature = Data Type Converters
_UI_GenPackage_dataTypeConverters_description = Whether to generate converters for data types in the factory and the resource
_UI_GenModel_suppressUnsettable_feature = Suppress Unsettable
_UI_GenModel_suppressUnsettable_description = Whether to suppress generated support for unsettable features 

_UI_OpenEcore_menu_item = Open &Ecore
_UI_OpenGenModel_menu_item = Open &GenModel
_UI_GenModel_facadeHelperClass_feature = Facade Helper Class
_UI_GenModel_facadeHelperClass_description = The class to be used to provide an implementation of the source manipulation API for merging Java code

_UI_GenerationProblems_title = Code Generation Problems
_UI_GenerationProblems_message = Problems encountered during code generation. Select detail entries for more information.
_UI_GenPackage_multipleEditorPages_feature = Multiple Editor Pages
_UI_GenPackage_multipleEditorPages_description = Whether the generated editor should have multiple pages
_UI_CreateModelError_message = Problems encountered in file "{0}"

_UI_SelectionPage_label = Generator
_UI_GenFeature_propertyMultiLine_feature = Property Multi-line
_UI_GenFeature_propertyMultiLine_description = Whether this feature should be edited as a multi-line property
_UI_GenFeature_propertySortChoices_feature = Property Sort Choices
_UI_GenFeature_propertySortChoices_description = Whether the choices for values of this feature should be sorted for display when editing the property
_UI_GenPackage_generateModelWizard_feature = Generate Model Wizard
_UI_GenPackage_generateModelWizard_description = Whether to generate a wizard for creating new instances of the model

_UI_GenModel_complianceLevel_feature = Compliance Level
_UI_GenModel_complianceLevel_description = The JDK compliance level for the generated Java code
_UI_GenJDKLevel_JDK14_literal = 1.4
_UI_GenJDKLevel_JDK50_literal = 5.0
_UI_GenJDKLevel_JDK60_literal = 6.0
_UI_GenJDKLevel_JDK70_literal = 7.0
_UI_GenJDKLevel_JDK80_literal = 8.0
_UI_GenJDKLevel_JDK90_literal = 9.0
_UI_GenJDKLevel_JDK100_literal = 10.0
_UI_GenJDKLevel_JDK110_literal = 11.0
_UI_GenJDKLevel_JDK120_literal = 12.0
_UI_GenJDKLevel_JDK130_literal = 13.0
_UI_GenJDKLevel_JDK140_literal = 14.0
_UI_GenJDKLevel_JDK150_literal = 15.0
_UI_GenJDKLevel_JDK160_literal = 16.0
_UI_GenJDKLevel_JDK170_literal = 17.0

_UI_GenTypeParameter_type = Gen Type Parameter
_UI_GenTypeParameter_ecoreTypeParameter_feature = Ecore Type Parameter
_UI_GenEnum_typeSafeEnumCompatible_feature = Type Safe Enum Compatible
_UI_GenEnum_typeSafeEnumCompatible_description = Whether to generate the Java 5.0 enum to be binary compatible with the older type safe enum pattern
_UI_GenModel_creationSubmenus_feature = Creation Sub-menus
_UI_GenModel_creationSubmenus_description = Whether to organize qualified child creation actions into sub-menus
_UI_GenModel_suppressGenModelAnnotations_feature = Suppress GenModel Annotations
_UI_GenModel_suppressGenModelAnnotations_description = Whether to suppress generation-related annotations, like those that record documentation and operation bodies, from the package metadata
_UI_GenModel_copyrightFields_feature = Copyright Fields
_UI_GenModel_copyrightFields_description = Whether the copyright text should be used to produce a field in each generated class
_UI_GenModel_binaryCompatibleReflectiveMethods_feature = Binary Compatible Reflective Methods
_UI_GenModel_binaryCompatibleReflectiveMethods_description = Whether to generate slower reflective method implementations that remain binary compatible even when features are added to base classes defined in other models
_UI_GenModel_publicConstructors_feature = Public Constructors
_UI_GenModel_publicConstructors_description = Whether generated model classes should have public, rather than protected, constructors
_UI_GenModel_templatePluginVariables_feature = Template Plug-in Variables
_UI_GenModel_templatePluginVariables_description = Plug-ins to be included in the .JETEmitter project's classpath, optionally specifying classpath variable names (as VARIABLE=plugin.id)
_UI_GenModel_providerRootExtendsClass_feature = Provider Root Extends Class
_UI_GenModel_providerRootExtendsClass_description = The base from which implementations of item providers for classes with no supertypes extend
_UI_GenModel_editPluginID_feature = Edit Plug-in ID
_UI_GenModel_editPluginID_description = The unique string that identifies the edit plug-in to Eclipse
_UI_GenModel_editPluginVariables_feature = Edit Plug-in Variables
_UI_GenModel_editPluginVariables_description = Plug-ins to be included in the edit plug-in's classpath, optionally specifying classpath variable names (as VARIABLE=plugin.id)
_UI_GenModel_editorPluginID_feature = Editor Plug-in ID
_UI_GenModel_editorPluginID_description = The unique string that identifies the editor plug-in to Eclipse
_UI_GenModel_editorPluginVariables_feature = Editor Plug-in Variables
_UI_GenModel_editorPluginVariables_description = Plug-ins to be included in the editor plug-in's classpath, optionally specifying classpath variable names (as VARIABLE=plugin.id)
_UI_GenModel_testsPluginID_feature = Tests Plug-in ID
_UI_GenModel_testsPluginID_description = The unique string that identifies the tests plug-in to Eclipse
_UI_GenModel_testsPluginVariables_feature = Tests Plug-in Variables
_UI_GenModel_testsPluginVariables_description = Plug-ins to be included in the tests plug-in's classpath, optionally specifying classpath variable names (as VARIABLE=plugin.id)
_UI_GenModel_optimizedHasChildren_feature = Optimized Has Children
_UI_GenModel_optimizedHasChildren_description = Whether item providers should use an optimized hasChildren() implementation that does not access children values where possible
_UI_GenModel_tableProviders_feature = Table Providers
_UI_GenModel_tableProviders_description = Whether item providers should provide support for specifying column labels
_UI_GenModel_colorProviders_feature = Color Providers
_UI_GenModel_colorProviders_description = Whether item providers should provide support for specifying label colors
_UI_GenModel_fontProviders_feature = Font Providers
_UI_GenModel_fontProviders_description = Whether item providers should provide support for specifying label fonts
_UI_GenPackage_extensibleProviderFactory_feature = Extensible Provider Factory
_UI_GenPackage_extensibleProviderFactory_description = Whether the generated item provider adapter factory should support extensible child creation
_UI_GenPackage_childCreationExtenders_feature = Child Creation Extenders
_UI_GenPackage_childCreationExtenders_description = Whether the generated item provider adapter factory should include child creation extenders
_UI_GenModel_runtimeVersion_feature = Runtime Version
_UI_GenModel_runtimeVersion_description = The version of the EMF runtime against which to target the generated code
_UI_GenRuntimeVersion__22_literal = _22
_UI_GenRuntimeVersion__23_literal = _23
_UI_GenRuntimeVersion__24_literal = _24
_UI_GenModel_language_feature = Language
_UI_GenModel_language_description = The two letter code for the language to use, instead of the system default, in computing upper and lower case strings

_UI_GenRuntimeVersion_EMF22_literal = 2.2
_UI_GenRuntimeVersion_EMF23_literal = 2.3
_UI_GenRuntimeVersion_EMF24_literal = 2.4
_UI_GenRuntimeVersion_EMF25_literal = 2.5
_UI_GenRuntimeVersion_EMF26_literal = 2.6
_UI_GenRuntimeVersion_EMF27_literal = 2.7
_UI_GenRuntimeVersion_EMF28_literal = 2.8
_UI_GenRuntimeVersion_EMF29_literal = 2.9
_UI_GenRuntimeVersion_EMF210_literal = 2.10
_UI_GenRuntimeVersion_EMF211_literal = 2.11
_UI_GenRuntimeVersion_EMF212_literal = 2.12
_UI_GenRuntimeVersion_EMF213_literal = 2.13
_UI_GenRuntimeVersion_EMF214_literal = 2.14
_UI_GenRuntimeVersion_EMF215_literal = 2.15
_UI_GenRuntimeVersion_EMF216_literal = 2.16
_UI_GenRuntimeVersion_EMF217_literal = 2.17
_UI_GenRuntimeVersion_EMF218_literal = 2.18
_UI_GenRuntimeVersion_EMF219_literal = 2.19
_UI_GenRuntimeVersion_EMF220_literal = 2.20
_UI_GenRuntimeVersion_EMF221_literal = 2.21
_UI_GenRuntimeVersion_EMF222_literal = 2.22
_UI_GenRuntimeVersion_EMF223_literal = 2.23
_UI_GenRuntimeVersion_EMF224_literal = 2.24
_UI_GenRuntimeVersion_EMF225_literal = 2.25
_UI_GenRuntimeVersion_EMF226_literal = 2.26

_UI_GenPackage_contentTypeIdentifier_feature = Content Type Identifier
_UI_GenPackage_contentTypeIdentifier_description = A content type identifier against which to register this model's resource factory
_UI_GenPackage_fileExtensions_feature = File Extensions
_UI_GenPackage_fileExtensions_description = The file extension against which to register the model's resource factory, or multiple, comma-separated file extensions for its content type
_UI_GenModel_packedEnums_feature = Packed Enums
_UI_GenModel_packedEnums_description = Whether the values of enum attributes should be packed in the boolean flags bit field
_UI_GenDelegationKind_Dynamic_literal = Dynamic
_UI_GenModel_interfaceNamePattern_feature = Interface Name Pattern
_UI_GenModel_interfaceNamePattern_description = Pattern for deriving interface names from model element names ("{0}" by default)
_UI_GenModel_classNamePattern_feature = Class Name Pattern
_UI_GenModel_classNamePattern_description = Pattern for deriving class names from model element names ("{0}Impl" by default)

_UI_EMFCodeGeneration_name = EMF Code Generation
_UI_EMFCommandCategory_description = Commands for the EMF code generation tools
_UI_GenerateCommand_name = Generate Code
_UI_GenerateCommand_description = Generate code for the EMF models in the workspace
_UI_ReconcileCommand_name = Reconcile
_UI_ReconcileCommand_description = Reconcile the Generator model with the current state of the underlying Ecore models
_UI_GeneratorOperationDiagnostic_message = Errors occurred while generating code
_UI_AnalyzingObjects_message = Analyzing objects...
_UI_LoadingGenModel_message = Loading generator models...
_UI_InvalidGenModel_message = Error validating the selected models 
_UI_Error_title = Error
_UI_SelectGenModelInvalid_message = The selected models are not valid
_UI_SomeSelectGenModelInvalid_message = The following models are not valid and will not be generated: {0}
_UI_Model_title = Model
_UI_Edit_title = Edit
_UI_Editor_title = Editor
_UI_Tests_title = Tests
_UI_GenModelFile_title = Generator Model File
_UI_GenModelGenerationDialog_title = Generate Code
_UI_GenModelGenerationDialog_message = Select the &projects that should be generated for each model:
_UI_GenModelGenerationDetail_message = Namespace URI of the packages in the selected generator model.
_UI_GenModelSelectionDialog_title = Select the generator model files
_UI_GenModel_operationReflection_feature = Operation Reflection
_UI_GenModel_operationReflection_description = Whether support for reflective operation invocation should be generated.
_UI_GenModel_richAjaxPlatform_feature = Rich Ajax Platform
_UI_GenModel_richAjaxPlatform_description = Whether to generate for Rich Ajax Platform
_UI_GenModel_runtimePlatform_feature = Runtime Platform
_UI_GenModel_runtimePlatform_description = The target runtime environment for which to generate
_UI_GenRuntimePlatform_IDE_literal = IDE
_UI_GenRuntimePlatform_RCP_literal = RCP
_UI_GenRuntimePlatform_RAP_literal = RAP
_UI_GenRuntimePlatform_GWT_literal = GWT

_UI_GenModel_importOrganizing_feature = Import Organizing
_UI_GenModel_importOrganizing_description = Whether to check for unused imports in the generated Java code and remove them
_UI_GenModel_pluginKey_feature = Plugin Key
_UI_GenModel_pluginKey_description = The key used for merging generated plugin.xml file contents; an empty string disables merging
_UI_GenModel_decoration_feature = Decoration
_UI_GenModel_decoration_description = The style of validation decorations to support
_UI_GenDecoration_None_literal = None
_UI_GenDecoration_Manual_literal = Manual
_UI_GenDecoration_Live_literal = Live

_UI_GenModel_styleProviders_feature = Style Providers
_UI_GenModel_styleProviders_description = Whether item providers should provide support for specifying styled labels
_UI_GenModel_cleanup_feature = Cleanup
_UI_GenModel_cleanup_description = Whether to invoke the configured source clean actions after generating
_UI_GenPackage_publicationLocation_feature = Publication Location
_UI_GenPackage_publicationLocation_description = The workspace-relative location at which to generate a published version of the Ecore model resource
_UI_GenModel_oSGiCompatible_feature = OSGi Compatible
_UI_GenModel_oSGiCompatible_description = Whether to generate bundles that are purely compatible with any OSGi runtime implementation

_UI_GenModel_eclipsePlatformVersion_feature = Eclipse Platform Version
_UI_GenModel_eclipsePlatformVersion_description = The version of the Eclipse runtime against which to target the generated code for an RCP or IDE runtime platform
_UI_GenEclipsePlatformVersion_Juno_literal = Juno - 4.2
_UI_GenEclipsePlatformVersion_Kepler_literal = Kepler - 4.3
_UI_GenEclipsePlatformVersion_Luna_literal = Luna - 4.4
_UI_GenEclipsePlatformVersion_Mars_literal = Mars - 4.5
_UI_GenEclipsePlatformVersion_Neon_literal = Neon - 4.6
_UI_GenEclipsePlatformVersion_Oxygen_literal = Oxygen - 4.7
_UI_GenEclipsePlatformVersion_Photon_literal = Photon - 4.8
_UI_GenEclipsePlatformVersion_Eclipse_2018_09_literal = 2018-09 - 4.9
_UI_GenEclipsePlatformVersion_Eclipse_2018_12_literal = 2018-12 - 4.10
_UI_GenEclipsePlatformVersion_Eclipse_2019_03_literal = 2019-03 - 4.11
_UI_GenEclipsePlatformVersion_Eclipse_2019_06_literal = 2019-06 - 4.12
_UI_GenEclipsePlatformVersion_Eclipse_2019_09_literal = 2019-09 - 4.13
_UI_GenEclipsePlatformVersion_Eclipse_2019_12_literal = 2019-12 - 4.14
_UI_GenEclipsePlatformVersion_Eclipse_2020_03_literal = 2020-03 - 4.15
_UI_GenEclipsePlatformVersion_Eclipse_2020_06_literal = 2020-06 - 4.16
_UI_GenEclipsePlatformVersion_Eclipse_2020_09_literal = 2020-09 - 4.17
_UI_GenEclipsePlatformVersion_Eclipse_2020_12_literal = 2020-12 - 4.18
_UI_GenEclipsePlatformVersion_Eclipse_2021_03_literal = 2021-03 - 4.19
_UI_GenEclipsePlatformVersion_Eclipse_2021_06_literal = 2021-06 - 4.20

_UI_GenModel_modelDocumentation_feature = Model Documentation
_UI_GenModel_modelDocumentation_description = The Javadoc documentation to generate for the model-level artifacts such as plug-in classes, including any @since or @deprecated tags
_UI_GenPackage_documentation_feature = Documentation
_UI_GenPackage_documentation_description = The Javadoc to be generated, including any @since or @deprecated tags
_UI_GenFeature_suppressedGetVisibility_feature = Suppressed Get Visibility
_UI_GenFeature_suppressedGetVisibility_description = Whether to suppress the generated get accessor from the interface
_UI_GenFeature_suppressedSetVisibility_feature = Suppressed Set Visibility
_UI_GenFeature_suppressedSetVisibility_description = Whether to suppress the generated set accessor from the interface
_UI_GenFeature_suppressedIsSetVisibility_feature = Suppressed Is Set Visibility
_UI_GenFeature_suppressedIsSetVisibility_description = Whether to suppress the generated is-set accessor from the interface
_UI_GenFeature_suppressedUnsetVisibility_feature = Suppressed Unset Visibility
_UI_GenFeature_suppressedUnsetVisibility_description = Whether to suppress the generated unset accessor from the interface
_UI_GenEnumLiteral_documentation_feature = Documentation
_UI_GenEnumLiteral_documentation_description = The Javadoc to be generated, including any @since or @deprecated tags
_UI_GenClassifier_documentation_feature = Documentation
_UI_GenClassifier_documentation_description = The Javadoc to be generated, including any @since or @deprecated tags
_UI_GenOperation_suppressedVisibility_feature = Suppressed Visibility
_UI_GenOperation_suppressedVisibility_description = Whether to suppress the generated method from the interface
_UI_GenTypedElement_documentation_feature = Documentation
_UI_GenTypedElement_documentation_description = The Javadoc to be generated, including any @since or @deprecated tags
_UI_GenTypeParameter_documentation_feature = Documentation
_UI_GenTypeParameter_documentation_description = The Javadoc to be generated
_UI_GenParameter_documentation_description = The Javadoc to be generated
_UI_GenModel_autoResizeProperties_feature = Auto Resize Properties
_UI_GenModel_autoResizeProperties_description = Whether the columns in the properties view should automatically resize to fit the content size as well as the client area
_UI_GenModel_autoExpandProperties_feature = Auto Expand Properties
_UI_GenModel_autoExpandProperties_description = The depth to which properties should be automatically expanded in the properties view
_UI_GenFeature_get_feature = Get-accessor Body
_UI_GenFeature_get_description = The body to be generated for the get-accessor method of the feature in the implementation class
_UI_GenDataType_create_feature = Create-from-string Body
_UI_GenDataType_create_description = The body to be generated for the create-from-string method of the data type in the factory implementation class
_UI_GenDataType_convert_feature = Convert-to-string Body
_UI_GenDataType_convert_description = The body to be generated for the convert-to-string method of the data type in the factory implementation class
_UI_GenOperation_body_feature = Body
_UI_GenOperation_body_description = The body to be generated for the method of the operation in the implementation class
_UI_GenFeature_propertyEditorFactory_feature = Property Editor Factory
_UI_GenFeature_propertyEditorFactory_description = A URI that specifies a registered property editor factory that will be used to create property editors
_UI_GenDataType_propertyEditorFactory_feature = Property Editor Factory
_UI_GenDataType_propertyEditorFactory_description = A URI that specifies a registered property editor factory that will be used to create property editors for attributes of this type
_UI_GenModel_findAction_feature = Find Action
_UI_GenModel_findAction_description = Whether the generated editor should support the Find/Replace action
_UI_GenModel_expandAllAction_feature = Expand All Action
_UI_GenModel_expandAllAction_description = Whether the generated editor should support an expand-all action
_UI_GenModel_collapseAllAction_feature = Collapse All Action
_UI_GenModel_collapseAllAction_description = Whether the generated editor should support a collapse-all action
_UI_GenModel_revertAction_feature = Revert Action
_UI_GenModel_revertAction_description = Whether the generated editor should support a File -> Revert action
_UI_GenPackage_loadInitializationFileExtension_feature = Initialize by Loading File Extension
_UI_GenPackage_loadInitializationFileExtension_description = The file extension of the resource used to initialize package meta-data when loading from serialized form (required for large models)

_UI_GenModel_codeStyle_feature = Code Style
_UI_GenModel_codeStyle_description = A set of style options that affect the code style of generated method bodies
_UI_GenCodeStyle_UnnecessaryElse_literal = UnnecessaryElse
_UI_GenCodeStyle_SwitchMissingDefaultCase_literal = SwitchMissingDefaultCase
_UI_GenCodeStyle_UnnecessaryAssignmentBeforeReturn_literal = UnnecessaryAssignmentBeforeReturn
_UI_GenCodeStyle_UnnecessaryDeprecatedMethod_literal = UnnecessaryDeprecatedMethod
