itk User Commands - usual






NAME

     usual - access default option-handling commands
          for a mega-widget component


SYNOPSIS

     usual ?tag? ?commands?





DESCRIPTION

     The usual command is used outside  of  an  [incr Tcl]  class
     definition  to  define the usual set of option-handling com-
     mands for a component widget.  Option-handling commands  are
     used  when a component is registered with the Archetype base
     class via the "itk_component add" method.  They specify  how
     the  component's  configuration options should be integrated
     into the composite option list for the mega-widget.  Options
     can be kept, renamed, or ignored, as described in the Arche-
     type man page.

     It is tedious to include the  same  declarations  again  and
     again  whenever  components  are  added.   The usual command
     allows a standard code fragment to be  registered  for  each
     widget  class,  which  is  used  by  default  to  handle the
     options.  All of the standard Tk widgets have usual declara-
     tions  defined  in  the  [incr Tk]  library.   Similar usual
     declarations should be created whenever  a  new  mega-widget
     class is conceived.  Only the most-generic options should be
     included in the usual declaration.

     The tag name is usually the name of a  widget  class,  which
     starts with a capital letter; however, any string registered
     here can be used later with the usual command  described  on
     the Archetype man page.

     If the commands argument is specified, it is associated with
     the  tag string, and can be accessed later via itk_component
     add.

     If only the tag argument is specified,  this  command  looks
     for an existing tag name and returns the commands associated
     with it.  If there are no commands associated with tag, this
     command returns the null string.

     If no arguments are specified, this command returns  a  list
     of all tag names previously registered.



EXAMPLE

     Following is the  usual  declaration  for  the  standard  Tk
     button widget:

         usual Button {
             keep -background -cursor -foreground -font
             keep -activebackground -activeforeground -disabledforeground
             keep -highlightcolor -highlightthickness
             rename -highlightbackground -background background Background
         }

     Only the options that would be common to all  buttons  in  a
     single  mega-widget  are  kept  or renamed.  Options like "-
     text" that would  be  unique  to  a  particular  button  are
     ignored.



KEYWORDS

     itk, Archetype, component, mega-widget