###############################################################################
# Copyright (c) 2003, 2004 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################
#
# $Source: /cvsroot/webtools/jeetools.move/webtools.javaee.git/plugins/org.eclipse.jem.ui/ui/org/eclipse/jem/internal/ui/proxy/remote/Attic/messages.properties,v $
# $Revision: 1.3.2.1 $  $Date: 2004/06/24 18:17:15 $
#

LocalLaunchProjectTab.name                        = &Project
LocalLaunchProjectTab.Project                     = &Project
LocalLaunchProjectTab.Browse                      = &Browse...
LocalLaunchProjectTab.Project_Selection           = Project Selection
LocalLaunchProjectTab.ChooseProject               = Choose a &project to for the launch:
LocalLaunchProjectTab.ProjectNotExist_ERROR_      = IWAV0174E Project "{0}" doesn't exist.
LocalLaunchProjectTab.ProjectNotOpen_ERROR_       = IWAV0175E Project "{0}" is not open.
LocalLaunchProjectTab.ProjectValidateError_ERROR_ = IWAV0176E Project validation error. Msg is "{0}."
