new Pivot(client, oOptionsopt)
Every option of the exontrol.Tree.Options or Pivot.Options type has associated a property of the control. For instance, the option:
allowActions {string}, customizes the actions the user can perform once the user clicks or touches the controlis associated with the property:
AllowActions {string}, customizes the actions the user can perform once the user clicks or touches the controlwhich means that the following statements are equivalent:
oPivot.Options = {allowActions: "scroll"}where oPivot is an object of Pivot type
oPivot.SetOptions({allowActions: "scroll"})
oPivot.AllowActions = "scroll"
oPivot.SetAllowActions("scroll")
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
client |
any | The client parameter indicates the control's client area as:
|
|
oOptions |
object |
<optional> |
An object of exontrol.Tree.Options type that defines different options to display the control. Additionally, it supports all fields of Pivot.Options class. |
Requires:
- module:exontrol.commmon.min.js
- module:exontrol.tree.min.js
- module:exontrol.menu.min.js
Requires
- module:exontrol.commmon.min.js
- module:exontrol.tree.min.js
- module:exontrol.menu.min.js
Classes
Members
(static, readonly) ColumnsFloatBarVisibleEnum :number
Each ColumnsFloatBarVisibleEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "GroupBy,BarFloat" is equivalent to the numeric value 257, or to the combination of enumeration constants exColumnsFloatBarVisibleIncludeGroupByColumns | exColumnsFloatBarFloat.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exColumnsFloatBarHidden |
0 |
number | The columns floatbar is hidden |
exColumnsFloatBarVisible |
1 |
number | The columns floatbar is visible (inside and anchored to the right-side of the control) |
exColumnsFloatBarVisibleIncludeGroupByColumns |
1 |
number | The columns floatbar is visible, and it displays dragable (AllowDrag property) and groupable (AllowGroupBy property) columns of the control. |
exColumnsFloatBarVisibleIncludeCheckColumns |
2 |
number | The columns floatbar is visible, and it displays dragable (AllowDrag property), and a check-box for each Column to update its Visible property. |
exColumnsFloatBarVisibleIncludeHiddenColumns |
4 |
number | The columns floatbar is visible, and it displays dragable (AllowDrag property) and hidden (Visible property) columns of the control. |
exColumnsFloatBarFloat |
256 |
number | The columns floatbar is visible (shows as floated) |
(static, readonly) CustomView :CustomView
- Data property, {array} retrieves the data to be represented (the pivot-table) as a 2-dimensional array
- Columns property, {string} retrieves the names of the columns, represented as a comma-separated list
- Categories property, {number} retrieves the number of leading columns in Data that represent the categories
- Series property, {number} defines the number of trailing columns in Data that represent the series
- Stack property, {string} retrieves the name of the stack for each exported column (columns generated from the same pivot-column are grouped together in a stack), represented as a comma-separated list
- Items property, {number} retrieves the number of rows in Data
Type:
- Since:
- 4.4
(static, readonly) CustomViewVisibleEnum :number
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exHidden |
false |
number | The control's custom view is hidden, and the default view is visible. |
exVisible |
true |
number | The control's custom view is visible, and the default view is hidden. |
exHSplit |
2 |
number | Both the control's custom view and default view are visible, separated by a horizontal splitter. |
exVSplit |
3 |
number | Both the control's custom view and default view are visible, separated by a vertical splitter. |
- Since:
- 4.4
(static, readonly) FilterBarVisibleEnum :number
Each FilterBarVisibleEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "Prompt,Compact,Top" is equivalent to the numeric value 6145, or to the combination of enumeration constants exFilterBarPromptVisible | exFilterBarCompact | exFilterBarTop.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exFilterBarHidden |
0 |
number | No filter bar is shown while there is no filter applied. The control's filter bar is automatically displayed as soon a a filter is applied. |
exFilterBarPromptVisible |
1 |
number | The exFilterBarPromptVisible flag specifies that the control's filter bar displays the filter prompt. The exFilterBarPromptVisible, exFilterBarVisible, exFilterBarCaptionVisible flag , forces the control's filter-prompt, filter bar or filter bar description ( even empty ) to be shown. If missing, no filter prompt is displayed. The FilterBarPrompt property to specify the HTML caption being displayed in the filter bar when the filter pattern is missing. |
exFilterBarVisible |
2 |
number | The exFilterBarVisible flag forces the control's filter bar to be shown, no matter if any filter is applied. If missing, no filter bar is displayed while the control has no filter applied. |
exFilterBarCaptionVisible |
4 |
number | The exFilterBarCaptionVisible flag forces the control's filter bar to display the FilterBarCaption property. |
exFilterBarSingleLine |
16 |
number | The exFilterBarSingleLine flag specifies that the caption on the control's filter bar is displayed on a single line. The exFilterBarSingleLine flag , specifies that the filter bar's caption is shown on a single line, so HTML tag or \r\n are not handled. By default, the control's filter description applies word wrapping. Can be combined to exFilterBarCompact to display a single-line filter bar. If missing, the caption on the control's filter bar is displayed on multiple lines. You can change the height of the control's filter bar using the FilterBarHeight property. |
exFilterBarToggle |
256 |
number | The exFilterBarToggle flag specifies that the user can close the control's filter bar ( resets the control's filter ) by clicking the close button of the filter bar or by pressing the CTRL + F, while the control's filter bar is visible. If no filter bar is displayed, the user can display the control's filter bar by pressing the CTRL + F key. While the control's filter bar is visible the user can navigate though the list or control's filter bar using the ALT + Up/Down keys. The exFilterBarToggle flag must be combined with exFilterBarPromptVisible, exFilterBarVisible or exFilterBarCaptionVisible. |
exFilterBarShowCloseIfRequired |
512 |
number | The exFilterBarShowCloseIfRequired flag indicates that the close button of the control's filter bar is displayed only if the control has any currently filter applied. |
exFilterBarShowCloseOnRight |
1024 |
number | The exFilterBarShowCloseOnRight flag specifies that the close button of the control's filter bar should be displayed on the right side. |
exFilterBarCompact |
2048 |
number | The exFilterBarCompact flag compacts the control's filter bar, so the filter-prompt will be displayed to the left, while the control's filter bar caption will be displayed to the right. This flag has effect only if combined with the exFilterBarPromptVisible. This flag can be combined with the exFilterBarSingleLine flag, so all filter bar will be displayed compact and on a single line. |
exFilterBarShort |
4096 |
number | The exFilterBarShort flag specifies that the control's filter bar is displayed only on the default-view (has effect if the control displays multiple views) |
exFilterBarTop |
8192 |
number | The exFilterBarTop flag specifies that the control's filter bar is displayed at the top of the control. If missing, the control's filter bar is displayed at the bottom of the control. |
exFilterBarPromptOnEnter |
16384 |
number | The exFilterBarPromptOnEnter flag controls whether the filter prompt is applied when the user presses the Enter key. If this flag is set, the filter is applied only when Enter is pressed while the control's filter prompt has focus. If the flag is not set, the filter is applied after 500 ms of inactivity |
(static, readonly) FilterIncludeEnum :number
Each FilterIncludeEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "ItemsOnly,Parent" is equivalent to the numeric value 244, or to the combination of enumeration constants exMatchingItemsOnly | exMatchIncludeParent.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exItemsWithoutChilds |
0 |
number | Items (and parent-items) that match the filter are shown (no child-items are included) |
exItemsWithChilds |
1 |
number | Items (parent and child-items) that match the filter are shown |
exRootsWithoutChilds |
2 |
number | Only root-items (excludes child-items) that match the filter are displayed |
exRootsWithChilds |
3 |
number | Root-items (and child-items) that match the filter are displayed |
exMatchingItemsOnly |
4 |
number | Shows only the items that matches the filter (no parent or child-items are included) |
exMatchIncludeParent |
240 |
number | The exMatchIncludeParent flag specifies that the item matches the filter if any of its parent-item matches the filter. The exMatchIncludeParent flag can be combined with any other value. For instance, exMatchIncludeParent | exMatchingItemsOnly displays only the items that match the filter including the child-items as well |
(static, readonly) FilterListEnum :number
Each FilterListEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "Visible,Check,Asc" is equivalent to the numeric value 369, or to the combination of enumeration constants exVisibleItems | exShowCheckBox | exSortItemsAsc.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exAllItems |
0 |
number | The filter's list includes all items in the column. |
exVisibleItems |
1 |
number | The filter's list includes only visible (filtered) items from the column. The visible items include child items of collapsed items. |
exNoItems |
2 |
number | The filter's list includes no item from the column. |
exLeafItems |
3 |
number | The filter's list includes the leaf items only. A leaf item is an item with no child items. |
exRootItems |
4 |
number | The filter's list includes the root items only. A root item has no parent item. |
exSortItemsDesc |
16 |
number | Sorts descending the items of the filter's list. If none of the exSortItemsAsc or exSortItemsDesc is present, the list is built as the items are displayed in the control. |
exSortItemsAsc |
32 |
number | Sorts ascending the items of the filter's list. If none of the exSortItemsAsc or exSortItemsDesc is present, the list is built as the items are displayed in the control. |
exShowCheckBox |
256 |
number | Displays a check-box for each item within the filter's list. |
exShowExclude |
8192 |
number | Shows or hides the Exclude-checkbox. The exFilterExclude flag excludes programmatically the selected items in the drop down filter panel. |
exShowBlanks |
16384 |
number | The filter's list includes (Blanks) and (NonBlanks) items |
(static, readonly) FilterPromptEnum :number
Each FilterPromptEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "ContainsAll,Case,Start" is equivalent to the numeric value 4353, or to the combination of enumeration constants exFilterPromptContainsAll | exFilterPromptCaseSensitive | exFilterPromptStartWords.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exFilterPromptContainsAll |
1 |
number | The list includes the items that contains all specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords |
exFilterPromptContainsAny |
2 |
number | The list includes the items that contains any of specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords |
exFilterPromptStartWith |
3 |
number | The list includes the items that starts with any specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords |
exFilterPromptEndWith |
4 |
number | The list includes the items that ends with any specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords |
exFilterPromptPattern |
16 |
number | The filter indicates a pattern that may include wild characters to be used to filter the items in the list. The FilterBarPromptPattern property may include wild characters as follows: '?' for any single character '*' for zero or more occurrences of any character '#' for any digit character ' ' space delimits the patterns inside the filter The exFilterPromptPattern flag can be combined with exFilterPromptCaseSensitive only |
exFilterPromptCaseSensitive |
256 |
number | Filtering the list is case sensitive. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith, exFilterPromptEndWith or exFilterPromptPattern. |
exFilterPromptStartWords |
4608 |
number | The list includes the items that starts with specified words, in any position. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith or exFilterPromptEndWith. |
exFilterPromptEndWords |
8704 |
number | The list includes the items that ends with specified words, in any position. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith or exFilterPromptEndWith. |
exFilterPromptWords |
12800 |
number | The filter indicates a list of words. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith or exFilterPromptEndWith. |
(static, readonly) FilterTypeEnum :number
Each FilterTypeEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "Pattern,Case,Exclude" is equivalent to the numeric value 497, or to the combination of enumeration constants exPattern | exFilterDoCaseSensitive | exFilterExclude.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exAll |
0 |
number | No filter is applied |
exBlanks |
1 |
number | Includes only blank/empty items |
exNonBlanks |
2 |
number | Includes only non blank/empty items |
exPattern |
3 |
number | Includes only items that match the pattern. The Filter property defines the pattern. A pattern may contain the wild card characters '?' for any single character, '*' for zero or more occurrences of any character, '#' for any digit character, and [chars] indicates a group of characters. If any of the *, ?, # or | characters are preceded by a \ ( escape character ) it masks the character itself. Can be combined with exFilterDoCaseSensitive flag |
exDate |
4 |
number | Includes only items that fit the date interval. The Filter property of the Column object defines the interval of dates being used to filter items. The interval of dates should be as [dateFrom] to [dateTo]. If the dateFrom value is missing, the control includes only the items before the dateTo date, if the dateTo value is missing, the control includes the items after the dateFrom date. If both dates ( dateFrom and dateTo ) are present, the control includes the items between this interval of dates. For instance, the "2/13/2004 to" includes all items after 2/13/2004 inclusive, or "2/13/2004 to Feb 14 2005" includes all items between 2/13/2004 and 2/14/2004. |
exNumeric |
5 |
number | Includes only items of numeric type that check the expression. The expression supports operators like <, <=, =, <>, >= or > and numbers to define rules. For instance, the "> 10 < 100" filter indicates all numbers greater than 10 and less than 100. |
exCheck |
6 |
number | Includes only checked-items, while Filter property is "1" or unchecked-items if Filter is "0" |
exImage |
10 |
number | Includes only items that match the images within the Filter property. |
exFilter |
240 |
number | Includes only items that match the Filter property. Can be combined with exFilterDoCaseSensitive flag |
exFilterDoCaseSensitive |
256 |
number | By default, the column's filter is case-insensitive. Specifies a case-sensitive column's filter. Can be combined with exPattern or exFilter flag |
exFilterExclude |
512 |
number | The flag indicates that the Exclude-checkbox of the column is checked. The flag indicates that the items that match the filter are excluded from the list. |
(static, readonly) GridLinesEnum :number
Each GridLinesEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "H,V" is equivalent to the numeric value 3, or to the combination of enumeration constants exHLines | exVLines.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exNoLines |
0 |
number | The control displays no grid lines. |
exAllLines |
-1 |
number | The control displays vertical and horizontal grid lines. |
exRowLines |
-2 |
number | The control shows grid lines for existing rows only. |
exHLines |
1 |
number | The control displays only the horizontal grid lines. |
exVLines |
2 |
number | The control displays only the vertical grid lines. |
(static, readonly) HeaderVisibleEnum :number
Each HeaderVisibleEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "Extend" is equivalent to the numeric value 1, or to the combination of enumeration constants exHeaderVisibleExtendLevels.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exHeaderHidden |
0 |
number | The control's header is hidden. |
exHeaderVisible |
-1 |
number | The control's header is visible. |
exHeaderVisibleExtendLevels |
1 |
number | The control's header is visible, and each column's header is extended to cover all levels of the header |
(static, readonly) LinesAtRootEnum :number
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exNoLinesAtRoot |
0 |
number | No lines at root items |
exLinesAtRoot |
-1 |
number | The control links the root items |
exGroupLinesAtRoot |
1 |
number | The control shows no links between roots, and divides them as being in the same group |
exGroupLines |
2 |
number | The lines between root items are no shown, and the links show the items being included in the group |
exGroupLinesInside |
3 |
number | The lines between root items are no shown, and the links are shown between child only |
exGroupLinesInsideLeaf |
4 |
number | The lines between root items are no shown, and the links are shown for first and last visible child item |
exGroupLinesOutside |
5 |
number | The lines between root items are no shown, and the links are shown for first and last visible child item. A parent item that contains flat child items only, does not indent the child part. By a flat child we mean an item that does not contain any child item |
(static, readonly) LockItemEnum :number
Each LockItemEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A case-insensitive partial string containing a name that matches the enumeration constant.
For instance, the string "Top" is equivalent to the numeric value -1, corresponding to the enumeration constant exLockTop.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exLockTop |
-1 |
number | The item is locked at the top of the control. |
exUnlock |
0 |
number | The item is not locked and scrolls with the content. |
exLockBottom |
1 |
number | The item is locked at the bottom of the control. |
- Since:
- 4.6
(static, readonly) PivotBarVisibleEnum :number
Each PivotBarVisibleEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more compatible enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "visible,sizable,autofit" is equivalent to the numeric value 11, or to the combination of enumeration constants exPivotBarVisible | exPivotBarSizable | exPivotBarAutoFit.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exPivotBarHidden |
0 |
number | The control's pivot bar is hidden. Set this value, to hide the control's pivot bar (the pivot bar displays the layout of the pivot-table). |
exPivotBarVisible |
1 |
number | The control's pivot bar is visible. Include or exclude this flag to show or hide the control's pivot bar. |
exPivotBarSizable |
2 |
number | The pivot bar is sizable. Include or exclude this flag to allow or prevent resizing the pivot bar at runtime. If this flag is present, the user can resize the pivot bar by dragging the bottom side of the control. The resize cursor is shown when the pivot bar is resizable and cursor hovers the bottom side of the pivot bar. |
exPivotBarFloat |
4 |
number | The pivot bar is shown into a floating window. Include this flag, to display the control's pivot bar to a separate window (a floating panel) |
exPivotBarAutoFit |
8 |
number | The pivot bar's height is updated automatically so all elements fits the client area (When this flag is present, the height of the pivot's bar is automatically adjusted so the entire content fits the header). |
exPivotBarShowTotals |
16 |
number | The pivot bar shows the total/sub-total fields. Include or exclude this flag to show or hide the Total field in the pivot bar. |
exPivotBarAutoHide |
32 |
number | Shows the pivotbar as soon as the cursor hovers it, and hides it as soon as the cursor leaves it |
exPivotBarAllowValues |
64 |
number | Specifies if the user can drop values of the columns to the pivot bar. |
exPivotBarAllowFormatAppearance |
128 |
number | Specifies if the user can select a different appearance for columns or total/subtotal fields. |
exPivotBarAllowFormatConditionalAppearance |
16777216 |
number | Specifies if the user can select conditional appearance for columns. |
exPivotBarAllowFormatContent |
256 |
number | Specifies if the user can select the way the column's data is displayed. |
exPivotBarAutoUpdate |
512 |
number | Indicates whether the control' list is automatically updated once the user drops objects in the pivot bar. |
exPivotBarAllowUndoRedo |
1024 |
number | Indicates if the pivot bar allows Undo/Redo operations, if the user presses the CTRL+Z/Y. The control restores the previously layout once the user presses the CTRL + Z keys combination. The control restores the next layout once the user presses the CTRL + Y keys combination. Exclude this flag, and the Undo/Redo feature is disabled. |
exPivotBarAllowResizeColumns |
2048 |
number | Indicates if the user can resize the columns in the pivot bar. This flag affects the columns to be displayed of the pivot bar, not the columns to be displayed in the control's list. |
exPivotBarHideAddNew |
4096 |
number | Prevents showing the add new buttons in the pivot bar. Clicking the Add New button displays a list of columns or aggregate functions that can be added in the current context. |
exPivotBarContextSortAscending |
65536 |
number | Shows the columns alphabetically in ascending order. This flag can be combined with exPivotBarContextSortReverse and so, the columns will be alphabetically displayed in descending order. |
exPivotBarContextSortReverse |
1048576 |
number | Shows the columns in reverse order. This flag can be combined with exPivotBarContextSortAscending and so, the columns will be alphabetically displayed in descending order. |
exPivotBarReadOnly |
268435456 |
number | Makes the pivot bar read only, so no changes are allowed. |
exPivotBarSingleAggregate |
536870912 |
number | Restructures the pivot-bar into three sections: a pivot-rows section docked to the left, a pivot-columns section docked to the top-right, and a top-left corner section for defining the column and aggregate function for the pivot table
In single-aggregate mode, the control is divided into four sections:
|
(static, readonly) ShowBranchRowsEnum :number
Each ShowBranchRowsEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more compatible enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "columns,aggregate,divider" is equivalent to the numeric value 51, or to the combination of enumeration constants exBranchColumns | exBranchIncludeAggregate | exBranchRowDivider.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exBranchTree |
1 |
number | The exBranchTree mode presents data in a tree structure, with +/- buttons for expanding and collapsing nodes. In exBranchTree mode, the Pivot.Options.pivotRows property is represented into a single column. When this flag is combined with exBranchIncludeAggregate, the rows are organized into a tree structure with +/- buttons, and the aggregate function results are included in the branch rows. The ShowIdem property defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries. |
exBranchColumns |
3 |
number | In exBranchColumns mode, a new column is added for each pivot row column without displaying +/- buttons. In exBranchColumns mode, a new column is added for each pivot row column without displaying +/- buttons. The Pivot.Options.pivotRows property is represented into multiple-columns. This flag cam be combined with the exBranchRowDivider or exBranchIncludeAggregate flag. When combined with exBranchIncludeAggregate, the rows are organized into a tree structure without displaying the +/- buttons. As a result, when a pivot row is sorted, the parent and its sibling rows are also sorted, along with all child items under the same parent. The ShowIdem property defines the symbol used to indicate repeated captions, providing a clear visual cue for identical entries. |
exBranchRowDivider |
16 |
number | The branch rows display information across the entire line. The exBranchRowDivider flag can only be combined with the exBranchTree or exBranchColumns flags. |
exBranchIncludeAggregate |
32 |
number | The branch rows displays result of aggregate function. The exBranchIncludeAggregate flag can only be combined with the exBranchTree or exBranchColumns flags. |
- Since:
- 4.1
(static, readonly) SingleSelEnum :number
Each SingleSelEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "Enable,Single,Toggle" is equivalent to the numeric value 7, or to the combination of enumeration constants exEnableSel | exSingleSel | exToggleSel.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exDisableSel |
0 |
number | The exDisableSel value specifies that the control's selection is disabled. |
exEnableSel |
1 |
number | The exEnableSel flag specifies that the control's selection is enabled (multiple-selection, unless the exSingleSel is set ). |
exSingleSel |
2 |
number | The exSingleSel flag specifies that the user can select a item only. |
exToggleSel |
4 |
number | The exToggleSel flag specifies that the item's selection state is toggled once the user clicks a item. |
exDisableCtrlSel |
8 |
number | The exDisableCtrlSel flag disables toggling the item's selection state when user clicks a item, while CTRL modifier key is pressed. |
exDisableShiftSel |
16 |
number | The exDisableShiftSel flag disables selecting items using the SHIFT key. |
exDisableDrag |
32 |
number | The exDisableDrag flag disables selecting items by drag. |
(static, readonly) SortOnClickEnum :number
Each SortOnClickEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A case-insensitive partial string containing a name that matches the enumeration constant.
For instance, the string "User" is equivalent to the numeric value 1, corresponding to the enumeration constant exUserSort.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exNoSort |
0 |
number | The column is not sorted when user clicks the column's header. |
exDefaultSort |
-1 |
number | The column gets sorted when user the clicks the column's header. |
exUserSort |
1 |
number | The control displays the sort icons, but it doesn't sort the column (not supported) |
(static, readonly) SortOrderEnum :number
Each SortOrderEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A case-insensitive partial string containing a name that matches the enumeration constant.
For instance, the string "Asc" is equivalent to the numeric value 1, corresponding to the enumeration constant exSortAscending.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exSortNone |
0 |
number | The column is not sorted. |
exSortAscending |
1 |
number | The column is sorted ascending. |
exSortDescending |
2 |
number | The column is sorted descending. |
(static, readonly) SortTypeEnum :number
Each SortTypeEnum property can be specified in one of the following ways:
- A numeric value.
- A single enumeration constant.
- A combination of one or more enumeration constants, separated by the | operator.
- A case-insensitive partial string containing one or more comma-separated names that match the enumeration constants.
For instance, the string "Numeric,ByValue" is equivalent to the numeric value 17, or to the combination of enumeration constants exSortNumeric | exSortByValue.
Type:
- number
Properties:
| Name | value | Type | Description |
|---|---|---|---|
exSortString |
0 |
number | The column's content is sorted as string (by default). |
exSortNumeric |
1 |
number | The column's content is sorted as numbers. |
exSortDate |
2 |
number | The column's content is sorted as dates. |
exSortByValue |
16 |
number | The column gets sorted by cell's value rather than cell's caption (the cell's caption include formatting) |
exSortByState |
32 |
number | The column gets sorted by cell's state (checked, unchecked) rather than cell's caption (the cell's caption include formatting) |
exSortByImage |
48 |
number | The column gets sorted by cell's image rather than cell's caption (the cell's caption include formatting) |
(static, readonly) type :string
Type:
- string
- Since:
- 1.8
Example
console.log(exontrol.Pivot.type); // logs "Pivot"
(static, readonly) version :string
Type:
- string
Example
console.log(exontrol.Pivot.version); // displays the version of the control, for instance "4.9"
AllowActions :string
For instance:
- "item-drag,scroll", the control performs the "item-drag" action once the user clicks an item and "scroll" action is possible only if the user clicks an area that does not contain any item
- "scroll,item-drag", the "item-drag" action is never performed, as the "scroll" action is always matched first. The scroll by drag can be performed if the user clicks anywhere in the view no matter if an item is present or not
So each action should be placed in the allowActions field according to your needs.
The format of the property is:
"action(shortcut,shortcut,...),action(shortcut,shortcut,...)..."where
- "action", defines the action to perform (as defined below)
Action Description Flags "column-drag" Moves a column to a new position. The onchange("drag-column") event occurs when the user repositions a column via drag-and-drop, if the column's AllowDrag property is true. Not available if the control is read-only. "column-resize" Resizes columns by drag. If no flags are used, resizing is possible in both view and header areas. Requires control and column to be editable. The onchange("resize-column") event notifies that a column has been resized via UI interaction. - [view], resizing possible in view area
- [header], resizing possible in column header
"edit" Edits the cell being clicked. The onchange("change-cell") event occurs when the cell's value has been changed through the UI. Not available if the control is read-only. "fit" Fits a dragged area into the control's client area. "item-drag" Moves items by drag. The onchange("drag-item") event occurs once the user moves the item by drag an drop. Not available if the control is read-only. - [position], item can be moved within group without changing parent
- [keepIndent], preserves indentation when moved to any position or parent
- [any], item can be moved freely
"item-resize" Resizes items by drag. The onchange("resize-item") event is raised only when the item height is changed by dragging. Only available if the control is editable and item's allowSizing=true. - [all], resizing one item adjusts all resizable items; otherwise only dragged or selected items are resized
"scroll" Scrolls the control's content by drag. - [view], scroll possible in view area
- [header], scroll possible in header area
"select" Selects items by drag. "zoom" Zooms the control content at the dragging point. The expivot/js control supports additional actions as listed in the table below:
"format" Formats the column at the cursor, including content, appearance, and conditional formatting. The exgantt/js control supports additional actions as listed in the table below:
"chart-create" Creates item-bars by drag. Not available if the control is read-only. - [name=xxx], defines the name/type of the item-bar to create (e.g., [name=Task])
- [key=xxx], defines the key of the item-bar to create
- [shape=xxx], specifies the shape of the create-bar element
- [height=xxx], sets the height of the create-bar element in pixels
- [empty], allows creating item-bars on empty items
- [auto], automatically adds the created item-bar when drag ends
- [zero], allows creating zero-length item-bars
"chart-fit" Fits a portion of the chart by drag. Not available if the control is read-only. - [chart], operation possible when clicking the chart
- [level], operation possible when clicking the chart header
- [overview], operation possible when clicking the control's overview
"chart-link" Links item-bars by drag. Not available if the control is read-only. - [toggle], removes the link if bars are already linked
"chart-move" Moves or resizes item-bars by drag, including resizing the percent of the item-bar. Not available if the control is read-only. "chart-percent" Resizes the percent of item-bars by drag. Not required if "chart-move" is included. Not available if the control is read-only. "chart-resize" Resizes the chart's unit width by drag. Not available if the control is read-only. - [chart], operation possible when clicking the chart
- [level], operation possible when clicking the chart header
"chart-select" Selects item-bars by drag. - [item], selects items by drag as well
- [click-item], selects items when clicked as well
"chart-zoom" Scales and resizes the chart by drag. Not available if the control is read-only. - [chart], zoom possible when clicking the chart
- [level], zoom possible when clicking the chart header
- [overview], zoom possible when clicking the control's overview
"item-drag" Moves items by drag. The onchange("drag-item") event occurs once the user moves the item by drag an drop. Not available if the control is read-only. - [view], operation possible when clicking the view
- [chart], operation possible when clicking the chart
- [position], item can be moved within group without changing parent
- [keepIndent], preserves indentation when moved to any position or parent
- [any], item can be moved freely
"overview-selection-resize" Resizes the chart using left/right margins of the overview-selection (available since 2.4). - [unsmooth], resize occurs unit by unit instead of pixel by pixel
"scroll" Scrolls the control's content by drag. - [view], scroll possible in view area
- [header], scroll possible in header area
- [chart], scroll possible when clicking the chart
- [level], scroll possible when clicking the chart header
"select" Selects items by drag. - [view], operation possible when clicking the view
- [chart], operation possible when clicking the chart
- "shortcut", defines the event's button or/and the modifier-keys that are required to perform the action. The "shortcut" is a combination of none, one or more of the following values:
- "Shift", indicates that the SHIFT key is pressed
- "Ctrl" or "Control", indicates that the CTRL key is pressed
- "Alt" or "Menu", indicates that the ALT key is pressed
- "Meta" , indicates that the META key is pressed
- "LButton", specifies that the mouse's left-button is pressed
- "RButton", specifies that the mouse's right-button is pressed
- "MButton", specifies that the mouse's middle/wheel-button is pressed
- "Long", specifies that the action requires a "long" click or touch before it begins
- "Double", specifies that the action requires a "double" click before it begins (this flag is available for non-dragable actions only such as "edit")
- "+", indicates AND between values
Type:
- string
Example
null {null}, indicates the control's default allowActions value
"" {string}, specifies that no operation is allowed once the user clicks or touches the control
"scroll" {string}, specifies that only "scroll" operation is allowed, no matter of the event's button or modifier-keys is pressed.
"column-resize[view](LButton)" {string}, allows resizing the columns (inside the view), while pressing the mouse's left-button only
"column-drag(Shift+LButton),item-drag,scroll" {string}, indicates that dragging a column is possible only if the user presses the mouse's left-button while SHIFT key is pressed, and "item-drag" or "scroll" is possible no matter of the event's button or modifier-keys in this order (if one operation is not possible, the next one is performed).
AllowActions
AllowDrop :boolean
Type:
- boolean
Example
false {boolean}, no file can be drop into the control (default)
true {boolean}, the user can drag and drop files into the control
AllowDrop
AllowGroupBy :boolean
Type:
- boolean
Example
false {boolean}, no group-view is generated once the user drags a column to the control's group-by/sort bar
true {boolean}, the control supports group-by view
AllowGroupBy
Background :BackgroundOptions
Type:
- BackgroundOptions
- Since:
- 2.3
ColumnAutoResize :boolean
Type:
- boolean
Example
false {boolean}, no effect
true {number}, all visible columns are proportionally resized to fit the control's width
ColumnAutoResize
(readonly) Columns :Columns
Type:
Example
The following statements are equivalents:
oPivot.GetColumns(), returns the control's columns
oPivot.Columns, returns the control's columns
where oPivot is an object of Pivot type
Columns
ColumnsFloatBarCaption :string
Type:
- string
Example
"" {string}, hides the caption of the columns float bar
"<b>Columns</b>" {string}, displays in bold the caption of the columns float bar
ColumnsFloatBarCaption
ColumnsFloatBarSortOrder :number
- 0 {number}, show columns unsorted
- 1 {number}, show columns in ascending order (by name)
- 2 {number}, shows columns in descending order (by name)
The ColumnsFloatBarCaption property defines the caption of the columns float bar. By default, the ColumnsFloatBarSortOrder property is set to 0, which shows the columns unsorted.
Type:
- number
Example
0 {number}, show columns unsorted
1 {number}, show columns in ascending order (by name)
ColumnsFloatBarSortOrder
ColumnsFloatBarVisible :Pivot.ColumnsFloatBarVisibleEnum
- exColumnsFloatBarHidden(0), the columns floatbar is hidden
- exColumnsFloatBarVisibleIncludeGroupByColumns(1), the columns floatbar is visible, and it displays dragable (AllowDrag property) and groupable (AllowGroupBy property) columns of the control.
- exColumnsFloatBarVisibleIncludeCheckColumns(2), the columns floatbar is visible, and it displays dragable (AllowDrag property), and a check-box for each Column to update its Visible property (shor or hide the column).
- exColumnsFloatBarVisibleIncludeHiddenColumns(4), the columns floatbar is visible, and it displays dragable (AllowDrag property) and hidden (Visible property) columns of the control.
- exColumnsFloatBarFloat(0x100), the columns floatbar is shows as floated. This flag can be combined with exColumnsFloatBarVisibleIncludeHiddenColumns, exColumnsFloatBarVisibleIncludeCheckColumns or exColumnsFloatBarVisibleIncludeGroupByColumns type.
The ColumnsFloatBarCaption property defines the caption of the columns float bar. The ColumnsFloatBarSortOrder property defines the sort order to show the columns within the columns float bar.
Type:
Example
false {boolean} or 0 {number}, hides the columns float bar
true {boolean}, 1 or Pivot.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisibleIncludeGroupByColumns {number}, the columns float bar is visible and displays groupable columns
ColumnsFloatBarVisible
Conditional :ConditionalFormatOptions|Array.<ConditionalFormatOptions>
Type:
- Since:
- 3.3
Example
{
expression: "value > 100",
shape:
{
frameColor: "black"
},
applyTo: "Total"
} {ConditionalFormatOptions}, highlights the cells in the 'Total' column with values greater than 100
Conditional
(readonly) ConditionalFormats :ConditionalFormats
Type:
Example
The following statements are equivalents:
oPivot.GetConditionalFormats(), returns the control's conditional formats
oPivot.ConditionalFormats, returns the control's conditional formats
where oPivot is an object of Pivot type
ConditionalFormats
CountLockedColumns :number
Type:
- number
Example
0 {number}, indicates that the control displays no locked-columns
2 {number}, specifies that the first two-visible columns are locked (not scrollable and fixed to the left side of the control)
0x10 {number}, locks 1 column on the right (@since 4.6)
0x11 {number}, locks 1 column on the left and 1 on the right (@since 4.6)
CountLockedColumns
CrSize :number
Type:
- number
Example
0 {number}, displays no check-box/radio-button
24 {number}, specifies a size of 24x24 to display the check-box/radio-button
CrSize
Cursors :string
"cursor(part),cursor(part),..."where:
- "cursor", defines the CSS mouse cursor to display while cursor hovers the part
- "part", defines the name of the part the cursor is applied on (as defined below)
The "part" can be any of the following:
Cursor Description "alias" indicates a shortcut or alias will be created "all-scroll" indicates scrolling in any direction "auto" lets the browser decide the cursor based on context "cell" indicates a table cell "col-resize" indicates a column can be resized horizontally "context-menu" indicates a context menu is available "copy" indicates something will be copied "crosshair" a precise crosshair cursor "default" the default arrow cursor "e-resize" resize east (right edge) "ew-resize" resize horizontally "grab" indicates an item can be grabbed "grabbing" indicates an item is being grabbed "help" indicates help information is available "move" indicates something can be moved "n-resize" resize north (top edge) "ne-resize" resize northeast (top-right corner) "nesw-resize" resize along the northeast–southwest axis "no-drop" indicates dropping is not permitted "not-allowed" indicates the action is not allowed "ns-resize" resize vertically "nw-resize" resize northwest (top-left corner) "nwse-resize" resize along the northwest–southeast axis "pointer" the pointer cursor (a hand with a pointing finger) "progress" indicates background processing "row-resize" indicates a row can be resized vertically "s-resize" resize south (bottom edge) "se-resize" resize southeast (bottom-right corner) "sw-resize" resize southwest (bottom-left corner) "text" the text selection cursor (I-beam) "url(...)" uses a custom cursor image (with optional fallback) "vertical-text" the vertical text selection cursor "w-resize" resize west (left edge) "wait" indicates the program is busy "zoom-in" indicates zooming in "zoom-out" indicates zooming out
Part Description "anchor" (hyperlink) defines the mouse-cursor when the mouse pointer hovers the anchor (the <a> ex-HTML part marks an anchor or hyperlink element) (@since 2.2) "cell" defines the mouse-cursor when the mouse pointer hovers any cell "check" defines the mouse-cursor to be shown when the mouse pointer hovers the check-box/radio-button "column" defines the mouse-cursor to show when the mouse pointer hovers the column's header "column-drag" defines the mouse-cursor while the column is dragging "column-filter" defines the mouse-cursor to show when the mouse pointer hovers the column's filter-button "drag-drop" defines the cursor while the item is being dragged using the "drag-drop" action "expand" defines the mouse-cursor to be shown when the mouse pointer hovers the expand/collapse glyphs "filterBar-caption" defines the mouse-cursor to show when the mouse pointer hovers the filter-bar's caption field "filterBar-caption-column" defines the mouse-cursor to show when the mouse pointer hovers a column of the filter-bar's caption field "filterBar-close" defines the mouse-cursor to show when the mouse pointer hovers the filter-bar's close button "filterBar-prompt" defines the mouse-cursor to show when the mouse pointer hovers the filter-bar's prompt label "item" defines the mouse-cursor when the mouse pointer hovers any item "item-drag" defines the cursor while the item is being dragged using the "item-drag" action "long" specifies the mouse-cursor to be shown as soon as a "long" click or touch action begins (see allowActions field) "no" defines the mouse-cursor to be shown when no operation is allowed (for instance, dropping the item is not allowed in this area)
The expivot/js control supports additional parts as listed in the table below:
Part Description "pivotBar-addNew" defines the mouse-cursor to show when the mouse pointer hovers the "add-new" buttons within the control's pivotbar "pivotBar-aggregate" defines the mouse-cursor to show when the mouse pointer hovers an aggregate-glyph within the control's pivotbar "pivotBar-total" defines the mouse-cursor to show when the mouse pointer hovers a total-field within the control's pivotbar "pivotBar-refresh" defines the mouse-cursor to show when the mouse pointer hovers the "Refresh" button within the control's pivotbar
The exgantt/js control supports additional parts as listed in the table below:
By default, the Cursors property is set to:
Part Description "create-bar" defines the mouse-cursor to show when the user creates a new item-bar "create-link" defines the mouse-cursor to show when the user creates a new link "itemBar" defines the mouse-cursor to show when the user hovers a movable and selectable item-bar "itemBar-percent-resize" defines the mouse-cursor to show when the user hovers the bar's percent right-side
"not-allowed(no),grab(long),pointer(expand,check,radio,filterBar-close,filterBar-caption-column,column-filter,column-drag,item-drag,drag-drop,anchor),text(filterBar-prompt)"
Type:
- string
Example
"pointer(item),not-allowed(no),grab(long)" {string}, sets the mouse cursors for different parts of the tree control
Cursors
CustomView :CustomViewOptions
Type:
- CustomViewOptions
- Since:
- 4.4
Example
The following statements are equivalent in setting the control's custom view options, where the object property is set to a new instance of exontrol.Graph that renders the pivot data on a canvas element with the identifier "cvsPivot", and the autoFit option is set to false to prevent automatic resizing of the graph:
CustomView = {object: new exontrol.Graph("cvsPivot", {autoFit: false})};
or
CustomView.Object = new exontrol.Graph("cvsPivot", {autoFit: false});
CustomView
Data :any
The Data property supports any of the following values:
- A String expression that specifies the URL to a CSV or XML file (contains no eof, eor or str). For example, "datasource.xml" imports the content of the 'datasource.xml' file
- A String expression in CSV or XML format. For example, "Item 1.1,SubItem 1.2\r\nItem 1.2,SubItem 2.2" creates two columns and two rows
- An array of [value] or [[value]] type that defines the data to load. For instance, [["Item 1.1","Item 1.2"],["Item 2.1","Item 2.2"]] creates two columns and two rows
- (@since 3.2) An object of {columns, items} type, where:
- 'columns' can be an array of [(string | ColumnOptions)] to specify the columns to add or of type Columns to copy the control's header from one control to another (@since 4.3). For instance {columns: "Name,Start,End"}, adds three columns, or {columns: ["Name", {caption: "Filter", displayFilterButton: true}]} adds two columns
- 'items' is be an array of [(string | ItemOptions)] to specify the items to add or of type Items to copy the control's items from one control to another (@since 4.3).
The ItemOptions type supports a recursive 'items' property to specify child items. For instance, {columns: "Def", items: {value: "Root", expanded: false, items:["Child 1", "Child 2", "Child 3"]}} defines a single-column control with a collapsed root item labeled 'Root' and three child items named 'Child 1', 'Child 2', and 'Child 3', or {columns: [{caption: "C1", displayFilterButton: true}, "C2"], items: [{value: ["R1.1", "R1.2"], items: [["C1.1", "C1.2"], ["C2.1", "C2.2"], ["C3.1", "C3.2"]]}, ["R2.1", "R2.2"]]} defines a dataset with two columns labeled as C1 (with a filter button for user value filtering) and C2. It includes two root items and three child items under the first root, each specifying values for their respective cells in the table
- An object that includes the "files" member of FileList type (representing a local file dropped into the control)
The onaddcolumn event occurs for each column added to the control, while the onadditem event occurs for each item added to the control during data import. The onload event occurs once all data is imported and loaded into the control.
Type:
- any
Example
"xml/datasource.xml" {string}, imports data from datasource.xml file
"Item 1.1,SubItem 1.2\r\nItem 1.2,SubItem 2.2" {string}, creates two columns and two rows
[["Item 1.1","Item 1.2"],["Item 2.1","Item 2.2"]] {array}, creates two columns and two rows
{columns: [{caption: "C1", displayFilterButton: true}, " C2"], items: [{value: ["R1.1", "R1.2"], items: [["C1.1", "C1.2"], ["C2.1", "C2.2"], ["C3.1", "C3.2"]]}, ["R2.1", "R2.2"]]} {object}, defines a dataset with two columns labeled as C1 (with a filter button for user value filtering) and C2. It includes two root items and three child items under the first root, each specifying values for their respective cells in the table (@since 3.2)
Data
DefaultItemHeight :number
Type:
- number
Example
null {null}, specifies that the item's height is 24 (by default)
18 {number}, changes the item's default height to 18
DefaultItemHeight
DisplayPivotFields :number
Type:
- number
Example
0 {number}, the control displays no pivot-columns
256 {number}, the control displays maximum 256 pivot-columns
-1 {number}, there is no limit for generated pivot-columns
DisplayPivotFields
DisplayPivotRows :number
Type:
- number
Example
0 {number}, the control displays no generated-rows
16384 {number}, the control displays maximum 16384 rows
-1 {number}, there is no limit for generated rows
DisplayPivotRows
DrawGridLines :Pivot.GridLinesEnum
- exNoLines(0), no grid lines
- exAllLines(-1), shows all vertical and horizontal grid lines
- exRowLines(-2), shows grid lines for existing rows only
- exHLines(1), shows only the horizontal grid lines
- exVLines(2), shows only the vertical grid lines
The GridLines property customizes the color, width and style of the control's grid-lines. The GridLines property specifies the color, width and style of the control's grid-lines as an object of {width, color, style} type. By default, the DrawGridLines property is set to exNoLines (0), which hides the control's grid-lines.
Type:
Example
0 or Pivot.GridLinesEnum.exNoLines {number}, hides the grid-lines (default)
-1 or Pivot.GridLinesEnum.exAllLines {number}, shows all vertical and horizontal grid lines
DrawGridLines
EnsureOnSort :boolean
Type:
- boolean
Example
false {boolean}, no effect
true {boolean}, scrolls the view, so the selection (including the parent-items) fits the view's client area
EnsureOnSort
ExpandGlyphSize :number
Type:
- number
Example
0 {number}, displays no item's expand/collapse glyphs
24 {number}, specifies a size of 24x24 to display the item's expand/collapse glyphs
ExpandGlyphSize
ExpandOnDblClick :boolean
Type:
- boolean
Example
false {boolean}, the item is not expanded or collapsed once the user double-clicks it
true {boolean}, the item is expanded or collapsed once the user double-clicks it
ExpandOnDblClick
FilterBarCaption :string
- "value" or "current", returns the current filter as a string. At runtime the value may return a string such as
"[<b>EmployeeID</b>] = '4| 5| 6' and [<b>ShipVia</b>] =
, so the control automatically applies HTML format, which you can change it. For instance,1</img>"
"upper(value)"
displays the caption in uppercase or "value replace `<b>` with `<fgcolor=808080>` replace `</b>` with `</fgcolor>`" displays the column's name with a different foreground color. - "itemcount", returns the total number of items as indicated by Items.Count property. At runtime the itemcount is a positive integer that indicates the count of all items. For instance,
"value + `
includes in the filter bar the number of items aligned to the right.<fgcolor=808080>Total: ` + itemcount" - "visibleitemcount", returns the number of visible items as indicated by Items.VisibleCount property. At runtime, the visibleitemcount is a positive integer if no filter is applied, and negative if a filter is applied. If positive, it indicates the number of visible items. The visible items does not include child items of a collapsed item. If negative, a filter is applied, and the absolute value minus one, indicates the number of visible items after filter is applied. 0 indicates no visible items, while -1 indicates that a filter is applied, but no item matches the filter criteria. For instance,
"value + `
includes "Visible: " plus number of visible items, if no filter is applied or "Result: " plus number of visible items, if filter is applied, aligned to the right<fgcolor=808080>` + ( visibleitemcount < 0 ? ( `Result: ` + ( abs(visibleitemcount) - 1 ) ) : ( `Visible: ` + visibleitemcount ) )" - "matchitemcount", returns the number of items that match the filter as indicated by Items.MatchCount property. At runtime, the matchitemcount is a positive integer if no filter is applied, and negative if a filter is applied. If positive, it indicates the number of items within the control (Items.Count property). If negative, a filter is applied, and the absolute value minus one, indicates the number of matching items after filter is applied. A matching item includes its parent items, if the control's FilterInclude property allows including child items. 0 indicates no visible items, while -1 indicates that a filter is applied, but no item matches the filter criteria. For instance,
"value + `
includes "Visible: " plus number of visible items, if no filter is applied or "Result: " plus number of matching items, if filter is applied, aligned to the right<fgcolor=808080>` + ( matchitemcount < 0 ? ( `Result: ` + ( abs(matchitemcount) - 1 ) ) : ( `Visible: ` + matchitemcount ) )" - "leafitemcount", returns the number of leaf-items. A leaf item is an item with no child items. At runtime, the leafitemcount is a positive number that computes the number of leaf-items ( expanded or collapsed ). For instance,
"value + `
displays the number of leaf-items aligned to the right with a different font and foreground color.<fgcolor=808080><font ;6>` + leafitemcount" - "promptpattern", returns the pattern in the filter bar's prompt, as a string. The FilterBarPromptPattern specifies the pattern for the filter prompt. The control's filter bar prompt is visible, if the exFilterBarPromptVisible flag is included in the FilterBarVisible property.
- "available", returns the list of columns that are not currently part of the control's filter, but are available to be filtered. A column is available to be filtered, if the DisplayFilterButton property of the Column object, is True. At runtime, the available keyword may return a string such as
"<fgcolor=C0C0C0>[<s>OrderDate</s>]<fgcolor> </fgcolor>[<s>RequiredDate</s>]<fgcolor> </fgcolor>[<s>ShippedDate</s>]<fgcolor> </fgcolor>[<s>ShipCountry</s>]<fgcolor> </fgcolor>[<s>Select</s>]</fgcolor>"
so the control automatically applies HTML format, which you can change it. For instance,"value + ` ` + available"
displays the current filter, including all available columns to be filtered. For instance,"value + `
displays the available columns aligned to the right with a different foreground color.` + available replace `C0C0C0` with `FF0000`" - "allui", returns the list of columns that are part of the current filter and available columns to be filtered. A column is available to be filtered, if the DisplayFilterButton property of the Column object, is True. At runtime, the allui keyword may return a string such as
"[<b>EmployeeID</b>] = '4| 5| 6'<fgcolor> </fgcolor><fgcolor=C0C0C0>[<s>OrderDate</s>]</fgcolor><fgcolor> </fgcolor><fgcolor=C0C0C0>[<s>RequiredDate</s>]</fgcolor><fgcolor> </fgcolor><fgcolor=C0C0C0>[<s>ShippedDate</s>]</fgcolor><fgcolor> </fgcolor>[<b>ShipVia</b>] =
so the control automatically applies HTML format, which you can change it. For instance,1</img><fgcolor> </fgcolor><fgcolor=C0C0C0>[<s>ShipCountry</s>]</fgcolor><fgcolor> </fgcolor><fgcolor=C0C0C0>[<s>Select</s>]</fgcolor>"
"allui"
displays the current filter, including all available columns to be filtered. For instance,"((allui + `<fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(allui) ? `` : `` ) + `
displays all available columns to be filtered with different background/foreground colors including the number of items/results` + abs(matchitemcount + 1) + ` result(s)` ) : (` <fgcolor=808080>`+ itemcount + ` item(s)`) )) replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </bgcolor></fgcolor>` )" - "all", returns the list of all columns ( visible or hidden ) no matter if the DisplayFilterButton property is True or False. At runtime, the all keyword may return a string such as
"<fgcolor=C0C0C0>[<s>OrderID</s>]</fgcolor><fgcolor> </fgcolor>[<b>EmployeeID</b>] = '4| 5| 6'<fgcolor> </fgcolor><fgcolor=C0C0C0>[<s>OrderDate</s>]</fgcolor><fgcolor> </fgcolor><fgcolor=C0C0C0>[<s>RequiredDate</s>]</fgcolor><fgcolor>"
so the control automatically applies HTML format, which you can change it. For instance,"all"
displays the current filter, including all other columns. For instance,"((all + `<fgcolor=808080>` + ( matchitemcount < 0 ? ( ( len(allui) ? `` : `` ) + `
displays all columns with different background/foreground colors including the number of items/results` + abs(matchitemcount + 1) + ` result(s)` ) : (` <fgcolor=808080>`+ itemcount + ` item(s)`) )) replace `[<b>` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `</b>]` with ` </b></bgcolor></fgcolor>` replace `[<s>` with `<bgcolor=C0C0C0><fgcolor=FFFFFF> ` replace `</s>]` with ` </bgcolor></fgcolor>` )"
Type:
- string
Example
"" {string}, displays no filter bar while no filter is applied, else it displays the filter as default
"no filter" {string}, shows no filter caption all the time
"allui" {string}, displays all available columns (column's DisplayFilterButton property is true)
"value replace ` and ` with `<off 4> and </off>` replace `|` with ` <off 4>or</off> ` replace ` ` with ` `" {string}, replaces the AND and | values
"value replace `[` with `<bgcolor=000000><fgcolor=FFFFFF><b> ` replace `]` with ` </b></bgcolor></fgcolor>`" {string}, highlights the columns being filtered with a different background/foreground colors.
FilterBarCaption
FilterBarHeight :number
Type:
- number
Example
0 {number}, hides the control's filter-bar
24 {number}, indicates that the height of the control's filter-bar is 24
FilterBarHeight
FilterBarPrompt :string
Type:
- string
Example
"" {string}, displays no caption (while the pattern of the filter-prompt is empty)
"<i>filter...</i>" {string}, displays the message "filter..." in italics
FilterBarPrompt
FilterBarPromptColumns :any
- null {null} or -1 {number}, all columns (visible or hidden)
- {number}, specifies the index of the column
- {string}, specifies a list of index/identifier/key/caption/plain-caption, separated by comma character
- {Column}, specifies the column reference
The FilterBarPrompt property gets or sets the caption to show while the pattern of the filter-prompt is empty. FilterBarPrompt property supports ex-HTML formatting. The FilterBarVisible property shows or hides the control's filter-bar. The FilterBarHeight property gets or sets the height to display the control's filter-bar. The FilterBarPromptColumns property specifies the list of columns the pattern of filter-prompt is applying to. The FilterBarPromptType property gets or sets the type of the control's filter-prompt. By default, the FilterBarPromptColumns property is null, which specifies that filter-prompt is applied to all columns (visible or hidden).
Type:
- any
Example
null or -1 {null/number}, specifies that filter-prompt is applied to all columns (visible or hidden)
2 {number}, specifies that filter-prompt is applied to the column with index 2
"0,2,4" {string}, specifies that filter-prompt is applied to the columns with index 0, 2 and 4
"EmployeeID,ShipVia,ShipCountry" {string}, specifies that filter-prompt is applied to the columns with identifier/key/caption/plain-caption "EmployeeID", "ShipVia" and "ShipCountry"
FilterBarPromptColumns
FilterBarPromptPattern :string
Type:
- string
Example
"" {string}, clears the pattern of the filter-prompt
"A" {string}, filters for items includes "A" (exFilterPromptContainsAll)
"A* *B" {string}, filters for items start starts with "A" or ends with "B" (exFilterPromptPattern)
FilterBarPromptPattern
FilterBarPromptType :Pivot.FilterPromptEnum
- exFilterPromptContainsAll(1), The list includes the items that contains all specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords
- exFilterPromptContainsAny(2), The list includes the items that contains any of specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords
- exFilterPromptStartWith(3), The list includes the items that starts with any specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords
- exFilterPromptEndWith(4), The list includes the items that ends with any specified sequences in the filter. Can be combined with exFilterPromptCaseSensitive, exFilterPromptStartWords, exFilterPromptEndWords or exFilterPromptWords
- exFilterPromptPattern(16), The filter indicates a pattern that may include wild characters to be used to filter the items in the list. Can be combined with exFilterPromptCaseSensitive. The filterBarPromptPattern field may include wild characters as follows:
'?' for any single character
'*' for zero or more occurrences of any character
'#' for any digit character
' ' space delimits the patterns inside the filter
- exFilterPromptCaseSensitive(0x0100), Filtering the list is case sensitive. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith, exFilterPromptEndWith or exFilterPromptPattern.
- exFilterPromptStartWords(0x1200), The list includes the items that starts with specified words, in any position. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith or exFilterPromptEndWith.
- exFilterPromptEndWords(0x2200), The list includes the items that ends with specified words, in any position. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith or exFilterPromptEndWith.
- exFilterPromptWords(0x3200), The filter indicates a list of words. Can be combined with exFilterPromptContainsAll, exFilterPromptContainsAny, exFilterPromptStartWith or exFilterPromptEndWith.
Type:
Example
2 or Pivot.FilterPromptEnum.exFilterPromptContainsAny {number}, filters for items that contains any sequences in the filter
0x3202 or Pivot.FilterPromptEnum.exFilterPromptContainsAny | Pivot.FilterPromptEnum.exFilterPromptWords {number}, filters for items that contains any words in the filter
0x3203 or Pivot.FilterPromptEnum.exFilterPromptStartWith | Pivot.FilterPromptEnum.exFilterPromptWords {number}, filters for items that starts with any word within the filter
FilterBarPromptType
FilterBarVisible :Pivot.FilterBarVisibleEnum
- exFilterBarHidden(0), indicates that the control's filter-bar is visible only if the control has a filter applied (use the filterBarHeight on 0 to effectively hides the control's filter-bar)
- exFilterBarPromptVisible(1), specifies that the control's filter-bar displays the filter prompt
- exFilterBarVisible(2), forces the control's filter-bar to be shown, no matter if any filter is applied
- exFilterBarCaptionVisible(4), forces the control's filter-bar to display the FilterBarCaption property.
- exFilterBarSingleLine(16), specifies that the caption on the control's filter bar is displayed on a single line. The exFilterBarSingleLine flag , specifies that the filter bar's caption is shown on a single line, so
HTML tag or \r\n are not handled. By default, the control's filter description applies word wrapping. Can be combined to exFilterBarCompact to display a single-line filter bar. If missing, the caption on the control's filter bar is displayed on multiple lines. You can change the height of the control's filter bar using the FilterBarHeight property. - exFilterBarToggle(256), specifies that the user can close the control's filter bar ( removes the control's filter ) by clicking the close button of the filter bar or by pressing the CTRL + F, while the control's filter bar is visible. If no filter bar is displayed, the user can display the control's filter bar by pressing the CTRL + F key. While the control's filter bar is visible the user can navigate though the list or control's filter bar using the ALT + Up/Down keys. If missing, the control's filter bar is always shown if any of the following flags is present exFilterBarPromptVisible, exFilterBarVisible, exFilterBarCaptionVisible.
- exFilterBarShowCloseIfRequired(512), indicates that the close button of the control's filter bar is displayed only if the control has any currently filter applied.
- exFilterBarShowCloseOnRight(1024), specifies that the close button of the control's filter bar should be displayed on the right side.
- exFilterBarCompact(2048), compacts the control's filter bar, so the filter-prompt will be displayed to the left, while the control's filter bar caption will be displayed to the right. This flag has effect only if combined with the exFilterBarPromptVisible. This flag can be combined with the exFilterBarSingleLine flag, so all filter bar will be displayed compact and on a single line.
- exFilterBarShort(4096), specifies that the control's filter bar is displayed only on the default-view (has effect if the control displays multiple views).
Type:
Example
0 or Pivot.FilterBarVisibleEnum.exFilterBarHidden {number}, (default) the control's filter-bar is visible only if there is a filter applied.
1 or Pivot.FilterBarVisibleEnum.exFilterBarPromptVisible {number}, the control's filter-bar is visible and shows the control's filter-prompt
FilterBarVisible
FilterInclude :Pivot.FilterIncludeEnum
- exItemsWithoutChilds(0), items (and parent-items) that match the filter are shown (no child-items are included)
- exItemsWithChilds(1), items (parent and child-items) that match the filter are shown
- exRootsWithoutChilds(2), only root-items (excludes child-items) that match the filter are displayed
- exRootsWithChilds(3), root-items (and child-items) that match the filter are displayed
- exMatchingItemsOnly(4), shows only the items that matches the filter (no parent or child-items are included)
- exMatchIncludeParent(0xF0), specifies that the item matches the filter if any of its parent-item matches the filter. The exMatchIncludeParent flag can be combined with any other value
Type:
Example
null {null}, specifies the control's default FilterInclude property (Pivot.FilterIncludeEnum.exItemsWithoutChilds), so items (and parent-items) that match the filter are shown (no child-items are included)
4 or Pivot.FilterIncludeEnum.exMatchingItemsOnly {number}, shows only the items that matches the filter (no parent or child-items are included)
0xF4 or Pivot.FilterIncludeEnum.exMatchingItemsOnly | Pivot.FilterIncludeEnum.exMatchIncludeParent {number}, shows the items (including the child-items) that match the filter
FilterInclude
FormatAppearances :FormatAppearances
Type:
Example
The folowing statements are equivalent:
oPivot.GetFormatAppearances() {FormatAppearances}, returns the control's format-appearances that defines the visual-appearance to apply on pivot-columns
oPivot.FormatAppearances {FormatAppearances}, returns the control's format-appearances that defines the visual-appearance to apply on pivot-columns
where oPivot is an object of Pivot type
FormatAppearances
FormatConditionalAppearances :FormatConditionalAppearances
Type:
Example
The folowing statements are equivalent:
oPivot.GetFormatConditionalAppearances() {FormatConditionalAppearances}, returns the control's format-appearances that defines the visual-appearance to apply on pivot-columns, based on conditions
oPivot.FormatConditionalAppearances {FormatConditionalAppearances}, returns the control's format-appearances that defines the visual-appearance to apply on pivot-columns, based on conditions
where oPivot is an object of Pivot type
FormatConditionalAppearances
FormatContents :FormatContents
Type:
Example
The folowing statements are equivalent:
oPivot.GetFormatContents() {FormatContents}, returns the control's format-contents that specifies how a column or row can be displayed, formatted or converted
oPivot.FormatContents {FormatContents}, returns the control's format-contents that specifies how a column or row can be displayed, formatted or converted
where oPivot is an object of Pivot type
FormatContents
FormatPivotHeader :string
The formatPivotHeader field supports the following keywords:
aggregate {string}, specifies the name of the aggregate-function associated with the column, or empty, for pivot-rows columns
ilevel {number}, indicates the index of the level where the aggregate-function is shown. This is valid for total-rows only, else it is -1
caption {string}, indicates the original-caption of the column
icaption {number}, specifies the index of the column
display {number}, specifies whether the caption is shown on the control's pivot bar (0), or in the columns header(1)
Type:
- string
Example
"" {string}, no caption is displayed for any of columns within the pivot bar
"lower(aggregate and caption ? ('<fgcolor gray>' + aggregate + '</fgcolor>(' + caption + ')') : aggregate or caption)" {string}, shows the aggregate-function in gray and the column between parenthesis
"(aggregate = 'sum' ? '<b>Σ' : aggregate) + (aggregate and caption ? '(':'') + caption + (aggregate and caption ? ')':'') + (aggregate = 'sum' ? '</b>' : '')", shows sigma-character instead of Sum of
FormatPivotHeader
FormatText :exontrol.DrawTextFormatEnum
- exTextAlignTop (0x00), justifies the text to the top of the rectangle
- exTextAlignLeft (0x00), aligns text to the left
- exTextAlignCenter (0x01), centers text horizontally in the rectangle
- exTextAlignRight (0x02), aligns text to the right
- exTextAlignVCenter (0x04), centers text vertically
- exTextAlignBottom (0x08), justifies the text to the bottom of the rectangle.
- exTextAlignMask (0x0F), specifies the mask for text's alignment.
- exTextWordBreak (0x10), breaks words. Lines are automatically broken between words if a word would extend past the edge of the rectangle specified by the lpRect parameter. A carriage return-line feed sequence also breaks the line. If this is not specified, output is on one line.
- exTextSingleLine (0x20), displays text on a single line only. Carriage returns and line feeds do not break the line.
- exTextExpandTabs (0x40), expands tab characters. The default number of characters per tab is eight.
- exPlainText (0x80), treats the text as plain text.
- exTextNoClip (0x0100), draws without clipping.
- exHTMLTextNoColors (0x0200), ignores the
and tags. - exTextCalcRect (0x0400), determines the width and height of the text.
- exHTMLTextNoTags (0x0800), ignores all HTML tags.
- exTextPathEllipsis (0x4000), for displayed text, replaces characters in the middle of the string with ellipses so that the result fits in the specified rectangle. If the string contains backslash (\) characters, exTextPathEllipsis preserves as much as possible of the text after the last backslash.
- exTextEndEllipsis (0x8000), for displayed text, if the end of a string does not fit in the rectangle, it is truncated and ellipses are added. If a word that is not at the end of the string goes beyond the limits of the rectangle, it is truncated without ellipses.
- exTextWordEllipsis (0x040000), truncates any word that does not fit in the rectangle and adds ellipses.
Type:
- exontrol.DrawTextFormatEnum
Example
null {null}, centers the caption
32 or exontrol.DrawTextFormatEnum.exTextSingleLine {number}, defines a single-line caption
0x2A or exontrol.DrawTextFormatEnum.exTextSingleLine | exontrol.DrawTextFormatEnum.exTextAlignRight | exontrol.DrawTextFormatEnum.exTextAlignBottom {number}, defines a single-line caption right/bottom-aligned
FormatText
GridLines :object
width {number}, specifies the line's width or size (1 by default)By default, the GridLines property is set to:
color {string}, indicates the line's color (partial-black by default)
style {number[]}, specifies the dash pattern to show the lines (dotted by default)
{
color: "gray",
style: 1
}
which displays gray dotted grid-lines with 1-pixel width.
Type:
- object
Example
null {null}, resets the grid-lines to default (gray dotted lines with 1-pixel width)
{ color: "red", width: 2, style: [4,2] } {object}, changes the grid-lines to red color, 2-pixels width and dashed style
GridLines
GroupByFormatCell :string
The format of the cell is defined by a format-expression that supports keywords and operators, as explained next:
value, indicates the value of the current cell ( "value/2 format ``", displays half of the value using current regional format )The format-expression supports the following unary-operators:
%0, %1, %2, ... {any} specifies the value of the cell in the column with the index 0, 1 2, ... ( "currency(%0 + %1)", adds the value of first and second cell and displays it as a currency )
%C0, %C1, %C2, ... {string} specifies the caption of the cell, or the string the cell displays in the column with the index 0, 1 2, ... ( "%C0 + %C1", concatenates the caption of first and second cell )
%CD0, %CD1, %CD2, ... {any} specifies the cell's user-date in the column with the index 0, 1 2, ... ( "%CD0 ? value : ``", displays the cell's value only if the cell's data is not empty )
%CS0, %CS1, %CS2, ... {number} specifies the cell's state in the column with the index 0, 1 2, ... ( "(%CS0 ? `<b>` : ``) + value", displays the cell's value in bold only if the first cell is checked )
%CT0, %CT1, %CT2, ... {boolean} returns true if the cell displays a total field; otherwise, it returns false. The exTotalField / exTotalColumn flag specifies whether the cell displays a total field. For instance, "%CT1" refers to all cells in the second column that display totals, while "not %CT1" refers to all cells in the second column that do not display totals (@since 3.3)
%CE0, %CE1, %CE2, ... {boolean} returns true if the cell is editable; otherwise, it returns false.. For example, "%CE0" refers to all editable cells in the first column, while "not %CE1" refers to all cells in the second column that are read-only (@since 3.3)
%CC0, %CC1, %CC2, ... {number} retrieve the number of child items (this keyword consistently returns identical results for all cells since it pertains to the item that hosts each cell). The ChildCount property returns the number of child items. For example, "%CC0" identifies all parent items, while "%CC0 = 0" identifies all leaf items (@since 3.3)
%CX0, %CX1, %CX2, ... {boolean} returns true if the item hosting the cell is expanded, or false if it is collapsed (this keyword consistently returns identical results for all cells since it pertains to the item that hosts each cell). The Item.Expanded property specifically indicates whether the item is expanded or collapsed. For example, "%CX0" refers to all expanded items, while "not %CX0" identifies all collapsed items (@since 3.3)
- exp(``), checks whether the item is expanded or collapsed ( "(exp(``) ? `<b>` : ``) + value", shows expanded-items in bold )
- get(`aggregate(list,direction,formula)`), summarizes the cell based on "aggregate(list,direction,formula)" syntax, where:
aggregate, must be one of the following:
Currently, the following items are excluded by aggregate functions:
- sum, performs addition of values
- min, retrieves the minimum value
- max, retrieves the maximum value
- count, counts the number of items
- avg, calculates the average of values
- std, gets standard-deviation of numbers
- unique, counts how many distinct values are in the set (@since 4.3)
- a number expression that specifies the index of the item being referred
- all, indicates all items, so the formula is being applied to all items
- current, refers the current item
- parent, refers to the parent item
- root, refers to the root item (the root item has no parent items)
- dir, collects only direct descendents (child-items)
- rec, collects recursivelly the leaf descendents ( leaf items ). A leaf item is an item with no child items
- all, collects all descendents
not-sortable items. The Item.Sortable property specifies whether the item can be sorted ( a sortable item can change its position after sorting, while a not-sortable item keeps its position after sorting. not-selectable items. The Item.Selectable property specifies whether the user can selects/focus the specified item. divider items. The Item.Divider property specifies whether the item displays a single cell, instead displaying whole cells.
In conclusion, aggregate functions counts ONLY items that are sortable, selectable and not a divider-item.
For instance:"get(`count(current,dir,1)`)", gets the count of child-items
"get(`count(current,all,1)`)", gets the count of all child-items (implies recursively child items)
"get(`count(current,rec,1)`)", counts the number of leaf items ( a leaf item is an item with no child items )
"get(`sum(current,dir,%1 ? 1 : 0)`)", counts the number of child-items that have not-empty cells within the second-column
"get(`sum(current,dir,value)`)", gets the total of values of child-items (direct descendent) within the same column
"get(`sum(all,rec,value)`)", gets the total of values of leaf-items within the same column
"get(`sum(parent,dir,dbl(%1) + dbl(%2))`)", gets the addition of all cells in the second (%1) and third (%2) column that are directly descendent of the parent item (sibling)
0 index `format`, gets the index of the item (0-based). The first added item has the index 0, the second added item has the index 1, and so on. The index of the item remains the same even if the order of the items is changed by sorting or grouping ( "1 index ``", gets the index of the item starting from 1 )where:
0 rindex `delimiter|format|format|...`, returns the recursive-index of the item ("1 rindex `.|A-Z`", returns values as A, A.1, A.2, B, ...)
0 pos `format`, returns the relative position of the item (the position within the parent's children collection) ( "1 pos ``", returns the position of the item (1-based) within the parent's child items collection )
0 rpos `delimiter|format|format|...`, returns the recursive relative-position of the item (the position within the parent's children collection) ( "1 rpos `.|A-Z`", returns values as A, A.1, A.2, B, ... )
0 opos `format`, returns the relative old position of the item (the position within the parent's children collection) ( "1 opos ``", returns the position of the item (1-based) within the parent's child items collection )
0 ropos `delimiter|format|format|...`, returns the recursive relative-old-position of the item (the position within the parent's children collection) ( "1 ropos `.|A-Z`", returns values as A, A.1, A.2, B, ... )
0 apos `format`, returns the absolute position of the item (the position from the first visible item) ( "1 apos ``", gets absolute position of the item )
0 rapos `delimiter|format|format|...`, returns the recursive absolute-position of the item (the position from the first visible item) ( "1 rapos `.|A-Z`", returns values as A, A.1, A.2, B, ... )
- `delimiter`, is a character to separated recursive-operators such as "rindex", "rpos", "ropos" and "rapos"
- `format`, is a set of characters to be used for specifying the index
parent (unary operator), refers to the parent item of the current item. This expression allows access to values or properties associated with the immediate parent in the hierarchy or structure ( "parent(1 index ``)", gets the index of the parent-item (1-based) ) (@since 4.3)By default, the GroupByFormatCell property is set to:
root (unary operator), refers to the root item of the current item's hierarchy. This expression allows access to values or properties of the highest-level item in the entire structure, regardless of how deeply nested the current item is ("root(%C0)", retrieves the caption of the first column for the root item) (@since 4.3)
"(exp(``) ? `<b>` : ``) + value + (0:=get(`count(current,rec,1)`) ? (` <fgcolor gray>(` + =:0 + `)`) : ``)"which displays the group-by value in bold if the group-item is expanded, followed by the count of items within the group in gray color.
Type:
- string
Example
"" {string}, the default group-by value gets displayed once the column gets grouped by
"upper(value)" {string}, the default group-by value (in upper case) gets displayed once the column gets grouped by
"value + ` <fgcolor gray>` + get(`count(current,rec,1)`)" {string}, the default group-by value plus the count of items within the group gets displayed once the column gets grouped by
GroupByFormatCell
HasButtons :boolean
Type:
- boolean
- Since:
- 1.4
Example
false {boolean}, hides the expand/collapse glyphs (+/- buttons to expand-collapse the item)
true {boolean}, shows the expand/collapse glyphs (+/- buttons to expand
HasButtons
HasLines :object
width {number}, specifies the line's width or size (1 by default)By default, the control shows hierarchy-lines with partial-black color, 1-pixel width and dotted style.
color {string}, indicates the line's color (partial-black by default)
style {number[]}, specifies the dash pattern to show the lines (dotted by default)
cap {("butt"|"round"|"square")}, determines the shape used to draw the end points of lines ("butt", the ends of lines are squared off at the endpoints by default)
join {("bevel"|"round"|"miter")}, determines the shape used to join two line segments where they meet ("miter", connected segments are joined by extending their outside edges to connect at a single point, with the effect of filling an additional lozenge-shaped area. by default)
Type:
- object
- Since:
- 1.4
Example
null {null}, no hierarchy lines are shown
{width: 2, color: "red", style: [4,2], cap: "round", join: "bevel"} {object}, shows hierarchy-lines with red color, 2-pixels width, dashed style, round line-caps and bevel line-joins
HasLines
HeaderEnabled :boolean
Type:
- boolean
- Since:
- 2.4
Example
false {boolean} or 0 {number}, disables the control's header
true {boolean} or 1 {number}, enables the control's header
HeaderEnabled
HeaderHeight :number
Type:
- number
Example
0 {number}, hides the control's header
24 {number}, indicates that the height of the control's header is 24
HeaderHeight
HeaderVisible :Pivot.HeaderVisibleEnum
-
exHeaderHidden(0), the control's header is hidden
exHeaderVisible(-1), the control's header is visible
exHeaderVisibleExtendLevels(1), the control's header is visible, and each column's header is extended to cover all levels of the header
Type:
Example
false {boolean} or 0 {number}, hides the control's header
-1 {number} or Pivot.HeaderVisibleEnum.exHeaderVisible {number}, shows the control's header
true {boolean} or 1 {number}, shows the control's header (each column's header is extended to cover all levels of the header)
HeaderVisible
HoistItem :any
By default,
- hoisting an item also displays all of its parent rows up to the root. To restrict the view so that only the hoisted item and its visible children are shown, set the FilterInclude property to exMatchingItemsOnly
- when an item is hoisted, all of its child rows are automatically expanded. To preserve their original expand/collapse state, use the Layout property to save the current layout before changing the hoist, and restore it immediately afterward.
The HoistItem property could be any of the following:
- {null}, removes any existing hoisted item and returns the control to its default state
- {number}, indicates a numeric value that defines the index of the hoisted item
- {string}, specifies a string expression that defines the identifier/key of the hoisted item
- {Item}, specifies the object reference to the hoisted item
Type:
- any
- Since:
- 4.8
Example
0 {number}, hoists the first item (index 0)
"id" {string}, hoists the item with the identifier/key "id"
item {Item}, hoists the item referenced by the Item object
HoistItem
ImageAlign :number
- 0, the image is on the left of the cell's caption
- 1, the image is on the right of the cell's caption
- 2, the image is on the top of the cell's caption
- 3, the image is on the bottom of the cell's caption
The Cell.Image property gets or sets the cell's individual image. The Column.FormatImage property defines the expression to determine the images the column display. The Column.Image property sets or gets the column's image. By default, the ImageAlign property is set to 0 (the image is aligned left to the caption).
Type:
- number
Example
null {null}, the image is aligned left to the caption (default)
1 {number}, the image is displayed to the right of the cell's caption
ImageAlign
ImageSize :any
- {null}, Indicates that the cell's image is displayed as it is (full-sized).
- {number}, Specifies that the cell's image is displayed into a square of giving size (same width and height). If 0 the item displays no image, if negative the cell's image is stretched to giving square, else the item's picture is scaled to fit the giving rectangle.
- {number[]}, Specifies an array of [aspect-width,aspect-height] type that defines the limits for width or/and height. The aspect-width and aspect-height define the width/height of the item's picture to scale or stretch to.
The Column.ImageSize property takes priority over the control's ImageSize property, and the Cell.ImageSize property takes priority over the Column.ImageSize property. When the Cell.ImageSize property is null, the size falls back to the Column.ImageSize property, and if the Column.ImageSize property is also null, the control's ImageSize property is used. In short, the size priority is: Cell -> Column -> Control. By default, the ImageSize property is set to 16.
Type:
- any
Example
null {null}, Indicates that the cell's image is displayed as it is (full-sized).
0 {number}, no image is displayed
64 {number}, the image is scaled to fit a 64 x 64 rectangle
-64 {number}, the image is strected to a 64 x 64 rectangle
[32,64] {array}, scales the image to the largest ratio-rectangle (32 x 64) that fits the client
[-32,-64] {array}, stretches the image to a 32 x 64 rectangle
ImageSize
ItemAllowSizing :boolean
Type:
- boolean
Example
false {boolean}, none of the items are resizable (unless the Item.AllowSizing property is true)
true {boolean}, all of the items are resizable (unless the Item.AllowSizing property is false)
ItemAllowSizing
(readonly) Items :Items
Type:
Example
The following statements are equivalents:
oPivot.GetItems(), returns the control's items
oPivot.Items, returns the control's items
where oPivot is an object of Pivot type
Items
Layout :string
- layout of windows (size, dock, parent)
- pattern of the control's filter-prompt
- view's horizontal and vertical scroll position
- column's width, visibility, position, expand/collapse state, sort-order, sort-position, filter, filter-type
- selected, expanded/collapsed items
- control's zoom
Type:
- string
Example
The following statements are equivalents:
oPivot.GetLayout(), gets the control's layout
oPivot.Layout, gets the control's layout
where oPivot is an object of Pivot type
Layout
LinesAtRoot :Pivot.LinesAtRootEnum
Type:
- Since:
- 1.4
Example
0 or exontrol.Pivot.LinesAtRootEnum.exNoLinesAtRoot {number}, no lines at root items
-1 or exontrol.Pivot.LinesAtRootEnum.exLinesAtRoot {number}, the control links the root items
LinesAtRoot
Listeners :object
Type:
- object
Example
The following sample shows how you can get all events the component currently supports:
oPivot.Listeners.forEach(function(name)
{
console.log(name);
});
The following sample displays information about the item being clicked:
oPivot.Listeners.Add("onclick", function (oEvent)
{
console.log(oEvent);
});
or
oPivot.on("click", function (oEvent)
{
console.log(oEvent);
});
where oPivot is an object of Pivot type
Listeners
Locked :boolean
Type:
- boolean
Example
false {boolean}, unlocks the control (can select any item)
true {boolean}, locks the control (can't select any item)
Locked
Margins :object
Type:
- object
Example
null {null}, the control uses the default indentation of 16-pixels between a parent and its children
{indent: 0} {object}, specifies no indentation between a parent and its children
{indent: 24} {object}, specifies an indentation of 24-pixels between a parent and its children
Margins
Misc :MiscellaneousOptions
Type:
- MiscellaneousOptions
- Since:
- 4.2
Example
oPivot.Misc = { columnEmptyPivotRows: "*", rowEmptyPivotRows: "Total" }, defines the control's miscellaneous options, where columnEmptyPivotRows specifies the caption of the first column when no pivot rows are set, and rowEmptyPivotRows defines the caption for the single row when no pivot rows are specified. In this case, the pivot columns determine the aggregate functions applied to the entire dataset without grouping by pivot rows.
Misc
OnErrorChooseFile :boolean
Type:
- boolean
Example
false {boolean}, no input-file is displayed as soon an error occurs
true {boolean}, the control displays an input-file to let user choose a local filte to import, as soon as an error occurs
OnErrorChooseFile
Options :Pivot.Options
Type:
Example
The following statements are equivalents:
oPivot.SetOptions({ allowGroupBy: true }), sets the allowGroupBy option to true
oPivot.Options = { allowGroupBy: true }, sets the allowGroupBy option to true
oPivot.oTV.SetAllowGroupBy(true), sets the allowGroupBy option to true
where oPivot is an object of Pivot type
Options
Pad :number|Array.<number>|string
- {number} a numeric value, to pad horizontal and vertical size with the same value
- {(string|number[])} a "x,y" or [x,y] type to specify the padding on horizontal and vertical side
Type:
- number | Array.<number> | string
Example
null {null}, indicates that the default padding value of [4,4] is applied
0 {number}, indicates no padding
"8,4" {string}, increases the item's width with 2 * 8-pixels and item's height with 2 * 4-pixels
[8,4] {array}, increases the item's width with 2 * 8-pixels and item's height with 2 * 4-pixels
Pad
PivotBarVisible :Pivot.PivotBarVisibleEnum
- exPivotBarHidden(0), the pivot bar is hidden.
- exPivotBarVisible(1), the pivot bar is visible. include or exclude this flag to show or hide the pivot bar.
- exPivotBarSizable(2), the pivot bar is sizable. Include or exclude this flag to allow or prevent resizing the pivot bar at runtime. If this flag is present, the user can resize the pivot bar by dragging the bottom side of the control. The resize cursor is shown when the pivot bar is resizable and cursor hovers the bottom side of the pivot bar.
- exPivotBarFloat(4), the pivot bar is shown into a floating window. Include this flag, to display the pivot bar to a separate window (a floating panel)
- exPivotBarAutoFit(8), the pivot bar's size is updated automatically so all elements fits the client area (When this flag is present, the height of the pivot's bar is automatically adjusted so the entire content fits the header).
- exPivotBarShowTotals(16), the pivot bar shows the total/sub-total fields. Include or exclude this flag to show or hide the Total field in the pivot bar.
- exPivotBarAutoHide(32), shows the pivotbar as soon as the cursor hovers it, and hides it as soon as the cursor leaves it
- exPivotBarAllowValues(64), specifies if the user can drop values of the columns to the pivot bar.
- exPivotBarAllowFormatAppearance(128), specifies if the user can select a different appearance for columns or total/subtotal fields.
- exPivotBarAllowFormatConditionalAppearance(0x1000000), specifies if the user can select conditional appearance for columns.
- exPivotBarAllowFormatContent(256), specifies if the user can select the way the column's data is displayed.
- exPivotBarAutoUpdate(512), indicates whether the control' list (pivot-table) is automatically updated once the user drops objects in the pivot bar. Exclude this flag from the pivotBarVisible property, and so the Refresh button is shown in the bottom side of the control, and the changes will be applied to the control's list once the user clicks the Refresh button. Once the data is updated, the buttons shows as disabled until next change occurs.
- exPivotBarAllowUndoRedo(1024), indicates if the pivot bar allows Undo/Redo operations, if the user presses the CTRL+Z/Y. The control restores the previously layout once the user presses the CTRL + Z keys combination. The control restores the next layout once the user presses the CTRL + Y keys combination. Exclude this flag, and the Undo/Redo feature is disabled.
- exPivotBarAllowResizeColumns(2048), indicates if the user can resize the columns in the pivot bar. This flag affects the columns to be displayed din the pivot bar, not the columns to be displayed in the control's list.
- exPivotBarHideAddNew(4096), prevents showing the add new buttons in the pivot bar. Clicking the Add New button displays a list of columns or aggregate functions that can be added in the current context.
- exPivotBarContextSortAscending(0x10000), shows the columns alphabetically in ascending order. This flag can be combined with exPivotBarContextSortReverse and so, the columns will be alphabetically displayed in descending order.
- exPivotBarContextSortReverse(0x100000), shows the columns in reverse order. This flag can be combined with exPivotBarContextSortAscending and so, the columns will be alphabetically displayed in descending order.
- exPivotBarReadOnly(0x10000000), makes the pivot bar read only, so no changes are allowed
- exPivotBarSingleAggregate(0x20000000), restructures the pivot-bar into three sections: a pivot-rows section docked to the left, a pivot-columns section docked to the top-right, and a top-left corner section for defining the column and aggregate function for the pivot table (@since 4.2)
Type:
Example
false {boolean} or 0 {number}, the control's pivotbar is hidden
0x10000000 or exontrol.Pivot.PivotBarVisibleEnum.exPivotBarReadOnly {number}, shows a read-only pivot bar (no changes are allowed)
PivotBarVisible
PivotColumns :string
The pivotColumns in BNF notation is:
pivotColumns ::= "<Aggregate>[,<Aggregate>]"where
Aggregate ::= <AggregateKey>(<Index>)[<Options>] | <AggregateKey>(<Index>)[<Options>]/<Index>[:<Order>][<Options>][;<Index>[:<Order>][<Options>]]
Index ::= <Digit>[<Digit>]
Digit ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Order ::= A | D
Options ::= \[<Option> | ,<Option>\]
Option ::= <CheckOption> | content=<RadioOption>
Index, is the index of the column
CheckOption is any Key in the FormatAppearances collection
RadioOption is any Key in the FormatContents collection
AggregateKey, is any Key in the Aggregates collection
Type:
- string
Example
"sum(5)" {string}, adds a single column that displays the sum of data column with the index 5
"sum(5)[content=numeric]/12" {string}, adds a column for each unique value found in the data column with the index 12, and each column displays the sum of data column with the index 5 as numeric, associated with the value of the data column
"sum(5)[content=numeric]/12;6" {string}, groups by data columns with the index 12 and 6, and adds a new column for each unique value found, by displaying the sum of data column with the index 5 as numeric, for the associated values in the data columns
"sum(5)[bold,content=numeric],sum(5)[content=numeric]/12;6" string, adds a single column that displays the sum of data column with the index 5 in bold as numeric, and follows the group-by data columns shown earlier
PivotColumns
PivotColumnsFloatBarVisible :exontrol.Tree.ColumnsFloatBarVisibleEnum
The exontrol.Tree.ColumnsFloatBarVisibleEnum type supports the following values:
- exColumnsFloatBarHidden(0), the pivot-columns floatbar is hidden
- exColumnsFloatBarVisible(1), the pivot-columns floatbar is visible. This flag can be combined with exColumnsFloatBarFloat flag, to show the pivot-columns floatbar as floated
- exColumnsFloatBarFloat(0x100), the pivot-columns floatbar is shows as floated. This flag can be combined with exColumnsFloatBarVisible type.
Type:
- exontrol.Tree.ColumnsFloatBarVisibleEnum
Example
false {boolean} or 0 {number}, the control shows no pivot-columns floatbar
true {boolean} or 1 {number}, the control shows the pivot-columns floatbar
0x101 or exontrol.Tree.ColumnsFloatBarVisibleEnum.exColumnsFloatBarVisible | exontrol.Tree.ColumnsFloatBarVisibleEnum.exColumnsFloatBarFloat {number}, the control's pivot-columns floatbar is visible and floated
PivotColumnsFloatBarVisible
PivotRows :string
The pivotRows in BNF notation is:
pivotRows ::= "<Column>[,<Column>]"where
Column ::= <Index>[:<Order>][<Options>]
Index ::= <Digit>[<Digit>]
Digit ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Order ::= A | D
Options ::= \[<Option> | ,<Option>\]
Option ::= <CheckOption> | content=<RadioOption>
Index, is the index of the column
CheckOption is any Key in the FormatAppearances collection
RadioOption is any Key in the FormatContents collection
Type:
- string
Example
"" {string}, displays the source-data
"0,1:D[bold]" {string}, displays the pivot-table that groups by 0(ascending) and 1(descending) columns, and values of column 1 are shown in bold
PivotRows
PivotTotals :string
The pivotTotals in BNF notation is:
pivotTotals ::= "<Part> | <Part>/<Part>"where
Part ::= "<Aggregate>[,<Aggregate>]"
Aggregate ::= <AggregateKey>[<Options>] | <AggregateKey>(<Index>)[<Options>]
Index ::= <Digit>[<Digit>]
Digit ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Options ::= \[<Option>|,<Option>\]
Option ::= <CheckOption>|content=<RadioOption>
Index, is the index of the column
CheckOption is any Key in the FormatAppearances collection
RadioOption is any Key in the FormatContents collection
AggregateKey, is any Key in the Aggregates collection
Type:
- string
Example
"sum" {string}, adds a total-row (adds the values within each column and shows up the result)
"max/min" {string}, adds a min-row to show up and a max-row to show down
PivotTotals
ReadOnly :boolean
Type:
- boolean
Example
false {boolean}, the user can edit or drag any item
true {boolean}, the user can not edit or drag the items
ReadOnly
Refresh
- Since:
- 4.2
Example
oPivot.Refresh(), refreshes the control, to re-apply the PivotRows, PivotColumns, PivotTotals properties, as "data" option is asynchronous operation.
Refresh
Run :Pivot
Type:
Example
The folowing statements are equivalent:
oPivot.GetRun() {Pivot}, returns the runtime-pivot that displays the generated pivot rows and columns
oPivot.Run {Pivot}, returns the runtime-pivot that displays the generated pivot rows and columns
oPivot.oR {Pivot}, returns the runtime-pivot that displays the generated pivot rows and columns
where oPivot is an object of Pivot type
Run
ScrollBars :exontrol.ScrollBarsEnum
- exNoScroll (0), specifies that no scroll bars are shown (scroll is not allowed)
- exHorizontal (1), specifies that only the horizontal scroll bar is shown
- exVertical (2), specifies that only the vertical scroll bar is shown
- exBoth (3), specifies that both horizontal and vertical scroll bars are shown if the content is larger than the control's client area
- exDisableNoHorizontal (5), specifies that the horizontal scroll bar is always shown; it is disabled if it is unnecessary
- exDisableNoVertical (10), specifies that the vertical scroll bar is always shown; it is disabled if it is unnecessary
- exDisableBoth (15), specifies that both horizontal and vertical scroll bars are always shown; they are disabled if they are unnecessary
- exHScrollOnThumbRelease (0x100), specifies that the control's content is horizontally scrolled as soon as the user releases the thumb of the horizontal scroll bar
- exVScrollOnThumbRelease (0x200), specifies that the control's content is vertically scrolled as soon as the user releases the thumb of the vertical scroll bar
- exScrollOnThumbRelease (0x300), specifies that the control's content is scrolled as soon as the user releases the thumb of the scroll bar
- exHScrollEmptySpace (0x400), allows empty space when the control's content is horizontally scrolled to the end
- exVScrollEmptySpace (0x800), allows empty space when the control's content is vertically scrolled to the end
- exScrollEmptySpace (0xC00), allows empty space when the control's content is scrolled to the end
- exExtendSBS (0x3000), specifies that the control's scroll bars are visible only when the cursor hovers the window; the control's client area is extended over the scroll bar portion
- exMinSBS (0xC000), specifies that the control's scroll bars are shown as minimized
- exHideSBS (0x10000), specifies that no scroll bars are shown (scroll is allowed)
The ScrollPos property scrolls horizontally and/or vertically the control's default view. The onscroll event is fired when the user scrolls the view by mouse, touch or keyboard, or when the view's scroll is changed programmatically by ScrollPos property. By default, the ScrollBars property is set to exBoth value, so both horizontal and vertical scroll bars are shown if the content is larger than the control's client area.
Type:
- exontrol.ScrollBarsEnum
Example
exontrol.ScrollBarsEnum.exBoth or 3 {number}, specifies that both horizontal and vertical scroll bars are shown if the content is larger than the control's client area
exontrol.ScrollBarsEnum.exNoScroll or 0 {number}, specifies that no scroll bars are shown (scroll is not allowed)
ScrollBars
ScrollPos :object|number
x {number}, indicates the horizontal scroll-position (in pixels)
y {number}, indicates the vertical scroll-position (in pixels)
The ScrollBars property specifies how the scroll-bars are being displayed into the control.
Type:
- object | number
Example
{x:0, y:100} {object}, scrolls the control's default view to horizontal position 0 and vertical position 100 (in pixels)
200 {number}, scrolls the control's default view to vertical position 200 (in pixels)
ScrollPos
Selection :Item|array
- {null}, clears the entire selection (unselect all)
- {number}, selects an item giving index within the items collection
- {string}, selects an item giving its identifier/key
- {Item}, selects an item giving its reference
- {Items}, selects all items within the control
- {array}, specifies an array of [type] type, where type could be any number, string or Item type.
Type:
- Item | array
Example
The following statements are equivalents:
oPivot.Selection, gets the control's selection
oPivot.GetSelection(), gets the control's selection
oPivot.Selection = value, sets the control's selection
oPivot.SetSelection(value), sets the control's selection
where oPivot is an object of Pivot type
Selection
Shapes :string
The format of the property is:
"shape(part),shape(part),..."where:
- "shape", defines the shape to apply on the UI part as one of the following:
◦ any of 140 color names any browser supports (such as red, blue, green, ...)
◦ hexadecimal colors, is specified with: #RRGGBB, where the RR (red), GG (green) and BB (blue) hexadecimal integers specify the components of the color. All values must be between 00 and FF (such as #0000ff which defines a blue background)
◦ hexadecimal colors with transparency, is specified with: #RRGGBBAA, where AA (alpha) value must be between 00 and FF (such as #0000ff80 which defines a semi-transparent blue background)
◦ RGB colors, is specified with the RGB(red, green, blue) function. Each parameter (red, green, and blue) defines the intensity of the color and can be an integer between 0 and 255( such as rgb(0,0,255) that defines a blue background)
◦ RGBA colors, are an extension of RGB color values with an alpha channel as RGBA(red, green, blue, alpha) function, where the alpha parameter is a number between 0.0 (fully transparent) and 1.0 (fully opaque) ( such as rgba(0,0,255,0.5) which defines a semi-transparent blue background)
◦ HSL colors, is specified with the HSL(hue, saturation, lightness) function, where hue is a degree on the color wheel (from 0 to 360) - 0 (or 360) is red, 120 is green, 240 is blue. saturation is a percentage value; 0% means a shade of gray and 100% is the full color. lightness is also a percentage; 0% is black, 100% is white. HSL stands for hue, saturation, and lightness - and represents a cylindrical-coordinate representation of colors (such as hsl(240, 100%, 50%) that defines a blue background)
◦ HSLA colors, are an extension of HSL color values with an alpha channel - which specifies the opacity of the object as HSLA(hue, saturation, lightness, alpha) function, where alpha parameter is a number between 0.0 (fully transparent) and 1.0 (fully opaque) (such as hsla(240, 100%, 50%,0.5) that defines a semi-transparent blue background)
◦ a JSON representation of the shape object to apply (while it starts with { character, such as '{"normal": {"primitive": "RoundRect","fillColor":"black","tfi": {"fgColor": "white"}}}')
◦ specifies the name of the field within the exontrol.Shapes.Pivot object (while it starts with a lowercase letter, such as shitem which refers to exontrol.Shapes.Pivot.shitem shape)
◦ specifies the name of the field within the exontrol.Shapes object (while it starts with an uppercase letter, such as Button which refers to exontrol.Shapes.Button shape)
- "part", defines the name of the part the shape is applied on (as defined below)
Part Description "cell" defines the visual-appearance for all cells within the control. The Cell.Shape property changes the shape for the cell itself. The Column.CellShape property gets or sets the shape to apply on the column's body/data/cells. "check" defines the visual-appearance of the check-box "column" defines the visual-appearance of column's header. The Column.Shape property changes the shape for the column itself (column's header). "column-filter" defines the visual-appearance of column's filter-button "expand" defines the visual-appearance of expand/collapse glyphs "filterBar" defines the visual-appearance of the control's filter-bar "filterBar-close" defines the visual-appearance of the filter-bar's close button "frameFit" specifies the visual appearance of the frame that is displayed while fitting objects into the control's client area during a drag operation "frameSel" defines the visual appearance to display a frame while selecting objects by drag "item" defines the visual-appearance for all items within the control. The Item.Shape property defines the shape for the item itself. "itemAlt" defines the visual-appearance for alternate-items (every second item). The Item.Shape property defines the shape for the item itself. "itemDiv" defines the visual-appearance for divider-items (a divider-item displays only a single-cell). The Item.Shape property defines the shape for the item itself. "lock" defines the visual-appearance for locked-part of the tree-view (left and right-side panel of the tree-view, determined by the countLockedColumns field, displays un-scrollable columns) "lock-header" defines the visual-appearance for locked-part of the header (left and right-side panels of the header, determined by the countLockedColumns field, displays un-scrollable columns). The "lock-header" and "lock-header-right" are background shapes and may be overridden by columns, so set exontrol.Shapes.Pivot.shcolumn.normal.fillColor = "rgba(0,0,0,0.25)" for a partially transparent background. "lock-header-right" defines independent styling of right-locked-part of the header (right-side panel of the header, determined by the countLockedColumns field, displays un-scrollable columns). The "lock-header" and "lock-header-right" are background shapes and may be overridden by columns, so set exontrol.Shapes.Pivot.shcolumn.normal.fillColor = "rgba(0,0,0,0.25)" for a partially transparent background. (@since 4.6) "lock-items" defines the visual appearance of top or bottom-locked items in the tree view (these locked items, displayed in the top and bottom panels of the tree view (as determined by the SetLockedItemsCount method), remain fixed and do not scroll) (@since 4.6) "lock-items-bottom" defines independent styling of the bottom-locked items in the tree view (these items appear in the bottom panel (as determined by the SetLockedItemsCount method) and remain fixed without scrolling) (@since 4.6) "lock-right" defines independent styling of the right-locked columns (items section only, not including the header) (right-side panel of the tree-view, determined by the countLockedColumns field, displays un-scrollable columns) (@since 4.6) "multiSel" specifies the visual appearance to show the count of multiple-selected items (for instance, when you drag and drop multiple items at once) "radio" defines the visual-appearance of the radio-button "select" defines the visual-appearance of selected-item "sortBar-caption" defines the visual-appearance of control's sortbar when it displays no columns "unlock" defines the visual-appearance for unlocked-part of the tree-view (ride-side panel of the tree-view, determined by the countLockedColumns field, displays scrollable columns) "unlock-header" defines the visual-appearance for unlocked-part of the header (ride-side panel of the header, determined by the countLockedColumns field, displays scrollable columns)
The expivot/js control supports additional parts as listed in the table below:
Part Description "itemTot" defines the visual-appearance for item of total type "itemSub" defines the visual-appearance for item of sub-total type "pivotBar-addNew" defines the visual-appearance of the "add-new" buttons within the control's pivotbar "pivotBar-aggregate" defines the visual-appearance of an aggregate-glyph within the control's pivotbar "pivotBar-idem" defines the visual-appearance of idem-columns within the control's pivotbar "pivotBar-refresh" defines the visual-appearance of the "Refresh" button within the control's pivotbar "pivotBar-total" defines the visual-appearance of a total-field within the control's pivotbar
The exgantt/js control supports additional parts as listed in the table below:
Part Description "date-ticker" defines the visual-appearance to indicate the date-time being hovered "level" defines the visual-appearance for level's header "nw" defines the visual-appearance to show the non-working units "select-bar" defines the visual-appearance of selected item-bar "select-chart" defines the visual-appearance of selected-item (applied to chart section only) "select-date" defines the visual-appearance to display a selected-date "select-overview" defines the visual-appearance to display the overview-selection "select-overview-resize" defines the visual-appearance to display left/right resize-margins of the overview-selection (@since 2.4) "selectout-overview" defines the visual-appearance to display the left/right parts outside of the overview-selection (@since 2.4) "selectunit-overview" defines the visual-appearance to display the selected unit within the control's overview (@since 2.4) "unavailableunit-overview" defines the visual-appearance to display unavailable-units within the control's overview (@since 2.4)
Type:
- string
Example
null {null}, specifies the default visual appearance
"" {string}, no shape (no visual appearance is applied to any part of the control)
"red(itemAlt)", "#FF0000(itemAlt)", "rgb(255,0,0)(itemAlt)", "rgba(255,0,0,1)(itemAlt)" {string}, shows alternate-items in red
'{"hover":{"fillColor":"black","tfi":{"fgColor":"white"}}}(item)' {string}, shows the item in white on a black-background, while the cursor hovers it
"xxx(d),yyy(d,m),zzz(y)" {string}, specifies that the exontrol.Shapes.Pivot.xxx combined with exontrol.Shapes.Pivot.yyy object defines the visual appearance of "d" part of the control, exontrol.Shapes.Pivot.yyy object defines the visual appearance of "m" part of the control and exontrol.Shapes.Pivot.zzz object defines the visual appearance of "y" part of the control
Shapes
Shortcuts :object
Type:
- object
Example
The following sample removes the selection (calls the RemoveSelection() method) once the user presses the Delete key:
oPivot.Shortcuts.Add( "Delete", oPivot.RemoveSelection, oPivot );
where oPivot is an object of Pivot type
Shortcuts
ShowBranchRows :exontrol.Pivot.ShowBranchRowsEnum
The ShowBranchRowsEnum type supports the following values:
- exBranchTree(1), the exBranchTree mode presents data in a tree structure within a single column for pivot row columns featuring +/- buttons for node expansion and collapse
- exBranchColumns(3), in exBranchColumns mode, a new column is added for each pivot row column without displaying +/- buttons.
- exBranchRowDivider(0x10), the branch rows display information across the entire line. The exBranchRowDivider flag can only be combined with the exBranchTree or exBranchColumns flags
- exBranchIncludeAggregate(0x20), the branch rows displays result of aggregate function. The exBranchIncludeAggregate flag can only be combined with the exBranchTree or exBranchColumns flags
Type:
- exontrol.Pivot.ShowBranchRowsEnum
- Since:
- 4.1
Example
0x21 or exontrol.Pivot.ShowBranchRowsEnum.exBranchTree | exontrol.Pivot.ShowBranchRowsEnum.exBranchIncludeAggregate {number}, the data is presented in a tree structure, while the branch rows display the results of aggregate functions.
ShowBranchRows
ShowDataOnDblClick :boolean
Type:
- boolean
Example
false {boolean}, no effect, instead the expandOnDblClick has effect (specifies whether the item is expanded or collapsed once the user double-clicks the item)
true {boolean}, the control displays the original data that generated the result, as soon as user double-clicks the item (expandOnDblClick has no effect)
ShowDataOnDblClick
ShowIdem :string
Type:
- string
- Since:
- 4.2
Example
"" {string} or null {null}, no effect
" " {string}, empty string is displayed for repeated captions
"<fgcolor lightgray>&#12291;" {string}, displays the " symbol (ditto mark or quote character) for repeated captions in light gray (idem).
ShowIdem
ShowLockedItems :boolean
Type:
- boolean
Example
false {boolean}, the control's locked/fixed items are not shown
true {boolean}, the control's locked/fixed items are visible
ShowLockedItems
SingleSel :Pivot.SingleSelEnum
Type:
Example
0 or exontrol.Pivot.SingleSelEnum.exDisableSel {number}, disables selecting any item
3 or exontrol.Pivot.SingleSelEnum.exSingleSel | exontrol.Pivot.SingleSelEnum.exEnableSel {number}, enables control's single selection, so only a single item can be selected
6 or exontrol.Pivot.SingleSelEnum.exToggleSel | exontrol.Pivot.SingleSelEnum.exSingleSel {number}, enables control's single and toggle selection, which means that once a item is selected it gets unselected once it is clicked, or reverse, and only a single-item can be selected at once.
SingleSel
SingleSort :boolean
Type:
- boolean
Example
false {boolean}, specifies that the control supports one ore more sorted-columns
true {boolean}, the control supports single-column sorts only
SingleSort
SortBarCaption :string
Type:
- string
Example
null {null}, the control's sortbar shows the default-caption
"Drag a <b>column</b> header here to group by that column." {string}, changes the caption to be displayed on the control's sortbar while it is empty.
SortBarCaption
SortBarVisible :boolean
Type:
- boolean
Example
false {boolean}, hides the control's sortbar
true {boolean}, shows the control's sortbar
SortBarVisible
SortOnClick :Pivot.SortOnClickEnum
- exNoSort(0), the column is not sorted when user clicks the column's header.
- exDefaultSort(-1), The column gets sorted when user the clicks the column's header.
- exUserSort(-1), The control displays the sort icons, but it doesn't sort the column (not supported)
Type:
Example
null {null}, specifies the control's default sort on click, equivalent of exDefaultSort
0 {number}, no column gets sorted once the user clicks any column's header
SortOnClick
(readonly) Statistics :string
Size: 1,536x754
Zoom: 100%
Column: 4/4
Item: 32/55
Cell: 128/220
Sel: 1
Type:
- string
Example
The following statements are equivalents:
oPivot.Statistics, gives statistics data of objects being hold by the control
oPivot.GetStatistics(), gives statistics data of objects being hold by the control
where oPivot is an object of Pivot type
Statistics
Tfi :string|object
The value as {string} supports any of the following keywords (each keyword can be specified using first letters only such as "b" for "bold) separated by space characters:
- bold, displays the text in bold (equivalent of <b> tag)
- italic, displays the text in italics (equivalent of <i> tag)
- underline, underlines the text (equivalent of <u> tag)
- strikeout, specifies whether the text is strike-through (equivalent of <s> tag)
- <fontName name>, specifies the font's family (equivalent of <font name> tag)
- <fontSize size>, specifies the size of the font (equivalent of <font ;size> tag)
- <fgColor CSSColor>, specifies the text's foreground color (equivalent of <fgcolor> tag)
- <bgColor CSSColor>, specifies the text's background color (equivalent of <bgcolor> tag)
- <shaColor CSSColor;width;offset>, defines the text's shadow (equivalent of <sha color;width;offset> tag)
- <outColor CSSColor>, shows the text with outlined characters (CSScolor) (equivalent of <out color> tag)
- <graColor CSSColor;mode;blend>, defines a gradient text (equivalent of <gra color;mode;blend> tag)
Any other word within the string value that's not recognized as a keyword is interpreted as:
- name of the font (not a number), specifies the font's family (equivalent of <font name> tag)
- size of the font (number), specifies the size of the font (equivalent of <font ;size> tag)
The value as {object} supports any of the following fields:
- bold {boolean}, displays the text in bold (equivalent of <b> tag)
- italic {boolean}, displays the text in italics (equivalent of <i> tag)
- underline {boolean}, underlines the text (equivalent of <u> tag)
- strikeout {boolean}, specifies whether the text is strike-through (equivalent of <s> tag)
- fontName {string}, specifies the font's family (equivalent of <font name> tag)
- fontSize {number}, specifies the size of the font (equivalent of <font ;size> tag)
- fgColor {string}, specifies the text's foreground color (CSScolor) (equivalent of <fgcolor> tag)
- bgColor {string}, specifies the text's background color (CSScolor) (equivalent of <bgcolor> tag)
- shaColor {object}, specifies an object of {color, width, offset} type that defines the text's shadow (equivalent of <sha color;width;offset> tag), where:
- color {string}, defines the color of the text's shadow (CSScolor)
- width {number}, defines the size of the text's shadow
- offset {number}, defines the offset to show the text's shadow relative to the text
- outColor {string}, shows the text with outlined characters (CSScolor) (equivalent of <out color> tag)
- graColor {object}, specifies an object of {color, mode, blend} type that defines a gradient text (equivalent of <gra color;mode;blend> tag), where:
- color {string}, defines the gradient-color (CSScolor)
- mode {number}, defines the gradient direction as 0 (left-right), 1 (default, top-bottom), 2 (left-center-right), and 3 (top-center-bottom)
- blend {number}, defines the gradient blend as a value between 0 and 1
CSSColor or CSS legal color values can be specified by the following methods:
- Hexadecimal colors, is specified with: #RRGGBB, where the RR (red), GG (green) and BB (blue) hexadecimal integers specify the components of the color. All values must be between 00 and FF. For example, #0000ff value is rendered as blue, because the blue component is set to its highest value (ff) and the others are set to 00.
- Hexadecimal colors with transparency, is specified with: #RRGGBBAA, where AA (alpha) value must be between 00 and FF. For example, #0000ff80 defines a semi-transparent blue.
- RGB colors, is specified with the RGB(red, green, blue) function. Each parameter (red, green, and blue) defines the intensity of the color and can be an integer between 0 and 255. For example, rgb(0,0,255) defines the blue color.
- RGBA colors, are an extension of RGB color values with an alpha channel as RGBA(red, green, blue, alpha) function, where the alpha parameter is a number between 0.0 (fully transparent) and 1.0 (fully opaque). For example, rgba(0,0,255,0.5) defines a semi-transparent blue.
- HSL colors, is specified with the HSL(hue, saturation, lightness) function, where hue is a degree on the color wheel (from 0 to 360) - 0 (or 360) is red, 120 is green, 240 is blue. saturation is a percentage value; 0% means a shade of gray and 100% is the full color. lightness is also a percentage; 0% is black, 100% is white. HSL stands for hue, saturation, and lightness - and represents a cylindrical-coordinate representation of colors. For example, hsl(240, 100%, 50%) defines the blue color.
- HSLA colors, are an extension of HSL color values with an alpha channel - which specifies the opacity of the object as HSLA(hue, saturation, lightness, alpha) function, where alpha parameter is a number between 0.0 (fully transparent) and 1.0 (fully opaque). For example, hsla(240, 100%, 50%,0.5) defines a semi-transparent blue.
- Predefined/Cross-browser color names, 140 color names are predefined in the HTML and CSS color specification. For example, blue defines the blue color.
Type:
- string | object
Example
null {null}, the tfi field is ignored
"bold monospace 16 <fg blue>" {string}, defines Monospace font of 16px height, bold and blue
{bold: true, fontName: "monospace", fontSize: 16, fgColor: "blue"} {object}, defines Monospace font of 16px height, bold and blue
Tfi
ToolTipDelay :number
Type:
- number
Example
0 {number}, the tooltip is shown "immediately"
128 {number}, the tooltip is displayed in 128 ms.
ToolTipDelay
ToolTipPopDelay :number
The property supports the following values:
- 0 {number}, no tooltip is shown for any object (disabled)
- -1 {number}, the tooltip stays indefinitely (negative)
- positive {number}, the tooltip is visible for the specified number of milliseconds (for example, 1000 means that the tooltip is visible for 1 second)
By default, the tooltip remains visible for 5000 milliseconds.
Type:
- number
Example
0 {number}, no tooltip is shown for any object (disabled)
-1 {number}, the tooltip stays indefinitely (negative)
1000 {number}, the tooltip is visible for 1 second
ToolTipPopDelay
ToolTipWidth :number
0 {number}, no tooltip is shown for any object (disabled)The default value is -1.
-1 {number}, the tooltip's content is displayed on a single line (without limit the width of it)
300 {number}, the tooltip's max-width is 300 pixels
Type:
- number
Example
0 {number}, no tooltip is shown for any object (disabled)
-1 {number}, the tooltip's content is displayed on a single line (without limit the width of it)
300 {number}, the tooltip's max-width is 300 pixels
ToolTipWidth
TreeColumnIndex :any
Type:
- any
Example
null {null}, no column displays the hierarchy.
0 {number}, the column with the index 0, displays the hierarchy (displays the expand/collapse glyphs)
"xxx" {string}, the column with the key or plain-caption on "xxx" displays the hierarchy.
TreeColumnIndex
WheelChange :number
Type:
- number
Example
0 {number}, locks any action the mouse's wheel performs
18 {number}, scrolls the control by 18-pixels when mouse's wheel is rotated (SHIFT + wheel scrolls horizontally)
WheelChange
Zoom :number
Type:
- number
Example
null {null}, Specifies normal-view (100%)
150 {number}, Indicates that the control's content is magnfied to 150%
Zoom
ZoomLevels :string
Type:
- string
Example
null {null}, Specifies that the control's zoom factor is always 100%
150 {number}, Specifies that the control's zoom factor is always 150%
"50,100,200,350" {string}, Indicates that the zoom-factor can be any of selected values, and the margins of zoom-factor is 50% to 350%
ZoomLevels
oTV :TV
Type:
Example
The following statements are equivalent:
oPivot.oTV.SetScrollPos({x: 100}); // sets the horizontal scroll-position of the default tree-view to 100
oPivot.ScrollPos = {x: 100}; // sets the horizontal scroll-position of the default tree-view to 100
where oPivot is an object of Pivot type
oTV
Methods
AddTreeView(name, attributesopt) → {TV}
Parameters:
| Name | Type | Attributes | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
name |
string | defines the name of the tree-view to be created. It must be an unique name. The "tree" defines the control's default-tree view, and it is reserved. If missing, the "tree.split" is used instead. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
attributes |
exontrol.W.Options |
<optional> |
A exontrol.W.Options that defines the attributes of the window.
Properties
|
Returns:
- Type
- TV
Example
oPivot.AddTreeView("2nd",{Background: "black", Foreground: "white", Dock: 3}) {TV}, creates a new tree-view named "2nd", with black background, white foreground and docked to the left side of the control.
AddTreeView
ApplyFilter()
Example
oPivot.ApplyFilter(), (re-)applies the control's filter (if any)
ApplyFilter
BeginUpdate()
Example
The following statement are equivalent:
oPivot.Update(function()
{
...
});
or
oPivot.BeginUpdate();
...
oPivot.EndUpdate();
as the Update() method locks the control's paint during the callback, and invalidates the control once the method ends.
BeginUpdate
Cell(item, column) → {Cell}
Parameters:
| Name | Type | Description |
|---|---|---|
item |
any | The item parameter could be any of the following:
|
column |
any | The column parameter could be any of the following:
|
Returns:
- Type
- Cell
Example
The following statements are equivalents:
oPivot.Cell(0, 0), gets the cell of the first item and the first column
oPivot.Cell("item1", "column1"), gets the cell of the item with identifier/key "item1" and the column with identifier/key/caption/plain-caption "column1"
oPivot.Cell(oItem, oColumn), gets the cell of the item specified by the object reference oItem and the column specified by the object reference oColumn
where oPivot is an object of Pivot type, oItem is an object of Item type and oColumn is an object of Column type
Cell
ChooseFile(error) → {object}
Parameters:
| Name | Type | Description |
|---|---|---|
error |
object | Specifies a string (message) or an object of DOMException (or any other) type that holds defines the error to display. |
Returns:
- i {HTMLInputElement}, specifies the "input-file" element to let user selects a local file to import into the control
- s {HTMLSpanElement}, indicates the "span" element that displays the error
- Type
- object
Example
oPivot.ChooseFile("message"); // displays "message" as an error to the user, and adds an "input-file" element to let user selects a local file to import into the control
ChooseFile
Clear()
Example
oPivot.Clear(); // clears the control's data (columns, items and filter)
Clear
ClearFilter()
Example
oPivot.ClearFilter(), clears the control's filter (if any)
ClearFilter
CollapseAll()
Example
oPivot.CollapseAll(), collapses all items
oPivot.ExpandAll(false), collapses all items
CollapseAll
Column(column) → {Column}
Parameters:
| Name | Type | Description |
|---|---|---|
column |
any | The column parameter could be any of the following:
|
Returns:
- Type
- Column
Example
The following statements are equivalents:
oPivot.Column(0), gets the first column
oPivot.Column("column1"), gets the column with identifier/key/caption/plain-caption "column1"
where oPivot is an object of Pivot type
Column
ConditionalFormat(id) → {ConditionalFormat}
Parameters:
| Name | Type | Description |
|---|---|---|
id |
any | The id parameter could be any of the following:
|
Returns:
- Type
- ConditionalFormat
Example
The following statements are equivalents:
oPivot.ConditionalFormat(0), gets the first conditional format
oPivot.ConditionalFormat("cf1"), gets the conditional format with identifier/key "cf1"
where oPivot is an object of Pivot type
ConditionalFormat
EndUpdate()
Example
The following statement are equivalent:
oPivot.Update(function()
{
...
});
or
oPivot.BeginUpdate();
...
oPivot.EndUpdate();
as the Update() method locks the control's paint during the callback, and invalidates the control once the method ends.
EndUpdate
EnsureVisibleClient(clientA, ensureOptsopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
clientA |
object | The client parameter could be any of the following:
|
|
ensureOpts |
object |
<optional> |
Specifies different options to run the current method as explained:
|
Example
oPivot.EnsureVisibleClient(oPivot.Column(2)), ensures that the column at index 2 fits the control's client area
oPivot.EnsureVisibleClient(oPivot.Item(10), {expandParents: true}), expands the parent items of the item at index 10 and ensures that the item fits the control's client area (@since 5.1)
oPivot.EnsureVisibleClient(-1, {expandParents: true}), expands the parent items of the last item and ensures that the last item fits the control's client area (@since 5.1)
EnsureVisibleClient
EnsureVisibleSelection(ensureOptsopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
ensureOpts |
object |
<optional> |
Specifies different options to run the current method as explained:
|
Example
oPivot.EnsureVisibleSelection(), scrolls the control's content to ensure that the control's selection fits the control's client area
oPivot.EnsureVisibleSelection({expandParents: true}), expands the parent items of the control's selection and scrolls the control's content to ensure that the control's selection fits the control's client area
oPivot.EnsureVisibleSelection({selection: [oPivot.Item(10)], expandParents: true}), expands the parent items of the item at index 10 and scrolls the control's content to ensure that the item fits the control's client area (@since 5.1)
EnsureVisibleSelection
ExpandAll(bExpand)
Parameters:
| Name | Type | Description |
|---|---|---|
bExpand |
boolean | Specifies whether all items are expanded or collapsed (true if missing/empty/undefined). |
Example
oPivot.ExpandAll(), expands all items
oPivot.ExpandAll(false), collapses all items
ExpandAll
Export(exportOptsopt) → {any}
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
exportOpts |
object |
<optional> |
Indicates the options to export control's data. The exportOpts object can include any of the following fields:
|
Returns:
- Type
- any
FindItem(caption, column, start) → {Item}
Parameters:
| Name | Type | Description |
|---|---|---|
caption |
string | Specifies the caption to look for. |
column |
any | Indicates the column being searched as any of the following:
|
start |
any | Specifies the item to start seraching from, as one of the following:
|
- Since:
- 3.3
Returns:
- Type
- Item
Example
FindItem(10248) {Item}, returns undefined if 10248 is not found in the first column, or returns the item
FindItem('Filimon', 'Last', 10) {Item}, searches the 'Last' column for the exact caption 'Filimon' starting after the item with index 10, and returns the item or undefined if not found
FindItem('Mihai', 'First') {Item}, searches the 'First' column for the exact caption 'Mihai' starting from the first item, and returns the item or undefined if not found
FindItem
FitToClient(rtLayoutopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
rtLayout |
Array.<number> |
<optional> |
Indicates null for entire layout or an array of [x,y,width,height] type that defines the absolute-coordinate to fit to client. |
Example
oPivot.FitToClient(), ensures that the entire layout fits the control's client area by performing the required scroll and zoom operations with a smooth transition (if the smooth option is set to a value greater than zero)
oPivot.FitToClient([0,0,1000,1000]), ensures that the layout defined by the absolute-coordinates of [0,0,1000,1000] fits the control's client area by performing the required scroll and zoom operations with a smooth transition (if the smooth option is set to a value greater than zero)
FitToClient
GetCanvas() → {HTMLCanvasElement}
- Since:
- 1.8
Returns:
- Type
- HTMLCanvasElement
Example
exontrol.CC.Resize( oPivot.GetCanvas(), 800, 600 ); // resizes the control's canvas to 800x600 pixels
GetCanvas
GetLockedItem(alignment, index) → {object}
Parameters:
| Name | Type | Description |
|---|---|---|
alignment |
boolean | Specifies whether the method refers to top(false) or bottom(true) locked items. |
index |
any | The item parameter could be any of the following:
|
Returns:
- Type
- object
Example
oPivot.GetLockedItem(false, 0); // gets the first locked item on the top side of the control
oPivot.GetLockedItem(true, "itemKey"); // gets the locked item with the identifier/key "itemKey" on the bottom side of the control
GetLockedItem
GetLockedItemsCount(alignment) → {number}
Parameters:
| Name | Type | Description |
|---|---|---|
alignment |
boolean | Specifies whether the method refers to top(false) or bottom(true) locked items. |
Returns:
- Type
- number
Example
oPivot.GetLockedItemsCount(false); // gets the number of locked items on the top side of the control
GetLockedItemsCount
Home()
Example
oPivot.Home(), zooms to 100% and scrolls the control to origin (0,0)
Home
Import(source, importOptsopt)
Parameters:
| Name | Type | Attributes | Description | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
source |
any | The source parameter may be one of the following:
|
||||||||||||||||||||||||||||||||||
importOpts |
object |
<optional> |
The importOpts parameter specifies options to import data into the control as object of ImportOptions type.
Properties
|
Example
"xml/datasource.xml" {string}, imports data from datasource.xml file
"Item 1.1,SubItem 1.2\r\nItem 1.2,SubItem 2.2" {string}, creates two columns and two rows
[["Item 1.1","Item 1.2"],["Item 2.1","Item 2.2"]] {array}, creates two columns and two rows
{columns: [{caption: "C1", displayFilterButton: true}, "C2"], items: [{value: ["R1.1", "R1.2"], items: [["C1.1", "C1.2"], ["C2.1", "C2.2"], ["C3.1", "C3.2"]]}, ["R2.1", "R2.2"]]} {object}, defines a dataset with two columns labeled as C1 (with a filter button for user value filtering) and C2. It includes two root items and three child items under the first root, each specifying values for their respective cells in the table (@since 3.2)
Import
Item(item) → {Item}
Parameters:
| Name | Type | Description |
|---|---|---|
item |
any | The item parameter could be any of the following:
|
Returns:
- Type
- Item
Example
The following statements are equivalents:
oPivot.Item(0), gets the first item
oPivot.Item("item1"), gets the item with identifier/key "item1"
where oPivot is an object of Pivot type
Item
LoadXML(source)
Parameters:
| Name | Type | Description |
|---|---|---|
source |
any | The source parameter may be one of the following:
|
Example
oPivot.LoadXML("xml/datasource.xml") {string}, imports data from datasource.xml file
LoadXML
Refresh()
For example, call Refresh() when:
- The control's container has been resized and the layout must be recalculated.
- External CSS or styling changes affect the control's appearance.
- The control becomes visible after being hidden.
- You need to ensure the UI is visually synchronized with its current internal state.
The method does not alter the control's data, options, or configuration - it only updates the rendered output.
You can use the Update() method to perform multiple changes at once. The Smooth() method performs a smooth-transition from a layout to another. The Refresh() method is not required to be called when you use the Update() or Smooth() methods, because the methods already maintain performance while performing multiple changes to the control.
Example
oPivot.Refresh(), refreshes the control
Refresh
RemoveSelection() → {number}
Returns:
- Type
- number
RemoveTreeView(name)
Parameters:
| Name | Type | Description |
|---|---|---|
name |
string | defines the name of the tree-view to be removed. The "tree" defines the control's default-tree view, and it can not be removed. |
Example
oPivot.RemoveTreeView("2nd"), removes the tree-view named "2nd" previously created by AddTreeView() method.
RemoveTreeView
Scroll(key)
Parameters:
| Name | Type | Description |
|---|---|---|
key |
string | Specifies a key to determine the direction to scroll the view as follows:
|
Example
The following sample code shows how to scroll the view by a page up or down using the Scroll() method:
oPivot.on("{PageUp}", oPivot.Scroll.bind(oPivot, "PageUp"));
oPivot.on("{PageDown}", oPivot.Scroll.bind(oPivot, "PageDown"));
where oPivot is an object of Pivot type
Scroll
Select(key)
Parameters:
| Name | Type | Description |
|---|---|---|
key |
string | Specifies a key which determines what Select method does:
|
- Since:
- 1.6
Example
The following sample selects up or down item once the user presses "ArrowUp" or "ArrowDown" key:
oPivot.on("{Up}", oPivot.Select.bind(oPivot, "Up"));
oPivot.on("{Down}", oPivot.Select.bind(oPivot, "Down"));
where oPivot is an object of Pivot type
Select
SelectAll(toSelect)
Parameters:
| Name | Type | Description |
|---|---|---|
toSelect |
any | Specifies the items to select within the control as one of the following values:
|
Example
oPivot.SelectAll("vis"); // selects the visible items only (for instance, it does not select items that does not match the filter)
SelectAll
SetLockedItemsCount(alignment, value) → {object}
Parameters:
| Name | Type | Description |
|---|---|---|
alignment |
boolean | Specifies whether the method refers to top(false) or bottom(true) locked items. |
value |
number | Specifies the number of items fixed on the top or bottom side of the control. |
Returns:
- Type
- object
Example
oPivot.SetLockedItemsCount(false, 2); // specifies that there are 2 locked items on the top side of the control
oPivot.SetLockedItemsCount(true, 0); // specifies that there is no locked item on the bottom side of the control
SetLockedItemsCount
Smooth(callback, thisArg, oSmoothOptsopt, thisArg)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
callback |
callback | Indicates a callback function that generates the new layout for the control ( such as removing or adding new items to the control). The callback is provided with no arguments. | |
thisArg |
any | Specifies the value of this keyword for callback functions. If missing, the TV object reference is used instead. | |
oSmoothOpts |
object |
<optional> |
Indicates an object of {cbkR,cbkI,cbkT} type that defines callback to invoke when Smooth operation begins, progress and ends as explained below:
|
thisArg |
any | defines the value of "this" keyword during cbkI, cbkR or cbkT callbacks. |
Example
oPivot.Smooth(function()
{
// performs multiple changes to the control, such as removing or adding new items to the control
})
Smooth
Soom(zoomTo, oPointAbsopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
zoomTo |
number | Indicates a numeric value that defines the target-zoom factor as a value between 10 and 1000 (no zoom if null or undefined). | |
oPointAbs |
object |
<optional> |
Specifies an object of {x,y} or array as [x,y] type that specifies the absolute-coordinates of the point to scroll into the client. |
Example
oPivot.Soom(100, [0,0]), zooms to 100% and brings the origin (0,0) at its original position (Home)
Soom
TreeView(name) → {TV}
Parameters:
| Name | Type | Description |
|---|---|---|
name |
string | Defines the name of the tree-view to request ("tree" defines the control's default-tree view). |
- Since:
- 1.1
Returns:
- Type
- TV
Example
oPivot.TreeView("tree") {TV}, gets the control's default-tree view, equivalent of oTV member.
oPivot.TreeView("2nd") {TV}, gets the tree-view named "2nd" previously created by AddTreeView() method.
TreeView
UnselectAll()
Example
oPivot.UnselectAll(); // clears the control's selection
UnselectAll
Update(callback, thisArgopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
callback |
callback | Indicates a callback to perform changes within the control. | |
thisArg |
any |
<optional> |
Specifies the value of "this" keyword during the callback. If missing/empty/undefined the thisArg points to the control itself, as an object of Pivot type. |
Example
The following statement are equivalent:
oPivot.Update(function()
{
...
});
or
oPivot.BeginUpdate();
...
oPivot.EndUpdate();
as the Update() method locks the control's paint during the callback, and invalidates the control once the method ends.
Update
feC(callback, thisArgopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
callback |
callback | A function of callback(oColumn) type that's called for every column, where oColumn is:
|
|
thisArg |
any |
<optional> |
Indicates the value of "this" keyword during the callback. If missing/empty/undefined the thisArg points to the control itself, as an object of Pivot type. |
- Since:
- 3.3
Example
The following sample enumerates all columns of the control:
oPivot.feC(function(oColumn)
{
console.log(exontrol.ToString.Quote(oColumn));
})
feC
feCU(callback, thisArgopt) → {any}
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
callback |
callback | A function of callback(oItem) {any} type that's called for every item, where oItem is
|
|
thisArg |
any |
<optional> |
Indicates the value of "this" keyword during the callback. If missing/empty/undefined the thisArg points to the control itself, as an object of Pivot type. |
- Since:
- 3.3 The following sample searches for the first column with AllowSizing property set to false: console.log(oPivot.feCU(function(oColumn) { return !oColumn.AllowSizing && oColumn; }));
Returns:
- Type
- any
feI(callback, thisArgopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
callback |
callback | A function of callback(oItem) type that's called for every item, where oItem is:
|
|
thisArg |
any |
<optional> |
Indicates the value of "this" keyword during the callback. If missing/empty/undefined the thisArg points to the control itself, as an object of Pivot type. |
Example
The following sample enumerates all items of the control:
oPivot.feI(function(oItem, index)
{
console.log(exontrol.ToString.Quote(oItem));
})
feI
feIU(callback, thisArgopt) → {any}
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
callback |
callback | A function of callback(oItem) {any} type that's called for every item, where oItem is
|
|
thisArg |
any |
<optional> |
Indicates the value of "this" keyword during the callback. If missing/empty/undefined the thisArg points to the control itself, as an object of Pivot type. |
Returns:
- Type
- any
Example
The following sample searches for the item with "10248" caption in the first column and displays it:
console.log(
oPivot.feIU(function(oItem, index)
{
return oItem.Cell(0) == "10248" && oItem
})
);
feIU
off(event, listener, methodopt)
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
event |
string | Indicates the event to unbind, which can either be:
|
|
listener |
object | callback | Defines the listener to remove, which can either be:
|
|
method |
string |
<optional> |
Defines an optional case-sensitive string specifying the method on the listener to remove. If not provided, the listener[type]() function is used. This parameter is ignored when the listener is a JavaScript callback function. |
- Since:
- 4.4
Example
The following example removes the click event handler from the control:
oPivot.off("click");
where oPivot is an object of Pivot type.
This sample is equivalent to:
oPivot.Listeners.Remove("onclick");
The following example removes all event handlers from the control:
oPivot.off();
where oPivot is an object of Pivot type.
This sample is equivalent to:
oPivot.Listeners.Clear();
or
oPivot.Listeners.Remove();
off
on(event, listener, methodopt) → {object}
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
event |
string | Specifies the event to listen for or a keyboard shortcut, in one of the following forms:
|
|
listener |
object | callback | Defines the listener to add, which can either be:
|
|
method |
string |
<optional> |
Defines an optional case-sensitive string specifying the method on the listener to handle the event. If not provided, the listener[type]() function is used. This parameter is ignored when the listener is a JavaScript callback function. |
- Since:
- 4.4
Returns:
- type {string}, specifies a case-sensitive string that specifies the type of event to listen for
- do(event) {callback}, indicates a function that can be invoked to trigger the specified event for all listeners registered for that event type
- callback {callback}, defines the listener's callback function
- thisArg {any}, defines the value of this during the listener's callback execution
- lock {number}, locks or unlocks the invocation of the listener's callback
- name {string}, defines the name of the callback, mostly used for debugging purposes
- equal(oCompareListenerCallback) {callback}, indicates a function of callback(oCompareListenerCallback) {boolean} type compares the current object with the provided object. It returns true if the objects contain the same data
- Type
- object
Example
The following example logs event details when the control is clicked:
oPivot.on("click", function(oEvent)
{
console.log(oEvent);
});
where oPivot is an object of Pivot type.
This sample is quivalent of
oPivot.Listeners.Add("onclick", function (oEvent)
{
console.log(oEvent);
});
on
Events
onaddcolumn
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
Column | Indicates an object of Column type being added. |
Example
The following samples display the column being added:
oPivot.onaddcolumn = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onaddcolumn", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("addcolumn", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onaddcolumn
onaddgroupitem
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
Item | Indicates the new group-item being created and added, as an object of Item type. |
Example
The following samples display the group-item being added:
oPivot.onaddgroupitem = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onaddgroupitem", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("addgroupitem", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onaddgroupitem
onadditem
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
Item | Indicates an object of Item type being added. |
Example
The following samples display the item being added:
oPivot.onadditem = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onadditem", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("additem", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onadditem
ondolayout
Example
The following samples display a message once the pivot's layout (columns, rows or totals) has been changed:
oPivot.ondolayout = function )
{
console.log("the layout has been changed");
}
or
oPivot.Listeners.Add("ondolayout", function ()
{
console.log("the layout has been changed");
})
or
oPivot.on("dolayout", function ()
{
console.log("the layout has been changed");
})
where oPivot is an object of Pivot type
ondolayout
onerror
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
object | Specifies an object of DOMException (or any other) type that holds information about the error. |
Example
The following samples display the error once it occurs:
oPivot.onerror = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onerror", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("error", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onerror
onfilter
Type:
- object
Example
The following samples display a message once a filter is applied or cleared:
oPivot.onfilter = function ()
{
console.log("onfilter");
}
or
oPivot.Listeners.Add("onfilter", function ()
{
console.log("onfilter");
})
or
oPivot.on("filter", function ()
{
console.log("onfilter");
})
where oPivot is an object of Pivot type
onfilter
onload
Type:
- object
Example
The following samples display a message once the control loads or imports new data (for instance, the user drags and drops a file into the control):
oPivot.onload = function ()
{
alert("onload");
}
or
oPivot.Listeners.Add("onload", function ()
{
alert("onload");
})
or
oPivot.on("load", function ()
{
alert("onload");
})
where oPivot is an object of Pivot type
onload
onremovecolumn
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
Column | Indicates an object of Column type being removed. |
Example
The following samples display the column being removed:
oPivot.onremovecolumn = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onremovecolumn", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("removecolumn", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onremovecolumn
onremoveitem
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
Item | Indicates an object of Item type being removed. |
Example
The following samples display the item being removed:
oPivot.onremoveitem = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onremoveitem", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("removeitem", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onremoveitem
onselchange
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
object | holds the control's selection, as explained:
|
Example
The following samples display the control's selection once it changes:
oPivot.onselchange = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onselchange", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("selchange", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onselchange
onsort
Type:
- object
Parameters:
| Name | Type | Description |
|---|---|---|
oEvent |
number | defines the sort-operation it occured as a combination of one or more flags:
|
Example
The following samples display the sort-operation once the user sorts or group-by a column:
oPivot.onsort = function (oEvent)
{
console.log(oEvent);
}
or
oPivot.Listeners.Add("onsort", function (oEvent)
{
console.log(oEvent);
})
or
oPivot.on("sort", function (oEvent)
{
console.log(oEvent);
})
where oPivot is an object of Pivot type
onsort
onviewchange
Once the onviewchange event occurs the following properties of CustomView are updated:
- Data property, {array} retrieves the data to be represented (the pivot-table) as a 2-dimensional array
- Columns property, {string} retrieves the names of the columns, represented as a comma-separated list
- Categories property, {number} retrieves the number of leading columns in Data that represent the categories
- Series property, {number} defines the number of trailing columns in Data that represent the series
- Stack property, {string} retrieves the name of the stack for each exported column (columns generated from the same pivot-column are grouped together in a stack), represented as a comma-separated list.
- Items property, {number} retrieves the number of rows in Data
- Since:
- 4.3
Example
The following samples display a message once the pivot's view has been changed:
oPivot.onviewchange = function )
{
console.log("the view has been changed");
}
or
oPivot.Listeners.Add("onviewchange", function ()
{
console.log("the view has been changed");
})
or
oPivot.on("viewchange", function ()
{
console.log("the view has been changed");
})
where oPivot is an object of Pivot type
onviewchange