I am just now modifying this web page for the first time in ages, and it will probably be ages before I do it again. This is not because I have lost interest in XTC, it is because I have spent all my free time writing code instead of documentation.
In short, do not be alarmed if this opening page is horribly out of date by the time you read this. To get a better idea of how progress is going, check out my new changelog page.
XTC is an implementation of the X Window Protocol, written in pure Java. It does not require any native C libraries, such as Xlib: instead, it is intended as a complete replacement for such libraries, written from the ground up to be flexible, object-oriented, and multi-threaded.
My ultimate goal is to accomplish in one library what Motif, Athena, and most other libraries that use Xlib fail to do properly in two: provide a simple, powerful, usable GUI toolkit.
this code is in the public domain, meaning you can use it for any purpose without any obligation. It does not have a restrictive license: in fact, it does not technically have a license at all. It can, however, be used in any product that has any license, open or propriatary.
If you make improvements to this code, please consider contributing your improvements back to me, for the betterment of everyone using XTC. Contributions must be released to the public domain to be accepted, and all submissions are assumed to be in the public domain unless otherwise noted. I also welcome advice, feedback, and ideas for new features.
To learn more details about XTC, check out my XTC concepts web page. It isn't much, but then I'm not as enthusiastic about documenting my code as I am about writing it.
Actually, the best way to learn more about XTC is to run the example programs in the XTC.tools package, and playing with the source code to see how they tick. Most programs are barely more than a page long, just long enough to demonstrate a particularly useful feature of XTC. I have always preferred to learn by example, and now I find that is also how I prefer to teach.
Maja
is a bash shell script that automatically compiles
modified .java files, much like make. However, maja is
simpler to configure and more efficient: it only invokes
javac once on all the files, instead of on each file
individually.