home *** CD-ROM | disk | FTP | other *** search
- #!/usr/bin/env python
-
- import pygtk
- pygtk.require('2.0')
- import gtk
- import pynotify
- import sys
-
- exposed_signal_id = 0
- count = 0
-
- def exposed_cb(button, event, n):
- global exposed_signal_id
- button.disconnect(exposed_signal_id)
- if not n.show():
- print "Failed to send notification"
- gtk.main_quit()
-
- def clicked_cb(button, n):
- global count
- count += 1
- n.update("Widget Attachment Test",
- "You clicked the button %s times" % count)
- if not n.show():
- print "Failed to send notification"
- gtk.main_quit()
-
-
- if __name__ == '__main__':
- if not pynotify.init("Replace Test"):
- sys.exit(1)
-
- win = gtk.Window(gtk.WINDOW_TOPLEVEL)
- win.show()
- win.connect('delete_event', gtk.main_quit)
-
- button = gtk.Button("Click here to change notification")
- button.show()
- win.add(button)
-
- n = pynotify.Notification("Widget Attachment Test",
- "Button has not been clicked yet", None, button)
- n.set_category("presence.online")
- n.set_timeout(0)
-
- button.connect('clicked', clicked_cb, n)
- exposed_signal_id = button.connect('expose_event', exposed_cb, n)
-
- gtk.main()
-