# 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.
+#
+# 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
#
-# 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.
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-# 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.
+
# ======================================================================
"""
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):
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):
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):
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
if obj not in into:
raise ValError(
ufmt(
- _(u"La valeur : %s ne fait pas partie des choix possibles %s"),
- repr(obj), into))
+ _(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
# (intervalle)
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
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):
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
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
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
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):
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
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):
self.cata_info = ""
def info(self):
- return _(u": pas de présence de doublon dans la liste")
+ return _(u"Pas de doublon dans la liste")
def info_erreur_liste(self):
return _(u"Les doublons ne sont pas permis")
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):
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:
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
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
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
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
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 = []
return chaine
def info_erreur_liste(self):
+ chaine=""
a = 1
for v in self.validators:
if v.info_erreur_liste() != " ":
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:
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):
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):
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):
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):
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):
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:
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):
self.cata_info = ""
def info(self):
- return _(u": vérifie les types dans un tuple")
+ return _(tr(": verifie les types dans un tuple"))
def info_erreur_liste(self):
- return _(u"Les types entrés ne sont pas permis")
+ return _(tr("Les types entres ne sont pas permis"))
def default(self, valeur):
# if valeur in self.liste : raise ValError("%s est un doublon" %
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):
elif type_permis == 'TXM':
if type(valeur) == types.StringType:
return 1
+ elif isinstance(valeur, type_permis):
+ return 1
return 0
def verif(self, valeur):
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):