Home Reference Source
public class | source

FlexDataGridContainerBase

Extends:

react~React.ComponentEventDispatcherUIComponent → FlexDataGridContainerBase

FlexDataGridContainerBase is the base class for each of the containers of the grid. The Header, Footer, Pager and Filter Rows. The grid has the following containers:

  • leftLockedHeader (com.flexicious.nestedtreedatagrid.cells.LockedContent) - The container for the left locked filter and header cells. This is an instance of the LockedContent class, which basically is an extended UIComponent that manages the filter and footer cell visibility, heights, and the y positions.
  • leftLockedContent (com.flexicious.nestedtreedatagrid.cells.ElasticContainer) - The container for the left locked data cells. This is an instance of the ElasticContainer class, which basically attaches to the owner component (which is the bodyContainer) and scrolls vertically along with it. The horizontal scroll of this component is set to off)
  • leftLockedFooter (com.flexicious.nestedtreedatagrid.cells.LockedContent)
  • filterContainer (com.flexicious.nestedtreedatagrid.cells.FlexDataGridChromeContainer)
  • headerContainer (com.flexicious.nestedtreedatagrid.cells.FlexDataGridChromeContainer)
  • bodyContainer(com.flexicious.nestedtreedatagrid.cells. FlexDataGridBodyContainer)
  • footerContainer (com.flexicious.nestedtreedatagrid.cells.FlexDataGridChromeContainer)
  • rightLockedHeader (com.flexicious.nestedtreedatagrid.cells.LockedContent)
  • rightLockedContent (com.flexicious.nestedtreedatagrid.cells.ElasticContainer)
  • rightLockedFooter (com.flexicious.nestedtreedatagrid.cells.LockedContent)
  • pagerContainer (com.flexicious.nestedtreedatagrid.cells.FlexDataGridChromeContainer)

The filter, header, footer and pager containers are of type FlexDataGridChromeContainer that inherit from FlexDataGridContainerBase.

Constructor Summary

Public Constructor
public

constructor(grid: *)

Member Summary

Public Members
public

Once we are through calculating rowspans and colspans, we go through this array, popping cells and hiding cells that are covered by the increased col and row spans of the cells in this array.

public

When a column is being dragged and dropped into a different location, this variable holds the cell that is being dragged.

public
public
public

When a column is being resized, this variable holds the cell that initiated the resize operation.

public
public
public

Flag to turn on horizontal scroll recycle.

public

grid: *

The grid that we belong to

public

itemClickTimer: flexiciousNmsp.Timer

Timer to prevent double click from causing two item clicks.

public

Duration, in milliseconds to wait until dispatching a new ITEM_CLICK event.

public

Last selected Row Index

public
public

Collection of RowInfo objects currently being displayed.

public

startX: *

public

startY: *

public

Method Summary

Public Methods
public

addCell(component: *, row: *, existingComponent: *): *

public

Based upon the type of the cell, adds various event listeners to them to respond to mouse overs, clicks, double clicks, mouse outs, keyboard input, etc.

public

addPadding(nestLevel: number, row: flexiciousNmsp.RowInfo, paddingHeight: number, level: flexiciousNmsp.FlexDataGridColumnLevel, forceRightLock: boolean, scrollPad: boolean, width: number): *

public

addRow(ht: *, scrollDown: *, rowPositionInfo: *): *

public

addToSection(cell: *, row: *, lockDir: *, existingComponent: *): *

public

beginEdit(cell: *)

Starts the Edit Session.

public

buildFilter(iSelectFilterControl: Object, column: flexiciousNmsp.FlexDataGridColumn, parentObject: Object, flatValues: Object)

public

Given the mouse event, figures out which cell is the drop target.

public

cancelEdit(event: *)

Cancels the current running edit.

public

checkRowSpanColSpan(retCell: *, thisCell: *, direction: *, dataOnly: *, editableOnly: *, scrollIfNecessary: *, hoverableOnly: *): *

public
public
public
public
public
public

createComponents(level: flexiciousNmsp.FlexDataGridColumnLevel, currentScroll: number)

public

createFilter(level: flexiciousNmsp.FlexDataGridColumnLevel, parentObject: Object): AdvancedFilter

public

dispatchPageChange(event: *)

public
public

emulateClick(cell: *)

Used by accesibility

public

endEdit(editor: *)

Dispatches ITEM_EDIT_END.

public

filterPageSort(flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, parentObj: Object, applyFilter: boolean, applyPaging: boolean, applySort: boolean, pages: Array, updatePager: boolean): Object

public

findLoadingInfo(item: *, level: *, useSelectedKeyField: *): *

In lazy loaded grids, gets the loaded info of the provided object.

public

Gets the Rows Collection

public
public
public

getCellForRowColumn(dataObject: *, col: *, includeExp: *): *

Given a column and a data object, returns the cell associated with the data object.

public

getCellFromMouseEventTarget(target: *): flexiciousNmsp.FlexDataGridCell

public

getCellHeight(cell: flexiciousNmsp.FlexDataGridDataCell): number

public

getCellInDirection(thisCell: *, direction: *, dataOnly: *, editableOnly: *, scrollIfNecessary: *, hoverableOnly: *): *

Gets the cell in the specified direction of the provided cell

