ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



Widget(n)                                         [incr Tk]                                        Widget(n)



NAME
       Widget - base class for mega-widgets within a frame

INHERITANCE
       itk::Archetype <- itk::Widget

STANDARD OPTIONS
       background      cursor

       See the "options" manual entry for details on the standard options.


DESCRIPTION
       The  Widget class inherits everything from the Archetype class, and adds a Tk frame called the "hull"
       component to represent the body of the mega-widget.  The window class name for the hull is set to the
       most-specific  class name for the mega-widget.  The protected variable itk_interior contains the win-
       dow path name for the "hull" component.  Derived classes specialize this widget by packing other wid-get widget
       get components into the hull.

       Since  the hull for the Widget class is implemented with a Tk frame, mega-widgets in the Widget class
       can be packed into other frames and toplevels.


COMPONENTS
       Name:           hull
       Class:          Frame

              The "hull" component acts as the body for the entire mega-widget.  Other components are packed
              into the hull to further specialize the widget.


EXAMPLE
       The following example implements a simple TextDisplay mega-widget.  It creates a read-only display of
       text with a text widget and a scrollbar.  option add *TextDisplay.wrap none widgetDefault option  add
       *TextDisplay.textBackground ivory widgetDefault option add *TextDisplay.width 40 widgetDefault option
       add *TextDisplay.height 10 widgetDefault

       class TextDisplay {
           inherit itk::Widget

           constructor {args} {
               itk_component add text {
                   text $itk_interior.info -state disabled                 -yscrollcommand [code  $itk_inte-rior.sbar $itk_interior.sbar
       rior.sbar set]
               } {
                   usual
                   keep -tabs -wrap -width -height
                   rename -background -textbackground textBackground Background
               }
               pack $itk_component(text) -side left -expand yes -fill both

               itk_component add scrollbar {
                   scrollbar $itk_interior.sbar                 -command [code $itk_interior.info yview]
               }
               pack $itk_component(scrollbar) -side right -fill y

               eval itk_initialize $args
           }

           public method display {info}
           public method append {info} }

       body TextDisplay::display {info} {
           $itk_component(text) configure -state normal
           $itk_component(text) delete 1.0 end
           $itk_component(text) insert 1.0 $info
           $itk_component(text) configure -state disabled }

       body TextDisplay::append {info} {
           $itk_component(text) configure -state normal
           $itk_component(text) insert end $info
           $itk_component(text) configure -state disabled }

       usual TextDisplay {
           keep -background -cursor -foreground -font
           keep -activebackground -activerelief
           keep -highlightcolor -highlightthickness
           keep -insertbackground -insertborderwidth -insertwidth
           keep -insertontime -insertofftime
           keep -selectbackground -selectborderwidth -selectforeground
           keep -textbackground -troughcolor }

       # # EXAMPLE:  Display the /etc/passwd file # TextDisplay .file -background red pack .file

       .file display [exec cat /etc/passwd]


KEYWORDS
       itk, Archetype, Widget, mega-widget



itk                                                  3.0                                           Widget(n)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.