###############################################################################
# Copyright (c) 2000, 2010 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
###############################################################################
source.javaeditorexample.jar = Eclipse Java Editor Example/
source.templateeditorexample.jar = Template Editor Example/

output.javaeditorexample.jar = javaEditorBin/
output.templateeditorexample.jar = templateEditorBin/

bin.includes = doc-html/,\
               icons/,\
               templates/,\
               about.html,\
               plugin.properties,\
               plugin.xml,\
               *.jar,\
               META-INF/

jars.compile.order = javaeditorexample.jar,\
                     templateeditorexample.jar

src.includes = about.html