public

getCellWidth(cell: flexiciousNmsp.FlexDataGridDataCell): number

public

Used by accesibility

public

getChildId(arr: Array, cell: flexiciousNmsp.FlexDataGridDataCell): number

Used by accesibility

public

Used by accesibility

public
public

getColSpan(cell: flexiciousNmsp.FlexDataGridDataCell): number

Given a cell, gets the colspan associated with that cell by calling the this.grid.colSpanFunction.

public

The IFlexDataGridCell under edit currently.

public

The editor being used as the current component to edit.

public

The IFlexDataGridCell under edit currently.

public

getEditor(): *

The editor being used as the current component to edit.

public

getExistingCell(existingComponents: Array, rendererFactory: *, col: *): *

public

getFirstAvailableCell(cell: *, up: *): *

Gets the first cell of the first column.

public

getFirstHoverableCell(row: *, dataOnly: *, editableOnly: *): *

public

getInEdit(): *

Returns true if grid is in edit mode

public

Row positions

public
public

getRowSpan(cell: flexiciousNmsp.FlexDataGridDataCell): number

Given a cell, gets the rowSpan associated with that cell by calling the this.grid.rowSpanFunction.

public
public
public

getSelectedIds(bodyStart: *): Array

Used by accesibility

public
public
public
public

handleArrowKey(cell: *, keyCode: *, triggerEvent: *): boolean

Handles cell key up.

public

handleCellKeyUp(cell: *, keyCode: *, triggerEvent: *)

Handles cell key up.

public

handleDoubleClick(cell: *, triggerEvent: *)

Handles the Double Click.

public

handleMouseClick(cell: *, triggerEvent: *)

Handles the Mouse click.

public

handleMouseOut(cell: *, triggerEvent: *)

Handles mouse out.

public

handleMouseOver(cell: *, triggerEvent: *)

Handles mouse over for data cells.

public

handleSpaceBar(cell: *, triggerEvent: *)

public

Once the snapToColumnWidths finishes, the cellsWithColSpanOrRowSpan array contains all cells that have a row or col span.

public

initializeFilterRenderer(filterRenderer: *, filterColumn: *, item: *, flatDp: *, level: *)

Given a filter control, initializes it from the provided column

public

initializeRendererFromColumn(filterRenderer: *, filterColumn: *)

public

Calls invalidateBackground() on each of the cells.

public
public

Given a cell, returns true if the cell is "hidden" by another cell that has a col span which will cover this cell.

public

Given a cell, returns true if the cell is "hidden" by another cell that has a row span which will cover this cell.

public
public

isHoverableCell(cell: *): *

Can this cell accept hover.

public

Returns true if the passed in numbers are in the visible ViewPort

public

Abstract

public

kill()

public
public

onCellDoubleClick(event: *)

public
public

onCellKeyUp(event: *)

public

onCellMouseClick(event: *)

Handles mouse click.

public

onCellMouseOut(event: *)

public

onCellMouseOver(event: *)

Handles Cell Mouse Over.

public

onEditorKeyDown(event: *)

Handles the KeyDown on the Editor Component.

public
public
public

onGridMouseMove(event: *)

public

onHeaderCellClicked(cell: flexiciousNmsp.FlexDataGridDataCell, triggerEvent: *, isMsc: boolean)

public
public
public
public

onItemClickTimer(event: *)

public

onSelectAllChanged(event: *)

public

onStageResize(event: *)

public
public

placeSortIcon(event: *)

public

populateValue(event: *): boolean

Applies the value from the editor back to the model object.

public

processColumnGroupCell(level: flexiciousNmsp.FlexDataGridColumnLevel, rendererFactory: *, row: flexiciousNmsp.RowInfo, item: object, rowHeight: number, columnGroup: flexiciousNmsp.FlexDataGridColumnGroup, existingComponents: Array): *

public

processFilterCell(level: flexiciousNmsp.FlexDataGridColumnLevel, cols: Array, colIndex: number, row: flexiciousNmsp.RowInfo, item: object, flatDp: object, existingComponents: Array)

public

processFooterCell(level: flexiciousNmsp.FlexDataGridColumnLevel, cols: Array, colIndex: number, row: flexiciousNmsp.RowInfo, item: object, existingComponents: Array)

public

processHeaderCell(level: flexiciousNmsp.FlexDataGridColumnLevel, cols: Array, colIndex: number, row: flexiciousNmsp.RowInfo, item: object, rowHeight: number, existingComponents: Array)

public

processHeaderLevel(level: flexiciousNmsp.FlexDataGridColumnLevel, rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: boolean, item: object, chromeLevel: number, existingRow: flexiciousNmsp.RowInfo, existingComponents: Array): *

public

processRendererLevel(rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: boolean): flexiciousNmsp.RowIndo

public

processRowPositionInfo(rowPositionInfo: *, scrollDown: *, existingRow: *, existingComponents: *): *

public

reDraw()

Calls removeAllComponents, createComponents, validateNow, and snapToColumnWidths

public

recycleH(level: flexiciousNmsp.FlexDataGridColumnLevel, scrollRight: boolean)

public

Re-evaluates all the visible cell contents.

public
public

End the edit, if active, call removeComponent on each of the rows, and remove all the children.

