procedure :list name Creates a list widget within the current panel frame for the TCL interpreter. A list widget is a frame window containing a scrollbar window and a listbox window. name is used to generate the path name of the windows to be created. It should have the format of a widget name (e.g. :list LST) and should be unique within this interpreter. The name will be lower-cased (using the string tolower command) in order to generate the path name used to create the windows. When the mouse button 1 is released while positioned over the listbox window then ,if available, the TCL script supplied using the :command parameter will be executed. If this is not available the TCL command click FRAME :list-select LIST text-string selection will be executed where FRAME and LIST are widget names. If the option exclusive T is active text-string is the information contained in the currently selected item of the list and selection is the index number for the currently selected item. If the option exclusive F is active text-string is a TCL list containing information for each of the currently selected items and selection is a TCL list of the index numbers for each of the currently selected items. The path names generated have the root framename.panelname.listname and the items scroll and list. The :list procedure may also be used directly within a frame window (i.e. before any panel window has been created). A binding is made to the keyboard Control + P sequence which causes the contents of the listbox window to be sent to the printer. A binding is made to the keyboard Control + S sequence which causes the contents of the listbox window to be saved to file. The :list procedure may have a number of arguments however none of these is mandatory. arguments :x number number is the x-co-ordinate within the current panel of the list widget in pixels e.g. :x 40 :y number number is the y-co-ordinate within the current panel of the list widget in pixels e.g. :y 20 The :x and :y parameters may be omitted in which case the packer geometry manager will be used and the position of the window will be determined by the contents of the master (panel) window. If however the :x and :y parameters are supplied then the placer geometry manager will be used to position the window within the master (panel) window. Warning: Note that it is not possible to mix use of the packer and placer geometry managers within the same window. Thus all windows within a panel must request or imply that the same geometry manager is used. :w number number is the width of the list widget in pixels. If :w is not defined then the width of the list widget is calculated using the value supplied for :list- width. e.g. :w 20 :h number number is the height of the list widget in pixels and is also the height of the list and scroll windows. e.g. :h 20 :rows number number is the number of rows of text to be contained by the listbox window. This is used to define the height of the list widget (see :h). :cols number number is the number of columns of text to be contained by the listbox window. This is used to define the width of the listbox window and is used to position the scrollbar window (see :w and :list-width). :list-width number number is the width of the listbox window in pixels and is used to position the scrollbar window. It is also used to determine the width of the list widget if :w is not defined. There are obvious interactions between :w, :h, :rows, :cols and :list-width and so it is not sensible or necessary to define all of these. The preferred choice is to specify the size of the list using :rows and :cols since these are specified using units of characters and are thus not dependent on the font size selected. :strings list list is a TCL list of text strings which are to be written into the listbox component of the list widget. The default is that the listbox is left empty. :exclusive T|F If the option T is selected then only one item at a time is selected from the list of strings defined by the :strings argument. Selecting an item from the list automatically causes any currently selected item to be deselected. If the option F is selected then any number of items from the list may be selected concurrently. The default option is exclusive T. :browsing T|F This argument is treated as an alias for :exclusive. :font fixed|variable Specifies the type of font to be used for the listbox window. The default is a fixed width font (courier). :see number Defines an element of the list which must be visible in the listbox widget. To ensure that the beginning of the list is visible then :see 0 should be specified. The default is that the start of the list is visible; i.e. :see 0. For compatibility with use in other commands :show is recognised as an alias for :see. :scroll V|H|B|N Specifies the generation and location of scroll-bar windows. These may be omitted (N - none); be drawn only vertically to the right of the listbox window (V - vertical); be drawn only horizontally below the listbox window (H - horizontal) or be drawn both vertically and horizontally (B - both). :command string string is any TCL command or commands to be executed when the list is selected. If a command is supplied and executed in this manner then the click procedure is not invoked. See also common procedure arguments defined later in this document.