pyCDK
 
What is it ?
------------
pyCDK is a Python binding to the CDK library. CDK, written by Mike Glover,
provides a set of high level curses widgets. CDK is great, it really makes 
building complex curses applications much easier. I have used it before 
from C and Perl but no Python binding existed - that I could find anyway.
So I was playing around with Pyrex (which is too cool for words) and decided
it would be educational to generate a Pyrex wrapper for the cdk lib.

pyCDK is strictly a text interface module, if you are looking to write a full
fledged GUI in python then I highly recommend wxPython and wxGlade.

Where are the Screenshots ?
---------------------------
calendar widget
matrix (table) widget
viewer widget


How do I get it ?
-----------------
1. Make sure you have Pyrex installed (version 0.82+).

2. Download and install CDK from Thomas Dickey's site
   * untar/gz the source archive
   * cd into it
   * ./configure
   * ./make
   * ./make install
   
3. Download the pycdk package from here

4. If necessary, modify setup.py by adding the include and lib directories for CDK. The relevant portion is:

    include_dirs = ['/usr/local/include/cdk', '/usr/include']
    library_dirs = ['/usr/local/lib', '/usr/lib']
    (I installed CDK with the default prefix of /usr/local.)

5. Run setup.py install (as root)
   
6. Every widget has a minimal example under pycdk/examples

7. Consult the man pages for CDK if you have a question that the examples don't make clear.
    Also, it may be that what you are after just isn't wrapped yet. In that case send me a note or
    better yet, send me a patch !

TODO
----
1. Test on more platforms/Python versions.

2. Some of the widgets accept C callbacks, need to get these working with Python callbacks.

3. Wrap additional widget functionality.

4. Marquee widget doesn't end gracefully.

FAQ
---
1. (Q) Why does this web site suck so bad. 
   (A) Cause this is a spare time deal and I'm a programmer not a graphic artist.
   
2. (Q) Who uses CDK ?
   (A) Good question - I don't know which programs out in the wild use cdk.
       If you know email me and I'll post it here. 
       I use it mainly for server monitoring utilities.
       
3. (Q) What platforms are supported ?
   (A) I'm working on RH9/x86. When I get time I'm going to test on Cygwin.
       Let me know if you get it working somewhere else.
       
CONTACT INFO
------------
Richard Lawson
lawson89 AT users.sourceforge.net

SourceForge.net Logo