public

removeComponent(comp: *)

Removes the component from its parents hierarchy, and calls destroy method, if the component is a IFlexDataGridCell object Hangs on to the component in the cache for further reuse.

public

Iterates through all rows and calls removeComponent on each of the cells.

public
public

rootPageChange(event: *)

public

scrollToExistingRow(vsp: *, scrollDown: *)

Abstract

public
public

Sets the current highlight cell to the first available cell.

public

setEditCell(val: *)

public

setEditor(val: *)

public

snapRowToColumnWidth(row: flexiciousNmsp.RowInfo)

public
public

sortByCell(cell: flexiciousNmsp.FlexDataGridDataCell)

public

sortByColumn(col: *)

public
public

storeSort(item: object, column: flexiciousNmsp.FlexDataGridColumn, ascending: boolean)

public

updateDisplayList(unscaledWidth: number, unscaledHeight: number)

Inherited Summary

From class EventDispatcher
public

[prop]: *

public
public

A list of event listeners for this event dispatcher object.

public

typeCache: {}

public

addEventListener(context: *, type: *, listener: *)

Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event.

public
public

dispatchEvent(event: *): boolean

Dispatches an event into the event flow.

public
public

getStyle(prop: *): *

Gets the value of the prop property on this object

public

Returns true if an event listener exists

public

Returns true if the class name to check is in the list of class names defined for this class.

public

kill()

Removes all event listeners

public

killArray(arr: *)

Given an array of event dispatchers, calls the kill method on each of them.

public

removeEventListener(type: *, listener: *)

Removes a listener from the EventDispatcher object.

public

setStyle(prop: *, val: *)

Sets the value of the prop property on this object

From class UIComponent
public static
public static
public
public

children: *[]

public
public

data: *

This is a getter/setter for the data property.

public

domElement: HTMLElement

The dom element associated with this UIComponent.

public

A list of event listeners that are added to the domElement (these create html dom event listeners as opposed to js only event listeners)

public

Whether or not this control is enabled.

public
public
public
public
public
public
public
public

A flag to store if this object has been marked for invalidation.

public
public

parent: *

public
public

props: *

public

reactElement: ReactElement

The react element associated with this UIComponent.

public

state: *

public

tagName: *

public

toolTip: *

public
public

Whether or not this control is enabled.

public
public

x: *

public

y: *

public

addChild(child: *)

This methods takes another UIComponent object, and adds it to the dom as a child of the domElement of this UIComponent.

public

addChildAt(child: *, idx: *)

This methods takes another UIComponent object, and adds it to the dom as a child of the domElement of this UIComponent.

public

addDomEventListener(evt: *, f: *)

When you call addEventListener on a UIComponent, certain events, defined by the domEvents array are also associated with the corresponding domElement.

public

addEventListener(context: *, type: *, listener: *)

Calls super.addEventListener, and for dom based events, also adds a HTML Event listener

public

attachClass(newClass: *)

public
public
public
public
public
public

detachClass(newClass: *)

public

domEventFired(event: *)

The event handler that gets triggered from the HTML DOM.

public

focus()

public
public

getAttribute(attr: *): *

public
public

getChildAt(idx: *): *

Returns the child of the domElement at the specified index.

public
public
public

getData(): *

This is a getter/setter for the data property.

public

getElementByTagName(tag: *): *

public

getEnabled(): *

Sets the enabled flag

public

getErrorString(val: *): *

public
public
public

getHeight(): *

public
public
public

getIncludeInLayout(val: *): *

public

Getter for the innerHTML property

public
public

getStyleAttribute(attr: *): *

public

getText(): *

Getter for the text property

public
public
public

getVisible(val: *): *

Sets the visible flag

public

getWidth(): *

public

getX(): *

Gets the X co ordinate

public

getY(): *

Gets the Y co ordinate

public

globalToLocal(ptIn: *): flexiciousNmsp.Point

Converts the given global Point to local co-ordinates.

public

initFromProps(props: *)

public

Any initialization code is supposed to go in this method.

public

This method will queue the component so the display list will render it once the current frame of execution is over.

public

kill()

First, calls super.kill(), which takes out all event listeners.

public

localToGlobal(ptIn: *): flexiciousNmsp.Point

Converts the given local Point to global co-ordinates.

public

measureText(textToMeasure: *): {"width": *}

Returns the width of the given text.

public

mergeObjects(obj1: *, obj2: *): *

public

move(x: *, y: *)

Sets the X and Y co ordinates of the current dom element

public

Gets the number of children of the dom element associated with this UIComponent.

public

owns(elem: *): Boolean

Recursively iterates through the parent hierarchy of the given element to check to see if the current node is in its parent hierarchy.

public

ownsPoint(pt: *): boolean

public

removeAllChildren(child: *)

public

removeChild(child: *)

This methods takes another UIComponent object, and removes it from the dom.

public

removeChildAt(idx: *)

This methods takes another UIComponent object, and removes it from the dom.

public
public

removeDomEventListener(evt: *, f: *)

Removes a previously attached DOM event listener.

public

removeEventListener(type: *, listener: *)

Calls super.addEventListener, and for dom based events, also removes the previously added HTML Event listener

public

removeEventListenerKeepDomListener(type: *, listener: *)

