From ba1b4f9792e504ace8579e432b4f2c1b38a93dfb Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E2=80=9CAlexandr?= <“popov2al@gmail.com”> Date: Sat, 4 Apr 2009 15:09:04 +0400 Subject: [PATCH] add simple calc full directory size --- src/filesearch.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/filesearch.py b/src/filesearch.py index c8c26c4..2c1f3e8 100644 --- a/src/filesearch.py +++ b/src/filesearch.py @@ -31,7 +31,8 @@ class Search_File_Control(object): start_path, count = get_data() for fsize, fpath in nlargest(count, \ self.srch_abs.filegetter(start_path, get_stopit, label) ): - filelist.append([fpath, size_hum_read(fsize), fsize]) + filelist.append([fpath, size_hum_read(fsize), int(fsize)]) + print size_hum_read(self.srch_abs.full()) if not get_stopit(): kill_func() self.result_out.show(filelist) @@ -46,6 +47,7 @@ class Search_File_Abstraction(object): def filegetter(self, startdir, get_stopit, label): """Generator of file sizes and paths based on os.walk.""" # Проходим по всем папкам вглубь от заданного пути + self.full_dir_size = 0 for dirpath, dirnames, fnames in walk(startdir): # Исключаем каталоги из поиска в соответствии со списком исключений ignore_dirs = self.ignore_dirs @@ -69,9 +71,13 @@ class Search_File_Abstraction(object): # Проверяем можем ли мы определить размер файла - иначе пропускаем его try: # Возвращаем размер и полный путь файла + self.full_dir_size = getsize(flpath) + self.full_dir_size yield getsize(flpath), flpath except OSError: continue + + def full(self): + return self.full_dir_size class Search_File_Presentation(gtk.Window): -- 1.7.9.5