TreeGrid
layout
TreeGrid
v3.1
TreeGrid table is divided vertically and horizontally to sections. These
sections differ by way of scrolling and visibility.
On vertical direction the table is divided to six sections: header, head
rows, variable rows, foot rows, scrollbar and toolbar.
Header shows column
titles. Header is always visible (can be scrolled horizontally only). Header
enables column resizing and moving by mouse to user. Header always has only one
row, but this row can have variable height.
In XML data it is represented by <Header ... />
Head rows are fixed rows on
top, under header. Fixed rows are always visible (can be scrolled horizontally
only). Fixed rows cannot have child rows. Fixed rows can have variable height.
Cell values from fixed rows can be used in formulas in all rows (by Get
functions). Fixed rows are not paged. Fixed rows cannot be added or deleted or
hidden by filter. Fixed rows are not sorted and cannot be dragged or moved.
Values of fixed rows are not calculated in aggregate functions. Aggregate
functions in fixed rows iterate all root body rows.
Head rows are usually filter rows or rows with some global settings or
user rows with some special settings.
Head rows are optional.
In XML data it is represented by <Head><I .../><I .../> ... </Head>
Body rows are variable rows
between head and foot rows. These rows are on pages. If grid has set Paging=0, there
is always one page containing all variable rows. Body rows can be hidden by
paging, by vertical scroll, by collapsing parent or by filter. Body rows also
can be scrolled horizontally. Body rows can contain child rows with child rows
and so on. Level of tree is unlimited. Cells from body rows cannot be accessed
from another row’s formula by id. Only parent row can be accessed and children
rows in aggregate functions. Body rows can added or
deleted. Fixed rows can be moved by dragging or by sorting. Sorting sorts
always children inside parent. Aggregate functions in body rows iterate all
immediate children.
Body rows are usually data rows.
Pre-defined values of body rows are usually stored in defaults (see
<Def> main tag), especially if they are calculated.
The height of body is table height minus height of all other visible
horizontal sections. The table must be high enough to display body. If it is
not, TreeGrid is not displayed and error message is showed.
Body must contain at least one
page. Every page must contain at least one row, except the body contains only
one page with no rows.
In XML data it is represented by <Body><B ... ><I ...><I
...>...</I>....</I>...
</B><B>....</B>...</Body>
Foot rows are fixed rows at
bottom. They have the same characteristics as Head rows.
Foot rows are usually aggregate rows with sums or other results of all
data rows.
Foot rows are optional.
In XML data it is represented by <Foot><I .../><I .../> ... </Foot>
Horizontal
scrollbar at bottom is visible only if width of variable columns is wider then
width of grid minus width of fixed sections. By horizontal scrollbar the user
scrolls all rows and header.
No XML data representation.
Toolbar is always at
bottom and cannot be scrolled or moved. It contains buttons to control the
grid. Toolbar can be hidden by data or can be displayed outside the grid,
anywhere on the page.
By default is toolbar visible,
inside the table and with all possible buttons.
In XML data it is represented by <Toolbar ... />
On horizontal direction the table is divided to six sections: panel,
left columns, variable columns, right columns, scrollbar, pager.
Left panel contains buttons
to delete or select row. If some function is disabled, the button is hidden.
Left panel can also be hidden by user from configuration menu. Left panel is
always visible by horizontal scroll and can be scrolled vertically only. Left
panel cannot be dragged to another position.
By default is left panel visible with both possible buttons.
In XML data it is represented by <Panel ... />
Left columns are fixed columns
on the left. Fixed columns are always visible (can be scrolled vertically
only). Columns can be dragged only inside its section.
Left columns usually contain row identifications (index, id, name, ...).
Left columns are optional.
In XML data it is represented by <LeftCols><C .../><C
.../> ... </LeftCols>
Variable columns are between left
and right columns. Variable columns can be hidden by horizontal scroll. They
can be scrolled vertically too. Columns can be dragged only inside its section.
The width of variable columns section is table width minus width of all
other visible vertical sections. The table must be wide enough to display
variable columns. If it is not, TreeGrid is not displayed and error message is
showed. The use cannot resize fixed columns too much to completely hide
variable columns.
Variable columns usually contain row data.
Every table must contain at
least one variable column.
In XML data it is represented by <Cols><C .../><C .../> ... </Cols>
Right columns are fixed columns
on the right. They have the same characteristics as Left columns.
Right columns usually contain main results of the row.
Right columns are optional.
In XML data it is represented by <RightCols><C .../><C
.../> ... </RightCols>
Vertical scrollbar on the right is
visible only if height of variable rows is higher then height of grid minus
height of fixed sections. By vertical scrollbar the user scrolls all columns
and left panel.
No XML data representation.
Pager is on the right
and shows all page names. Page names are usually generated by values in columns
the grid is sorted by. Pager is visible only if paging is used. Pager can be
hidden by user from configuration menu. Pager can be resized, but cannot be
moved. Pager can show its own scrollbars if content is too large to show all.
In XML data it is represented by <Pager ... />
Configuration menu is displayed when
user clicks on ‘?’ button on toolbar. The menu is displayed in center of
TreeGrid main tag. In the menu user can change treegrid
settings.
By default menu contains are
possible items.
In XML data it is represented by <MenuCfg ... />
In XML data there are some
sections not related to any layout section:
<IO ... /> Section with
request to server and with server response
<Cfg
.../> Section with all TreeGrid configuration. Remember part of
configuration is read from cookies and cookies setting has
precedence to Cfg settings, unless SupressCfg or ...Lap atribute is
used.
<Def><D
.../><D.../>...</Def> Section with default settings for all rows
and columns. Rows point to their default by Def attribute. Columns always use
Def named “C”.
<Lang>...</Lang>
Language settings and texts. By default is in Text.xml. In data you can
override some message. For translation is better to have more files TreeGridText.xml and choose on server appropriate version
according to browser or other settings.