###############################################################################
# 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=EPP JavaScript and Web Package
providerName=Eclipse Packaging Project

ql.newWebProject.label = Create a new web project
ql.newWebProject.description = Create a new dynamically configured project that supports JavaScript, CSS, HTML, and other technologies 
ql.newThymHybridProject.label = Create a new Cordova project
ql.newThymHybridProject.description = Create a new mobile project for Apache Cordova
ql.importThymHybridProject.label = Import a Cordova project
ql.importThymHybridProject.description = Import an existing Apache Cordova 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
ql.mpc.label = Launch the Eclipse Marketplace
