home *** CD-ROM | disk | FTP | other *** search
/ tusportal.tus.k12.pa.us / tusportal.tus.k12.pa.us.tar / tusportal.tus.k12.pa.us / Wyse / latest-image.raw / 0.img / usr / lib / pygtk / 2.0 / demos / expander.py < prev    next >
Text File  |  2010-05-11  |  1KB  |  48 lines

  1. #!/usr/bin/env python
  2. '''Expander
  3.  
  4. GtkExpander allows to provide additional content that is initially hidden.
  5. This is also known as "disclosure triangle".
  6. '''
  7. # pygtk version: Maik Hertha <maik.hertha@berlin.de>
  8.  
  9. import gtk
  10.  
  11. class ExpanderDemo(gtk.Dialog):
  12.  
  13.     def __init__(self, parent=None):
  14.         gtk.Dialog.__init__(self, self.__class__.__name__, parent,
  15.             0,
  16.             (gtk.STOCK_CLOSE, gtk.RESPONSE_NONE))
  17.         try:
  18.             self.set_screen(parent.get_screen())
  19.         except AttributeError:
  20.             self.connect('destroy', lambda *w: gtk.main_quit())
  21.         self.connect("response", lambda d, r: d.destroy())
  22.         self.set_resizable(False)
  23.  
  24.         vbox = gtk.VBox(False, 5)
  25.         self.vbox.pack_start(vbox, True, True, 0)
  26.         vbox.set_border_width(5)
  27.  
  28.         label = gtk.Label()
  29.         label.set_markup("Expander demo. Click on the triangle for details.")
  30.         vbox.pack_start(label, False, False, 0)
  31.  
  32.         # Create the expander
  33.         expander = gtk.Expander("Details")
  34.         vbox.pack_start(expander, False, False, 0)
  35.  
  36.         # The Label for the expander
  37.         label = gtk.Label("Details can be shown or hidden.")
  38.         expander.add(label)
  39.  
  40.         self.show_all()
  41.  
  42. def main():
  43.     ExpanderDemo()
  44.     gtk.main()
  45.  
  46. if __name__ == '__main__':
  47.     main()
  48.