###############################################################################
# Copyright (c) 2000, 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
###############################################################################
#
# Resource strings for Java Example Editor
#
pluginName=JFace Text Example
providerName = Eclipse.org

#
# Java Example Editor
#
javaEditorName=Example Java Editor
documentSetupParticipantName=Example Java Document Setup Participant

#
# XML / Template Editor
#
xml.editor.name= Template Editor
xml.editor.preferencePage.label= Template Editor

xml.contextType.name= Ant Script

ant.tasks.copy.name= copy
ant.tasks.copy.description= Copy task

ant.resolvers.src= Source Fileset
ant.resolvers.src.description= A source fileset
ant.resolvers.dst= Destination Fileset
ant.resolvers.dst.description= An output fileset
