skip to navigation
skip to content

peggy 0.01

tools for working with PyGtk and setuptools

Latest Version: 0.02

Peggy helps you to use resources inside a package, especially resources used by PyGtk classes, like images or glade files. It works for zipped eggs or packages just somewhere in sys.path.

Peggy is a thin layer on top of setuptools and PyGtk. It's not doing much fancy stuff but can save you from reading some docs ;-)

Let's say we have the following module:

mymodule
|-- __init__.py
`-- data
     |-- logo.png
     |-- main.glade
     `-- data.dat

and want to distribute it as an EGG. Peggy helps us to use the files in the data subdirectory, no matter if mymodule is in a zipped egg or just somewhere in sys.path.:

>>> import peggy

First we create an instance of peggy.Peggy to handle our module:

>>> p = peggy.Peggy('mymodule')

Now we can load the glade file to get a gtk.glade.XML instance and use it to get our widgets:

>>> gladefile = p.get_glade('data/test.glade')
>>> gladefile
<gtk.glade.XML object at 0x9e22dc4 (GladeXML at 0x9b8de98)>
>>> gladefile.get_widget('window1')
<gtk.Window object at 0x9e22d4c (GtkWindow at 0xa08a0e0)>

Next we load the logo into a gtk.gdk.Pixbuf:

>>> logo = p.get_pixbuf('data/logo.png')
>>> logo
<gtk.gdk.Pixbuf object at 0x9ca252c (GdkPixbuf at 0xa0b1ae0)>

Finally we get the contents of data.dat into a string:

>>> s = p.get_string('data/test.txt')
>>> s
'Just some data'