# ====================================================================
# Copyright (c) 2017 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
# ====================================================================

pluginName = Sirius Session Editor (Experimental)
providerName = Eclipse Modeling Project
UI_SessionEditor_label = Aird Editor
UI_SessionEditor_header_title={0}
UI_SessionEditor_page_loading_error_message=An error occurred while creating pages for the aird editor.
UI_SessionEditor_session_loading_error_message=An error occurred while loading the models.
UI_SessionEditor_session_loading_task_title=Loading
UI_SessionEditor_default_page_tab_label=Overview
UI_SessionEditor_models_title=Models
UI_SessionEditor_models_button_newSemanticModel=Add...
UI_SessionEditor_models_button_removeSemanticModel=Remove
UI_SessionEditor_new_semantic_model_action_label=New...
UI_SessionEditor_viewpoints_title=Viewpoints
UI_SessionEditor_representation_title=Representations
UI_SessionEditor_representation_button_newRepresentation=New...
UI_SessionEditor_representation_button_removeRepresentation=Remove
UI_sessionEditor_modelsBlock_defaultContentProvider_name=Default content provider
UI_sessionEditor_modelsBlock_patternFilter_description=desc
UI_sessionEditor_modelsBlock_patternFilter_name=pattern filter
UI_SessionEditor_inputNotHandled_error_message=The aird editor handles only FileEditorInput and URIEditorInput. The following input is not handled: {0}
GraphicalRepresentationHandler_missingDependencies_requirements=Viewpoint ''{0}'' requires viewpoint(s) which are not enabled: {1}
GraphicalRepresentationHandler_disabledViewpoint_label=disabled
GraphicalRepresentationHandler_representationNumber_label=\u0020({0} representations)
DefaultSessionEditorPage_closeSession_action_label=Unload models
DefaultSessionEditorPage_closeSession_action_tooltip=Unload models and close all associated editors
DefaultSessionEditorPage_selectFilterAction_tooltip=Customize view...
DefaultSessionEditorPage_collapseAllAction_tooltip=Collapse all