# NLS_ENCODING=UNICODE
#------------------------------------------------------------------------------
# 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

#START NON-TRANSLATABLE
################################################################################
# START NO TRANSLATION
################################################################################
preferences.general=AD Diagram
preferences.appearance=Appearance
preferences.printing=Printing
preferences.rulersAndGrid=Rulers & Grid
preferences.pathmaps=Path Maps

editorName=AD Diagram Editor
newWizardName=AD Diagram
newWizardDesc=Creates AD diagram.

initDiagramActionLabel=Initialize xmi diagram file
loadResourceActionLabel=Load Resource...

navigatorContentName=*.xmi diagram contents

metatype.name.Activity_79=Undefined
metatype.name.ActivityFinalNode_1001=ActivityFinalNode
metatype.name.MergeNode_1002=MergeNode
metatype.name.ForkNode_1003=ForkNode
metatype.name.InitialNode_1004=InitialNode
metatype.name.DecisionNode_1005=DecisionNode
metatype.name.JoinNode_1006=JoinNode
metatype.name.StructuredActivityNode_1007=StructuredActivityNode
metatype.name.ActivityPartition_1008=ActivityPartition
metatype.name.ActivityParameterNode_1009=ActivityParameterNode
metatype.name.StructuredActivityNode_1010=StructuredActivityNode
metatype.name.StructuredActivityNode_1011=StructuredActivityNode
metatype.name.ActivityParameterNode_1012=ActivityParameterNode
metatype.name.ActivityPartition_2001=ActivityPartition
metatype.name.ControlFlow_3001=ControlFlow
################################################################################
# END NO TRANSLATION
################################################################################
#END NON-TRANSLATABLE

pluginName=Diagramme d'activit\u00e9 EPF
providerName=Eclipse.org

#Needs Translation
open_add_text=Ouvrir un diagramme d\u00e9taill\u00e9 d'activit\u00e9
element_type_activity_partition=Partition d'activit\u00e9
element_type_end_node=Noeud d'extr\u00e9mit\u00e9
element_type_merge_node=Noeud de fusion
element_type_fork_node=Noeud de processus
element_type_start_node=Noeud de d\u00e9but
element_type_decision_node=Noeud de d\u00e9cision
element_type_join_node=Noeud de jointure
element_type_activity=Activit\u00e9
element_type_phase=Phase
element_type_iteration=It\u00e9ration
element_type_task_descriptor=Descripteur de t\u00e2che
element_type_milestone=Jalon
element_type_control_flow=Flux de contr\u00f4le

preferences.connections=Connexions


