#-------------------------------------------------------------------------------
# Copyright (c) 2005, 2006 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 implementation
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Export Microsoft Project Wizard
exportMSPWizard_title=\u5bfc\u51fa Microsoft Project

# Select Process Wizard Page
selectProcessWizardPage_title=\u9009\u62e9\u6d41\u7a0b\u548c\u5bfc\u51fa\u9009\u9879
selectProcessWizardPage_text=\u9009\u62e9\u8981\u5bfc\u51fa\u7684\u6d41\u7a0b\uff0c\u5e76\u6307\u5b9a\u5bfc\u51fa\u9009\u9879\u3002
processGroup_text=\u6d41\u7a0b
capabilityPatternRadioButton_text=\u80fd\u529b\u6a21\u5f0f
deliveryProcessRadioButton_text=\u4ea4\u4ed8\u6d41\u7a0b
optionsGroup_text=\u5bfc\u51fa\u9009\u9879
processNameLabel_text=\u540d\u79f0\uff1a
contextNameLabel_text=\u914d\u7f6e\uff1a
publishConfigurationCheckBox_text=\u53d1\u5e03\u9009\u5b9a\u7684\u914d\u7f6e
exportOnlyPlannedElementsCheckBox_text=\u53ea\u5bfc\u51fa\u5df2\u89c4\u5212\u7684\u5206\u89e3\u5143\u7d20

# Select Publishing Options Wizard Page
selectPublishOptionsWizardPage_title=\u9009\u62e9\u53d1\u5e03\u9009\u9879
selectPublishOptionsWizardPage_text=\u9009\u62e9\u5c06\u7528\u4e8e\u53d1\u5e03\u6307\u5b9a\u914d\u7f6e\u7684\u53d1\u5e03\u9009\u9879\u3002

# Select Export Directory Wizard page
selectExportDirWizardPage_title=\u6307\u5b9a\u9879\u76ee\u540d\u79f0\u548c\u5bfc\u51fa\u76ee\u5f55
selectExportDirWizardPage_text=\u6307\u5b9a Microsoft Project \u540d\u79f0\u548c\u5bfc\u51fa\u76ee\u5f55\u3002
projectNameLabel_text=\u540d\u79f0\uff1a
dirLabel_text=\u76ee\u5f55\uff1a
browseButton_text=\u6d4f\u89c8...

# Progress Messages
exportMSPTask_name=\u6b63\u5728\u5c06\u9009\u5b9a\u7684\u6d41\u7a0b\u5bfc\u51fa\u81f3 Microsoft Project...

# Confirmation Messages
overwriteText_msg=\u201c{1}\u201d\u4e2d\u5df2\u5b58\u5728 Microsoft Project\u201c{0}\u201d\u3002\n\u8981\u8986\u76d6\u5b83\u5417\uff1f
completedText_msg=\u9009\u5b9a\u7684\u6d41\u7a0b\u201c{0}\u201d\u5df2\u6210\u529f\u5bfc\u51fa\u81f3 Microsoft Project XML \u6587\u4ef6\u201c{1}\u201d\u3002
# Error Messages
exportMSPError_msg=\u5c06\u9009\u5b9a\u7684\u6d41\u7a0b\u201c{0}\u201d\u5bfc\u51fa\u81f3 Microsoft Project\u201c{1}\u201d\u65f6\u51fa\u9519\u3002
exportMSPError_reason=\u8bf7\u5355\u51fb\u201c\u8be6\u7ec6\u4fe1\u606f\u201d\uff0c\u83b7\u53d6\u66f4\u591a\u4fe1\u606f\u3002
