George Peter Staplin 2006.07.11 : As the Tcl/Tk core team is taking their time with Tk 8.5, I've been working on my own Tk9 for a few months. It implements a window system using Tcl, and some C extensions from megapkg (megaimage, megaimagetk, structure). It has full support for alpha transparency in any widget. You can rotate windows, and every color in Tk9 consists of [list R G B A].
Features so far include (from megaimage):
NEWS 2006.08.21
After some help testing from Tcler's Chat people, I now think I have fixed the bug that occured sometimes with Xv (X video extension) and some video cards. I worked on my initial prototype program again to figure out the bug. This is the prototype: http://www.xmission.com/~georgeps/engineering/prototype/Xv_prototype-8.tar.bz2
I then added that code and did a round of builds. This time I did the Linux builds in Debian Sarge within Qemu. There was a bit of a strange libm issue that Torsten noticed otherwise I think. I tested in Windows, NetBSD, and with SuSE Linux emulation in NetBSD.
The latest demo is here and requires Tclkit >= 8.5a4: http://www.xmission.com/~georgeps/implementation/software/demo/NexTk_demo5b.kit
If the Xv code still fails, don't fret, because you can run the demo! (Please let me know if it does fail, because it's supposed to automatically fallback to MIT-SHM.) You can do:
export NEXTK_DISABLE_XV=1 tclkit8.5 NexTk_demo5b.kit
(for further changes see the megapkg CHANGES file)
Here's a new screenshot:
2006.08.19
http://www.xmission.com/~georgeps/implementation/software/demo/tk9_demo3.kit
Here is a screenshot from that Starkit:
TODO:
2006.08.17
Here's a new screenshot:
Items left to do:
2006.08.08
I have ported the base widget that hosts Tk9 within Tk8.x to Windows. I'm now regularly building Windows DLLs with the MinGW cross compiler from pkgsrc. There are many changes I've made to the C extensions. I also had to modify the tk9_demo.vfs files to work in Windows, and created an archmap.tcl for having the Starkit support multiple platforms.
Here's a link to the Starkit that supports NetBSD x86, Linux x86, and Windows for 8.5a4 tclkits:
http://www.xmission.com/~georgeps/implementation/software/demo/tk9_demo2.kit
Thanks to Pat Thoyts and RS for testing in Windows, and elsewhere.
DKF suggested that I change the name to NexTk1. I like the sound of NexTk.
I'm thinking seriously about finishing my notes on the nv driver for X, so that I can mmap the memory, setup the card, and use this as my window system. I was thinking that I could use a modified Xvfb with this code to support X11 apps in my own window system.
It's probably time to profile the code in the demo. Some hot spots may exist in the C code or the demo itself. The grid engine is basically finished for now I think. Once I get it working in real world apps I think that will be the real test of it.