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

FreeBSD Manual Pages


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

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

	 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',
	   -bg => 'white',

       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:

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

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

	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 =>	{

	    row1, row2,	...	    Row	numbers	that will be expandable.
	    tag	=> 'detailDataTag'  Tag	name that will be applied to the detail	data.
	    $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.

       The following items are stored as member	data

	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.

	Hash ref of Row/Cols indexes where there are indicators	stores.	This
	is a quick lookup hash built from _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

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

       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



	# Shows	the detail data	for row	number $row

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



	# Hides	the detail data	for row	number $row

Tk1.26				  2021-02-2TableMatrix::SpreadsheetHideRows(3)

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

Want to link to this manual page? Use this URL:

home | help