Calls super.addEventListener, and for dom based events, also removes the previously added HTML Event listener

public

render(): *

public

setActualSize(w: *, h: *)

public
public

setAttribute(attr: *, val: *)

public
public

setChildIndex(child: *, index: *)

Sets the visible flag

public

setComponentStyleAttribute(attr: *, val: *)

public

setData(val: *)

This is important, because the grid looks for a "setData" method on the renderer.

public

setDomElement(elem: *)

Sets the domElement of this UIComponent to the specified element, and creates a property on the dom element called component to this.

public

setEnabled(val: *)

Sets the enabled flag

public

setErrorString(val: *)

public

setHandCursor(val: *)

public

setHeight(val: *): *

public
public
public
public

setInnerHTML(val: *)

Setter for the innerHTML property

public

setState(newState: *)

public

setStateIfDomPresent(state: *, db: *)

public

setStateInternal(newState: *)

public

setStyleAttribute(attr: *, val: *)

public

setText(val: *)

Setter for the text property

public

setToolTip(val: *)

public
public
public

setVisible(val: *)

Sets the visible flag

public

setWidth(val: *): *

public

setX(val: *): *

Sets the X co ordinate

public

setY(val: *): *

Sets the Y co ordinate

public

updateDisplayList(w: *, h: *)

Called as a part of render phase.

public
public

Public Constructors

public constructor(grid: *) source

Override:

UIComponent#constructor

Params:

NameTypeAttributeDescription
grid *

Public Members

public cellsWithColSpanOrRowSpan: Aray source

Once we are through calculating rowspans and colspans, we go through this array, popping cells and hiding cells that are covered by the increased col and row spans of the cells in this array. Please note, this array will only be populated when the snapToColumnWidths has just executed, and the hideSpannedCells has not.

Properties:

NameTypeAttributeDescription
cellsWithColSpanOrRowSpan *

public columnDraggingDragCell: * source

When a column is being dragged and dropped into a different location, this variable holds the cell that is being dragged. The cell actually does not drag, we render a glyph that trails the users mouse pointer. This variable simply holds a reference to the header cell associated with the column being dragged.

public columnDraggingDropTargetCell: * source

Properties:

NameTypeAttributeDescription
columnDraggingDropTargetCell *

public columnDraggingToRight: boolean source

Properties:

NameTypeAttributeDescription
columnDraggingToRight *

public columnResizingCell: * source

When a column is being resized, this variable holds the cell that initiated the resize operation. We render a glyph that trails the users mouse pointer during the resize operation This variable simply holds a reference to the header cell associated with the column being resized.

public columnResizingCellGlyph: * source

public columnResizingGlyph: * source

public enableHorizontalRecycling: boolean source

Flag to turn on horizontal scroll recycle. Should be turned off in case of using ICustomMatchFilterControl, since you do not want these controls to be recycled.

Properties:

NameTypeAttributeDescription
enableHorizontalRecycling *

public grid: * source

The grid that we belong to

public itemClickTimer: flexiciousNmsp.Timer source

Timer to prevent double click from causing two item clicks.

Properties:

NameTypeAttributeDescription
itemClickTimer *

public itemClickTimerDuration: number source

Duration, in milliseconds to wait until dispatching a new ITEM_CLICK event. Prevents two ITEM_CLICK events when user double clicks. Defaults to 250

Properties:

NameTypeAttributeDescription
itemClickTimerDuration *

public lastSelectedRowIndex: number source

Last selected Row Index

Properties:

NameTypeAttributeDescription
lastSelectedRowIndex *

public resizeCursorID: number source

Properties:

NameTypeAttributeDescription
resizeCursorID *

public rows: Array source

Collection of RowInfo objects currently being displayed. The Header,Footer and Filter containers usually have only one row, while the body container has as many rows an be shown in the currently visible area.

Properties:

NameTypeAttributeDescription
rows *

public startX: * source

Properties:

NameTypeAttributeDescription
startX *

public startY: * source

public verticalSpill: boolean source

Properties:

NameTypeAttributeDescription
verticalSpill *

Public Methods

public addCell(component: *, row: *, existingComponent: *): * source

Params:

NameTypeAttributeDescription
component *
row *
existingComponent *

Return:

*

public addEventListeners(comp: *) source

Based upon the type of the cell, adds various event listeners to them to respond to mouse overs, clicks, double clicks, mouse outs, keyboard input, etc.

Params:

NameTypeAttributeDescription
comp *

public addPadding(nestLevel: number, row: flexiciousNmsp.RowInfo, paddingHeight: number, level: flexiciousNmsp.FlexDataGridColumnLevel, forceRightLock: boolean, scrollPad: boolean, width: number): * source

Params:

NameTypeAttributeDescription
nestLevel number
row flexiciousNmsp.RowInfo
paddingHeight number
level flexiciousNmsp.FlexDataGridColumnLevel
forceRightLock boolean
scrollPad boolean
width number

Return:

*

public addRow(ht: *, scrollDown: *, rowPositionInfo: *): * source

Params:

NameTypeAttributeDescription
ht *
scrollDown *
rowPositionInfo *

Return:

*

public addToSection(cell: *, row: *, lockDir: *, existingComponent: *): * source

Params:

NameTypeAttributeDescription
cell *
row *
lockDir *
existingComponent *

Return:

*

public beginEdit(cell: *) source

Starts the Edit Session.

Params:

NameTypeAttributeDescription
cell *

public buildFilter(iSelectFilterControl: Object, column: flexiciousNmsp.FlexDataGridColumn, parentObject: Object, flatValues: Object) source

Params:

NameTypeAttributeDescription
iSelectFilterControl Object
column flexiciousNmsp.FlexDataGridColumn
parentObject Object
flatValues Object

public calculateColumnDraggingDropTargetCell(event: *) source

Given the mouse event, figures out which cell is the drop target. In 2.9, code was added to drop on the right cell of the current if the mouse is to the right of the middle of the cell, and on the left cell of the current if the mouse is on the left hand side of the middle of the cell.

This function checks to see if the mouse is over a header cell, and if the cell being dragged is a header cell. If so, it will size and position a glyph so that the user gets interactive feedback about where the column will be dropped and which column will be dropped. The same applies to the column group cells for drag and drop purposes.

Params:

NameTypeAttributeDescription
event *

public cancelEdit(event: *) source

Cancels the current running edit. Dispatches ITEM_EDIT_CANCEL.

Params:

NameTypeAttributeDescription
event *

public checkRowSpanColSpan(retCell: *, thisCell: *, direction: *, dataOnly: *, editableOnly: *, scrollIfNecessary: *, hoverableOnly: *): * source

Params:

NameTypeAttributeDescription
retCell *
thisCell *
direction *
dataOnly *
editableOnly *
scrollIfNecessary *
hoverableOnly *

Return:

*

public columnDraggingMouseMoveHandler(event: *) source

Params:

NameTypeAttributeDescription
event *

public columnDraggingMouseUpHandler(event: *) source

Params:

NameTypeAttributeDescription
event *

public columnResizeMouseUpHandler(event: *) source

Params:

NameTypeAttributeDescription
event *

public columnResizingHandler(event: *) source

Params:

NameTypeAttributeDescription
event *

public createChildren() source

public createComponents(level: flexiciousNmsp.FlexDataGridColumnLevel, currentScroll: number) source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
currentScroll number

public createFilter(level: flexiciousNmsp.FlexDataGridColumnLevel, parentObject: Object): AdvancedFilter source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
parentObject Object

Return:

AdvancedFilter

public dispatchPageChange(event: *) source

Params:

NameTypeAttributeDescription
event *

public doInvalidate() source

public emulateClick(cell: *) source

Used by accesibility

Params:

NameTypeAttributeDescription
cell *

public endEdit(editor: *) source

Dispatches ITEM_EDIT_END. Removes Event listeners

Params:

NameTypeAttributeDescription
editor *

public filterPageSort(flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, parentObj: Object, applyFilter: boolean, applyPaging: boolean, applySort: boolean, pages: Array, updatePager: boolean): Object source

Params:

NameTypeAttributeDescription
flat Object
level flexiciousNmsp.FlexDataGridColumnLevel
parentObj Object
applyFilter boolean
applyPaging boolean
applySort boolean
pages Array
updatePager boolean

Return:

Object

public findLoadingInfo(item: *, level: *, useSelectedKeyField: *): * source

In lazy loaded grids, gets the loaded info of the provided object.

Params:

NameTypeAttributeDescription
item *
level *
useSelectedKeyField *

Return:

*

public getAllRows(): Array source

Gets the Rows Collection

Return:

Array

public getBorderHeight(cell: *): number source

Params:

NameTypeAttributeDescription
cell *

Return:

number

public getBorderWidth(cell: *): number source

Params:

NameTypeAttributeDescription
cell *

Return:

number

public getCellForRowColumn(dataObject: *, col: *, includeExp: *): * source

Given a column and a data object, returns the cell associated with the data object. If the column is null, will return the first unlocked cell of the row associated with the data object, if includeExp is set to true, returns the expand collapse cell. Please note, this only checks the rows that are currently drawn, not the entire dataprovider. Only the data objects that have currently drawn rows (the visible viewport) will return a cell object, others will reuturn null

Params:

NameTypeAttributeDescription
dataObject *

An item in the dataprovider.

col *

A column to match. Can be null.

includeExp *

Whether or not to include the expand collapse cell.

Return:

*

IFlexDataGridCell

public getCellFromMouseEventTarget(target: *): flexiciousNmsp.FlexDataGridCell source

Params:

NameTypeAttributeDescription
target *

Return:

flexiciousNmsp.FlexDataGridCell

public getCellHeight(cell: flexiciousNmsp.FlexDataGridDataCell): number source

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridDataCell

Return:

number

public getCellInDirection(thisCell: *, direction: *, dataOnly: *, editableOnly: *, scrollIfNecessary: *, hoverableOnly: *): * source

Gets the cell in the specified direction of the provided cell

Params:

NameTypeAttributeDescription
thisCell *

The cell to start searching at.

direction *

The direction to search. Should be one of FlexDataGrid.CELL_POSITION_XXXX constants

dataOnly *

Boolean flag to look only for data cells (IFlexDataGridDataCell)

editableOnly *

Boolean flag to look only for editable cells

scrollIfNecessary *

If next visible cell is beyond scrollable area, recycle and then search again.

hoverableOnly *

Boolean flag to look only for cells where isHoverable(cell) is true.

Return:

*

The cell, if one matches the provided criteria, or null

public getCellWidth(cell: flexiciousNmsp.FlexDataGridDataCell): number source

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridDataCell

Return:

number

public getChildAtId(arr: Array, id: number): Object source

Used by accesibility

Params:

NameTypeAttributeDescription
arr Array
id number

Return:

Object

public getChildId(arr: Array, cell: flexiciousNmsp.FlexDataGridDataCell): number source

Used by accesibility

Params:

NameTypeAttributeDescription
arr Array
cell flexiciousNmsp.FlexDataGridDataCell

Return:

number

public getChildIds(arr: Array) source

Used by accesibility

Params:

NameTypeAttributeDescription
arr Array

public getClassNames(): string[] source

Override:

UIComponent#getClassNames

Return:

string[]

public getColSpan(cell: flexiciousNmsp.FlexDataGridDataCell): number source

Given a cell, gets the colspan associated with that cell by calling the this.grid.colSpanFunction.

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridDataCell

Return:

number

public getCurrentEditCell(): * source

The IFlexDataGridCell under edit currently. Please note, this is the IFlexDataGridCell component, not the editor component. This will be populated only after an edit session has started. To access the actual editor, please use the getCurrentEditor property

Return:

*

public getCurrentEditor(): * source

The editor being used as the current component to edit. This is an instance of the itemEditor class factory. This will be populated only after an edit session has started.

Return:

*

public getEditCell(): * source

The IFlexDataGridCell under edit currently. Please note, this is the IFlexDataGridCell component, not the editor component. This will be populated only after an edit session has started. To access the actual editor, please use the getCurrentEditor property

Return:

*

public getEditor(): * source

The editor being used as the current component to edit. This is an instance of the itemEditor class factory. This will be populated only after an edit session has started.

Return:

*

public getExistingCell(existingComponents: Array, rendererFactory: *, col: *): * source

Params:

NameTypeAttributeDescription
existingComponents Array
rendererFactory *
col *

Return:

*

public getFirstAvailableCell(cell: *, up: *): * source

Gets the first cell of the first column.

Params:

NameTypeAttributeDescription
cell *
up *

Return:

*

public getFirstHoverableCell(row: *, dataOnly: *, editableOnly: *): * source

Params:

NameTypeAttributeDescription
row *
dataOnly *
editableOnly *

Return:

*

public getInEdit(): * source

Returns true if grid is in edit mode

Return:

*

public getItemVerticalPositions(): number source

Row positions

Return:

number

public getPagerWidth(): * source

Return:

*

public getRowSpan(cell: flexiciousNmsp.FlexDataGridDataCell): number source

Given a cell, gets the rowSpan associated with that cell by calling the this.grid.rowSpanFunction.

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridDataCell

Return:

number

public getRowsForRecycling(): Array source

Return:

Array

public getRowsForSnapping(): Object source

Return:

Object

public getSelectedIds(bodyStart: *): Array source

Used by accesibility

Params:

NameTypeAttributeDescription
bodyStart *

Return:

Array

public getTraceCells(): String source

Return:

String

public getTraceRows(): String source

Return:

String

public gotoHorizontalPosition(hsp: *) source

Params:

NameTypeAttributeDescription
hsp *

public handleArrowKey(cell: *, keyCode: *, triggerEvent: *): boolean source

Handles cell key up. Handles KeyBoard.UP,KeyBoard.DOWN,KeyBoard.LEFT,KeyBoard.RIGHT

Params:

NameTypeAttributeDescription
cell *
keyCode *
triggerEvent *

Return:

boolean

public handleCellKeyUp(cell: *, keyCode: *, triggerEvent: *) source

Handles cell key up. Handles the following keys:

keyCode == Keyboard.UP || keyCode == Keyboard.DOWN || keyCode == Keyboard.LEFT || keyCode == Keyboard.RIGHT || keyCode == Keyboard.TAB || keyCode == Keyboard.PAGE_DOWN || keyCode == Keyboard.PAGE_UP || keyCode == Keyboard.HOME || keyCode == Keyboard.END || keyCode == Keyboard.NUMPAD_SUBTRACT || keyCode == Keyboard.NUMPAD_ADD || keyCode == Keyboard.F2 || keyCode == Keyboard.NUMPAD_MULTIPLY

Params:

NameTypeAttributeDescription
cell *
keyCode *
triggerEvent *

public handleDoubleClick(cell: *, triggerEvent: *) source

Handles the Double Click. If enableDoubleClickEdit and editable on the column is set to true, starts the edit session

Params:

NameTypeAttributeDescription
cell *
triggerEvent *

public handleMouseClick(cell: *, triggerEvent: *) source

Handles the Mouse click. Dispatches ITEM_CLICK. If the Cell is a header cell, calls onHeaderCellClicked. If the cells is the checkbox selection cell, updates the grid selection. Updates the Selected Cells, if this.grid.isCellSelectionMode. If the column is editable, begins the edit session.

Params:

NameTypeAttributeDescription
cell *
triggerEvent *

public handleMouseOut(cell: *, triggerEvent: *) source

Handles mouse out. Dispatches the Item Roll Out event

Params:

NameTypeAttributeDescription
cell *
triggerEvent *

public handleMouseOver(cell: *, triggerEvent: *) source

Handles mouse over for data cells. Calls highlightRow for item rollovers.

Params:

NameTypeAttributeDescription
cell *
triggerEvent *

public handleSpaceBar(cell: *, triggerEvent: *) source

Params:

NameTypeAttributeDescription
cell *
triggerEvent *

public hideSpannedCells() source

Once the snapToColumnWidths finishes, the cellsWithColSpanOrRowSpan array contains all cells that have a row or col span. This method will bring such cells to the top so they hide the ones that are covered.

public initializeFilterRenderer(filterRenderer: *, filterColumn: *, item: *, flatDp: *, level: *) source

Given a filter control, initializes it from the provided column

Params:

NameTypeAttributeDescription
filterRenderer *

The filter control

filterColumn *

The column to initialize the control with

item *

The item (only required for inner level filters)

flatDp *

The dataprovider

level *

The level against which to initialize the filter.

public initializeRendererFromColumn(filterRenderer: *, filterColumn: *) source

Params:

NameTypeAttributeDescription
filterRenderer *
filterColumn *

public invalidateCells() source

Calls invalidateBackground() on each of the cells.

public invalidateDisplayList() source

This method will queue the component so the display list will render it once the current frame of execution is over.

Override:

UIComponent#invalidateDisplayList

public isCoveredByColSpan(cell: *): boolean source

Given a cell, returns true if the cell is "hidden" by another cell that has a col span which will cover this cell.

Params:

NameTypeAttributeDescription
cell *

The cell to check

Return:

boolean

public isCoveredByRowSpan(cell: *): boolean source

Given a cell, returns true if the cell is "hidden" by another cell that has a row span which will cover this cell.

Params:

NameTypeAttributeDescription
cell *

The cell to check

Return:

boolean

public isCoveredByRowSpanOrColspan(cell: *): * source

Params:

NameTypeAttributeDescription
cell *

Return:

*

public isHoverableCell(cell: *): * source

Can this cell accept hover. Returns true if (cell is IFlexDataGridDataCell or cell is FlexDataGridHeaderCell or cell is FlexDataGridFooterCell or cell is FlexDataGridFilterCell or cell is FlexDataGridPagerCell or cell is FlexDataGridLevelRendererCell or cell is FlexDataGridExpandCollapseCell or cell is FlexDataGridColumnGroupCell) and cell.enabled and not cell is FlexDataGridExpandCollapseHeaderCell

Params:

NameTypeAttributeDescription
cell *

Return:

*

public isInVisibleHorizontalRange(x: number, width: number): boolean source

Returns true if the passed in numbers are in the visible ViewPort

Params:

NameTypeAttributeDescription
x number
width number

Return:

boolean

public isOutOfVisibleArea(row: *): boolean source

Abstract

Params:

NameTypeAttributeDescription
row *

Return:

boolean

public kill() source

First, calls super.kill(), which takes out all event listeners. Then, removes all the dom event listeners that we add. Then, wipes out the reference on the domElement. Then, wipes out the domElement reference. Finally, removes itself from the display list if its pending validation.

Override:

UIComponent#kill

public killResize() source

public onCellDoubleClick(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellDropMouseMove(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellKeyUp(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellMouseClick(event: *) source

Handles mouse click. Ensures we're not on the resize area, and ends the active edit, if any, before calling the default click handler.

Params:

NameTypeAttributeDescription
event *

public onCellMouseOut(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellMouseOver(event: *) source

Handles Cell Mouse Over. If header cell is moving, draws the header drop indicator.

Params:

NameTypeAttributeDescription
event *

public onEditorKeyDown(event: *) source

Handles the KeyDown on the Editor Component. If Escape, ends edit, if Enter or Tab, commmits the value, and moves on to the next cell if Tab. Next Row if Enter. If next Row or next cell belongs to a section that is not yet drawn, draws it and attempts to focus into the next editor.

Params:

NameTypeAttributeDescription
event *

public onEditorKeyFocusChange(event: *) source

Params:

NameTypeAttributeDescription
event *

public onEditorValueCommit(event: *) source

Params:

NameTypeAttributeDescription
event *

public onGridMouseMove(event: *) source

Params:

NameTypeAttributeDescription
event *

public onHeaderCellClicked(cell: flexiciousNmsp.FlexDataGridDataCell, triggerEvent: *, isMsc: boolean) source

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridDataCell
triggerEvent *
isMsc boolean

public onHeaderCellMouseDown(event: *) source

Params:

NameTypeAttributeDescription
event *

public onHeaderCellMouseMove(event: *) source

Params:

NameTypeAttributeDescription
event *

public onHeaderCellMouseOut(event: *) source

Params:

NameTypeAttributeDescription
event *

public onItemClickTimer(event: *) source

Params:

NameTypeAttributeDescription
event *

public onSelectAllChanged(event: *) source

Params:

NameTypeAttributeDescription
event *

public onStageResize(event: *) source

Params:

NameTypeAttributeDescription
event *

public placeComponents() source

public placeSortIcon(event: *) source

Params:

NameTypeAttributeDescription
event *

public populateValue(event: *): boolean source

Applies the value from the editor back to the model object. Dispatches ITEM_EDIT_VALUE_COMMIT

Params:

NameTypeAttributeDescription
event *

Return:

boolean

public processColumnGroupCell(level: flexiciousNmsp.FlexDataGridColumnLevel, rendererFactory: *, row: flexiciousNmsp.RowInfo, item: object, rowHeight: number, columnGroup: flexiciousNmsp.FlexDataGridColumnGroup, existingComponents: Array): * source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
rendererFactory *
row flexiciousNmsp.RowInfo
item object
rowHeight number
columnGroup flexiciousNmsp.FlexDataGridColumnGroup
existingComponents Array

Return:

*

public processFilterCell(level: flexiciousNmsp.FlexDataGridColumnLevel, cols: Array, colIndex: number, row: flexiciousNmsp.RowInfo, item: object, flatDp: object, existingComponents: Array) source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
cols Array
colIndex number
row flexiciousNmsp.RowInfo
item object
flatDp object
existingComponents Array

public processFooterCell(level: flexiciousNmsp.FlexDataGridColumnLevel, cols: Array, colIndex: number, row: flexiciousNmsp.RowInfo, item: object, existingComponents: Array) source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
cols Array
colIndex number
row flexiciousNmsp.RowInfo
item object
existingComponents Array

public processHeaderCell(level: flexiciousNmsp.FlexDataGridColumnLevel, cols: Array, colIndex: number, row: flexiciousNmsp.RowInfo, item: object, rowHeight: number, existingComponents: Array) source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
cols Array
colIndex number
row flexiciousNmsp.RowInfo
item object
rowHeight number
existingComponents Array

public processHeaderLevel(level: flexiciousNmsp.FlexDataGridColumnLevel, rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: boolean, item: object, chromeLevel: number, existingRow: flexiciousNmsp.RowInfo, existingComponents: Array): * source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
rowPositionInfo flexiciousNmsp.RowPositionInfo
scrollDown boolean
item object
chromeLevel number
existingRow flexiciousNmsp.RowInfo
existingComponents Array

Return:

*

public processRendererLevel(rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: boolean): flexiciousNmsp.RowIndo source

Params:

NameTypeAttributeDescription
rowPositionInfo flexiciousNmsp.RowPositionInfo
scrollDown boolean

Return:

flexiciousNmsp.RowIndo

row

public processRowPositionInfo(rowPositionInfo: *, scrollDown: *, existingRow: *, existingComponents: *): * source

Params:

NameTypeAttributeDescription
rowPositionInfo *
scrollDown *
existingRow *
existingComponents *

Return:

*

public reDraw() source

Calls removeAllComponents, createComponents, validateNow, and snapToColumnWidths

public recycleH(level: flexiciousNmsp.FlexDataGridColumnLevel, scrollRight: boolean) source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
scrollRight boolean

public refreshCells() source

Re-evaluates all the visible cell contents.

public refreshCheckBoxes() source

public removeAllComponents(recycle: boolean) source

End the edit, if active, call removeComponent on each of the rows, and remove all the children.

Params:

NameTypeAttributeDescription
recycle boolean

public removeComponent(comp: *) source

Removes the component from its parents hierarchy, and calls destroy method, if the component is a IFlexDataGridCell object Hangs on to the component in the cache for further reuse.

Params:

NameTypeAttributeDescription
comp *

component to remove

public removeComponents(row: *) source

Iterates through all rows and calls removeComponent on each of the cells. Removes event listeners added to the RowInfo object

Params:

NameTypeAttributeDescription
row *

public removeEventListeners(comp: *) source

Params:

NameTypeAttributeDescription
comp *

public rootPageChange(event: *) source

Params:

NameTypeAttributeDescription
event *

public scrollToExistingRow(vsp: *, scrollDown: *) source

Abstract

Params:

NameTypeAttributeDescription
vsp *
scrollDown *

public selectAllChangedHandler(event: *) source

Params:

NameTypeAttributeDescription
event *

public setCurrentCellToFirst() source

Sets the current highlight cell to the first available cell.

public setEditCell(val: *) source

Params:

NameTypeAttributeDescription
val *

public setEditor(val: *) source

Params:

NameTypeAttributeDescription
val *

public snapRowToColumnWidth(row: flexiciousNmsp.RowInfo) source

Params:

NameTypeAttributeDescription
row flexiciousNmsp.RowInfo

public snapToColumnWidths() source

public sortByCell(cell: flexiciousNmsp.FlexDataGridDataCell) source

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridDataCell

public sortByColumn(col: *) source

Params:

NameTypeAttributeDescription
col *

public startColumnDrag() source

public storeSort(item: object, column: flexiciousNmsp.FlexDataGridColumn, ascending: boolean) source

Params:

NameTypeAttributeDescription
item object
column flexiciousNmsp.FlexDataGridColumn
ascending boolean

public updateDisplayList(unscaledWidth: number, unscaledHeight: number) source

Called as a part of render phase.

Override:

UIComponent#updateDisplayList

Params:

NameTypeAttributeDescription
unscaledWidth number
unscaledHeight number