Object system, widget set and GUI builder for Tcl
by Peter De Rijk (Universiteit Antwerpen)
What is ClassyTcl
ClassyTcl is a dynamically loadable
object system for
Tcl. A Tcl-only as well as a C implementation
is available. It also doesn't require patches to the Tcl core, so
keeping up with new releases should be easy. Performance is very
adequate. The C version is gives extra speed, and makes it possible
to implement some methods in C.
In contrast to other Tcl object systems for Tcl, it is not modeled after
the object system designed for a completely different language such a C.
IMHO, it better follows the Tcl philosophy. The system is simple, but
flexible. Classes and objects are dynamic, and can easily be queried,
changed and debugged at runtime.
What is ClassyTk
The ClassyTk is an extension of Tk based on the
ClassyTcl Object system.
The ClassyTk Builder can be used to graphically
create interfaces. It is invoked via the cbuild command in the bin
ClassyTk adds a lot of improvements to Tk, ranging from drag
and drop support (between Tk apps) and a configuration
system to a large set of new
widgets and commands, written using the object system.
While the object system itself only requires Tcl (>8.0), the widgets that come with it
require Tk (of course), and another freely available extension called
ExtraL. ExtraL also does not require
compiled code, but can be speeded up by having it available.
Documentation for the widgets is often somewhat limited, but besides
the documentation, you can learn a lot from sources, the tests and the demos.
The ClassyTk distribution contains some example applications:
- cedit: This editor is actually very useable: I use it for all my developement
- ccalc: calculator; demo for the builder
- cdraw: vector drawing program
- ctester: app to test widgets
- cfiles: unfinished: very early stage file manager
- ccenter: unfinished: very early stage program manager
Admire some screenshots of ClassyTcl in action at the screenshots page.
How to contact me
My mailbox gets overwhelmed quite often, and the development of ClassyTcl
is definately not my only task, so responses might be slower than you
would like. However, I will respond as fast as I can.
Peter De Rijk
University of Antwerp (UIA)
Department of Biochemistry
ClassyTcl is Copyright Peter De Rijk, University of Antwerp (UIA),
1995 The following terms apply to all files associated with the
software unless explicitly disclaimed in individual files.
The author hereby grant permission to use, copy, modify,
distribute, and license this software and its documentation for any
purpose, provided that existing copyright notices are retained in all
copies and that this notice is included verbatim in any
distributions. No written agreement, license, or royalty fee is
required for any of the authorized uses. Modifications to this
software may be copyrighted by their authors and need not follow the
licensing terms described here, provided that the new terms are
clearly indicated on the first page of each file where they apply.
IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY
PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION,
OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE.
THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS IS"
BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.