Difference: TablePlugin (25 vs. 26)

Revision 2607 Oct 2007 - Main.TWikiContributor

Line: 1 to 1
Deleted:
<
<
 

Table Plugin

Gives extra control of table display:

Line: 55 to 54
 
    • Set SORT = all

  • Default table attributes:
Changed:
<
<
    • Set TABLEATTRIBUTES = tableborder="1" cellpadding="0" cellspacing="0" valign="top" headeralign="center" headercolor="#ffffff" headerbg="#6b7f93" headerbgsorted="#334455" headercolor="#ffffff" databg="#ffffff,#edf4f9" databgsorted="#f5f5f5,#dce7ee"
    • Classic skin table attributes:
      • #Set TABLEATTRIBUTES = tableborder="1" cellpadding="0" cellspacing="1" headerbg="#99cccc" databg="#ffffff,#ffffcc"
>
>
    • Set TABLEATTRIBUTES = tableborder="1" cellpadding="0" cellspacing="0" valign="top" headercolor="#ffffff" headerbg="#687684" headerbgsorted="#334455" databg="#ffffff,#edf4f9" databgsorted="#f1f7fc,#ddebf6" tablerules="rows"
 

Table Attributes

Attributes are defined as a TABLEATTRIBUTES Plugin setting in this topic, a TABLEATTRIBUTES preferences setting, or on line before the table using %TABLE{...}%:

