#!/usr/bin/env python import dbus import dbus.mainloop.glib import gobject import gtk import hildon import sys def callback(name): print "called back" counter = int(button.get_label()) button.set_label(str(counter+1)) if len(sys.argv) > 1: from_file = sys.argv[1] else: from_file = None dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) if from_file: bus = dbus.SessionBus() else: bus = dbus.SystemBus() NAME = 'de.cryptobitch.muelli.Pwnitter' IFACE_NAME = 'de.cryptobitch.muelli.Pwnitter' pwnitter = dbus.Interface(bus.get_object(NAME, '/Pwnitter'), IFACE_NAME) pwnitter.connect_to_signal("MessageSent", callback) def quit(window, *args): pwnitter.Stop() gtk.main_quit() def start(from_file=None): if from_file: pwnitter.StartFromFile(from_file) else: pwnitter.Start() window = hildon.Window () window.set_title ("pwnitter") window.connect("destroy", quit) button = gtk.Button ("0") window.add (button) window.show_all() gobject.idle_add(start, from_file) gtk.main()