###############################################################################
# Copyright (c) 2000, 2016 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
#     Manumitting Technologies Inc - Solstice theme support
###############################################################################
pluginName=Eclipse IDE for Eclipse Java Bundle
providerName=Eclipse Packaging Project

ql.cheatsheet.hw.description = A guided walkthrough to create the famous Hello World in Eclipse
ql.cheatsheet.hw.label = Create a Hello World application
ql.newJavaProject.description = Create a new Java Eclipse project
ql.newJavaProject.label = Create a new Java project
ql.checkoutGitProject.description = Checkout Eclipse projects hosted in a Git repository
ql.checkoutGitProject.label = Checkout projects from Git
ql.importExistingProjects.description = Import existing Eclipse projects from the filesystem or archive
ql.importExistingProjects.label = Import existing projects
ql.openExistingFile.description = Open a file from the filesystem
ql.openExistingFile.label = Open an existing file
ql.setupQuestionnaire.label = Review IDE configuration settings
ql.mpc.description = Enhance your IDE with additional plugins and install your Marketplace favorites
ql.mpc.label = Launch the Eclipse Marketplace
feed.eclipseNews.name = Eclipse News
