Ivo van der Wijk,
Vrije Universiteit, Amsterdam
Hush is Hypermedia toolkit designed for rapid application prototyping and implementation. It's core functionality is is sufficient for writing simple graphical applications, but it lacks some of the more complex widgets used in more advanced programs. This paper describes the implementation of AWS, the Advanced Widget Set, a set of compound widgets built on top of Hush, implementing some of Hush' missing features.
Examples of such toolkits are Java's AWT (Abstract Widget Toolkit) ([6]), the commercial Motif widget toolkit, tcl's Tk ([1]), and Hush, the Hyper Utility SHell, a C++ toolkit built ([1]) upon Tcl/Tk ([4]. (Hush provides more than just a C++ api for tcl/tk - it provides CORBA, Web/HTML tools and more, but that's beyond the scope of this paper).
Eventough Hush is a very powerfull and complete toolkit, it's not perfect. Standard user interface components that are not supplied by Tk are also not available in Hush. Examples of such missing components are Balloons (also known as Window Tips), Dialog boxes (and editors!), Advanced Tree Widgets (i.e. to display Filesystems/Directory structures), Comboboxes, Buttons containing both Text and Images, etc.
Is it possible to add these components to Hush using the api offered by Hush? How well will they perform? What will their api look like? Does Hush provides sufficient functionality? I will try to answer these questions in this paper by describing (shortly) how three of these 'missing components' (a balloon widget, a combobox widget and a dialog widget) were added to Hush, which problems I encountered and how these were solved. All of this is explained in the following paragraphs:
This added set of widgets is named AWS, short for Advanced Widget Set.