###############################################################################
# Copyright (c) 2003, 2005 IBM Corporation and others.
# 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:
#     IBM Corporation - initial API and implementation
###############################################################################

pluginName=Visualiser Plug-in
providerName=Eclipse.org

# extension points
# ----------------

visualiserProviders=Visualiser Providers
visualiserRenderers=Visualiser Renderers
visualiserPalettes=Visualiser Palettes

# Views
# -----

Visualiser=Visualiser
visualiserView=Visualiser
visualiserMenuView=Visualiser Menu

# Providers
# ---------

inbuiltProviders=Inbuilt Providers
fileBasedProvider=File-based provider
fileBasedProvider.emptyMessage=Nothing to display from file-based provider.
fileBasedProvider.description=Simple test provider that reads a file to determine groups, members and stripes

jdtSearchResultsProvider=JDT Search Results Provider
jdtSearchResultsProvider.emptyMessage=Nothing to display from the JDT Search Results provider. \n\nOpen the Search View in the current perspective, run a Java search \nand select a project, package or class from the Package Explorer.
jdtSearchResultsProvider.description=Provider that shows Java search results in the visualiser

resourcesAndMarkersProvider=Resources and Markers
resourcesAndMarkersProvider.emptyMessage=Nothing to display.  Select a folder or file in the Navigator or the Package Explorer.
resourcesAndMarkersProvider.description=Provider that shows markers in the visualiser




VisualiserPreferencePage=Visualiser
Renderer.default.name=Default
Renderer.classic.name=Classic
Renderer.gradient.name=Gradient bars
Renderer.cylinders.name=Cylinder shading
Palette.default.name=Default palette
Palette.bright.name=Bright and bold
Palette.pattern.name=Patterns

