What is a hull component?
Snit can’t create a Tk widget object; only Tk can do that. Thus, every instance of a snit::widget must be wrapped around a genuine Tk widget; this Tk widget is called the hull component. Snit effectively piggybacks the behavior you define (methods, options, and so forth) on top of the hull component so that the whole thing behaves like a standard Tk widget. For snit::widgets the hull component must be a Tk frame or toplevel widget; any other widgets created as part of the snit::widget will be contained within this frame or toplevel. snit::widgetadaptors differ from snit::widgets chiefly in that any kind of widget can be used as the hull component; see WIDGET ADAPTORS.