+#@ MODIF N_CR Noyau DATE 14/09/2004 AUTEUR MCOURTOI M.COURTOIS
+# -*- coding: iso-8859-1 -*-
+# CONFIGURATION MANAGEMENT OF EDF VERSION
+# ======================================================================
+# COPYRIGHT (C) 1991 - 2002 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.
+#
+# 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 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.
+#
+#
+# ======================================================================
+
+
""" Ce module contient la classe compte-rendu de validation
"""
def __str__(self):
"""
- Retourne une chaîne de caractères décorée et représentative de self
+ Retourne une chaine de caractères décorée et représentative de self
"""
s=''
self.beautifie_messages()
- s=s+string.join(self.crok_belle)
- s=s+string.join(self.crwarn_belle)
- s=s+string.join(self.crfatal_belle)
- s=s+string.join(self.crexception_belle)
+ s=s+string.join(self.crok_belle,'')
+ s=s+string.join(self.crwarn_belle,'')
+ s=s+string.join(self.crfatal_belle,'')
+ s=s+string.join(self.crexception_belle,'')
for subcr in self.subcr:
if self.verbeux == 'oui':
s=s+str(subcr)+'\n'
def report(self,decalage = 2):
"""
- Retourne une chaîne de caractères non encadrée mais représentative de self
+ Retourne une chaine de caractères non encadrée mais représentative de self
"""
s=''
# on stocke dans s les messages de premier niveau
def get_mess_fatal(self):
"""
- Retourne une chaîne de caractères contenant les messages de
+ Retourne une chaine de caractères contenant les messages de
la liste crfatal (du dernier au premier)
"""
self.crfatal.reverse()
def get_mess_exception(self):
"""
- Retourne une chaîne de caractères contenant les messages
+ Retourne une chaine de caractères contenant les messages
de la liste crexception (du dernier au premier)
"""
self.crexception.reverse()
-def justify_text(texte='',cesure=50):
+def justify_text_old(texte='',cesure=50):
"""
- Prend la chaîne de caractères 'texte' et la retourne avec un retour chariot
+ Prend la chaine de caractères 'texte' et la retourne avec un retour chariot
tous les 'cesure' caractères s'il y a lieu (le retour chariot est placé dans un blanc
et non au milieu d'un mot
"""
texte_justifie = texte_justifie + string.strip(new_text) + '\n'
return texte_justifie[0:-1]
-def encadre_message(texte,motif):
+def encadre_message_old(texte,motif):
"""
- Retourne la chaîne de caractères texte entourée d'un cadre formés
+ Retourne la chaine de caractères texte entourée d'un cadre formés
+ d'éléments 'motif'
+ """
+ texte = justify_text(texte,cesure=80)
+ lignes = string.split(texte,'\n')
+ longueur = 0
+ for ligne in lignes :
+ if len(ligne)> longueur : longueur = len(ligne)
+ longueur = longueur + 4
+ txt = motif*longueur+'\n'
+ for ligne in lignes :
+ txt = txt + motif + ' '+ligne+' '*(longueur-len(motif+ligne)-2)+motif+'\n'
+ txt = txt + motif*longueur+'\n'
+ return txt
+
+
+
+
+separateurs=(' ',',','/')
+def split(ligne,cesure):
+ ligne= string.rstrip(ligne)
+ if len(ligne) <= cesure :
+ return ligne
+ else:
+ coupure=cesure
+ while ligne[coupure] not in separateurs and coupure > 0:
+ coupure = coupure - 1
+ if coupure == 0:
+ # Il faut augmenter la cesure
+ coupure =cesure
+ while ligne[coupure] not in separateurs and coupure < len(ligne)-1 :
+ coupure = coupure + 1
+ if coupure == len(ligne)-1:
+ return ligne
+ else:
+ return ligne[:coupure+1]+ '\n' + split(ligne[coupure+1:],cesure)
+
+def justify_text(texte='',cesure=50):
+ texte = string.strip(texte)
+ liste_lignes = string.split(texte,'\n')
+ l=[split(l,cesure) for l in liste_lignes]
+ texte_justifie=string.join(l,'\n')
+ return texte_justifie
+
+def encadre_message(texte,motif):
+ """
+ Retourne la chaine de caractères texte entourée d'un cadre formés
d'éléments 'motif'
"""
texte = justify_text(texte,cesure=80)
lignes = string.split(texte,'\n')
longueur = 0
for ligne in lignes :
+ ligne=string.rstrip(ligne)
if len(ligne)> longueur : longueur = len(ligne)
longueur = longueur + 4
txt = motif*longueur+'\n'