First working PAC version
[findit] / src / debs / outtable.py
index 3b27b08..7fc52ad 100755 (executable)
@@ -4,20 +4,21 @@
 
 #==============================================================================
 
-class Out_Table_Control(object):
-    def __init__(self):
-        self.out_ui = Out_Table_Presentation()
-
-    def show(self, filelist, flsize):
-        self.out_ui.show_result(filelist, flsize)
-
-    def get_ui(self):
-        return self.out_ui.get_ui()
-
-#==============================================================================
-
-class Out_Table_Abstraction(object):
-    pass
+# class OutTable_Control(object):
+#     def __init__(self):
+#         self.table_present = Gtk_Presentation()
+# 
+#     def show(self, filelist, flsize):
+#         self.table_present.show_result(filelist, flsize)
+# 
+#     def get_ui(self):
+#         return self.table_present.get_toplevel()
+# 
+# 
+# #==============================================================================
+# 
+# class OutTable_Abstraction(object):
+#     pass
 
 #==============================================================================
 
@@ -27,53 +28,50 @@ class Cli_Presentation(object):
 #==============================================================================
 
 class Gtk_Presentation(object):
-    def __init__(self):
+    def __init__(self, filelist):   ###
         import gtk
         import gobject
 
-        scrollwind = gtk.ScrolledWindow()
-        scrollwind.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
-
         # Определяем переменную в которой будет храниться выводимый список
         self.liststore = gtk.ListStore(str, str, gobject.TYPE_INT64)
-        self.treeview = gtk.TreeView(self.liststore)
+
+        for bsize, path, size in filelist:
+            self.liststore.append([path, size, bsize])
+
+        treeview = gtk.TreeView(self.liststore)
+
         # На таблетке не отображаються заголовки столбцов по умолчанию -
         # след строка заставляет их отображаться принудительно
-        self.treeview.set_headers_visible(1)
-        self.liststore.append(['', '', 0])
+        treeview.set_headers_visible(1)
 
         # Создаем и настраиваем колонку с размером файла
         size_col = gtk.TreeViewColumn( 'Size')
-        cell = gtk.CellRendererText()
-        cell.set_property('width', 90)
-        size_col.pack_start(cell, True)
-        size_col.add_attribute(cell, 'text', 1)
-        self.treeview.append_column(size_col)
+        cell1 = gtk.CellRendererText()
+        cell1.set_property('width', 90)
+        size_col.pack_start(cell1, True)
+        size_col.add_attribute(cell1, 'text', 1)
+        treeview.append_column(size_col)
         # Создаем и настраиваем колонку с именем файла
         path_col = gtk.TreeViewColumn( 'Path')
         cell2 = gtk.CellRendererText()
         path_col.pack_start(cell2, True)
         path_col.add_attribute(cell2, 'text', 0)
-        self.treeview.append_column(path_col)
+        treeview.append_column(path_col)
 
         # Добавляем сортировку для колонок
-        self.treeview.set_search_column(1)
+        treeview.set_search_column(1)
         path_col.set_sort_column_id(0)
         size_col.set_sort_column_id(2)
 
-        scrollwind.add(self.treeview)
-        self.label = gtk.Label('full dir size = ')
-        
-        self.vbox = gtk.VBox(False, 5)
-        self.vbox.pack_start(scrollwind, True, True, 0)
-        self.vbox.pack_start(self.label, False, False,0)
-
-    def show_result(self, filelist, fullsize):
-        self.liststore.clear()
-        for stroka in filelist:
-            self.liststore.append(stroka)
-        flsizestr = 'full dir size = %s' % size_hum_read(fullsize)
-        self.label.set_text(flsizestr)
-
-    def get_ui(self):
-        return self.vbox
+        self.swin = gtk.ScrolledWindow()
+        self.swin.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
+        self.swin.add(treeview)
+###        self.swin.show_all()
+        self.toplevel = self.swin
+
+#     #=== Functions ============================================================
+#     def show_results(self, filelist):
+#         self.liststore.clear()
+#         for path, size, bsize in filelist:
+#             print path, size, bsize
+#             self.liststore.append([path, size, bsize])