From 654a878598ec8bb73fd7695686d074b494319c30 Mon Sep 17 00:00:00 2001 From: pauget Date: Sun, 3 Oct 2004 18:33:35 +0200 Subject: [PATCH] Affichage des MACs mieux gr. darcs-hash:20041003163335-41617-383ff1dd8312e8442bd912e81061b00d7eb4091c.gz --- gestion/whos.py | 38 ++++++++++++++++++++++++-------------- 1 file changed, 24 insertions(+), 14 deletions(-) diff --git a/gestion/whos.py b/gestion/whos.py index 5e74bc6d..999c19a4 100755 --- a/gestion/whos.py +++ b/gestion/whos.py @@ -567,28 +567,38 @@ def prise_etat(chbre) : # On met aussi l'état conn = sw_chbre(chbre) result = conn.status() - macs = conn.show_prise_mac() + rows, cols = get_screen_size() if result['etat']=='up' : f += ', ' + coul('machine branchée','vert') + reste_cols = cols - 45 if result['vitesse_max'] == '10Mbps' : f+= ', ' + coul('prise en 10Mbps','jaune') + reste_cols -= 17 f+=', ' + macs = conn.show_prise_mac() if len(macs) == 0: + if reste_cols < 20 : + # Faut aller à la ligne + f += '\n ' f += coul('aucune MAC détectée', 'jaune') else: - # Combien d'adresses MAC peut-on mettre par ligne ? - # Une adresse MAC =~ 20 caracteres - rows, cols = get_screen_size() - cols -= 17 # On met 15espaces devant chaque ligne - parligne = int(cols/20) - count = 0 - while len(macs) > 0: - if count % parligne == 0: - f += '\n MACs: ' - else: - f += ', ' - f += "%s" % macs.pop() - count += 1 + if len(macs) == 1 and reste_cols > 25 : + # Une seule mac et on a assez de place + f += "MAC: %s" % macs[0] + else : + # On va à la ligne + # Combien d'adresses MAC peut-on mettre par ligne ? + # Une adresse MAC =~ 20 caracteres + cols -= 17 # On met 15espaces devant chaque ligne + parligne = int(cols/20) + count = 0 + while len(macs) > 0: + if count % parligne == 0: + f += '\n MACs: ' + else: + f += ', ' + f += "%s" % macs.pop() + count += 1 elif result['activée'] == 'down' : f+= ', ' + coul('prise désactivée','rouge') else :