Advertisement
Guest User

Untitled

a guest
May 26th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 0.80 KB | None | 0 0
  1. #!/usr/bin/env ruby
  2.  
  3. require 'Qt4'
  4.  
  5. class UPower < Qt::Object
  6.  
  7.   Service = "org.freedesktop.UPower"
  8.   Path = "/org/freedesktop/UPower"
  9.   Iface = "org.freedesktop.UPower"
  10.  
  11.   slots 'added(QString)'
  12.  
  13.   def initialize
  14.     super
  15.     @bus = Qt::DBusConnection.systemBus
  16.     @upower = Qt::DBusInterface.new(Service, Path, Iface, @bus, self)
  17.     puts @upower.isValid
  18.     connect(@upower, SIGNAL('DeviceAdded(QString)'),
  19.             self, SLOT('added(QString)'))
  20.   end
  21.  
  22.   def hibernateAllowed
  23.     @upower.call("HibernateAllowed").value
  24.   end
  25.  
  26.   def canHibernate
  27.     @upower.property("CanHibernate").toBool
  28.   end
  29.  
  30.   private
  31.   def added(dev)
  32.     puts dev
  33.   end
  34. end
  35.  
  36. app  = Qt::Application.new(ARGV)
  37.  
  38. upower = UPower.new
  39. #puts upower.canHibernate
  40. #puts upower.hibernateAllowed
  41.  
  42. app.exec
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement