######################################################################
# Copyright (c) 2002, 2004 IBM Corp. and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Common Public License v0.5
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v05.html
#
# Contributors:
#    Andre Weinand - Initial implementation
######################################################################
		
MacBundleWizard.title=Application Bundle Export
			
page1.title=Basic Properties and Location
page1.message=Message1
page1.description= Specify basic properties and location
page1.launchConfig.label=Use this launch configuration:
page1.mainClass.label=Main class:
page1.mainClass.chooseButton.label=Search...
page1.mainClass.dialog.title=Choose Main Type
page1.mainClass.dialog.message=Not yet implemented
page1.arguments.label=Arguments:
page1.appName.label=Application name:
page1.appFolder.label=Folder:
page1.appFolder.browseButton.label=Browse...
page1.appFolder.browseDialog.message=Choose the folder in which to create the application
page1.appFolder.browseDialog.title=Choose Folder
page1.jvm.label=JVM version:
page1.useSWT.label=Use SWT:
page1.appIcon.label=Icon:
page1.appIcon.chooseButton.label=Choose...
page1.appIcon.chooseDialog.title=Choose a *.icns file

page2.title= Classpath and Libraries
page2.message=Message2
page2.description= Specify files to copy into application bundle
page2.workingDirectory.label=Working directory:
page2.addToClasspath.group.label=Add to classpath
page2.addToBundle.group.label=Add to bundle
page2.addFile.button.label=Add file...
page2.chooseFileDialog.title=Choose a file
page2.addFolder.button.label=Add folder...
page2.chooseFolder.dialog.title=Choose a folder
page2.remove.button.label=Remove

page3.title= Properties and Options
page3.message=Message3
page3.description= Specify properties and options
page3.identifier.label=Identifier:
page3.signature.label=Signature:
page3.vmOptions.label=VM options:
page3.propertiesGroup.label=Properties
page3.keys.column.label=Keys
page3.values.column.label=Values

BundleDescription.copyright.format=1.0, Copyright {user} 2004. All rights reserved.
