Abstract

This article describes the C++ programmer interface to hush, the hyper utility shell based on Tcl/Tk. Tcl is a scripting language that may be embedded in C or C++. Tk is a window and graphics toolkit based on X11, with an associated interpreter called wish. The hush library contains classes that provide convenient yet flexible access to the functionality offered by the Tcl/Tk toolkit and its extensions. The library is intended to support the needs of both novice and experienced (window) programmers. It offers widget and graphics classes with an easy to use interface, but allows more experienced programmers also to employ the Tcl scripting language to define the behavior and functionality of widget and structured graphics objects. The design of the hush library has been inspired by the InterViews library. However, both the use of event callbacks and the functional interface of widget and graphics classes is significantly simpler. An important advantage of basing hush on the Tk toolkit is that existing Tk applications written for the Tk interpreter wish can easily be (re)used in a C++ context, virtually without any costs. On the other hand, programs employing hush may again be used as an enhanced version of the wish interpreter, allowing the functionality defined in the program to be used in a (hush) script.