# <copyright>
#
# Copyright (c) 2008-2015 See4sys, itemis 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
# https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html
#
# Contributors:
#     See4sys - Initial API and implementation
#     itemis - [480135] Introduce metamodel and view content agnostic problem decorator for model elements
#
# </copyright>

# ====================================================================
# To code developer:
#   Do NOT change the properties between this line and the
#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
#   Make a new property name, append to the end of the file and change
#   the code to use the new property.
# ====================================================================

# ====================================================================
# %%% END OF TRANSLATED PROPERTIES %%%
# ====================================================================

pluginName=Sphinx Examples Explorer Plug-in (Incubation)
providerName=Eclipse Modeling Project

sphinx.examples.explorer.views.modelExplorer.name=Model Explorer
sphinx.emf.explorer.modelExplorerProblemDecorator.label=Model Problem Decorator
sphinx.emf.explorer.modelExplorerProblemDecorator.description=Decorates model elements affected by problem markers with appropriate problem indicators.