You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/app-misc/gnomecatalog/files/gnomecatalog-0.3.4.2-dbus.p...

110 lines
3.4 KiB

# https://sourceforge.net/tracker2/?func=detail&aid=2622610&group_id=118573&atid=681722
--- a/gnomecatalog/data.py (revision 1)
+++ b/gnomecatalog/data.py (working copy)
@@ -33,32 +33,34 @@
""" Leemos el disco y lo insertamos en la base de datos """
def import_disk(self):
- path = self.config.get("source")
+
+ for path in utils.get_path():
+ #~ path = self.config.get("source")
- database = storage.Sqlite(self.opened_database, self.app, True)
+ database = storage.Sqlite(self.opened_database, self.app, True)
- if self.config.get("thumbnails") == "True":
- if not os.path.exists(database.database + "_thumbs"):
- os.mkdir(database.database + "_thumbs")
+ if self.config.get("thumbnails") == "True":
+ if not os.path.exists(database.database + "_thumbs"):
+ os.mkdir(database.database + "_thumbs")
- """Importamos un nuevo disco"""
- if not utils.is_mounted(path):
- self.__path = path
- self.__progress = self.app.progress_bar
- utils.mount(path, self._mount_callback)
+ """Importamos un nuevo disco"""
+ if not utils.is_mounted(path):
+ self.__path = path
+ self.__progress = self.app.progress_bar
+ utils.mount(path, self._mount_callback)
- disk = self.reader.read(path, self.app.progress_bar)
+ disk = self.reader.read(path, self.app.progress_bar)
- if disk:
- """ ahora insertamos los datos en la base de datos. """
- disk = database.insert_disk(disk)
- if self.config.get("eject") == "True": utils.eject(path)
- self.app.set_guardar_state(True)
-# self.load_data()
-# self.treeDisk.select(disk)
- # self.show_files_from_selected()
- database.close()
- return disk
+ if disk:
+ """ ahora insertamos los datos en la base de datos. """
+ disk = database.insert_disk(disk)
+ if self.config.get("eject") == "True": utils.eject(path)
+ self.app.set_guardar_state(True)
+ # self.load_data()
+ # self.treeDisk.select(disk)
+ # self.show_files_from_selected()
+ database.close()
+ return disk
""" Carga los discos de a base de datos en el treeview tree """
--- a/gnomecatalog/utils.py (revision 1)
+++ b/gnomecatalog/utils.py (working copy)
@@ -1,6 +1,28 @@
import os, commands, time
import gnomevfs, gtk
+import dbus, dbus.glib, sys, urllib
+
+def get_path():
+ path = []
+ bus = dbus.SystemBus()
+ hal_obj = bus.get_object ('org.freedesktop.Hal', '/org/freedesktop/Hal/Manager')
+ hal = dbus.Interface (hal_obj, 'org.freedesktop.Hal.Manager')
+ udis = hal.FindDeviceByCapability ('storage')
+ for udi in udis:
+ dev_obj = bus.get_object ('org.freedesktop.Hal', udi)
+ dev = dbus.Interface (dev_obj, 'org.freedesktop.Hal.Device')
+ if (dev.GetProperty ('storage.removable')):
+ block = dev.GetProperty ('block.device')
+ f = open ('/etc/mtab')
+ for line in f.readlines():
+ if (line.find (block) == 0):
+ mount = line.split()
+ path.append(mount[1].replace('\\040',' '))
+ f.close()
+ return path
+
+
def locate_file(path, type = "icons"):
prefixes = ['', 'usr/', 'usr/local/']
if type == "glade":
--- a/gnomecatalog/ui/app.py (revision 1)
+++ b/gnomecatalog/ui/app.py (working copy)
@@ -162,14 +162,6 @@
self.import_thread.start()
gobject.timeout_add(1000, self.wait_import_cb)
-# t2 = threading.Thread(target=self.wait_import_cb)
-# t2.setDaemon(True)
-# t2.start()
-
-# gobject.idle_add(self.wait_import_cb, t)
-
- #dialogs.addDisk(self.data).loadDisk()
-
def wait_import_cb(self):
if not self.import_thread.isAlive():
self.hbox_import.hide()