Changed:
<
<
Argument Comment Default value Example
sort Set table sorting "on" or "off". unspecified sort="on"
initsort Column to sort initially ("1" to number of columns). unspecified initsort="2"
initdirection Initial sorting direction for initsort, set to "up" (descending) or "down" (ascending). unspecified initdirection="up"
headerbg Header cell background colour. "#6b7f93" headerbg="#999999"
headerbgsorted Header cell background colour of a sorted column. the value of headerbg headerbgsorted="#32596c"
headercolor Header cell text colour. "#ffffff" headercolor="#0000cc"
databg Data cell background colour, a comma separated list. Specify "none" for no colour, that is to use the colour/background of the page the table is on. "#edf4f9,#ffffff" databg="#f2f2f2,#ffffff"
databgsorted Data cell background colour of a sorted column; see databg. the values of databg databgsorted="#d4e8e4,#e5f5ea"
datacolor Data cell text colour, a comma separated list. unspecified datacolor="#0000CC, #000000"
tableborder Table border width (pixels). "1" tableborder="2"
tableframe Table frame, set to "void" (no sides), "above" (the top side only), "below" (the bottom side only), "hsides" (the top and bottom sides only), "lhs" (the left-hand side only), "rhs" (the right-hand side only), "vsides" (the right and left sides only), "box" (all four sides), "border" (all four sides). unspecified tableframe="hsides"
tablerules Table rules, set to "none" (no rules), "groups" (rules will appear between row groups and column groups only), "rows" (rules will appear between rows only), "cols" (rules will appear between columns only), "all" (rules will appear between all rows and columns). unspecified tablerules="rows"
cellpadding Cell padding (pixels). "0" cellpadding="0"
cellspacing Cell spacing (pixels). "0" cellspacing="3"
cellborder Cell border width (pixels). unspecified cellborder="0"
valign Vertical alignment of cells and headers, set to "top", "middle", "bottom" or "baseline". unspecified valign="top"
headervalign Vertical alignment of header cells; overrides valign. unspecified headervalign="top"
datavalign Vertical alignment of data cells; overrides valign. unspecified datavalign="top"
headeralign Header cell alignment, one value for all columns, or a comma separated list for different alignment of individual columns. Set to "left", "center", "right" or "justify". Overrides individual cell settings. unspecified headeralign="left,right"
dataalign Data cell alignment, one value for all columns, or a comma separated list for different alignment of individual columns. Set to "left", "center", "right" or "justify". Overrides individual cell settings. unspecified dataalign="center"
tablewidth Table width: Percentage of window width, or absolute pixel value. unspecified tablewidth="100%"
columnwidths Column widths: Comma delimited list of column widths, percentage or absolute pixel value. unspecified columnwidths="80%,20%"
headerrows Number of header rows to exclude from sort. "1" headerrows="1"
footerrows Number of footer rows to exclude from sort. "0" footerrows="1"
id Table identifier string. unspecified id="userTable"
summary Table summary used by screenreaders: A summary of what the table presents. It should provide an orientation for someone who listens to the table. unspecified summary="List of subscribed users"
caption Table caption: A title that will be displayed just above the table. unspecified caption="Users"
>
>
  • Supported attributes:
    Argument Comment Default value Example
    sort Set table sorting by clicking headers "on" or "off". unspecified sort="on"
    initsort Column to sort initially ("1" to number of columns). unspecified initsort="2"
    initdirection Initial sorting direction for initsort, set to "up" (descending) or "down" (ascending). unspecified initdirection="up"
    disableallsort Disable all sorting, both initsort and header sort. This is mainly used by plugins such as the EditTablePlugin to disable sorting in a table while editing the table. unspecified disableallsort="on"
    headerbg Header cell background colour. "#6b7f93" headerbg="#999999"
    headerbgsorted Header cell background colour of a sorted column. the value of headerbg headerbgsorted="#32596c"
    headercolor Header cell text colour. "#ffffff" headercolor="#0000cc"
    databg Data cell background colour, a comma separated list. Specify "none" for no colour, that is to use the colour/background of the page the table is on. "#edf4f9,#ffffff" databg="#f2f2f2,#ffffff"
    databgsorted Data cell background colour of a sorted column; see databg. the values of databg databgsorted="#d4e8e4,#e5f5ea"
    datacolor Data cell text colour, a comma separated list. unspecified datacolor="#0000CC, #000000"
    tableborder Table border width (pixels). "1" tableborder="2"
    tableframe Table frame, set to "void" (no sides), "above" (the top side only), "below" (the bottom side only), "hsides" (the top and bottom sides only), "lhs" (the left-hand side only), "rhs" (the right-hand side only), "vsides" (the right and left sides only), "box" (all four sides), "border" (all four sides). unspecified tableframe="hsides"
    tablerules Table rules, set to "none" (no rules), "groups" (rules will appear between row groups and column groups only), "rows" (rules will appear between rows only), "cols" (rules will appear between columns only), "all" (rules will appear between all rows and columns). unspecified tablerules="rows"
    cellpadding Cell padding (pixels). "0" cellpadding="0"
    cellspacing Cell spacing (pixels). "0" cellspacing="3"
    cellborder Cell border width (pixels). unspecified cellborder="0"
    valign Vertical alignment of cells and headers, set to "top", "middle", "bottom" or "baseline". unspecified valign="top"
    headervalign Vertical alignment of header cells; overrides valign. unspecified headervalign="top"
    datavalign Vertical alignment of data cells; overrides valign. unspecified datavalign="top"
    headeralign Header cell alignment, one value for all columns, or a comma separated list for different alignment of individual columns. Set to "left", "center", "right" or "justify". Overrides individual cell settings. unspecified headeralign="left,right"
    dataalign Data cell alignment, one value for all columns, or a comma separated list for different alignment of individual columns. Set to "left", "center", "right" or "justify". Overrides individual cell settings. unspecified dataalign="center"
    tablewidth Table width: Percentage of window width, or absolute pixel value. unspecified tablewidth="100%"
    columnwidths Column widths: Comma delimited list of column widths, percentage or absolute pixel value. unspecified columnwidths="80%,20%"
    headerrows Number of header rows to exclude from sort. (will be rendered in a HTML thead section) "1" headerrows="1"
    footerrows Number of footer rows to exclude from sort. (will be rendered in a HTML tfoot section) "0" footerrows="1"
    id Unique table identifier string, used for targeting a table with CSS. tableN (where N is the table order number on the page) id="userTable"
    summary Table summary used by screenreaders: A summary of what the table presents. It should provide an orientation for someone who listens to the table. unspecified summary="List of subscribed users"
    caption Table caption: A title that will be displayed just above the table. unspecified caption="Users"
  The %TABLE{...}% settings override TABLEATTRIBUTES preferences settings, which override the TABLEATTRIBUTES Plugin settings.
Added:
>
>
The setting disableallsort is normally not used as a TABLE or TABLEATTRIBUTES setting. Plugins such as EditTablePlugin dynamically sets disableallsort to disable sorting while editing a table. For this to work it is important that EditTablePlugin runs before TablePlugin, which is the default. The setting sort can be overwritten by a URL parameter or hidden formfield of the same name. Plugins such as EditTablePlugin can use this to disable table header sorting while in edit mode.
 

Examples

Use of %TABLE{...}%

Line: 117 to 88
 
1-Jan-2003
2-Jan-2005
Added:
>
>

TablePlugin and CSS

Information for programmers.

TablePlugin implements the following precedence:

  • the TABLEATTRIBUTE settings only write html styling, no CSS
  • the TABLEATTRIBUTE settings can be overridden by a skin's CSS
  • the TABLE tag attributes are converted to CSS styling, written in the head; these override any skin's CSS

CSS written by TablePlugin

.twikiTable The table
.twikiSortedCol A sorted column
.twikiSortedAscendingCol Sorted column, ascending
.twikiSortedDescendingCol Sorted column, descending
.tableSortIcon The sort icon holder (span)
.twikiFirstCol The first column
.twikiTableEven Even numbered rows
.twikiTableOdd Odd numbered rows
.twikiTableCol + column number Unique column identifier, for instance: twikiTableCol0
.twikiTableRow + type + row number Unique row identifier, for instance: twikiTableRowdataBg0
 

