#########################################
# (c) Copyright IBM Corp. 2000, 2001.
# All Rights Reserved.
######################################### 

# ------- NewProjectCreationPluginPage------- 

MngMakeProjectWizard.op_error=Managed Make Error
MngMakeProjectWizard.title=Managed Make Project
MngMakeProjectWizard.description=Create a new Managed Make project.
#MngMakeProjectWizardSettings.title=Managed Make Settings
#MngMakeProjectWizardSettings.description=Define the Managed Make build settings.
MngMakeProjectWizard.message.add_nature=Adding Managed Nature
MngMakeProjectWizard.message.add_builder=Adding Makefile Generator
MngMakeProjectWizard.message.save=Saving new build options

MngCWizard.title=Managed Make C Project
MngCWizard.description=Create a new Managed Make C project.
MngCWizardSettings.title=Managed Make C Settings
MngCWizardSettings.description=Define the Managed Make C build settings.

MngCCWizard.title=Managed Make C++ Project
MngCCWizard.description=Create a new Managed Make C++ Project.
MngCCWizard.message.creating=Creating a new C++ Project with a makefile generator
MngCCWizardSettings.title=Managed Make C++ Settings
MngCCWizardSettings.description=Define the Managed Make C++ build settings.

# -- Strings for the platform selection page --
MngMakeProjectWizard.config.title=Select a Target
MngMakeProjectWizard.config.desc=Select the platform and configurations you wish to deploy on
PlatformBlock.label.platform=Platform:
PlatformBlock.label.configs=Configurations:

# -- Strings for the additional options tab
MngMakeProjectWizard.options.title=Additional Project Settings
MngMakeProjectWizard.options.desc=Defined the inter-project dependencies, if any.

# ----------- Configuration Selection Page -----------
BuildPropertyPage.label.Platform=Platform:
BuildPropertyPage.label.Configuration=Configuration:
BuildPropertyPage.label.Active=Active configuration
BuildPropertyPage.label.Settings=Configuration settings
BuildPropertyPage.label.AddConfButton=Manage...
BuildPropertyPage.label.ToolTree=Tools
BuildPropertyPage.label.ToolOptions=Options
BuildPropertyPage.tip.platform=Select a platform for the project
BuildPropertyPage.tip.config=Select the configuration to edit
BuildPropertyPage.tip.addconf=Add configurations for the platform
BuildPropertyPage.tip.remconf=Remove configurations for the platform
BuildPropertyPage.manage.title=Manage

# ----------- New Configuration -----------
NewConfiguration.label.name=Configuration name:
NewConfiguration.label.copy=Copy default settings from:
NewConfiguration.error.title=Error
NewConfiguration.error.duplicateName=A configuration named "{0}" already exists.

# ----------- Target/Config management dialog -----------------
ManageConfig.label.makecmdgroup=Make command
ManageConfig.label.makecmddef=Use default command
ManageConfig.label.output.group=Build output
ManageConfig.label.output.label=Artifact name:
ManageConfig.label.configs=Manage configurations
ManageConfig.label.restore=Restore
ManageConfig.label.configs.current=Current:
ManageConfig.label.configs.deleted=Deleted:
ManageConfig.label.new.config.dialog=Create

# ----------- Build Property Common -----------
BuildPropertyCommon.label.title=Enter Value
BuildPropertyCommon.label.new=New...
BuildPropertyCommon.label.remove=Remove
BuildPropertyCommon.label.up=Up
BuildPropertyCommon.label.down=Down
BuildPropertyCommon.label.editVar=Edit...
BuildPropertyCommon.label.addVar=Add
BuildPropertyCommon.label.message=Value:
BuildPropertyCommon.label.browse=Browse...
BuildPropertyCommon.label.configs=Defined configurations:
