Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCristian Garcia <cristian99garcia@gmail.com>2013-05-07 17:26:28 (GMT)
committer Cristian Garcia <cristian99garcia@gmail.com>2013-05-07 17:26:28 (GMT)
commitc1ce1b45e1348f98cc261a603e579d17aa1a67ec (patch)
tree2e7d4ea06ffdbf0f00b592121b2f9279be0d24f9
parent5cf85580f3bdd1e0b57b0e1de70d7857e53f28e0 (diff)
Cleanup en IconView.py
-rwxr-xr-x[-rw-r--r--]IconView.py48
1 files changed, 35 insertions, 13 deletions
diff --git a/IconView.py b/IconView.py
index 46095c6..f8c0776 100644..100755
--- a/IconView.py
+++ b/IconView.py
@@ -27,28 +27,50 @@ class IconView(Gtk.IconView):
self.__actualizar(G.USUARIO)
def __actualizar(self, path):
+ archivos = []
+ carpetas = []
+
self.modelo.clear()
tema = Gtk.IconTheme.get_default()
- archivos = os.listdir(path)
+ contenido = os.listdir(path)
+ contenido.sort()
+ for archivo in contenido:
+ direccion = os.path.join(path, archivo)
+
+ if os.path.isfile(direccion):
+ archivos.append(archivo)
+
+ else:
+ carpetas.append(archivo)
+
+ carpetas.sort()
archivos.sort()
+
+ for carpeta in carpetas:
+ direccion = os.path.join(path, carpeta)
+
+ icono = tema.lookup_icon(Gtk.STOCK_DIRECTORY,
+ 256,
+ Gtk.IconLookupFlags.NO_SVG).get_filename()
+
+ pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(icono, 55, 55)
+ self.modelo.insert(-1, [carpeta, pixbuf, direccion])
+
for archivo in archivos:
- path_nueva = os.path.join(path, archivo)
- if os.path.isdir(path_nueva):
- icono = tema.lookup_icon(Gtk.STOCK_DIRECTORY,
- 256,
- Gtk.IconLookupFlags.NO_SVG).get_filename()
- else:
- icono = tema.lookup_icon(Gtk.STOCK_FILE,
- 256,
- Gtk.IconLookupFlags.NO_SVG).get_filename()
+ direccion = os.path.join(path, archivo)
+
+ icono = tema.lookup_icon(Gtk.STOCK_FILE,
+ 256,
+ Gtk.IconLookupFlags.NO_SVG).get_filename()
+
pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size(icono, 55, 55)
- self.modelo.insert(0, [archivo, pixbuf, path_nueva])
+ self.modelo.insert(-1, [archivo, pixbuf, direccion])
if __name__ == "__main__":
Scroll = Gtk.ScrolledWindow()
- Scroll.add_with_viewport(IconView())
- Scroll.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
+ Scroll.add(IconView())
+ Scroll.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC)
Ventana = Gtk.Window()
Ventana.connect("delete-event", lambda x, i: exit())