Plugin Installation Instructions

This plugin is pre-installed with your TWiki release. You should not have to install it other than to do an upgrade.
Line: 124 to 117
 
  • Unzip TablePlugin.zip in your twiki installation directory. Content:
    File: Description:
    data/TWiki/TablePlugin.txt Plugin topic
Deleted:
<
<
data/TWiki/TablePlugin.txt,v Plugin topic repository
 
lib/TWiki/Plugins/TablePlugin.pm Plugin Perl module
Changed:
<
<
pub/TWiki/TablePlugin/diamond.gif Diamond symbol
pub/TWiki/TablePlugin/down.gif Down arrow
pub/TWiki/TablePlugin/up.gif Up arrow
>
>
lib/TWiki/Plugins/TablePlugin/Core.pm Plugin Perl module
 
  • (Dakar) Visit configure in your TWiki installation, and enable the plugin in the {Plugins} section.
  • Test if the plugin is correctly installed:
    • Check above example if the table renders as expected
Line: 137 to 127
 

Plugin Info

Plugin Author: TWiki:Main/JohnTalintyre, TWiki:Main/PeterThoeny
Changed:
<
<
Plugin Version: 1.020
>
>
Copyright: © 2001-2007, TWiki:Main/JohnTalintyre, Peter@Thoeny.org (TWIKI.NET), TWiki Contributors
License: GPL (GNU General Public License)
Plugin Version: 1.032 (22 Dec 2007)
 
Change History:
<-- specify latest version first -->
 
Added:
>
>
16 Dec 2007 1.030: Kenneth Lavrsen: Fixed the problem of tables being sorted by by TablePlugin while the table is being edited by plugins such as EditTablePlugin. This required adding a new attribute disableallsort so plugins such as EditTablePlugin can temporarily disable all sorting for a table. Additionally the CGI variable (URL parameter or hidden formfield) sort can be set to "off" which disables all header sorting in the topic. This is used by plugins such as EditTablePlugin to disable the sorting by clicking header fields during editing of tables. Ref: TWikibug:Item5135 and TWikibug:Item2690.
03 Dec 2007 Arthur Clemens: Fixed rendering and order of html elements thead, tfoot and tbody; corrected id parameter.
24 Nov 2007 Arthur Clemens: Fixed sorting of columns with only icons; also removed TWiki formatting before sorting.
06 Oct 2007 15180: PTh: Added VarTABLE to have it listed in TWikiVariables
27 Jun 2007 1.024 - 1.027 Various small bug fixes.
24 Jun 2007 1.023: Arthur Clemens: Inline styles are now written to the head; updated default sort icons (from TWikiDocGraphics).
23 Jun 2007 1.022: Arthur Clemens: Fixed styling of param tablerules on Internet Explorer.
23 May 2007 1.021: Michael Daum: Fixed css attribute priority to cooperate nicely with skin themes.
 
27 Dec 2006 1.020: Kenneth Lavrsen: Fixed initsort so all tables can be initsorted and not only the first. When you sort a table by clicking on the header of a column the table gets sorted accordingly. When you click the header of another table the previously sorted table goes back being sorted as specified by initsort.
13 Dec 2006 1.019: Arthur Clemens: Prevent sorting of columns that do no exist.
02 Dec 2006 1.018: Arthur Clemens: Data rows now start with first datacolor and databgcolor.
Line: 169 to 169
 
Perl Version: 5.0
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/TablePlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/TablePluginDev
Added:
>
>
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/TablePluginAppraisal
  Related Topics: TWikiPreferences, TWikiPlugins, StandardColors
Deleted:
<
<

META FILEATTACHMENT attr="" comment="Up arrow" date="1070351625" name="up.gif" path="C:\Data\MyTWiki\Plugins\TablePlugin\pub\TWiki\TablePlugin\up.gif" size="867" user="TWikiContributor" version="1.1"
META FILEATTACHMENT attr="" comment="Down arrow" date="1070351653" name="down.gif" path="C:\Data\MyTWiki\Plugins\TablePlugin\pub\TWiki\TablePlugin\down.gif" size="867" user="TWikiContributor" version="1.1"
META FILEATTACHMENT attr="" comment="Diamond symbol" date="1070351672" name="diamond.gif" path="C:\Data\MyTWiki\Plugins\TablePlugin\pub\TWiki\TablePlugin\diamond.gif" size="881" user="TWikiContributor" version="1.1"
 
This site is powered by the TWiki collaboration platformCopyright � by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.TablePlugin