Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAgustin Zubiaga <aguz@sugarlabs.org>2013-11-25 16:03:28 (GMT)
committer Agustin Zubiaga <aguz@sugarlabs.org>2013-11-25 16:03:28 (GMT)
commita0c842e8df4c87eb459350a4270385314b54002a (patch)
tree61630ba7e92dbd0da8558386d7b842de68ae44a1
parent780f7a1cb3ed4b3e3adc23e44cf9764c135b1d9a (diff)
Support for new GObject signals stylenewsignals
Signed-off-by: Agustin Zubiaga <aguz@sugarlabs.org>
-rw-r--r--sharedactivity.py35
-rw-r--r--simpleactivity.py6
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()