From 4c58f7c527f1f8dccc916cd230c0f025056c567a Mon Sep 17 00:00:00 2001 From: "Paul W. Frields" Date: Mon, 25 May 2009 04:36:47 -0400 Subject: Try to fix subscribe methods and add testing gunk --- pulseaudio/PulseObj.py | 36 +++++++++++++++++++++++++----------- pulsecaster/ui.py | 9 +++++---- 2 files changed, 30 insertions(+), 15 deletions(-) diff --git a/pulseaudio/PulseObj.py b/pulseaudio/PulseObj.py index 03731cb..bc8ba5f 100644 --- a/pulseaudio/PulseObj.py +++ b/pulseaudio/PulseObj.py @@ -269,12 +269,11 @@ class PulseObj: ### - def py_context_set_subscribe_cb(self, c, cb, userdata): - "Set subscribe callback" - print "py_context_set_subscribe_cb:", c, cb, userdata - return - - ### + def py_subscribe_cb(self, c, event, index, userdata): + print 'py_subscribe_cb: called' + + self.complete_action() + return 0 def py_context_success(self, c, success, userdata): if success == 0: @@ -549,16 +548,31 @@ class PulseObj: ### - def pulse_context_subscribe(self, c, mask, success, userdata): + def pulse_context_subscribe(self, mask, callback): "Subscribe to event" - #self.start_action() - print "pulse_context_subscribe:", c, mask, success, userdata - CONTEXT_SUCCESS = PA_CONTEXT_SUBSCRIBE_CB_T(self.py_context_set_subscribe_cb) - + self.start_action() + print "pulse_context_subscribe:", mask, callback + CONTEXT_SUCCESS = PA_CONTEXT_SUCCESS_CB_T(self.py_context_success) + self.operation = pa_context_subscribe(self.context, mask, CONTEXT_SUCCESS, None) + self.pulse_iterate() + return + + ### + + def pulse_context_set_subscribe_callback(self, callback): + "Set subscribe callback" + self.start_action() + print "py_context_set_subscribe_cb:", callback + PA_CONTEXT_SUBSCRIBE_CB = PA_CONTEXT_SUBSCRIBE_CB_T(self.py_subscribe_cb) + + self.operation = pa_context_set_subscribe_callback(self.context, + PA_CONTEXT_SUBSCRIBE_CB, + None) + self.pulse_iterate() return ### diff --git a/pulsecaster/ui.py b/pulsecaster/ui.py index 6bf03ba..6ccaf93 100644 --- a/pulsecaster/ui.py +++ b/pulsecaster/ui.py @@ -92,11 +92,12 @@ class PulseCasterUI: # Fill the combo boxes initially self.repop_sources() - self.pa.pulse_context_subscribe(self.pa.context, - 0x2ff, - self.repop_sources, - None) + self.pa.pulse_context_subscribe(0x0001, self.dummy) + self.pa.pulse_context_subscribe(0x0021, self.dummy) + self.pa.pulse_context_set_subscribe_callback(self.dummy) + def dummy(self, *args): + print('Dummy: ', args) def repop_sources(self, *args): self.sources = self.pa.pulse_source_list() -- cgit