com.smartgwt.client.widgets.tree

## Class TreeGrid

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.smartgwt.client.widgets.BaseWidget
      - - com.smartgwt.client.widgets.Canvas
        - - com.smartgwt.client.widgets.layout.Layout
          - - com.smartgwt.client.widgets.layout.VLayout
            - - com.smartgwt.client.widgets.grid.ListGrid
              - - com.smartgwt.client.widgets.tree.TreeGrid

- All Implemented Interfaces:
    com.google.gwt.event.logical.shared.HasAttachHandlers, com.google.gwt.event.shared.HasHandlers, com.google.gwt.user.client.EventListener, com.google.gwt.user.client.ui.HasVisibility, com.google.gwt.user.client.ui.IsWidget, LogicalStructure, DataBoundComponent, HasClearHandlers, HasClickHandlers, HasDoubleClickHandlers, HasDragCompleteHandlers, HasDragMoveHandlers, HasDragRepositionMoveHandlers, HasDragRepositionStartHandlers, HasDragRepositionStopHandlers, HasDragResizeMoveHandlers, HasDragResizeStartHandlers, HasDragResizeStopHandlers, HasDragStartHandlers, HasDragStopHandlers, HasDropCompleteHandlers, HasDropHandlers, HasDropMoveHandlers, HasDropOutHandlers, HasDropOverHandlers, HasFetchDataHandlers, HasFocusChangedHandlers, HasFormulaUpdatedHandlers, HasHoverHandlers, HasHoverHiddenHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasMouseDownHandlers, HasMouseMoveHandlers, HasMouseOutHandlers, HasMouseOverHandlers, HasMouseStillDownHandlers, HasMouseUpHandlers, HasMouseWheelHandlers, HasMovedHandlers, HasParentMovedHandlers, HasResizedHandlers, HasRightMouseDownHandlers, HasRuleContextChangedHandlers, HasScrolledHandlers, HasShowContextMenuHandlers, HasVisibilityChangedHandlers, HasBodyKeyPressHandlers, HasCellClickHandlers, HasCellContextClickHandlers, HasCellDoubleClickHandlers, HasCellErrorIconHoverHandlers, HasCellErrorIconOutHandlers, HasCellErrorIconOverHandlers, HasCellHoverHandlers, HasCellMouseDownHandlers, HasCellMouseUpHandlers, HasCellOutHandlers, HasCellOverHandlers, HasCellSavedHandlers, HasCellSelectionChangedHandlers, HasCellValueHoverHandlers, HasCriteriaChangedHandlers, HasDataArrivedHandlers, HasDataChangedHandlers, HasDrawAreaChangedHandlers, HasEditCompleteHandlers, HasEditFailedHandlers, HasEditorEnterHandlers, HasEditorExitHandlers, HasFieldStateChangedHandlers, HasFilterEditorSubmitHandlers, HasGroupByCompleteHandlers, HasGroupByHandlers, HasGroupStateChangedHandlers, HasGroupTreeChangedHandlers, HasHeaderClickHandlers, HasHeaderDoubleClickHandlers, HasHeaderHoverHandlers, HasHilitesChangedHandlers, HasRecordClickHandlers, HasRecordCollapseHandlers, HasRecordDoubleClickHandlers, HasRecordDropHandlers, HasRecordExpandHandlers, HasRegroupHandlers, HasRemoveRecordClickHandlers, HasRowContextClickHandlers, HasRowEditorEnterHandlers, HasRowEditorExitHandlers, HasRowHoverHandlers, HasRowMouseDownHandlers, HasRowMouseUpHandlers, HasRowOutHandlers, HasRowOverHandlers, HasSelectionChangedHandlers, HasSelectionUpdatedHandlers, HasSetSortHandlers, HasSortChangedHandlers, HasSorterClickHandlers, HasSorterContextClickHandlers, HasViewStateChangedHandlers, HasMembersChangedHandlers, HasFolderClickHandlers, HasFolderClosedHandlers, HasFolderContextClickHandlers, HasFolderDropHandlers, HasFolderOpenedHandlers, HasLeafClickHandlers, HasLeafContextClickHandlers, HasNodeClickHandlers, HasNodeContextClickHandlers
  Direct Known Subclasses:
    EditTree, TreePalette

      public class TreeGrid
      extends ListGrid
      implements HasDataArrivedHandlers, HasDataChangedHandlers, HasFolderClickHandlers, HasFolderClosedHandlers, HasFolderContextClickHandlers, HasFolderOpenedHandlers, HasLeafClickHandlers, HasLeafContextClickHandlers, HasNodeClickHandlers, HasNodeContextClickHandlers, HasFolderDropHandlers

  The Smart GWT system supports hierarchical data (also referred to as tree data due to its "branching" organization) with:
  - the `Tree` class, which manipulates hierarchical data sets
  - the TreeGrid widget class, which extends the ListGrid class to visually present tree data in an expandable/collapsible format.
  For information on DataBinding Trees, see `TreeDataBinding`.

  A TreeGrid works just like a `ListGrid`, except one column (specified by `TreeGridField.treeField`) shows a hierarchical `Tree`. A TreeGrid is not limited to displaying just the `Tree` column - you can define additional columns (via `fields`) which will render just like the columns of a `ListGrid`, and support all of the functionality of ListGrid columns, such as `formatters`.

  Except where explicitly overridden, `ListGrid` methods, callbacks, and properties apply to TreeGrids as well. The `ListGrid` defines some methods as taking/returning `ListGridField` and `ListGridRecord`. When using those methods in a TreeGrid, those types will be `TreeGridField` and `TreeNode`, respectively.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `com.google.gwt.user.client.ui.UIObject.DebugIdImpl, com.google.gwt.user.client.ui.UIObject.DebugIdImplEnabled`

  - ### Field Summary

    - ### Fields inherited from class com.smartgwt.client.widgets.BaseWidget

      `config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassName`

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TreeGrid()`
    `TreeGrid(com.google.gwt.core.client.JavaScriptObject jsObj)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `com.google.gwt.event.shared.HandlerRegistration` | `addDataArrivedHandler(DataArrivedHandler handler)` Add a dataArrived handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addDataChangedHandler(DataChangedHandler handler)` Add a dataChanged handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addFolderClickHandler(FolderClickHandler handler)` Add a folderClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addFolderClosedHandler(FolderClosedHandler handler)` Add a folderClosed handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addFolderContextClickHandler(FolderContextClickHandler handler)` Add a folderContextClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addFolderDropHandler(FolderDropHandler handler)` Add a folderDrop handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addFolderOpenedHandler(FolderOpenedHandler handler)` Add a folderOpened handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addLeafClickHandler(LeafClickHandler handler)` Add a leafClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addLeafContextClickHandler(LeafContextClickHandler handler)` Add a leafContextClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addNodeClickHandler(NodeClickHandler handler)` Add a nodeClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addNodeContextClickHandler(NodeContextClickHandler handler)` Add a nodeContextClick handler.
    `com.google.gwt.event.shared.HandlerRegistration` | `addRecordDropHandler(RecordDropHandler handler)` This ListGrid superclass event does not fire on a TreeGrid, use `addFolderDropHandler(com.smartgwt.client.widgets.tree.events.FolderDropHandler)` instead.
    `java.lang.Boolean` | `canEditCell()` Overridden to disallow editing of the `name` field of this grid's data tree.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)` Changes the defaults for Canvas AutoChildren named `autoChildName`.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)` Changes the defaults for FormItem AutoChildren named `autoChildName`.
    `void` | `closeFolder(TreeNode node)` Closes a folder.
    `protected com.google.gwt.core.client.JavaScriptObject` | `create()`
    `void` | `exportClientData()` Exports this component's data with client-side formatters applied, so is suitable for direct display to users.
    `void` | `exportClientData(DSRequest requestProperties)`
    `void` | `exportClientData(DSRequest requestProperties, RPCCallback callback)` Exports this component's data with client-side formatters applied, so is suitable for direct display to users.
    `void` | `fetchData()` Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.
    `void` | `fetchData(Criteria criteria)` Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.
    `void` | `fetchData(Criteria criteria, DSCallback callback)` Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.
    `void` | `fetchData(Criteria criteria, DSCallback callback, DSRequest requestProperties)` Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.
    `void` | `filterData(Criteria criteria)` Retrieves data that matches the provided criteria and displays the matching data in this component.
    `void` | `filterData(Criteria criteria, DSCallback callback)` Retrieves data that matches the provided criteria and displays the matching data in this component.
    `void` | `filterData(Criteria criteria, DSCallback callback, DSRequest requestProperties)` Retrieves data that matches the provided criteria and displays the matching data in this component.
    `java.lang.Boolean` | `getAlwaysShowOpener()` If `showOpener` is true, should we display the opener icon for folders even if they have no children?
    `AnimationAcceleration` | `getAnimateFolderEffect()` When animating folder opening / closing, this property can be set to apply an animated acceleration effect.
    `java.lang.Integer` | `getAnimateFolderMaxRows()` If `animateFolders` is true for this grid, this number can be set to designate the maximum number of rows to animate at a time when opening / closing a folder.
    `java.lang.Boolean` | `getAnimateFolders()` If true, when folders are opened / closed children will be animated into view.
    `int` | `getAnimateFolderSpeed()` When animating folder opening / closing, this property designates the speed of the animation in pixels shown (or hidden) per second.
    `int` | `getAnimateFolderTime()` When animating folder opening / closing, if `animateFolderSpeed` is not set, this property designates the duration of the animation in ms.
    `boolean` | `getAutoAssignTreeField()` If this grid was passed an explicit set of fields, but no field was specified as the "tree-field" (showing indentations for tree hierarchy and tree icons), should we assign one of the other fields to be the tree-field?
    `TextMatchStyle` | `getAutoFetchTextMatchStyle()` With `loadDataOnDemand`:true, TreeGrids fetch data by selecting the child nodes of each parent, which should be exact match, so we default to `autoFetchTextMatchStyle:"exact"` when autoFetchData is true.
    `java.lang.String` | `getAutoOpenTree()` Which nodes should be opened automatically.
    `PreserveOpenState` | `getAutoPreserveOpenState()` For dataBound treeGrids this specifies the `ResultTree.autoPreserveOpenState`, governing whether the open state of the tree should be preserved when new data arrives due to cache invalidation.
    `java.lang.Boolean` | `getCanAcceptDroppedRecords()` Indicates whether records can be dropped into this listGrid.
    `java.lang.Boolean` | `getCanDragRecordsOut()` Indicates whether records can be dragged from this listGrid and dropped elsewhere.
    `java.lang.Boolean` | `getCanDropOnLeaves()` Whether drops are allowed on leaf nodes.
    `boolean` | `getCanDropSiblingAfterLastNode()` When performing a drag and drop to add or move data within the tree, should users be able to make the dropped node a sibling of the last node in the tree by dropping just below it?
    `java.lang.Boolean` | `getCanReorderRecords()` Indicates whether records can be reordered by dragging within this `ListGrid`.
    `java.lang.Boolean` | `getCanReparentNodes()` If set this property allows the user to reparent nodes by dragging them from their current folder to a new folder. Backcompat: For backwards compatibility with versions prior to Smart GWT 1.5, if this property is unset, but `this.canAcceptDroppedRecords` is true, we allow nodes to be dragged to different folders.
    `java.lang.Boolean` | `getCanSelectAll()` This property is not supported on TreeGrid, and only applies to the `ListGrid` superclass.
    `java.lang.String` | `getCantDragIntoChildMessage()` Message displayed when user attempts to drop a node into a child of itself.
    `java.lang.String` | `getCantDragIntoSelfMessage()` Message displayed when user attempts to drop a dragged node onto itself.
    `java.lang.String` | `getCantDragMultipleNodeOccurencesMessage()` For `Multi-link trees` only, the message displayed when the user attempts to drag two or more occurrences of the same node into a parent.
    `java.lang.Boolean` | `getCascadeSelection()` Should children be selected when parent is selected? And should parent be selected when any child is selected?
    `Alignment` | `getCellAlign(ListGridRecord record, int rowNum, int colNum)` Return the horizontal alignment for cell contents.
    `java.lang.String` | `getChildCannotBeItsOwnAncestorMessage()` Message displayed when user attempts to drop a node into a parent that has the same ID as the dropped node somewhere in its ancestor chain (ie, the same node as the parent, or grandparent, and so on)
    `java.lang.String` | `getClosedIconSuffix()` This suffix will be appended to the `folderIcon` for closed folders.
    `java.lang.Integer` | `getConnectorIconWidth()` Width in pixels of the connector-icons, that is, the icons which show the open or closed state of the node when using `connectors`, typically a [+] or [-] symbol with connecting lines.
    `java.lang.String` | `getConnectorImage()` The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true.
    `SCStatefulImgConfig` | `getConnectorImageAsSCStatefulImgConfig()` The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true.
    `java.lang.Boolean` | `getCreateDefaultTreeField()` If no fields are specified, create a single field with `TreeGridField.treeField` set to `true` to show the tree.
    `java.lang.String` | `getCustomIconDropProperty()` This property allows the developer to rename the `default node.showDropIcon` property.
    `java.lang.String` | `getCustomIconOpenProperty()` This property allows the developer to rename the `default node.showOpenIcon` property.
    `java.lang.String` | `getCustomIconProperty()` This property allows the developer to rename the `default node.icon` property.
    `java.lang.String` | `getCustomIconSelectedProperty()` This property allows the developer to rename the `default node.showSelectedIcon` property.
    `Tree` | `getData()` A `Tree` object containing of nested `TreeNode`s to display as rows in this TreeGrid.
    `java.lang.String` | `getDataArity()` A TreeGrid is a `dataArity`:multiple component.
    `FetchMode` | `getDataFetchMode()` Mode of fetching records from server.
    `Tree` | `getDataProperties()` For a `TreeGrid` that uses a DataSource, these properties will be passed to the automatically-created ResultTree.
    `DisplayNodeType` | `getDisplayNodeType()` Specifies the type of nodes displayed in the treeGrid.
    `NodeLocator[]` | `getDraggedNodeLocators(TreeGrid source)` NOTE: Applicable only to `multi-link trees`; if called on a regular `TreeGrid`, returns an empty array.
    `java.lang.Integer` | `getDropEndSpace()` If `showDropEndSpace` is set to true, this property governs how large the space under the last node during drop should be.
    `TreeNode` | `getDropFolder()` When the user is dragging a droppable element over this grid, this method returns the folder which would contain the item if dropped.
    `java.lang.String` | `getDropIconSuffix()` If `showDropIcons` is true, this suffix will be appended to the `folderIcon` when the user drop-hovers over some folder.
    `int` | `getEventRow()` Returns the row number of the provided Y-coordinate, or the most recent mouse event if a Y-coordinate is not provided.
    `int` | `getEventRow(java.lang.Integer y)` Returns the row number of the provided Y-coordinate, or the most recent mouse event if a Y-coordinate is not provided.
    `java.lang.String` | `getExtraIcon(TreeNode node)` Get an additional icon to show between the open icon and folder/node icon for a particular node.
    `int` | `getExtraIconGap()` The amount of gap (in pixels) between the extraIcon (see `getExtraIcon()`) or checkbox icon and the `nodeIcon`/ `folderIcon` or node text.
    `java.lang.String` | `getFolderIcon()` The URL of the base icon for all folder nodes in this treeGrid.
    `java.lang.Integer` | `getFolderIconPadding()` Default padding to show between folder icon and cell value in the tree cell.
    `java.lang.String` | `getGroupByField()` Not applicable to TreeGrids, as the `data` already represents a tree.
    `java.lang.String[]` | `getGroupByFieldAsStringArray()` Not applicable to TreeGrids, as the `data` already represents a tree.
    `protected java.lang.String` | `getIcon(Record node, boolean defaultState)` Get the appropriate icon for a node.
    `java.lang.String` | `getIconBaseStyle()` The base CSS class to apply to icons used in this grid.
    `java.lang.Integer` | `getIconPadding()` Default padding to show between the folder or leaf node icon and cell value in the tree cell.
    `java.lang.String` | `getIconPaddingProperty()` This property allows the developer to specify custom `iconPadding` for specific nodes
    `int` | `getIconSize()` The standard size (same height and width, in pixels) of node icons in this treeGrid.
    `java.lang.Boolean` | `getIndentRecordComponents()` For record components placed "within" the `treeField` column, should the component be indented to the position where a title would normally show?
    `int` | `getIndentSize()` The amount of indentation (in pixels) to add to a node's icon/title for each level down in this tree's hierarchy.
    `java.lang.Boolean` | `getKeepParentsOnFilter()` If set, tree-based filtering is performed such that parent nodes are kept as long as they have children that match the filter criteria, even if the parents themselves do not match the filter criteria.
    `java.lang.Boolean` | `getLeaveSelectionCheckboxGap()` If `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected, should a gap be left where the checkbox icon would normally appear, in order to make the node's icon and title line up with the content for other nodes in the same parent?
    `java.lang.Boolean` | `getLoadDataOnDemand()` For databound treeGrid instances, should the entire tree of data be loaded on initial fetch, or should folders load their children as they are opened.
    `java.lang.String` | `getLoadingIcon()` If `showLoadingIcons` is set, this icon will be used when the folder is `loading children from the server`.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `getLogicalStructure()` Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `java.lang.String` | `getManyItemsImage()` The filename of the icon displayed use as the default drag tracker when for multiple files and/or folders are being dragged.
    `java.lang.String` | `getNodeIcon()` The filename of the default icon for all leaf nodes in this grid.
    `protected java.lang.String` | `getNodeTitle(Record node, int recordNum, ListGridField field)` Returns the title to show for a node in the tree column.
    `java.lang.String` | `getOfflineNodeMessage()` For TreeGrids with loadDataOnDemand: true, a message to show the user if an attempt is made to open a folder, and thus load that node's children, while we are offline and there is no offline cache of that data.
    `java.lang.Integer` | `getOpenerIconHeight()` Height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.
    `java.lang.Integer` | `getOpenerIconSize()` Default width and height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol, if not overridden by `openerIconWidth`/`openerIconHeight`.
    `java.lang.Integer` | `getOpenerIconWidth()` Width in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.
    `java.lang.String` | `getOpenerImage()` The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid.
    `SCStatefulImgConfig` | `getOpenerImageAsSCStatefulImgConfig()` The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid.
    `java.lang.String` | `getOpenIcon(TreeNode node)` Get the appropriate open/close opener icon for a node.
    `java.lang.Integer` | `getOpenIconPadding()` Default padding to show between the `openIcon` and the extra or folder icon in the tree cell.
    `java.lang.String` | `getOpenIconSuffix()` If `showOpenIcons` is true, this suffix will be appended to the `folderIcon` for open folders in this grid.
    `java.lang.String` | `getOpenState()` Returns a snapshot of the current open state of this grid's data as a `TreeGridOpenState` object. This object can be passed to `setOpenState()` to open the same set of folders within the treeGrid's data (assuming the nodes are still present in the data).
    `static TreeGrid` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `java.lang.String` | `getParentAlreadyContainsChildMessage()` Message displayed when user attempts to drag a node into a parent that already contains a child of the same name/ID.
    `TreeNode` | `getRecord(int recordNum)` Return the pointer to a particular record by record number.
    `RecordDropAppearance` | `getRecordDropAppearance()` If `canAcceptDroppedRecords` is true for this treeGrid, this property governs whether the user can drop between, or over records within the grid.
    `ListGridRecord[]` | `getRecords()` Return the tree nodes as a flat array of ListGridRecords.
    `java.lang.Boolean` | `getSaveOpenStateInViewState()` Should the current `open state` of the tree be included along with other details when saving this grid's `view-state`?
    `java.lang.String` | `getSelectedIconSuffix()` If `showSelectedIcons` is true, this suffix will be appended to the `folderIcon` for selected nodes in this grid.
    `java.lang.String` | `getSelectedPaths()` Returns a snapshot of the current selection within this treeGrid as a `ListGridSelectedState` object. This object can be passed to `setSelectedPaths()` to reset this grid's selection the current state (assuming the same data is present in the grid).
    `TreeNode` | `getSelectedRecord()` Return the first selected record in this component. This method is appropriate if ``selectionType`` is `"single"`, or if you only care about the first selected record in a multiple-record selection.
    `java.lang.String` | `getSelectionProperty()` If specified, the selection object for this list will use this property to mark records as selected.
    `java.lang.Boolean` | `getSeparateFolders()` If specified, this attribute will override `Tree.separateFolders` on the data for this treeGrid.
    `java.lang.String[]` | `getServerFilterFields()` For `fetchMode:"local"` ResultTrees, this property lists field names that will be sent to the server if they are present in the criteria.
    `java.lang.Boolean` | `getShowConnectors()` Should this treeGrid show connector lines illustrating the tree's hierarchy?
    `java.lang.Boolean` | `getShowCustomIconDrop()` Should folder nodes showing custom icons (set via the `customIconProperty`, default `TreeNode.icon`), show drop state images when the user is drop-hovering over the folder.
    `java.lang.Boolean` | `getShowCustomIconOpen()` Should folder nodes showing custom icons (set via the `customIconProperty`), show open state images when the folder is opened.
    `java.lang.Boolean` | `getShowCustomIconSelected()` Should folder nodes showing custom icons (set via the `customIconProperty`), show selected state images when the folder is selected, if `showSelectedIcons` is true?
    `java.lang.Boolean` | `getShowDisabledSelectionCheckbox()` Should tree nodes show a disabled checkbox `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected?
    `boolean` | `getShowDropEndSpace()` When the user drags over the treeGrid body, should the grid show some space under the last node in the grid allowing the user to drop after the last node? The height of this space can be customized via `dropEndSpace`
    `java.lang.Boolean` | `getShowDropIcons()` If true, when the user drags a droppable target over a folder in this TreeGrid, show a different folder icon.
    `java.lang.Boolean` | `getShowFolderIcons()` Should folder nodes in this TreeGrid show icons by default?
    `java.lang.Boolean` | `getShowFullConnectors()` If `showConnectors` is true, this property determines whether we should show vertical continuation lines for each level of indenting within the tree.
    `boolean` | `getShowLoadingIcons()` If set, when a folder is loading its children from the server (`Tree.getLoadState()` returns "loading"), it uses a distinct icon image given by `loadingIcon`.
    `java.lang.Boolean` | `getShowNodeIcons()` Should nodes in this TreeGrid show folder / leaf node icons by default?
    `java.lang.Boolean` | `getShowOpener()` Should the opener icon be displayed next to folder nodes? This is an icon which visually indicates whether the folder is opened or closed (typically via a [+] or [-] image, or a turn-down arrow) and may be clicked to expand or collapse the folder.
    `java.lang.Boolean` | `getShowOpenIcons()` If true, show a different icon for `open` folders than closed folders.
    `java.lang.Boolean` | `getShowPartialSelection()` Should partially selected parents be shown with special icon?
    `java.lang.Boolean` | `getShowRoot()` Specifies whether the root node should be displayed in the treeGrid.
    `java.lang.Boolean` | `getShowSelectedIcons()` If true, show a different icon for selected nodes than unselected nodes.
    `java.lang.Boolean` | `getShowSelectedOpener()` If `showOpener` is true, should a different opener icon be displayed for selected nodes? This provides a way for developers to show a "selected" version of the opener icon set which looks optimal with the `selected appearance` applied the selected record.
    `java.lang.Boolean` | `getSortFoldersBeforeLeaves()` If specified, this attribute will override `Tree.sortFoldersBeforeLeaves` on the data for this treeGrid.
    `Tree` | `getTree()` Synonym for `getData()`
    `int` | `getTreeFieldMinWidth()` Default `minimum width` for the `treeField`.
    `java.lang.String` | `getTreeFieldTitle()` Visible title for the tree column (field).
    `java.lang.String` | `getTreeRootValue()` For databound trees, use this attribute to supply a `DataSourceField.rootValue` for this component's generated data object.
    `java.lang.Boolean` | `getUseAllDataSourceFields()` If true, the set of fields given by the "default binding" (see `DataBoundComponent.fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.
    `void` | `groupBy()` Not applicable to TreeGrids, as the `data` already represents a tree.
    `boolean` | `isExportingClientData()` Returns true if this component is currently `exporting client data`.
    `java.lang.Boolean` | `isOverExtraIcon()` Returns true if the last event occurred over `extra icon` for the current node.
    `java.lang.Boolean` | `isOverOpenArea()` Returns true if the last event occurred over the indented area or over the open / close icon of a folder node in this TreeGrid.
    `java.lang.Boolean` | `loadAllRecords()` This method is not currently supported for this grid-type.
    `java.lang.Boolean` | `loadAllRecords(java.lang.Integer maxRecords)`
    `java.lang.Boolean` | `loadAllRecords(java.lang.Integer maxRecords, DSCallback callback)` This method is not currently supported for this grid-type.
    `protected void` | `onInit()`
    `void` | `openFolder(TreeNode node)` Opens a folder.
    `void` | `openFolder(TreeNode node, java.lang.String path)` Opens a folder.
    `boolean` | `recordDoubleClick(TreeGrid viewer, TreeNode record, int recordNum, TreeGridField field, int fieldNum, java.util.Map value, java.util.Map rawValue)` Handle a doubleClick on a tree node - override of ListGrid stringMethod of same name.
    `TreeGrid` | `setAlwaysShowOpener(java.lang.Boolean alwaysShowOpener)` If `showOpener` is true, should we display the opener icon for folders even if they have no children?
    `TreeGrid` | `setAnimateFolderEffect(AnimationAcceleration animateFolderEffect)` When animating folder opening / closing, this property can be set to apply an animated acceleration effect.
    `TreeGrid` | `setAnimateFolderMaxRows(java.lang.Integer animateFolderMaxRows)` If `animateFolders` is true for this grid, this number can be set to designate the maximum number of rows to animate at a time when opening / closing a folder.
    `TreeGrid` | `setAnimateFolders(java.lang.Boolean animateFolders)` If true, when folders are opened / closed children will be animated into view.
    `TreeGrid` | `setAnimateFolderSpeed(int animateFolderSpeed)` When animating folder opening / closing, this property designates the speed of the animation in pixels shown (or hidden) per second.
    `TreeGrid` | `setAnimateFolderTime(int animateFolderTime)` When animating folder opening / closing, if `animateFolderSpeed` is not set, this property designates the duration of the animation in ms.
    `TreeGrid` | `setAutoAssignTreeField(boolean autoAssignTreeField)` If this grid was passed an explicit set of fields, but no field was specified as the "tree-field" (showing indentations for tree hierarchy and tree icons), should we assign one of the other fields to be the tree-field?
    `TreeGrid` | `setAutoFetchTextMatchStyle(TextMatchStyle autoFetchTextMatchStyle)` With `loadDataOnDemand`:true, TreeGrids fetch data by selecting the child nodes of each parent, which should be exact match, so we default to `autoFetchTextMatchStyle:"exact"` when autoFetchData is true.
    `TreeGrid` | `setAutoOpenTree(java.lang.String autoOpenTree)` Which nodes should be opened automatically.
    `TreeGrid` | `setAutoPreserveOpenState(PreserveOpenState autoPreserveOpenState)` For dataBound treeGrids this specifies the `ResultTree.autoPreserveOpenState`, governing whether the open state of the tree should be preserved when new data arrives due to cache invalidation.
    `TreeGrid` | `setCanAcceptDroppedRecords(java.lang.Boolean canAcceptDroppedRecords)` Indicates whether records can be dropped into this listGrid.
    `TreeGrid` | `setCanDragRecordsOut(java.lang.Boolean canDragRecordsOut)` Indicates whether records can be dragged from this listGrid and dropped elsewhere.
    `TreeGrid` | `setCanDropOnLeaves(java.lang.Boolean canDropOnLeaves)` Whether drops are allowed on leaf nodes.
    `TreeGrid` | `setCanDropSiblingAfterLastNode(boolean canDropSiblingAfterLastNode)` When performing a drag and drop to add or move data within the tree, should users be able to make the dropped node a sibling of the last node in the tree by dropping just below it?
    `TreeGrid` | `setCanReorderRecords(java.lang.Boolean canReorderRecords)` Indicates whether records can be reordered by dragging within this `ListGrid`.
    `TreeGrid` | `setCanReparentNodes(java.lang.Boolean canReparentNodes)` If set this property allows the user to reparent nodes by dragging them from their current folder to a new folder. Backcompat: For backwards compatibility with versions prior to Smart GWT 1.5, if this property is unset, but `this.canAcceptDroppedRecords` is true, we allow nodes to be dragged to different folders.
    `TreeGrid` | `setCanSelectAll(java.lang.Boolean canSelectAll)` This property is not supported on TreeGrid, and only applies to the `ListGrid` superclass.
    `TreeGrid` | `setCantDragIntoChildMessage(java.lang.String cantDragIntoChildMessage)` Message displayed when user attempts to drop a node into a child of itself.
    `TreeGrid` | `setCantDragIntoSelfMessage(java.lang.String cantDragIntoSelfMessage)` Message displayed when user attempts to drop a dragged node onto itself.
    `TreeGrid` | `setCantDragMultipleNodeOccurencesMessage(java.lang.String cantDragMultipleNodeOccurencesMessage)` For `Multi-link trees` only, the message displayed when the user attempts to drag two or more occurrences of the same node into a parent.
    `TreeGrid` | `setCascadeSelection(java.lang.Boolean cascadeSelection)` Should children be selected when parent is selected? And should parent be selected when any child is selected?
    `void` | `setCellValueHoverFormatter(CellValueHoverFormatter formatter)` Provide a custom implementation of `ListGrid.cellValueHoverHTML(ListGridRecord, int, int, String)`.
    `TreeGrid` | `setChildCannotBeItsOwnAncestorMessage(java.lang.String childCannotBeItsOwnAncestorMessage)` Message displayed when user attempts to drop a node into a parent that has the same ID as the dropped node somewhere in its ancestor chain (ie, the same node as the parent, or grandparent, and so on)
    `TreeGrid` | `setClosedIconSuffix(java.lang.String closedIconSuffix)` This suffix will be appended to the `folderIcon` for closed folders.
    `TreeGrid` | `setConnectorIconWidth(java.lang.Integer connectorIconWidth)` Width in pixels of the connector-icons, that is, the icons which show the open or closed state of the node when using `connectors`, typically a [+] or [-] symbol with connecting lines.
    `TreeGrid` | `setConnectorImage(SCStatefulImgConfig connectorImage)` The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true.
    `TreeGrid` | `setConnectorImage(java.lang.String connectorImage)` The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true.
    `TreeGrid` | `setCreateDefaultTreeField(java.lang.Boolean createDefaultTreeField)` If no fields are specified, create a single field with `TreeGridField.treeField` set to `true` to show the tree.
    `TreeGrid` | `setCustomIconDropProperty(java.lang.String customIconDropProperty)` This property allows the developer to rename the `default node.showDropIcon` property.
    `TreeGrid` | `setCustomIconOpenProperty(java.lang.String customIconOpenProperty)` This property allows the developer to rename the `default node.showOpenIcon` property.
    `TreeGrid` | `setCustomIconProperty(java.lang.String customIconProperty)` This property allows the developer to rename the `default node.icon` property.
    `TreeGrid` | `setCustomIconSelectedProperty(java.lang.String customIconSelectedProperty)` This property allows the developer to rename the `default node.showSelectedIcon` property.
    `void` | `setCustomNodeIcon(Record node, java.lang.String icon)` Set the icon for a particular TreeNode to a specified URL
    `void` | `setData(Tree data)` A `Tree` object containing of nested `TreeNode`s to display as rows in this TreeGrid.
    `TreeGrid` | `setDataArity(java.lang.String dataArity)` A TreeGrid is a `dataArity`:multiple component.
    `TreeGrid` | `setDataFetchMode(FetchMode dataFetchMode)` Mode of fetching records from server.
    `void` | `setDataProperties(Tree resultTreeProperties)` For databound TreeGrids, this attribute can be used to customize the `com.smartgwt.client.tree.ResultTree` object created for this grid when data is fetched.
    `static void` | `setDefaultProperties(TreeGrid treeGridProperties)` Class level method to set the default properties of this class.
    `TreeGrid` | `setDisplayNodeType(DisplayNodeType displayNodeType)` Specifies the type of nodes displayed in the treeGrid.
    `TreeGrid` | `setDropEndSpace(java.lang.Integer dropEndSpace)` If `showDropEndSpace` is set to true, this property governs how large the space under the last node during drop should be.
    `TreeGrid` | `setDropIconSuffix(java.lang.String dropIconSuffix)` If `showDropIcons` is true, this suffix will be appended to the `folderIcon` when the user drop-hovers over some folder.
    `TreeGrid` | `setExtraIconGap(int extraIconGap)` The amount of gap (in pixels) between the extraIcon (see `getExtraIcon()`) or checkbox icon and the `nodeIcon`/ `folderIcon` or node text.
    `TreeGrid` | `setFields(TreeGridField... fields)` An array of field objects, specifying the order, layout, dynamic calculation, and sorting behavior of each field in the treeGrid object.
    `TreeGrid` | `setFolderIcon(java.lang.String folderIcon)` The URL of the base icon for all folder nodes in this treeGrid.
    `TreeGrid` | `setFolderIconPadding(java.lang.Integer folderIconPadding)` Default padding to show between folder icon and cell value in the tree cell.
    `TreeGrid` | `setGroupByField(java.lang.String... groupByField)` Not applicable to TreeGrids, as the `data` already represents a tree.
    `TreeGrid` | `setGroupByField(java.lang.String groupByField)` Not applicable to TreeGrids, as the `data` already represents a tree.
    `TreeGrid` | `setIconBaseStyle(java.lang.String iconBaseStyle)` The base CSS class to apply to icons used in this grid.
    `TreeGrid` | `setIconPadding(java.lang.Integer iconPadding)` Default padding to show between the folder or leaf node icon and cell value in the tree cell.
    `TreeGrid` | `setIconPaddingProperty(java.lang.String iconPaddingProperty)` This property allows the developer to specify custom `iconPadding` for specific nodes
    `TreeGrid` | `setIconSize(int iconSize)` The standard size (same height and width, in pixels) of node icons in this treeGrid.
    `TreeGrid` | `setIndentRecordComponents(java.lang.Boolean indentRecordComponents)` For record components placed "within" the `treeField` column, should the component be indented to the position where a title would normally show?
    `TreeGrid` | `setIndentSize(int indentSize)` The amount of indentation (in pixels) to add to a node's icon/title for each level down in this tree's hierarchy.
    `void` | `setInitialData(TreeNode[] initialData)` You can specify the initial set of data for a databound TreeGrid using this property.
    `TreeGrid` | `setKeepParentsOnFilter(java.lang.Boolean keepParentsOnFilter)` If set, tree-based filtering is performed such that parent nodes are kept as long as they have children that match the filter criteria, even if the parents themselves do not match the filter criteria.
    `TreeGrid` | `setLeaveSelectionCheckboxGap(java.lang.Boolean leaveSelectionCheckboxGap)` If `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected, should a gap be left where the checkbox icon would normally appear, in order to make the node's icon and title line up with the content for other nodes in the same parent?
    `TreeGrid` | `setLoadDataOnDemand(java.lang.Boolean loadDataOnDemand)` For databound treeGrid instances, should the entire tree of data be loaded on initial fetch, or should folders load their children as they are opened.
    `TreeGrid` | `setLoadingIcon(java.lang.String loadingIcon)` If `showLoadingIcons` is set, this icon will be used when the folder is `loading children from the server`.
    `com.smartgwt.logicalstructure.core.LogicalStructureObject` | `setLogicalStructure(com.smartgwt.logicalstructure.widgets.tree.TreeGridLogicalStructure s)` Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
    `TreeGrid` | `setManyItemsImage(java.lang.String manyItemsImage)` The filename of the icon displayed use as the default drag tracker when for multiple files and/or folders are being dragged.
    `TreeGrid` | `setNodeIcon(java.lang.String nodeIcon)` The filename of the default icon for all leaf nodes in this grid.
    `TreeGrid` | `setOfflineNodeMessage(java.lang.String offlineNodeMessage)` For TreeGrids with loadDataOnDemand: true, a message to show the user if an attempt is made to open a folder, and thus load that node's children, while we are offline and there is no offline cache of that data.
    `TreeGrid` | `setOpenerIconHeight(java.lang.Integer openerIconHeight)` Height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.
    `TreeGrid` | `setOpenerIconSize(java.lang.Integer openerIconSize)` Default width and height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol, if not overridden by `openerIconWidth`/`openerIconHeight`.
    `TreeGrid` | `setOpenerIconWidth(java.lang.Integer openerIconWidth)` Width in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.
    `TreeGrid` | `setOpenerImage(SCStatefulImgConfig openerImage)` The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid.
    `TreeGrid` | `setOpenerImage(java.lang.String openerImage)` The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid.
    `TreeGrid` | `setOpenIconPadding(java.lang.Integer openIconPadding)` Default padding to show between the `openIcon` and the extra or folder icon in the tree cell.
    `TreeGrid` | `setOpenIconSuffix(java.lang.String openIconSuffix)` If `showOpenIcons` is true, this suffix will be appended to the `folderIcon` for open folders in this grid.
    `void` | `setOpenState(java.lang.String openState)` Reset this set of open folders within this grid's data to match the `TreeGridOpenState` object passed in. Used to restore previous state retrieved from the grid by a call to `getOpenState()`.
    `TreeGrid` | `setParentAlreadyContainsChildMessage(java.lang.String parentAlreadyContainsChildMessage)` Message displayed when user attempts to drag a node into a parent that already contains a child of the same name/ID.
    `TreeGrid` | `setRecordDropAppearance(RecordDropAppearance recordDropAppearance)` If `canAcceptDroppedRecords` is true for this treeGrid, this property governs whether the user can drop between, or over records within the grid.
    `TreeGrid` | `setSaveOpenStateInViewState(java.lang.Boolean saveOpenStateInViewState)` Should the current `open state` of the tree be included along with other details when saving this grid's `view-state`?
    `TreeGrid` | `setSelectedIconSuffix(java.lang.String selectedIconSuffix)` If `showSelectedIcons` is true, this suffix will be appended to the `folderIcon` for selected nodes in this grid.
    `void` | `setSelectedPaths(java.lang.String selectedPaths)` Reset this grid's selection to match the `ListGridSelectedState` object passed in. Used to restore previous state retrieved from the grid by a call to `getSelectedPaths()`.
    `TreeGrid` | `setSelectionProperty(java.lang.String selectionProperty)` If specified, the selection object for this list will use this property to mark records as selected.
    `TreeGrid` | `setSeparateFolders(java.lang.Boolean separateFolders)` If specified, this attribute will override `Tree.separateFolders` on the data for this treeGrid.
    `TreeGrid` | `setServerFilterFields(java.lang.String... serverFilterFields)` For `fetchMode:"local"` ResultTrees, this property lists field names that will be sent to the server if they are present in the criteria.
    `TreeGrid` | `setShowConnectors(java.lang.Boolean showConnectors)` Should this treeGrid show connector lines illustrating the tree's hierarchy?
    `TreeGrid` | `setShowCustomIconDrop(java.lang.Boolean showCustomIconDrop)` Should folder nodes showing custom icons (set via the `customIconProperty`, default `TreeNode.icon`), show drop state images when the user is drop-hovering over the folder.
    `TreeGrid` | `setShowCustomIconOpen(java.lang.Boolean showCustomIconOpen)` Should folder nodes showing custom icons (set via the `customIconProperty`), show open state images when the folder is opened.
    `TreeGrid` | `setShowCustomIconSelected(java.lang.Boolean showCustomIconSelected)` Should folder nodes showing custom icons (set via the `customIconProperty`), show selected state images when the folder is selected, if `showSelectedIcons` is true?
    `TreeGrid` | `setShowDisabledSelectionCheckbox(java.lang.Boolean showDisabledSelectionCheckbox)` Should tree nodes show a disabled checkbox `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected?
    `TreeGrid` | `setShowDropEndSpace(boolean showDropEndSpace)` When the user drags over the treeGrid body, should the grid show some space under the last node in the grid allowing the user to drop after the last node? The height of this space can be customized via `dropEndSpace`
    `TreeGrid` | `setShowDropIcons(java.lang.Boolean showDropIcons)` If true, when the user drags a droppable target over a folder in this TreeGrid, show a different folder icon.
    `TreeGrid` | `setShowFolderIcons(java.lang.Boolean showFolderIcons)` Should folder nodes in this TreeGrid show icons by default?
    `TreeGrid` | `setShowFullConnectors(java.lang.Boolean showFullConnectors)` If `showConnectors` is true, this property determines whether we should show vertical continuation lines for each level of indenting within the tree.
    `TreeGrid` | `setShowLoadingIcons(boolean showLoadingIcons)` If set, when a folder is loading its children from the server (`Tree.getLoadState()` returns "loading"), it uses a distinct icon image given by `loadingIcon`.
    `TreeGrid` | `setShowNodeIcons(java.lang.Boolean showNodeIcons)` Should nodes in this TreeGrid show folder / leaf node icons by default?
    `TreeGrid` | `setShowOpener(java.lang.Boolean showOpener)` Should the opener icon be displayed next to folder nodes? This is an icon which visually indicates whether the folder is opened or closed (typically via a [+] or [-] image, or a turn-down arrow) and may be clicked to expand or collapse the folder.
    `TreeGrid` | `setShowOpenIcons(java.lang.Boolean showOpenIcons)` If true, show a different icon for `open` folders than closed folders.
    `TreeGrid` | `setShowPartialSelection(java.lang.Boolean showPartialSelection)` Should partially selected parents be shown with special icon?
    `TreeGrid` | `setShowRoot(java.lang.Boolean showRoot)` Specifies whether the root node should be displayed in the treeGrid.
    `TreeGrid` | `setShowSelectedIcons(java.lang.Boolean showSelectedIcons)` If true, show a different icon for selected nodes than unselected nodes.
    `TreeGrid` | `setShowSelectedOpener(java.lang.Boolean showSelectedOpener)` If `showOpener` is true, should a different opener icon be displayed for selected nodes? This provides a way for developers to show a "selected" version of the opener icon set which looks optimal with the `selected appearance` applied the selected record.
    `TreeGrid` | `setSortFoldersBeforeLeaves(java.lang.Boolean sortFoldersBeforeLeaves)` If specified, this attribute will override `Tree.sortFoldersBeforeLeaves` on the data for this treeGrid.
    `TreeGrid` | `setTreeFieldMinWidth(int treeFieldMinWidth)` Default `minimum width` for the `treeField`.
    `TreeGrid` | `setTreeFieldTitle(java.lang.String treeFieldTitle)` Visible title for the tree column (field).
    `void` | `setTreeRootValue(java.lang.Integer treeRootValue)` For databound trees, use this attribute to supply a `DataSourceField.rootValue` for this component's generated data object.
    `void` | `setTreeRootValue(java.lang.String treeRootValue)` For databound trees, use this attribute to supply a `DataSourceField.rootValue` for this component's generated data object.
    `TreeGrid` | `setUseAllDataSourceFields(java.lang.Boolean useAllDataSourceFields)` If true, the set of fields given by the "default binding" (see `DataBoundComponent.fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.
    `void` | `startEditingNew()` This inherited `ListGrid API` is not supported by the TreeGrid since adding a new tree node arbitrarily at the end of the tree is usually not useful.
    `void` | `toggleFolder(java.lang.Integer node)` Opens the folder specified by node if it's closed, and closes it if it's open.
    `void` | `toggleFolder(NodeLocator node)` Opens the folder specified by node if it's closed, and closes it if it's open.
    `void` | `toggleFolder(java.lang.String node)` Opens the folder specified by node if it's closed, and closes it if it's open.
    `void` | `toggleFolder(TreeNode node)` Opens the folder specified by node if it's closed, and closes it if it's open.
    `void` | `transferNodes(TreeNode[] nodes, TreeNode folder, java.lang.Integer index, Canvas sourceWidget, TransferNodesCallback callback)` Transfer a list of `TreeNode`s from another component (does not have to be a databound component) into this TreeGrid.
    `java.lang.Boolean` | `willAcceptDrop()` This method overrides `ListGrid.willAcceptDrop()` and works as follows: First, `ListGrid.willAcceptDrop()` (the superclass definition) is consulted.

    - ### Methods inherited from class com.smartgwt.client.widgets.grid.ListGrid

      `addBodyKeyPressHandler, addCellClickHandler, addCellContextClickHandler, addCellDoubleClickHandler, addCellErrorIconHoverHandler, addCellErrorIconOutHandler, addCellErrorIconOverHandler, addCellHoverHandler, addCellMouseDownHandler, addCellMouseUpHandler, addCellOutHandler, addCellOverHandler, addCellSavedHandler, addCellSelectionChangedHandler, addCellValueHoverHandler, addCriteriaChangedHandler, addData, addData, addData, addDataArrivedHandler, addDataChangedHandler, addDragCompleteHandler, addDrawAreaChangedHandler, addDropCompleteHandler, addEditCompleteHandler, addEditFailedHandler, addEditorEnterHandler, addEditorExitHandler, addEmbeddedComponent, addEmbeddedComponent, addEmbeddedComponent, addEmbeddedComponent, addFetchDataHandler, addFieldStateChangedHandler, addFilterEditorSubmitHandler, addFormulaField, addFormulaUpdatedHandler, addGroupByCompleteHandler, addGroupByHandler, addGroupStateChangedHandler, addGroupTreeChangedHandler, addHeaderClickHandler, addHeaderDoubleClickHandler, addHeaderHoverHandler, addHilitesChangedHandler, addRecordClickHandler, addRecordCollapseHandler, addRecordDoubleClickHandler, addRecordExpandHandler, addRegroupHandler, addRemoveRecordClickHandler, addRowContextClickHandler, addRowEditorEnterHandler, addRowEditorExitHandler, addRowHoverHandler, addRowMouseDownHandler, addRowMouseUpHandler, addRowOutHandler, addRowOverHandler, addSelectionChangedHandler, addSelectionUpdatedHandler, addSetSortHandler, addSort, addSortChangedHandler, addSorterClickHandler, addSorterContextClickHandler, addSummaryField, addViewStateChangedHandler, anySelected, applyCellData, applyRecordData, applySortToData, askForSort, autoFitField, autoFitFields, autoFitFields, cancelEditing, canEditCell, canExpandRecord, canSelectCell, canSelectRecord, cellHasChanges, cellHasErrors, cellHasErrors, cellValueHoverHTML, cellValueIsClipped, chartData, chartData, chartData, chartData, chartData, clearAllCriteria, clearCriteria, clearCriteria, clearCriteria, clearEditValue, clearFieldError, clearFieldError, clearFieldSearchOperator, clearFilterWindowCriteria, clearRowErrors, clearSavedViewState, clearSort, closeGroup, closeRecord, collapseRecord, collapseRecords, configureGrouping, createRecordComponent, dataChangedComplete, dataChangedComplete, deselectAllRecords, deselectRange, deselectRecord, deselectRecord, deselectRecords, deselectRecords, disableHilite, disableHiliting, discardAllEdits, discardAllEdits, discardAllEdits, discardEdits, discardEdits, displayHeaderContextMenu, displaySort, drop, editExistingRecord, editExistingRecord, editFields, editHilites, enableHilite, enableHilite, enableHiliting, enableHiliting, endEditing, expandRecord, expandRecords, exportData, exportData, exportData, fetchRelatedData, fetchRelatedData, fetchRelatedData, fetchRelatedData, fetchRelatedData, fetchRowCount, fetchRowCount, fetchRowCount, fieldIsEditable, fieldIsEditable, fieldIsEditable, fieldIsVisible, filterByEditor, filterData, filterViaAI, filterViaAI, find, findAll, findIndex, findNextEditCell, findNextIndex, findNextIndex, focusInCell, focusInFilterEditor, focusInFilterEditor, focusInRow, freezeField, freezeField, freezeField, freezeField, freezeFields, freezeFields, getAddDropValues, getAddFormulaFieldText, getAddOperation, getAddSummaryFieldText, getAdvancedFieldPickerThreshold, getAdvancedFilteringText, getAiFilterWindow, getAiFilterWindowHint, getAiFilterWindowInstructions, getAiFilterWindowTitle, getAiHiliteWindow, getAiHoverContentsPrefix, getAiHoverRetryDelay, getAiSortFieldMaxRecordsMessage, getAiSortProgressDialog, getAllEditRows, getAllFields, getAllowFilterExpressions, getAllowFilterOperators, getAllowFilterWindow, getAllowRowSpanning, getAlternateBodyStyleName, getAlternateFieldFrequency, getAlternateFieldStyles, getAlternateFieldSuffix, getAlternateRecordFrequency, getAlternateRecordStyles, getAlternateRecordSuffix, getAlwaysShowEditors, getAlwaysShowOperatorIcon, getAnimateRemoveRecord, getAnimateRemoveSpeed, getAnimateRemoveTime, getAnimateRollOver, getAnimateRollUnder, getAnimateSelection, getAnimateSelectionUnder, getApplyFormulaAfterSummary, getApplyRowCountToLength, getApplyRowNumberStyle, getApproximateRowCountFormat, getAriaRole, getAriaState, getAriaStateDefaults, getArrowKeyAction, getArrowKeyEditAction, getAsyncErrorCellValue, getAsynchGroupingPrompt, getAsyncMissingCellValue, getAutoComplete, getAutoConfirmSaveEdits, getAutoFetchAsFilter, getAutoFetchData, getAutoFetchDisplayMap, getAutoFetchRowCount, getAutoFitAllText, getAutoFitClipFields, getAutoFitData, getAutoFitDateFields, getAutoFitExpandField, getAutoFitExtraRecords, getAutoFitFieldsFillViewport, getAutoFitFieldText, getAutoFitFieldWidths, getAutoFitHeaderHeights, getAutoFitIconFields, getAutoFitMaxColumns, getAutoFitMaxHeight, getAutoFitMaxRecords, getAutoFitMaxWidth, getAutoFitMaxWidthAsString, getAutoFitTimeFields, getAutoFitWidthApproach, getAutoPersistViewState, getAutoSaveEdits, getAutoSizeHeaderSpans, getBackgroundComponent, getBadFormulaResultValue, getBaseStyle, getBaseStyle, getBlockingRowCountFetch, getBody, getBodyBackgroundColor, getBodyOverflow, getBodyScrollLeft, getBodyScrollTop, getBodyStyleName, getBooleanBaseStyle, getBooleanFalseImage, getBooleanImageHeight, getBooleanImageWidth, getBooleanPartialImage, getBooleanTrueImage, getBriefRowRangeDisplayValue, getCanAddAISortFields, getCanAddFormulaFields, getCanAddSummaryFields, getCanAutoFitFields, getCancelEditingConfirmationMessage, getCanCollapseGroup, getCanDragSelect, getCanDragSelectText, getCanDropInEmptyArea, getCanEdit, getCanEditHilites, getCanEditTitles, getCanExpandMultipleRecords, getCanExpandRecordProperty, getCanExpandRecords, getCanFocusInEmptyGrid, getCanFreezeFields, getCanGroupBy, getCanHiliteViaAI, getCanHover, getCanMultiGroup, getCanMultiSort, getCanPickFields, getCanPickOmittedFields, getCanRemoveRecords, getCanReorderFields, getCanRequestRowCount, getCanResizeFields, getCanSaveSearches, getCanSelectCells, getCanSelectGroups, getCanSelectSummaryRows, getCanShowFilterEditor, getCanSort, getCanTabToHeader, getCanTabToSorter, getCellAriaState, getCellContextMenu, getCellContextMenuItems, getCellCSSText, getCellErrors, getCellHeight, getCellHoverComponent, getCellPadding, getCellPageRect, getCellRole, getCellRowSpan, getCellSelection, getCellStartRow, getCellStyle, getChartConstructor, getChartType, getCheckboxFieldFalseImage, getCheckboxFieldImageHeight, getCheckboxFieldImageWidth, getCheckboxFieldPartialImage, getCheckboxFieldTrueImage, getChildExpansionMode, getClearAllSortingText, getClearCriteriaOnFilterEditorHide, getClearFilterText, getClearFilterViaAIText, getClearSortFieldText, getClipHeaderTitles, getCollapseGroupOnRowClick, getColumnLeft, getColumnPageLeft, getColumnWidth, getConfigureGroupingText, getConfigureSortText, getConfirmCancelEditing, getConfirmDiscardEdits, getConfirmDiscardEditsMessage, getCriteria, getCriteriaIndicatorColor, getCriteriaIndicatorHeaderColor, getCurrentExpansionComponent, getCurrentExpansionComponent, getCurrentFieldWidths, getDataAsJSList, getDataAsRecordList, getDataFetchDelay, getDataPageSize, getDataSource, getDateFormatter, getDatetimeFormatter, getDeepCloneOnEdit, getDefaultDateFieldWidth, getDefaultDateTimeFieldWidth, getDefaultEditableDateFieldWidth, getDefaultEditableDateTimeFieldWidth, getDefaultFields, getDefaultFilterOperator, getDefaultFilterOperatorSuffix, getDefaultFormattedFieldValue, getDefaultFormattedFieldValue, getDefaultFormattedFieldValue, getDefaultFormattedValue, getDefaultTimeFieldWidth, getDeferRemoval, getDeselectOnPartialCheckboxClick, getDetailDS, getDetailField, getDisabledGroupByPrompt, getDiscardDataOnSetFetchOperation, getDiscardEditsOnHideField, getDiscardEditsSaveButtonTitle, getDisplayValue, getDisplayValue, getDisplayValue, getDisplayValue, getDisplayValue, getDragData, getDragDataAction, getDragHandleField, getDragHandleFieldTitle, getDragHandleIcon, getDragHandleIconSize, getDragScrollRedrawDelay, getDragTrackerMode, getDragTrackerStyle, getDrawAheadRatio, getDrawAllMaxCells, getDrawArea, getDrawnRowHeight, getDrawnRows, getDropValues, getDuplicateDragMessage, getEditByCell, getEditCol, getEditedCell, getEditedCell, getEditedCell, getEditedCell, getEditedRecord, getEditEvent, getEditFailedBaseStyle, getEditFailedCSSText, getEditFormItem, getEditFormItem, getEditFormulaFieldText, getEditOnF2Keypress, getEditOnFocus, getEditPendingBaseStyle, getEditPendingCSSText, getEditPendingMarkerStyle, getEditProxyConstructor, getEditRow, getEditSelectionType, getEditSummaryFieldText, getEditValue, getEditValue, getEditValueAsBoolean, getEditValueAsDate, getEditValueAsFloat, getEditValueAsInt, getEditValueAsRecord, getEditValueAsRecordArray, getEditValueAsString, getEditValues, getEditValues, getEmbeddedComponentIndent, getEmbeddedComponentMargin, getEmptyAIHoverContents, getEmptyCellValue, getEmptyMessage, getEmptyMessageStyle, getEmptyRowRangeDisplayValue, getEnforceVClipping, getEnterKeyEditAction, getEnumCriteriaAsInitialValues, getErrorIconHeight, getErrorIconSrc, getErrorIconWidth, getEscapeKeyEditAction, getEventColumn, getEventColumn, getExactRowCountFormat, getExpandedRecords, getExpansionCanEdit, getExpansionComponent, getExpansionComponentPoolingMode, getExpansionDetailField, getExpansionDetailRelated, getExpansionDetails, getExpansionEditor, getExpansionEditorCollapseOnSave, getExpansionEditorSaveButton, getExpansionEditorSaveButtonTitle, getExpansionEditorSaveDialogPrompt, getExpansionEditorShowSaveDialog, getExpansionField, getExpansionFieldFalseImage, getExpansionFieldImageHeight, getExpansionFieldImageShowRTL, getExpansionFieldImageShowSelected, getExpansionFieldImageStyle, getExpansionFieldImageWidth, getExpansionFieldTrueImage, getExpansionIndent, getExpansionLayout, getExpansionMode, getExpansionRelated, getExpansionScreen, getExplicitFetchDelay, getExportAll, getExportAlternateRowBGColor, getExportBGColor, getExportColumnBGColor, getExportDefaultBGColor, getExportFieldAlignments, getExportFields, getExportFieldWidths, getExportHeaderHeights, getExportHiddenFieldWidth, getExportIncludeSummaries, getExportRawNumbers, getExportRawValues, getExportRowBGColor, getExportTextColor, getExportWidthScale, getExportWrapHeaderTitles, getFetchDelay, getFetchFields, getFetchFieldsAsString, getFetchOperation, getFetchRequestProperties, getField, getField, getFieldAlignments, getFieldByName, getFieldContentWidth, getFieldCount, getFieldCriteriaText, getFieldName, getFieldNum, getFieldNum, getFieldPickerFieldProperties, getFieldPickerShowSampleValues, getFieldPickerWindow, getFields, getFieldsAsJavaScriptObjects, getFieldSearchOperator, getFieldState, getFieldTitle, getFieldTitle, getFieldVisibilitySubmenuTitle, getFieldWidth, getFieldWidth, getFilterButtonPrompt, getFilterButtonProperties, getFilterByCell, getFilterEditor, getFilterEditorCriteria, getFilterEditorCriteria, getFilterEditorCriteriaAsAdvancedCriteria, getFilterEditorCriterion, getFilterEditorHeight, getFilterEditorProperties, getFilterLocalData, getFilterOnKeypress, getFilterUsingText, getFilterViaAIMode, getFilterViaAIPanelInstructions, getFilterViaAIText, getFilterWindow, getFilterWindowCriteria, getFilterWindowCriteriaIndicator, getFilterWindowFilter, getFilterWindowInstructions, getFilterWindowTitle, getFirstCellStyle, getFixedFieldWidths, getFixedRecordHeights, getFocusRow, getFormattedRowCount, getFormattedRowRange, getFormattedValue, getFormulaBuilderSpanTitleSeparator, getFormulaFieldValue, getFreezeFieldText, getFrozenBaseStyle, getFrozenBodyStyleName, getFrozenFieldsMaxWidth, getFrozenFieldsMaxWidthAsInt, getFrozenHeaderBaseStyle, getFrozenHeaderTitleStyle, getFrozenRollOverCanvas, getFrozenRollUnderCanvas, getFullRowRangeDisplayValue, getGenerateClickOnEnter, getGenerateClickOnSpace, getGenerateDoubleClickOnEnter, getGenerateDoubleClickOnSpace, getGridAdditionalCriteriaText, getGridComponents, getGridRenderer, getGridSummary, getGridSummaryData, getGridSummaryRecordProperty, getGroupByAsyncThreshold, getGroupByFields, getGroupByFieldSummaries, getGroupByMaxRecords, getGroupByMaxRecordsExceededMessage, getGroupByText, getGroupedRecordIndex, getGroupIcon, getGroupIconSize, getGroupIconStyle, getGroupIndentSize, getGroupLeadingIndent, getGroupMembers, getGroupNodeBaseStyle, getGroupNodeStyle, getGroupSortDirection, getGroupState, getGroupSummaryData, getGroupSummaryData, getGroupSummaryData, getGroupSummaryData, getGroupSummaryRecordProperty, getGroupSummaryStyle, getGroupTitleColumnProperties, getGroupTitleField, getGroupTree, getGroupTreeSelection, getGroupTreeSelection, getGroupTreeSelection, getHeader, getHeaderAriaRole, getHeaderAutoFitEvent, getHeaderBackgroundColor, getHeaderBarStyle, getHeaderBaseStyle, getHeaderButtonAriaRole, getHeaderButtonAriaState, getHeaderButtonProperties, getHeaderContextMenu, getHeaderContextMenuItems, getHeaderHeight, getHeaderHoverAlign, getHeaderHoverHeight, getHeaderHoverOpacity, getHeaderHoverStyle, getHeaderHoverVAlign, getHeaderHoverWidth, getHeaderHoverWrap, getHeaderMenuButton, getHeaderMenuButtonHeight, getHeaderMenuButtonHeightAsString, getHeaderMenuButtonIcon, getHeaderMenuButtonIconHeight, getHeaderMenuButtonIconWidth, getHeaderMenuButtonSnapOffsetLeft, getHeaderMenuButtonWidth, getHeaderRadius, getHeaderShadowColor, getHeaderShadowHOffset, getHeaderShadowSoftness, getHeaderShadowVOffset, getHeaderSpan, getHeaderSpanContextMenuItems, getHeaderSpanHeight, getHeaderTitleStyle, getHeaderTitleVAlign, getHideEmptySummaryRow, getHideFilterEditorTitle, getHiliteCanReplaceValue, getHiliteEditorSpanTitleSeparator, getHiliteHTMLAfterFormat, getHiliteIconHeight, getHiliteIconLeftPadding, getHiliteIconPosition, getHiliteIconRightPadding, getHiliteIcons, getHiliteIconSize, getHiliteIconWidth, getHiliteProperty, getHiliteReplaceValueFieldTitle, getHiliteRowOnFocus, getHilites, getHiliteState, getHiliteViaAIMode, getHiliteViaAIText, getHoverMode, getHoverScreen, getHoverStyle, getIconCursor, getImageSize, getImplicitCriteria, getIncludeHilitesInSummaryFields, getIncludeInSummaryProperty, getInitialCriteria, getInitialSort, getInstantScrollTrackRedraw, getInvalidSummaryValue, getIsGrouped, getIsSeparatorProperty, getLastCellStyle, getLeaveScrollbarGap, getLinkTextProperty, getListEndEditAction, getLoadingDataMessage, getLoadingDataMessageStyle, getLoadingMessage, getLoadingRowCountDisplayIcoHeight, getLoadingRowCountDisplayIcon, getLoadingRowCountDisplayIconWidth, getLocateColumnsBy, getLocateRowsBy, getLongTextEditorThreshold, getLongTextEditorType, getMaxExpandedRecords, getMaxExpandedRecordsPrompt, getMaximumRowCountFormat, getMaxSummaryRowRecords, getMinFieldWidth, getMinHeight, getMinimumCellHeight, getMinimumRowCountFormat, getMissingSummaryFieldValue, getModalEditing, getMultiGroupDialogDefaults, getMultiGroupDialogProperties, getNavigateOnTab, getNeverValidate, getNewRecordRowMessage, getNewSearchText, getNormalBaseStyle, getNormalCellHeight, getNoSavedSearchesText, getNullGroupTitle, getOfflineMessageStyle, getOperatorIcon, getOriginalRecordList, getOriginalResultSet, getOriginBaseStyle, getOverflow, getPendingAsyncCellValue, getPlaceholderAIHoverContents, getPoolComponentsPerColumn, getPreserveFocusStylingOnMouseOut, getPreserveWhitespace, getPreventDuplicates, getPrintAutoFit, getPrintBaseStyle, getPrintBooleanBaseStyle, getPrintBooleanFalseImage, getPrintBooleanPartialImage, getPrintBooleanTrueImage, getPrintCheckboxFieldFalseImage, getPrintCheckboxFieldPartialImage, getPrintCheckboxFieldTrueImage, getPrintHeaderStyle, getPrintMaxRows, getPrintWrapCells, getProgressiveLoading, getQuickDrawAheadRatio, getRangeRowCountFormat, getRecordBaseStyleProperty, getRecordCanRemoveProperty, getRecordCanSelectProperty, getRecordCellRoleProperty, getRecordComponent, getRecordComponent, getRecordComponentHeight, getRecordComponentPoolingMode, getRecordComponentPosition, getRecordDetailDSProperty, getRecordDropPosition, getRecordEditProperty, getRecordEnabledProperty, getRecordIndex, getRecordIndex, getRecordList, getRecordRadius, getRecordRadiusTargets, getRecordRowAriaStateProperty, getRecordRowRoleProperty, getRecordScreen, getRecordShowRollOverProperty, getRecordSummaryAttributePrefix, getRecordSummaryBaseStyle, getRelatedDataSource, getRemovedCSSText, getRemoveFieldDefaults, getRemoveFieldProperties, getRemoveFieldTitle, getRemoveIcon, getRemoveIconSize, getRemoveIconStyle, getRemoveOperation, getReselectOnUpdate, getReselectOnUpdateNotifications, getResizeFieldsInRealTime, getResultSet, getReverseRTLAlign, getRollOverCanvas, getRollUnderCanvas, getRotatedHeaderMenuButtonHeight, getRotatedHeaderMenuButtonHeightAsString, getRotatedHeaderMenuButtonWidth, getRotateHeaderTitles, getRowAriaState, getRowCount, getRowCountDisplayPrecision, getRowCountRange, getRowCountStatus, getRowEndEditAction, getRowErrors, getRowHeight, getRowLocatorField, getRowLocatorFieldAsStringArray, getRowNum, getRowNumberField, getRowNumberStart, getRowNumberStyle, getRowPageTop, getRowRangeDisplay, getRowRangeDisplayStyle, getRowRangeDisplayValue, getRowRangeFormat, getRowRole, getRowSpan, getRowSpanEditMode, getRowSpanSelectionMode, getRowTop, getSaveByCell, getSaveCriteriaInViewState, getSaveDefaultSearch, getSavedSearchAdminRole, getSavedSearchAdminSeparator, getSavedSearchDS, getSavedSearchId, getSavedSearchStoredState, getSavedSearchText, getSavedViewState, getSaveLocally, getSaveRequestProperties, getScreenReaderCellSeparator, getScreenReaderIncludeFieldTitles, getScreenReaderNavigateByCell, getScreenReaderRowSeparator, getScreenReaderWriteRowLabelledBy, getScrollRedrawDelay, getScrollToCellXPosition, getScrollToCellYPosition, getScrollWheelRedrawDelay, getSearchForm, getSearchFormAsValuesManager, getSelectCellTextOnClick, getSelectedCellData, getSelectedRecords, getSelectedRecords, getSelectedState, getSelectHeaderOnSort, getSelection, getSelection, getSelectionAppearance, getSelectionType, getSelectOnEdit, getSelectOnExpandRecord, getSeparatorRowStyle, getShowAllColumns, getShowAllRecords, getShowAsynchGroupingPrompt, getShowBackgroundComponents, getShowCellContextMenus, getShowClippedHeaderTitlesOnHover, getShowClippedValuesOnHover, getShowCollapsedGroupSummary, getShowComplexFields, getShowDetailFields, getShowDropLines, getShowEllipsisWhenClipped, getShowEmptyMessage, getShowErrorIcons, getShowExpansionEditorSaveButton, getShowFilterEditor, getShowFilterEditorHovers, getShowFilterEditorTitle, getShowFilterWindowCriteriaIndicator, getShowGridSummary, getShowGroupSummary, getShowGroupSummaryInHeader, getShowGroupTitleColumn, getShowGroupTitleInFrozenBody, getShowHeader, getShowHeaderContextMenu, getShowHeaderMenuButton, getShowHeaderPartialSelection, getShowHeaderShadow, getShowHeaderSpanContextMenu, getShowHeaderSpanTitlesInFormulaBuilder, getShowHeaderSpanTitlesInHiliteEditor, getShowHeaderSpanTitlesInSortEditor, getShowHiddenFields, getShowHilitesInGroupSummary, getShowHover, getShowHoverComponents, getShowHoverOnDisabledCells, getShowInitialDragHandles, getShowNewRecordRow, getShowRecordComponents, getShowRecordComponentsByCell, getShowRollOver, getShowRollOverCanvas, getShowRollOverInExpansion, getShowRollUnderCanvas, getShowRowNumbers, getShowSavedSearchesByDS, getShowSelectedRollOverCanvas, getShowSelectedRollUnderCanvas, getShowSelectedStyle, getShowSelectionCanvas, getShowSelectionUnderCanvas, getShowSortArrow, getShowSortNumerals, getShowTreeColumnPicker, getShrinkForFreeze, getSingleCellValueProperty, getSkinImgDir, getSkipLineBreaks, getSort, getSortArrowMenuButtonSpaceOffset, getSortAscendingImage, getSortAscendingImageAsImgHTMLProperties, getSortBinaryByFileName, getSortByGroupFirst, getSortDescendingImage, getSortDescendingImageAsImgHTMLProperties, getSortDirection, getSortEditorSpanTitleSeparator, getSorterButtonTitle, getSortField, getSortFieldAscendingText, getSortFieldCount, getSortFieldDescendingText, getSortNumeralHTML, getSortNumeralMenuButtonSpaceOffset, getSortNumeralStyle, getSortSpecifier, getSortState, getSpanContextMenu, getSpannedHeaderBaseStyle, getSparseFieldState, getStopOnErrors, getStyledRowEnds, getStyleName, getSummaryFieldValue, getSummaryRow, getSummaryRowCriteria, getSummaryRowDataSource, getSummaryRowFetchRequestProperties, getSummaryRowHeight, getSummaryRowStyle, getTableRowStyle, getTallBaseStyle, getTestInstance, getTitleField, getTitleFieldValue, getToggleFreezeText, getTotalRows, getTouchScrollRedrawDelay, getTrackerImage, getTrackerImageAsImgHTMLProperties, getUnfreezeFieldText, getUngroupText, getUnknownRowCountDisplayValue, getUnremoveIcon, getUpdateOperation, getUpdateSummariesDuringEditing, getUseAdvancedCriteria, getUseAdvancedFieldPicker, getUseCellRollOvers, getUseClientFiltering, getUseCopyPasteShortcuts, getUseFlatFields, getUseLegacyDefaultFormattedValue, getUseMultiSelectForFilterValueMaps, getUserCriteriaState, getUseRemoteValidators, getUseRowSpanStyling, getValidateByCell, getValidateOnChange, getValueIcon, getValueIconCursor, getValueIconHeight, getValueIconLeftPadding, getValueIconRightPadding, getValueIconSize, getValueIconWidth, getViewState, getVirtualScrolling, getVisibleRows, getWaitForSave, getWarnOnRemoval, getWarnOnRemovalMessage, getWarnOnUnmappedValueFieldChange, getWrapCells, getWrapHeaderSpanTitles, getWrapHeaderTitles, groupBy, groupSortNormalizer, hasChanges, hasChanges, hasErrors, headerHoverHTML, headerTitleClipped, hideDragHandles, hideField, hideField, hideFields, hideFields, hideFields, hideFields, hiliteViaAI, hiliteViaAI, hiliteViaAI, invalidateCache, invalidateRecordComponents, isCheckboxField, isExpanded, isExpansionField, isGrouped, isGroupNode, isPartiallySelected, isRowNumberField, isSelected, isSortField, isSummaryRecord, markForRedraw, markForRedraw, markRecordRemoved, markRecordsRemoved, markRecordsRemoved, markRecordsRemoved, markSelectionRemoved, onInit_ListGrid, openGroup, openRecordDetailGrid, openRecordEditor, preloadImages, recalculateGridSummary, recalculateSummaries, recalculateSummaries, recalculateSummaries, recordClick, recordMarkedAsRemoved, redrawHeader, refreshCell, refreshCell, refreshCellStyle, refreshData, refreshData, refreshFields, refreshRecordComponent, refreshRecordComponent, refreshRow, regroup, removeData, removeData, removeData, removeEmbeddedComponent, removeEmbeddedComponent, removeEmbeddedComponent, removeRecordClick, removeSelectedData, removeSelectedData, removeSelectedData, removeSelectedData, reorderField, reorderFields, resizeField, resort, rowClick, rowClick, rowDoubleClick, rowDoubleClick, rowHasChanges, rowHasChanges, rowHasErrors, saveAllEdits, saveAllEdits, saveAllEdits, saveEdits, saveEdits, saveEdits, saveEdits, scrollBodyTo, scrollToCell, scrollToCell, scrollToCell, scrollToColumn, scrollToColumn, scrollToRow, scrollToRow, selectAllRecords, selectRange, selectRange, selectRecord, selectRecord, selectRecord, selectRecord, selectRecords, selectRecords, selectRecords, selectRecords, selectSingleRecord, selectSingleRecord, setAddDropValues, setAddFormulaFieldText, setAddOperation, setAddSummaryFieldText, setAdvancedFieldPickerThreshold, setAdvancedFilteringText, setAiFilterWindowHint, setAiFilterWindowInstructions, setAiFilterWindowTitle, setAiHoverContentsPrefix, setAiHoverRetryDelay, setAiSortFieldMaxRecordsMessage, setAllowFilterExpressions, setAllowFilterOperators, setAllowFilterWindow, setAllowRowSpanning, setAlternateBodyStyleName, setAlternateFieldFrequency, setAlternateFieldStyles, setAlternateFieldSuffix, setAlternateRecordFrequency, setAlternateRecordStyles, setAlternateRecordSuffix, setAlwaysShowEditors, setAlwaysShowOperatorIcon, setAnimateRemoveRecord, setAnimateRemoveSpeed, setAnimateRemoveTime, setAnimateRollOver, setAnimateRollUnder, setAnimateSelection, setAnimateSelectionUnder, setApplyFormulaAfterSummary, setApplyRowCountToLength, setApplyRowNumberStyle, setApproximateRowCountFormat, setAriaRole, setArrowKeyAction, setArrowKeyEditAction, setAsyncErrorCellValue, setAsynchGroupingPrompt, setAsyncMissingCellValue, setAutoChildProperties, setAutoComplete, setAutoConfirmSaveEdits, setAutoFetchAsFilter, setAutoFetchData, setAutoFetchDisplayMap, setAutoFetchRowCount, setAutoFitAllText, setAutoFitClipFields, setAutoFitData, setAutoFitDateFields, setAutoFitExpandField, setAutoFitExtraRecords, setAutoFitFieldsFillViewport, setAutoFitFieldText, setAutoFitFieldWidths, setAutoFitHeaderHeights, setAutoFitIconFields, setAutoFitMaxColumns, setAutoFitMaxHeight, setAutoFitMaxRecords, setAutoFitMaxWidth, setAutoFitMaxWidth, setAutoFitTimeFields, setAutoFitWidth, setAutoFitWidthApproach, setAutoPersistViewState, setAutoSaveEdits, setAutoSizeHeaderSpans, setBadFormulaResultValue, setBaseStyle, setBlockingRowCountFetch, setBodyBackgroundColor, setBodyOverflow, setBodyStyleName, setBooleanBaseStyle, setBooleanFalseImage, setBooleanImageHeight, setBooleanImageWidth, setBooleanPartialImage, setBooleanTrueImage, setBriefRowRangeDisplayValue, setCanAddAISortFields, setCanAddFormulaFields, setCanAddSummaryFields, setCanAutoFitFields, setCancelEditingConfirmationMessage, setCanCollapseGroup, setCanDragSelect, setCanDragSelectText, setCanDropInEmptyArea, setCanEdit, setCanEditHilites, setCanEditTitles, setCanExpandMultipleRecords, setCanExpandRecordProperty, setCanExpandRecords, setCanFocusInEmptyGrid, setCanFreezeFields, setCanGroupBy, setCanHiliteViaAI, setCanHover, setCanMultiGroup, setCanMultiSort, setCanPickFields, setCanPickOmittedFields, setCanRemoveRecords, setCanReorderFields, setCanRequestRowCount, setCanResizeFields, setCanSaveSearches, setCanSelectCells, setCanSelectGroups, setCanSelectRecordCustomizer, setCanSelectSummaryRows, setCanShowFilterEditor, setCanSort, setCanTabToHeader, setCanTabToSorter, setCellContextMenuItemsCustomizer, setCellCSSTextCustomizer, setCellFormatter, setCellHeight, setCellPadding, setCellRole, setChartConstructor, setChartType, setCheckboxFieldFalseImage, setCheckboxFieldImageHeight, setCheckboxFieldImageWidth, setCheckboxFieldPartialImage, setCheckboxFieldProperties, setCheckboxFieldTrueImage, setChildExpansionMode, setClearAllSortingText, setClearCriteriaOnFilterEditorHide, setClearFilterText, setClearFilterViaAIText, setClearSortFieldText, setClipHeaderTitles, setCollapseGroupOnRowClick, setConfigureGroupingText, setConfigureSortText, setConfirmCancelEditing, setConfirmDiscardEdits, setConfirmDiscardEditsMessage, setCriteria, setCriteriaIndicatorColor, setCriteriaIndicatorHeaderColor, setData, setData, setData, setDataFetchDelay, setDataPageSize, setDataProperties, setDataSource, setDataSource, setDataSource, setDateFormatter, setDateInputFormat, setDatetimeFormatter, setDeepCloneOnEdit, setDefaultDateFieldWidth, setDefaultDateTimeFieldWidth, setDefaultEditableDateFieldWidth, setDefaultEditableDateTimeFieldWidth, setDefaultFields, setDefaultFieldWidthCustomizer, setDefaultFilterOperator, setDefaultFilterOperatorSuffix, setDefaultProperties, setDefaultTimeFieldWidth, setDeferRemoval, setDeselectOnPartialCheckboxClick, setDetailDS, setDetailDS, setDetailField, setDisabledGroupByPrompt, setDiscardDataOnSetFetchOperation, setDiscardEditsOnHideField, setDiscardEditsSaveButtonTitle, setDontAutoDestroyComponent, setDragDataAction, setDragDataCustomizer, setDragHandleFieldTitle, setDragHandleIcon, setDragHandleIconSize, setDragScrollRedrawDelay, setDragTrackerIconCustomizer, setDragTrackerMode, setDragTrackerStyle, setDragTrackerTitleCustomizer, setDrawAheadRatio, setDrawAllMaxCells, setDropValues, setDuplicateDragMessage, setEditByCell, setEditEvent, setEditFailedBaseStyle, setEditFailedCSSText, setEditFormulaFieldText, setEditOnF2Keypress, setEditOnFocus, setEditorCustomizer, setEditorValueMap, setEditorValueMap, setEditPendingBaseStyle, setEditPendingCSSText, setEditPendingMarkerStyle, setEditProxyConstructor, setEditSelectionType, setEditSummaryFieldText, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValue, setEditValues, setEmbeddedComponentIndent, setEmbeddedComponentMargin, setEmptyAIHoverContents, setEmptyCellValue, setEmptyMessage, setEmptyMessageStyle, setEmptyRowRangeDisplayValue, setEnforceVClipping, setEnterKeyEditAction, setEnumCriteriaAsInitialValues, setErrorIconHeight, setErrorIconSrc, setErrorIconWidth, setEscapeKeyEditAction, setExactRowCountFormat, setExpansionCanEdit, setExpansionComponentPoolingMode, setExpansionEditorSaveDialogPrompt, setExpansionEditorShowSaveDialog, setExpansionFieldFalseImage, setExpansionFieldImageHeight, setExpansionFieldImageShowRTL, setExpansionFieldImageShowSelected, setExpansionFieldImageStyle, setExpansionFieldImageWidth, setExpansionFieldTrueImage, setExpansionIndent, setExpansionMode, setExpansionScreen, setExplicitFetchDelay, setExportAll, setExportAlternateRowBGColor, setExportDefaultBGColor, setExportFieldAlignments, setExportFields, setExportFieldWidths, setExportHeaderHeights, setExportHiddenFieldWidth, setExportIncludeSummaries, setExportRawNumbers, setExportRawValues, setExportWidthScale, setExportWrapHeaderTitles, setFastCellUpdates, setFetchDelay, setFetchFields, setFetchFields, setFetchOperation, setFetchRequestProperties, setFieldButtonProperties, setFieldCellIcon, setFieldCriteriaText, setFieldError, setFieldError, setFieldHeaderBaseStyle, setFieldHeaderTitleStyle, setFieldIcon, setFieldMaxWidth, setFieldMinWidth, setFieldPickerFieldProperties, setFieldPickerShowSampleValues, setFieldProperties, setFieldProperties, setFields, setFields, setFieldSearchOperator, setFieldState, setFieldTitle, setFieldTitle, setFieldVisibilitySubmenuTitle, setFilterButtonPrompt, setFilterButtonProperties, setFilterByCell, setFilterEditorCriteria, setFilterEditorHeight, setFilterEditorProperties, setFilterEditorProperties, setFilterLocalData, setFilterOnKeypress, setFilterUsingText, setFilterViaAIMode, setFilterViaAIPanelInstructions, setFilterViaAIText, setFilterWindowCriteria, setFilterWindowInstructions, setFilterWindowTitle, setFirstCellStyle, setFixedFieldWidths, setFixedRecordHeights, setFormulaBuilderSpanTitleSeparator, setFreezeFieldText, setFrozenBaseStyle, setFrozenBodyStyleName, setFrozenFieldsMaxWidth, setFrozenFieldsMaxWidth, setFrozenHeaderBaseStyle, setFrozenHeaderTitleStyle, setFullRowRangeDisplayValue, setGenerateClickOnEnter, setGenerateClickOnSpace, setGenerateDoubleClickOnEnter, setGenerateDoubleClickOnSpace, setGridAdditionalCriteriaText, setGridComponents, setGridComponents, setGridSummaryRecordProperty, setGroupByAsyncThreshold, setGroupByFieldSummaries, setGroupByMaxRecords, setGroupByMaxRecordsExceededMessage, setGroupByText, setGroupIcon, setGroupIconSize, setGroupIconStyle, setGroupIndentSize, setGroupLeadingIndent, setGroupNodeBaseStyle, setGroupNodeStyle, setGroupSortDirection, setGroupSortNormalizer, setGroupStartOpen, setGroupStartOpen, setGroupState, setGroupSummaryRecordProperty, setGroupSummaryStyle, setGroupTitleColumnProperties, setGroupTitleField, setHeaderAriaRole, setHeaderAutoFitEvent, setHeaderBackgroundColor, setHeaderBarStyle, setHeaderBaseStyle, setHeaderButtonAriaRole, setHeaderButtonAriaState, setHeaderButtonProperties, setHeaderHeight, setHeaderHoverAlign, setHeaderHoverFormatter, setHeaderHoverHeight, setHeaderHoverOpacity, setHeaderHoverStyle, setHeaderHoverVAlign, setHeaderHoverWidth, setHeaderHoverWrap, setHeaderMenuButtonHeight, setHeaderMenuButtonHeight, setHeaderMenuButtonIcon, setHeaderMenuButtonIconHeight, setHeaderMenuButtonIconWidth, setHeaderMenuButtonSnapOffsetLeft, setHeaderMenuButtonWidth, setHeaderRadius, setHeaderShadowColor, setHeaderShadowHOffset, setHeaderShadowSoftness, setHeaderShadowVOffset, setHeaderSpanBaseStyle, setHeaderSpanButtonProperties, setHeaderSpanHeaderTitle, setHeaderSpanHeight, setHeaderSpans, setHeaderSpanTitle, setHeaderSpanTitleStyle, setHeaderTitleStyle, setHeaderTitleVAlign, setHideEmptySummaryRow, setHideFilterEditorTitle, setHideOnPhone, setHideOnTablet, setHiliteCanReplaceValue, setHiliteEditorSpanTitleSeparator, setHiliteHTMLAfterFormat, setHiliteIconHeight, setHiliteIconLeftPadding, setHiliteIconPosition, setHiliteIconRightPadding, setHiliteIcons, setHiliteIconSize, setHiliteIconWidth, setHiliteProperty, setHiliteReplaceValueFieldTitle, setHiliteRowOnFocus, setHilites, setHiliteState, setHiliteViaAIMode, setHiliteViaAIText, setHoverCustomizer, setHoverMode, setHoverScreen, setHoverStyle, setIconCursor, setImageSize, setImplicitCriteria, setImplicitCriteria, setImplicitCriteria, setInactiveCellFormatter, setIncludeHilitesInSummaryFields, setIncludeInSummaryProperty, setInitialCriteria, setInitialSort, setInstantScrollTrackRedraw, setInvalidSummaryValue, setIsSeparatorProperty, setLastCellStyle, setLeaveHeaderMenuButtonSpace, setLeaveScrollbarGap, setLinkTextProperty, setListEndEditAction, setLoadingDataMessage, setLoadingDataMessageStyle, setLoadingMessage, setLoadingRowCountDisplayIcoHeight, setLoadingRowCountDisplayIcon, setLoadingRowCountDisplayIconWidth, setLocateColumnsBy, setLocateRowsBy, setLogicalStructure, setLongTextEditorThreshold, setLongTextEditorType, setMaxExpandedRecords, setMaxExpandedRecordsPrompt, setMaximumRowCountFormat, setMaxSummaryRowRecords, setMinFieldWidth, setMinHeight, setMinimumCellHeight, setMinimumRowCountFormat, setMissingSummaryFieldValue, setModalEditing, setMultiGroupDialogDefaults, setMultiGroupDialogProperties, setMultiSortDialogDefaults, setMultiSortDialogProperties, setNavigateOnTab, setNeverValidate, setNewRecordRowMessage, setNewSearchText, setNormalBaseStyle, setNormalCellHeight, setNoSavedSearchesText, setNullGroupTitle, setOfflineMessageStyle, setOriginBaseStyle, setOverflow, setPendingAsyncCellValue, setPlaceholderAIHoverContents, setPoolComponentsPerColumn, setPreserveFocusStylingOnMouseOut, setPreserveWhitespace, setPreventDuplicates, setPrintAutoFit, setPrintBaseStyle, setPrintBooleanBaseStyle, setPrintBooleanFalseImage, setPrintBooleanPartialImage, setPrintBooleanTrueImage, setPrintCheckboxFieldFalseImage, setPrintCheckboxFieldPartialImage, setPrintCheckboxFieldTrueImage, setPrintHeaderStyle, setPrintMaxRows, setPrintWrapCells, setProgressiveLoading, setQuickDrawAheadRatio, setRangeRowCountFormat, setRecordBaseStyleProperty, setRecordCanRemoveProperty, setRecordCanSelectProperty, setRecordCellRoleProperty, setRecordComponentHeight, setRecordComponentPoolingMode, setRecordComponentPosition, setRecordDetailDSProperty, setRecordEditProperty, setRecordEnabledProperty, setRecordRadius, setRecordRadiusTargets, setRecordRowAriaStateProperty, setRecordRowRoleProperty, setRecords, setRecordScreen, setRecordShowRollOverProperty, setRecordSummaryAttributePrefix, setRecordSummaryBaseStyle, setRemovedCSSText, setRemoveFieldProperties, setRemoveFieldTitle, setRemoveIcon, setRemoveIconSize, setRemoveIconStyle, setRemoveOperation, setReselectOnUpdate, setReselectOnUpdateNotifications, setResizeFieldsInRealTime, setReverseRTLAlign, setRollOverCanvasProperties, setRollUnderCanvasProperties, setRotatedHeaderMenuButtonHeight, setRotatedHeaderMenuButtonHeight, setRotatedHeaderMenuButtonWidth, setRotateHeaderTitles, setRowAriaState, setRowCountDisplayPrecision, setRowEndEditAction, setRowErrors, setRowErrors, setRowLocatorField, setRowLocatorField, setRowNumberFieldProperties, setRowNumberStart, setRowNumberStyle, setRowRangeDisplayStyle, setRowRangeFormat, setRowRole, setRowSpanEditMode, setRowSpanSelectionMode, setSaveByCell, setSaveCriteriaInViewState, setSaveDefaultSearch, setSavedSearchAdminRole, setSavedSearchDS, setSavedSearchId, setSavedSearchStoredState, setSavedSearchText, setSaveLocally, setSaveRequestProperties, setScreenReaderCellSeparator, setScreenReaderIncludeFieldTitles, setScreenReaderNavigateByCell, setScreenReaderRowSeparator, setScreenReaderWriteRowLabelledBy, setScrollRedrawDelay, setScrollToCellXPosition, setScrollToCellYPosition, setScrollWheelRedrawDelay, setSearchForm, setSearchForm, setSelectCellTextOnClick, setSelectedState, setSelectHeaderOnSort, setSelectionAppearance, setSelectionCanvasProperties, setSelectionType, setSelectionUnderCanvasProperties, setSelectOnEdit, setSelectOnExpandRecord, setSeparatorRowStyle, setShowAllColumns, setShowAllRecords, setShowAsynchGroupingPrompt, setShowBackgroundComponents, setShowCellContextMenus, setShowClippedHeaderTitlesOnHover, setShowClippedValuesOnHover, setShowCollapsedGroupSummary, setShowComplexFields, setShowDetailFields, setShowDropLines, setShowEllipsisWhenClipped, setShowEmptyMessage, setShowErrorIcons, setShowFilterEditor, setShowFilterEditorHovers, setShowFilterEditorTitle, setShowFilterWindowCriteriaIndicator, setShowGridSummary, setShowGroupSummary, setShowGroupSummaryInHeader, setShowGroupTitleColumn, setShowGroupTitleInFrozenBody, setShowHeader, setShowHeaderContextMenu, setShowHeaderMenuButton, setShowHeaderPartialSelection, setShowHeaderShadow, setShowHeaderSpanContextMenu, setShowHeaderSpanTitlesInFormulaBuilder, setShowHeaderSpanTitlesInHiliteEditor, setShowHeaderSpanTitlesInSortEditor, setShowHiddenFields, setShowHilitesInGroupSummary, setShowHover, setShowHoverComponents, setShowHoverOnDisabledCells, setShowInitialDragHandles, setShowNewRecordRow, setShowRecordComponents, setShowRecordComponentsByCell, setShowRollOver, setShowRollOverCanvas, setShowRollOverInExpansion, setShowRollUnderCanvas, setShowRowNumbers, setShowSavedSearchesByDS, setShowSelectedRollOverCanvas, setShowSelectedRollUnderCanvas, setShowSelectedStyle, setShowSelectionCanvas, setShowSelectionUnderCanvas, setShowSortArrow, setShowSortNumerals, setShowTreeColumnPicker, setShrinkForFreeze, setSingleCellValueProperty, setSkinImgDir, setSkipLineBreaks, setSort, setSortArrowMenuButtonSpaceOffset, setSortAscendingImage, setSortAscendingImage, setSortBinaryByFileName, setSortByGroupFirst, setSortDescendingImage, setSortDescendingImage, setSortDirection, setSortEditorSpanTitleSeparator, setSorterButtonTitle, setSortField, setSortField, setSortField, setSortFieldAscendingText, setSortFieldDescendingText, setSortNumeralHTMLCustomizer, setSortNumeralMenuButtonSpaceOffset, setSortNumeralStyle, setSortState, setSpannedHeaderBaseStyle, setSparseFieldState, setStopOnErrors, setStyledRowEnds, setStyleName, setSummaryRowCriteria, setSummaryRowDataSource, setSummaryRowFetchRequestProperties, setSummaryRowHeight, setSummaryRowStyle, setTableRowStyle, setTallBaseStyle, setTitleField, setTouchScrollRedrawDelay, setTrackerImage, setTrackerImage, setUnfreezeFieldText, setUngroupText, setUnknownRowCountDisplayValue, setUnremoveIcon, setUpdateOperation, setUpdateSummariesDuringEditing, setUseAdvancedCriteria, setUseAdvancedFieldPicker, setUseCellRollOvers, setUseClientFiltering, setUseCopyPasteShortcuts, setUseFlatFields, setUseLegacyDefaultFormattedValue, setUseMultiSelectForFilterValueMaps, setUserAIFilterRequest, setUserAIFilterRequest, setUserAIFilterRequest, setUserCriteriaState, setUseRemoteValidators, setUserFormula, setUserFormula, setUserFormula, setUserFormulaText, setUserFormulaText, setUserFormulaText, setUseRowSpanStyling, setUserSummary, setUserSummary, setUserSummary, setUserSummaryText, setUserSummaryText, setUserSummaryText, setValidateByCell, setValidateOnChange, setValueIconHeight, setValueIconLeftPadding, setValueIconRightPadding, setValueIconSize, setValueIconWidth, setValueMap, setValueMap, setViewState, setVirtualScrolling, setWaitForSave, setWarnOnRemoval, setWarnOnRemovalMessage, setWarnOnUnmappedValueFieldChange, setWrapCells, setWrapHeaderSpanTitles, setWrapHeaderTitles, shouldIncludeHiliteInSummaryField, showAIFilterWindow, showAIHiliteWindow, showDragHandles, showField, showField, showFields, showFields, showFields, showFields, showFilterWindow, showRecordComponent, sort, sort, sort, sort, startEditing, startEditing, startEditing, startEditing, startEditingNew, startEditingNew, startEditingNew, stopHover, summaryUpdated, toggleSort, transferRecords, transferSelectedData, transferSelectedData, unfreezeField, unfreezeField, unfreezeField, unfreezeField, unfreezeFields, unfreezeFields, ungroup, unmarkRecordRemoved, unsort, updateData, updateData, updateData, updateRecordComponent, userSelectAllRecords, validateCell, validateCell, validateRow, willFetchData, willFetchData`

    - ### Methods inherited from class com.smartgwt.client.widgets.layout.VLayout

      `setDefaultProperties, setLogicalStructure`

    - ### Methods inherited from class com.smartgwt.client.widgets.layout.Layout

      `addMember, addMember, addMember, addMember, addMemberPostCreate, addMemberPostCreate, addMemberPreCreate, addMemberPreCreate, addMembers, addMembers, addMembersChangedHandler, getAnimateMembers, getAnimateMemberTime, getCanDropComponents, getChildTabPosition, getDefaultResizeBars, getDropComponent, getDropLine, getDropLineThickness, getDropPosition, getEnforcePolicy, getHPolicy, getLayoutBottomMargin, getLayoutEndMargin, getLayoutLeftMargin, getLayoutMargin, getLayoutRightMargin, getLayoutStartMargin, getLayoutTopMargin, getLocateMembersBy, getLocateMembersType, getManagePercentBreadth, getMember, getMember, getMemberDefaultBreadth, getMemberNumber, getMemberNumber, getMemberOverlap, getMembers, getMembersLength, getMembersMargin, getMinMemberLength, getMinMemberSize, getPaddingAsLayoutMargin, getResizeBar, getResizeBarClass, getResizeBarSize, getReverseOrder, getShowDragPlaceHolder, getStackZIndex, getVertical, getVPolicy, hasMember, hideDropLine, hideMember, hideMember, layoutIsDirty, onInit_Layout, reflow, reflow, reflowNow, removeMember, removeMembers, removeMembers, reorderMember, reorderMembers, replaceMember, revealChild, revealChild, setAlign, setAlign, setAnimateMembers, setAnimateMemberTime, setCanDropComponents, setDefaultLayoutAlign, setDefaultLayoutAlign, setDefaultProperties, setDefaultResizeBars, setDropLineProperties, setDropLineThickness, setEnforcePolicy, setHPolicy, setLayoutBottomMargin, setLayoutEndMargin, setLayoutLeftMargin, setLayoutMargin, setLayoutRightMargin, setLayoutStartMargin, setLayoutTopMargin, setLocateMembersBy, setLocateMembersType, setLogicalStructure, setManagePercentBreadth, setMemberOverlap, setMembers, setMembersMargin, setMinBreadthMember, setMinBreadthMember, setMinBreadthMember, setMinMemberLength, setMinMemberSize, setPaddingAsLayoutMargin, setPlaceHolderDefaults, setPlaceHolderProperties, setResizeBarClass, setResizeBarSize, setReverseOrder, setShowDragPlaceHolder, setStackZIndex, setVertical, setVisibleMember, setVPolicy, showMember, showMember`

    - ### Methods inherited from class com.smartgwt.client.widgets.Canvas

      `addChild, addChild, addChild, addChild, addChild, addClearHandler, addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragRepositionMoveHandler, addDragRepositionStartHandler, addDragRepositionStopHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDropHandler, addDropMoveHandler, addDropOutHandler, addDropOverHandler, addFocusChangedHandler, addHoverHandler, addHoverHiddenHandler, addKeyDownHandler, addKeyPressHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseStillDownHandler, addMouseUpHandler, addMouseWheelHandler, addMovedHandler, addParentMovedHandler, addPeer, addPeer, addPeer, addPeer, addResizedHandler, addRightMouseDownHandler, addRuleContextChangedHandler, addScrolledHandler, addShowContextMenuHandler, addSnapAlignCandidate, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clearExplicitTabIndex, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsEventTarget, containsFocus, containsPoint, containsPoint, dataContextChanged, deparent, depeer, disable, enable, encloses, focus, focusAfterGroup, focusAtEnd, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAdaptiveHeightPriority, getAdaptiveWidthPriority, getAlwaysManageFocusNavigation, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideEffect, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeLayoutMode, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaHandleID, getAutoMaskComponents, getAutoParent, getAutoPopulateData, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBorderRadius, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanAdaptHeight, getCanAdaptWidth, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanFocus, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenResizeSnapAlign, getChildrenSnapAlign, getChildrenSnapCenterAlign, getChildrenSnapEdgeAlign, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContents, getContextMenu, getCorrectZoomOverflow, getCursor, getDataContext, getDataPath, getDefaultHeight, getDefaultWidth, getDefiningProperty, getDefiningPropertyName, getDefiningPropertyNameOptions, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragMaxHeight, getDragMaxWidth, getDragMinHeight, getDragMinWidth, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragTargetAsString, getDragType, getDropTarget, getDropTargetAsString, getDropTypes, getDropTypesAsString, getDynamicContents, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getElement, getElement, getEnableWhen, getEndLine, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFloatingScrollbars, getFormItemAutoChild, getForwardSVGeventsToObject, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupPadding, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverAutoFitMaxWidth, getHoverAutoFitMaxWidthAsString, getHoverAutoFitWidth, getHoverComponent, getHoverDelay, getHoverFocusKey, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverPersist, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlElementAsString, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getIsPrinting, getIsRuleScope, getIsSnapAlignCandidate, getKeepInParentRect, getLayoutAlign, getLeaveGroupLabelSpace, getLeavePageSpace, getLeft, getLeftAsString, getLocalId, getLocateByIDOnly, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getLocatorName, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMatchElementHeight, getMatchElementWidth, getMaxHeight, getMaxWidth, getMaxZoomOverflowError, getMenuConstructor, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getName, getNativeAutoHideScrollbars, getNextZIndex, getNoDoubleClicks, getNoDropCursor, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getPaletteDefaults, getPanelContainer, getParentCanvas, getParentElement, getPeers, getPendingMarkerStyle, getPendingMarkerVisible, getPercentBox, getPercentSource, getPersistentMatchElement, getPointerSettings, getPointerTarget, getPointerTargetAsString, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrintStyleName, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getReceiveScrollbarEvents, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getRuleContext, getRuleContext, getRuleScope, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowColor, getShadowDepth, getShadowHOffset, getShadowImage, getShadowOffset, getShadowSoftness, getShadowSpread, getShadowVOffset, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowPointer, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSizeMayChangeOnRedraw, getSnapAlignCandidates, getSnapAlignCenterLineStyle, getSnapAlignEdgeLineStyle, getSnapAxis, getSnapEdge, getSnapGridLineProperties, getSnapGridStyle, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapPosition, getSnapPosition, getSnapResizeToAlign, getSnapResizeToGrid, getSnapTo, getSnapToAlign, getSnapToCenterAlign, getSnapToEdgeAlign, getSnapToGrid, getSnapVDirection, getSnapVGap, getStartLine, getTabIndex, getTestDataContext, getTitle, getTooltip, getTop, getTopAsString, getTopElement, getUISummary, getUpdateTabPositionOnDraw, getUpdateTabPositionOnReparent, getUseBackMask, getUseCSSShadow, getUseDragMask, getUseImageForSVG, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getValuesManagerAsString, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWhen, getVisibleWidth, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getWorkflows, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, initComplete, intersects, isDirty, isDisabled, isFocused, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, pageScrollDown, pageScrollUp, parentResized, placeNear, placeNear, placeNear, print, print, print, print, printComponents, provideRuleContext, provideRuleContext, redraw, redraw, registerFontScaledPaddingStyles, removeChild, removeChild, removePeer, removePeer, removeRuleContext, removeSnapAlignCandidate, resizeAutoChildAttributes, resizeBy, resizeControls, resizeControlsTo, resizeFonts, resizeFonts, resizeFonts, resizeFontsTo, resizeIcons, resizePadding, resizePadding, resizeTo, resizeTo, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAdaptHeightByCustomizer, setAdaptiveHeightPriority, setAdaptiveWidthPriority, setAdaptWidthByCustomizer, setAllowExternalFilters, setAlwaysManageFocusNavigation, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideEffect, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeLayoutMode, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoHeight, setAutoMaskComponents, setAutoParent, setAutoPopulateData, setAutoResizeAutoChildAttributes, setAutoResizeIcons, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBorderRadius, setBottom, setCanAcceptDrop, setCanAdaptHeight, setCanAdaptWidth, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanSelectText, setChildren, setChildrenResizeSnapAlign, setChildrenSnapAlign, setChildrenSnapCenterAlign, setChildrenSnapEdgeAlign, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContents, setContextMenu, setCorrectZoomOverflow, setCursor, setDataContext, setDataPath, setDefaultHeight, setDefaultPageSpace, setDefaultProperties, setDefaultShowCustomScrollbars, setDefaultWidth, setDefiningProperty, setDefiningPropertyNameOptions, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragMaxHeight, setDragMaxWidth, setDragMinHeight, setDragMinWidth, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragTarget, setDragType, setDropTarget, setDropTarget, setDropTypes, setDropTypes, setDynamicContents, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setElement, setEnableWhen, setEndLine, setExtraSpace, setFacetId, setFloatingScrollbars, setForwardSVGeventsToObject, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupPadding, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverAutoFitMaxWidth, setHoverAutoFitMaxWidth, setHoverAutoFitWidth, setHoverDelay, setHoverFocusKey, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverPersist, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setIsRuleScope, setIsSnapAlignCandidate, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeaveGroupLabelSpace, setLeavePageSpace, setLeft, setLeft, setLocateByIDOnly, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLocatorName, setLocatorParent, setLocatorParent, setLogicalStructure, setMargin, setMatchElement, setMatchElementHeight, setMatchElementWidth, setMaxHeight, setMaxWidth, setMaxZoomOverflowError, setMenuConstructor, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setName, setNativeAutoHideScrollbars, setNeverUseFilters, setNoDoubleClicks, setNoDropCursor, setOpacity, setPadding, setPageLeft, setPageTop, setPanelContainer, setParentCanvas, setParentElement, setPeers, setPendingMarkerStyle, setPendingMarkerVisible, setPercentBox, setPercentSource, setPersistentMatchElement, setPointerSettings, setPointerTarget, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrintStyleName, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setReceiveScrollbarEvents, setRect, setRect, setRedrawOnResize, setRelativeTabPosition, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setRuleScope, setScrollbarConstructor, setScrollbarSize, setShadowColor, setShadowDepth, setShadowHOffset, setShadowImage, setShadowOffset, setShadowSoftness, setShadowSpread, setShadowVOffset, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowPointer, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSizeMayChangeOnRedraw, setSmoothFade, setSnapAlignCandidates, setSnapAlignCenterLineStyle, setSnapAlignEdgeLineStyle, setSnapAxis, setSnapEdge, setSnapGridLineProperties, setSnapGridStyle, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToAlign, setSnapResizeToGrid, setSnapTo, setSnapToAlign, setSnapToCenterAlign, setSnapToEdgeAlign, setSnapToGrid, setSnapVDirection, setSnapVGap, setStartLine, setTabIndex, setTestDataContext, setTitle, setTooltip, setTop, setTop, setUpdateTabPositionOnDraw, setUpdateTabPositionOnReparent, setUseBackMask, setUseCSSShadow, setUseDragMask, setUseImageForSVG, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setValuesManager, setVisibility, setVisible, setVisibleWhen, setWidth, setWidth, setWidth, setWidth100, setWorkflows, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPendingMarker, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, startDebuggingOverflow, stopDebuggingOverflow, updateChildTabPosition, updateChildTabPositions, updateEditNode, updateHover, updateHover, updateShadow, updateTabPositionForDraw, visibleAtPoint`

    - ### Methods inherited from class com.smartgwt.client.widgets.BaseWidget

      `addDrawHandler, addDynamicProperty, addDynamicProperty, addDynamicProperty, addDynamicProperty, applyFactoryProperties, clearDynamicProperty, completeCreation, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hasDynamicProperty, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isDrawn, isFactoryCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setDefaultProperties, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, setLogicalStructure, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

      `fireEvent`

    - ### Methods inherited from interface com.smartgwt.client.widgets.DataBoundComponent

      `getOrCreateJsObj`

- - ### Constructor Detail

    - #### TreeGrid

          public TreeGrid()

    - #### TreeGrid

          public TreeGrid(com.google.gwt.core.client.JavaScriptObject jsObj)

  - ### Method Detail

    - #### getOrCreateRef

          public static TreeGrid getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                                     Canvas defaults)

      Changes the defaults for Canvas AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
      See Also:
        `AutoChildUsage`

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                                     FormItem defaults)

      Changes the defaults for FormItem AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
      See Also:
        `AutoChildUsage`

    - #### create

          protected com.google.gwt.core.client.JavaScriptObject create()

      Overrides:
        `create` in class `ListGrid`

    - #### setAlwaysShowOpener

          public TreeGrid setAlwaysShowOpener(java.lang.Boolean alwaysShowOpener)

      If `showOpener` is true, should we display the opener icon for folders even if they have no children?

      Note that for trees which `load data on demand`, we may not know if a folder has any descendants if it has never been opened. As such we will show the opener icon next to the folder. Once the user opens the icon and a fetch occurs, if the folder is empty, and this property is false, the opener icon will be hidden.

      For more information on load on demand trees, and how we determine whether a node is a a folder or a leaf, please refer to the `TreeDataBinding` documentation.

      Parameters:
        `alwaysShowOpener` - New alwaysShowOpener value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getAlwaysShowOpener

          public java.lang.Boolean getAlwaysShowOpener()

      If `showOpener` is true, should we display the opener icon for folders even if they have no children?

      Note that for trees which `load data on demand`, we may not know if a folder has any descendants if it has never been opened. As such we will show the opener icon next to the folder. Once the user opens the icon and a fetch occurs, if the folder is empty, and this property is false, the opener icon will be hidden.

      For more information on load on demand trees, and how we determine whether a node is a a folder or a leaf, please refer to the `TreeDataBinding` documentation.

      Returns:
        Current alwaysShowOpener value. Default value is false

    - #### setAnimateFolderEffect

          public TreeGrid setAnimateFolderEffect(AnimationAcceleration animateFolderEffect)

      When animating folder opening / closing, this property can be set to apply an animated acceleration effect. This allows the animation speed to be "weighted", for example expanding or collapsing at a faster rate toward the beginning of the animation than at the end.
      Overrides:
        `setAnimateFolderEffect` in class `ListGrid`
      Parameters:
        `animateFolderEffect` - New animateFolderEffect value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getAnimateFolderEffect

          public AnimationAcceleration getAnimateFolderEffect()

      When animating folder opening / closing, this property can be set to apply an animated acceleration effect. This allows the animation speed to be "weighted", for example expanding or collapsing at a faster rate toward the beginning of the animation than at the end.
      Overrides:
        `getAnimateFolderEffect` in class `ListGrid`
      Returns:
        Current animateFolderEffect value. Default value is null

    - #### setAnimateFolderMaxRows

          public TreeGrid setAnimateFolderMaxRows(java.lang.Integer animateFolderMaxRows)

      If `animateFolders` is true for this grid, this number can be set to designate the maximum number of rows to animate at a time when opening / closing a folder.
      Overrides:
        `setAnimateFolderMaxRows` in class `ListGrid`
      Parameters:
        `animateFolderMaxRows` - New animateFolderMaxRows value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `getAnimateFolderMaxRows()`

    - #### getAnimateFolderMaxRows

          public java.lang.Integer getAnimateFolderMaxRows()

      If `animateFolders` is true for this grid, this number can be set to designate the maximum number of rows to animate at a time when opening / closing a folder.
      Overrides:
        `getAnimateFolderMaxRows` in class `ListGrid`
      Returns:
        If `animateFolders` is true for this treeGrid, this method returns the the maximum number of rows to animate at a time when opening / closing a folder. This method will return `animateFolderMaxRows` if set. Otherwise the value will be calculated as 3x the number of rows required to fill a viewport, capped at a maximum value of 75. Default value is null
      See Also:
        `getAnimateFolderMaxRows()`

    - #### setAnimateFolders

          public TreeGrid setAnimateFolders(java.lang.Boolean animateFolders)

      If true, when folders are opened / closed children will be animated into view.

      Folder animations are automatically disabled if `ListGrid.autoFitData` is set to "vertical" or "both", or if `records components` are used.

      Overrides:
        `setAnimateFolders` in class `ListGrid`
      Parameters:
        `animateFolders` - New animateFolders value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        Tree Folders Example

    - #### getAnimateFolders

          public java.lang.Boolean getAnimateFolders()

      If true, when folders are opened / closed children will be animated into view.

      Folder animations are automatically disabled if `ListGrid.autoFitData` is set to "vertical" or "both", or if `records components` are used.

      Overrides:
        `getAnimateFolders` in class `ListGrid`
      Returns:
        Current animateFolders value. Default value is true
      See Also:
        Tree Folders Example

    - #### setAnimateFolderSpeed

          public TreeGrid setAnimateFolderSpeed(int animateFolderSpeed)

      When animating folder opening / closing, this property designates the speed of the animation in pixels shown (or hidden) per second. Takes precedence over the `animateFolderTime` property, which allows the developer to specify a duration for the animation rather than a speed.
      Overrides:
        `setAnimateFolderSpeed` in class `ListGrid`
      Parameters:
        `animateFolderSpeed` - New animateFolderSpeed value. Default value is 3000
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `setAnimateFolderTime(int)`, Tree Folders Example

    - #### getAnimateFolderSpeed

          public int getAnimateFolderSpeed()

      When animating folder opening / closing, this property designates the speed of the animation in pixels shown (or hidden) per second. Takes precedence over the `animateFolderTime` property, which allows the developer to specify a duration for the animation rather than a speed.
      Overrides:
        `getAnimateFolderSpeed` in class `ListGrid`
      Returns:
        Current animateFolderSpeed value. Default value is 3000
      See Also:
        `getAnimateFolderTime()`, Tree Folders Example

    - #### setAnimateFolderTime

          public TreeGrid setAnimateFolderTime(int animateFolderTime)

      When animating folder opening / closing, if `animateFolderSpeed` is not set, this property designates the duration of the animation in ms.
      Overrides:
        `setAnimateFolderTime` in class `ListGrid`
      Parameters:
        `animateFolderTime` - New animateFolderTime value. Default value is 100
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `setAnimateFolderSpeed(int)`

    - #### getAnimateFolderTime

          public int getAnimateFolderTime()

      When animating folder opening / closing, if `animateFolderSpeed` is not set, this property designates the duration of the animation in ms.
      Overrides:
        `getAnimateFolderTime` in class `ListGrid`
      Returns:
        Current animateFolderTime value. Default value is 100
      See Also:
        `getAnimateFolderSpeed()`

    - #### setAutoAssignTreeField

          public TreeGrid setAutoAssignTreeField(boolean autoAssignTreeField)
                                          throws java.lang.IllegalStateException

      If this grid was passed an explicit set of fields, but no field was specified as the "tree-field" (showing indentations for tree hierarchy and tree icons), should we assign one of the other fields to be the tree-field?

      When true, if we're showing a field for the `Tree.titleProperty` of the tree, this will be displayed as a Tree Field by default. If not, the first entry in the specified fields array will be used.

      This may be set to false to display a tree or partial tree as a flattened list within a TreeGrid.

      Parameters:
        `autoAssignTreeField` - New autoAssignTreeField value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAutoAssignTreeField

          public boolean getAutoAssignTreeField()

      If this grid was passed an explicit set of fields, but no field was specified as the "tree-field" (showing indentations for tree hierarchy and tree icons), should we assign one of the other fields to be the tree-field?

      When true, if we're showing a field for the `Tree.titleProperty` of the tree, this will be displayed as a Tree Field by default. If not, the first entry in the specified fields array will be used.

      This may be set to false to display a tree or partial tree as a flattened list within a TreeGrid.

      Returns:
        Current autoAssignTreeField value. Default value is true

    - #### setAutoFetchTextMatchStyle

          public TreeGrid setAutoFetchTextMatchStyle(TextMatchStyle autoFetchTextMatchStyle)
                                              throws java.lang.IllegalStateException

      With `loadDataOnDemand`:true, TreeGrids fetch data by selecting the child nodes of each parent, which should be exact match, so we default to `autoFetchTextMatchStyle:"exact"` when autoFetchData is true.

      See `ListGrid.autoFetchTextMatchStyle` for details.

      Specified by:
        `setAutoFetchTextMatchStyle` in interface `DataBoundComponent`
      Overrides:
        `setAutoFetchTextMatchStyle` in class `ListGrid`
      Parameters:
        `autoFetchTextMatchStyle` - New autoFetchTextMatchStyle value. Default value is "exact"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ResultTree.setUseSimpleCriteriaLOD(boolean)`, `DataBinding`

    - #### getAutoFetchTextMatchStyle

          public TextMatchStyle getAutoFetchTextMatchStyle()

      With `loadDataOnDemand`:true, TreeGrids fetch data by selecting the child nodes of each parent, which should be exact match, so we default to `autoFetchTextMatchStyle:"exact"` when autoFetchData is true.

      See `ListGrid.autoFetchTextMatchStyle` for details.

      Specified by:
        `getAutoFetchTextMatchStyle` in interface `DataBoundComponent`
      Overrides:
        `getAutoFetchTextMatchStyle` in class `ListGrid`
      Returns:
        Current autoFetchTextMatchStyle value. Default value is "exact"
      See Also:
        `ResultTree.getUseSimpleCriteriaLOD()`, `DataBinding`

    - #### setAutoOpenTree

          public TreeGrid setAutoOpenTree(java.lang.String autoOpenTree)
                                   throws java.lang.IllegalStateException

      Which nodes should be opened automatically. This applies directly to `ResultTree.autoOpen`.
      Parameters:
        `autoOpenTree` - New autoOpenTree value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAutoOpenTree

          public java.lang.String getAutoOpenTree()

      Which nodes should be opened automatically. This applies directly to `ResultTree.autoOpen`.
      Returns:
        Current autoOpenTree value. Default value is null

    - #### setAutoPreserveOpenState

          public TreeGrid setAutoPreserveOpenState(PreserveOpenState autoPreserveOpenState)
                                            throws java.lang.IllegalStateException

      For dataBound treeGrids this specifies the `ResultTree.autoPreserveOpenState`, governing whether the open state of the tree should be preserved when new data arrives due to cache invalidation.
      Parameters:
        `autoPreserveOpenState` - New autoPreserveOpenState value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getAutoPreserveOpenState

          public PreserveOpenState getAutoPreserveOpenState()

      For dataBound treeGrids this specifies the `ResultTree.autoPreserveOpenState`, governing whether the open state of the tree should be preserved when new data arrives due to cache invalidation.
      Returns:
        Current autoPreserveOpenState value. Default value is null

    - #### setCanAcceptDroppedRecords

          public TreeGrid setCanAcceptDroppedRecords(java.lang.Boolean canAcceptDroppedRecords)

      Indicates whether records can be dropped into this listGrid.
      Overrides:
        `setCanAcceptDroppedRecords` in class `ListGrid`
      Parameters:
        `canAcceptDroppedRecords` - New canAcceptDroppedRecords value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `TreeNode.setCanDrag(java.lang.Boolean)`, `TreeNode.setCanAcceptDrop(java.lang.Boolean)`, `TreeGrid drag and drop`, Drag reparent Example

    - #### getCanAcceptDroppedRecords

          public java.lang.Boolean getCanAcceptDroppedRecords()

      Indicates whether records can be dropped into this listGrid.
      Overrides:
        `getCanAcceptDroppedRecords` in class `ListGrid`
      Returns:
        Current canAcceptDroppedRecords value. Default value is false
      See Also:
        `TreeNode.getCanDrag()`, `TreeNode.getCanAcceptDrop()`, `TreeGrid drag and drop`, Drag reparent Example

    - #### setCanDragRecordsOut

          public TreeGrid setCanDragRecordsOut(java.lang.Boolean canDragRecordsOut)

      Indicates whether records can be dragged from this listGrid and dropped elsewhere.

      NOTE: If `canDragRecordsOut` is initially enabled or might be dynamically enabled after the grid is created, it may be desirable to disable `touch scrolling` so that touch-dragging a record starts a drag operation rather than a scroll, but see the discussion of `drag handles`. If `Canvas.disableTouchScrollingForDrag` is set to `true`, then touch scrolling will be disabled automatically. However, for `accessibility` reasons, it is recommended to leave touch scrolling enabled and provide an alternative set of controls that can be used to perform drag and drop of records out of the grid.

      Overrides:
        `setCanDragRecordsOut` in class `ListGrid`
      Parameters:
        `canDragRecordsOut` - New canDragRecordsOut value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `TreeNode.setCanDrag(java.lang.Boolean)`, `TreeNode.setCanAcceptDrop(java.lang.Boolean)`, `ListGrid.showDragHandles()`, `TreeGrid drag and drop`, Drop Events Example

    - #### getCanDragRecordsOut

          public java.lang.Boolean getCanDragRecordsOut()

      Indicates whether records can be dragged from this listGrid and dropped elsewhere.

      NOTE: If `canDragRecordsOut` is initially enabled or might be dynamically enabled after the grid is created, it may be desirable to disable `touch scrolling` so that touch-dragging a record starts a drag operation rather than a scroll, but see the discussion of `drag handles`. If `Canvas.disableTouchScrollingForDrag` is set to `true`, then touch scrolling will be disabled automatically. However, for `accessibility` reasons, it is recommended to leave touch scrolling enabled and provide an alternative set of controls that can be used to perform drag and drop of records out of the grid.

      Overrides:
        `getCanDragRecordsOut` in class `ListGrid`
      Returns:
        Current canDragRecordsOut value. Default value is false
      See Also:
        `TreeNode.getCanDrag()`, `TreeNode.getCanAcceptDrop()`, `ListGrid.showDragHandles()`, `TreeGrid drag and drop`, Drop Events Example

    - #### setCanDropOnLeaves

          public TreeGrid setCanDropOnLeaves(java.lang.Boolean canDropOnLeaves)

      Whether drops are allowed on leaf nodes.

      Dropping is ordinarily not allowed on leaf nodes unless `canReorderRecords` is set.

      The default action for a drop on a leaf node is to place the node in that leaf's parent folder. This can be customized by overriding `folderDrop()`.

      Note that enabling `canDropOnLeaves` is usually only appropriate where you intend to add a custom `folderDrop()` implementation that does not add a child node under the leaf. If you want to add a child nodes to a leaf, instead of enabling canDropOnLeaves, use empty folders instead - see `Tree.isFolder()` for how to control whether a node is considered a folder.

      Note : This is an advanced setting

      Parameters:
        `canDropOnLeaves` - New canDropOnLeaves value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `TreeGrid drag and drop`

    - #### getCanDropOnLeaves

          public java.lang.Boolean getCanDropOnLeaves()

      Whether drops are allowed on leaf nodes.

      Dropping is ordinarily not allowed on leaf nodes unless `canReorderRecords` is set.

      The default action for a drop on a leaf node is to place the node in that leaf's parent folder. This can be customized by overriding `folderDrop()`.

      Note that enabling `canDropOnLeaves` is usually only appropriate where you intend to add a custom `folderDrop()` implementation that does not add a child node under the leaf. If you want to add a child nodes to a leaf, instead of enabling canDropOnLeaves, use empty folders instead - see `Tree.isFolder()` for how to control whether a node is considered a folder.

      Returns:
        Current canDropOnLeaves value. Default value is false
      See Also:
        `TreeGrid drag and drop`

    - #### setCanDropSiblingAfterLastNode

          public TreeGrid setCanDropSiblingAfterLastNode(boolean canDropSiblingAfterLastNode)

      When performing a drag and drop to add or move data within the tree, should users be able to make the dropped node a sibling of the last node in the tree by dropping just below it?

      When set to true, if a user performs a drop action in the space immediately below the last node, (less than half the grid's specified cellHeight away), the dropped data will be added to the parent of that last node, making them siblings. If the parent `will not accept drops`, the dropped data will be added to the first ancestor that will accept a drop.

      If the user performs the drop lower down in the empty area below the last row, of if this property is set to `false`, the dropped data will be added as a last child to the root node instead.

      Note : This is an advanced setting

      Parameters:
        `canDropSiblingAfterLastNode` - New canDropSiblingAfterLastNode value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getCanDropSiblingAfterLastNode

          public boolean getCanDropSiblingAfterLastNode()

      When performing a drag and drop to add or move data within the tree, should users be able to make the dropped node a sibling of the last node in the tree by dropping just below it?

      When set to true, if a user performs a drop action in the space immediately below the last node, (less than half the grid's specified cellHeight away), the dropped data will be added to the parent of that last node, making them siblings. If the parent `will not accept drops`, the dropped data will be added to the first ancestor that will accept a drop.

      If the user performs the drop lower down in the empty area below the last row, of if this property is set to `false`, the dropped data will be added as a last child to the root node instead.

      Returns:
        Current canDropSiblingAfterLastNode value. Default value is true

    - #### setCanReorderRecords

          public TreeGrid setCanReorderRecords(java.lang.Boolean canReorderRecords)

      Indicates whether records can be reordered by dragging within this `ListGrid`.

      NOTE: If `canReorderRecords` is initially enabled or might be `dynamically enabled` after the grid is created, it may be desirable to disable `touch scrolling` so that touch-dragging a record starts a reorder operation rather than a scroll, but see the discussion of `drag handles`. If `Canvas.disableTouchScrollingForDrag` is set to `true`, then touch scrolling will be disabled automatically. However, for `accessibility` reasons, it is recommended to leave touch scrolling enabled and provide an alternative set of controls that can be used to perform drag-reordering of records.

      Note : This is an advanced setting

      Overrides:
        `setCanReorderRecords` in class `ListGrid`
      Parameters:
        `canReorderRecords` - New canReorderRecords value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `TreeNode.setCanDrag(java.lang.Boolean)`, `TreeNode.setCanAcceptDrop(java.lang.Boolean)`, `ListGrid.showDragHandles()`, `TreeGrid drag and drop`, Drag reparent Example

    - #### getCanReorderRecords

          public java.lang.Boolean getCanReorderRecords()

      Indicates whether records can be reordered by dragging within this `ListGrid`.

      NOTE: If `canReorderRecords` is initially enabled or might be `dynamically enabled` after the grid is created, it may be desirable to disable `touch scrolling` so that touch-dragging a record starts a reorder operation rather than a scroll, but see the discussion of `drag handles`. If `Canvas.disableTouchScrollingForDrag` is set to `true`, then touch scrolling will be disabled automatically. However, for `accessibility` reasons, it is recommended to leave touch scrolling enabled and provide an alternative set of controls that can be used to perform drag-reordering of records.

      Overrides:
        `getCanReorderRecords` in class `ListGrid`
      Returns:
        Current canReorderRecords value. Default value is false
      See Also:
        `TreeNode.getCanDrag()`, `TreeNode.getCanAcceptDrop()`, `ListGrid.showDragHandles()`, `TreeGrid drag and drop`, Drag reparent Example

    - #### setCanReparentNodes

          public TreeGrid setCanReparentNodes(java.lang.Boolean canReparentNodes)

      If set this property allows the user to reparent nodes by dragging them from their current folder to a new folder.
      Backcompat: For backwards compatibility with versions prior to Smart GWT 1.5, if this property is unset, but `this.canAcceptDroppedRecords` is true, we allow nodes to be dragged to different folders.
      Parameters:
        `canReparentNodes` - New canReparentNodes value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `TreeNode.setCanDrag(java.lang.Boolean)`, `TreeNode.setCanAcceptDrop(java.lang.Boolean)`, `TreeGrid drag and drop`

    - #### getCanReparentNodes

          public java.lang.Boolean getCanReparentNodes()

      If set this property allows the user to reparent nodes by dragging them from their current folder to a new folder.
      Backcompat: For backwards compatibility with versions prior to Smart GWT 1.5, if this property is unset, but `this.canAcceptDroppedRecords` is true, we allow nodes to be dragged to different folders.
      Returns:
        Current canReparentNodes value. Default value is null
      See Also:
        `TreeNode.getCanDrag()`, `TreeNode.getCanAcceptDrop()`, `TreeGrid drag and drop`

    - #### setCanSelectAll

          public TreeGrid setCanSelectAll(java.lang.Boolean canSelectAll)

      This property is not supported on TreeGrid, and only applies to the `ListGrid` superclass.
      Overrides:
        `setCanSelectAll` in class `ListGrid`
      Parameters:
        `canSelectAll` - New canSelectAll value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `Selection`

    - #### getCanSelectAll

          public java.lang.Boolean getCanSelectAll()

      This property is not supported on TreeGrid, and only applies to the `ListGrid` superclass.
      Overrides:
        `getCanSelectAll` in class `ListGrid`
      Returns:
        Current canSelectAll value. Default value is null
      See Also:
        `Selection`

    - #### setCantDragIntoChildMessage

          public TreeGrid setCantDragIntoChildMessage(java.lang.String cantDragIntoChildMessage)
                                               throws java.lang.IllegalStateException

      Message displayed when user attempts to drop a node into a child of itself.
      Parameters:
        `cantDragIntoChildMessage` - New cantDragIntoChildMessage value. Default value is "You can't drag an item into one of its children"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setCanDragRecordsOut(java.lang.Boolean)`, `setCanAcceptDroppedRecords(java.lang.Boolean)`, `setCanReorderRecords(java.lang.Boolean)`

    - #### getCantDragIntoChildMessage

          public java.lang.String getCantDragIntoChildMessage()

      Message displayed when user attempts to drop a node into a child of itself.
      Returns:
        Current cantDragIntoChildMessage value. Default value is "You can't drag an item into one of its children"
      See Also:
        `getCanDragRecordsOut()`, `getCanAcceptDroppedRecords()`, `getCanReorderRecords()`

    - #### setCantDragIntoSelfMessage

          public TreeGrid setCantDragIntoSelfMessage(java.lang.String cantDragIntoSelfMessage)
                                              throws java.lang.IllegalStateException

      Message displayed when user attempts to drop a dragged node onto itself.
      Parameters:
        `cantDragIntoSelfMessage` - New cantDragIntoSelfMessage value. Default value is "You can't drag an item into itself."
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setCanDragRecordsOut(java.lang.Boolean)`, `setCanAcceptDroppedRecords(java.lang.Boolean)`, `setCanReorderRecords(java.lang.Boolean)`

    - #### getCantDragIntoSelfMessage

          public java.lang.String getCantDragIntoSelfMessage()

      Message displayed when user attempts to drop a dragged node onto itself.
      Returns:
        Current cantDragIntoSelfMessage value. Default value is "You can't drag an item into itself."
      See Also:
        `getCanDragRecordsOut()`, `getCanAcceptDroppedRecords()`, `getCanReorderRecords()`

    - #### setCantDragMultipleNodeOccurencesMessage

          public TreeGrid setCantDragMultipleNodeOccurencesMessage(java.lang.String cantDragMultipleNodeOccurencesMessage)
                                                            throws java.lang.IllegalStateException

      For `Multi-link trees` only, the message displayed when the user attempts to drag two or more occurrences of the same node into a parent.
      Parameters:
        `cantDragMultipleNodeOccurencesMessage` - New cantDragMultipleNodeOccurencesMessage value. Default value is "You can't drag two occurrences of the same node into a parent."
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setCanDragRecordsOut(java.lang.Boolean)`, `setCanAcceptDroppedRecords(java.lang.Boolean)`, `setCanReorderRecords(java.lang.Boolean)`, `setParentAlreadyContainsChildMessage(java.lang.String)`

    - #### getCantDragMultipleNodeOccurencesMessage

          public java.lang.String getCantDragMultipleNodeOccurencesMessage()

      For `Multi-link trees` only, the message displayed when the user attempts to drag two or more occurrences of the same node into a parent.
      Returns:
        Current cantDragMultipleNodeOccurencesMessage value. Default value is "You can't drag two occurrences of the same node into a parent."
      See Also:
        `getCanDragRecordsOut()`, `getCanAcceptDroppedRecords()`, `getCanReorderRecords()`, `getParentAlreadyContainsChildMessage()`

    - #### setCascadeSelection

          public TreeGrid setCascadeSelection(java.lang.Boolean cascadeSelection)
                                       throws java.lang.IllegalStateException

      Should children be selected when parent is selected? And should parent be selected when any child is selected?
      Parameters:
        `cascadeSelection` - New cascadeSelection value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCascadeSelection

          public java.lang.Boolean getCascadeSelection()

      Should children be selected when parent is selected? And should parent be selected when any child is selected?
      Returns:
        Current cascadeSelection value. Default value is false

    - #### setChildCannotBeItsOwnAncestorMessage

          public TreeGrid setChildCannotBeItsOwnAncestorMessage(java.lang.String childCannotBeItsOwnAncestorMessage)
                                                         throws java.lang.IllegalStateException

      Message displayed when user attempts to drop a node into a parent that has the same ID as the dropped node somewhere in its ancestor chain (ie, the same node as the parent, or grandparent, and so on)
      Parameters:
        `childCannotBeItsOwnAncestorMessage` - New childCannotBeItsOwnAncestorMessage value. Default value is "This drag operation would mean an item is a descendant of an existing item with the same ID"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setCanDragRecordsOut(java.lang.Boolean)`, `setCanAcceptDroppedRecords(java.lang.Boolean)`, `setCanReorderRecords(java.lang.Boolean)`

    - #### getChildCannotBeItsOwnAncestorMessage

          public java.lang.String getChildCannotBeItsOwnAncestorMessage()

      Message displayed when user attempts to drop a node into a parent that has the same ID as the dropped node somewhere in its ancestor chain (ie, the same node as the parent, or grandparent, and so on)
      Returns:
        Current childCannotBeItsOwnAncestorMessage value. Default value is "This drag operation would mean an item is a descendant of an existing item with the same ID"
      See Also:
        `getCanDragRecordsOut()`, `getCanAcceptDroppedRecords()`, `getCanReorderRecords()`

    - #### setClosedIconSuffix

          public TreeGrid setClosedIconSuffix(java.lang.String closedIconSuffix)
                                       throws java.lang.IllegalStateException

      This suffix will be appended to the `folderIcon` for closed folders. If `showOpenIcons` is set to `false` this suffix will also be appended to open folders' icons.
      Parameters:
        `closedIconSuffix` - New closedIconSuffix value. Default value is "closed"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getClosedIconSuffix

          public java.lang.String getClosedIconSuffix()

      This suffix will be appended to the `folderIcon` for closed folders. If `showOpenIcons` is set to `false` this suffix will also be appended to open folders' icons.
      Returns:
        Current closedIconSuffix value. Default value is "closed"

    - #### setConnectorIconWidth

          public TreeGrid setConnectorIconWidth(java.lang.Integer connectorIconWidth)

      Width in pixels of the connector-icons, that is, the icons which show the open or closed state of the node when using `connectors`, typically a [+] or [-] symbol with connecting lines.

      If not specified, `openerIconWidth` is used instead.

      Parameters:
        `connectorIconWidth` - New connectorIconWidth value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getConnectorIconWidth

          public java.lang.Integer getConnectorIconWidth()

      Width in pixels of the connector-icons, that is, the icons which show the open or closed state of the node when using `connectors`, typically a [+] or [-] symbol with connecting lines.

      If not specified, `openerIconWidth` is used instead.

      Returns:
        Current connectorIconWidth value. Default value is null

    - #### setConnectorImage

          public TreeGrid setConnectorImage(java.lang.String connectorImage)
                                     throws java.lang.IllegalStateException

      The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true. Connector icons are rendered into the title field of each row and show the dotted hierarchy lines between siblings of the same parent node. For each node, a connector icon may be shown:
      - As an opener icon for folder nodes, next to the folder icon
      - In place of an opener icon for leaf nodes, next to the leaf icon
      - As a standalone vertical continuation line in the indent to the left of the node, to show a connection between some ancestor node's siblings (only relevant if `showFullConnectors` is true).
      Note that `showFullConnectors` governs whether connector lines will be displayed for all indent levels, or just for the innermost level of the tree.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node. Assuming the connectorImage is set to `{baseName}.{extension}`, the full set of images to be displayed will be:

      `{baseName}_ancestor[_rtl].{extension}` if `showFullConnectors` is true, this is the URL for the vertical continuation image to be displayed at the appropriate indent levels for ancestor nodes with subsequent children.

      For nodes with no children:

      - `{baseName}_single[_rtl].{extension}`: Shown when there is no connector line attached to the parent or previous sibling, and no connector line to the next sibling. For `showFullConnectors:true` trees, there will always be a connector leading to the parent or previous sibling if its present in the tree so this icon can only be displayed for the first row.
      - `{baseName}_start[_rtl].{extension}`: Shown when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling. As with `_single` this will only ever be used for the first row if `showFullConnectors` is true
      - `{baseName}_end[_rtl].{extension}`: Shown if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_middle[_rtl].{extension}`: Shown where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      For folders with children. Note that if `showFullConnectors` is false, open folders will never show a connector to subsequent siblings:
      - `{baseName}_opened_single[_rtl].{extension}` opened folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_opened_start[_rtl].{extension}`: opened folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_opened_end[_rtl].{extension}`: opened folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_opened_middle[_rtl].{extension}`: opened folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      - `{baseName}_closed_single[_rtl].{extension}` closed folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_closed_start[_rtl].{extension}`: closed folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_closed_end[_rtl].{extension}`: closed folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_closed_middle[_rtl].{extension}`: closed folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      (Note '[_rtl]' means that "_rtl" will be attached if isRTL() is true for this widget).

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for a connectorImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_ancestor[_rtl]_selected.{extension}`, `{baseName}_single[_rtl]_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states listed above. These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      Parameters:
        `connectorImage` - New connectorImage value. Default value is "[SKIN]connector.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SCImgURL`

    - #### getConnectorImage

          public java.lang.String getConnectorImage()

      The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true. Connector icons are rendered into the title field of each row and show the dotted hierarchy lines between siblings of the same parent node. For each node, a connector icon may be shown:
      - As an opener icon for folder nodes, next to the folder icon
      - In place of an opener icon for leaf nodes, next to the leaf icon
      - As a standalone vertical continuation line in the indent to the left of the node, to show a connection between some ancestor node's siblings (only relevant if `showFullConnectors` is true).
      Note that `showFullConnectors` governs whether connector lines will be displayed for all indent levels, or just for the innermost level of the tree.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node. Assuming the connectorImage is set to `{baseName}.{extension}`, the full set of images to be displayed will be:

      `{baseName}_ancestor[_rtl].{extension}` if `showFullConnectors` is true, this is the URL for the vertical continuation image to be displayed at the appropriate indent levels for ancestor nodes with subsequent children.

      For nodes with no children:

      - `{baseName}_single[_rtl].{extension}`: Shown when there is no connector line attached to the parent or previous sibling, and no connector line to the next sibling. For `showFullConnectors:true` trees, there will always be a connector leading to the parent or previous sibling if its present in the tree so this icon can only be displayed for the first row.
      - `{baseName}_start[_rtl].{extension}`: Shown when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling. As with `_single` this will only ever be used for the first row if `showFullConnectors` is true
      - `{baseName}_end[_rtl].{extension}`: Shown if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_middle[_rtl].{extension}`: Shown where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      For folders with children. Note that if `showFullConnectors` is false, open folders will never show a connector to subsequent siblings:
      - `{baseName}_opened_single[_rtl].{extension}` opened folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_opened_start[_rtl].{extension}`: opened folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_opened_end[_rtl].{extension}`: opened folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_opened_middle[_rtl].{extension}`: opened folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      - `{baseName}_closed_single[_rtl].{extension}` closed folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_closed_start[_rtl].{extension}`: closed folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_closed_end[_rtl].{extension}`: closed folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_closed_middle[_rtl].{extension}`: closed folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      (Note '[_rtl]' means that "_rtl" will be attached if isRTL() is true for this widget).

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for a connectorImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_ancestor[_rtl]_selected.{extension}`, `{baseName}_single[_rtl]_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states listed above. These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      Returns:
        Current connectorImage value. Default value is "[SKIN]connector.gif"
      See Also:
        `SCImgURL`

    - #### setConnectorImage

          public TreeGrid setConnectorImage(SCStatefulImgConfig connectorImage)
                                     throws java.lang.IllegalStateException

      The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true. Connector icons are rendered into the title field of each row and show the dotted hierarchy lines between siblings of the same parent node. For each node, a connector icon may be shown:
      - As an opener icon for folder nodes, next to the folder icon
      - In place of an opener icon for leaf nodes, next to the leaf icon
      - As a standalone vertical continuation line in the indent to the left of the node, to show a connection between some ancestor node's siblings (only relevant if `showFullConnectors` is true).
      Note that `showFullConnectors` governs whether connector lines will be displayed for all indent levels, or just for the innermost level of the tree.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node. Assuming the connectorImage is set to `{baseName}.{extension}`, the full set of images to be displayed will be:

      `{baseName}_ancestor[_rtl].{extension}` if `showFullConnectors` is true, this is the URL for the vertical continuation image to be displayed at the appropriate indent levels for ancestor nodes with subsequent children.

      For nodes with no children:

      - `{baseName}_single[_rtl].{extension}`: Shown when there is no connector line attached to the parent or previous sibling, and no connector line to the next sibling. For `showFullConnectors:true` trees, there will always be a connector leading to the parent or previous sibling if its present in the tree so this icon can only be displayed for the first row.
      - `{baseName}_start[_rtl].{extension}`: Shown when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling. As with `_single` this will only ever be used for the first row if `showFullConnectors` is true
      - `{baseName}_end[_rtl].{extension}`: Shown if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_middle[_rtl].{extension}`: Shown where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      For folders with children. Note that if `showFullConnectors` is false, open folders will never show a connector to subsequent siblings:
      - `{baseName}_opened_single[_rtl].{extension}` opened folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_opened_start[_rtl].{extension}`: opened folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_opened_end[_rtl].{extension}`: opened folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_opened_middle[_rtl].{extension}`: opened folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      - `{baseName}_closed_single[_rtl].{extension}` closed folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_closed_start[_rtl].{extension}`: closed folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_closed_end[_rtl].{extension}`: closed folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_closed_middle[_rtl].{extension}`: closed folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      (Note '[_rtl]' means that "_rtl" will be attached if isRTL() is true for this widget).

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for a connectorImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_ancestor[_rtl]_selected.{extension}`, `{baseName}_single[_rtl]_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states listed above. These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      Parameters:
        `connectorImage` - New connectorImage value. Default value is "[SKIN]connector.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SCImgURL`

    - #### getConnectorImageAsSCStatefulImgConfig

          public SCStatefulImgConfig getConnectorImageAsSCStatefulImgConfig()

      The base filename or `stateful image block` for the connector icons shown when `showConnectors` is true. Connector icons are rendered into the title field of each row and show the dotted hierarchy lines between siblings of the same parent node. For each node, a connector icon may be shown:
      - As an opener icon for folder nodes, next to the folder icon
      - In place of an opener icon for leaf nodes, next to the leaf icon
      - As a standalone vertical continuation line in the indent to the left of the node, to show a connection between some ancestor node's siblings (only relevant if `showFullConnectors` is true).
      Note that `showFullConnectors` governs whether connector lines will be displayed for all indent levels, or just for the innermost level of the tree.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node. Assuming the connectorImage is set to `{baseName}.{extension}`, the full set of images to be displayed will be:

      `{baseName}_ancestor[_rtl].{extension}` if `showFullConnectors` is true, this is the URL for the vertical continuation image to be displayed at the appropriate indent levels for ancestor nodes with subsequent children.

      For nodes with no children:

      - `{baseName}_single[_rtl].{extension}`: Shown when there is no connector line attached to the parent or previous sibling, and no connector line to the next sibling. For `showFullConnectors:true` trees, there will always be a connector leading to the parent or previous sibling if its present in the tree so this icon can only be displayed for the first row.
      - `{baseName}_start[_rtl].{extension}`: Shown when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling. As with `_single` this will only ever be used for the first row if `showFullConnectors` is true
      - `{baseName}_end[_rtl].{extension}`: Shown if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_middle[_rtl].{extension}`: Shown where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      For folders with children. Note that if `showFullConnectors` is false, open folders will never show a connector to subsequent siblings:
      - `{baseName}_opened_single[_rtl].{extension}` opened folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_opened_start[_rtl].{extension}`: opened folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_opened_end[_rtl].{extension}`: opened folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_opened_middle[_rtl].{extension}`: opened folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      - `{baseName}_closed_single[_rtl].{extension}` closed folder node with children when no connector line is shown attaching to either the folder's previous sibling or parent, or to any subsequent siblings.
      - `{baseName}_closed_start[_rtl].{extension}`: closed folder with children when the there is no connector line attached to the parent or previous sibling, but there is a connector to the next sibling.
      - `{baseName}_closed_end[_rtl].{extension}`: closed folder with children if we are not showing a connector line attached to the next sibling of this node (but are showing a connection to the previous sibling or parent).
      - `{baseName}_closed_middle[_rtl].{extension}`: closed folder with children where the we have a connector line leading to both the previous sibling (or parent) and the next sibling.
      (Note '[_rtl]' means that "_rtl" will be attached if isRTL() is true for this widget).

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for a connectorImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_ancestor[_rtl]_selected.{extension}`, `{baseName}_single[_rtl]_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states listed above. These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      Returns:
        Current connectorImage value. Default value is "[SKIN]connector.gif"
      See Also:
        `SCImgURL`

    - #### setCreateDefaultTreeField

          public TreeGrid setCreateDefaultTreeField(java.lang.Boolean createDefaultTreeField)
                                             throws java.lang.IllegalStateException

      If no fields are specified, create a single field with `TreeGridField.treeField` set to `true` to show the tree.

      This automatically generated field will display values derived by calling `getNodeTitle()`, and have the column title set to the specified `treeFieldTitle`.

      Has no effect if fields are explicitly specified.

      This is a convenience setting to allow a TreeGrid to be created without specifying a field list. If fields are specified, refer to the documentation on property `autoAssignTreeField` for a way to automatically have one of the fields be use as the tree field if no fields have `TreeGridField.treeField` set.

      For databound treeGrids, if there is no explicit fields array specified, developers who wish to pick up all fields from the DataSource definition rather than displaying this single automatically generated tree field may either set this property to false, or set `useAllDataSourceFields` to `true`.

      Parameters:
        `createDefaultTreeField` - New createDefaultTreeField value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getCreateDefaultTreeField

          public java.lang.Boolean getCreateDefaultTreeField()

      If no fields are specified, create a single field with `TreeGridField.treeField` set to `true` to show the tree.

      This automatically generated field will display values derived by calling `getNodeTitle()`, and have the column title set to the specified `treeFieldTitle`.

      Has no effect if fields are explicitly specified.

      This is a convenience setting to allow a TreeGrid to be created without specifying a field list. If fields are specified, refer to the documentation on property `autoAssignTreeField` for a way to automatically have one of the fields be use as the tree field if no fields have `TreeGridField.treeField` set.

      For databound treeGrids, if there is no explicit fields array specified, developers who wish to pick up all fields from the DataSource definition rather than displaying this single automatically generated tree field may either set this property to false, or set `useAllDataSourceFields` to `true`.

      Returns:
        Current createDefaultTreeField value. Default value is true

    - #### setCustomIconDropProperty

          public TreeGrid setCustomIconDropProperty(java.lang.String customIconDropProperty)

      This property allows the developer to rename the `default node.showDropIcon` property.

      Note : This is an advanced setting

      Parameters:
        `customIconDropProperty` - New customIconDropProperty value. Default value is "showDropIcon"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `setCustomIconProperty(java.lang.String)`, `setShowCustomIconDrop(java.lang.Boolean)`

    - #### getCustomIconDropProperty

          public java.lang.String getCustomIconDropProperty()

      This property allows the developer to rename the `default node.showDropIcon` property.
      Returns:
        Current customIconDropProperty value. Default value is "showDropIcon"
      See Also:
        `getCustomIconProperty()`, `getShowCustomIconDrop()`

    - #### setCustomIconOpenProperty

          public TreeGrid setCustomIconOpenProperty(java.lang.String customIconOpenProperty)

      This property allows the developer to rename the `default node.showOpenIcon` property.

      Note : This is an advanced setting

      Parameters:
        `customIconOpenProperty` - New customIconOpenProperty value. Default value is "showOpenIcon"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `setCustomIconProperty(java.lang.String)`, `setShowCustomIconOpen(java.lang.Boolean)`

    - #### getCustomIconOpenProperty

          public java.lang.String getCustomIconOpenProperty()

      This property allows the developer to rename the `default node.showOpenIcon` property.
      Returns:
        Current customIconOpenProperty value. Default value is "showOpenIcon"
      See Also:
        `getCustomIconProperty()`, `getShowCustomIconOpen()`

    - #### setCustomIconProperty

          public TreeGrid setCustomIconProperty(java.lang.String customIconProperty)

      This property allows the developer to rename the `default node.icon` property.
      Parameters:
        `customIconProperty` - New customIconProperty value. Default value is "icon"
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getCustomIconProperty

          public java.lang.String getCustomIconProperty()

      This property allows the developer to rename the `default node.icon` property.
      Returns:
        Current customIconProperty value. Default value is "icon"

    - #### setCustomIconSelectedProperty

          public TreeGrid setCustomIconSelectedProperty(java.lang.String customIconSelectedProperty)

      This property allows the developer to rename the `default node.showSelectedIcon` property.

      Note : This is an advanced setting

      Parameters:
        `customIconSelectedProperty` - New customIconSelectedProperty value. Default value is "showSelectedIcon"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `setCustomIconProperty(java.lang.String)`, `setShowCustomIconSelected(java.lang.Boolean)`

    - #### getCustomIconSelectedProperty

          public java.lang.String getCustomIconSelectedProperty()

      This property allows the developer to rename the `default node.showSelectedIcon` property.
      Returns:
        Current customIconSelectedProperty value. Default value is "showSelectedIcon"
      See Also:
        `getCustomIconProperty()`, `getShowCustomIconSelected()`

    - #### setDataArity

          public TreeGrid setDataArity(java.lang.String dataArity)

      A TreeGrid is a `dataArity`:multiple component.

      Note : This is an advanced setting

      Overrides:
        `setDataArity` in class `ListGrid`
      Parameters:
        `dataArity` - New dataArity value. Default value is "multiple"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `DataBinding`

    - #### getDataArity

          public java.lang.String getDataArity()

      A TreeGrid is a `dataArity`:multiple component.
      Overrides:
        `getDataArity` in class `ListGrid`
      Returns:
        Current dataArity value. Default value is "multiple"
      See Also:
        `DataBinding`

    - #### setDataFetchMode

          public TreeGrid setDataFetchMode(FetchMode dataFetchMode)
                                    throws java.lang.IllegalStateException

      Mode of fetching records from server.

      fetchMode:"local" implies that local filtering will always be performed. See `keepParentsOnFilter` for additional filtering details.

      fetchMode:"basic" or "paged" implies that if search criteria change, the entire tree will be discarded and re-fetched from the server. When retrieving the replacement tree data, the default behavior will be to preserve the `openState` for any nodes that the server returns which were previously opened by the user. Note that this implies that if `loadDataOnDemand` is enabled and the server returns only root-level nodes, open state will be preserved only for root-level nodes, and children of open root-level nodes will be immediately fetched from the server if they are not included in the server's initial response.

      fetchMode:"paged" enables paging for nodes that have very large numbers of children. Whenever the children of a folder are loaded, the `resultTree` will set `DSRequest.startRow` and `endRow` when requesting children from the DataSource, and will manage loading of further children on demand, similar to how a `ResultSet` manages paging for lists. For a deeper discussion see the Paging large sets of children section of the `TreeDataBinding` overview.

      Specified by:
        `setDataFetchMode` in interface `DataBoundComponent`
      Overrides:
        `setDataFetchMode` in class `ListGrid`
      Parameters:
        `dataFetchMode` - New dataFetchMode value. Default value is "basic"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ResultTree.setLoadDataOnDemand(java.lang.Boolean)`, `ResultTree.setUseSimpleCriteriaLOD(boolean)`, `Tree DataBinding`, Paging for Children Example

    - #### getDataFetchMode

          public FetchMode getDataFetchMode()

      Mode of fetching records from server.

      fetchMode:"local" implies that local filtering will always be performed. See `keepParentsOnFilter` for additional filtering details.

      fetchMode:"basic" or "paged" implies that if search criteria change, the entire tree will be discarded and re-fetched from the server. When retrieving the replacement tree data, the default behavior will be to preserve the `openState` for any nodes that the server returns which were previously opened by the user. Note that this implies that if `loadDataOnDemand` is enabled and the server returns only root-level nodes, open state will be preserved only for root-level nodes, and children of open root-level nodes will be immediately fetched from the server if they are not included in the server's initial response.

      fetchMode:"paged" enables paging for nodes that have very large numbers of children. Whenever the children of a folder are loaded, the `resultTree` will set `DSRequest.startRow` and `endRow` when requesting children from the DataSource, and will manage loading of further children on demand, similar to how a `ResultSet` manages paging for lists. For a deeper discussion see the Paging large sets of children section of the `TreeDataBinding` overview.

      Specified by:
        `getDataFetchMode` in interface `DataBoundComponent`
      Overrides:
        `getDataFetchMode` in class `ListGrid`
      Returns:
        Current dataFetchMode value. Default value is "basic"
      See Also:
        `ResultTree.getLoadDataOnDemand()`, `ResultTree.getUseSimpleCriteriaLOD()`, `Tree DataBinding`, Paging for Children Example

    - #### getDataProperties

          public Tree getDataProperties()

      For a `TreeGrid` that uses a DataSource, these properties will be passed to the automatically-created ResultTree. This can be used for various customizations such as modifying the automatically-chosen `Tree.parentIdField`.
      Returns:
        Current dataProperties value. Default value is null
      See Also:
        `DataBinding`

    - #### setDisplayNodeType

          public TreeGrid setDisplayNodeType(DisplayNodeType displayNodeType)

      Specifies the type of nodes displayed in the treeGrid.
      Parameters:
        `displayNodeType` - New displayNodeType value. Default value is Tree.FOLDERS_AND_LEAVES
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `DisplayNodeType`

    - #### getDisplayNodeType

          public DisplayNodeType getDisplayNodeType()

      Specifies the type of nodes displayed in the treeGrid.
      Returns:
        Current displayNodeType value. Default value is Tree.FOLDERS_AND_LEAVES
      See Also:
        `DisplayNodeType`

    - #### setDropEndSpace

          public TreeGrid setDropEndSpace(java.lang.Integer dropEndSpace)

      If `showDropEndSpace` is set to true, this property governs how large the space under the last node during drop should be. If unset, the spacer will be sized to be half the specified `cellHeight` for the grid.

      Note : This is an advanced setting

      Parameters:
        `dropEndSpace` - New dropEndSpace value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getDropEndSpace

          public java.lang.Integer getDropEndSpace()

      If `showDropEndSpace` is set to true, this property governs how large the space under the last node during drop should be. If unset, the spacer will be sized to be half the specified `cellHeight` for the grid.
      Returns:
        Current dropEndSpace value. Default value is null

    - #### setDropIconSuffix

          public TreeGrid setDropIconSuffix(java.lang.String dropIconSuffix)
                                     throws java.lang.IllegalStateException

      If `showDropIcons` is true, this suffix will be appended to the `folderIcon` when the user drop-hovers over some folder.
      Parameters:
        `dropIconSuffix` - New dropIconSuffix value. Default value is "drop"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getDropIconSuffix

          public java.lang.String getDropIconSuffix()

      If `showDropIcons` is true, this suffix will be appended to the `folderIcon` when the user drop-hovers over some folder.
      Returns:
        Current dropIconSuffix value. Default value is "drop"

    - #### setExtraIconGap

          public TreeGrid setExtraIconGap(int extraIconGap)
                                   throws java.lang.IllegalStateException

      The amount of gap (in pixels) between the extraIcon (see `getExtraIcon()`) or checkbox icon and the `nodeIcon`/ `folderIcon` or node text.
      Parameters:
        `extraIconGap` - New extraIconGap value. Default value is 2
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Appearance overview and related methods`

    - #### getExtraIconGap

          public int getExtraIconGap()

      The amount of gap (in pixels) between the extraIcon (see `getExtraIcon()`) or checkbox icon and the `nodeIcon`/ `folderIcon` or node text.
      Returns:
        Current extraIconGap value. Default value is 2
      See Also:
        `Appearance overview and related methods`

    - #### setFields

          public TreeGrid setFields(TreeGridField... fields)

      An array of field objects, specifying the order, layout, dynamic calculation, and sorting behavior of each field in the treeGrid object. In TreeGrids, the fields array specifies columns. Each field in the fields array is TreeGridField object.

      If `dataSource` is also set, this value acts as a set of overrides as explained in `DataBoundComponent.fields`.

      Parameters:
        `fields` - New fields value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `TreeGridField`, `DataBinding`

    - #### setFolderIcon

          public TreeGrid setFolderIcon(java.lang.String folderIcon)

      The URL of the base icon for all folder nodes in this treeGrid. Note that this URL will have `openIconSuffix`, `closedIconSuffix` or `dropIconSuffix` appended to indicate state changes if appropriate - see documentation on `showOpenIcons`, `showSelectedIcons` and `showDropIcons`.

      See `showNodeIcons` and `showFolderIcons` for details on suppressing display of icons

      Parameters:
        `folderIcon` - New folderIcon value. Default value is "[SKIN]folder.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `SCImgURL`, Node Titles Example

    - #### getFolderIcon

          public java.lang.String getFolderIcon()

      The URL of the base icon for all folder nodes in this treeGrid. Note that this URL will have `openIconSuffix`, `closedIconSuffix` or `dropIconSuffix` appended to indicate state changes if appropriate - see documentation on `showOpenIcons`, `showSelectedIcons` and `showDropIcons`.

      See `showNodeIcons` and `showFolderIcons` for details on suppressing display of icons

      Returns:
        Current folderIcon value. Default value is "[SKIN]folder.gif"
      See Also:
        `SCImgURL`, Node Titles Example

    - #### setFolderIconPadding

          public TreeGrid setFolderIconPadding(java.lang.Integer folderIconPadding)
                                        throws java.lang.IllegalStateException

      Default padding to show between folder icon and cell value in the tree cell. This property is only consulted for folder nodes. If unset, `iconPadding` will be applied to both folder and leaf nodes.

      To set the icon padding for individual nodes, use `iconPaddingProperty`

      Parameters:
        `folderIconPadding` - New folderIconPadding value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getFolderIconPadding

          public java.lang.Integer getFolderIconPadding()

      Default padding to show between folder icon and cell value in the tree cell. This property is only consulted for folder nodes. If unset, `iconPadding` will be applied to both folder and leaf nodes.

      To set the icon padding for individual nodes, use `iconPaddingProperty`

      Returns:
        Current folderIconPadding value. Default value is null

    - #### setGroupByField

          public TreeGrid setGroupByField(java.lang.String groupByField)
                                   throws java.lang.IllegalStateException

      Not applicable to TreeGrids, as the `data` already represents a tree.
      Overrides:
        `setGroupByField` in class `ListGrid`
      Parameters:
        `groupByField` - New groupByField value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `groupBy()`

    - #### getGroupByField

          public java.lang.String getGroupByField()

      Not applicable to TreeGrids, as the `data` already represents a tree.
      Returns:
        Current groupByField value. Default value is null
      See Also:
        `groupBy()`

    - #### setGroupByField

          public TreeGrid setGroupByField(java.lang.String... groupByField)
                                   throws java.lang.IllegalStateException

      Not applicable to TreeGrids, as the `data` already represents a tree.
      Overrides:
        `setGroupByField` in class `ListGrid`
      Parameters:
        `groupByField` - New groupByField value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `groupBy()`

    - #### getGroupByFieldAsStringArray

          public java.lang.String[] getGroupByFieldAsStringArray()

      Not applicable to TreeGrids, as the `data` already represents a tree.
      Returns:
        Current groupByField value. Default value is null
      See Also:
        `groupBy()`

    - #### setIconBaseStyle

          public TreeGrid setIconBaseStyle(java.lang.String iconBaseStyle)

      The base CSS class to apply to icons used in this grid. Used to affect the colors of SVG graphics.
      Parameters:
        `iconBaseStyle` - New iconBaseStyle value. Default value is "icon"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `CSSStyleName`

    - #### getIconBaseStyle

          public java.lang.String getIconBaseStyle()

      The base CSS class to apply to icons used in this grid. Used to affect the colors of SVG graphics.
      Returns:
        Current iconBaseStyle value. Default value is "icon"
      See Also:
        `CSSStyleName`

    - #### setIconPadding

          public TreeGrid setIconPadding(java.lang.Integer iconPadding)
                                  throws java.lang.IllegalStateException

      Default padding to show between the folder or leaf node icon and cell value in the tree cell.

      May be overridden for `folderIcons` via `folderIconPadding`. May also be overridden for individual nodes by setting the `iconPaddingProperty` value on individual nodes

      Overrides:
        `setIconPadding` in class `ListGrid`
      Parameters:
        `iconPadding` - New iconPadding value. Default value is 2
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getIconPadding

          public java.lang.Integer getIconPadding()

      Default padding to show between the folder or leaf node icon and cell value in the tree cell.

      May be overridden for `folderIcons` via `folderIconPadding`. May also be overridden for individual nodes by setting the `iconPaddingProperty` value on individual nodes

      Overrides:
        `getIconPadding` in class `ListGrid`
      Returns:
        Current iconPadding value. Default value is 2

    - #### setIconPaddingProperty

          public TreeGrid setIconPaddingProperty(java.lang.String iconPaddingProperty)
                                          throws java.lang.IllegalStateException

      This property allows the developer to specify custom `iconPadding` for specific nodes
      Parameters:
        `iconPaddingProperty` - New iconPaddingProperty value. Default value is "iconPadding"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getIconPaddingProperty

          public java.lang.String getIconPaddingProperty()

      This property allows the developer to specify custom `iconPadding` for specific nodes
      Returns:
        Current iconPaddingProperty value. Default value is "iconPadding"

    - #### setIconSize

          public TreeGrid setIconSize(int iconSize)

      The standard size (same height and width, in pixels) of node icons in this treeGrid.
      Parameters:
        `iconSize` - New iconSize value. Default value is 16
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getIconSize

          public int getIconSize()

      The standard size (same height and width, in pixels) of node icons in this treeGrid.
      Returns:
        Current iconSize value. Default value is 16

    - #### setIndentRecordComponents

          public TreeGrid setIndentRecordComponents(java.lang.Boolean indentRecordComponents)

      For record components placed "within" the `treeField` column, should the component be indented to the position where a title would normally show?

      For more general placement of embedded components, see `addEmbeddedComponent`.

      Parameters:
        `indentRecordComponents` - New indentRecordComponents value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getIndentRecordComponents

          public java.lang.Boolean getIndentRecordComponents()

      For record components placed "within" the `treeField` column, should the component be indented to the position where a title would normally show?

      For more general placement of embedded components, see `addEmbeddedComponent`.

      Returns:
        Current indentRecordComponents value. Default value is true

    - #### setIndentSize

          public TreeGrid setIndentSize(int indentSize)

      The amount of indentation (in pixels) to add to a node's icon/title for each level down in this tree's hierarchy.

      This value is ignored when `showConnectors` is `true` because fixed-size images are used to render the connectors.

      Parameters:
        `indentSize` - New indentSize value. Default value is 20
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `Appearance overview and related methods`

    - #### getIndentSize

          public int getIndentSize()

      The amount of indentation (in pixels) to add to a node's icon/title for each level down in this tree's hierarchy.

      This value is ignored when `showConnectors` is `true` because fixed-size images are used to render the connectors.

      Returns:
        Current indentSize value. Default value is 20
      See Also:
        `Appearance overview and related methods`

    - #### setKeepParentsOnFilter

          public TreeGrid setKeepParentsOnFilter(java.lang.Boolean keepParentsOnFilter)
                                          throws java.lang.IllegalStateException

      If set, tree-based filtering is performed such that parent nodes are kept as long as they have children that match the filter criteria, even if the parents themselves do not match the filter criteria. If not set, filtering will exclude parent nodes not matching the criteria, and all nodes below them in the tree.

      ResultTrees will default to `fetchMode:"local"` whenever `keepParentsOnFilter` is true, unless fetchMode was explicitly set to "paged" (see below). This allows the filtering logic to fetch a complete tree of nodes from the DataSource (or if loadDataOnDemand:true, a complete set of nodes under a given parent) and then filter the resulting data locally on the client.

      This means that the server does not need to implement special tree filtering logic to support looking up nodes that match the specified criteria as well as ancestor nodes that may not.

      If some criteria must be sent to the server in order to produce a valid tree of data, but `keepParentsOnFilter` is also required, the `ResultTree.serverFilterFields` attribute may be used to specify a list of field names that will be sent to the server whenever they are present in the criteria. Note that for the subset of criteria applied to these fields, `keepParentsInFilter` behavior will not occur without custom logic in the DataSource fetch operation.

      If `FetchMode` is explicitly set to `"paged"`, it is not possible to implement `keepParentsOnFilter` by local filtering. Support for `keepParentsOnFilter` for a paged ResultTree therefore also requires custom logic in the DataSource fetch operation. To support this a developer must ensure that their fetch operation returns the appropriate set of nodes - all nodes that match the specified criteria plus their ancestor nodes even if they do not match the specified criteria.

      Parameters:
        `keepParentsOnFilter` - New keepParentsOnFilter value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Tree DataBinding`

    - #### getKeepParentsOnFilter

          public java.lang.Boolean getKeepParentsOnFilter()

      If set, tree-based filtering is performed such that parent nodes are kept as long as they have children that match the filter criteria, even if the parents themselves do not match the filter criteria. If not set, filtering will exclude parent nodes not matching the criteria, and all nodes below them in the tree.

      ResultTrees will default to `fetchMode:"local"` whenever `keepParentsOnFilter` is true, unless fetchMode was explicitly set to "paged" (see below). This allows the filtering logic to fetch a complete tree of nodes from the DataSource (or if loadDataOnDemand:true, a complete set of nodes under a given parent) and then filter the resulting data locally on the client.

      This means that the server does not need to implement special tree filtering logic to support looking up nodes that match the specified criteria as well as ancestor nodes that may not.

      If some criteria must be sent to the server in order to produce a valid tree of data, but `keepParentsOnFilter` is also required, the `ResultTree.serverFilterFields` attribute may be used to specify a list of field names that will be sent to the server whenever they are present in the criteria. Note that for the subset of criteria applied to these fields, `keepParentsInFilter` behavior will not occur without custom logic in the DataSource fetch operation.

      If `FetchMode` is explicitly set to `"paged"`, it is not possible to implement `keepParentsOnFilter` by local filtering. Support for `keepParentsOnFilter` for a paged ResultTree therefore also requires custom logic in the DataSource fetch operation. To support this a developer must ensure that their fetch operation returns the appropriate set of nodes - all nodes that match the specified criteria plus their ancestor nodes even if they do not match the specified criteria.

      Returns:
        Current keepParentsOnFilter value. Default value is null
      See Also:
        `Tree DataBinding`

    - #### setLeaveSelectionCheckboxGap

          public TreeGrid setLeaveSelectionCheckboxGap(java.lang.Boolean leaveSelectionCheckboxGap)
                                                throws java.lang.IllegalStateException

      If `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected, should a gap be left where the checkbox icon would normally appear, in order to make the node's icon and title line up with the content for other nodes in the same parent?

      Has no effect if `showDisabledSelectionCheckbox` is `true`

      Parameters:
        `leaveSelectionCheckboxGap` - New leaveSelectionCheckboxGap value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ListGrid.setRecordCanSelectProperty(java.lang.String)`

    - #### getLeaveSelectionCheckboxGap

          public java.lang.Boolean getLeaveSelectionCheckboxGap()

      If `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected, should a gap be left where the checkbox icon would normally appear, in order to make the node's icon and title line up with the content for other nodes in the same parent?

      Has no effect if `showDisabledSelectionCheckbox` is `true`

      Returns:
        Current leaveSelectionCheckboxGap value. Default value is true
      See Also:
        `ListGrid.getRecordCanSelectProperty()`

    - #### setLoadDataOnDemand

          public TreeGrid setLoadDataOnDemand(java.lang.Boolean loadDataOnDemand)

      For databound treeGrid instances, should the entire tree of data be loaded on initial fetch, or should folders load their children as they are opened.

      If unset, calling `fetchData()` will default it to true, otherwise, if a ResultTree is passed to `setData()`, the `ResultTree.loadDataOnDemand` setting is respected. Must be enabled on the underlying `ResultTree` when using `dataFetchMode`: "paged".

      Note that when using `loadDataOnDemand`, every node returned by the server is assumed be a folder which may load further children. See `ResultTree.defaultIsFolder` for how to control this behavior.

      Parameters:
        `loadDataOnDemand` - New loadDataOnDemand value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `setDataFetchMode(com.smartgwt.client.types.FetchMode)`, `DataBinding`, Initial Data & Load on Demand Example

    - #### getLoadDataOnDemand

          public java.lang.Boolean getLoadDataOnDemand()

      For databound treeGrid instances, should the entire tree of data be loaded on initial fetch, or should folders load their children as they are opened.

      If unset, calling `fetchData()` will default it to true, otherwise, if a ResultTree is passed to `setData()`, the `ResultTree.loadDataOnDemand` setting is respected. Must be enabled on the underlying `ResultTree` when using `dataFetchMode`: "paged".

      Note that when using `loadDataOnDemand`, every node returned by the server is assumed be a folder which may load further children. See `ResultTree.defaultIsFolder` for how to control this behavior.

      Returns:
        Current loadDataOnDemand value. Default value is null
      See Also:
        `getDataFetchMode()`, `DataBinding`, Initial Data & Load on Demand Example

    - #### setLoadingIcon

          public TreeGrid setLoadingIcon(java.lang.String loadingIcon)

      If `showLoadingIcons` is set, this icon will be used when the folder is `loading children from the server`.
      Parameters:
        `loadingIcon` - New loadingIcon value. Default value is "[SKIN]folder_loading.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `SCImgURL`

    - #### getLoadingIcon

          public java.lang.String getLoadingIcon()

      If `showLoadingIcons` is set, this icon will be used when the folder is `loading children from the server`.
      Returns:
        Current loadingIcon value. Default value is "[SKIN]folder_loading.gif"
      See Also:
        `SCImgURL`

    - #### setManyItemsImage

          public TreeGrid setManyItemsImage(java.lang.String manyItemsImage)

      The filename of the icon displayed use as the default drag tracker when for multiple files and/or folders are being dragged.
      Parameters:
        `manyItemsImage` - New manyItemsImage value. Default value is "[SKIN]folder_file.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `SCImgURL`, `Drag and Drop`

    - #### getManyItemsImage

          public java.lang.String getManyItemsImage()

      The filename of the icon displayed use as the default drag tracker when for multiple files and/or folders are being dragged.
      Returns:
        Current manyItemsImage value. Default value is "[SKIN]folder_file.gif"
      See Also:
        `SCImgURL`, `Drag and Drop`

    - #### setNodeIcon

          public TreeGrid setNodeIcon(java.lang.String nodeIcon)

      The filename of the default icon for all leaf nodes in this grid. To specify a custom image for an individual node, set the `customIconProperty` directly on the node.

      See `showNodeIcons` and `showFolderIcons` for details on suppressing display of icons
      If this method is called after the component has been drawn/initialized: Set the icon for a particular treenode to a specified URL

      Parameters:
        `nodeIcon` - tree node. Default value is "[SKIN]file.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `SCImgURL`, Node Titles Example

    - #### getNodeIcon

          public java.lang.String getNodeIcon()

      The filename of the default icon for all leaf nodes in this grid. To specify a custom image for an individual node, set the `customIconProperty` directly on the node.

      See `showNodeIcons` and `showFolderIcons` for details on suppressing display of icons

      Returns:
        Current nodeIcon value. Default value is "[SKIN]file.gif"
      See Also:
        `SCImgURL`, Node Titles Example

    - #### setOfflineNodeMessage

          public TreeGrid setOfflineNodeMessage(java.lang.String offlineNodeMessage)

      For TreeGrids with loadDataOnDemand: true, a message to show the user if an attempt is made to open a folder, and thus load that node's children, while we are offline and there is no offline cache of that data. The message will be presented to the user in in a pop-up dialog box.
      Parameters:
        `offlineNodeMessage` - New offlineNodeMessage value. Default value is "This data not available while offline"
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getOfflineNodeMessage

          public java.lang.String getOfflineNodeMessage()

      For TreeGrids with loadDataOnDemand: true, a message to show the user if an attempt is made to open a folder, and thus load that node's children, while we are offline and there is no offline cache of that data. The message will be presented to the user in in a pop-up dialog box.
      Returns:
        Current offlineNodeMessage value. Default value is "This data not available while offline"

    - #### setOpenerIconHeight

          public TreeGrid setOpenerIconHeight(java.lang.Integer openerIconHeight)

      Height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.

      If not specified, `openerIconSize` is used instead.

      Parameters:
        `openerIconHeight` - New openerIconHeight value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getOpenerIconHeight

          public java.lang.Integer getOpenerIconHeight()

      Height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.

      If not specified, `openerIconSize` is used instead.

      Returns:
        Current openerIconHeight value. Default value is null

    - #### setOpenerIconSize

          public TreeGrid setOpenerIconSize(java.lang.Integer openerIconSize)

      Default width and height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol, if not overridden by `openerIconWidth`/`openerIconHeight`.

      If `showConnectors` is true, the opener icon includes the connector line, and defaults to `cellHeight`.

      Otherwise, `openerIconSize` defaults to `iconSize`.

      Parameters:
        `openerIconSize` - New openerIconSize value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getOpenerIconSize

          public java.lang.Integer getOpenerIconSize()

      Default width and height in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol, if not overridden by `openerIconWidth`/`openerIconHeight`.

      If `showConnectors` is true, the opener icon includes the connector line, and defaults to `cellHeight`.

      Otherwise, `openerIconSize` defaults to `iconSize`.

      Returns:
        Current openerIconSize value. Default value is null

    - #### setOpenerIconWidth

          public TreeGrid setOpenerIconWidth(java.lang.Integer openerIconWidth)

      Width in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.

      If not specified, `openerIconSize` is used instead.

      Parameters:
        `openerIconWidth` - New openerIconWidth value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getOpenerIconWidth

          public java.lang.Integer getOpenerIconWidth()

      Width in pixels of the opener icons, that is, the icons which show the open or closed state of the node, typically a [+] or [-] symbol.

      If not specified, `openerIconSize` is used instead.

      Returns:
        Current openerIconWidth value. Default value is null

    - #### setOpenerImage

          public TreeGrid setOpenerImage(java.lang.String openerImage)
                                  throws java.lang.IllegalStateException

      The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid. The opener icon is displayed beside the folder icon in the Tree column for folder nodes. Clicking on this icon will toggle the open state of the folder.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node, as follows: If the openerImage is set to `{baseName}.{extension}`, `{baseName}_opened.{extension}` will be displayed next to opened folders, and `{baseName}_closed.{extension}` will be displayed next to closed folders, or if this page is in RTL mode, `{baseName}_opened_rtl.{extension}` and `{baseName}_closed_rtl.{extension}` will be used.

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for an openerImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_opened_selected.{extension}`, `{baseName}_closed_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states: opened, closed, opened_selected and closed_selected (RTL styles are also available, see above). These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      The following code shows using `SVG Symbols` from a sprite-file:

             openerImage: {
                 // _base state is required, although will not be displayed in this case
                 _base: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 // closed and closed_selected states - make the selected icon blue
                 closed: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 closed_selected: "sprite:svg:fileName.svg#arrowRight;size:12,12;color:blue;",
                 // opened and opened_selected states - make the selected icon blue
                 opened: "sprite:svg:fileName.svg#arrowDown;size:12,12;",
                 opened_selected: "sprite:svg:fileName.svg#arrowDown;size:12,12;color:blue;"
             }

      Parameters:
        `openerImage` - New openerImage value. Default value is "[SKIN]opener.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SCImgURL`

    - #### getOpenerImage

          public java.lang.String getOpenerImage()

      The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid. The opener icon is displayed beside the folder icon in the Tree column for folder nodes. Clicking on this icon will toggle the open state of the folder.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node, as follows: If the openerImage is set to `{baseName}.{extension}`, `{baseName}_opened.{extension}` will be displayed next to opened folders, and `{baseName}_closed.{extension}` will be displayed next to closed folders, or if this page is in RTL mode, `{baseName}_opened_rtl.{extension}` and `{baseName}_closed_rtl.{extension}` will be used.

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for an openerImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_opened_selected.{extension}`, `{baseName}_closed_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states: opened, closed, opened_selected and closed_selected (RTL styles are also available, see above). These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      The following code shows using `SVG Symbols` from a sprite-file:

             openerImage: {
                 // _base state is required, although will not be displayed in this case
                 _base: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 // closed and closed_selected states - make the selected icon blue
                 closed: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 closed_selected: "sprite:svg:fileName.svg#arrowRight;size:12,12;color:blue;",
                 // opened and opened_selected states - make the selected icon blue
                 opened: "sprite:svg:fileName.svg#arrowDown;size:12,12;",
                 opened_selected: "sprite:svg:fileName.svg#arrowDown;size:12,12;color:blue;"
             }

      Returns:
        Current openerImage value. Default value is "[SKIN]opener.gif"
      See Also:
        `SCImgURL`

    - #### setOpenerImage

          public TreeGrid setOpenerImage(SCStatefulImgConfig openerImage)
                                  throws java.lang.IllegalStateException

      The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid. The opener icon is displayed beside the folder icon in the Tree column for folder nodes. Clicking on this icon will toggle the open state of the folder.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node, as follows: If the openerImage is set to `{baseName}.{extension}`, `{baseName}_opened.{extension}` will be displayed next to opened folders, and `{baseName}_closed.{extension}` will be displayed next to closed folders, or if this page is in RTL mode, `{baseName}_opened_rtl.{extension}` and `{baseName}_closed_rtl.{extension}` will be used.

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for an openerImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_opened_selected.{extension}`, `{baseName}_closed_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states: opened, closed, opened_selected and closed_selected (RTL styles are also available, see above). These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      The following code shows using `SVG Symbols` from a sprite-file:

             openerImage: {
                 // _base state is required, although will not be displayed in this case
                 _base: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 // closed and closed_selected states - make the selected icon blue
                 closed: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 closed_selected: "sprite:svg:fileName.svg#arrowRight;size:12,12;color:blue;",
                 // opened and opened_selected states - make the selected icon blue
                 opened: "sprite:svg:fileName.svg#arrowDown;size:12,12;",
                 opened_selected: "sprite:svg:fileName.svg#arrowDown;size:12,12;color:blue;"
             }

      Parameters:
        `openerImage` - New openerImage value. Default value is "[SKIN]opener.gif"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `SCImgURL`

    - #### getOpenerImageAsSCStatefulImgConfig

          public SCStatefulImgConfig getOpenerImageAsSCStatefulImgConfig()

      The base filename or `stateful image block` for the opener icon for folder nodes when "showConnectors" is false for this TreeGrid. The opener icon is displayed beside the folder icon in the Tree column for folder nodes. Clicking on this icon will toggle the open state of the folder.

      When set to an `SCImgURL`: the stateful filenames for these icons are assembled from this base filename and the state of the node, as follows: If the openerImage is set to `{baseName}.{extension}`, `{baseName}_opened.{extension}` will be displayed next to opened folders, and `{baseName}_closed.{extension}` will be displayed next to closed folders, or if this page is in RTL mode, `{baseName}_opened_rtl.{extension}` and `{baseName}_closed_rtl.{extension}` will be used.

      If `showSelectedOpener` is true the URL for selected nodes will append the string `"_selected"` to the image URLs described above. So for an openerImage set to `{baseName}.{extension}`, the URLs for selected records would be `{baseName}_opened_selected.{extension}`, `{baseName}_closed_selected.{extension}`, etc.

      When set to an SCStatefulImgConfig: it should contain entries for the default _base state, as well as the custom states: opened, closed, opened_selected and closed_selected (RTL styles are also available, see above). These entries may be set to any combination of supported src strings, including file-paths and sprite-strings.

      The following code shows using `SVG Symbols` from a sprite-file:

             openerImage: {
                 // _base state is required, although will not be displayed in this case
                 _base: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 // closed and closed_selected states - make the selected icon blue
                 closed: "sprite:svg:fileName.svg#arrowRight;size:12,12;",
                 closed_selected: "sprite:svg:fileName.svg#arrowRight;size:12,12;color:blue;",
                 // opened and opened_selected states - make the selected icon blue
                 opened: "sprite:svg:fileName.svg#arrowDown;size:12,12;",
                 opened_selected: "sprite:svg:fileName.svg#arrowDown;size:12,12;color:blue;"
             }

      Returns:
        Current openerImage value. Default value is "[SKIN]opener.gif"
      See Also:
        `SCImgURL`

    - #### setOpenIconPadding

          public TreeGrid setOpenIconPadding(java.lang.Integer openIconPadding)
                                      throws java.lang.IllegalStateException

      Default padding to show between the `openIcon` and the extra or folder icon in the tree cell.
      Parameters:
        `openIconPadding` - New openIconPadding value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getOpenIconPadding

          public java.lang.Integer getOpenIconPadding()

      Default padding to show between the `openIcon` and the extra or folder icon in the tree cell.
      Returns:
        Current openIconPadding value. Default value is null

    - #### setOpenIconSuffix

          public TreeGrid setOpenIconSuffix(java.lang.String openIconSuffix)
                                     throws java.lang.IllegalStateException

      If `showOpenIcons` is true, this suffix will be appended to the `folderIcon` for open folders in this grid.
      Parameters:
        `openIconSuffix` - New openIconSuffix value. Default value is "open"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getOpenIconSuffix

          public java.lang.String getOpenIconSuffix()

      If `showOpenIcons` is true, this suffix will be appended to the `folderIcon` for open folders in this grid.
      Returns:
        Current openIconSuffix value. Default value is "open"

    - #### setParentAlreadyContainsChildMessage

          public TreeGrid setParentAlreadyContainsChildMessage(java.lang.String parentAlreadyContainsChildMessage)
                                                        throws java.lang.IllegalStateException

      Message displayed when user attempts to drag a node into a parent that already contains a child of the same name/ID.
      Parameters:
        `parentAlreadyContainsChildMessage` - New parentAlreadyContainsChildMessage value. Default value is "This item already contains a child item with that name."
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setCanDragRecordsOut(java.lang.Boolean)`, `setCanAcceptDroppedRecords(java.lang.Boolean)`, `setCanReorderRecords(java.lang.Boolean)`, `setCantDragMultipleNodeOccurencesMessage(java.lang.String)`

    - #### getParentAlreadyContainsChildMessage

          public java.lang.String getParentAlreadyContainsChildMessage()

      Message displayed when user attempts to drag a node into a parent that already contains a child of the same name/ID.
      Returns:
        Current parentAlreadyContainsChildMessage value. Default value is "This item already contains a child item with that name."
      See Also:
        `getCanDragRecordsOut()`, `getCanAcceptDroppedRecords()`, `getCanReorderRecords()`, `getCantDragMultipleNodeOccurencesMessage()`

    - #### setRecordDropAppearance

          public TreeGrid setRecordDropAppearance(RecordDropAppearance recordDropAppearance)

      If `canAcceptDroppedRecords` is true for this treeGrid, this property governs whether the user can drop between, or over records within the grid. This controls what `RecordDropPosition` is passed to the `recordDrop()` event handler.
      Overrides:
        `setRecordDropAppearance` in class `ListGrid`
      Parameters:
        `recordDropAppearance` - New recordDropAppearance value. Default value is ListGrid.BOTH
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getRecordDropAppearance

          public RecordDropAppearance getRecordDropAppearance()

      If `canAcceptDroppedRecords` is true for this treeGrid, this property governs whether the user can drop between, or over records within the grid. This controls what `RecordDropPosition` is passed to the `recordDrop()` event handler.
      Overrides:
        `getRecordDropAppearance` in class `ListGrid`
      Returns:
        Current recordDropAppearance value. Default value is ListGrid.BOTH

    - #### setSaveOpenStateInViewState

          public TreeGrid setSaveOpenStateInViewState(java.lang.Boolean saveOpenStateInViewState)

      Should the current `open state` of the tree be included along with other details when saving this grid's `view-state`?
      Parameters:
        `saveOpenStateInViewState` - New saveOpenStateInViewState value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getSaveOpenStateInViewState

          public java.lang.Boolean getSaveOpenStateInViewState()

      Should the current `open state` of the tree be included along with other details when saving this grid's `view-state`?
      Returns:
        Current saveOpenStateInViewState value. Default value is true

    - #### setSelectedIconSuffix

          public TreeGrid setSelectedIconSuffix(java.lang.String selectedIconSuffix)
                                         throws java.lang.IllegalStateException

      If `showSelectedIcons` is true, this suffix will be appended to the `folderIcon` for selected nodes in this grid.
      Parameters:
        `selectedIconSuffix` - New selectedIconSuffix value. Default value is "selected"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSelectedIconSuffix

          public java.lang.String getSelectedIconSuffix()

      If `showSelectedIcons` is true, this suffix will be appended to the `folderIcon` for selected nodes in this grid.
      Returns:
        Current selectedIconSuffix value. Default value is "selected"

    - #### setSelectionProperty

          public TreeGrid setSelectionProperty(java.lang.String selectionProperty)
                                        throws java.lang.IllegalStateException

      If specified, the selection object for this list will use this property to mark records as selected. In other words, if this attribute were set to `"isSelected"` any records in the listGrid data where `"isSelected"` is `true` will show up as selected in the grid. Similarly if records are selected within the grid after the grid has been created, this property will be set to true on the selected records.

      Note : This is an advanced setting

      Overrides:
        `setSelectionProperty` in class `ListGrid`
      Parameters:
        `selectionProperty` - New selectionProperty value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Appearance overview and related methods`

    - #### getSelectionProperty

          public java.lang.String getSelectionProperty()

      If specified, the selection object for this list will use this property to mark records as selected. In other words, if this attribute were set to `"isSelected"` any records in the listGrid data where `"isSelected"` is `true` will show up as selected in the grid. Similarly if records are selected within the grid after the grid has been created, this property will be set to true on the selected records.
      Overrides:
        `getSelectionProperty` in class `ListGrid`
      Returns:
        Current selectionProperty value. Default value is null
      See Also:
        `Appearance overview and related methods`

    - #### setSeparateFolders

          public TreeGrid setSeparateFolders(java.lang.Boolean separateFolders)
                                      throws java.lang.IllegalStateException

      If specified, this attribute will override `Tree.separateFolders` on the data for this treeGrid.

      Specifies whether folders and leaves should be segregated in the treeGrid display. Use `Tree.sortFoldersBeforeLeaves` to customize whether folders appear before or after their sibling leaves.

      If unset, at the treeGrid level, the property can be set directly on `the tree data object` or for dataBound TreeGrids on the `dataProperties`.

      Parameters:
        `separateFolders` - New separateFolders value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getSeparateFolders

          public java.lang.Boolean getSeparateFolders()

      If specified, this attribute will override `Tree.separateFolders` on the data for this treeGrid.

      Specifies whether folders and leaves should be segregated in the treeGrid display. Use `Tree.sortFoldersBeforeLeaves` to customize whether folders appear before or after their sibling leaves.

      If unset, at the treeGrid level, the property can be set directly on `the tree data object` or for dataBound TreeGrids on the `dataProperties`.

      Returns:
        Current separateFolders value. Default value is null

    - #### setServerFilterFields

          public TreeGrid setServerFilterFields(java.lang.String... serverFilterFields)
                                         throws java.lang.IllegalStateException

      For `fetchMode:"local"` ResultTrees, this property lists field names that will be sent to the server if they are present in the criteria.

      This property may be used to ensure a dataSource receives the necessary criteria to populate a ResultTree's data, and also support `keepParentsOnFilter`.

      Note that for some AdvancedCriteria it will not be possible to extract the subcriteria that apply to certain fields. See `DataSource.splitCriteria()` for details on how serverFilterFields-applicable subcriteria are extracted from the specified criteria for the tree.

      Parameters:
        `serverFilterFields` - New serverFilterFields value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getServerFilterFields

          public java.lang.String[] getServerFilterFields()

      For `fetchMode:"local"` ResultTrees, this property lists field names that will be sent to the server if they are present in the criteria.

      This property may be used to ensure a dataSource receives the necessary criteria to populate a ResultTree's data, and also support `keepParentsOnFilter`.

      Note that for some AdvancedCriteria it will not be possible to extract the subcriteria that apply to certain fields. See `DataSource.splitCriteria()` for details on how serverFilterFields-applicable subcriteria are extracted from the specified criteria for the tree.

      Returns:
        Current serverFilterFields value. Default value is null

    - #### setShowConnectors

          public TreeGrid setShowConnectors(java.lang.Boolean showConnectors)

      Should this treeGrid show connector lines illustrating the tree's hierarchy?

      For the set of images used to show connectors, see `connectorImage`.

      Note: in order for connector images to be perfectly connected, all styles for cells must have no top or bottom border or padding. If you see small gaps in connector lines, check your CSS files. See the example below for an example of correct configuration, including example CSS.

      Parameters:
        `showConnectors` - New showConnectors value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        Connectors Example

    - #### getShowConnectors

          public java.lang.Boolean getShowConnectors()

      Should this treeGrid show connector lines illustrating the tree's hierarchy?

      For the set of images used to show connectors, see `connectorImage`.

      Note: in order for connector images to be perfectly connected, all styles for cells must have no top or bottom border or padding. If you see small gaps in connector lines, check your CSS files. See the example below for an example of correct configuration, including example CSS.

      Returns:
        Current showConnectors value. Default value is false
      See Also:
        Connectors Example

    - #### setShowCustomIconDrop

          public TreeGrid setShowCustomIconDrop(java.lang.Boolean showCustomIconDrop)

      Should folder nodes showing custom icons (set via the `customIconProperty`, default `TreeNode.icon`), show drop state images when the user is drop-hovering over the folder. If true, the `dropIconSuffix` will be appended to the image URL (so `"customFolder.gif"` might be replaced with `"customFolder_drop.gif"`).
      Can be overridden at the node level via the default property `TreeNode.showDropIcon` and that property can be renamed via `customIconDropProperty`.

      Note : This is an advanced setting

      Parameters:
        `showCustomIconDrop` - New showCustomIconDrop value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowCustomIconDrop

          public java.lang.Boolean getShowCustomIconDrop()

      Should folder nodes showing custom icons (set via the `customIconProperty`, default `TreeNode.icon`), show drop state images when the user is drop-hovering over the folder. If true, the `dropIconSuffix` will be appended to the image URL (so `"customFolder.gif"` might be replaced with `"customFolder_drop.gif"`).
      Can be overridden at the node level via the default property `TreeNode.showDropIcon` and that property can be renamed via `customIconDropProperty`.
      Returns:
        Current showCustomIconDrop value. Default value is false

    - #### setShowCustomIconOpen

          public TreeGrid setShowCustomIconOpen(java.lang.Boolean showCustomIconOpen)

      Should folder nodes showing custom icons (set via the `customIconProperty`), show open state images when the folder is opened. If true, the `openIconSuffix` will be appended to the image URL (so `"customFolder.gif"` might be replaced with `"customFolder_open.gif"`).
      Note that the `closedIconSuffix` is never appended to custom folder icons.
      Can be overridden at the node level via the default property `TreeNode.showOpenIcon` and that property can be renamed via `customIconOpenProperty`.

      Note : This is an advanced setting

      Parameters:
        `showCustomIconOpen` - New showCustomIconOpen value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowCustomIconOpen

          public java.lang.Boolean getShowCustomIconOpen()

      Should folder nodes showing custom icons (set via the `customIconProperty`), show open state images when the folder is opened. If true, the `openIconSuffix` will be appended to the image URL (so `"customFolder.gif"` might be replaced with `"customFolder_open.gif"`).
      Note that the `closedIconSuffix` is never appended to custom folder icons.
      Can be overridden at the node level via the default property `TreeNode.showOpenIcon` and that property can be renamed via `customIconOpenProperty`.
      Returns:
        Current showCustomIconOpen value. Default value is false

    - #### setShowCustomIconSelected

          public TreeGrid setShowCustomIconSelected(java.lang.Boolean showCustomIconSelected)

      Should folder nodes showing custom icons (set via the `customIconProperty`), show selected state images when the folder is selected, if `showSelectedIcons` is true?

      If true, the `selectedIconSuffix` will be appended to the image URL (so `"customFolder.gif"` might be replaced with `"customFolder_selected.gif"`).
      Can be overridden at the node level via the default property `TreeNode.showSelectedIcon` and that property can be renamed via `customIconSelectedProperty`.

      Note : This is an advanced setting

      Parameters:
        `showCustomIconSelected` - New showCustomIconSelected value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowCustomIconSelected

          public java.lang.Boolean getShowCustomIconSelected()

      Should folder nodes showing custom icons (set via the `customIconProperty`), show selected state images when the folder is selected, if `showSelectedIcons` is true?

      If true, the `selectedIconSuffix` will be appended to the image URL (so `"customFolder.gif"` might be replaced with `"customFolder_selected.gif"`).
      Can be overridden at the node level via the default property `TreeNode.showSelectedIcon` and that property can be renamed via `customIconSelectedProperty`.

      Returns:
        Current showCustomIconSelected value. Default value is false

    - #### setShowDisabledSelectionCheckbox

          public TreeGrid setShowDisabledSelectionCheckbox(java.lang.Boolean showDisabledSelectionCheckbox)
                                                    throws java.lang.IllegalStateException

      Should tree nodes show a disabled checkbox `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected?

      If set to `false` the treeGrid will use `leaveSelectionCheckboxGap` to determine whether to leave a blank space where the checkbox would normally appear.

      Parameters:
        `showDisabledSelectionCheckbox` - New showDisabledSelectionCheckbox value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `ListGrid.setRecordCanSelectProperty(java.lang.String)`

    - #### getShowDisabledSelectionCheckbox

          public java.lang.Boolean getShowDisabledSelectionCheckbox()

      Should tree nodes show a disabled checkbox `selectionAppearance`:"checkbox" is set on the treegrid, and a node can't be selected?

      If set to `false` the treeGrid will use `leaveSelectionCheckboxGap` to determine whether to leave a blank space where the checkbox would normally appear.

      Returns:
        Current showDisabledSelectionCheckbox value. Default value is false
      See Also:
        `ListGrid.getRecordCanSelectProperty()`

    - #### setShowDropEndSpace

          public TreeGrid setShowDropEndSpace(boolean showDropEndSpace)

      When the user drags over the treeGrid body, should the grid show some space under the last node in the grid allowing the user to drop after the last node? The height of this space can be customized via `dropEndSpace`

      See also `canDropInEmptyArea` and `canDropSiblingAfterLastNode`

      Note : This is an advanced setting

      Parameters:
        `showDropEndSpace` - New showDropEndSpace value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `TreeGrid drag and drop`

    - #### getShowDropEndSpace

          public boolean getShowDropEndSpace()

      When the user drags over the treeGrid body, should the grid show some space under the last node in the grid allowing the user to drop after the last node? The height of this space can be customized via `dropEndSpace`

      See also `canDropInEmptyArea` and `canDropSiblingAfterLastNode`

      Returns:
        Current showDropEndSpace value. Default value is true
      See Also:
        `TreeGrid drag and drop`

    - #### setShowDropIcons

          public TreeGrid setShowDropIcons(java.lang.Boolean showDropIcons)

      If true, when the user drags a droppable target over a folder in this TreeGrid, show a different folder icon. This is achieved by appending the `dropIconSuffix` onto the `folderIcon` URL (for example `"[SKIN]/folder.gif"` may be replaced by `"[SKIN]/folder_drop.gif"`).
      Parameters:
        `showDropIcons` - New showDropIcons value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        Node Titles Example

    - #### getShowDropIcons

          public java.lang.Boolean getShowDropIcons()

      If true, when the user drags a droppable target over a folder in this TreeGrid, show a different folder icon. This is achieved by appending the `dropIconSuffix` onto the `folderIcon` URL (for example `"[SKIN]/folder.gif"` may be replaced by `"[SKIN]/folder_drop.gif"`).
      Returns:
        Current showDropIcons value. Default value is true
      See Also:
        Node Titles Example

    - #### setShowFolderIcons

          public TreeGrid setShowFolderIcons(java.lang.Boolean showFolderIcons)

      Should folder nodes in this TreeGrid show icons by default?

      If unset, folder node icons will be shown if `showNodeIcons` is true

      See `getIcon()` for more details on treeGrid icons

      Parameters:
        `showFolderIcons` - New showFolderIcons value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowFolderIcons

          public java.lang.Boolean getShowFolderIcons()

      Should folder nodes in this TreeGrid show icons by default?

      If unset, folder node icons will be shown if `showNodeIcons` is true

      See `getIcon()` for more details on treeGrid icons

      Returns:
        Current showFolderIcons value. Default value is null

    - #### setShowFullConnectors

          public TreeGrid setShowFullConnectors(java.lang.Boolean showFullConnectors)

      If `showConnectors` is true, this property determines whether we should show vertical continuation lines for each level of indenting within the tree. Setting to false will show only the hierarchy lines for the most indented path ("sparse" connectors).
      Parameters:
        `showFullConnectors` - New showFullConnectors value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowFullConnectors

          public java.lang.Boolean getShowFullConnectors()

      If `showConnectors` is true, this property determines whether we should show vertical continuation lines for each level of indenting within the tree. Setting to false will show only the hierarchy lines for the most indented path ("sparse" connectors).
      Returns:
        Current showFullConnectors value. Default value is true

    - #### setShowLoadingIcons

          public TreeGrid setShowLoadingIcons(boolean showLoadingIcons)
                                       throws java.lang.IllegalStateException

      If set, when a folder is loading its children from the server (`Tree.getLoadState()` returns "loading"), it uses a distinct icon image given by `loadingIcon`. This is typically used to show a small animating "spinner" icon to let the user know data is being fetched.
      Parameters:
        `showLoadingIcons` - New showLoadingIcons value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowLoadingIcons

          public boolean getShowLoadingIcons()

      If set, when a folder is loading its children from the server (`Tree.getLoadState()` returns "loading"), it uses a distinct icon image given by `loadingIcon`. This is typically used to show a small animating "spinner" icon to let the user know data is being fetched.
      Returns:
        Current showLoadingIcons value. Default value is true

    - #### setShowNodeIcons

          public TreeGrid setShowNodeIcons(java.lang.Boolean showNodeIcons)

      Should nodes in this TreeGrid show folder / leaf node icons by default?

      May be overridden for folder nodes via `showFolderIcons`

      See `getIcon()` for more details on treeGrid icons

      Parameters:
        `showNodeIcons` - New showNodeIcons value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowNodeIcons

          public java.lang.Boolean getShowNodeIcons()

      Should nodes in this TreeGrid show folder / leaf node icons by default?

      May be overridden for folder nodes via `showFolderIcons`

      See `getIcon()` for more details on treeGrid icons

      Returns:
        Current showNodeIcons value. Default value is true

    - #### setShowOpener

          public TreeGrid setShowOpener(java.lang.Boolean showOpener)

      Should the opener icon be displayed next to folder nodes? This is an icon which visually indicates whether the folder is opened or closed (typically via a [+] or [-] image, or a turn-down arrow) and may be clicked to expand or collapse the folder.

      For folders with no children, this icon is not shown unless `alwaysShowOpener` is `true`. Note that for trees which `load data on demand`, we may not know if a folder has any descendants if it has never been opened. As such we will show the opener icon next to the folder. Once the user opens the icon and a fetch occurs, if the folder is empty, and `alwaysShowOpener` is false, the opener icon will be hidden.

      For more information on load on demand trees, and how we determine whether a node is a a folder or a leaf, please refer to the `TreeDataBinding` documentation.

      The opener icon URL is derived from the specified `openerImage` or `connectorImage` depending on `showConnectors`. If `showSelectedOpener` is specified a separate opener icon will be displayed for selected nodes.

      Parameters:
        `showOpener` - New showOpener value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowOpener

          public java.lang.Boolean getShowOpener()

      Should the opener icon be displayed next to folder nodes? This is an icon which visually indicates whether the folder is opened or closed (typically via a [+] or [-] image, or a turn-down arrow) and may be clicked to expand or collapse the folder.

      For folders with no children, this icon is not shown unless `alwaysShowOpener` is `true`. Note that for trees which `load data on demand`, we may not know if a folder has any descendants if it has never been opened. As such we will show the opener icon next to the folder. Once the user opens the icon and a fetch occurs, if the folder is empty, and `alwaysShowOpener` is false, the opener icon will be hidden.

      For more information on load on demand trees, and how we determine whether a node is a a folder or a leaf, please refer to the `TreeDataBinding` documentation.

      The opener icon URL is derived from the specified `openerImage` or `connectorImage` depending on `showConnectors`. If `showSelectedOpener` is specified a separate opener icon will be displayed for selected nodes.

      Returns:
        Current showOpener value. Default value is true

    - #### setShowOpenIcons

          public TreeGrid setShowOpenIcons(java.lang.Boolean showOpenIcons)

      If true, show a different icon for `open` folders than closed folders. This is achieved by appending the `openIconSuffix` onto the `folderIcon` URL [for example `"[SKIN]/folder.gif"` might be replaced by `"[SKIN]/folder_open.gif"`.
      Note If this property is set to `false` the same icon is shown for open folders as for closed folders, unless a custom folder icon was specified. This will be determined by `folderIcon` plus the `closedIconSuffix`.
      Parameters:
        `showOpenIcons` - New showOpenIcons value. Default value is true
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        Node Titles Example

    - #### getShowOpenIcons

          public java.lang.Boolean getShowOpenIcons()

      If true, show a different icon for `open` folders than closed folders. This is achieved by appending the `openIconSuffix` onto the `folderIcon` URL [for example `"[SKIN]/folder.gif"` might be replaced by `"[SKIN]/folder_open.gif"`.
      Note If this property is set to `false` the same icon is shown for open folders as for closed folders, unless a custom folder icon was specified. This will be determined by `folderIcon` plus the `closedIconSuffix`.
      Returns:
        Current showOpenIcons value. Default value is true
      See Also:
        Node Titles Example

    - #### setShowPartialSelection

          public TreeGrid setShowPartialSelection(java.lang.Boolean showPartialSelection)

      Should partially selected parents be shown with special icon?
      Overrides:
        `setShowPartialSelection` in class `ListGrid`
      Parameters:
        `showPartialSelection` - New showPartialSelection value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `Selection`

    - #### getShowPartialSelection

          public java.lang.Boolean getShowPartialSelection()

      Should partially selected parents be shown with special icon?
      Overrides:
        `getShowPartialSelection` in class `ListGrid`
      Returns:
        Current showPartialSelection value. Default value is false
      See Also:
        `Selection`

    - #### setShowRoot

          public TreeGrid setShowRoot(java.lang.Boolean showRoot)
                               throws java.lang.IllegalStateException

      Specifies whether the root node should be displayed in the treeGrid.

      This property is only available for "children" modelType trees, hence is not allowed for trees that load data from the server dynamically via `fetchData()`.

      To get the equivalent of a visible "root" node in a tree that loads data dynamically, add a singular, top-level parent to the data. However, note that this top-level parent will technically be the only child of root, and the implicit root object will be returned by `this.data.getRoot()`.

      Parameters:
        `showRoot` - New showRoot value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getShowRoot

          public java.lang.Boolean getShowRoot()

      Specifies whether the root node should be displayed in the treeGrid.

      This property is only available for "children" modelType trees, hence is not allowed for trees that load data from the server dynamically via `fetchData()`.

      To get the equivalent of a visible "root" node in a tree that loads data dynamically, add a singular, top-level parent to the data. However, note that this top-level parent will technically be the only child of root, and the implicit root object will be returned by `this.data.getRoot()`.

      Returns:
        Current showRoot value. Default value is false

    - #### setShowSelectedIcons

          public TreeGrid setShowSelectedIcons(java.lang.Boolean showSelectedIcons)

      If true, show a different icon for selected nodes than unselected nodes. This is achieved by appending the `selectedIconSuffix` onto the `folderIcon` URL or `nodeIcon` for selected records.

      If appropriate, this suffix will be combined with the `openIconSuffix` or `closedIconSuffix` (see `showOpenIcons`. So a treeGrid with its `folderIcon` property set to `"[SKIN]/folder.gif"`, with both `showSelectedIcons` and `showOpenIcons` set to true would show an icon with the URL `"[SKIN]/folder_open_selected.gif"` for a folder that was both selected and opened.

      Parameters:
        `showSelectedIcons` - New showSelectedIcons value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowSelectedIcons

          public java.lang.Boolean getShowSelectedIcons()

      If true, show a different icon for selected nodes than unselected nodes. This is achieved by appending the `selectedIconSuffix` onto the `folderIcon` URL or `nodeIcon` for selected records.

      If appropriate, this suffix will be combined with the `openIconSuffix` or `closedIconSuffix` (see `showOpenIcons`. So a treeGrid with its `folderIcon` property set to `"[SKIN]/folder.gif"`, with both `showSelectedIcons` and `showOpenIcons` set to true would show an icon with the URL `"[SKIN]/folder_open_selected.gif"` for a folder that was both selected and opened.

      Returns:
        Current showSelectedIcons value. Default value is false

    - #### setShowSelectedOpener

          public TreeGrid setShowSelectedOpener(java.lang.Boolean showSelectedOpener)

      If `showOpener` is true, should a different opener icon be displayed for selected nodes? This provides a way for developers to show a "selected" version of the opener icon set which looks optimal with the `selected appearance` applied the selected record.

      The selected icon URL is created by appending the suffix `"_selected"` to the `openerImage` or `connectorImage`.

      Parameters:
        `showSelectedOpener` - New showSelectedOpener value. Default value is false
      Returns:
        `TreeGrid` instance, for chaining setter calls

    - #### getShowSelectedOpener

          public java.lang.Boolean getShowSelectedOpener()

      If `showOpener` is true, should a different opener icon be displayed for selected nodes? This provides a way for developers to show a "selected" version of the opener icon set which looks optimal with the `selected appearance` applied the selected record.

      The selected icon URL is created by appending the suffix `"_selected"` to the `openerImage` or `connectorImage`.

      Returns:
        Current showSelectedOpener value. Default value is false

    - #### setSortFoldersBeforeLeaves

          public TreeGrid setSortFoldersBeforeLeaves(java.lang.Boolean sortFoldersBeforeLeaves)
                                              throws java.lang.IllegalStateException

      If specified, this attribute will override `Tree.sortFoldersBeforeLeaves` on the data for this treeGrid.

      Specifies whether when `Tree.separateFolders` is true, folders should be displayed before or after their sibling leaves in a sorted tree. If set to true, with sortDirection set to Array.ASCENDING, folders are displayed before their sibling leaves and with sort direction set to Array.DESCENDING they are displayed after. To invert this behavior, set this property to false.

      Parameters:
        `sortFoldersBeforeLeaves` - New sortFoldersBeforeLeaves value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `setSeparateFolders(java.lang.Boolean)`

    - #### getSortFoldersBeforeLeaves

          public java.lang.Boolean getSortFoldersBeforeLeaves()

      If specified, this attribute will override `Tree.sortFoldersBeforeLeaves` on the data for this treeGrid.

      Specifies whether when `Tree.separateFolders` is true, folders should be displayed before or after their sibling leaves in a sorted tree. If set to true, with sortDirection set to Array.ASCENDING, folders are displayed before their sibling leaves and with sort direction set to Array.DESCENDING they are displayed after. To invert this behavior, set this property to false.

      Returns:
        Current sortFoldersBeforeLeaves value. Default value is null
      See Also:
        `getSeparateFolders()`

    - #### setTreeFieldMinWidth

          public TreeGrid setTreeFieldMinWidth(int treeFieldMinWidth)
                                        throws java.lang.IllegalStateException

      Default `minimum width` for the `treeField`. If unset, the default minimum width will be derived from `minFieldWidth`, like any every other field.
      Parameters:
        `treeFieldMinWidth` - New treeFieldMinWidth value. Default value is 100
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTreeFieldMinWidth

          public int getTreeFieldMinWidth()

      Default `minimum width` for the `treeField`. If unset, the default minimum width will be derived from `minFieldWidth`, like any every other field.
      Returns:
        Current treeFieldMinWidth value. Default value is 100

    - #### setTreeFieldTitle

          public TreeGrid setTreeFieldTitle(java.lang.String treeFieldTitle)
                                     throws java.lang.IllegalStateException

      Visible title for the tree column (field).
      Parameters:
        `treeFieldTitle` - New treeFieldTitle value. Default value is "Name"
      Returns:
        `TreeGrid` instance, for chaining setter calls
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created

    - #### getTreeFieldTitle

          public java.lang.String getTreeFieldTitle()

      Visible title for the tree column (field).
      Returns:
        Current treeFieldTitle value. Default value is "Name"

    - #### setUseAllDataSourceFields

          public TreeGrid setUseAllDataSourceFields(java.lang.Boolean useAllDataSourceFields)

      If true, the set of fields given by the "default binding" (see `DataBoundComponent.fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.

      If `component.fields` contains fields that are not found in the DataSource, they will be shown after the most recently referred to DataSource field. If the new fields appear first, they will be shown first.

      This example shows a mixture of component fields and DataSource fields, and how they interact for validation.

      This setting may be cleared if a `FieldPicker` is used to edit the component's field order.

      Specified by:
        `setUseAllDataSourceFields` in interface `DataBoundComponent`
      Overrides:
        `setUseAllDataSourceFields` in class `ListGrid`
      Parameters:
        `useAllDataSourceFields` - New useAllDataSourceFields value. Default value is null
      Returns:
        `TreeGrid` instance, for chaining setter calls
      See Also:
        `FieldPicker.setDataBoundComponent(com.smartgwt.client.widgets.Canvas)`, `DataBinding`, Customized Binding Example

    - #### getUseAllDataSourceFields

          public java.lang.Boolean getUseAllDataSourceFields()

      If true, the set of fields given by the "default binding" (see `DataBoundComponent.fields`) is used, with any fields specified in `component.fields` acting as overrides that can suppress or modify the display of individual fields, without having to list the entire set of fields that should be shown.

      If `component.fields` contains fields that are not found in the DataSource, they will be shown after the most recently referred to DataSource field. If the new fields appear first, they will be shown first.

      This example shows a mixture of component fields and DataSource fields, and how they interact for validation.

      This setting may be cleared if a `FieldPicker` is used to edit the component's field order.

      Specified by:
        `getUseAllDataSourceFields` in interface `DataBoundComponent`
      Overrides:
        `getUseAllDataSourceFields` in class `ListGrid`
      Returns:
        Current useAllDataSourceFields value. Default value is null
      See Also:
        `FieldPicker.getDataBoundComponent()`, `DataBinding`, Customized Binding Example

    - #### canEditCell

          public java.lang.Boolean canEditCell()

      Overridden to disallow editing of the `name` field of this grid's data tree. Also disallows editing of the auto-generated tree field, which displays the result of `Tree.getTitle()` on the node.
      Returns:
        Whether to allow editing this cell

    - #### closeFolder

          public void closeFolder(TreeNode node)

      Closes a folder.
      Parameters:
        `node` - node to close
      See Also:
        `openFolder(com.smartgwt.client.widgets.tree.TreeNode)`, `FolderClosedEvent`

    - #### addDataArrivedHandler

          public com.google.gwt.event.shared.HandlerRegistration addDataArrivedHandler(DataArrivedHandler handler)

      Add a dataArrived handler.

      Notification method fired whenever this TreeGrid receives new data nodes from the dataSource. Only applies to databound TreeGrids where `TreeGrid.data` is a `ResultTree` - either explicitly created and applied via `TreeGrid.setData()` or automatically generated via a `fetchData()` call.

      Note that `dataArrived()`, unlike `TreeGrid.dataChanged()`, only fires in limited circumstances - when data for a `ResultTree` arrives from the server due to a fetch or cache invalidation, or as a result of filtering. If you want to catch all data changes, you should instead react to `TreeGrid.dataChanged()`.

      Parameters:
        `handler` - the dataArrived handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addDataChangedHandler

          public com.google.gwt.event.shared.HandlerRegistration addDataChangedHandler(DataChangedHandler handler)

      Add a dataChanged handler.

      Notification method fired when the TreeGrid's data changes, for any reason.

      Examples of why data changed might be:

      - a call to `addData()`, `updateData()`, or `removeData()`
      - `DataSource` updates from the server for `ResultTree` data (triggered by record editing, etc.)
      - fetches arriving back from the server for `ResultTree` data
      - programmatic changes to `Tree` data if made through APIs such as `Tree.add()`, `Tree.remove()`, etc.
      - cache invalidation
      - filtering
      Calling `TreeGrid.setData()` doesn't call this notification directly, but it may fire if one of the above listed events is triggered (e.g. a server fetch for `ResultTree` data).

      Note that the `operationType` parameter is optional and will be passed and contain the operation (e.g. "update") if this notification was triggered by a fetch, an `addData()`, `updateData()`, or `removeData()`, or a `DataSource` update for `ResultTree` data (the first three reasons listed above) but otherwise will be null.

      Parameters:
        `handler` - the dataChanged handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### exportClientData

          public void exportClientData()

      Exports this component's data with client-side formatters applied, so is suitable for direct display to users. See `ListGrid.exportClientData()` for details of the general requirements and restrictions when exporting client data.

      The following notes apply when exporting client data from TreeGrids:

      - Export only works correctly if you specify `fields`; if you allow it to generate a `default field`, nothing will be exported
      - Only visible nodes are exported; if you close a node, its children are not exported even if they are loaded and known to the client
      - Tree nodes are exported as a flat list, in the same order they are displayed in the TreeGrid

      If your TreeGrid has custom formatters, formatted values will be exported by default, with HTML normalized to text where possible. Since some levels of HTML normalizing aren't possible, this may result in missing or incorrect export values. In this case, you have two possible approaches:

      - Set `exportRawValues` on the field. This will export the raw underlying value of the field; your formatter will not be called
      - Have your formatter call `isExportingClientData()` and perform whatever alternative formatting you require if that method returns true
      Overrides:
        `exportClientData` in class `ListGrid`
      See Also:
        `ListGrid.exportClientData()`

    - #### exportClientData

          public void exportClientData(DSRequest requestProperties)

      Overrides:
        `exportClientData` in class `ListGrid`
      See Also:
        `exportClientData()`

    - #### exportClientData

          public void exportClientData(DSRequest requestProperties,
                                       RPCCallback callback)

      Exports this component's data with client-side formatters applied, so is suitable for direct display to users. See `ListGrid.exportClientData()` for details of the general requirements and restrictions when exporting client data.

      The following notes apply when exporting client data from TreeGrids:

      - Export only works correctly if you specify `fields`; if you allow it to generate a `default field`, nothing will be exported
      - Only visible nodes are exported; if you close a node, its children are not exported even if they are loaded and known to the client
      - Tree nodes are exported as a flat list, in the same order they are displayed in the TreeGrid

      If your TreeGrid has custom formatters, formatted values will be exported by default, with HTML normalized to text where possible. Since some levels of HTML normalizing aren't possible, this may result in missing or incorrect export values. In this case, you have two possible approaches:

      - Set `exportRawValues` on the field. This will export the raw underlying value of the field; your formatter will not be called
      - Have your formatter call `isExportingClientData()` and perform whatever alternative formatting you require if that method returns true
      Overrides:
        `exportClientData` in class `ListGrid`
      Parameters:
        `requestProperties` - Request properties for the export. Note that specifying `exportData` on the request properties allows the developer to pass in an explicit data set to export.
        `callback` - Optional callback. If you specify `exportToClient`: false in the request properties, this callback will fire after export completes. Otherwise the callback will fire right before the download request is made to the server.
      See Also:
        `ListGrid.exportClientData()`

    - #### addFolderClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addFolderClickHandler(FolderClickHandler handler)

      Add a folderClick handler.

      This method is called when a folder record is clicked on.

      Specified by:
        `addFolderClickHandler` in interface `HasFolderClickHandlers`
      Parameters:
        `handler` - the folderClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addFolderClosedHandler

          public com.google.gwt.event.shared.HandlerRegistration addFolderClosedHandler(FolderClosedHandler handler)

      Add a folderClosed handler.

      This method is called when a folder is closed either via the user manipulating the expand/collapse control in the UI or via `TreeGrid.closeFolder()`. You can return `false` to cancel the close.

      Specified by:
        `addFolderClosedHandler` in interface `HasFolderClosedHandlers`
      Parameters:
        `handler` - the folderClosed handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addFolderContextClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addFolderContextClickHandler(FolderContextClickHandler handler)

      Add a folderContextClick handler.

      This method is called when a context click occurs on a folder record.

      Specified by:
        `addFolderContextClickHandler` in interface `HasFolderContextClickHandlers`
      Parameters:
        `handler` - the folderContextClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addFolderOpenedHandler

          public com.google.gwt.event.shared.HandlerRegistration addFolderOpenedHandler(FolderOpenedHandler handler)

      Add a folderOpened handler.

      This method is called when a folder is opened either via the user manipulating the expand/collapse control in the UI or via `TreeGrid.openFolder()`. You can return `false` to cancel the open.

      Specified by:
        `addFolderOpenedHandler` in interface `HasFolderOpenedHandlers`
      Parameters:
        `handler` - the folderOpened handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### getDraggedNodeLocators

          public NodeLocator[] getDraggedNodeLocators(TreeGrid source)

      NOTE: Applicable only to `multi-link trees`; if called on a regular `TreeGrid`, returns an empty array.

      During a drag-and-drop interaction, this method returns the set of node occurrences being dragged out of the component, wrapped inside `NodeLocator`s. In the default implementation, this is the list of currently selected node occurrences

      Parameters:
        `source` - source grid from which the records will be transferred
      Returns:
        Array of `NodeLocator`s unambiguously identifying the node occurrences that are currently selected

    - #### getEventRow

          public int getEventRow()

      Returns the row number of the provided Y-coordinate, or the most recent mouse event if a Y-coordinate is not provided.
      Overrides:
        `getEventRow` in class `ListGrid`
      Returns:
        row number, or -2 if beyond last drawn row

    - #### getEventRow

          public int getEventRow(java.lang.Integer y)

      Returns the row number of the provided Y-coordinate, or the most recent mouse event if a Y-coordinate is not provided.
      Overrides:
        `getEventRow` in class `ListGrid`
      Parameters:
        `y` - Y-coordinate relative to the top edge of the content to obtain the row number for. If not provided, then `Canvas.getOffsetY()` will be used.
      Returns:
        row number, or -2 if beyond last drawn row

    - #### getOpenIcon

          public java.lang.String getOpenIcon(TreeNode node)

      Get the appropriate open/close opener icon for a node. Returns null if `showOpener` is set to false.
      Parameters:
        `node` - tree node in question
      Returns:
        URL for the icon to show the node's open state. See `URL`

    - #### getOpenState

          public java.lang.String getOpenState()

      Returns a snapshot of the current open state of this grid's data as a `TreeGridOpenState` object.
      This object can be passed to `setOpenState()` to open the same set of folders within the treeGrid's data (assuming the nodes are still present in the data).
      Returns:
        current open state for the grid. See `TreeGridOpenState`
      See Also:
        `setOpenState(java.lang.String)`

    - #### getSelectedPaths

          public java.lang.String getSelectedPaths()

      Returns a snapshot of the current selection within this treeGrid as a `ListGridSelectedState` object.
      This object can be passed to `setSelectedPaths()` to reset this grid's selection the current state (assuming the same data is present in the grid).
      Returns:
        current state of this grid's selection. See `ListGridSelectedState`
      See Also:
        `setSelectedPaths(java.lang.String)`

    - #### groupBy

          public void groupBy()

      Not applicable to TreeGrids, as the `data` already represents a tree.
      See Also:
        `getGroupByField()`

    - #### isExportingClientData

          public boolean isExportingClientData()

      Returns true if this component is currently `exporting client data`. This method can be called from custom cell formatters if you need to return a different formatted value for an export than for a live TreeGrid
      Overrides:
        `isExportingClientData` in class `ListGrid`
      Returns:
        returns true if this component is currently exporting client data
      See Also:
        `exportClientData()`

    - #### isOverExtraIcon

          public java.lang.Boolean isOverExtraIcon()

      Returns true if the last event occurred over `extra icon` for the current node.

      Returns false if the event did not occur over an extraIcon, or if no extraIcon is showing for the node in question.

      Returns:
        true if the user clicked the extra icon

    - #### isOverOpenArea

          public java.lang.Boolean isOverOpenArea()

      Returns true if the last event occurred over the indented area or over the open / close icon of a folder node in this TreeGrid. Returns false if the event did not occur over a folder node.
      Returns:
        true if the user clicked the open icon

    - #### addLeafClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addLeafClickHandler(LeafClickHandler handler)

      Add a leafClick handler.

      This method is called when a leaf record is clicked on.

      Specified by:
        `addLeafClickHandler` in interface `HasLeafClickHandlers`
      Parameters:
        `handler` - the leafClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addLeafContextClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addLeafContextClickHandler(LeafContextClickHandler handler)

      Add a leafContextClick handler.

      This method is called when a context click occurs on a leaf record.

      Specified by:
        `addLeafContextClickHandler` in interface `HasLeafContextClickHandlers`
      Parameters:
        `handler` - the leafContextClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### loadAllRecords

          public java.lang.Boolean loadAllRecords()

      This method is not currently supported for this grid-type. See `ListGrid.loadAllRecords()` for more information.
      Overrides:
        `loadAllRecords` in class `ListGrid`
      Returns:
        true if a fetch was made or was not needed - false otherwise

    - #### loadAllRecords

          public java.lang.Boolean loadAllRecords(java.lang.Integer maxRecords)

      Overrides:
        `loadAllRecords` in class `ListGrid`
      See Also:
        `loadAllRecords()`

    - #### loadAllRecords

          public java.lang.Boolean loadAllRecords(java.lang.Integer maxRecords,
                                                  DSCallback callback)

      This method is not currently supported for this grid-type. See `ListGrid.loadAllRecords()` for more information.
      Overrides:
        `loadAllRecords` in class `ListGrid`
      Parameters:
        `maxRecords` - optional maximum record count - if passed, no fetch takes place if maxRecords is below the known length of the data
        `callback` - callback to fire if a fetch is issued - if all data was already loaded, the callback is fired with no parameters
      Returns:
        true if a fetch was made or was not needed - false otherwise

    - #### addNodeClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addNodeClickHandler(NodeClickHandler handler)

      Add a nodeClick handler.

      This method is called when a leaf or folder record is clicked on. Note that if you set up a callback for `nodeClick()` and e.g. `TreeGrid.leafClick()`, then both will fire (in that order) if a leaf is clicked on.

      Specified by:
        `addNodeClickHandler` in interface `HasNodeClickHandlers`
      Parameters:
        `handler` - the nodeClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addNodeContextClickHandler

          public com.google.gwt.event.shared.HandlerRegistration addNodeContextClickHandler(NodeContextClickHandler handler)

      Add a nodeContextClick handler.

      This method is called when a context click occurs on a leaf or folder record. Note that if you set up a callback for `nodeContextClick()` and e.g. `TreeGrid.leafContextClick()`, then both will fire (in that order) if a leaf is contextclicked - unless `nodeContextClick()` returns false, in which case no further contextClick callbacks will be called.

      Specified by:
        `addNodeContextClickHandler` in interface `HasNodeContextClickHandlers`
      Parameters:
        `handler` - the nodeContextClick handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### addFolderDropHandler

          public com.google.gwt.event.shared.HandlerRegistration addFolderDropHandler(FolderDropHandler handler)

      Add a folderDrop handler.

      Process a drop of one or more nodes on a TreeGrid folder.
      Note: See `TreeGridDrop` for an overview of TreeGrid drag and drop behavior. Add logic in your drop handler to perform custom drop behaviors; to suppress the built-in behavior described below, use `event.cancel()`

      The default behavior is to simply delegate to the `TreeGrid.transferNodes()` method; thus, the correct way to perform a programmatic folder drop, with all the built-in behaviors described below, is to call `transferNodes()`

      If this is a self-drop, nodes are simply reordered. An "update" operation will be submitted to update the `parentId` field of the moved node(s).

      For a drop from another widget, `TreeGrid.transferDragData()` is called which, depending on the `dragDataAction` specified on the source widget, may either remove the source nodes from the original list (`dragDataAction:"move"`) or just provide a copy to this tree (`dragDataAction:"copy"`).

      In either case the new row(s) appear in the `folder` at the `index` specified by the arguments of the same name.

      If this grid is databound, the new nodes will be added to the dataset by calling `DataSource.addData()`. Further, if the new nodes were dragged from another databound component, and `addDropValues` is true, `getDropValues` will be called for every item being dropped.

      As a special case, if the `sourceWidget` is also databound and a `foreignKey` relationship is declared from the `sourceWidget`'s DataSource to this TreeGrid's DataSource, the interaction will be treated as a "drag recategorization" use case such as files being placed in folders, employees being assigned to teams, etc. "update" DSRequests will be submitted that change the foreignKey field in the dropped records to point to the tree folder that was the target of the drop. In this case no change will be made to the Tree data as such, only to the dropped records.

      For multi-record drops, Queuing is automatically used to combine all DSRequests into a single HTTP Request (see QuickStart Guide, Server Framework chapter). This allows the server to persist all changes caused by the drop in a single transaction (and this is automatically done when using the built-in server DataSources with Power Edition and above).

      If these default persistence behaviors are undesirable, use `event.cancel()`, then implement your own behavior, typically by using grid.updateData() or addData() to add new records.

      NOTE: the records you receive in this event are the actual Records from the source component. Use `DataSource.copyRecords()` to create a copy before modifying the records or using them with updateData() or addData().

      Specified by:
        `addFolderDropHandler` in interface `HasFolderDropHandlers`
      Parameters:
        `handler` - the folderDrop handler
      Returns:
        `HandlerRegistration` used to remove this handler

    - #### openFolder

          public void openFolder(TreeNode node)

      Opens a folder.

      Executed when a folder node receives a 'doubleClick' event.

      See the ListGrid Widget Class for inherited recordClick and recordDoubleClick events.

      Parameters:
        `node` - node to open
      See Also:
        `closeFolder(com.smartgwt.client.widgets.tree.TreeNode)`, `FolderOpenedEvent`, `ListGrid`

    - #### openFolder

          public void openFolder(TreeNode node,
                                 java.lang.String path)

      Opens a folder.

      Executed when a folder node receives a 'doubleClick' event.

      See the ListGrid Widget Class for inherited recordClick and recordDoubleClick events.

      Parameters:
        `node` - node to open
        `path` - optional parameter containing the full path to the node. This is essential context for a `multi-link tree`, but is not required in ordinary trees
      See Also:
        `closeFolder(com.smartgwt.client.widgets.tree.TreeNode)`, `FolderOpenedEvent`, `ListGrid`

    - #### recordDoubleClick

          public boolean recordDoubleClick(TreeGrid viewer,
                                           TreeNode record,
                                           int recordNum,
                                           TreeGridField field,
                                           int fieldNum,
                                           java.util.Map value,
                                           java.util.Map rawValue)

      Handle a doubleClick on a tree node - override of ListGrid stringMethod of same name. If the node is a folder, this implementation calls `toggleFolder()` on it. If the node is a leaf, calls `openLeaf()` on it.
      Parameters:
        `viewer` - the treeGrid that contains doubleclick event
        `record` - the record that was double-clicked
        `recordNum` - number of the record clicked on in the current set of displayed records (starts with 0)
        `field` - the field that was clicked on (field definition)
        `fieldNum` - number of the field clicked on in the treeGrid.fields array
        `value` - value of the cell (after valueMap, etc. applied)
        `rawValue` - raw value of the cell (before valueMap, etc applied)
      Returns:
        false to stop event bubbling
      See Also:
        `RecordDoubleClickEvent`

    - #### setOpenState

          public void setOpenState(java.lang.String openState)

      Reset this set of open folders within this grid's data to match the `TreeGridOpenState` object passed in.
      Used to restore previous state retrieved from the grid by a call to `getOpenState()`.
      Parameters:
        `openState` - Object describing the desired set of open folders. See `TreeGridOpenState`
      See Also:
        `getOpenState()`, `TreeGridOpenState`

    - #### setSelectedPaths

          public void setSelectedPaths(java.lang.String selectedPaths)

      Reset this grid's selection to match the `ListGridSelectedState` object passed in.
      Used to restore previous state retrieved from the grid by a call to `getSelectedPaths()`.
      Parameters:
        `selectedPaths` - Object describing the desired selection state of the grid. See `ListGridSelectedState`
      See Also:
        `getSelectedPaths()`, `ListGridSelectedState`

    - #### toggleFolder

          public void toggleFolder(TreeNode node)

      Opens the folder specified by node if it's closed, and closes it if it's open. TreeGrid will redraw if there's a change in the folder's open/closed state.
      Parameters:
        `node` - the node in question, or the the node's ID, or a NodeLocator object

    - #### toggleFolder

          public void toggleFolder(java.lang.String node)

      Opens the folder specified by node if it's closed, and closes it if it's open. TreeGrid will redraw if there's a change in the folder's open/closed state.
      Parameters:
        `node` - the node in question, or the the node's ID, or a NodeLocator object

    - #### toggleFolder

          public void toggleFolder(java.lang.Integer node)

      Opens the folder specified by node if it's closed, and closes it if it's open. TreeGrid will redraw if there's a change in the folder's open/closed state.
      Parameters:
        `node` - the node in question, or the the node's ID, or a NodeLocator object

    - #### toggleFolder

          public void toggleFolder(NodeLocator node)

      Opens the folder specified by node if it's closed, and closes it if it's open. TreeGrid will redraw if there's a change in the folder's open/closed state.
      Parameters:
        `node` - the node in question, or the the node's ID, or a NodeLocator object

    - #### setDefaultProperties

          public static void setDefaultProperties(TreeGrid treeGridProperties)

      Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

      Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

      Parameters:
        `treeGridProperties` - properties that should be used as new defaults when instances of this class are created
      See Also:
        `SGWTProperties`

    - #### onInit

          protected void onInit()

      Overrides:
        `onInit` in class `ListGrid`

    - #### startEditingNew

          public void startEditingNew()

      This inherited `ListGrid API` is not supported by the TreeGrid since adding a new tree node arbitrarily at the end of the tree is usually not useful. Instead, to add a new tree node and begin editing it, use either of these two strategies:
      1. add a new node to the client-side Tree model via `Tree.add`, then use `startEditing` to begin editing this node. Note that if using a DataSource, when the node is saved, an "update" operation will be used since adding a node directly to the client-side `ResultTree` effectively means a new node has been added server side.
      2. use `DataSource.addData` to immediately save a new node. Automatic cache sync by the `ResultTree` will cause the node to be integrated into the tree. When the callback to addData() fires, locate the new node by matching primary key and call `startEditing` to begin editing it.
      Overrides:
        `startEditingNew` in class `ListGrid`
      See Also:
        `ListGrid.startEditing()`, `Grid Editing`

    - #### getNodeTitle

          protected java.lang.String getNodeTitle(Record node,
                                                  int recordNum,
                                                  ListGridField field)

      Returns the title to show for a node in the tree column. If the field specifies the `name` attribute, then the current `node[field.name]` is returned. Otherwise, the result of calling `Tree.getTitle(com.smartgwt.client.widgets.tree.TreeNode)` on the node is called.
      You can override this method to return a custom title for node titles in the tree column. Note : This is an override point
      Parameters:
        `node` - The node for which the title is being requested.
        `recordNum` - The index of the node.
        `field` - The field for which the title is being requested.
      Returns:
        the title to display.

    - #### getIcon

          protected java.lang.String getIcon(Record node,
                                             boolean defaultState)

      Get the appropriate icon for a node.

      By default icons are derived from `folderIcon` and `nodeIcon`. Custom icons for individual nodes can be overridden by setting the `customIconProperty` on a node.

      If you want to suppress icons altogether, provide an override of this method that simply returns null.

      Note that the full icon URL will be derived by applying `Canvas.getImgURL(java.lang.String)` to the value returned from this method.

      Note: This is an override point

      Parameters:
        `node` - tree node in question
        `defaultState` - defaultState
      Returns:
        URL for icon to show for this node

    - #### setCustomNodeIcon

          public void setCustomNodeIcon(Record node,
                                        java.lang.String icon)

      Set the icon for a particular TreeNode to a specified URL
      Parameters:
        `node` - the tree node
        `icon` - path to the resource

    - #### getExtraIcon

          public java.lang.String getExtraIcon(TreeNode node)

      Get an additional icon to show between the open icon and folder/node icon for a particular node.

      NOTE: If `selectionAppearance` is `"checkbox"`, this method will NOT be called. Extra icons cannot be shown for that appearance.

      Note: This is an override point

      Parameters:
        `node` - tree node in question
      Returns:
        URL for the extra icon (null if none required). See `TreeNode`

    - #### getDropFolder

          public TreeNode getDropFolder()

      When the user is dragging a droppable element over this grid, this method returns the folder which would contain the item if dropped. This is the current drop node if the user is hovering over a folder, or the node's parent if the user is hovering over a leaf.
      Returns:
        target drop folder

    - #### setData

          public void setData(Tree data)

      A `Tree` object containing of nested `TreeNode`s to display as rows in this TreeGrid. The `data` property will typically not be explicitly specified for databound TreeGrids, where the data is returned from the server via databound component methods such as `fetchData()`
      If this method is called after the component has been drawn/initialized: Set the `Tree` object this TreeGrid will view and manipulate.
      Parameters:
        `data` - Tree to show. Default value is null

    - #### getData

          public Tree getData()

      A `Tree` object containing of nested `TreeNode`s to display as rows in this TreeGrid. The `data` property will typically not be explicitly specified for databound TreeGrids, where the data is returned from the server via databound component methods such as `fetchData()`
      Returns:
        Tree

    - #### getTree

          public Tree getTree()

      Synonym for `getData()`
      Returns:
        the underlying tree

    - #### setDataProperties

          public void setDataProperties(Tree resultTreeProperties)

      For databound TreeGrids, this attribute can be used to customize the `com.smartgwt.client.tree.ResultTree` object created for this grid when data is fetched.

      Note : This is an advanced setting

      Class overrides for `ResultTree` cannot be applied to the grid using this API. Instead, consider setting the `resultTreeClass` property in the file defining your `DataSource`. Your class must be `registered for reflection`.
      Parameters:
        `resultTreeProperties` - the data properties
      See Also:
        `Databinding overview and related methods`

    - #### getRecords

          public ListGridRecord[] getRecords()

      Return the tree nodes as a flat array of ListGridRecords. Internally this method retrieves all the nodes via `Tree.getOpenList(TreeNode)`. You should favor working with the underlying `Tree` data structure when working with a TreeGrid.
      Overrides:
        `getRecords` in class `ListGrid`
      Returns:
        the tree nodes as ListGridRecord's

    - #### setInitialData

          public void setInitialData(TreeNode[] initialData)
                              throws java.lang.IllegalStateException

      You can specify the initial set of data for a databound TreeGrid using this property. The value of this attribute should be a list of `parentId`-linked `TreeNode`s in a format equivalent to that documented on `Tree.data` or, for TreeGrids with `dataFetchMode` set to `"paged"`, on `ResultTree.data`.

      If you create a standalone `Tree` or `ResultTree` as the TreeGrid's `data` then you may equivalently specify this initial set of tree nodes in that tree's `data` property.

      Note : This is an advanced setting

      Parameters:
        `initialData` - New initialData value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `TreeNode`, `Tree.setData(com.smartgwt.client.widgets.tree.TreeNode[])`, `ResultTree.setData(com.smartgwt.client.widgets.tree.TreeNode...)`, Initial Data & Load on Demand Example

    - #### fetchData

          public void fetchData()

      Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.

      This method will create a `com.smartgwt.client.data.ResultTree` to manage tree data, which will subsequently be available as `treeGrid.data`. DataSource records returned by the "fetch" operation are linked into a tree structure according to `primaryKey` and `foreignKey` declarations on DataSource fields. See the `TreeDataBinding` topic for complete details.

      By default, the created ResultTree will use folder-by-folder load on demand, asking the server for the children of each folder as the user opens it.

      The `com.smartgwt.client.data.ResultTree` created by `fetchData()` can be customized by setting `dataProperties` to an Object containing properties and methods to apply to the created ResultTree. For example, the property that determines whether a node is a folder (`isFolderProperty`) can be customized, or level-by-level loading can be disabled via `loadDataOnDemand`.

      The callback passed to `fetchData` will fire once, the first time that data is loaded from the server. If using folder-by-folder load on demand, use the `com.smartgwt.client.data.ResultTree#dataArrived` notification to be notified each time new nodes are loaded.

      Note that, if criteria are passed to `fetchData()`, they will be passed every time a new "fetch" operation is sent to the server. This allows you to retrieve multiple different tree structures from the same DataSource. However note that the server is expected to always respond with an intact tree - returned nodes which do not have parents are dropped from the dataset and not displayed.

      Specified by:
        `fetchData` in interface `DataBoundComponent`
      Overrides:
        `fetchData` in class `ListGrid`

    - #### fetchData

          public void fetchData(Criteria criteria)

      Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.

      This method will create a `com.smartgwt.client.data.ResultTree` to manage tree data, which will subsequently be available as `treeGrid.data`. DataSource records returned by the "fetch" operation are linked into a tree structure according to `primaryKey` and `foreignKey` declarations on DataSource fields. See the `TreeDataBinding` topic for complete details.

      By default, the created ResultTree will use folder-by-folder load on demand, asking the server for the children of each folder as the user opens it.

      The `com.smartgwt.client.data.ResultTree` created by `fetchData()` can be customized by setting `dataProperties` to an Object containing properties and methods to apply to the created ResultTree. For example, the property that determines whether a node is a folder (`isFolderProperty`) can be customized, or level-by-level loading can be disabled via `loadDataOnDemand`.

      The callback passed to `fetchData` will fire once, the first time that data is loaded from the server. If using folder-by-folder load on demand, use the `com.smartgwt.client.data.ResultTree#dataArrived` notification to be notified each time new nodes are loaded.

      Note that, if criteria are passed to `fetchData()`, they will be passed every time a new "fetch" operation is sent to the server. This allows you to retrieve multiple different tree structures from the same DataSource. However note that the server is expected to always respond with an intact tree - returned nodes which do not have parents are dropped from the dataset and not displayed.

      Specified by:
        `fetchData` in interface `DataBoundComponent`
      Overrides:
        `fetchData` in class `ListGrid`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`

    - #### fetchData

          public void fetchData(Criteria criteria,
                                DSCallback callback)

      Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.

      This method will create a `com.smartgwt.client.data.ResultTree` to manage tree data, which will subsequently be available as `treeGrid.data`. DataSource records returned by the "fetch" operation are linked into a tree structure according to `primaryKey` and `foreignKey` declarations on DataSource fields. See the `TreeDataBinding` topic for complete details.

      By default, the created ResultTree will use folder-by-folder load on demand, asking the server for the children of each folder as the user opens it.

      The `com.smartgwt.client.data.ResultTree` created by `fetchData()` can be customized by setting `dataProperties` to an Object containing properties and methods to apply to the created ResultTree. For example, the property that determines whether a node is a folder (`isFolderProperty`) can be customized, or level-by-level loading can be disabled via `loadDataOnDemand`.

      The callback passed to `fetchData` will fire once, the first time that data is loaded from the server. If using folder-by-folder load on demand, use the `com.smartgwt.client.data.ResultTree#dataArrived` notification to be notified each time new nodes are loaded.

      Note that, if criteria are passed to `fetchData()`, they will be passed every time a new "fetch" operation is sent to the server. This allows you to retrieve multiple different tree structures from the same DataSource. However note that the server is expected to always respond with an intact tree - returned nodes which do not have parents are dropped from the dataset and not displayed.

      Specified by:
        `fetchData` in interface `DataBoundComponent`
      Overrides:
        `fetchData` in class `ListGrid`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required

    - #### fetchData

          public void fetchData(Criteria criteria,
                                DSCallback callback,
                                DSRequest requestProperties)

      Uses a "fetch" operation on the current `DataSource` to retrieve data that matches the provided criteria, and displays the matching data in this component as a tree.

      This method will create a `com.smartgwt.client.data.ResultTree` to manage tree data, which will subsequently be available as `treeGrid.data`. DataSource records returned by the "fetch" operation are linked into a tree structure according to `primaryKey` and `foreignKey` declarations on DataSource fields. See the `TreeDataBinding` topic for complete details.

      By default, the created ResultTree will use folder-by-folder load on demand, asking the server for the children of each folder as the user opens it.

      The `com.smartgwt.client.data.ResultTree` created by `fetchData()` can be customized by setting `dataProperties` to an Object containing properties and methods to apply to the created ResultTree. For example, the property that determines whether a node is a folder (`isFolderProperty`) can be customized, or level-by-level loading can be disabled via `loadDataOnDemand`.

      The callback passed to `fetchData` will fire once, the first time that data is loaded from the server. If using folder-by-folder load on demand, use the `com.smartgwt.client.data.ResultTree#dataArrived` notification to be notified each time new nodes are loaded.

      Note that, if criteria are passed to `fetchData()`, they will be passed every time a new "fetch" operation is sent to the server. This allows you to retrieve multiple different tree structures from the same DataSource. However note that the server is expected to always respond with an intact tree - returned nodes which do not have parents are dropped from the dataset and not displayed.

      Specified by:
        `fetchData` in interface `DataBoundComponent`
      Overrides:
        `fetchData` in class `ListGrid`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required
        `requestProperties` - additional properties to set on the DSRequest that will be issued

    - #### filterData

          public void filterData(Criteria criteria)

      Retrieves data that matches the provided criteria and displays the matching data in this component.

      This method behaves exactly like `fetchData()` except that `textMatchStyle` is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

      Specified by:
        `filterData` in interface `DataBoundComponent`
      Overrides:
        `filterData` in class `ListGrid`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`

    - #### filterData

          public void filterData(Criteria criteria,
                                 DSCallback callback)

      Retrieves data that matches the provided criteria and displays the matching data in this component.

      This method behaves exactly like `fetchData()` except that `textMatchStyle` is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

      Specified by:
        `filterData` in interface `DataBoundComponent`
      Overrides:
        `filterData` in class `ListGrid`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required; see `DataBoundComponent.fetchData()` for details

    - #### filterData

          public void filterData(Criteria criteria,
                                 DSCallback callback,
                                 DSRequest requestProperties)

      Retrieves data that matches the provided criteria and displays the matching data in this component.

      This method behaves exactly like `fetchData()` except that `textMatchStyle` is automatically set to "substring" so that String-valued fields are matched by case-insensitive substring comparison.

      Specified by:
        `filterData` in interface `DataBoundComponent`
      Overrides:
        `filterData` in class `ListGrid`
      Parameters:
        `criteria` - Search criteria. If a `DynamicForm` is passed in as this argument instead of a raw criteria object, will be derived by calling `DynamicForm.getValuesAsCriteria()`
        `callback` - callback to invoke when a fetch is complete. Fires only if server contact was required; see `DataBoundComponent.fetchData()` for details
        `requestProperties` - for databound components only - optional additional properties to set on the DSRequest that will be issued

    - #### getSelectedRecord

          public TreeNode getSelectedRecord()

      Return the first selected record in this component.
      This method is appropriate if ``selectionType`` is `"single"`, or if you only care about the first selected record in a multiple-record selection. To access all selected records, use ``ListGrid.getSelection()`` instead.
      Overrides:
        `getSelectedRecord` in class `ListGrid`
      Returns:
        first selected record, or null if nothing selected
      See Also:
        `Selection`, Databound remove Example

    - #### getRecord

          public TreeNode getRecord(int recordNum)

      Return the pointer to a particular record by record number. Synonym for `com.smartgwt.client.widgets.grid.ListGrid#getCellRecord`.
      Overrides:
        `getRecord` in class `ListGrid`
      Parameters:
        `recordNum` - row index of record to return.
      Returns:
        Record object for the row.
      See Also:
        `com.smartgwt.client.widgets.grid.ListGrid#getCellRecord`, `ListGrid.getEditedRecord(int)`

    - #### setTreeRootValue

          public void setTreeRootValue(java.lang.String treeRootValue)
                                throws java.lang.IllegalStateException

      For databound trees, use this attribute to supply a `DataSourceField.rootValue` for this component's generated data object.

      This property allows you to have a particular component navigate a tree starting from any given node as the root.

      Note : This is an advanced setting

      Parameters:
        `treeRootValue` - New treeRootValue value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Databinding overview and related methods`

    - #### setTreeRootValue

          public void setTreeRootValue(java.lang.Integer treeRootValue)
                                throws java.lang.IllegalStateException

      For databound trees, use this attribute to supply a `DataSourceField.rootValue` for this component's generated data object.

      This property allows you to have a particular component navigate a tree starting from any given node as the root.

      Note : This is an advanced setting

      Parameters:
        `treeRootValue` - New treeRootValue value. Default value is null
      Throws:
        `java.lang.IllegalStateException` - this property cannot be changed after the component has been created
      See Also:
        `Databinding overview and related methods`

    - #### getTreeRootValue

          public java.lang.String getTreeRootValue()

      For databound trees, use this attribute to supply a `DataSourceField.rootValue` for this component's generated data object.

      This property allows you to have a particular component navigate a tree starting from any given node as the root.

      Returns:
        Current treeRootValue value. Default value is null
      See Also:
        `Databinding overview and related methods`

    - #### getCellAlign

          public Alignment getCellAlign(ListGridRecord record,
                                        int rowNum,
                                        int colNum)

      Return the horizontal alignment for cell contents. Default implementation will always left-align the special `treeField` [or right-align if the page is in RTL mode] - otherwise will return `cellAlign` if specified, otherwise `align`.
      Parameters:
        `record` - this cell's record
        `rowNum` - row number for the cell
        `colNum` - column number of the cell
      Returns:
        Horizontal alignment of cell contents: 'right', 'center', or 'left'

    - #### setCellValueHoverFormatter

          public void setCellValueHoverFormatter(CellValueHoverFormatter formatter)

      Description copied from class: `ListGrid`
      Provide a custom implementation of `ListGrid.cellValueHoverHTML(ListGridRecord, int, int, String)`.

      The `CellValueHoverFormatter` should return the HTML to display in the hover canvas that is displayed by default if a registered `CellValueHoverHandler` does not cancel a `CellValueHoverEvent`. The formatter can return null or an empty string to cancel the hover.

      Overrides:
        `setCellValueHoverFormatter` in class `ListGrid`
      Parameters:
        `formatter` - the cell value hover formatter

    - #### willAcceptDrop

          public java.lang.Boolean willAcceptDrop()

      This method overrides `ListGrid.willAcceptDrop()` and works as follows:
      First, `ListGrid.willAcceptDrop()` (the superclass definition) is consulted. If it returns false, then this method returns false immediately.
      This handles the following cases:
      - reordering of records within this TreeGrid when `canReorderRecords` is true
      - accepting dropped records from another dragTarget when `canAcceptDroppedRecords` is true and the dragTarget gives us a valid set of records to drop into place.
      - disallowing drop over disabled nodes, or nodes with `canAcceptDrop:false`
      This method will also return false if the drop occurred over a leaf node whose immediate parent has `canAcceptDrop` set to `false`
      If `canReparentNodes` is true, and the user is dragging a node from one folder to another, this method will return true to allow the change of parent folder.
      Otherwise this method returns true. Note: This is an override point.
      Overrides:
        `willAcceptDrop` in class `ListGrid`
      Returns:
        true if this component will accept a drop of the dragData

    - #### transferNodes

          public void transferNodes(TreeNode[] nodes,
                                    TreeNode folder,
                                    java.lang.Integer index,
                                    Canvas sourceWidget,
                                    TransferNodesCallback callback)

      Transfer a list of `TreeNode`s from another component (does not have to be a databound component) into this TreeGrid.

      This method implements the automatic drag-copy and drag-move behavior and calling it is equivalent to completing a drag and drop of the nodes (the default folder drop behavior is simply to call `transferNodes()`, passing in the dropped nodes)

      Note that this method is asynchronous - it may need to perform server turnarounds to prevent duplicates in the target component's data. If you wish to be notified when the transfer process has completed, you can either pass a non-null callback to this method or add a `DropCompleteHandler` to this component.

      See also `transferSelectedData()`

      Parameters:
        `nodes` - Nodes to transfer to this component
        `folder` - The target folder (eg, of a drop interaction), for context
        `index` - (Insert point within the target folder data for the transferred nodes
        `sourceWidget` - The databound or non-databound component from which the nodes are to be transferred.
        `callback` - optional TransferNodesCallback to be fired when the transfer process has completed (pass null if your code does not need to be called back). The callback will be passed the list of nodes actually transferred to this component

    - #### addRecordDropHandler

          public com.google.gwt.event.shared.HandlerRegistration addRecordDropHandler(RecordDropHandler handler)
                                                                               throws java.lang.UnsupportedOperationException

      This ListGrid superclass event does not fire on a TreeGrid, use `addFolderDropHandler(com.smartgwt.client.widgets.tree.events.FolderDropHandler)` instead.
      Specified by:
        `addRecordDropHandler` in interface `HasRecordDropHandlers`
      Overrides:
        `addRecordDropHandler` in class `ListGrid`
      Parameters:
        `handler` - the onRecordDrop handler
      Returns:
        `HandlerRegistration` used to remove this handler
      Throws:
        `java.lang.UnsupportedOperationException`

    - #### setLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject setLogicalStructure(com.smartgwt.logicalstructure.widgets.tree.TreeGridLogicalStructure s)

      Setter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.

    - #### getLogicalStructure

          public com.smartgwt.logicalstructure.core.LogicalStructureObject getLogicalStructure()

      Getter implementing the `LogicalStructure` interface, which supports Eclipse's logical structure debugging facility.
      Specified by:
        `getLogicalStructure` in interface `LogicalStructure`
      Overrides:
        `getLogicalStructure` in class `ListGrid`