from gi.repository import GLib class ProxyProperty(object): def __init__(self, iface_name, property): self._iface_name = iface_name self.__name__ = property.attrib["name"] self.__qualname__ = self._iface_name + "." + self.__name__ self._type = property.attrib["type"] access = property.attrib["access"] self._readable = access.startswith("read") self._writeable = access.endswith("write") self.__doc__ = "(" + self._type + ") " + access def __get__(self, instance, owner): if instance is None: return self if not self._readable: raise AttributeError("unreadable attribute") return instance._object["org.freedesktop.DBus.Properties"].Get(self._iface_name, self.__name__) def __set__(self, instance, value): if instance is None or not self._writeable: raise AttributeError("can't set attribute") instance._object["org.freedesktop.DBus.Properties"].Set(self._iface_name, self.__name__, GLib.Variant(self._type, value)) def __repr__(self): return "<property " + self.__qualname__ + " at 0x" + format(id(self), "x") + ">"
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
__init__.py | File | 148 B | 0644 |
|
_inspect3.py | File | 708 B | 0644 |
|
auto_names.py | File | 519 B | 0644 |
|
bus.py | File | 1.53 KB | 0644 |
|
bus_names.py | File | 3.45 KB | 0644 |
|
error.py | File | 2.52 KB | 0644 |
|
exitable.py | File | 982 B | 0644 |
|
generic.py | File | 2.53 KB | 0644 |
|
identifier.py | File | 383 B | 0644 |
|
method_call_context.py | File | 1.01 KB | 0644 |
|
proxy.py | File | 4.1 KB | 0644 |
|
proxy_method.py | File | 3.98 KB | 0644 |
|
proxy_property.py | File | 1.04 KB | 0644 |
|
proxy_signal.py | File | 2.06 KB | 0644 |
|
publication.py | File | 1.36 KB | 0644 |
|
registration.py | File | 5.58 KB | 0644 |
|
request_name.py | File | 883 B | 0644 |
|
subscription.py | File | 2.12 KB | 0644 |
|
timeout.py | File | 303 B | 0644 |
|