###############################################################################
# Copyright (c) 2016, 2019 Chalmers | University of Gothenburg, rt-labs 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
#  
# SPDX-License-Identifier: EPL-2.0
#  
# Contributors:
#      Chalmers | University of Gothenburg and rt-labs - initial API and implementation and/or initial documentation
#      Chalmers | University of Gothenburg - additional features, updated API
###############################################################################
#Properties file for org.eclipse.capra.ui.plantuml
command.name.transitivity = Toggle Transitivity
command.label.transitivity = Show transitive links
command.name.graph = Display graph
command.label.graph = Display graph
command.name.internalLinks= Show internal links
command.label.internalLinks = Show internal links
command.name.relationshipTypes = Select relationship types
command.label.relationshipTypes= Select relationship types
command.name.depth = Set transitivity depth
command.label.depth = Set transitivity depth
Bundle-Vendor = Eclipse Capra
Bundle-Name = Eclipse Capra Trace Visualisation Support (PlantUML)
