Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
TableMatrix::SpreadsheetHideRperl/Tk DocumeTableMatrix::SpreadsheetHideRows(3)

NAME
       Tk::TableMatrix::SpreadsheetHideRows - Table Display with selectable
       hide/un-hide of rows

SYNOPSIS
	 use Tk;
	 use Tk::TableMatrix::SpreadsheetHideRows

	 my $t = $top->Scrolled('SpreadsheetHideRows',
				     -selectorCol => 3,
				     -expandData => $hashRef,
				     -rows => 21, -cols	=> 11,
				     -width => 6, -height => 6,
				     -titlerows	=> 1, -titlecols => 1,
				     -variable => $arrayVar,
				     -selectmode => 'extended',
				     -resizeborders => 'both',
				     -titlerows	=> 1,
				     -titlecols	=> 1,
				     -bg => 'white',
			   );

DESCRIPTION
       Tk::TableMatrix::SpreadsheetHideRows is a
       Tk::TableMatrix::Spreadsheet-derived widget that	implements a
       Spreadsheet-like	display	of tabular information,	where some of the rows
       in the table can	be expanded/hidden by clicking a '+/-' selector	in the
       row. This can be	used to	display	top-level information in a table,
       while allowing the user to expand certain table rows to view detail-
       level information.

       See demos/SpreadsheetHideRows in	the source distribution	for a simple
       example of this widget

Widget-specific	Options
       In addition the standard	Tk::TableMatrix	widget options.	The following
       options are implemented:

       -selectorCol
	Column number where the	+/- selector will appear. Clicking on the +/-
	selector will expand/hide the detail information in the	table for a
	particular row.

       -selectorColWidth
	Width of the column used to display the	+/- selector. Defaults to 2

       -expandData
	Hash ref defining the detail-level data	displayed when a row is
	expanded (by clicking the +/- selector). This hash ref should have the
	following structure:

	  $expandData =	{
		row1 =>	{  tag	=> 'detailDataTag',
			   data	=> $detailData,
			   spans=> $spanData,
			   expandData => $subLevelData
			},
		row2 =>	{
		   .
		   .
	  }

	  Where:
	    row1, row2,	...	    Row	numbers	that will be expandable.
	    tag	=> 'detailDataTag'  Tag	name that will be applied to the detail	data.
				    (optional)
	    $detailData		     2D	Array of detail-data to	be displayed when
				     the row is	expanded.
				     e.g. [ [ r1c1, r1c2, r1c3 ],
					    [ r2c1, r2c2, r2,c3] ]
	    $spans		     1D	array of span information (optional) to	be
				     used for display of the detail information.
				     e.g.  [ col2 =>  "rows,cols", col4	=>  "rows,cols", ... ]

	    $subLevelData	     Optional Recursive	expandData used	to hold	detail-data of detail-data.

MEMBER DATA
       The following items are stored as member	data

       defaultCursor
	Name of	the mouse cursor pointer that is used for normal (i.e. non-
	title, non-indicator) cells in the widget.  This is set	to the value
	of the $widget->cget(-cursor) option when the widget is	created.

       indRowCols
	Hash ref of Row/Cols indexes where there are indicators	stores.	This
	is a quick lookup hash built from _expandData.

       _expandData
	Internal version of the	expandData hash. Any sub-detail	data (i.e.
	expand data that is at lower levels of expandData) that	is visible is
	placed at the top level	of this	hash, for keeping track	of the visible
	expandData.

Widget Methods
       In addition the standard	Tk::TableMatrix	widget method. The following
       methods are implemented:

   showDetail
       Shows (i.e. expands the table) the detail data for a given row. This
       method is called	when a user clicks on an indicator that	is not already
       expanded.

       Usage:

	$widget->showDetail($row);

	# Shows	the detail data	for row	number $row

   hideDetail
       Hides the detail	data for a given row. This method is called when a
       user clicks on an indicator that	is already expanded.

       Usage:

	$widget->hideDetail($row);

	# Hides	the detail data	for row	number $row

Tk1.23				  2007-01-0TableMatrix::SpreadsheetHideRows(3)

NAME | SYNOPSIS | DESCRIPTION | Widget-specific Options | MEMBER DATA | Widget Methods

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Tk::TableMatrix::SpreadsheetHideRows&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help