Hi folks,<br><br>I have a Qt GUI script written in Ruby that I would like to get signal from DBus when a new USB device is detected. The scripts works if I connect to my slot to DBUS signal without any parameter, but this does not give me any info on which device was inserted. However, using QDBusObjectPath as the parameter to my slot (this works perfectly with C++) I ran into some sort of binding error "ruby-1.9.3-p0/gems/qtbindings-4.6.3.4/lib/Qt/qtruby4.rb:469:in `qt_metacall': Cannot handle 'QDBusObjectPath&' as slot argument (ArgumentError)" when Qt tries to call my slot.<br>
<br>Is anyone here familiar with the inner working of Qt Ruby binding knows that might be able to give me some hits on getting info on USB device inserted into the system? Thanks in advance.<br><br>Here is a sample code that will illustrate the error:<br>
<br>    require 'Qt'<br>    <br>    class MyDisk < Qt::Object<br>    <br>      slots 'on_device_added_ext(QDBusObjectPath)',<br>            'on_device_removed_ext(QDBusObjectPath)'<br>    <br>      def initialize<br>
        super<br>      end<br>    <br>      def on_device_added_ext message<br>        puts "Deviced Added with path = #{message.path()}"<br>      end<br>    <br>      def on_device_removed_ext message<br>        puts "Deviced Removed with path = #{message.path()}"<br>
      end<br>    <br>    end<br>    <br>    app = Qt::Application.new ARGV<br>    test = MyDisk.new<br>    <br>    ret = Qt::DBusConnection::systemBus().connect(<br>                             "org.freedesktop.UDisks",<br>
                             "/org/freedesktop/UDisks",<br>                             "org.freedesktop.UDisks",<br>                             "DeviceAdded",<br>                             test, SLOT('on_device_added_ext(QDBusObjectPath)'))<br>
    <br>    ret = Qt::DBusConnection::systemBus().connect(<br>                             "org.freedesktop.UDisks",<br>                             "/org/freedesktop/UDisks",<br>                             "org.freedesktop.UDisks",<br>
                             "DeviceRemoved",<br>                             test, SLOT('on_device_removed_ext(QDBusObjectPath)'))<br>    <br>    app.exec<br>