On 05/12/11 21:31, Phil Thompson wrote:
On Mon, 05 Dec 2011 19:12:33 +0000, Chris Mayo
<cjm...@users.sourceforge.net>  wrote:

Try this...

arg = QDBusArgument()
arg.beginArray(QMetaType.QString)
arg.add("")
arg.endArray()

....and pass arg to call().

Doesn't seem to work:

device_iface = QtDBus.QDBusInterface('org.freedesktop.UDisks',
        '/org/freedesktop/UDisks/devices/sr0', 'org.freedesktop.UDisks.Device',

bus)

arg = QtDBus.QDBusArgument()
arg.beginArray(QMetaType.QString)
arg.add("")
arg.endArray()

reply = device_iface.call("DriveEject", arg)
print(reply.errorMessage())


Returns:

Unknown option

....because "" is not a valid option? According to...

http://hal.freedesktop.org/docs/udisks/Device.html#Device.DriveEject

...."unmount" is the only valid option.

Phil

Indeed it does work as:

arg = QtDBus.QDBusArgument()
arg.beginArray(QMetaType.QString)
arg.add("unmount")
arg.endArray()


and so does:

arg = QtDBus.QDBusArgument()
arg.beginArray(QMetaType.QString)
arg.endArray()

Experimenting with other calls shows this is the way to create an empty Array of Strings.

Chris
_______________________________________________
PyQt mailing list    PyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Reply via email to