
*** Necessary for complete X11R6 implementation

* Bitmap support: Drawable.GetImage and Drawable.PutImage must be
  implemented, possibly with support of special fields and optional
  hooks to PIL.


*** To be a real C Xlib replacement

* High-level functions: currently, there are mostly methods which
  directly correspond to X requests.  There should be some simpler
  functions (e.g. Window.resize_window() in addition to
  Window.configure(), Drawable.rectangle() in addition to
  Drawable.poly_rectangle(), etc), and possibly also compound
  functions (e.g. create_pixmap_from_image() which would load an image
  file and create a pixmap of it).

* Events: advanced event queue handling, e.g. filtering out events,
  only process events for a certain window, etc.

* Extensions: as many extensions as possible should be implemented.


*** Miscellaneous

* Faster, faster!  The protocol engine isn't very fast, despite the
  optimizations in version 0.7.

* The tread support and the protocol engine needs to be stress
  tested.  They _seem_ to work, but that's no guarantee.

* Much more documentation.

* Test suite: a test suite which exercises the entire library would
  definitely be a nice thing to have.

* Porting: the library should be runnable wherever there is a Python
  interpreter (with the necessary IPC support, that is.)  Major
  porting targets are Windows and OpenVMS.

* Widget set: a Python-optimized widget set using the X library would
  be really cute.

* Server-side support: while we're at it, why not extend the library
  to provide at least the server-side parsing of the X protocol?  It
  could be usable for writing X proxies, or for that matter, a
  complete X server in Python (this might be a little too spaced-out,
  though...)
