diff options
author | Daniel Drake <dsd@laptop.org> | 2011-02-02 16:27:46 (GMT) |
---|---|---|
committer | Daniel Drake <dsd@laptop.org> | 2011-02-02 16:37:48 (GMT) |
commit | 3bc80c776f7ef2578a4b9fd26028574a12982ea3 (patch) | |
tree | 890aa0ee4a2b07d9c9704883d11f0385e03a2e70 /recordtube.py | |
parent | ca2bbd6d74342247de97cffa150b577246c63107 (diff) |
UI rework
This is a rework of the UI that uses a more standard GTK+ principles
than previously. There is still a small amount of black magic, kept
away inside mediaview.py.
The UI/model separation was also refined in places, and a lot of code
was simplified.
Overall the functionality remains identical, and I tried to keep the UI
the same as before (but it is not pixel perfect).
As this was quite big there may be some bugs to shake out.
Diffstat (limited to 'recordtube.py')
-rw-r--r-- | recordtube.py | 68 |
1 files changed, 35 insertions, 33 deletions
diff --git a/recordtube.py b/recordtube.py index 7f63922..c2a60bb 100644 --- a/recordtube.py +++ b/recordtube.py @@ -1,12 +1,14 @@ +import os +import logging + import gobject -from dbus import Interface -from dbus.service import method, signal +from dbus.service import signal from dbus.gobject_service import ExportedGObject -import os -from constants import Constants +import constants from instance import Instance -import record + +logger = logging.getLogger('recordtube') class RecordTube(ExportedGObject): @@ -23,46 +25,46 @@ class RecordTube(ExportedGObject): def __init__(self, tube): - super(RecordTube, self).__init__(tube, Constants.PATH) + super(RecordTube, self).__init__(tube, constants.DBUS_PATH) self.tube = tube - self.idNotify = self.tube.add_signal_receiver(self._newRecdTubeCb, 'notifyBudsOfNewRecd', Constants.IFACE, path=Constants.PATH, sender_keyword='sender') - self.idRequest = self.tube.add_signal_receiver(self._reqRecdTubeCb, 'requestRecdBits', Constants.IFACE, path=Constants.PATH, sender_keyword='sender') - self.idBroadcast = self.tube.add_signal_receiver(self._getRecdTubeCb, 'broadcastRecdBits', Constants.IFACE, path=Constants.PATH, sender_keyword='sender', byte_arrays=True) - self.idUnavailable = self.tube.add_signal_receiver(self._unavailableRecdTubeCb, 'unavailableRecd', Constants.IFACE, path=Constants.PATH, sender_keyword='sender') + self.idNotify = self.tube.add_signal_receiver(self._newRecdTubeCb, 'notifyBudsOfNewRecd', constants.DBUS_IFACE, path=constants.DBUS_PATH, sender_keyword='sender') + self.idRequest = self.tube.add_signal_receiver(self._reqRecdTubeCb, 'requestRecdBits', constants.DBUS_IFACE, path=constants.DBUS_PATH, sender_keyword='sender') + self.idBroadcast = self.tube.add_signal_receiver(self._getRecdTubeCb, 'broadcastRecdBits', constants.DBUS_IFACE, path=constants.DBUS_PATH, sender_keyword='sender', byte_arrays=True) + self.idUnavailable = self.tube.add_signal_receiver(self._unavailableRecdTubeCb, 'unavailableRecd', constants.DBUS_IFACE, path=constants.DBUS_PATH, sender_keyword='sender') - @signal(dbus_interface=Constants.IFACE, signature='ss') #dual s for 2x strings + @signal(dbus_interface=constants.DBUS_IFACE, signature='ss') #dual s for 2x strings def notifyBudsOfNewRecd(self, recorder, recdXml): - record.Record.log.debug('Ive taken a new pho-ideo-audio! I hereby send you an xml thumb of said media via this interface.') + logger.debug('Ive taken a new pho-ideo-audio! I hereby send you an xml thumb of said media via this interface.') def _newRecdTubeCb(self, recorder, recdXml, sender=None): - record.Record.log.debug("_newRecdTubeCb from " + recorder ) + logger.debug("_newRecdTubeCb from " + recorder ) if sender == self.tube.get_unique_name(): - record.Record.log.debug("_newRecdTubeCb: sender is my bus name, so ignore my own signal") + logger.debug("_newRecdTubeCb: sender is my bus name, so ignore my own signal") return elif (recorder == Instance.keyHashPrintable): - record.Record.log.debug('_newRecdTubeCb: excuse me? you are asking me to share a photo with myself?') + logger.debug('_newRecdTubeCb: excuse me? you are asking me to share a photo with myself?') return self.emit( "new-recd", str(recorder), str(recdXml) ) - @signal(dbus_interface=Constants.IFACE, signature='sss') #triple s for 3x strings + @signal(dbus_interface=constants.DBUS_IFACE, signature='sss') #triple s for 3x strings def requestRecdBits(self, whoWantsIt, whoTheyWantItFrom, recdMd5sumOfIt ): - record.Record.log.debug('I am requesting a high-res version of someones media.') + logger.debug('I am requesting a high-res version of someones media.') def _reqRecdTubeCb(self, whoWantsIt, whoTheyWantItFrom, recdMd5sumOfIt, sender=None): if sender == self.tube.get_unique_name(): - record.Record.log.debug("_reqRecdTubeCb: sender is my bus name, so ignore my own signal") + logger.debug("_reqRecdTubeCb: sender is my bus name, so ignore my own signal") return elif (whoWantsIt == Instance.keyHashPrintable): - record.Record.log.debug('_reqRecdTubeCb: excuse me? you are asking me to share a photo with myself?') + logger.debug('_reqRecdTubeCb: excuse me? you are asking me to share a photo with myself?') return elif (whoTheyWantItFrom != Instance.keyHashPrintable): - record.Record.log.debug('_reqRecdTubeCb: ive overhead someone wants a photo, but not from me') + logger.debug('_reqRecdTubeCb: ive overhead someone wants a photo, but not from me') return self.emit( "recd-request", str(whoWantsIt), str(recdMd5sumOfIt) ) @@ -78,17 +80,17 @@ class RecordTube(ExportedGObject): for chunk in range(chunks): bytes = f.read(chunk_size) - if (chunk == 0): - record.Record.log.debug("sending " + str(chunk+1) + " of " + str(chunks) + " to " + sendThisTo ) - if (chunk == chunks-1): - record.Record.log.debug("sending " + str(chunk+1) + " of " + str(chunks) + " to " + sendThisTo ) + if chunk == 0: + logger.debug("sending " + str(chunk+1) + " of " + str(chunks) + " to " + sendThisTo ) + if chunk == chunks-1: + logger.debug("sending " + str(chunk+1) + " of " + str(chunks) + " to " + sendThisTo ) self.broadcastRecdBits(md5, chunk+1, chunks, bytes, sendThisTo, Instance.keyHashPrintable) f.close() return True - @signal(dbus_interface=Constants.IFACE, signature='suuayss') + @signal(dbus_interface=constants.DBUS_IFACE, signature='suuayss') def broadcastRecdBits(self, md5, part, numparts, bytes, sendTo, fromWho ): pass @@ -107,20 +109,20 @@ class RecordTube(ExportedGObject): self.emit( "recd-bits-arrived", md5, part, numparts, bytes, fromWho ) - @signal(dbus_interface=Constants.IFACE, signature='sss') #triple s for 3x strings + @signal(dbus_interface=constants.DBUS_IFACE, signature='sss') #triple s for 3x strings def unavailableRecd(self, md5sumOfIt, whoDoesntHaveIt, whoAskedForIt): - record.Record.log.debug('unavailableRecd: id love to share this photo, but i am without a copy meself chum') + logger.debug('unavailableRecd: id love to share this photo, but i am without a copy meself chum') def _unavailableRecdTubeCb( self, md5sumOfIt, whoDoesntHaveIt, whoAskedForIt, sender=None): if sender == self.tube.get_unique_name(): - record.Record.log.debug("_unavailableRecdTubeCb: sender is my bus name, so ignore my own signal") + logger.debug("_unavailableRecdTubeCb: sender is my bus name, so ignore my own signal") return - if (whoDoesntHaveIt == Instance.keyHashPrintable): - record.Record.log.debug('_unavailableRecdTubeCb: yes, i know i dont have it, i just told you/me/us.') + if whoDoesntHaveIt == Instance.keyHashPrintable: + logger.debug('_unavailableRecdTubeCb: yes, i know i dont have it, i just told you/me/us.') return - if (whoAskedForIt != Instance.keyHashPrintable): - record.Record.log.debug('_unavailableRecdTubeCb: ive overheard someone doesnt have a photo, but i didnt ask for that one anyways') + if whoAskedForIt != Instance.keyHashPrintable: + logger.debug('_unavailableRecdTubeCb: ive overheard someone doesnt have a photo, but i didnt ask for that one anyways') return - self.emit("recd-unavailable", md5sumOfIt, whoDoesntHaveIt)
\ No newline at end of file + self.emit("recd-unavailable", md5sumOfIt, whoDoesntHaveIt) |