#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 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

workflow_export_wizard_title=\u5bfc\u51fa\u5de5\u4f5c\u6d41\u5411\u5bfc
workflow_export_wizard_text=\u7528\u4e8e\u5bfc\u51fa\u5de5\u4f5c\u6d41\u7684\u5411\u5bfc\uff08\u6d3b\u52a8\u56fe\uff09
workflow_export_wizard_processGroup_text=\u6d41\u7a0b
workflow_export_wizard_capabilityPatternRadioButton_text=\u80fd\u529b\u6a21\u5f0f
workflow_export_wizard_deliveryProcessRadioButton_text=\u4ea4\u4ed8\u6d41\u7a0b
workflow_export_wizard_processNameLabel_text=\u6d41\u7a0b\uff1a
workflow_export_wizard_contextNameLabel_text=\u914d\u7f6e\uff1a
workflow_export_wizard_templateGroup_text=\u6a21\u677f
workflow_export_wizard_templateNameLabel_text=\u6587\u4ef6\u540d
workflow_export_wizard_dirLabel_text=\u76ee\u5f55\uff1a
workflow_export_wizard_browseButton_text=\u6d4f\u89c8...
workflow_overwriteTextDialog_title=\u8986\u76d6
workflow_overwriteText_msg=\u662f\u5426\u8981\u8986\u76d6\u73b0\u6709\u6587\u4ef6\uff1f
workflow_export_wizard_activitiesNameLabel_text=\u6d3b\u52a8\uff1a

open_method_library_error_title=\u6253\u5f00\u65b9\u6cd5\u5e93\u9519\u8bef
open_method_library_error_text=\u9700\u8981\u5148\u6253\u5f00\u65b9\u6cd5\u5e93\uff0c\u7136\u540e\u518d\u6267\u884c\u5bfc\u51fa\u64cd\u4f5c\u3002

# Graph Node names

GRAPH_NODE_FORK=\u6d3e\u751f\u8282\u70b9
GRAPH_NODE_INITIAL=\u542f\u52a8\u8282\u70b9
GRAPH_NODE_FINAL=\u7ed3\u675f\u8282\u70b9
GRAPH_NODE_DECISION=\u51b3\u7b56\u8282\u70b9
GRAPH_NODE_FREE_TEXT=\u81ea\u7531\u6587\u672c
GRAPH_NODE_MERGE=\u5408\u5e76\u8282\u70b9
GRAPH_NODE_JOIN=\u8fde\u63a5\u8282\u70b9
GRAPH_NODE_LINK=\u94fe\u63a5
