+#! /usr/bin/env python
+"""XSetBg (DBus version)
+
+"""
+
+__version__ = "$Revision$"[11:-2]
+__revision__ = "$Id$"[5:-2]
+__date__ = "$Date$"[7:-2]
+
+__author__ = "Oleg Broytman <phd@phdru.name>"
+__copyright__ = "Copyright (C) 2000-2010 PhiloSoft Design"
+__license__ = "GNU GPL"
+
+import gobject
+
+import dbus
+import dbus.service
+import dbus.mainloop.glib
+
+from xsetbg import change
+
+
+class XsetBg(dbus.service.Object):
+
+ @dbus.service.method("name.phdru.XSetBg", in_signature='', out_signature='')
+ def change(self):
+ change()
+
+ @dbus.service.method("name.phdru.XSetBg", in_signature='', out_signature='')
+ def force(self):
+ change(force=True)
+
+ @dbus.service.method("name.phdru.XSetBg", in_signature='', out_signature='')
+ def stop(self):
+ mainloop.quit()
+
+ @dbus.service.method("name.phdru.XSetBg", in_signature='', out_signature='')
+ def stop(self):
+ mainloop.quit()
+
+
+if __name__ == '__main__':
+ dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
+
+ session_bus = dbus.SessionBus()
+ name = dbus.service.BusName("name.phdru.XSetBg", session_bus)
+ object = XsetBg(session_bus, '/XSetBg')
+
+ change(force=True)
+ mainloop = gobject.MainLoop()
+ mainloop.run()