diff options
author | Agustin Zubiaga <aguz@sugarlabs.org> | 2013-11-25 16:03:28 (GMT) |
---|---|---|
committer | Agustin Zubiaga <aguz@sugarlabs.org> | 2013-11-25 16:03:28 (GMT) |
commit | a0c842e8df4c87eb459350a4270385314b54002a (patch) | |
tree | 61630ba7e92dbd0da8558386d7b842de68ae44a1 | |
parent | 780f7a1cb3ed4b3e3adc23e44cf9764c135b1d9a (diff) |
Support for new GObject signals stylenewsignals
Signed-off-by: Agustin Zubiaga <aguz@sugarlabs.org>
-rw-r--r-- | sharedactivity.py | 35 | ||||
-rw-r--r-- | simpleactivity.py | 6 |
2 files changed, 21 insertions, 20 deletions
diff --git a/sharedactivity.py b/sharedactivity.py index 94b9589..f3e5851 100644 --- a/sharedactivity.py +++ b/sharedactivity.py @@ -120,21 +120,22 @@ class SharedActivity(SimpleActivity): __gtype_name__ = 'SugarSharedActivity' - __gsignals__ = { - 'event-received': (GObject.SignalFlags.RUN_FIRST, None, [str, str]), - 'buddy-joined': (GObject.SignalFlags.RUN_FIRST, None, [object]), - 'buddy-left': (GObject.SignalFlags.RUN_FIRST, None, [object]), - 'incoming-file': (GObject.SignalFlags.RUN_FIRST, None, [object]), - 'file-progress': (GObject.SignalFlags.RUN_FIRST, None, [object, - int, int]), - 'file-completed': (GObject.SignalFlags.RUN_FIRST, None, [object, - object, str]), - 'file-download-error': (GObject.SignalFlags.RUN_FIRST, None, [object])} + # Signals + s_event_received = GObject.Signal('event-received', arg_types=(str, str)) + s_buddy_joined = GObject.Signal('buddy-joined', arg_types=(object)) + s_buddy_left = GObject.Signal('buddy-left', arg_types=(object)) + s_incoming_file = GObject.Signal('incoming-file', arg_types=(object)) + s_file_progress = GObject.Signal('file-progress', arg_types=(object, int, + int)) + s_file_completed = GObject.Signal('file-completed', arg_types=(object, + object, str)) + s_file_error = GObject.Signal('file-download-error', arg_types=(object)) def __init__(self, handle, events={}, activitytoolbarbutton=True): SimpleActivity.__init__(self, handle, activitytoolbarbutton=activitytoolbarbutton, sharing=True) + if "file" in events: raise ReservedValue("file") @@ -225,7 +226,7 @@ class SharedActivity(SimpleActivity): if data in self._pending_files: self._pending_files.remove(data) - self.emit('incoming-file', data) + self.s_incoming_file.emit(data) def download_file(self, data): GObject.idle_add(self.__download_file, data) @@ -278,15 +279,15 @@ class SharedActivity(SimpleActivity): if len(self._pending_files) > 0: self._incoming_file(self._pending_files[0]) - self.emit('file-completed', data, open(tmp_file), sn) + self.s_file_completed.emit(data, open(tmp_file), sn) def _file_download_progress(self, getter, bd, data): total = self._download_content_length - self.emit('file-progress', data, total, bd) + self.s_file_progress.emit(data, total, bd) def _file_download_error(self, getter, err, data): logging.debug("Error getting document %s" % err) - self.emit('file-download-error', data) + self.s_file_error.emit(data) self._download_content_length = 0 self._download_content_type = None @@ -336,9 +337,9 @@ class SharedActivity(SimpleActivity): self.waiting_for_hand = not sharer self.shared_activity.connect('buddy-joined', - lambda w, b: self.emit('buddy-joined', b)) + lambda w, b: self.s_buddy_joined.emit(b)) self.shared_activity.connect('buddy-left', - lambda w, b: self.emit('buddy-joined', b)) + lambda w, b: self.s_buddy_left.emit(b)) self.conn = self.shared_activity.telepathy_conn self.tubes_chan = self.shared_activity.telepathy_tubes_chan @@ -397,7 +398,7 @@ params=%r state=%d' % (id, initiator, type, service, params, state)) event, data = recv.split("|", 2) data = self._parse_json(data) - self.emit('event-received', event, data) + self.s_event_received.emit(event, data) if event in self.events: self.events[event](data) diff --git a/simpleactivity.py b/simpleactivity.py index 4573704..867c618 100644 --- a/simpleactivity.py +++ b/simpleactivity.py @@ -67,8 +67,8 @@ class SimpleActivity(activity.Activity): __gtype_name__ = 'SugarSimpleActivity' - __gsignals__ = { - 'data-loaded': (GObject.SignalFlags.RUN_FIRST, None, [])} + # Signals + s_data_loaded = GObject.Signal('data-loaded') def __init__(self, handle, activitytoolbarbutton=True, @@ -235,6 +235,6 @@ class SimpleActivity(activity.Activity): try: rfile = open(file_name) self.data = json.load(rfile) - self.emit('data-loaded') + self.s_data_loaded.emit() finally: rfile.close() |