*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> tktable (3)              
Title
Content
Arch
Section
 

table(n)

Contents



______________________________________________________________________________

NAME    [Toc]    [Back]

       table - Create and manipulate tables

SYNOPSIS    [Toc]    [Back]

       table pathName ?options?

STANDARD OPTIONS    [Toc]    [Back]

       -anchor	       -background    -cursor
       -exportselection 	      -font	      -foreground
       -highlightbackground	      -highlightcolor -highlightthickness
       -insertbackground	      -insertborderwidth-insertofftime
       -insertontime   -insertwidth   -invertselected
       -relief	       -takefocus     -xscrollcommand
       -yscrollcommand

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

WIDGET-SPECIFIC OPTIONS    [Toc]    [Back]

       Command-Line Name:-autoclear
       Database Name:  autoClear
       Database Class: AutoClear

	      A  boolean value which specifies whether the first keypress in a
	      cell will delete whatever text was previously  there.   Defaults
	      to 0.

       Command-Line Name:-bordercursor
       Database Name:  borderCursor
       Database Class: Cursor

	      Specifies  the  name  of the cursor to show when over borders, a
	      visual indication that interactive resizing is  allowed  (it  is
	      thus  affect  by	the  value  of	-resizeborders).   Defaults to
	      crosshair.

       Command-Line Name:-borderwidth or -bd
       Database Name:  borderWidth
       Database Class: BorderWidth

	      Specifies a non-negative pixel value or list of values  indicating
  the width of the 3-D border to draw on interior table cells
	      (if such a border is being drawn; the  relief  option  typically
	      determines  this).   If  one  value is specified, a rectangle of
	      this width will be drawn.  If two  values  are  specified,  then
	      only the left and right edges of the cell will have borders.  If
	      four values are specified, then the  values  correspond  to  the
	      {left  right top bottom} edges.  This can be overridden by the a
	      tag's borderwidth option.   It  can  also  be  affected  by  the
	      defined  -drawmode  for  the table.  Each value in the list must
	      have one of the forms acceptable to Tk_GetPixels.

       Command-Line Name:-browsecommand or -browsecmd
       Database Name:  browseCommand
       Database Class: BrowseCommand

	      Specifies a command which will be evaluated anytime  the	active
	      cell  changes.  It uses the %-substition model described in COMMAND
 SUBSTITUTION below.

       Command-Line Name:-cache
       Database Name:  cache
       Database Class: Cache

	      A boolean value that specifies whether an internal cache of  the
	      table contents should be kept.  This greatly enhances speed performance
 when used with -command but  uses  extra  memory.   Can
	      maintain	state when both -command and -variable are empty.  The
	      cache is automatically flushed whenever the value of  -cache  or
	      -variable  changes,  otherwise you have to explicitly call clear
	      on it.  Defaults to off.

       Command-Line Name:-colorigin
       Database Name:  colOrigin
       Database Class: Origin

	      Specifies what column index to interpret as the leftmost	column
	      in the table.  This value is used for user indices in the table.
	      Defaults to 0.

       Command-Line Name:-cols
       Database Name:  cols
       Database Class: Cols

	      Number of cols in the table.  Defaults to 10.

       Command-Line Name:-colseparator
       Database Name:  colSeparator
       Database Class: Separator

	      Specifies a separator character that will be interpreted as  the
	      column  separator  when  cutting or pasting data in a table.  By
	      default, columns are separated as elements of a tcl list.

       Command-Line Name:-colstretchmode
       Database Name:  colStretchMode
       Database Class: StretchMode

	      Specifies one of the following stretch modes for columns to fill
	      extra allocated window space:

	      none   Columns  will  not  stretch  to  fill the assigned window
		     space.  If the columns are too narrow, there  will  be  a
		     blank  space  at  the  right  of  the table.  This is the
		     default.

	      unset  Only columns that do not have a specific width  set  will
		     be stretched.

	      all    All  columns will be stretched by the same number of pixels
 to fill the window  space  allocated  to  the	table.
		     This  mode can interfere with interactive border resizing
		     which tries to force column width.

	      last   The last column will be  stretched  to  fill  the	window
		     space allocated to the table.

	      fill (only valid for -rowstretch currently)
		     The  table will get more or less columns according to the
		     window space allocated  to  the  table.   This  mode  has
		     numerous quirks and may disappear in the future.

       Command-Line Name:-coltagcommand
       Database Name:  colTagCommand
       Database Class: TagCommand

	      Provides	the  name of a procedure that will be evaluated by the
	      widget to determine the tag to be used for a given column.  When
	      displaying a cell, the table widget will first check to see if a
	      tag has been defined using the tag col widget method.  If no tag
	      is  found, it will evaluate the named procedure passing the column
 number in question as the sole argument.  The  procedure  is
	      expected	to  return the name of a tag to use, or a null string.
	      Errors occuring during the evaluation of the procedure,  or  the
	      return of an invalid tag name are silently ignored.

       Command-Line Name:-colwidth
       Database Name:  colWidth
       Database Class: ColWidth

	      Default  column  width, interpreted as characters in the default
	      font when the number is positive, or pixels if it  is  negative.
	      Defaults to 10.

       Command-Line Name:-command
       Database Name:  command
       Database Class: Command

	      Specified  a  command  to  use as a procedural interface to cell
	      values.  If -usecommand is  true,  this  command	will  be  used
	      instead  of any reference to the -variable array.  When retrieving
 cell values, the return value of the command is used as  the
	      value for the cell.  It uses the %-substition model described in
	      COMMAND SUBSTITUTION below.

       Command-Line Name:-drawmode
       Database Name:  drawMode
       Database Class: DrawMode

	      Sets the table drawing mode to one of the following options:

	      slow   The table is drawn to an offscreen pixmap	using  the  Tk
		     bordering functions (double-buffering).  This means there
		     will be no flashing, but this mode  is  slow  for	larger
		     tables.

	      compatible
		     The  table  is  drawn directly to the screen using the Tk
		     border functions.	It is faster, but the screen may flash
		     on update.  This is the default.

	      fast   The table is drawn directly to the screen and the borders
		     are done with fast X calls, so they are always one  pixel
		     wide  only.   As a side effect, it restricts -borderwidth
		     to a range of 0 or 1.  This mode  provides  best  performance
  for  large	tables, but can flash on redraw and is
		     not 100% Tk compatible on the border mode.

	      single The table is drawn to the screen as  in  fast  mode,  but
		     only single pixel lines are drawn (not square borders).

       Command-Line Name:-flashmode
       Database Name:  flashMode
       Database Class: FlashMode

	      A  boolean value which specifies whether cells should flash when
	      their value changes.  The table tag flash  will  be  applied  to
	      these  cells for the duration specified by -flashtime.  Defaults
	      to 0.

       Command-Line Name:-flashtime
       Database Name:  flashTime
       Database Class: FlashTime

	      The amount of time, in 1/4 second increments, for which  a  cell
	      should flash when its value has changed.	-flashmode must be on.
	      Defaults to 2.

       Command-Line Name:-height
       Database Name:  height
       Database Class: Height

	      Specifies the desired height for the window, in rows.   If  zero
	      or  less,  then  the  desired height for the window is made just
	      large enough to hold all the rows in the table.  The height  can
	      be further limited by -maxheight.

       Command-Line Name:-invertselected
       Database Name:  invertSelected
       Database Class: InvertSelected

	      Specifies  whether  the  foreground  and	background  of an item
	      should simply have their values swapped instead of  merging  the
	      sel tag options when the cell is selected.  Defaults to 0 (merge
	      sel tag).

       Command-Line Name:-ipadx
       Database Name:  ipadX
       Database Class: Pad

	      A pixel value specifying the internal offset X padding for  text
	      in  a  cell.   This value does not grow the size of the cell, it
	      just causes the text to be drawn further from the  cell  border.
	      It  only affects one side (depending on anchor).	Defaults to 0.
	      See -padx for an alternate padding style.

       Command-Line Name:-ipady
       Database Name:  ipadY
       Database Class: Pad

	      A pixel value specifying the internal offset Y padding for  text
	      in  a  cell.   This value does not grow the size of the cell, it
	      just causes the text to be drawn further from the  cell  border.
	      It  only affects one side (depending on anchor).	Defaults to 0.
	      See -pady for an alternate padding style.

       Command-Line Name:-maxheight
       Database Name:  maxHeight
       Database Class: MaxHeight

	      The max height in pixels that the window will request.  Defaults
	      to 600.

       Command-Line Name:-maxwidth
       Database Name:  maxWidth
       Database Class: MaxWidth

	      The  max width in pixels that the window will request.  Defaults
	      to 800.

       Command-Line Name:-multiline
       Database Name:  multiline
       Database Class: Multiline

	      Specifies the default setting  for  the  multiline  tag  option.
	      Defaults to 1.

       Command-Line Name:-padx
       Database Name:  padX
       Database Class: Pad

	      A  pixel value specifying the offset X padding for a cell.  This
	      value causes the default size of the cell  to  increase  by  two
	      times  the  value  (one  for each side), unless a specific pixel
	      size is chosen for the cell with the width command.   This  will
	      force  an  empty	area  on the left and right of each cell edge.
	      This padding affects all types of data in the cell.  Defaults to
	      0.  See -ipadx for an alternate padding style.

       Command-Line Name:-pady
       Database Name:  padY
       Database Class: Pad

	      A  pixel value specifying the offset Y padding for a cell.  This
	      value causes the default size of the cell  to  increase  by  two
	      times  the  value  (one  for each side), unless a specific pixel
	      size is chosen for the cell with the height command.  This  will
	      force  an  empty	area  on the top and bottom of each cell edge.
	      This padding affects all types of data in the cell.  Defaults to
	      0.  See -ipadx for an alternate padding style.

       Command-Line Name:-resizeborders
       Database Name:  resizeBorders
       Database Class: ResizeBorders

	      Specifies  what  kind  of  interactive border resizing to allow,
	      must be one of row, col, both (default) or none.

       Command-Line Name:-rowheight
       Database Name:  rowHeight
       Database Class: RowHeight

	      Default row height, interpreted as lines	in  the  default  font
	      when  the  number  is  positive,	or  pixels  if it is negative.
	      Defaults to 1.

       Command-Line Name:-roworigin
       Database Name:  rowOrigin
       Database Class: Origin

	      Specifies what row index to interpret as the topmost row in  the
	      table.   This  value  is	used  for  user  indices in the table.
	      Defaults to 0.

       Command-Line Name:-rows
       Database Name:  rows
       Database Class: Rows

	      Number of rows in the table.  Defaults to 10.

       Command-Line Name:-rowseparator
       Database Name:  rowSeparator
       Database Class: Separator

	      Specifies a separator character that will be interpreted as  the
	      row  separator  when  cutting  or  pasting  data in a table.  By
	      default, rows are separated as tcl lists.

       Command-Line Name:-rowstretchmode
       Database Name:  rowStretchMode
       Database Class: StretchMode

	      Specifies the stretch modes for rows  to	fill  extra  allocated
	      window space.  See -colstretchmode for valid options.

       Command-Line Name:-rowtagcommand
       Database Name:  rowTagCommand
       Database Class: TagCommand

	      Provides	the name of a procedure that can evaluated by the widget
 to determine the tag to be used for a given row.  The procedure
  must  be  defined  by the user to accept a single argument
	      (the row number), and return a tag name or  null	string.   This
	      operates	in  a similar manner as -coltagcommand, except that it
	      applies to row tags.

       Command-Line Name:-selectioncommand or -selcmd
       Database Name:  selectionCommand
       Database Class: SelectionCommand

	      Specifies a command to evaluate when the selection is  retrieved
	      from a table via the selection mechanism (ie: evaluating "selec-
	      tion get").  The return value from this command will become  the
	      string passed on by the selection mechanism.  It uses the %-substition
 model described in COMMAND SUBSTITUTION  below.	If  an
	      error occurs, a Tcl background error is generated and nothing is
	      returned.

       Command-Line Name:-selectmode
       Database Name:  selectMode
       Database Class: SelectMode

	      Specifies one of several styles for manipulating the  selection.
	      The  value of the option may be arbitrary, but the default bindings
 expect  it  to  be  either  single,	browse,  multiple,  or
	      extended;  the  default  value is browse.  These styles are like
	      those for the Tk listbox, except expanded for 2 dimensions.

       Command-Line Name:-selecttitle
       Database Name:  selectTitles
       Database Class: SelectTitles

	      Specifies whether title cells should be allowed  in  the	selection.
  Defaults to 0 (disallowed).

       Command-Line Name:-selecttype
       Database Name:  selectType
       Database Class: SelectType

	      Specifies  one of several types of selection for the table.  The
	      value of the option may be one of row, col, cell, or both (meaning
  row && col); the default value is cell.  These types define
	      whether an entire row/col is affected when a cell's selection is
	      changed (set or clear).

       Command-Line Name:-sparsearray
       Database Name:  sparseArray
       Database Class: SparseArray

	      A  boolean  value that specifies whether an associated Tcl array
	      should be kept as a sparse array (1, the default) or as  a  full
	      array  (0).   If	true,  then cell values that are empty will be
	      deleted from the array (taking less memory).  If false, then all
	      values in the array will be maintained.

       Command-Line Name:-state
       Database Name:  state
       Database Class: State

	      Specifies  one of two states for the entry:  normal or disabled.
	      If the table is disabled then the value may not be changed using
	      widget  commands and no insertion cursor will be displayed, even
	      if the input focus is in the widget.  Also, all insert or delete
	      methods will be ignored.	Defaults to normal.

       Command-Line Name:-titlecols
       Database Name:  titleCols
       Database Class: TitleCols

	      Number of columns to use as a title area.  Defaults to 0.

       Command-Line Name:-titlerows
       Database Name:  titleRows
       Database Class: TitleRows

	      Number of rows to use as a title area.  Defaults to 0.

       Command-Line Name:-usecommand
       Database Name:  useCommand
       Database Class: UseCommand

	      A  boolean  value  which	specifies  whether  to use the command
	      option.  This value sets itself to zero if command is  used  and
	      returns  an  error.   Defaults  to 1 (will use command if specified).


       Command-Line Name:-validate
       Database Name:  validate
       Database Class: Validate

	      A boolean specifying whether validation  should  occur  for  the
	      active buffer.  Defaults to 0.

       Command-Line Name:-validatecommand or -vcmd
       Database Name:  validateCommand
       Database Class: ValidateCommand

	      Specifies  a  command to execute when the active cell is edited.
	      This command is expected to return a Tcl boolean.  If it returns
	      true,  then it is assumed the new value is OK, otherwise the new
	      value is rejected (the edition will not take place).  Errors  in
	      this  command are handled in the background.  It uses the %-substition
 model described in COMMAND SUBSTITUTION below.

       Command-Line Name:-variable
       Database Name:  variable
       Database Class: Variable

	      Global Tcl array variable to attach to the table's C array.   It
	      will be created if it doesn't already exist or is a simple variable.
  Keys used by the table in	the  array  are  of  the  form
	      row,col  for cells and the special key active which contains the
	      value of the active cell buffer.	The Tcl array is managed as  a
	      sparse  array  (the table doesn't require all valid indices have
	      values).	No stored value for an	index  is  equivalent  to  the
	      empty  string,  and  clearing a cell will remove that index from
	      the Tcl array, unless the -sparsearray options is set to 0.

       Command-Line Name:-width
       Database Name:  width
       Database Class: Width

	      Specifies the desired width for the window, in columns.  If zero
	      or  less,  then  the  desired  width for the window is made just
	      large enough to hold all the columns in the  table.   The  width
	      can be further limited by -maxwidth.

       Command-Line Name:-wrap
       Database Name:  wrap
       Database Class: Wrap

	      Specifies the default wrap value for tags.  Defaults to 0.
_________________________________________________________________

DESCRIPTION    [Toc]    [Back]

       The table command creates a 2-dimensional grid of cells.  The table can
       use a Tcl array variable or Tcl command for data storage and retrieval.
       The  widget  has  an  active  cell, the contents of which can be edited
       (when the state is normal).  The widget supports a  default  style  for
       the cells and also multiple tags, which can be used to change the style
       of a row, column or cell (see TAGS for details).  A cell flash  can  be
       set  up	so that changed cells will change color for a specified amount
       of time ("blink").  Cells can  have  embedded  images  or  windows,  as
       described in TAGS and "EMBEDDED WINDOWS" respectively.

       One  or	more  cells may be selected as described below.  If a table is
       exporting its selection (see -exportselection  option),	then  it  will
       observe the standard X11 protocols for handling the selection.  See THE
       SELECTION for details.

       It is not necessary for all the cells to be displayed in the table window
 at once; commands described below may be used to change the view in
       the window.  Tables allow scrolling in both directions using the  standard
  -xscrollcommand  and  -yscrollcommand options.  They also support
       scanning, as described below.

       In order to obtain good performance, the table widget supports multiple
       drawing modes, two of which are fully Tk compatible.

INITIALIZATION    [Toc]    [Back]

       When  the  table  command is loaded into an interpreter, a built-in Tcl
       command, tkTableInit, is evaluated.  This will search for the appropriate
  table  binding  init  file	to load.  The directories searched are
       those in $tcl_pkgPath, both with Tktable(version) appended and without,
       $tk_library  and [pwd] (the current directory).	You can also define an
       $env(TK_TABLE_LIBRARY) to head this search list.  By default, the  file
       searched  for is called tkTable.tcl, but this can be overridden by setting
 $env(TK_TABLE_LIBRARY_FILE).

       This entire init  script  can  be  overridden  by  providing  your  own
       tkTableInit  procedure  before  the  library is loaded.	Otherwise, the
       aforementioned env(TK_TABLE_LIBRARY) variable  will  be	set  with  the
       directory in which $env(TK_TABLE_LIBRARY_FILE) was found.

INDICES    [Toc]    [Back]

       Many  of  the  widget  commands	for tables take one or more indices as
       arguments.  An index specifies a particular cell of the table,  in  any
       of the following ways:

       number,number
		   Specifies  the  cell  as a numerical index of row,col which
		   corresponds to the index of the associated Tcl array, where
		   -roworigin,-colorigin  corresponds to the first cell in the
		   table (0,0 by default).

       active	   Indicates the cell that has the  location  cursor.	It  is
		   specified with the activate widget command.

       anchor	   Indicates  the anchor point for the selection, which is set
		   with the selection anchor widget command.

       bottomright Indicates the bottom-rightmost cell visible in the table.

       end	   Indicates the bottom right cell of the table.

       origin	   Indicates the top-leftmost editable cell of the table,  not
		   necessarily	in  the  display.  This takes into account the
		   user specified origin and title area.

       topleft	   Indicates the top-leftmost editable cell visible in the table
 (this excludes title cells).

       @x,y	   Indicates  the cell that covers the point in the table window
 specified by x and y (in  pixel	coordinates).	If  no
		   cell covers that point, then the closest cell to that point
		   is used.

       In the widget command descriptions below, arguments named index, first,
       and last always contain text indices in one of the above forms.

TAGS    [Toc]    [Back]

       A  tag  is  a textual string that is associated with zero or more rows,
       columns or cells in a table.  Tags may  contain	arbitrary  characters,
       but it is probably best to avoid using names which look like indices to
       reduce coding confusion.  There may be any number of tags in  a	table,
       but  each  row, column or cell can only have one tag associated with it
       at a time.  There are several permanent tags in each table that can  be
       configured  by  the  user and will determine the attributes for special
       cells:

	      active	This tag is given to the active cell

	      flash	If flash mode is on, this tag is given to any recently
			edited cells.

	      sel	This tag is given to any selected cells.

	      title	This  tag  is given to any cells in the title rows and
			columns.  This tag has -state disabled by default.

       Tags control the way cells are displayed on the screen.	 Where	appropriate,
	the  default for displaying cells is determined by the options
       for the table widget.  However, display options may be associated  with
       individual  tags  using	the ``pathName tag configure'' widget command.
       If a cell, row or column has been  tagged,  then  the  display  options
       associated  with  the tag override the default display style.  The following
 options are currently supported for tags:

	      -anchor anchor
		     Anchor for item in the cell space.

	      -background or -bg color
		     Background color of the cell.

	      -borderwidth or -bd pixelList
		     Borderwidth of the cell, of the same format for  the  table,
  but	may also be empty to inherit the default table
		     borderwidth value (the default).

	      -font fontName
		     Font for text in the cell.

	      -foreground or -fg color
		     Foreground color of the cell.

	      -justify justify
		     How to justify multi-line text in a cell.	It must be one
		     of left, right, or center.

	      -image imageName
		     An image to display in the cell instead of text.

	      -multiline boolean
		     Whether  to display text with newlines on multiple lines.

	      -relief relief
		     The relief for the cell.

	      -showtext boolean
		     Whether to show the text over an image.

	      -state state
		     The state of the cell, to allow for certain cells	to  be
		     disabled.	 This  prevents  the cell from being edited by
		     the insert or delete methods, but a direct set  will  not
		     be prevented.

	      -wrap boolean
		     Whether characters should wrap in a cell that is not wide
		     enough.

       A priority order is defined among tags based on creation  order	(first
       created	tag  has  highest default priority), and this order is used in
       implementing some of the tag-related functions described below.	When a
       cell  is displayed, its properties are determined by the tags which are
       assigned to it.	The priority of a tag can be modified by  the  ``path-
       Name tag lower'' and ``pathName tag raise'' widget commands.

       If a cell has several tags associated with it that define the same display
 options (eg - a title cell with specific row and cell tags),  then
       the options of the highest priority tag are used.  If a particular display
 option hasn't been specified for a particular tag,	or  if	it  is
       specified  as  an  empty string, then that option will not be used; the
       next-highest-priority tag's option will be used	instead.   If  no  tag
       specifies  a  particular display option, then the default style for the
       widget will be used.

       Images are used for display purposes only.  Editing in that  cell  will
       still  be enabled and any querying of the cell will show the text value
       of the cell, regardless of the value of -showtext.

EMBEDDED WINDOWS    [Toc]    [Back]

       There may be any number of embedded windows in a table widget (one  per
       cell), and any widget may be used as an embedded window (subject to the
       usual rules for geometry management, which require the table window  to
       be  the	parent	of the embedded window or a descendant of its parent).
       The embedded window's position on the screen will be updated as the table
  is	modified or scrolled, and it will be mapped and unmapped as it
       moves into and out of the visible  area	of  the  table	widget.   Each
       embedded window occupies one cell's worth of space in the table widget,
       and it is referred to by the index of the cell in the  table.   Windows
       associated with the table widget are destroyed when the table widget is
       destroyed.

       Windows are used for display purposes only.  A value still  exists  for
       that  cell,  but will not be shown unless the window is deleted in some
       way.  If the window is destroyed or lost by the table widget to another
       geometry manager, then any data associated with it is lost (the cell it
       occupied will no longer appear in window names).

       When an embedded window is added to a table widget with the window configure
  widget command, several configuration options may be associated
       with it.  These options may be modified with later calls to the	window
       configure  widget  command.   The  following options are currently supported:


	      -create script
		     NOT CURRENTLY SUPPORTED.  Specifies a Tcl script that may
		     be evaluated to create the window for the annotation.  If
		     no -window option has been specified for this  cell  then
		     this  script  will be evaluated when the cell is about to
		     be displayed on the screen.  Script must create a	window
		     for  the  cell  and return the name of that window as its
		     result.  If the cell's window should ever be deleted, the
		     script  will be evaluated again the next time the cell is
		     displayed.

	      -background or -bg color
		     Background color of the cell.  If not specified, it  uses
		     the table's default background.

	      -borderwidth or -bd pixelList
		     Borderwidth  of  the cell, of the same format for the table,
 but may also be empty to inherit the	default  table
		     borderwidth value (the default).

	      -padx pixels
		     As defined in the Tk options man page.

	      -pady pixels
		     As defined in the Tk options man page.

	      -relief relief
		     The  relief to use for the cell in which the window lies.
		     If not specified, it uses the table's default relief.

	      -sticky sticky
		     Stickiness of the window inside the cell, as  defined  by
		     the grid command.

	      -window pathName
		     Specifies the name of a window to display in the  annotation.
  It must exist before being specified here.


THE SELECTION    [Toc]    [Back]

       Table selections are available as type STRING.  By default,  the  value
       of the selection will be the values of the selected cells in nested Tcl
       list form where each row is a list and each column is an element  of  a
       row  list.  You can change the way this value is interpreted by setting
       the -rowseparator and  -colseparator  options.	For  example,  default
       Excel format would be to set -rowseparator to "\n" and -colseparator to
       "\t".  Changing these values affects both how the table sends  out  the
       selection  and  reads  in  pasted  data, ensuring that the table should
       always be able to cut and paste to itself.  It is  possible  to	change
       how   pastes  are  handled  by  editing	the  table  library  procedure
       tk_tablePasteHandler.  This might be necessary if -selectioncommand  is
       set.


ROW/COL SPANNING
       Individual  cells  can span multiple rows and/or columns.  This is done
       via the spans command (see below for exact arguments).	Cells  in  the
       title  area  that span are not permitted to span beyond the title area,
       and will be constrained accordingly.  If the title area shrinks	during
       a  configure,  sanity checking will occur to ensure the above.  You may
       set spans on regular cells that extend beyond the defined row/col area.
       These  spans  will not be constrained, so that when the defined row/col
       area expands, the span will expand with it.

       When setting a span, checks are made as to whether the span would overlap
  an	already  spanning or hidden cell.  This is an error and it not
       allowed.  Spans can affect the overall speed of table drawing, although
       not significantly.  If spans are not used, then there is no performance
       loss.

       Cells hidden by spanning cells still have valid	data.	This  will  be
       seen  during  cut  and  paste  operations that involve hidden cells, or
       through direct access by a command like get or set.

       The drawing properties of spanning cells apply to only the visual  area
       of  the	cell.	For example, if a cell is center justified over 5 columns,
 then when viewing any portion of those columns,  it  will	appear
       centered  in  the visible area. The non-visible column area will not be
       considered in the centering calculations.

COMMAND SUBSTITUTION    [Toc]    [Back]

       The various option based commands that the table supports  all  support
       the  familiar Tk %-substitution model (see bind for more details).  The
       following %-sequences are recognized and substituted by the table  widget:


       %c   For  SelectionCommand,  it is the maximum number of columns in any
	    row in the selection.  Otherwise it is the column of the triggered
	    cell.

       %C   A convenience substitution for %r,%c.

       %i   For  SelectionCommand,  it	is  the  total	number of cells in the
	    selection.	For Command, it is 0 for a read  (get)	and  1	for  a
	    write  (set).   Otherwise it is the current cursor position in the
	    cell.

       %r   For SelectionCommand, it is the number of rows in  the  selection.
	    Otherwise it is the row of the triggered cell.

       %s   For  ValidateCommand,  it  is  the current value of the cell being
	    validated.	For SelectionCommand, it is the default value  of  the
	    selection.	 For BrowseCommand, it is the index of the last active
	    cell.  For Command, it is empty for reads (get)  and  the  current
	    value of the cell for writes (set).

       %S   For  ValidateCommand,  it  is  the potential new value of the cell
	    being validated.  For BrowseCommand, it is the index  of  the  new
	    active cell.

       %W   The pathname to the window for which the command was generated.


WIDGET COMMAND    [Toc]    [Back]

       The  table  command  creates  a new Tcl command whose name is pathName.
       This command may be used to invoke various operations  on  the  widget.
       It has the following general form:
	      pathName option ?arg arg ...?
       Option and the args determine the exact behavior of the command.

       The following commands are possible for table widgets:

       pathName activate index
	      Sets the active cell to the one indicated by index.

       pathName bbox first ?last?
	      It  returns the bounding box for the specified cell (range) as a
	      4-tuple of x, y, width and height in pixels.  It clips  the  box
	      to  the  visible	portion,  if any, otherwise an empty string is
	      returned.

       pathName border option args
	      This command is a voodoo hack to	implement  border  sizing  for
	      tables.  This is normally called through bindings, with the following
 as valid options:

	      pathName border mark x y ?row|col?
		     Records x and y and the row and/or  column  border  under
		     that  point in the table window, if any; used in conjunction
 with later border dragto commands.   Typically  this
		     command  is  associated  with a mouse button press in the
		     widget.  If row or col is not  specified,	it  returns  a
		     tuple of both border indices (an empty item means no border).
  Otherwise, just the specified item is returned.

	      pathName border dragto x y
		     This command computes the difference between its x and  y
		     arguments	and  the  x and y arguments to the last border
		     mark command for the widget.  It then adjusts the	previously
  marked  border by the difference.  This command is
		     typically associated with mouse motion events in the widget,
  to  produce the effect of interactive border resizing.


       pathName cget option
	      Returns the current value of the configuration option  given  by
	      option.  Option may have any of the values accepted by the table
	      command.

       pathName clear option ?first? ?last?
	      This command is a convenience routine  to  clear	certain  state
	      information  managed  by	the  table.   first and last represent
	      valid table indices.  If neither are specified, then the command
	      operates	on  the whole table.  The following options are recognized:


	      pathName clear cache ?first? ?last?
		     Clears the specified section of the cache, if  the  table
		     has been keeping one.

	      pathName clear sizes ?first? ?last?
		     Clears  the  specified  row  and column areas of specific
		     height/width dimensions.  When just one index  is	specified,
  for  example 2,0, that is interpreted as row 2 and
		     column 0.

	      pathName clear tags ?first? ?last?
		     Clears the specified area of tags (all  row,  column  and
		     cell tags).

	      pathName clear all ?first? ?last?
		     Performs  all  of the above clear functions on the specified
 area.

       pathName configure ?option? ?value option value ...?
	      Query or modify the configuration options of the widget.	If  no
	      option is specified, returns a list describing all of the available
 options for pathName (see Tk_ConfigureInfo for  information
	      on  the  format  of  this list).	If option is specified with no
	      value, then the command returns a list describing the one  named
	      option (this list will be identical to the corresponding sublist
	      of the value returned if no option is  specified).   If  one  or
	      more option-value pairs are specified, then the command modifies
	      the given widget option(s) to have the given value(s);  in  this
	      case  the  command returns an empty string.  Option may have any
	      of the values accepted by the table command.

       pathName curselection ?value?
	      With no arguments, it returns the sorted	indices  of  the  currently
 selected cells.  Otherwise it sets all the selected cells
	      to the given value.  The set has no effect if there is no  associated
 Tcl array or the state is disabled.

       pathName curvalue ?value?
	      If  no  value  is  given,  the  value  of  the cell being edited
	      (indexed by active) is returned, else it is  set	to  the  given
	      value.

       pathName delete option arg ?arg?
	      This  command  is  used to delete various things in a table.  It
	      has several forms, depending on the option:

	      pathName delete active index ?index?
		     Deletes text from the active cell.  If only one index  is
		     given,  it deletes the character after that index, otherwise
 it deletes from  the	first  index  to  the  second.
		     index can be a number, insert or end.

	      pathName delete cols ?switches? index ?count?
		     Deletes count cols starting at (and including) col index.
		     The index will  be  constrained  to  the  limits  of  the
		     tables.   If  count  is  negative, it deletes cols to the
		     left.  Otherwise it deletes cols  to  the	right.	 count
		     defaults  to  1  (meaning just the column specified).  At
		     the moment, spans are  not  adjusted  with  this  action.
		     Optional switches are:

		     -holddimensions
			    Causes  the  table	cols  to  be unaffected by the
			    deletion (empty cols may appear).  By default  the
			    dimensions are adjusted by count.

		     -holdselection
			    Causes the selection to be maintained on the absolute
 cells values.	Otherwise, the selection  will
			    be cleared..

		     -holdtags
			    Causes the tags specified by the tag method to not
			    move along with the data.  Also prevents  specific
			    widths   set   by  the  width  method  from  being
			    adjusted.  By default,  these  tags  are  properly
			    adjusted.

		     -holdwindows
			    Causes  the embedded windows created with the win-
			    dow method to not move along with  the  data.   By
			    default, these windows are properly adjusted.

		     -keeptitles
			    Prevents  title  area  cells  from	being changed.
			    Otherwise they are treated just like regular cells
			    and will move as specified.

		     --     Signifies the end of the switches.

	      pathName delete rows ?switches? index ?count?
		     Deletes count rows starting at (and including) row index.
		     If count is negative, it deletes rows going  up.	Otherwise
  it  deletes rows going down.  The selection will be
		     cleared.  The switches are the same as those  for	column
		     deletion.

       pathName get first ?last?
	      Returns  the  value  of the cells specified by the table indices
	      first and (optionally) last in a list.

       pathName height ?row? ?value row value ...?
	      If no row is specified, returns a list describing all  rows  for
	      which a height has been set.  If row is specified with no value,
	      it prints out the height of that	row  in  characters  (positive
	      number)  or  pixels (negative number).  If one or more row-value
	      pairs are specified, then it sets each row to be that height  in
	      lines  (positive	number) or pixels (negative number).  If value
	      is default, then the row uses the default height,  specified  by
	      -rowheight.

       pathName hidden ?index? ?index ...?
	      When called without args, it returns all the hidden cells (those
	      cells covered by a spanning cell).  If one index	is  specified,
	      it  returns  the	spanning cell covering that index, if any.  If
	      multiple indices are specified, it returns 1 if all indices  are
	      hidden cells, 0 otherwise.

       pathName icursor ?arg?
	      With no arguments, prints out the location of the insertion cursor
 in the active cell.  With one argument, sets the  cursor  to
	      that  point in the string.  0 is before the first character, you
	      can also use insert or end for the current  insertion  point  or
	      the end of the text.  If there is no active cell, or the cell or
	      table is disabled, this will return -1.

       pathName index index ?row|col?
	      Returns the integer cell coordinate that corresponds to index in
	      the form row,col.  If row or col is specified, then only the row
	      or column index is returned.

       pathName insert option arg arg
	      This command is used to into various things into	a  table.   It
	      has several forms, depending on the option:

	      pathName insert active index value
		     The value is a text string which is inserted at the index
		     postion of the active cell.  The  cursor  is  then  positioned
  after the new text. index can be a number, insert
		     or end.

	      pathName insert cols ?switches? index ?count?
		     Inserts count cols starting at col index.	 If  count  is
		     negative, it inserts before the specified col.  Otherwise
		     it inserts after the specified col.  The  selection  will
		     be  cleared.  The switches are the same as those for column
 deletion.

	      pathName insert rows ?switches? index ?count?
		     Inserts count rows starting at row index.	 If  count  is
		     negative, it inserts before the specified row.  Otherwise
		     it inserts after the specified row.  The  selection  will
		     be  cleared.  The switches are the same as those for column
 deletion.

       pathName reread
	      Rereads the old contents of  the	cell  back  into  the  editing
	      buffer.	Useful	for  a key binding when <Escape> is pressed to
	      abort the edit (a default binding).

       pathName scan option args
	      This command is used to implement scanning on  tables.   It  has
	      two forms, depending on option:

	      pathName scan mark x y
		     Records x and y and the current view in the table window;
		     used in conjunction  with	later  scan  dragto  commands.
		     Typically	this command is associated with a mouse button
		     press in the widget.  It returns an empty string.

	      pathName scan dragto x y.
		     This command computes the difference between its x and  y
		     arguments and the x and y arguments to the last scan mark
		     command for the widget.  It then adjusts the  view  by  5
		     times  the  difference  in  coordinates.  This command is
		     typically associated with mouse motion events in the widget,
  to  produce the effect of dragging the list at high
		     speed through the window.	The return value is  an  empty
		     string.

       pathName see index
	      Adjust  the view in the table so that the cell given by index is
	      positioned as the cell one off from top  left  (excluding  title
	      rows  and  columns)  if the cell is not currently visible on the
	      screen.  The actual cell may be different  to  keep  the	screen
	      full.

       pathName selection option arg
	      This command is used to adjust the selection within a table.  It
	      has several forms, depending on option:

	      pathName selection anchor index
		     Sets the selection anchor to the  cell  given  by	index.
		     The  selection anchor is the end of the selection that is
		     fixed while dragging out a selection with the mouse.  The
		     index anchor may be used to refer to the anchor cell.

	      pathName selection clear first ?last?
		     If  any  of  the cells between first and last (inclusive)
		     are selected, they are deselected.  The  selection  state
		     is  not  changed for cells outside this range.  first may
		     be specified as all to  remove  the  selection  from  all
		     cells.

	      pathName selection includes index
		     Returns  1  if  the  cell indicated by index is currently
		     selected, 0 if it isn't.

	      pathName selection set first ?last?
		     Selects all of the cells in the range between  first  and
		     last, inclusive, without affecting the selection state of
		     cells outside that range.

       pathName set ?row|col? index ?value? ?index value ...?
	      Sets the specified index to the associated value.  Table validation
  will not be triggered via this method.  If row or col precedes
 the list of index/value pairs, then the value  is  assumed
	      to  be  a  Tcl  list whose values will be split and set into the
	      subsequent columns (if row is specified) or rows (for col).  For
	      example, set row 2,3 {2,3 2,4 2,5} will set 3 cells, from 2,3 to
	      2,5.  The setting of cells is silently bounded by the known  table
 dimensions.

       pathName spans ?index? ?rows,cols index rows,cols ...?
	      This  command  is used to manipulate row/col spans.  When called
	      with no arguments, all known spans are returned  as  a  list  of
	      tuples  of  the  form  {index  span}.  When called with only the
	      index, the span for that index only is returned, if any.	Otherwise
  an	even  number  of index rows,cols pairs are used to set
	      spans.  A span starts at the index and continues for the	specified
 number of rows and cols.  Negative spans are not supported.
	      A span of 0,0 unsets any span on that cell.   See  EXAMPLES  for
	      more info.

       pathName tag option ?arg arg ...?
	      This  command is used to manipulate tags.  The exact behavior of
	      the command depends on the option argument that follows the  tag
	      argument.   cget,  cell,	and row|col complain about unknown tag
	      names.  The following forms of the command  are  currently  supported:


	      pathName tag cell tagName ?index ...?
		     With  no arguments, prints out the list of cells that use
		     the tag.  Otherwise it sets the specified	cells  to  use
		     the  named  tag, replacing any tag that may have been set
		     using this method before.	If tagName is  {},  the  cells
		     are  reset  to the default tag.  Tags added during -*tagcommand
 evaluation do not register here.  If tagName does
		     not exist, it will be created with the default options.

	      pathName tag cget tagName option
		     This  command  returns  the  current  value of the option
		     named option associated with the tag  given  by  tagName.
		     Option  may  have	any  of the values accepted by the tag
		     configure widget command.

	      pathName tag col tagName ?col ...?
		     With no arguments, prints out the list of cols  that  use
		     the  tag.	Otherwise it sets the specified columns to use
		     the named tag, replacing any tag that may have  been  set
		     using this method before.	If tagName is {}, the cols are
		     reset to the default tag.	Tags added during  -coltagcommand
  evaluation  do  not register here.  If tagName does
		     not exist, it will be created with the default options.

	      pathName tag configure tagName ?option?  ?value?	?option  value
	      ...?
		     This command is similar to the configure  widget  command
		     except  that  it modifies options associated with the tag
		     given by tagName instead of  modifying  options  for  the
		     overall  table  widget.   If  no option is specified, the
		     command returns a list describing all  of	the  available
		     options for tagName (see Tk_ConfigureInfo for information
		     on the format of this list).  If option is specified with
		     no  value, then the command returns a list describing the
		     one named option (this list will be identical to the corresponding
  sublist of the value returned if no option is
		     specified).  If one or more option-value pairs are specified,
  then  the  command modifies the given option(s) to
		     have the given value(s) in tagName; in this case the command
 returns an empty string.  See TAGS above for details
		     on the options available for tags.

	      pathName tag delete tagName
		     Deletes a tag.  No error if the tag does not exist.

	      pathName tag exists tagName
		     Returns 1 if the named tag exists, 0 otherwise.

	      pathName tag includes tagName index
		     Returns 1 if the specified index has  the	named  tag,  0
		     otherwise.

	      pathName tag lower tagName ?belowThis?
		     Lower the priority of the named tag.  If belowThis is not
		     specified, then the tag's priority is lowered to the bottom,
 otherwise it is lowered to one below belowThis.

	      pathName tag names ?pattern?
		     If  no  pattern  is  specified,  shows  the  names of all
		     defined tags.  Otherwise the pattern is used  as  a  glob
		     pattern  to  show	only  tags matching that pattern.  Tag
		     names are returned in priority  order  (highest  priority
		     tag first).

	      pathName tag raise tagName ?aboveThis?
		     Raise the priority of the named tag.  If aboveThis is not
		     specified, then the tag's priority is raised to the  top,
		     otherwise it is raised to one above aboveThis.

	      pathName tag row tagName ?row ...?
		     With  no  arguments, prints out the list of rows that use
		     the tag.  Otherwise it sets the specified columns to  use
		     the  named  tag, replacing any tag that may have been set
		     using this method before.	If tagName is {}, the rows are
		     reset to use the default tag.  Tags added during -rowtagcommand
 evaluation do not register here.  If tagName does
		     not exist, it will be created with the default options.

       pathName validate index
	      Explicitly  validates  the  specified index based on the current
	      -validatecommand and returns 0 or 1 based on  whether  the  cell
	      was validated.

       pathName width ?col? ?value col value ...?
	      If  no  col is specified, returns a list describing all cols for
	      which a width has been set.  If col is specified with no	value,
	      it prints out the width of that col in characters (positive number)
 or pixels (negative number).   If  one  or  more  col-value
	      pairs  are  specified, then it sets each col to be that width in
	      characters (positive number) or pixels  (negative  number).   If
	      value is default, then the col uses the default width, specified
	      by -colwidth.

       pathName window option ?arg arg ...?
	      This command is used to manipulate embedded windows.  The  exact
	      behavior of the command depends on the option argument that follows
 the window argument.  The following forms  of  the  command
	      are currently supported:

	      pathName window cget index option
		     This  command  returns  the  current  value of the option
		     named option associated with the window given  by	index.
		     Option  may have any of the values accepted by the window
		     configure widget command.

	      pathName window configure index ?option? ?value?	?option  value
	      ...?
		     This command is similar to the configure  widget  command
		     except  that  it  modifies  options  associated  with the
		     embedded window  given  by  index	instead  of  modifying
		     options  for  the	overall table widget.  If no option is
		     specified, the command returns a list describing  all  of
		     the available options for index (see Tk_ConfigureInfo for
		     information on the format of this list).	If  option  is
		     specified	with no value, then the command returns a list
		     describing the one named option (this list will be  identical
  to the corresponding sublist of the value returned
		     if no option is specified).  If one or more  option-value
		     pairs  are specified, then the command modifies the given
		     option(s) to have the given value(s) in  index;  in  this
		     case  the	command returns an empty string.  See EMBEDDED
		     WINDOWS above for details on the  options	available  for
		     windows.

	      pathName window delete index ?index ...?
		     Deletes  an  embedded window from the table.  The associated
 window will also be deleted.

	      pathName window move indexFrom indexTo
		     Moves an embedded window from one cell to another.  If  a
		     window  already  exists  in  the  target cell, it will be
		     deleted.

	      pathName window names ?pattern?
		     If no pattern is specified, shows the cells of all embedded
  windows.   Otherwise	the  pattern is used as a glob
		     pattern to show only cells matching that pattern.

       pathName xview args
	      This command is used to query and change the horizontal position
	      of  the  information in the widget's window.  It can take any of
	      the following forms:

	      pathName xview
		     Returns a list containing two elements.  Each element  is
		     a	real fraction between 0 and 1;	together they describe
		     the horizontal span that is visible in the  window.   For
		     example,  if  the first element is .2 and the second element
 is .6, 20% of the table's text is off-screen to  the
		     left, the middle 40% is visible in the window, and 40% of
		     the text is off-screen to the right.  These are the  same
		     values  passed  to  scrollbars  via  the  -xscrollcommand
		     option.

	      pathName xview index
		     Adjusts the view in the window so that the  column  given
		     by index is displayed at the left edge of the window.

	      pathName xview moveto fraction
		     Adjusts  the  view  in the window so that fraction of the
		     total width of the table text is off-screen to the  left.
		     fraction must be a fraction between 0 and 1.

	      pathName xview scroll number what
		     This  command shifts the view in the window left or right
		     according to number and what.  Number must be an integer.
		     What  must be either units or pages or an abbreviation of
		     one of these.  If what is units, the view adjusts left or
		     right by number character units (the width of the 0 character)
 on the display;  if it  is	pages  then  the  view
		     adjusts by number screenfuls.  If number is negative then
		     characters farther to the left become visible;  if it  is
		     positive then characters farther to the right become visible.


       pathName yview ?args?
	      This command is used to query and change the  vertical  position
	      of the text in the widget's window.  It can take any of the following
 forms:

	      pathName yview
		     Returns a list containing two elements, both of which are
		     real  fractions between 0 and 1.  The first element gives
		     the position of the table element at the top of the  window,
  relative  to  the table as a whole (0.5 means it is
		     halfway through the table, for example).  The second element
  gives  the position of the table element just after
		     the last one in the window, relative to the  table  as  a
		     whole.   These  are  the same values passed to scrollbars
		     via the -yscrollcommand option.

	      pathName yview index
		     Adjusts the view in the window so that the row  given  by
		     index is displayed at the top of the window.

	      pathName yview moveto fraction
		     Adjusts  the view in the window so that the element given
		     by fraction appears at the top of the  window.   Fraction
		     is  a  fraction  between  0 and 1;  0 indicates the first
		     element  in  the  table,  0.33  indicates	 the   element
		     one-third the way through the table, and so on.

	      pathName yview scroll number what
		     This  command  adjusts  the view in the window up or down
		     according to number and what.  Number must be an integer.
		     What  must  be  either units or pages.  If what is units,
		     the view adjusts up or down by number  lines;  if	it  is
		     pages  then  the  view  adjusts by number screenfuls.  If
		     number is negative then earlier elements become  visible;
		     if it is positive then later elements become visible.

DEFAULT BINDINGS    [Toc]<

 Similar pages
Name OS Title
route FreeBSD manually manipulate the routing tables
route OpenBSD manually manipulate the routing tables
route HP-UX manually manipulate the routing tables
route IRIX manually manipulate the routing tables
nisaddent HP-UX create NIS+ tables from corresponding /etc files or NIS maps
image IRIX Create and manipulate images
EvmItemRelease Tru64 Create and manipulate event items
frame IRIX Create and manipulate frame widgets
EvmItemListGet Tru64 Create and manipulate event items
EvmItemSetVa Tru64 Create and manipulate event items
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service