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