NAME
itk - framework for building mega-widgets in Tcl/Tk
DESCRIPTION
Mega-widgets are high-level widgets that are constructed using Tk wid-
gets as component parts, usually without any C code. A fileselection-
box, for example, may have a few listboxes, some entry widgets and some control buttons. These individual widgets are put together in a waythat makes them act like one big widget. A fileselectionbox mega-wid-
get can be created with a command like: fileselectionbox .fsb -back-
ground blue -foreground white Once it has been created, it can be
reconfigured with a command like: .fsb configure -background green
-foreground black and all of its internal components will change color.
Each mega-widget has a set of methods that can be used to manipulate
it. For example, the current selection can be queried from a filese-
lectionbox like this: set fileName [.fsb get] In effect, a mega-widget
looks and acts exactly like a Tk widget, but is considerably easier to implement.[[iinnccrr TTkk]] is a framework for building mega-widgets. It uses [[iinnccrr TTccll]]
to support the object paradigm, and adds base classes which provide default widget behaviors. All [[iinnccrr TTkk]] widgets are derived from the AArrcchheettyyppee base class. This class manages internal component widgets, and provides methods like "configure" and "cget" to access configuration options. The WWiiddggeett base class inherits everything from AArrcchheettyyppee, and adds a Tkframe which acts as a container for the mega-widget. It is used to
build mega-widgets that sit inside of other frames and toplevels.
Derived classes create other internal components and pack them into the "hull" frame created by the WWiiddggeett base class. The TToopplleevveell base class inherits everything from AArrcchheettyyppee, but adds aTk toplevel which acts as a container for the mega-widget. It is used
to build mega-widgets, such as dialog boxes, that have their own
toplevel window. Derived classes create other internal components and pack them into the "hull" toplevel created by the TToopplleevveell base class. [[iinnccrr WWiiddggeettss]] LLIIBBRRAARRYY[[iinnccrr WWiiddggeettss]] is a mega-widget library built using [[iinnccrr TTkk]]. It can
be used right out of the box, and contains more than 30 different wid-
get classes, including:- fileselectiondialog
- tabnotebook
- panedwindow
- combobox
- optionmenu
- scrolledlistbox
- scrolledframe
- messagedialog
- and many others...
The ccaattaalloogg demo in the "iwidgets/demos" directory shows all of the available widgets in action. Each widget class has its own man page describing the features available. KKEEYYWWOORRDDSSclass, object, object-oriented, mega-widget
itk 3.0 itk(n)