From 1377e703b01a24a791260999c82d5f0c012ff84c Mon Sep 17 00:00:00 2001 From: "pascale.noyret" Date: Tue, 9 Jun 2015 19:34:00 +0200 Subject: [PATCH] traduction --- Noyau/N_VALIDATOR.py | 126 +-- UiQT4/eficas_en.qm | Bin 56331 -> 68860 bytes UiQT4/eficas_en.ts | 1432 +++++++++++++++++++++++++---------- UiQT4/eficas_fr.ts | 1094 +++++++++++++++----------- Validation/V_ETAPE.py | 35 +- Validation/V_JDC.py | 6 +- Validation/V_MACRO_ETAPE.py | 3 +- Validation/V_MCCOMPO.py | 3 +- Validation/V_MCFACT.py | 7 +- Validation/V_MCSIMP.py | 21 +- Validation/V_PROC_ETAPE.py | 4 +- 11 files changed, 1798 insertions(+), 933 deletions(-) diff --git a/Noyau/N_VALIDATOR.py b/Noyau/N_VALIDATOR.py index 7114615f..bfa44e75 100644 --- a/Noyau/N_VALIDATOR.py +++ b/Noyau/N_VALIDATOR.py @@ -1,20 +1,23 @@ # coding=utf-8 -# person_in_charge: mathieu.courtois at edf.fr -# ====================================================================== -# COPYRIGHT (C) 1991 - 2015 EDF R&D WWW.CODE-ASTER.ORG -# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY -# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY -# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR -# (AT YOUR OPTION) ANY LATER VERSION. +# Copyright (C) 2007-2015 EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. # -# THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT -# WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF -# MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU -# GENERAL PUBLIC LICENSE FOR MORE DETAILS. +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE -# ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER, -# 1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE. +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + # ====================================================================== """ @@ -27,6 +30,8 @@ import re from N_ASSD import ASSD from N_types import is_int, is_float_or_int, is_complex, is_number, is_str, is_sequence from strfunc import convert, ufmt +from Extensions.i18n import tr + class ValError(Exception): @@ -156,21 +161,21 @@ class TypeProtocol(PProtocol): return obj else: raise ValError( - ufmt(_(u"%s n'est pas un fichier valide"), repr(obj))) + ufmt(_(tr(u"%s n'est pas un fichier valide")), repr(obj))) elif type_permis == 'FichierNoAbs': import os if (len(typ) > 2 and typ[2] == "Sauvegarde") or isinstance(obj, type("")): return obj else: raise ValError( - ufmt(_(u"%s n'est pas un fichier valide"), repr(obj))) + ufmt(_(tr("%s n'est pas un fichier valide")), repr(obj))) elif type_permis == 'Repertoire': import os if os.path.isdir(obj): return obj else: raise ValError( - ufmt(_(u"%s n'est pas un répertoire valide"), repr(obj))) + ufmt(_(tr(u"%s n'est pas un repertoire valide")), repr(obj))) elif type(type_permis) == types.ClassType or isinstance(type_permis, type): try: if self.is_object_from(obj, type_permis): @@ -184,9 +189,9 @@ class TypeProtocol(PProtocol): except Exception, err: pass else: - print convert(ufmt(_(u"Type non encore géré %s"), `type_permis`)) + print convert(ufmt(_(tr(u"Type non encore gere %s")), `type_permis`)) raise ValError( - ufmt(_(u"%s (de type %s) n'est pas d'un type autorisé: %s %s"), + ufmt(_(tr(u"%s (de type %s) n'est pas d'un type autorise: %s %s")), repr(obj), type(obj), typ, unicode(err))) def is_complexe(self, valeur): @@ -246,7 +251,7 @@ class CardProtocol(PProtocol): if length < min or length > max: raise ValError( ufmt( - _(u"Nombre d'arguments de %s incorrect (min = %s, max = %s)"), + _(tr(u"Nombre d'arguments de %s incorrect (min = %s, max = %s)")), repr(obj), min, max)) return obj @@ -268,7 +273,7 @@ class IntoProtocol(PProtocol): if obj not in into: raise ValError( ufmt( - _(u"La valeur : %s ne fait pas partie des choix possibles %s"), + _(tr(u"La valeur : %s ne fait pas partie des choix possibles %s")), repr(obj), into)) else: # on est dans le cas d'un ensemble continu de valeurs possibles @@ -281,7 +286,7 @@ class IntoProtocol(PProtocol): if obj < val_min or obj > val_max: raise ValError( ufmt( - _(u"La valeur : %s est en dehors du domaine de validité [ %s , %s ]"), + _(tr(u"La valeur : %s est en dehors du domaine de validite [ %s , %s ]")), repr(obj), self.val_min, self.val_max)) return obj @@ -300,11 +305,11 @@ class MinStr: return valeur raise ValError( ufmt( - _(u"%s n'est pas une chaine de longueur comprise entre %s et %s"), + _(tr(u"%s n'est pas une chaine de longueur comprise entre %s et %s")), valeur, self.min, self.max)) def __repr__(self): - return ufmt(_(u"TXM de longueur entre %s et %s"), self.min, self.max) + return ufmt(_(tr(u"TXM de longueur entre %s et %s")), self.min, self.max) class Valid(PProtocol): @@ -522,7 +527,7 @@ class Compulsory(ListVal): self.cata_info = "" def info(self): - return ufmt(_(u"valeur %s obligatoire"), `self.elem`) + return ufmt(_(tr(u"valeur %s obligatoire")), `self.elem`) def default(self, valeur, elem): return valeur @@ -538,7 +543,7 @@ class Compulsory(ListVal): elem.remove(v) if elem: raise ValError( - ufmt(_(u"%s ne contient pas les elements obligatoires : %s "), + ufmt(_(tr(u"%s ne contient pas les elements obligatoires : %s ")), valeur, elem)) return valeur @@ -574,7 +579,7 @@ class Together(ListVal): self.cata_info = "" def info(self): - return ufmt(_(u"%s présent ensemble"), `self.elem`) + return ufmt(_(tr(u"%s present ensemble")), `self.elem`) def default(self, valeur, elem): return valeur @@ -589,7 +594,7 @@ class Together(ListVal): if v in elem: elem.remove(v) if ( len(elem) == 0 ): return valeur if len(elem) != len(list(self.elem)) : - raise ValError( ufmt(_(u"%s ne contient pas les éléments devant être présent ensemble: %s "), valeur, elem)) + raise ValError( ufmt(_(tr(u"%s ne contient pas les elements devant etre presents ensemble: %s ")), valeur, elem)) return valeur def has_into(self): @@ -626,7 +631,7 @@ class Absent(ListVal): self.cata_info = "" def info(self): - return ufmt(_(u"%s absent"), `self.elem`) + return ufmt(_(tr(u"%s absent")), `self.elem`) def default(self, valeur, elem): return valeur @@ -639,7 +644,7 @@ class Absent(ListVal): for val in valeur: v = self.adapt(val) if v in elem: - raise ValError( ufmt(_(u"%s n'est pas autorisé : %s "), v, elem)) + raise ValError( ufmt(_(tr(u"%s n'est pas autorise : %s ")), v, elem)) return valeur def has_into(self): @@ -675,7 +680,7 @@ class NoRepeat(ListVal): def default(self, valeur): if valeur in self.liste: - raise ValError(ufmt(_(u"%s est un doublon"), valeur)) + raise ValError(ufmt(_(tr(u"%s est un doublon")), valeur)) return valeur def convert(self, valeur): @@ -731,10 +736,10 @@ class LongStr(ListVal): self.cata_info = "" def info(self): - return ufmt(_(u"longueur de la chaine entre %s et %s"), self.low, self.high) + return ufmt(_(tr(u"longueur de la chaine entre %s et %s")), self.low, self.high) def info_erreur_item(self): - return _(u"Longueur de la chaine incorrecte") + return _(tr(u"Longueur de la chaine incorrecte")) def convert(self, valeur): for val in valeur: @@ -750,13 +755,13 @@ class LongStr(ListVal): def default(self, valeur, low, high): if not is_str(valeur): - raise ValError(ufmt(_(u"%s n'est pas une chaine"), repr(valeur))) + raise ValError(ufmt(_(tr(u"%s n'est pas une chaine")), repr(valeur))) if valeur[0] == "'" and valeur[-1] == "'": low = low + 2 high = high + 2 if len(valeur) < low or len(valeur) > high: raise ValError( - ufmt(_(u"%s n'est pas de la bonne longueur"), repr(valeur))) + ufmt(_(tr(u"%s n'est pas de la bonne longueur")), repr(valeur))) return valeur @@ -791,7 +796,7 @@ class OnlyStr(ListVal): def default(self, valeur): if not is_str(valeur): - raise ValError(ufmt(_(u"%s n'est pas une chaine"), repr(valeur))) + raise ValError(ufmt(_(tr(u"%s n'est pas une chaine")), repr(valeur))) return valeur @@ -808,10 +813,10 @@ class OrdList(ListVal): self.cata_info = "" def info(self): - return ufmt(_(u"liste %s"), self.ord) + return ufmt(_(tr(u"liste %s")), self.ord) def info_erreur_liste(self): - return ufmt(_(u"La liste doit etre en ordre %s"), self.ord) + return ufmt(_(tr(u"La liste doit etre en ordre %s")), self.ord) def convert(self, valeur): self.val = None @@ -824,11 +829,11 @@ class OrdList(ListVal): if self.ord == 'croissant': if self.val is not None and valeur < self.val: raise ValError( - ufmt(_(u"%s n'est pas par valeurs croissantes"), repr(self.liste))) + ufmt(_(tr(u"%s n'est pas par valeurs croissantes")), repr(self.liste))) elif self.ord == 'decroissant': if self.val is not None and valeur > self.val: raise ValError( - ufmt(_(u"%s n'est pas par valeurs decroissantes"), repr(self.liste))) + ufmt(_(tr(u"%s n'est pas par valeurs decroissantes")), repr(self.liste))) self.val = valeur return valeur @@ -886,7 +891,7 @@ class OrVal(Valid): return validator.convert(valeur) except: pass - raise ValError(ufmt(_(u"%s n'est pas du bon type"), repr(valeur))) + raise ValError(ufmt(_(tr(u"%s n'est pas du bon type")), repr(valeur))) def info_erreur_item(self): l = [] @@ -1034,7 +1039,6 @@ class AndVal(Valid): def info_erreur_liste(self): a = 1 - chaine="" for v in self.validators: if v.info_erreur_liste() != " ": if a == 1: @@ -1176,22 +1180,22 @@ class RangeVal(ListVal): def __init__(self, low, high): self.low = low self.high = high - self.cata_info = ufmt(_(u"%s doit être inférieur a %s"), low, high) + self.cata_info = ufmt(_(tr(u"%s doit etre inferieur a %s")), low, high) def info(self): - return ufmt(_(u"valeur dans l'intervalle %s , %s"), self.low, self.high) + return ufmt(_(tr(u"valeur dans l'intervalle %s , %s")), self.low, self.high) def convert_item(self, valeur): if valeur > self.low and valeur < self.high: return valeur - raise ValError(ufmt(_(u"%s devrait être comprise entre %s et %s"), + raise ValError(ufmt(_(tr(u"%s devrait etre comprise entre %s et %s")), valeur, self.low, self.high)) def verif_item(self, valeur): return valeur > self.low and valeur < self.high def info_erreur_item(self): - return ufmt(_(u"La valeur doit etre comprise entre %s et %s"), self.low, self.high) + return ufmt(_(tr(u"La valeur doit etre comprise entre %s et %s")), self.low, self.high) def verif_cata(self): if self.low > self.high: @@ -1212,14 +1216,14 @@ class CardVal(Valid): def __init__(self, min='**', max='**'): self.min = min self.max = max - self.cata_info = ufmt(_(u"%s doit etre inferieur a %s"), min, max) + self.cata_info = ufmt(_(tr(u"%s doit etre inferieur a %s")), min, max) def info(self): - return ufmt(_(u"longueur de liste comprise entre %s et %s"), self.min, self.max) + return ufmt(_(tr(u"longueur de liste comprise entre %s et %s")), self.min, self.max) def info_erreur_liste(self): return ufmt( - _(u"Le cardinal de la liste doit etre compris entre %s et %s"), + _(tr(u"Le cardinal de la liste doit etre compris entre %s et %s")), self.min, self.max) def is_list(self): @@ -1246,10 +1250,10 @@ class CardVal(Valid): l = 1 if self.max != '**' and l > self.max: raise ValError( - ufmt(_(u"%s devrait etre de longueur inferieure a %s"), valeur, self.max)) + ufmt(_(tr(u"%s devrait etre de longueur inferieure a %s")), valeur, self.max)) if self.min != '**' and l < self.min: raise ValError( - ufmt(_(u"%s devrait etre de longueur superieure a %s"), valeur, self.min)) + ufmt(_(tr(u"%s devrait etre de longueur superieure a %s")), valeur, self.min)) return valeur def verif_item(self, valeur): @@ -1306,7 +1310,7 @@ class PairVal(ListVal): v = self.adapt(val) if v % 2 != 0: raise ValError( - ufmt(_(u"%s contient des valeurs non paires"), repr(valeur))) + ufmt(_(tr(u"%s contient des valeurs non paires")), repr(valeur))) return valeur def default(self, valeur): @@ -1350,7 +1354,7 @@ class EnumVal(ListVal): if valeur in self.into: return valeur raise ValError( - ufmt(_(u"%s contient des valeurs hors des choix possibles: %s "), + ufmt(_(tr(u"%s contient des valeurs hors des choix possibles: %s ")), valeur, self.into)) def verif_item(self, valeur): @@ -1408,7 +1412,7 @@ class F1Val(Valid): self.cata_info = "" def info(self): - return ufmt(_(u"valeur %s pour la somme des cles A et B "), self.somme) + return ufmt(_(tr(u"valeur %s pour la somme des cles A et B ")), self.somme) def verif(self, valeur): if is_sequence(valeur): @@ -1483,7 +1487,7 @@ class TypeVal(ListVal): self.coerce = self.identity def info(self): - return ufmt(_(u"valeur de %s"), self.aType) + return ufmt(_(tr(u"valeur de %s")), self.aType) def identity(self, value): if type(value) == self.aType: @@ -1531,7 +1535,7 @@ class InstanceVal(ListVal): self.aClass = aClass def info(self): - return ufmt(_(u"valeur d'instance de %s"), self.aClass.__name__) + return ufmt(_(tr(u"valeur d'instance de %s")), self.aClass.__name__) def verif_item(self, valeur): if not isinstance(valeur, self.aClass): @@ -1547,10 +1551,10 @@ class VerifTypeTuple(Valid, ListVal): self.cata_info = "" def info(self): - return _(u": vérifie les types dans un tuple") + return _(tr(u": verifie les types dans un tuple")) def info_erreur_liste(self): - return _(u"Les types entrés ne sont pas permis") + return _(tr(u"Les types entrés ne sont pas permis")) def default(self, valeur): # if valeur in self.liste : raise ValError("%s est un doublon" % @@ -1563,12 +1567,12 @@ class VerifTypeTuple(Valid, ListVal): def convert_item(self, valeur): if len(valeur) != len(self.typeDesTuples): raise ValError( - ufmt(_(u"%s devrait etre de type %s "), valeur, self.typeDesTuples)) + ufmt(_(tr(u"%s devrait etre de type %s ")), valeur, self.typeDesTuples)) for i in range(len(valeur)): ok = self.verifType(valeur[i], self.typeDesTuples[i]) if ok != 1: raise ValError( - ufmt(_(u"%s devrait etre de type %s "), valeur, self.typeDesTuples)) + ufmt(_(tr(u"%s devrait etre de type %s ")), valeur, self.typeDesTuples)) return valeur def verif_item(self, valeur): @@ -1661,7 +1665,7 @@ class VerifExiste(ListVal): if valeur in self.listeDesFreres: return valeur raise ValError( - ufmt(_(u"%s n'est pas dans %s"), valeur, self.listeDesFreres)) + ufmt(_(tr(u"%s n'est pas dans %s")), valeur, self.listeDesFreres)) class RegExpVal(ListVal): diff --git a/UiQT4/eficas_en.qm b/UiQT4/eficas_en.qm index 3d6d83c77b9fa3d33981e1011d8216c282257ca0..9c3c2738c563848cb041500eb3fae046964f6dcf 100644 GIT binary patch delta 16795 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 - + + @default @@ -51,7 +52,7 @@ ask eficas team Impossible d'ouvrir le fichier : %s - unanble to open file : %s + unable to open file : %s @@ -209,7 +210,7 @@ ask eficas team - Objet commande commentarisé invalide + Objet commande commentarisé invalide invalid commented command @@ -244,7 +245,7 @@ ask eficas team end function %s - + Nom de concept deja defini : %s Concept's name %s is already existing @@ -305,7 +306,7 @@ ask eficas team - Un concept de nom %s existe déjà ! + Un concept de nom %s existe déjà ! Concept's name %s is already existing! @@ -336,7 +337,7 @@ ask eficas team ATTENTION! Une source constante n'est possible qu'a frequence nulle en regime frequentiel - + @@ -483,32 +484,32 @@ ask eficas team impossible to return a value of type : %s - + Impossible d'ajouter la commande unable to add the keyword (commande) - + Impossible d ajouter la commande unable to add the keyword (commande) - + Pas implemente not implemented - + Nom de concept deja defini already defined concept - + Nom de concept deja defini : already defined concept : - + Impossible de trouver le fichier correspondant a l'unite unable to find file corresponding to unit @@ -616,22 +617,22 @@ Le fichier associe n'est pas defini Object %s cannot be add - + None n'est pas une valeur autorisee None is not a valid value - + un concept de meme nom existe deja concept already exists - + Concept cree concept created - + La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d n_lign matrix is not a %(n_lign)d x %(n_col)d matrix @@ -662,34 +663,34 @@ Le fichier associe n'est pas defini internal problem : unable to delete keyword - + Commentaire supprime comment is deleted - + Commande %s supprimee command %s is deleted - + Pb interne : impossible de supprimer cet objet internal problem : unable to delete object - + Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas unable to convert .comm file in order to open it with Eficas - + Include vide include file is empty - + L'include doit etre correctement initialise pour etre visualise include file must be correct @@ -744,97 +745,97 @@ Le fichier associe n'est pas defini Error when reading configuration file - + Erreur fatale au chargement de %s fatal error when loading %s - + Erreur fatale au chargement d'un fichier Fatal error when loading file - + fichier modifie file updated - + Attention! fichier change hors EFICAS Warning ! this file was modified outside Eficas - + Type de fichier non reconnu unsupported file type - + EFICAS ne sait pas ouvrir le type de fichier %s Eficas is not able to open this file's type : %s - + EFICAS ne sait pas ouvrir ce type de fichier Eficas is not able to open this file's type - + Copie impossible unable to copy - + Veuillez selectionner un objet a copier you have to select an object to copy - + Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne You have to select a single object : copy will be done after the selected node - + Aucun Objet n a ete copie ou coupe No object was cut or copied - + Copie refusee rejected copy - + Eficas n a pas reussi a copier l objet Eficas cannot copy this object - + Copie refusee pour ce type d objet Copy rejected : bad object type - + Deplacement refuse move rejected - + Deplacement refuse entre 2 fichiers. Seule la copie est autorisee move rejected. no move between two files : only copy is available - + Copie impossible a cet endroit unable to copy here - + Veuillez selectionner une commande, un parametre, un commentaire ou une macro select a command; a parameter, a comment or a macro - + Choix d'un fichier XML Choice of XML file @@ -844,90 +845,90 @@ Le fichier associe n'est pas defini Open file - + Erreur a la generation Error when generating - + EFICAS ne sait pas convertir ce JDC Eficas is unable to convert JDC - + Format %s non reconnu not supported format %s - + Execution impossible Unable to execute - + le JDC doit etre valide pour une execution MAP JDC has to be valid before run - + le JDC doit contenir un et un seul composant JDC must contains a single componant - + sauvegarde save - + Sauvegarde du Fichier save file - + Le fichier <b>%s</b> existe deja. file <b>%s</b> already exists. - + &Ecraser &Replace - + Donnez le nom du fichier correspondant a l unite logique Choose file corresponding to unit - + Choix d'un fichier de poursuite Choose poursuite file - + Le fichier %s contient une commande POURSUITE file %s contains a POURSUITE command - + Traduire Fichier file translation - + Fichiers JDC (*.comm);;Tous les Fichiers (*) JDC files(*.comm);; All FIles(*) - + Fichier Traduit : %s Translated file : %s - + Pas de difference entre le fichier origine et le fichier traduit No difference between the primary file and the translated file @@ -942,82 +943,82 @@ Le fichier associe n'est pas defini &Ok - + Entrez enter - + valeurs values - + Entrez entre enter between - + et and - + Selection selection - + Une chaine de caracteres est attendue. string expected - + Un reel est attendu. float expected - + Un entier est attendu. integer expected. - + Une Matrice est attendue. Matrix expected. - + Un fichier est attendu. file expected. - + Un repertoire est attendu. directory expected - + Type de base inconnu unkown type - + Visualisation Fichier view file - + Impossibilite d'afficher le Fichier Unable to display file - + Sauvegarder Fichier save File - + Fichier selectionne file selected @@ -1042,7 +1043,7 @@ Le fichier associe n'est pas defini Please, enter a single value - + saisir le type de complexe choose complex's type @@ -1108,7 +1109,7 @@ Le fichier associe n'est pas defini version - + pour for @@ -1143,37 +1144,37 @@ Le fichier associe n'est pas defini enter a complex - + Import du catalogue Loading catalog - + Pas de catalogue defini pour le code No catalog for this code - + Aucun catalogue trouve No catalog - + avec le catalogue with catalog - + Impossible d'importer le catalogue unable to load catalog - + Choix d une version du code Choose a version for - + Choix d une version choose a version @@ -1303,52 +1304,52 @@ Le fichier associe n'est pas defini Exit - + Fichier Duplique file is duplicated - + Le fichier ne sera pas sauvegarde. File will not be saved. - + &Annuler &Cancel - + Fichier File - + Le fichier <b>%s</b> est deja ouvert. File <b>%s</b> is already open. - + &Duplication &Duplication - + &Abort &Abort - + Fichier Modifie File is modified - + Le fichier %s n a pas ete sauvegarde. file %s was not saved. - + &Sauvegarder &Save @@ -1378,15 +1379,15 @@ Le fichier associe n'est pas defini ERREUR! ce groupe de maille (%s) n'a pas de prefixe valable - + ERREUR! ce type de bloc (%s) n'est pas valable - + - + n'est pas un index valide pour append_brother is not correct - no possible "append_brother" @@ -1401,34 +1402,34 @@ Le fichier associe n'est pas defini unable to display law's PDF. - + Le fichier contient une commande MODEL file contains MODEL command - + Donnez le nom du fichier XML qui contient la description des variables - + Choix unite %d Choice for unit %d - + Fichier pour unite File for unit - La formule passee à l'interpreteur doit etre sous forme de tuple + La formule passee à l'interpreteur doit etre sous forme de tuple formula must be written as tuple - Début + Début Beginning @@ -1437,18 +1438,18 @@ Le fichier associe n'est pas defini None is not a valid value for EVAL - - Pas de nom donné au paramètre + + Pas de nom donné au paramètre No name given - - Le paramètre %s ne peut valoir None + + Le paramètre %s ne peut valoir None None is an incorrect value for parameter %s - Format pas implémenté : %s + Format pas implémenté : %s Not implemented fromat @@ -1459,7 +1460,7 @@ Le fichier associe n'est pas defini - Impossible de réaliser la vérification de la formule + Impossible de réaliser la vérification de la formule unable to verify formula @@ -1468,7 +1469,7 @@ Le fichier associe n'est pas defini internal problem : unable to delete keyword - + Eficas ne peut pas traiter plusieurs instructions sur la meme ligne : %s Eficas is not able to manage many instructions on a same line @@ -1527,41 +1528,41 @@ Le fichier associe n'est pas defini ATTENTION! Une source constante n'est possible qu'a frequence nulle en regime frequentiel - + ERREUR! Une forme de la source du type WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - + ATTENTION! Une source constante n'est possible qu'a frequence nulle en regime frequentiel - + ERREUR! Une forme de la source du type WAVEFORM_CONSTANT ou WAVEFORM_SINUS est attendue. - + ERREUR! ce groupe de maille (%s) n'a pas de prefixe indiquant le type de materiau ou de source associee - + ERREUR! ce groupe de maille (%(nom)s) n'a pas le prefixe correct pour etre associe a un type %(type_bloc)s nom - + - + Include Invalide. ne sera pas pris en compte @@ -1584,59 +1585,59 @@ Le fichier associe n'est pas defini PARAMETER - + EFICAS ne sait pas convertir le JDC selon le format Eficas does not know how to convert data according to the defined format - + le JDC doit etre valide pour une execution Before a run action, JDC must be valid - + Sauvegarder SVP avant l'execution Save before run action - + Sauvegarde de l'input impossible unable to save input file - + Un JdC valide est necessaire pour creer un .input file must be valid to create a .input file - + Choix du composant obligatoire You have to choose a component - + Le fichier %s contient une commande INCLUDE file %s contains an "INCLUDE" command - + Donnez le nom du fichier dont vous voulez faire une poursuite Name the principal file - + Fichiers Med (*.med);;Tous les Fichiers (*) Med Files (*.med);;All Files(*) - + Fichier Med Med File - + Veuillez selectionner un fichier Med Choose a Med file @@ -1686,12 +1687,12 @@ Le fichier associe n'est pas defini Help is not available - + Export Med vers Fichier export Med Mesh in a file - + Impossibilite d exporter le Fichier Unable to export file @@ -1703,12 +1704,12 @@ Le fichier associe n'est pas defini Commande non choisie - Choose a command + Choose a command Vous devez choisir une commande - Choose a command + Choose a command @@ -1716,18 +1717,18 @@ Le fichier associe n'est pas defini value can not be changed - + Options pour Settings - + Nombre minimal de valeurs : minimal number of values : - + Nombre maximal de valeurs : Maximal number of values : @@ -1747,34 +1748,34 @@ Le fichier associe n'est pas defini Value is not authorized - + Accquisition Groupe Maille - + acquiers mesh groups - - Fichier non encore nommé + + Fichier non encore nommé unnamed file - Nom de concept invalide. '%s' est un mot-clé réservé. - invalid concept :'%s' is a reserved keyword + Nom de concept invalide. '%s' est un mot-clé réservé. + invalid concept :'%s' is a reserved keyword Impossible de trouver le fichier correspondant a l unite %s - unable to find file for unit %s + unable to find file for unit %s %s n'est pas un fichier existant - %s is not an existing file + %s is not an existing file concept '%s' absent du contexte de %s - concept '%s' not in context %s + concept '%s' not in context %s @@ -1799,7 +1800,7 @@ Le fichier associe n'est pas defini Centre - Center + Center @@ -1883,80 +1884,415 @@ Le fichier associe n'est pas defini - None n'est pas une valeur autorisée - None is not a valid value + None n'est pas une valeur autorisée + None is not a valid value - Mot-clé %s invalide : %s -Critère de validité: %s - Invalid keyword %s : %s + Mot-clé %s invalide : %s +Critère de validité: %s + Invalid keyword %s : %s validity criteria: %s - Mot-clé simple : - keyword : + Mot-clé simple : + keyword : - - Fin Mot-clé simple : - End Keyword : + + Fin Mot-clé simple : + End Keyword : - Mot-clé simple : %s %s - Keyword: %s %s + Mot-clé simple : %s %s + Keyword: %s %s Etape : - Command : + Command : ligne : - line : + line : fichier : - File : + File : Fin Etape : - End Command : + End Command : DEBUT CR validation : - BEGIN Validation Report : + BEGIN Validation Report : FIN CR validation : - END Validation report : + END Validation report : - - Mot-clé : %s obligatoire non valorisé - Mandatory Keyword %s has no value + + Mot-clé : %s obligatoire non valorisé + Mandatory Keyword %s has no value Mot-clef simple : - Keyword : + Keyword : + + + + Mot-cle simple : + Keyword : + + + + Format non implemente + non implemented format - - None n'est pas ujjjjjjjjjne valeur autorisée + + Type d'objet non prevu - - Mot-cle simple : - Keyword : + + Fichier de donnees + data file + + + + Tous les Fichiers (*) + all files (*) + + + + Select + select + + + + nb min de valeurs : + minimal number of values : + + + + nb max de valeurs atteint + maximum number of values + + + + TraduitV10V11 + + + + + TraduitV11V12 + + + + + Sauve Format Ligne + save file in line format + + + + Valeur du mot-clef enregistree + value recorded + + + + Valeur du mot-clef non autorisee : + unvalid value + + + + Creation Paramètre indisponible + Not implemented + + + + les paramètres sont liés à un jeu de données + Parameter are defined for a JDC + + + + %s n'est pas un fichier valide + %s is not a valid file + + + + Type non encore géré %s + unvalid type + + + + %s (de type %s) n'est pas d'un type autorisé: %s %s + %s (type %) is not valid : should be %s%s + + + + Nombre d'arguments de %s incorrect (min = %s, max = %s) + incorrect number of arguments + + + + La valeur : %s ne fait pas partie des choix possibles %s + value %s is not valid + + + + La valeur : %s est en dehors du domaine de validité [ %s , %s ] + %s is not a value in [%s,%s] + + + + %s n'est pas une chaine de longueur comprise entre %s et %s + %s is not a valid string. length must be betwenn %s and %s + + + + TXM de longueur entre %s et %s + string : length msut be between %s and %s + + + + valeur %s obligatoire + mandatory value %s + + + + %s ne contient pas les elements obligatoires : %s + %s does not contain mandatory elements %s + + + + %s présent ensemble + %s present together + + + + %s ne contient pas les éléments devant être présent ensemble: %s + % does not contains elements which had to be present simultaneously + + + + %s absent + %s mandatory + + + + %s n'est pas autorisé : %s + %s is not valid + + + + %s est un doublon + %s is a double + + + + longueur de la chaine entre %s et %s + string with a length between %s and %s + + + + Longueur de la chaine incorrecte + incorrect length + + + + %s n'est pas une chaine + % is not a string + + + + %s n'est pas de la bonne longueur + %s has not a valid length + + + + liste %s + list %s + + + + La liste doit etre en ordre %s + list must be ordered %s + + + + %s n'est pas par valeurs croissantes + %s is not increasing + + + + %s n'est pas par valeurs decroissantes + %s in not decreasing + + + + %s n'est pas du bon type + %s has not a valid type + + + + %s doit être inférieur a %s + %s must be < %s + + + + valeur dans l'intervalle %s , %s + value must be in [%s;%s] + + + + %s devrait être comprise entre %s et %s + %s must be between %s and %s + + + + La valeur doit etre comprise entre %s et %s + value must be [%s,%s] + + + + %s doit etre inferieur a %s + %s must be < %s + + + + longueur de liste comprise entre %s et %s + list's length must be in [ %s, %s ] + + + + Le cardinal de la liste doit etre compris entre %s et %s + list's length must be in [%s, %s] + + + + %s devrait etre de longueur inferieure a %s + %s must have a length < %s + + + + %s devrait etre de longueur superieure a %s + %s must have a lenght > %s + + + + %s contient des valeurs non paires + + + + + %s contient des valeurs hors des choix possibles: %s + %s contains unvalid values + + + + valeur %s pour la somme des cles A et B + value %s for the sum of keys A and B + + + + valeur de %s + value of %s + + + + valeur d'instance de %s + value of %s + + + + : verifie les types dans un tuple + valids type in a list + + + + Les types entrés ne sont pas permis + unvalid type for values + + + + %s devrait etre de type %s + %s should be of %s type + + + + %s n'est pas dans %s + %s in not in %s + + + + Mots clés inconnus : %s + unknown keyword + + + + %s n'est pas un valide + %s not valid + + + + uuuuuuuu + aaaaaaaaaa + + + + %s ne contient pas les elements devant etre presents ensemble: %s + %s does not contains elements which have to be together : %s + + + + %s n'est pas autorise : %s + %s in not valide : %s + + + + %s devrait etre comprise entre %s et %s + %s have to be between %s and %s + + + + %s n'est pas un repertoire valide + %s is not a valid directory + + + + Type non encore gere %s + unknown type %s + + + + %s (de type %s) n'est pas d'un type autorise: %s %s + %s (type %s) is not a valid type : %s %s + + + + La valeur : %s est en dehors du domaine de validite [ %s , %s ] + value %s is not included in [%s, %s] + + + + %s present ensemble + %s together + + + + unknown keywords : %s + unknown keywords : %s @@ -1964,22 +2300,22 @@ validity criteria: %s Aide - Help + Help Index - Index + Index Back - Back + Back Forward - Foward + Foward @@ -1992,32 +2328,62 @@ validity criteria: %s <html><head/><body><p> Recherche Commande</p></body></html> - <html><head/><body><p> Find Command</p></body></html> + <html><head/><body><p> Find Command</p></body></html> - + Alphabetique alphabetic sort - + Par Groupe Sort by group - + Mise en données de la commande sélectionnée dans l'arbre. Un double-clic permet également de choisir une commande - Data entry form for the selected item. Selections are done by double-clicked + Data entry form for the selected item. Selections are done by double-clicked &Formulaire - &Form + &Form Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A + Shift+A, Alt+A, Alt+A, Alt+A + + + + <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> + + + + + affiche les commandes par ordre alphabetique + display commands in alphabetic order + + + + affiche les commandes selon les thèmes + display commands by thema + + + + Ordre de la modélisation + display commands ordered by modelisation + + + + <html><head/><body><p align="center">Filtre Commande</p></body></html> + filters commands + + + + filter commands + filters commands @@ -2047,65 +2413,88 @@ p, li { white-space: pre-wrap; } <td style="border: none;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;">Veuillez choisir celle avec laquelle</span></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;"> vous souhaitez travailler</span></p></td></tr></table></body></html> - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"><table style="-qt-table-type: root; margin-top:4px; margin-bottom:4px; margin-left:4px; margin-right:4px;"><tr><td style="border: none;"><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;">Please, choose the one </span></p><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;"> you want to use</span></p></td></tr></table></body></html> + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"><table style="-qt-table-type: root; margin-top:4px; margin-bottom:4px; margin-left:4px; margin-right:4px;"><tr><td style="border: none;"><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;">Please, choose the one </span></p><p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;"> you want to use</span></p></td></tr></table></body></html> - + &OK &Ok - + &Cancel &Cancel + + + Validate choice + validate choice + DSelVal - + Sélection de valeurs Values Selections - + Separateur marker - + espace space - + virgule comma - + point-virgule semi-colon validation de la saisie - Entry Validation + Entry Validation &Ajouter Selection - &Add Selection + &Add Selection Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A + Shift+A, Alt+A, Alt+A, Alt+A &Importer Tout - &Import all + &Import all + + + + Ajouter Selection + add selected value + + + + Importer Tout + imports all values + + + + DVisu + + + Visualisation Include Materiau + @@ -2131,32 +2520,32 @@ p, li { white-space: pre-wrap; } toolBar - + &Nouveau &New - + Ctrl+N Ctrl+N - + Nouvel Include New Include - + &Ouvrir &Open - + Ctrl+O Ctrl+O - + Enregistrer Save @@ -2181,102 +2570,102 @@ p, li { white-space: pre-wrap; } Close all - + Couper Cut - + Ctrl+X Ctrl+X - + Copier Copy - + Ctrl+C Ctrl+C - + Coller Paste - + Ctrl+V Ctrl+V - + Quitter Exit - + Ctrl+Q Ctrl+Q - + Rapport de Validation Validation Report - + Fichier Source Source File - - + + Fichier Résultat Result File - + Parametres Eficas Eficas Parameters - + Lecteur documentation documentation reader - + Eficas Eficas - + Version Version - + Supprimer Delete - + Rechercher Find - + Rechercher dans l'arbre d'etude Find in JdC Tree - + Ctrl+F Ctrl+F - + Replier/Deplier Expand/Collapse @@ -2305,106 +2694,106 @@ p, li { white-space: pre-wrap; } &Edition &Edit - + &JeuDeDonnées &Data - + Shift+I - + - + Ctrl+S - + Ctrl+Shift+S - + - + Shift+V - + - + Chercher Mot-Clef find Keyword - + Rechercher dans le catalogue find Keyword in Catalog - + Shift+F - + - + Shift+D - + - + Commentaire Comment - + Shift+C - + - - + + Paramètres Parameters - - + + Gestion des paramètres Managing parameters - + Shift+P - + - + Parametre Eficas Eficas Settings Save Run - + Save run JDCEditor - + Save File - + The file <b>%1</b> could not be saved.<br>Reason: %2 - + JDC (*.comm);;All Files (*) - + &Abandonner &Cancel @@ -2414,22 +2803,32 @@ p, li { white-space: pre-wrap; } Form - + - + ... - + - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + RadioButton + - - RadioButton - + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + deletes the keyword @@ -2437,7 +2836,7 @@ p, li { white-space: pre-wrap; } Form - + @@ -2445,17 +2844,27 @@ p, li { white-space: pre-wrap; } Form - + - + ... - + + + + + Affiche le rapport de validation du mot-clef + display validation report for the keyword - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + deletes the keyword @@ -2463,62 +2872,87 @@ p, li { white-space: pre-wrap; } DCommandeUnique - + - - + + Affiche le rapport de validité de la commande Display validation report - + ... - + - + <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html - - + + Nom de l'objet. Seuls, les objets valides peuvent être nommés Object Name. Only valid objects can be named - - + + Lance un script associé à la commande Run associated script - + ouvre un navigateur sur l'aide contextuelle open a browser to navigate to contextual help - - + + affiche les régles de validité display validity rules - - + + Détruit la commande delete the command - + Affiche les commandes possibles display allowed commands - + &Commandes &Commands - + Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A + Shift+A, Alt+A, Alt+A, Alt+A + + + + Affiche le formulaire de la commande précédente + diplay previous command + + + + << + + + + + Affiche le formulaire de la commande suivante + display next command + + + + >> + + + + + TextLabel + @@ -2526,42 +2960,62 @@ p, li { white-space: pre-wrap; } DCommandeUnique - + - + Affiche le rapport de validité de la commande - Display validation report + Display validation report ... - + <html><head/><body><p><span style=" color:#0000ff;">Commentaire</span></p></body></html> - + Comment - + Affiche les commandes possibles display allowed commands - - &Catalogue - - - - + Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A + Shift+A, Alt+A, Alt+A, Alt+A - + Détruit le commentaire - + deletes the comment + + + + &Commandes + &Commands + + + + Affiche le formulaire de la commande précédente + display previous command + + + + << + + + + + Affiche le formulaire de la commande suivante + display next command + + + + >> + @@ -2569,17 +3023,17 @@ p, li { white-space: pre-wrap; } Form - + - + ... - + - + <html><head/><body><p><span style=" font-style:italic;">TextLabel</span></p></body></html> - + @@ -2587,17 +3041,17 @@ p, li { white-space: pre-wrap; } Form - + ... - + TextLabel - TextLabel + TextLabel @@ -2605,12 +3059,12 @@ p, li { white-space: pre-wrap; } WidgetOptionnel - + <html><head/><body><p><span style=" color:#0000ff;">commande </span></p></body></html> - <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html + <html><head/><body><p><span style=" color:#0000ff;">command </span></p></body></html @@ -2625,25 +3079,75 @@ p, li { white-space: pre-wrap; } Shift+A, Alt+A, Alt+A, Alt+A - Shift+A, Alt+A, Alt+A, Alt+A + Shift+A, Alt+A, Alt+A, Alt+A WidgetPlusieursBase - + Form - + - + ... - + + + + + Affiche le rapport de validation du mot-clef + display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Remonte la ligne + up + + + + Descend la ligne + down + + + + supprime une ligne + deletes a line + + + + Ajoute une ligne + add a line + + + + Montre l'ensemble des valeurs + display all the value + + + + Sélectionne depuis Salome + from salome - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + Visualise dans Salome + Show in salome + + + + Ouvre un fichier de sélection des valeurs + Open a file for selection + + + + Détruit le mot-clef + delete the key word @@ -2651,17 +3155,27 @@ p, li { white-space: pre-wrap; } Form - + - + ... - + + + + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + delete tht keyword @@ -2669,40 +3183,60 @@ p, li { white-space: pre-wrap; } Form - + - + ... - + + + + + RadioButton + - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword - - RadioButton - + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + Delete the keyword WidgetSimpBase - + Form - + - + ... - + + + + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + Delete the keyword @@ -2710,27 +3244,37 @@ p, li { white-space: pre-wrap; } Form - + - + ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + - + True - + - + False - + + + + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + Delete the keyword @@ -2738,73 +3282,108 @@ p, li { white-space: pre-wrap; } Form - + - + ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + - + Complexe : a+bj Complex : a+bj - - - <html><head/><body><p align="center"><span style=" font-weight:600;">OU </span></p></body></html> - - - - + + Réel/Imaginaire Real/Imaginary - + Module/Phase Module/Phase + + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + <html><head/><body><p align="center">OU </p></body></html> + + WidgetSimpFichier Form - + - + ... - + + + + + Affiche le rapport de validité du mot-clef + Display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + affiche l'explorateur de fichier + open file explorer - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + ouvre le fichier choisi + Open the file + + + + Détruit le mot-clef + Delete the keyword WidgetSimpTxt - + Form - + - + ... - + - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + Delete the keyword @@ -2812,32 +3391,42 @@ p, li { white-space: pre-wrap; } Form - + - + ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + - + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - + - + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - + - + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - + + + + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + Delete the keyword @@ -2845,32 +3434,42 @@ p, li { white-space: pre-wrap; } Form - + - + ... - - - - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - + - + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - + - + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - + - + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> - + + + + + Affiche le rapport de validation du mot-clef + Display validation report for the keyword + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + Delete the keyword @@ -2878,7 +3477,7 @@ p, li { white-space: pre-wrap; } DMacro - DMacro + DMacro @@ -2907,20 +3506,25 @@ p, li { white-space: pre-wrap; } Find in JDC - + Suivant Next + + + Next + + self.appliEficas - + Wrapper Files (*.xml);;All Files (*) - + Noname diff --git a/UiQT4/eficas_fr.ts b/UiQT4/eficas_fr.ts index 5b91a871..f6200bf1 100644 --- a/UiQT4/eficas_fr.ts +++ b/UiQT4/eficas_fr.ts @@ -5,12 +5,12 @@ lecture du fichier impossible : - unable to read file + unable to read file Impossible d'ouvrir le fichier %s - unable to read file + unable to read file @@ -19,7 +19,7 @@ On retourne le fichier non converti. Prevenir la maintenance. %s - Unable to convert Python file. it should containr error + Unable to convert Python file. it should containr error source file is returned. Ask development team @@ -231,11 +231,6 @@ Impossible de transferer les fichiers requis dans : %s - - - Objet commande commentarisé invalide - - Erreur @@ -257,11 +252,6 @@ Objet commentaire non valorise - - - La formule passee à l'interpreteur doit etre sous forme de tuple - - Debut Fonction %s @@ -273,7 +263,7 @@ - + Nom de concept deja defini : %s @@ -312,11 +302,6 @@ L'attribut 'docu' doit etre une chaine de caracteres - - - Début - - Fin @@ -342,21 +327,6 @@ Un nom de parametre ne peut depasser 8 caracteres - - - Un concept de nom %s existe déjà ! - - - - - Pas de nom donné au paramètre - - - - - Le paramètre %s ne peut valoir None - - ERREUR @@ -367,11 +337,6 @@ Format pas implemente : %s - - - Format pas implémenté : %s - - Type d'objet non prevu : %s @@ -526,11 +491,6 @@ La liste des arguments d'une formule doit etre entre parentheses : parenthese fermante manquante - - - Impossible de réaliser la vérification de la formule - - Pas de nom donne a la FORMULE @@ -687,28 +647,28 @@ Le fichier associe n'est pas defini - + None n'est pas une valeur autorisee - + un concept de meme nom existe deja - + Concept cree - + La matrice n'est pas une matrice %(n_lign)d sur %(n_col)d n_lign - + Eficas ne peut pas traiter plusieurs instructions sur la meme ligne : %s @@ -801,7 +761,7 @@ Le fichier associe n'est pas defini - + Include Invalide. ne sera pas pris en compte @@ -819,7 +779,7 @@ Le fichier associe n'est pas defini - + n'est pas un index valide pour append_brother @@ -834,49 +794,49 @@ Le fichier associe n'est pas defini - + Impossible de supprimer un mot-cle obligatoire - + Mot-cle %s supprime - + Pb interne : impossible de supprimer ce mot-cle - + Commentaire supprime - + Commande %s supprimee - + Pb interne : impossible de supprimer cet objet - + Le fichier de commande n'a pas pu etre converti pour etre editable par Eficas - + Include vide - + L'include doit etre correctement initialise pour etre visualise @@ -916,7 +876,7 @@ Le fichier associe n'est pas defini - + &Annuler @@ -951,108 +911,108 @@ Le fichier associe n'est pas defini - + Erreur fatale au chargement de %s - + Erreur fatale au chargement d'un fichier - + fichier modifie - + Attention! fichier change hors EFICAS - + Type de fichier non reconnu - + EFICAS ne sait pas ouvrir le type de fichier %s - + EFICAS ne sait pas ouvrir ce type de fichier - + Copie impossible - + Veuillez selectionner un objet a copier - + Veuillez selectionner un seul objet : la copie se fera apres le noeud selectionne - + Aucun Objet n a ete copie ou coupe - + Copie refusee - + Eficas n a pas reussi a copier l objet - + Copie refusee pour ce type d objet - + Deplacement refuse - + Deplacement refuse entre 2 fichiers. Seule la copie est autorisee - + Copie impossible a cet endroit - + Veuillez selectionner une commande, un parametre, un commentaire ou une macro - + Choix d'un fichier XML - + Le fichier contient une commande MODEL - + Donnez le nom du fichier XML qui contient la description des variables @@ -1062,195 +1022,195 @@ Le fichier associe n'est pas defini - + Erreur a la generation - + EFICAS ne sait pas convertir ce JDC - + Format %s non reconnu - + EFICAS ne sait pas convertir le JDC selon le format - + Execution impossible - + le JDC doit etre valide pour une execution MAP - + le JDC doit contenir un et un seul composant - + le JDC doit etre valide pour une execution - + Sauvegarder SVP avant l'execution - + sauvegarde - + Sauvegarde du Fichier - + Le fichier <b>%s</b> existe deja. - + &Ecraser - + Sauvegarde de l'input impossible - + Un JdC valide est necessaire pour creer un .input - + Choix du composant obligatoire - + Choix unite %d - + Le fichier %s contient une commande INCLUDE - + Donnez le nom du fichier correspondant a l unite logique - + Fichier pour unite - + Choix d'un fichier de poursuite - + Le fichier %s contient une commande POURSUITE - + Donnez le nom du fichier dont vous voulez faire une poursuite - + Fichiers Med (*.med);;Tous les Fichiers (*) - + Fichier Med - + Veuillez selectionner un fichier Med - + chaine de caracteres - + reel - + entier - + complexe - + Matrice - + fichier - + fichier existant - + repertoire - + Entrez - + Entrez entre - + et - + Type de base inconnu @@ -1265,59 +1225,59 @@ Le fichier associe n'est pas defini - + Visualisation Fichier - + Impossibilite d'afficher le Fichier - + Sauvegarder Fichier - + Fichier selectionne - + Selection - + Export Med vers Fichier - + Impossibilite d exporter le Fichier - + Traduire Fichier - + Fichiers JDC (*.comm);;Tous les Fichiers (*) - + Fichier Traduit : %s - + Pas de difference entre le fichier origine et le fichier traduit @@ -1343,53 +1303,53 @@ Le fichier associe n'est pas defini - + Options pour - + valeurs - + Nombre minimal de valeurs : - + Nombre maximal de valeurs : - + Une chaine de caracteres est attendue. - + Un reel est attendu. - + Un entier est attendu. - + Une Matrice est attendue. - + Un fichier est attendu. - + Un repertoire est attendu. @@ -1489,7 +1449,7 @@ Le fichier associe n'est pas defini - + pour @@ -1519,37 +1479,37 @@ Le fichier associe n'est pas defini - + Import du catalogue - + Pas de catalogue defini pour le code - + Aucun catalogue trouve - + Impossible d'importer le catalogue - + avec le catalogue - + Choix d une version du code - + Choix d une version @@ -1684,52 +1644,47 @@ Le fichier associe n'est pas defini - + Fichier Duplique - + Le fichier ne sera pas sauvegarde. - + Fichier - + Le fichier <b>%s</b> est deja ouvert. - + &Duplication - + &Abort - - Fichier non encore nommé - - - - + Fichier Modifie - + Le fichier %s n a pas ete sauvegarde. - + &Sauvegarder @@ -1849,247 +1804,333 @@ Le fichier associe n'est pas defini - - Nom de concept invalide. '%s' est un mot-clé réservé. + + Format non implemente - - Impossible de trouver le fichier correspondant a l unite %s + + Type d'objet non prevu - - %s n'est pas un fichier existant + + Select - - concept '%s' absent du contexte de %s + + Sauve Format Ligne - - Etape : + + %s n'est pas un fichier valide - - ligne : + + Nombre d'arguments de %s incorrect (min = %s, max = %s) - - fichier : + + La valeur : %s ne fait pas partie des choix possibles %s - - Fin Etape : + + %s n'est pas de la bonne longueur - - DEBUT CR validation : + + valeur dans l'intervalle %s , %s - - FIN CR validation : + + La valeur doit etre comprise entre %s et %s - - Mot-clé : %s obligatoire non valorisé + + %s doit etre inferieur a %s - - None n'est pas une valeur autorisée + + longueur de liste comprise entre %s et %s - - Mot-clé %s invalide : %s -Critère de validité: %s + + Le cardinal de la liste doit etre compris entre %s et %s - - Fin Mot-clé simple : + + %s devrait etre de longueur inferieure a %s - - Mot-clé simple : %s %s + + %s devrait etre de longueur superieure a %s - - Mot-clef simple : + + %s contient des valeurs non paires - - Mot-cle simple : + + %s contient des valeurs hors des choix possibles: %s - - None n'est pas ujjjjjjjjjne valeur autorisée + + Fichier de donnees - - Format non implemente + + Tous les Fichiers (*) - - Type d'objet non prevu + + nb min de valeurs : - - Select + + nb max de valeurs atteint - - Sauve Format Ligne + + TraduitV10V11 - - %s n'est pas un fichier valide + + TraduitV11V12 - - %s n'est pas un répertoire valide + + Valeur du mot-clef enregistree - - Nombre d'arguments de %s incorrect (min = %s, max = %s) + + Valeur du mot-clef non autorisee : - - La valeur : %s ne fait pas partie des choix possibles %s + + %s n'est pas une chaine de longueur comprise entre %s et %s - - La valeur : %s est en dehors du domaine de validité [ %s , %s ] + + TXM de longueur entre %s et %s - - : pas de présence de doublon dans la liste + + valeur %s obligatoire - - Les doublons ne sont pas permis + + %s ne contient pas les elements obligatoires : %s - - %s n'est pas de la bonne longueur + + %s absent - - %s doit être inférieur a %s + + %s est un doublon - - valeur dans l'intervalle %s , %s + + longueur de la chaine entre %s et %s - - %s devrait être comprise entre %s et %s + + Longueur de la chaine incorrecte - - La valeur doit etre comprise entre %s et %s + + %s n'est pas une chaine - - %s doit etre inferieur a %s + + liste %s - - longueur de liste comprise entre %s et %s + + La liste doit etre en ordre %s - - Le cardinal de la liste doit etre compris entre %s et %s + + %s n'est pas par valeurs croissantes - - %s devrait etre de longueur inferieure a %s + + %s n'est pas par valeurs decroissantes - - %s devrait etre de longueur superieure a %s + + %s n'est pas du bon type - - La valeur saisie doit etre paire + + valeur %s pour la somme des cles A et B - - %s contient des valeurs non paires + + valeur de %s - - %s contient des valeurs hors des choix possibles: %s + + valeur d'instance de %s - - La valeur n'est pas dans la liste des choix possibles + + %s devrait etre de type %s - - valeur impaire + + %s n'est pas dans %s + + + + + : verifie les types dans un tuple + + + + + %s ne contient pas les elements devant etre presents ensemble: %s + + + + + %s n'est pas autorise : %s + + + + + %s devrait etre comprise entre %s et %s + + + + + Objet commande commentarisé invalide + + + + + La formule passee à l'interpreteur doit etre sous forme de tuple + + + + + Début + + + + + Un concept de nom %s existe déjà ! + + + + + Pas de nom donné au paramètre + + + + + Le paramètre %s ne peut valoir None + + + + + Format pas implémenté : %s + + + + + Impossible de réaliser la vérification de la formule - - - Aide - - Aide + + Creation Paramètre indisponible - - Index + + les paramètres sont liés à un jeu de données - - Back + + Fichier non encore nommé - - Forward + + Les types entrés ne sont pas permis + + + + + %s n'est pas un repertoire valide + + + + + Type non encore gere %s + + + + + %s (de type %s) n'est pas d'un type autorise: %s %s + + + + + La valeur : %s est en dehors du domaine de validite [ %s , %s ] + + + + + %s present ensemble + + + + + unknown keywords : %s @@ -2101,33 +2142,43 @@ Critère de validité: %s - - <html><head/><body><p> Recherche Commande</p></body></html> + + Alphabetique - - Alphabetique + + Par Groupe - - Par Groupe + + <html><head/><body><p align="center"><span style=" text-decoration: underline;">Affichage</span></p></body></html> + + + + + affiche les commandes par ordre alphabetique - - Mise en données de la commande sélectionnée dans l'arbre. Un double-clic permet également de choisir une commande + + affiche les commandes selon les thèmes + + + + + Ordre de la modélisation - - &Formulaire + + <html><head/><body><p align="center">Filtre Commande</p></body></html> - - Shift+A, Alt+A, Alt+A, Alt+A + + filter commands @@ -2148,26 +2199,18 @@ p, li { white-space: pre-wrap; } - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Sans Serif'; font-size:9pt; font-weight:400; font-style:normal;"> -<table style="-qt-table-type: root; margin-top:4px; margin-bottom:4px; margin-left:4px; margin-right:4px;"> -<tr> -<td style="border: none;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;">Veuillez choisir celle avec laquelle</span></p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:large;"> vous souhaitez travailler</span></p></td></tr></table></body></html> + + &OK - - &OK + + &Cancel - - &Cancel + + Validate choice @@ -2179,43 +2222,33 @@ p, li { white-space: pre-wrap; } - + Separateur - + espace - + virgule - + point-virgule - - validation de la saisie - - - - - &Ajouter Selection - - - - - Shift+A, Alt+A, Alt+A, Alt+A + + Ajouter Selection - - &Importer Tout + + Importer Tout @@ -2250,32 +2283,32 @@ p, li { white-space: pre-wrap; } - + &Nouveau - + Ctrl+N - + Nouvel Include - + &Ouvrir - + Ctrl+O - + Enregistrer @@ -2300,102 +2333,102 @@ p, li { white-space: pre-wrap; } - + Couper - + Ctrl+X - + Copier - + Ctrl+C - + Coller - + Ctrl+V - + Quitter - + Ctrl+Q - + Rapport de Validation - + Fichier Source - + Fichier Résultat - + Parametres Eficas - + Lecteur documentation - + Eficas - + Version - + Supprimer - + Rechercher - + Rechercher dans l'arbre d'etude - + Ctrl+F - + Replier/Deplier @@ -2415,12 +2448,12 @@ p, li { white-space: pre-wrap; } - + Shift+I - + Ctrl+S @@ -2430,57 +2463,57 @@ p, li { white-space: pre-wrap; } - + Shift+V - + Chercher Mot-Clef - + Rechercher dans le catalogue - + Shift+F - + Shift+D - + Commentaire - + Shift+C - + Paramètres - + Gestion des paramètres - + Shift+P - + Parametre Eficas @@ -2508,22 +2541,22 @@ p, li { white-space: pre-wrap; } JDCEditor - + Save File - + The file <b>%1</b> could not be saved.<br>Reason: %2 - + JDC (*.comm);;All Files (*) - + &Abandonner &Abandonner @@ -2536,18 +2569,28 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + RadioButton - - RadioButton + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef @@ -2567,13 +2610,23 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef @@ -2625,7 +2678,7 @@ p, li { white-space: pre-wrap; } - + Affiche les commandes possibles @@ -2654,6 +2707,16 @@ p, li { white-space: pre-wrap; } TextLabel + + + Affiche le formulaire de la commande précédente + + + + + Affiche le formulaire de la commande suivante + + WidgetCommentaire @@ -2662,11 +2725,6 @@ p, li { white-space: pre-wrap; } DCommandeUnique - - - Affiche le rapport de validité de la commande - - ... @@ -2678,17 +2736,12 @@ p, li { white-space: pre-wrap; } - + Affiche les commandes possibles - - &Catalogue - - - - + Shift+A, Alt+A, Alt+A, Alt+A @@ -2697,6 +2750,31 @@ p, li { white-space: pre-wrap; } Détruit le commentaire + + + &Commandes + + + + + Affiche le formulaire de la commande précédente + + + + + << + + + + + Affiche le formulaire de la commande suivante + + + + + >> + + WidgetFact @@ -2770,13 +2848,63 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Remonte la ligne + + + + + Descend la ligne + + + + + supprime une ligne + + + + + Ajoute une ligne + + + + + Montre l'ensemble des valeurs + + + + + Sélectionne depuis Salome + + + + + Visualise dans Salome + + + + + Ouvre un fichier de sélection des valeurs + + + + + Détruit le mot-clef @@ -2788,13 +2916,23 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef @@ -2806,36 +2944,56 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + RadioButton - - RadioButton + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef WidgetSimpBase - + Form - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef @@ -2847,23 +3005,33 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + True - - True + + False - - False + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef @@ -2875,33 +3043,38 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + Complexe : a+bj + + + + + Réel/Imaginaire - - Complexe : a+bj + + Module/Phase - - <html><head/><body><p align="center"><span style=" font-weight:600;">OU </span></p></body></html> + + Affiche le rapport de validation du mot-clef - - - Réel/Imaginaire + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> - - Module/Phase + + <html><head/><body><p align="center">OU </p></body></html> @@ -2913,31 +3086,61 @@ p, li { white-space: pre-wrap; } - + ... + + + Affiche le rapport de validité du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + affiche l'explorateur de fichier + + + + + ouvre le fichier choisi + + + + + Détruit le mot-clef WidgetSimpTxt - + Form - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef @@ -2949,30 +3152,40 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + + WidgetTuple3 @@ -2982,30 +3195,40 @@ p, li { white-space: pre-wrap; } - + ... - - <html><head/><body><p><span style=" color:#0055ff;">Label</span></p></body></html> - - - - + <html><head/><body><p><span style=" font-size:14pt;">(</span></p></body></html> - + <html><head/><body><p><span style=" font-size:14pt;">,</span></p></body></html> - + <html><head/><body><p><span style=" font-size:14pt;">)</span></p></body></html> + + + Affiche le rapport de validation du mot-clef + + + + + <html><head/><body><p>aaa</p><p>dqsklmdqm</p></body></html> + + + + + Détruit le mot-clef + + baseWidget @@ -3041,20 +3264,25 @@ p, li { white-space: pre-wrap; } - + Suivant + + + Next + + self.appliEficas - + Wrapper Files (*.xml);;All Files (*) - + Noname diff --git a/Validation/V_ETAPE.py b/Validation/V_ETAPE.py index 4d963d1d..c9cc11e0 100644 --- a/Validation/V_ETAPE.py +++ b/Validation/V_ETAPE.py @@ -40,6 +40,8 @@ from Noyau import MAXSIZE, MAXSIZE_MSGCHK from Noyau.N_Exception import AsException from Noyau.N_utils import AsType from Noyau.strfunc import ufmt +from Extensions.i18n import tr + class ETAPE(V_MCCOMPO.MCCOMPO): @@ -79,14 +81,16 @@ class ETAPE(V_MCCOMPO.MCCOMPO): if self.sd.nom.find('sansnom') != -1: # la SD est 'sansnom' : --> erreur if cr == 'oui': - self.cr.fatal(_(u"Pas de nom pour le concept retourné")) + #self.cr.fatal(_(u"Pas de nom pour le concept retourné")) + self.cr.fatal(_("object must have a name")) valid = 0 elif re.search('^SD_[0-9]*$', self.sd.nom): # la SD est 'SD_' cad son nom = son id donc pas de nom donné # par utilisateur : --> erreur if cr == 'oui': self.cr.fatal( - _(u"Nom de concept invalide ('SD_' est réservé)")) + #_(u"Nom de concept invalide ('SD_' est réservé)")) + _("invalid name ('SD_' is a reserved keyword)")) valid = 0 return valid @@ -132,7 +136,8 @@ class ETAPE(V_MCCOMPO.MCCOMPO): if self.reste_val != {}: if cr == 'oui': self.cr.fatal( - _(u"Mots clés inconnus : %s"), ','.join(self.reste_val.keys())) + #_(u"Mots clés inconnus : %s"), ','.join(self.reste_val.keys())) + _("unknown keywords : %s"), ','.join(self.reste_val.keys())) valid = 0 if sd == "non": @@ -152,7 +157,8 @@ class ETAPE(V_MCCOMPO.MCCOMPO): if self.sd == None: # Le concept produit n'existe pas => erreur if cr == 'oui': - self.cr.fatal(_(u"Concept retourné non défini")) + # self.cr.fatal(_(u"Concept retourné non défini")) + self.cr.fatal(_("Concept is not defined")) valid = 0 else: valid = valid * self.valid_sdnom(cr) @@ -191,7 +197,8 @@ class ETAPE(V_MCCOMPO.MCCOMPO): sys.exc_info()[1], sys.exc_info()[2]) self.cr.fatal( - _(u'Impossible d affecter un type au résultat\n %s'), ' '.join(l[2:])) + #_(u'Impossible d affecter un type au résultat\n %s'), ' '.join(l[2:])) + _('unable to affect type to concept\n %s'), ' '.join(l[2:])) return 0 # on teste maintenant si la SD est r\351utilis\351e ou s'il faut la # cr\351er @@ -240,18 +247,24 @@ class ETAPE(V_MCCOMPO.MCCOMPO): """ Methode pour generation d un rapport de validite """ - self.cr = self.CR(debut=u'Etape : ' + self.nom - + u' ligne : ' + `self.appel[0]` - + u' fichier : ' + `self.appel[1]`, - fin=u'Fin Etape : ' + self.nom) + #self.cr = self.CR(debut=u'Etape : ' + self.nom + # + u' ligne : ' + `self.appel[0]` + # + u' fichier : ' + `self.appel[1]`, + # fin=u'Fin Etape : ' + self.nom) + self.cr = self.CR(debut=u'Command : ' + tr(self.nom) + + u' line : ' + `self.appel[0]` + + u' file : ' + `self.appel[1]`, + fin=u'End Command : ' + tr(self.nom)) self.state = 'modified' try: self.isvalid(cr='oui') except AsException, e: if CONTEXT.debug: traceback.print_exc() - self.cr.fatal(_(u'Etape : %s ligne : %r fichier : %r %s'), - self.nom, self.appel[0], self.appel[1], e) + #self.cr.fatal(_(u'Etape : %s ligne : %r fichier : %r %s'), + # self.nom, self.appel[0], self.appel[1], e) + self.cr.fatal(_(u'Command : %s line : %r file : %r %s'), + tr(self.nom), self.appel[0], self.appel[1], e) i = 0 for child in self.mc_liste: i += 1 diff --git a/Validation/V_JDC.py b/Validation/V_JDC.py index db34d99b..f55a3f09 100644 --- a/Validation/V_JDC.py +++ b/Validation/V_JDC.py @@ -45,8 +45,10 @@ class JDC(V_MCCOMPO.MCCOMPO): Methode pour generation d un rapport de validite """ self.cr.purge() - self.cr.debut = "DEBUT CR validation : " + self.nom - self.cr.fin = "FIN CR validation :" + self.nom + #self.cr.debut = "DEBUT CR validation : " + self.nom + #self.cr.fin = "FIN CR validation :" + self.nom + self.cr.debut = "BEGIN validation report : " + self.nom + self.cr.fin = "END validation report :" + self.nom for e in self.etapes: if e.isactif(): self.cr.add(e.report()) diff --git a/Validation/V_MACRO_ETAPE.py b/Validation/V_MACRO_ETAPE.py index 6d1a0e00..ff41fa7c 100644 --- a/Validation/V_MACRO_ETAPE.py +++ b/Validation/V_MACRO_ETAPE.py @@ -92,7 +92,8 @@ class MACRO_ETAPE(V_ETAPE.ETAPE): if self.reste_val != {}: if cr == 'oui': self.cr.fatal( - _(u"Mots clés inconnus : %s"), ','.join(self.reste_val.keys())) + #_(u"Mots clés inconnus : %s"), ','.join(self.reste_val.keys())) + _(u"unknown keyword : %s"), ','.join(self.reste_val.keys())) valid = 0 if sd == "non": diff --git a/Validation/V_MCCOMPO.py b/Validation/V_MCCOMPO.py index a7db4902..84530105 100644 --- a/Validation/V_MCCOMPO.py +++ b/Validation/V_MCCOMPO.py @@ -63,7 +63,8 @@ class MCCOMPO: """ self.cr = self.CR() self.cr.debut = self.txt_nat + self.nom - self.cr.fin = u"Fin " + self.txt_nat + self.nom + #self.cr.fin = u"Fin " + self.txt_nat + self.nom + self.cr.fin = u"END " + self.txt_nat + self.nom i = 0 for child in self.mc_liste: i += 1 diff --git a/Validation/V_MCFACT.py b/Validation/V_MCFACT.py index f31eb0ca..6a1337d8 100644 --- a/Validation/V_MCFACT.py +++ b/Validation/V_MCFACT.py @@ -77,7 +77,9 @@ class MCFACT(V_MCCOMPO.MCCOMPO): # if self.definition.validators and not self.definition.validators.verif(self.valeur): if cr == 'oui': - self.cr.fatal(_(u"Mot-clé : %s devrait avoir %s"), + #self.cr.fatal(_(u"Mot-clé : %s devrait avoir %s"), + # self.nom, self.definition.validators.info()) + self.cr.fatal(_(u"Keyword : %s should have %s"), self.nom, self.definition.validators.info()) valid = 0 # fin des validateurs @@ -85,7 +87,8 @@ class MCFACT(V_MCCOMPO.MCCOMPO): if self.reste_val != {}: if cr == 'oui': self.cr.fatal( - _(u"Mots clés inconnus : %s"), ','.join(self.reste_val.keys())) + #_(u"Mots clés inconnus : %s"), ','.join(self.reste_val.keys())) + _(u"unknow keyword : %s"), ','.join(self.reste_val.keys())) valid = 0 self.valid = valid self.state = 'unchanged' diff --git a/Validation/V_MCSIMP.py b/Validation/V_MCSIMP.py index 6f0e8a5b..b19540b5 100644 --- a/Validation/V_MCSIMP.py +++ b/Validation/V_MCSIMP.py @@ -36,6 +36,7 @@ from Noyau.N_Exception import AsException from Noyau.N_VALIDATOR import ValError, TypeProtocol, CardProtocol, IntoProtocol from Noyau.N_VALIDATOR import listProto from Noyau.strfunc import ufmt +from Extensions.i18n import tr class MCSIMP: @@ -102,7 +103,8 @@ class MCSIMP: if self.isoblig() and v == None: if cr == 'oui': self.cr.fatal( - _(u"Mot-clé : %s obligatoire non valorisé"), self.nom) + _(u"Mandatory keyword : %s has no value"), tr(self.nom)) + #_(u"Mot-clé : %s obligatoire non valorisé"), self.nom) valid = 0 lval = listProto.adapt(v) @@ -117,7 +119,8 @@ class MCSIMP: if lval is None: valid = 0 if cr == 'oui': - self.cr.fatal(_(u"None n'est pas une valeur autorisée")) + self.cr.fatal(_(u"None is not a valid value")) + #self.cr.fatal(_(u"None n'est pas une valeur autorisée")) else: # type,into ... # typeProto=TypeProtocol("type",typ=self.definition.type) @@ -156,8 +159,9 @@ class MCSIMP: self.definition.validators.convert(lval) except ValError, e: self.cr.fatal( - _(u"Mot-clé %s invalide : %s\nCritère de validité: %s"), - self.nom, str(e), self.definition.validators.info()) + #_(u"Mot-clé %s invalide : %s\nCritère de validité: %s"), + _(u"invalid keyword %s : %s\nCriteria : %s"), + tr(self.nom), str(e), self.definition.validators.info()) valid = 0 else: # si pas de cr demande, on sort a la toute premiere erreur @@ -192,13 +196,16 @@ class MCSIMP: def report(self): """ génère le rapport de validation de self """ self.cr = self.CR() - self.cr.debut = u"Mot-clé simple : " + self.nom - self.cr.fin = u"Fin Mot-clé simple : " + self.nom + #self.cr.debut = u"Mot-clé simple : " + self.nom + self.cr.debut = u"Simple Keyword : " + tr(self.nom) + #self.cr.fin = u"Fin Mot-clé simple : " + self.nom + self.cr.fin = u"End Simple Keyword: " + tr(self.nom) self.state = 'modified' try: self.isvalid(cr='oui') except AsException, e: if CONTEXT.debug: traceback.print_exc() - self.cr.fatal(_(u"Mot-clé simple : %s %s"), self.nom, e) + #self.cr.fatal(_(u"Mot-clé simple : %s %s"), self.nom, e) + self.cr.fatal(_(u"Simple Keyword : %s %s"), tr(self.nom), e) return self.cr diff --git a/Validation/V_PROC_ETAPE.py b/Validation/V_PROC_ETAPE.py index 7f1adcdf..7229f6cb 100644 --- a/Validation/V_PROC_ETAPE.py +++ b/Validation/V_PROC_ETAPE.py @@ -30,6 +30,7 @@ import V_ETAPE from Noyau.N_Exception import AsException from Noyau.N_utils import AsType from Noyau.strfunc import ufmt +from Extensions.i18n import tr class PROC_ETAPE(V_ETAPE.ETAPE): @@ -65,7 +66,8 @@ class PROC_ETAPE(V_ETAPE.ETAPE): if self.reste_val != {}: if cr == 'oui': self.cr.fatal( - _(u"Mots clés inconnus : %s"), ','.join(self.reste_val.keys())) + #_(tr(u"Mots clefs inconnus : %s")), ','.join(self.reste_val.keys())) + _(tr(u"unknown keywords : %s")), ','.join(self.reste_val.keys())) valid = 0 self.set_valid(valid) return self.valid -- 2.39.2