ClassyTcl

  ClassyTk

Home    Documentation    Screenshots    Binary distributions    Source distribution   

Object system, widget set and GUI builder for Tcl
by Peter De Rijk (Universiteit Antwerpen)

What is ClassyTk

ClassyTcl Object system

ClassyTk is based on the ClassyTcl Object system. This 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.

Gui Builder

The ClassyTk Builder can be used to graphically create interfaces. It is invoked via the cbuild command in the bin directory.

Widget Set

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.

Sample applications

The ClassyTk distribution contains some example applications:

Use

You should be able to obtain the latest versions of ClassyTcl and ClassyTk, and ExtraL on our server rrna.uia.ac.be via WWW or anonymous ftp (directory /pub/tcl). Both Extral, ClassyTcl and ClassyTk are implemented as loadable packages.

To use the widgets that come with the distribution, use the code:
tk appname name
package require ClassyTk

The application name given by the "tk appname" will be used for managing defaults and configuration options.

To write a new application, you can try out the builder by starting the program cbuild in the bin directory.

Contributions

If you have fixed bugs, made some nice additions to ClassyTk widgets, etc., you can send them to me, and I will consider incorporating them in new releases. Thanks to the people that have already contributed:

How to contact me

My mailbox gets overwhelmed quite often, and the development of ClassyTk 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
Universiteitsplein 1
B-2610 Antwerp

tel.: 32-03-820.23.16
fax: 32-03-820.22.48
E-mail: derijkp@uia.ua.ac.be
web: http://rrna.uia.ac.be/~peter/personal/peter.html

Legalities

ClassyTk is Copyright Peter De Rijk, University of Antwerp (UIA), 2000. 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.


Peter De Rijk
hosted at SourceForge.net Logo