[whos] Reformatage de la fonction d'affichage de l'historique

This commit is contained in:
Olivier Iffrig 2014-03-18 10:54:13 +01:00
parent 45dc21acd7
commit a01ba77a8e

View file

@ -930,33 +930,33 @@ def _info(clas) :
f += u'\n' f += u'\n'
return f return f
def _hist(clas) : def _hist(clas):
""" Formatage de l'historique de la classe fournie """ """ Formatage de l'historique de la classe fournie """
if limit_aff_historique==0 : return '' if limit_aff_historique == 0:
f=u'' return u''
f = u''
h = clas.historique() h = clas.historique()
h.reverse() if h:
if h : f += coul(u'Historique : ', 'gras')
f += coul(u'Historique : ','gras') notfirst = False
for i in xrange(0,limit_aff_historique) : lim = - (limit_aff_historique + 1)
try : for a in h[:lim:-1]: # les `limit_aff_historique` (au plus) derniers éléments, en partant du dernier
a = h[i] # Produit une erreur si i trop grand if notfirst:
if i !=0 : f += ' ' f += u' '
try: else:
# on force l'encodage ici sinon il est fait au moment de l'impression a notfirst = True
# l'ecran et il empeche l'affichage de toutes les infos try:
f += u'%s\n' % a # TODO: clarifier ça, a priori `a` c'est déjà un unicode
except Exception, e: # on force l'encodage ici sinon il est fait au moment de l'impression a
if debug: # l'ecran et il empeche l'affichage de toutes les infos
f += coul(u'*** non affichable [%s] ***\n' % str(e), 'rouge') f += u'%s\n' % a
else: except Exception, e:
f += coul(u'*** non affichable ***\n', 'rouge') if debug:
except : f += coul(u'*** non affichable [%s] ***\n' % str(e), 'rouge')
break else:
try : f += coul(u'*** non affichable ***\n', 'rouge')
if h[i+1] : f += ' [...]\n' if len(h) > limit_aff_historique:
except : f += u' [...]\n'
None
return f return f