The base for the above implementation is a snit class widget, which can create and administrate a widget. It is (from the comment of the implementation of Mark Roseman): A 'generic' widget object, which handles routines common to all widgets like assigning it an id, keeping track of whether or not it has been created, etc. Purely for convenience, we also include some code here that manages widgets that use -text or -textvariable, though not every widget will do so.
The “mega”widgets like frame, button, entry etc. are built with snit classes, which delegate a lot of functionality to the widget base class. Again a comment from Mark Roseman from the implementation:
Wtk.js is a set of functions building the base of the repesentation/displaying (client side) part.
Communication between the administrative side and the displaying side is done using two global procs: