Pydsigner's Pygame Utilities
================================================================================

A collection of handy modules for Pygame created by Daniel Foerster (a.k.a. 
pydsigner)


pydsigner@gmail.com
http://github.com/pydsigner/pygu

PyGU is distributed under the LGPLv3 (or greater), see COPYING for details.

--------------------------------------------------------------------------------

This package contains a light but powerful game engine, called Pyramid. The 
core of the engine is contained in pyramid.py (no surprise there). This part 
includes a resource management system, and a stateful manager and event loop.

Additional tools include:

* PMS (pms.py), a parser-manager for the Pyramid MetaSong playlist format, 
  which provides powerful music control, with random or non-random playback, 
  Weighted selection in random mode, and the featured meta-song, which allows 
  having an intro track to a unlimited grouping of music tracks.

* PySLIM (pyslim.py), a universal interface to multiple music metadata 
  libraries. This tool is not complete, but already gives access to a few 
  different libraries.

* PyGW (pygw.py), a GUI interface for Pygame, is the crowning jewel of this 
  library. Designed specifically for Pyramid, this library provides incredibly 
  usable yet infinitely customizable widgets. This is done by letting the user 
  skin the widgets: whether with a complex graphic, or simply a filled Surface. 
  The widgets include a container, which is like an invisible Tkinter frame, 
  allowing programmers to built mega-widgets; A simple button; a powerful text 
  entry supporting cut, copy, and paste; and a scrollable container. This is 
  not a complete list, and more are to come, including a scrollbar for use with 
  the afore-mentioned scrollable container.

--------------------------------------------------------------------------------

To see some examples:

    $ cd examples

And then:

    $ python test_widgets.py

The only serious program that I know of that uses this library is my Chromium 
BSU spinoff, Celestron. To see this library in a real situation, go to:
https://sourceforge.net/projects/celestron/

--------------------------------------------------------------------------------

If you would like to contribute to PyGU in any way, whether through bug 
reports, bug fixes, better code, or new code altogether, please follow these 
instructions:


1) If you are sending a large amount of code, please make a Git diff and email 
   it to me. Otherwise, go to the website given above and follow the standard 
   procedures. There is a special tab for bugs.

2) If you sent an email, just watch your inbox. If I want more information, I 
   will tell you. If I thought it was worthy, I will thank you and get you up 
   in the AUTHORS file, etc. If I didn't think it was worthwhile or that it 
   wouldn't fit in, I will thank you anyways. If you used Github, do the same 
   things, but watch the website instead.
   
--------------------------------------------------------------------------------

If you use this library to do something useful, be sure to let me know! 
This library has changed in backwards-incompatible ways in the past, being 
prepared to modify my works that use this library, but I understand that not 
everyone has the time or wish to do so.
