From 73301d45fc7fbc65d3dbb551be8ffddf97588cd2 Mon Sep 17 00:00:00 2001
From: pin <pin@fe552daf-6dbe-4428-90eb-1537e0879342>
Date: Tue, 27 Jul 2010 16:27:21 +0000
Subject: [PATCH] =?utf8?q?Affichage=20des=20statistiques=20comme=20il=20fa?=
 =?utf8?q?ut.=20Suppression=20automatique=20des=20fichiers=20n'ayant=20pas?=
 =?utf8?q?=20d'=C3=A9v=C3=A9nements.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

git-svn-id: https://svn.cri.ensmp.fr/svn/minwii/trunk@297 fe552daf-6dbe-4428-90eb-1537e0879342
---
 src/minwii/loganalyse.py    | 28 +++++++++++++++-------------
 src/minwii/logapp.py        |  9 +++++++--
 src/minwii/logfilereader.py |  2 ++
 3 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/src/minwii/loganalyse.py b/src/minwii/loganalyse.py
index d7e136f..03d0837 100755
--- a/src/minwii/loganalyse.py
+++ b/src/minwii/loganalyse.py
@@ -12,16 +12,16 @@ from minwii.musicxml import musicXml2Song
 from statlib import stats
 from datetime import timedelta
 
-DEFAULT_STATS = ('geometricmean',
-                 'harmonicmean',
-                 'mean',
-                 'median',
-                 'medianscore',
+DEFAULT_STATS = (#'geometricmean',
+                 #'harmonicmean',
+                 #'mean',
+                 ('median', 'Médiane'),
+                 #'medianscore',
                  #'mode',
-                 'moment',
-                 'variation',
-                 'skew',
-                 'kurtosis',
+                 #'moment',
+                 ('variation', 'Variation'),
+                 #'skew',
+                 ('kurtosis', 'Kurtosis'),
                  #'itemfreq',
                  #'histogram',
                  #'cumfreq',
@@ -31,10 +31,12 @@ DEFAULT_STATS = ('geometricmean',
 def statsresults(m) :
     def computeList(self):
         l = m(self)
-        ret = {}
-        for name in DEFAULT_STATS :
-            ret[name] = getattr(stats, name)(l)
-        return ret
+        results = []
+        for name, label in DEFAULT_STATS :
+            results.append('%s : %s' % (label, getattr(stats, name)(l)))
+        return '\n'.join(results)
+    computeList.__name__ = m.__name__
+    computeList.__doc__ = m.__doc__
     return computeList
 
 class LogFileAnalyser(LogFileReader) :
diff --git a/src/minwii/logapp.py b/src/minwii/logapp.py
index 9306809..b10ca16 100755
--- a/src/minwii/logapp.py
+++ b/src/minwii/logapp.py
@@ -61,13 +61,14 @@ class Application(Frame) :
     
     def chooseDirDialog(self, dir=None) :
         if dir is None :
-            self.logDir = tkFileDialog.askdirectory()
+            self.logDir = tkFileDialog.askdirectory(title='Sélectionnez un dossier de fichiers de logs')
         else :
             self.logDir = dir
         if self.logDir :
              self.logFiles = glob(pjoin(self.logDir, '*.log'))
              self._cleanupJunkFiles()
              self.logFiles.sort()
+             self.logFiles.reverse()
              self.dataFrame.grid(row=0, column=0, sticky=NW)
              self.nav.setSize(len(self.logFiles))
              self.nav.grid(row=0, column=1)
@@ -80,8 +81,12 @@ class Application(Frame) :
             if not getsize(f) :
                 os.remove(f)
                 continue
-            # TODO : vérifier qu'il existe des événements
             else :
+                lfa = LogFileAnalyser(f)
+                if lfa.getLastEventTicks() is None :
+                    os.remove(f)
+                    continue
+                
                 files.append(f)
         
         self.logFiles = files
diff --git a/src/minwii/logfilereader.py b/src/minwii/logfilereader.py
index b7f84a1..828b085 100755
--- a/src/minwii/logfilereader.py
+++ b/src/minwii/logfilereader.py
@@ -114,6 +114,8 @@ class LogFileReader(object) :
         for l in self.getBackwardLineIterator() :
             if l.startswith('EVT ') :
                 break
+        else :
+            return None
         
         lastTicks = int(l.split(None, 2)[1])
         return lastTicks
-- 
2.20.1