#------------------------------------------------------------------------------
# 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 NO TRANSLATION
################################################################################
# TODO: manually put keys and values
DiagramDiagramEditorUtil_OpenModelResourceErrorDialogTitle=Erreur
DiagramDiagramEditorUtil_OpenModelResourceErrorDialogMessage=Echec de t\u00e9l\u00e9chargement du fichier de mod\u00e8les {0}
DiagramDiagramEditorUtil_CreateDiagramProgressTask=Cr\u00e9ation de fichiers de diagrammes et de mod\u00e8les
DiagramDiagramEditorUtil_CreateDiagramCommandLabel=Cr\u00e9ation de diagramme et de mod\u00e8le
DiagramDocumentProvider_isModifiable=Echec de la mise \u00e0 jour du cache
DiagramDocumentProvider_handleElementContentChanged=Echec d'actualisation de la hi\u00e9rarchie pour les ressources modifi\u00e9es
DiagramDocumentProvider_IncorrectInputError={1}
DiagramDocumentProvider_UnableToLoadResourceError=Impossible de charger la ressource du diagramme
DiagramDocumentProvider_NoDiagramInResourceError=Diagramme non pr\u00e9sent dans la ressource
DiagramDocumentProvider_DiagramLoadingError=Erreur lors du chargement du diagramme
DiagramDocumentProvider_UnsynchronizedFileSaveError=Le fichier a \u00e9t\u00e9 modifi\u00e9 dans le syst\u00e8me de fichier
DiagramDocumentProvider_SaveDiagramTask=Sauvegarde en cours du diagramme
DiagramDocumentProvider_SaveNextResourceTask=Enregistrement en cours de {0}
DiagramInitDiagramFileAction_InitDiagramFileResourceErrorDialogTitle=Erreur
DiagramInitDiagramFileAction_InitDiagramFileResourceErrorDialogMessage=Echec de chargement du fichier
DiagramInitDiagramFileAction_InitDiagramFileWizardTitle=Initialiser le nouveau fichier de diagrammes {0}
DiagramInitDiagramFileAction_OpenModelFileDialogTitle=S\u00e9lectionner un mod\u00e8le de domaine
DiagramNewDiagramFileWizard_CreationPageName=Initialiser le nouveau fichier de diagrammes
DiagramNewDiagramFileWizard_CreationPageTitle=Fichier de diagrammes
DiagramNewDiagramFileWizard_CreationPageDescription=Cr\u00e9\u00e9 un nouveau diagramme bas\u00e9 sur le contenu de mod\u00e8le {0}
DiagramNewDiagramFileWizard_RootSelectionPageName=S\u00e9lectionner l'\u00e9l\u00e9ment principal du diagramme
DiagramNewDiagramFileWizard_RootSelectionPageTitle=El\u00e9ment principal du diagramme
DiagramNewDiagramFileWizard_RootSelectionPageDescription=S\u00e9lectionner l'\u00e9l\u00e9ment de mod\u00e8le s\u00e9mantique \u00e0 repr\u00e9senter sur le diagramme
DiagramNewDiagramFileWizard_RootSelectionPageSelectionTitle=S\u00e9lectionner l'\u00e9l\u00e9ment principal du diagramme :
DiagramNewDiagramFileWizard_RootSelectionPageNoSelectionMessage=L'\u00e9l\u00e9ment principal du diagramme n'est pas s\u00e9lectionn\u00e9
DiagramNewDiagramFileWizard_RootSelectionPageInvalidSelectionMessage=Un \u00e9l\u00e9ment principal de diagramme non valide est s\u00e9lectionn\u00e9
DiagramNewDiagramFileWizard_InitDiagramCommand=Initialisation en cours du contenu du diagramme
DiagramNewDiagramFileWizard_IncorrectRootError=Objet de mod\u00e8le incorrect stock\u00e9 en tant objet ressource principal
Model1Group_title=mod\u00e8le
ControlFlow1CreationTool_title=Flux de contr\u00f4le
ControlFlow1CreationTool_desc=Cr\u00e9er un nouveau flux de contr\u00f4le
WorkProductDescriptor2CreationTool_title=Descripteur de produit
WorkProductDescriptor2CreationTool_desc=Cr\u00e9er un nouveau descripteur de produit

CommandName_OpenDiagram=Ouvrir le diagramme
################################################################################
# END NO TRANSLATION
################################################################################
