diff options
| author | David Zeuthen <davidz@redhat.com> | 2003-12-01 20:49:53 +0000 | 
|---|---|---|
| committer | David Zeuthen <davidz@redhat.com> | 2003-12-01 20:49:53 +0000 | 
| commit | 3e77824dff9ea3e903f92b6d290a9ca87ae28b84 (patch) | |
| tree | dfb24b872eca164b8ba6b60412bdc04639cdd591 | |
| parent | 9f1a60dbba69844c0a04b3dd86280352736187ce (diff) | |
2003-12-01  David Zeuthen  <david@fubar.dk>
	* python/dbus.py: Add the actual message when calling the reciever
	of a signal such that parameters can be inspected. Add the method
	remove_signal_receiver
| -rw-r--r-- | ChangeLog | 6 | ||||
| -rw-r--r-- | python/dbus.py | 12 | 
2 files changed, 16 insertions, 2 deletions
@@ -1,3 +1,9 @@ +2003-12-01  David Zeuthen  <david@fubar.dk> + +	* python/dbus.py: Add the actual message when calling the reciever +	of a signal such that parameters can be inspected. Add the method +	remove_signal_receiver +	  2003-11-26  Mikael Hallendal  <micke@imendio.com>  	* bus/*.[ch]: diff --git a/python/dbus.py b/python/dbus.py index c7ab5dd3..3a997da1 100644 --- a/python/dbus.py +++ b/python/dbus.py @@ -75,7 +75,15 @@ class Bus:          self._match_rule_to_receivers[match_rule].append(receiver)          dbus_bindings.bus_add_match(self._connection, match_rule) -         + +    def remove_signal_receiver(self, receiver, interface=None, service=None, path=None): +        match_rule = self._get_match_rule(interface, service, path) + +        if self._match_rule_to_receivers.has_key(match_rule): +            if self._match_rule_to_receivers[match_rule].__contains__(receiver): +                self._match_rule_to_receivers[match_rule].remove(receiver) +                dbus_bindings.bus_remove_match(self._connection, match_rule) +      def get_connection(self):          """Get the dbus_bindings.Connection object associated with this Bus"""          return self._connection @@ -103,7 +111,7 @@ class Bus:          if (self._match_rule_to_receivers.has_key(match_rule)):              receivers = self._match_rule_to_receivers[match_rule] -            args = [interface, member, service, path] +            args = [interface, member, service, path, message]              for receiver in receivers:                  receiver(*args)  | 
