Home Reference Source
public class | source

FlexDataGridBodyContainer

Extends:

react~React.ComponentEventDispatcherUIComponentFlexDataGridContainerBase → FlexDataGridBodyContainer

FlexDataGridBodyContainer is the container for the unlocked section of the datagrid. This is the only container in the entire component tree that scrolls. In addition to all the base functionality that it inherits from FlexDataGridContainerBase, it adds the following pieces of functionality:

  • Vertical Scroll Renderer Recycling

Constructor Summary

Public Constructor
public

constructor(grid: *)

Member Summary

Public Members
public

backgroundForFillerRows: flexiciousNmsp.UIComponent

public
public
public
public

When you have sticky headers, this will be the one floating row.

public
public
public
public
public
public
public
public
public

A list of items that the user has opened.

public
public

rows: *[]

public

Active only when the body containers calculateRowHeight method is running.

public
public

Method Summary

Public Methods
public

addCell(component: UIComponent, row: flexiciousNmsp.RowInfo, existingComponent: flexiciousNmsp.ComponentInfo): flexiciousNmsp.ComponentAdditionResult

public

addEventListeners(comp: flexiciousNmsp.ComponentInfo)

public
public
public
public

addOpenItem(item: Object, rowPositionInfo: flexiciousNmsp.RowPositionInfo, check: Boolean, lvl: flexiciousNmsp.FlexDataGridColumnLevel)

public

addRow(ht: number, scrollDown: boolean, rowPositionInfo: RowPositionInfo): *

public

addToExpandingPositions(array: Array, parentRowIndex: number, item: object, heightSoFar: number, level: flexiciousNmsp.FlexDataGridColumnLevel, parent: Object, rowType: number): number

public

addToVerticalPositions(item: Object, heightSoFar: number, level: flexiciousNmsp.FlexDataGridColumnLevel, parent: Object, rowType: number): number

public

adjustFiller(offset: Number)

public

adjustRowPositions(rowPositionInfo: flexiciousNmsp.RowPositionInfo, howManyToRemove: number, heightRemoved: number)

public

binarySearch(arr: Array, verticalPos: Number, low: Number, high: Number): flexiciousNmsp.RowPositionInfo

On basis of the vertical scroll position provided, does a quick binary lookup of the record to be shown at that row.

public

calculateTotalHeight(flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, heightSoFar: number, nestLevel: number, expanding: flexiciousNmsp.RowPositionInfo, addedRows: Array, parentObject: Object, isRecursive: boolean): number

Dual purpose function, one to calculate height, second to figure out that at vertical position Y, the seed record to be shown is?.

public
public
public
public
public
public
public

Clears out the variable row height renderers

public

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

public

drawFiller(end: flexiciousNmsp.RowPositionInfo)

public

drawRows(forceFiller: Boolean): boolean

public

drawRowsUsingCache(start: flexiciousNmsp.RowPositionInfo, end: flexiciousNmsp.RowPositionInfo, scrollDown: Boolean, offPage: Boolean)

public
public

expandCollapse(expandingDataItem: Object, rowPositionInfo: flexiciousNmsp.RowPositionInfo, forceScrollBar: Boolean)

public

gatherFilteredPagedSortedData(dictionary: Dictionary, result: ArrayCollection, flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, parentObject: Object, applyFilter: Boolean, applyPaging: Boolean, applySort: Boolean, pages: Array, flatten: Boolean)

public

getAllRows(): ArrayCollection

public
public
public
public

getColumnGroupDepth(row: flexiciousNmsp.RowInfo): number

public

getFilteredPagedSortedData(dictionary: Dictionary, applyFilter: Boolean, applyPaging: Boolean, applySort: Boolean, pages: Array, flatten: Boolean): Object

public

getHorizontalScrollBar(): flexiciousNmsp.Rectangle

Gets the horizontal scroll bar props

public

getItemAtPosition(position: Number): flexiciousNmsp.RowPositionInfo

Returns the RowPosition Info object for the item at the given vertical scroll position

public

Gets a copy of the calculated item vertical positions

public

In lazy loaded grid levels, (filterPageSortMode=server), when the user expands a level for the first time, since the data is not loaded, the level dispatches the filterPageSortChange, or itemLoad.

public

Gets the scrollLeft

public

Gets the scrollLeft

public
public

getObjectStack(itemToFind: Object, stackSoFar: Array, useItemKeyForCompare: Boolean, flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel): Boolean

Given an object at any level, returns an array containing information about that object, followed by its parent, until the top of the tree is reached, in reverse order.

public

Returns the number of rows currently visible.

public
public

getRowPositionInfo(item: Object, lvl: flexiciousNmsp.FlexDataGridColumnLevel): *

public
public
public
public
public

getScrollableRect(): flexiciousNmsp.Rectangle

handle getScrollableRect

public

Returns true if there is another page of data.

public

getVerticalScrollBar(): flexiciousNmsp.Rectangle

Gets the vertical scroll bar props

public

gotoItem(item: Object, highlight: Boolean, useItemKeyForCompare: Boolean, level: flexiciousNmsp.FlexDataGridColumnLevel, rebuild: Boolean): Boolean

Given a data item, scrolls to that item in the datagrid If the use item Key For compare parameter is set to true, uses the selectedKeyField value of the item to identify the item.

public

gotoRow(rowIndex: Number): Boolean

Given a row index (less than the total number of rows, goes to the row in question).

public

Goes to the vertical position specified by the parameter.

public
public

handleArrowKey(cell: flexiciousNmsp.FlexDataGridCell, keyCode: Number, triggerEvent: *): boolean

public

handleExpandCollapse(disclosureCell: flexiciousNmsp.ExpandCollapseComponent)

public

handleSpaceBar(cell: flexiciousNmsp.FlexDataGridCell, triggerEvent: *)

public
public
public

isLoading(item: object, level: flexiciousNmsp.FlexDataGridColumnLevel, useSelectedKeyField: Boolean): Boolean

public

isOutOfVisibleArea(row: flexiciousNmsp.RowInfo): *

Returnes true if the row's vertical position is less than the grids vertical scroll bar position or if the rows vertical position plus rows height is greater than the grids vertical position plus grid height.

public

Returnes true if the row's vertical position is less than the grids vertical scroll bar position or if the rows vertical position plus rows height is greater than the grids vertical position plus grid height.

public

keyDownHandler(event: *)

public

kill()

public

kill()

public
public

onCellDragComplete(event: *)

public
public
public

onCellDragMouseUp(event: *)

public
public

onChildHeaderClicked(headerCell: flexiciousNmsp.FlexDataGridHeaderCell)

public

onDragDrop(event: *)

public

onDragEnter(event: *)

public

onExpandCollapse(event: *)

public

onFilterChange(event: *)

handle filterchange

public

onHeaderCellClicked(headerCell: flexiciousNmsp.FlexDataGridHeaderCell, triggerEvent: *, isMsc: boolean)

public

onHeightChanged(event: *)

public

onPageChange(event: *)

public

onSelectAllChanged(event: *)

public

onWidthChanged(event: *)

public

positionExists(seed: flexiciousNmsp.RowPositionInfo): Boolean

public

processItem(rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: Boolean, existingRow: flexiciousNmsp.RowInfo, existingComponents: Array): flexiciousNmsp.RowInfo

public

processItemPositionInfoUsingCache(seed: flexiciousNmsp.RowPositionInfo, insertionPoint: Number, scrollDown: Boolean)

public

processRowPositionInfo(rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: Boolean, existingRow: flexiciousNmsp.RowInfo, existingComponents: Array): flexiciousNmsp.RowInfo

public

processSection(addedRows: Array, rowIndex: number, parentObject: Object, heightSoFar: number, level: flexiciousNmsp.FlexDataGridColumnLevel, parentObject5: Object, chromeType: number, expanding: flexiciousNmsp.RowPositionInfo, expandingLevel: flexiciousNmsp.FlexDataGridColumnLevel): number

public

pushCell(column: flexiciousNmsp.FlexDataGridColumn, row: flexiciousNmsp.RowInfo, existingComponents: Array): flexiciousNmsp.ComponentAdditionResult

public

quickFind(whatToFind: String, flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, result: Array): *

Iterates through the data provider to get a list of objects that match the text provided.

public

recycle(level: flexiciousNmsp.FlexDataGridColumnLevel, scrollDown: Boolean, scrollDelta: Number, scrolling: Boolean)

public

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

public
public

removeEventListeners(comp: flexiciousNmsp.ComponentInfo)

public
public

removeOpenItem(item: Object, rowPositionInfo: RowPositionInfo)

public

render(): *

public
public

rowExists(rowPos: flexiciousNmsp.RowPositionInfo): Boolean

public

saveRowInCache(row: flexiciousNmsp.RowInfo)

public

scrollToExistingRow(vsp: Number, scrollDown: Bolean)

Scrolls to a row that is already drawn.

public

Selects the provided text in the currently visible cells that have the default item renderer, or if the item renderer has the selection property

public
public

setChildData(item: Object, schildren: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, totalRecords: Number, useSelectedKeyField: Boolean): Boolean

public
public
public

Sets the records in the visible range.

public

shiftColumns(columnToInsert: flexiciousNmsp.FlexDataGridColumn, insertBefore: flexiciousNmsp.FlexDataGridColumn)

Inserts the column specified column before the specified column

public

updateDisplayList(unscaledWidth: *, unscaledHeight: *)

public

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
From class FlexDataGridContainerBase
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
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)

Public Constructors

public constructor(grid: *) source

Override:

FlexDataGridContainerBase#constructor

Params:

NameTypeAttributeDescription
grid *

Public Members

public backgroundForFillerRows: flexiciousNmsp.UIComponent source

Properties:

NameTypeAttributeDescription
backgroundForFillerRows *

public currentRowPointer: null source

Properties:

NameTypeAttributeDescription
currentRowPointer *

public fillerRow: * source

public fillerRows: Array source

Properties:

NameTypeAttributeDescription
fillerRows *

public floatingHeaderRowInfo: * source

When you have sticky headers, this will be the one floating row.

public grid: FlexDataGridContainerBase source

The grid that we belong to

Override:

FlexDataGridContainerBase#grid

Properties:

NameTypeAttributeDescription
grid *

public horizontalMask: Number source

Properties:

NameTypeAttributeDescription
horizontalMask *

public isMouseDown: number source

public itemVerticalPositions: *[] source

public matchSticks: Array source

Properties:

NameTypeAttributeDescription
matchSticks *

public maxHorizontalScrollPosition: * source

public maxVerticalScrollPosition: * source

public onDisabledCell: Boolean source

Properties:

NameTypeAttributeDescription
onDisabledCell *

public openItems: Array source

A list of items that the user has opened. Only applicable grids with nested column levels.

Properties:

NameTypeAttributeDescription
openItems *

public parentMap: Object source

Properties:

NameTypeAttributeDescription
parentMap *

public rows: *[] 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.

Override:

FlexDataGridContainerBase#rows

public variableRowHeightRenderers: null source

Active only when the body containers calculateRowHeight method is running. This dictionary will be purged as soon as calculateRowHeight is done running.

Properties:

NameTypeAttributeDescription
variableRowHeightRenderers *

public verticalMask: Number source

Properties:

NameTypeAttributeDescription
verticalMask *

public verticalSpill: * source

Override:

FlexDataGridContainerBase#verticalSpill

Public Methods

public addCell(component: UIComponent, row: flexiciousNmsp.RowInfo, existingComponent: flexiciousNmsp.ComponentInfo): flexiciousNmsp.ComponentAdditionResult source

Override:

FlexDataGridContainerBase#addCell

Params:

NameTypeAttributeDescription
component UIComponent
row flexiciousNmsp.RowInfo
existingComponent flexiciousNmsp.ComponentInfo

Return:

flexiciousNmsp.ComponentAdditionResult

public addEventListeners(comp: flexiciousNmsp.ComponentInfo) 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.

Override:

FlexDataGridContainerBase#addEventListeners

Params:

NameTypeAttributeDescription
comp flexiciousNmsp.ComponentInfo

public addHMatchStick(p: *) source

Params:

NameTypeAttributeDescription
p *

public addMatchStick(p: *) source

Params:

NameTypeAttributeDescription
p *

public addMatchSticks(p: *) source

Params:

NameTypeAttributeDescription
p *

public addOpenItem(item: Object, rowPositionInfo: flexiciousNmsp.RowPositionInfo, check: Boolean, lvl: flexiciousNmsp.FlexDataGridColumnLevel) source

Params:

NameTypeAttributeDescription
item Object
rowPositionInfo flexiciousNmsp.RowPositionInfo
check Boolean
lvl flexiciousNmsp.FlexDataGridColumnLevel

public addRow(ht: number, scrollDown: boolean, rowPositionInfo: RowPositionInfo): * source

Override:

FlexDataGridContainerBase#addRow

Params:

NameTypeAttributeDescription
ht number
scrollDown boolean
rowPositionInfo RowPositionInfo

Return:

*

public addToExpandingPositions(array: Array, parentRowIndex: number, item: object, heightSoFar: number, level: flexiciousNmsp.FlexDataGridColumnLevel, parent: Object, rowType: number): number source

Params:

NameTypeAttributeDescription
array Array
parentRowIndex number
item object
heightSoFar number
level flexiciousNmsp.FlexDataGridColumnLevel
parent Object
rowType number

Return:

number

public addToVerticalPositions(item: Object, heightSoFar: number, level: flexiciousNmsp.FlexDataGridColumnLevel, parent: Object, rowType: number): number source

Params:

NameTypeAttributeDescription
item Object
heightSoFar number
level flexiciousNmsp.FlexDataGridColumnLevel
parent Object
rowType number

Return:

number

public adjustFiller(offset: Number) source

Params:

NameTypeAttributeDescription
offset Number

public adjustRowPositions(rowPositionInfo: flexiciousNmsp.RowPositionInfo, howManyToRemove: number, heightRemoved: number) source

Params:

NameTypeAttributeDescription
rowPositionInfo flexiciousNmsp.RowPositionInfo
howManyToRemove number
heightRemoved number

public binarySearch(arr: Array, verticalPos: Number, low: Number, high: Number): flexiciousNmsp.RowPositionInfo source

On basis of the vertical scroll position provided, does a quick binary lookup of the record to be shown at that row.

Params:

NameTypeAttributeDescription
arr Array
verticalPos Number
low Number
high Number

Return:

flexiciousNmsp.RowPositionInfo

public calculateTotalHeight(flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, heightSoFar: number, nestLevel: number, expanding: flexiciousNmsp.RowPositionInfo, addedRows: Array, parentObject: Object, isRecursive: boolean): number source

Dual purpose function, one to calculate height, second to figure out that at vertical position Y, the seed record to be shown is?.

Params:

NameTypeAttributeDescription
flat Object
level flexiciousNmsp.FlexDataGridColumnLevel
heightSoFar number
nestLevel number
expanding flexiciousNmsp.RowPositionInfo
addedRows Array
parentObject Object
isRecursive boolean

Return:

number

total Height

public checkAutoAdjust() source

public checkInconsistency() source

public checkScrollChange(prevCalc: number) source

Params:

NameTypeAttributeDescription
prevCalc number

previous calculation

public checkStickyHeader() source

public clearAllCollections() source

public clearOpenItems() source

public clearVariableRowHeightRenderes() source

Clears out the variable row height renderers

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

Override:

FlexDataGridContainerBase#createComponents

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
currentScroll Number

public drawFiller(end: flexiciousNmsp.RowPositionInfo) source

Params:

NameTypeAttributeDescription
end flexiciousNmsp.RowPositionInfo

public drawRows(forceFiller: Boolean): boolean source

Params:

NameTypeAttributeDescription
forceFiller Boolean

Return:

boolean

public drawRowsUsingCache(start: flexiciousNmsp.RowPositionInfo, end: flexiciousNmsp.RowPositionInfo, scrollDown: Boolean, offPage: Boolean) source

Params:

NameTypeAttributeDescription
start flexiciousNmsp.RowPositionInfo
end flexiciousNmsp.RowPositionInfo
scrollDown Boolean
offPage Boolean

public ensureAutoAjustHeight() source

public expandCollapse(expandingDataItem: Object, rowPositionInfo: flexiciousNmsp.RowPositionInfo, forceScrollBar: Boolean) source

Params:

NameTypeAttributeDescription
expandingDataItem Object
rowPositionInfo flexiciousNmsp.RowPositionInfo
forceScrollBar Boolean

public gatherFilteredPagedSortedData(dictionary: Dictionary, result: ArrayCollection, flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, parentObject: Object, applyFilter: Boolean, applyPaging: Boolean, applySort: Boolean, pages: Array, flatten: Boolean) source

Params:

NameTypeAttributeDescription
dictionary Dictionary
result ArrayCollection
flat Object
level flexiciousNmsp.FlexDataGridColumnLevel
parentObject Object
applyFilter Boolean
applyPaging Boolean
applySort Boolean
pages Array
flatten Boolean

public getAllRows(): ArrayCollection source

Gets the Rows Collection

Override:

FlexDataGridContainerBase#getAllRows

Return:

ArrayCollection

new rows

public getCalculatedTotalHeight(): number source

Return:

number

total calculated height.

public getChromeType(name: String): number source

Params:

NameTypeAttributeDescription
name String

name of chrome type

Return:

number

public getClassNames(): * source

Override:

FlexDataGridContainerBase#getClassNames

Return:

*

Array

public getColumnGroupDepth(row: flexiciousNmsp.RowInfo): number source

Params:

NameTypeAttributeDescription
row flexiciousNmsp.RowInfo

Return:

number

depth

  • not supported for now. Column groups are only supported at the top level.

public getFilteredPagedSortedData(dictionary: Dictionary, applyFilter: Boolean, applyPaging: Boolean, applySort: Boolean, pages: Array, flatten: Boolean): Object source

Params:

NameTypeAttributeDescription
dictionary Dictionary
applyFilter Boolean
applyPaging Boolean
applySort Boolean
pages Array
flatten Boolean

Return:

Object

public getHorizontalScrollBar(): flexiciousNmsp.Rectangle source

Gets the horizontal scroll bar props

Return:

flexiciousNmsp.Rectangle

horizotal scrollbar

public getItemAtPosition(position: Number): flexiciousNmsp.RowPositionInfo source

Returns the RowPosition Info object for the item at the given vertical scroll position

Params:

NameTypeAttributeDescription
position Number

Return:

flexiciousNmsp.RowPositionInfo

public getItemVerticalPositions(): Array source

Gets a copy of the calculated item vertical positions

Override:

FlexDataGridContainerBase#getItemVerticalPositions

Return:

Array

public getLoadedItems(): * source

In lazy loaded grid levels, (filterPageSortMode=server), when the user expands a level for the first time, since the data is not loaded, the level dispatches the filterPageSortChange, or itemLoad.

This event is then handled by client code, and when the data is retreieved from the server, the setChildData method is called. This method will store the results in this array collection.

Return:

*

public getMaxHorizontalScrollPosition(): number source

Gets the scrollLeft

Return:

number

maximum horizontal scroll position

public getMaxVerticalScrollPosition(): number source

Gets the scrollLeft

Return:

number

maximum vertical scroll position

public getNumTotalRows(): number source

Return:

number

total number of rows.

public getObjectStack(itemToFind: Object, stackSoFar: Array, useItemKeyForCompare: Boolean, flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel): Boolean source

Given an object at any level, returns an array containing information about that object, followed by its parent, until the top of the tree is reached, in reverse order. The array contains a list of ItemPositionInfo objects, which contains that object itself, its index, as well as the page number it appears on, if enablePaging is set to true else -1.

Params:

NameTypeAttributeDescription
itemToFind Object
stackSoFar Array
useItemKeyForCompare Boolean
flat Object
level flexiciousNmsp.FlexDataGridColumnLevel

Return:

Boolean

public getOnScreenRows(): Array source

Returns the number of rows currently visible.

Return:

Array

on screen rows

public getRootFlat(): Object source

Return:

Object

public getRowPositionInfo(item: Object, lvl: flexiciousNmsp.FlexDataGridColumnLevel): * source

Params:

NameTypeAttributeDescription
item Object
lvl flexiciousNmsp.FlexDataGridColumnLevel

Return:

*

public getRowPositionInfoFromRows(item: Object): * source

Params:

NameTypeAttributeDescription
item Object

Return:

*

public getRowsForRecycling(): Boolean source

Override:

FlexDataGridContainerBase#getRowsForRecycling

Return:

Boolean

public getRowsForRecycling(): Object source

Override:

FlexDataGridContainerBase#getRowsForRecycling

Return:

Object

returns new row

public getRowsForSnapping(): * source

Override:

FlexDataGridContainerBase#getRowsForSnapping

Return:

*

public getScrollableRect(): flexiciousNmsp.Rectangle source

handle getScrollableRect

Return:

flexiciousNmsp.Rectangle

public getValidNextPage(): boolean source

Returns true if there is another page of data.

Return:

boolean

public getVerticalScrollBar(): flexiciousNmsp.Rectangle source

Gets the vertical scroll bar props

Return:

flexiciousNmsp.Rectangle

vertical scrollbar

public gotoItem(item: Object, highlight: Boolean, useItemKeyForCompare: Boolean, level: flexiciousNmsp.FlexDataGridColumnLevel, rebuild: Boolean): Boolean source

Given a data item, scrolls to that item in the datagrid If the use item Key For compare parameter is set to true, uses the selectedKeyField value of the item to identify the item.

Flexicious by default will only build RowPositionInfo objects for open items that the user can visually scroll to. So items that are closed, or are on a different page, will not be built, and cannot be scrolled to. If you set rebuildRowPositions to true, the function will inspect the data provider to find the item in question, and build the RowPositionInfo for it if its not found in the currently built RowPositionInfo objects.

Params:

NameTypeAttributeDescription
item Object
highlight Boolean
useItemKeyForCompare Boolean
level flexiciousNmsp.FlexDataGridColumnLevel
rebuild Boolean

Return:

Boolean

public gotoRow(rowIndex: Number): Boolean source

Given a row index (less than the total number of rows, goes to the row in question). Row index becomes the first visible row. Please note this is a 1 based index.

Params:

NameTypeAttributeDescription
rowIndex Number

Return:

Boolean

public gotoVerticalPosition(vsp: Number) source

Goes to the vertical position specified by the parameter. Recycles the renderers

Params:

NameTypeAttributeDescription
vsp Number

vertical Scroll Position

public gridMouseOut() source

public handleArrowKey(cell: flexiciousNmsp.FlexDataGridCell, keyCode: Number, triggerEvent: *): boolean source

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

Override:

FlexDataGridContainerBase#handleArrowKey

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridCell
keyCode Number
triggerEvent *

Return:

boolean

public handleExpandCollapse(disclosureCell: flexiciousNmsp.ExpandCollapseComponent) source

Params:

NameTypeAttributeDescription
disclosureCell flexiciousNmsp.ExpandCollapseComponent

public handleSpaceBar(cell: flexiciousNmsp.FlexDataGridCell, triggerEvent: *) source

Override:

FlexDataGridContainerBase#handleSpaceBar

Params:

NameTypeAttributeDescription
cell flexiciousNmsp.FlexDataGridCell
triggerEvent *

public hideFloatingRow() source

public invalidateCalculatedHeight() source

public isLoading(item: object, level: flexiciousNmsp.FlexDataGridColumnLevel, useSelectedKeyField: Boolean): Boolean source

Params:

NameTypeAttributeDescription
item object
level flexiciousNmsp.FlexDataGridColumnLevel
useSelectedKeyField Boolean

Return:

Boolean

public isOutOfVisibleArea(row: flexiciousNmsp.RowInfo): * source

Returnes true if the row's vertical position is less than the grids vertical scroll bar position or if the rows vertical position plus rows height is greater than the grids vertical position plus grid height.

Override:

FlexDataGridContainerBase#isOutOfVisibleArea

Params:

NameTypeAttributeDescription
row flexiciousNmsp.RowInfo

Return:

*

public isYOutOfVisibleArea(numY: Number, numH: Number): Number source

Returnes true if the row's vertical position is less than the grids vertical scroll bar position or if the rows vertical position plus rows height is greater than the grids vertical position plus grid height.

Params:

NameTypeAttributeDescription
numY Number
numH Number

Return:

Number

public keyDownHandler(event: *) source

Params:

NameTypeAttributeDescription
event *

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:

FlexDataGridContainerBase#kill

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:

FlexDataGridContainerBase#kill

public nextPage() source

public onCellDragComplete(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellDragMouseDown(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellDragMouseMove(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellDragMouseUp(event: *) source

Params:

NameTypeAttributeDescription
event *

public onCellDropMouseMove(event: *) source

Override:

FlexDataGridContainerBase#onCellDropMouseMove

Params:

NameTypeAttributeDescription
event *

public onChildHeaderClicked(headerCell: flexiciousNmsp.FlexDataGridHeaderCell) source

Params:

NameTypeAttributeDescription
headerCell flexiciousNmsp.FlexDataGridHeaderCell

public onDragDrop(event: *) source

Params:

NameTypeAttributeDescription
event *

public onDragEnter(event: *) source

Params:

NameTypeAttributeDescription
event *

public onExpandCollapse(event: *) source

Params:

NameTypeAttributeDescription
event *

public onFilterChange(event: *) source

handle filterchange

Params:

NameTypeAttributeDescription
event *

public onHeaderCellClicked(headerCell: flexiciousNmsp.FlexDataGridHeaderCell, triggerEvent: *, isMsc: boolean) source

Override:

FlexDataGridContainerBase#onHeaderCellClicked

Params:

NameTypeAttributeDescription
headerCell flexiciousNmsp.FlexDataGridHeaderCell
triggerEvent *
isMsc boolean

public onHeightChanged(event: *) source

Params:

NameTypeAttributeDescription
event *

public onPageChange(event: *) source

Params:

NameTypeAttributeDescription
event *

public onSelectAllChanged(event: *) source

Override:

FlexDataGridContainerBase#onSelectAllChanged

Params:

NameTypeAttributeDescription
event *

public onWidthChanged(event: *) source

Params:

NameTypeAttributeDescription
event *

public positionExists(seed: flexiciousNmsp.RowPositionInfo): Boolean source

Params:

NameTypeAttributeDescription
seed flexiciousNmsp.RowPositionInfo

Return:

Boolean

public processItem(rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: Boolean, existingRow: flexiciousNmsp.RowInfo, existingComponents: Array): flexiciousNmsp.RowInfo source

Params:

NameTypeAttributeDescription
rowPositionInfo flexiciousNmsp.RowPositionInfo
scrollDown Boolean
existingRow flexiciousNmsp.RowInfo
existingComponents Array

Return:

flexiciousNmsp.RowInfo

public processItemPositionInfoUsingCache(seed: flexiciousNmsp.RowPositionInfo, insertionPoint: Number, scrollDown: Boolean) source

Params:

NameTypeAttributeDescription
seed flexiciousNmsp.RowPositionInfo
insertionPoint Number
scrollDown Boolean

public processRowPositionInfo(rowPositionInfo: flexiciousNmsp.RowPositionInfo, scrollDown: Boolean, existingRow: flexiciousNmsp.RowInfo, existingComponents: Array): flexiciousNmsp.RowInfo source

Override:

FlexDataGridContainerBase#processRowPositionInfo

Params:

NameTypeAttributeDescription
rowPositionInfo flexiciousNmsp.RowPositionInfo
scrollDown Boolean
existingRow flexiciousNmsp.RowInfo
existingComponents Array

Return:

flexiciousNmsp.RowInfo

public processSection(addedRows: Array, rowIndex: number, parentObject: Object, heightSoFar: number, level: flexiciousNmsp.FlexDataGridColumnLevel, parentObject5: Object, chromeType: number, expanding: flexiciousNmsp.RowPositionInfo, expandingLevel: flexiciousNmsp.FlexDataGridColumnLevel): number source

Params:

NameTypeAttributeDescription
addedRows Array
rowIndex number
parentObject Object
heightSoFar number
level flexiciousNmsp.FlexDataGridColumnLevel
parentObject5 Object
chromeType number
expanding flexiciousNmsp.RowPositionInfo
expandingLevel flexiciousNmsp.FlexDataGridColumnLevel

Return:

number

public pushCell(column: flexiciousNmsp.FlexDataGridColumn, row: flexiciousNmsp.RowInfo, existingComponents: Array): flexiciousNmsp.ComponentAdditionResult source

Params:

NameTypeAttributeDescription
column flexiciousNmsp.FlexDataGridColumn
row flexiciousNmsp.RowInfo
existingComponents Array

Return:

flexiciousNmsp.ComponentAdditionResult

public quickFind(whatToFind: String, flat: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, result: Array): * source

Iterates through the data provider to get a list of objects that match the text provided.

Params:

NameTypeAttributeDescription
whatToFind String
flat Object
level flexiciousNmsp.FlexDataGridColumnLevel
result Array

Return:

*

public recycle(level: flexiciousNmsp.FlexDataGridColumnLevel, scrollDown: Boolean, scrollDelta: Number, scrolling: Boolean) source

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
scrollDown Boolean
scrollDelta Number
scrolling Boolean

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

Override:

FlexDataGridContainerBase#recycleH

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
scrollRight Boolean

public removeAllComponents(recycle: Boolean) source

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

Override:

FlexDataGridContainerBase#removeAllComponents

Params:

NameTypeAttributeDescription
recycle Boolean

public removeEventListeners(comp: flexiciousNmsp.ComponentInfo) source

Override:

FlexDataGridContainerBase#removeEventListeners

Params:

NameTypeAttributeDescription
comp flexiciousNmsp.ComponentInfo

public removeMatchSticks() source

public removeOpenItem(item: Object, rowPositionInfo: RowPositionInfo) source

Params:

NameTypeAttributeDescription
item Object
rowPositionInfo RowPositionInfo

public render(): * source

Override:

UIComponent#render

Return:

*

public resizeFillerCells() source

public rowExists(rowPos: flexiciousNmsp.RowPositionInfo): Boolean source

Params:

NameTypeAttributeDescription
rowPos flexiciousNmsp.RowPositionInfo

Return:

Boolean

public saveRowInCache(row: flexiciousNmsp.RowInfo) source

Params:

NameTypeAttributeDescription
row flexiciousNmsp.RowInfo

public scrollToExistingRow(vsp: Number, scrollDown: Bolean) source

Scrolls to a row that is already drawn.

Override:

FlexDataGridContainerBase#scrollToExistingRow

Params:

NameTypeAttributeDescription
vsp Number
scrollDown Bolean

public selectText(txt: String) source

Selects the provided text in the currently visible cells that have the default item renderer, or if the item renderer has the selection property

Params:

NameTypeAttributeDescription
txt String

public setBackgroudFillerSize() source

public setChildData(item: Object, schildren: Object, level: flexiciousNmsp.FlexDataGridColumnLevel, totalRecords: Number, useSelectedKeyField: Boolean): Boolean source

Params:

NameTypeAttributeDescription
item Object
schildren Object
level flexiciousNmsp.FlexDataGridColumnLevel
totalRecords Number
useSelectedKeyField Boolean

Return:

Boolean

public setCurrentRowAtScrollPosition(vsp: number): boolean source

Params:

NameTypeAttributeDescription
vsp number

Return:

boolean

public setVerticalScrollPosition(val: number) source

Override:

UIComponent#setVerticalScrollPosition

Params:

NameTypeAttributeDescription
val number

public setVisibleRange() source

Sets the records in the visible range.

public shiftColumns(columnToInsert: flexiciousNmsp.FlexDataGridColumn, insertBefore: flexiciousNmsp.FlexDataGridColumn) source

Inserts the column specified column before the specified column

Params:

NameTypeAttributeDescription
columnToInsert flexiciousNmsp.FlexDataGridColumn
insertBefore flexiciousNmsp.FlexDataGridColumn

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

Called as a part of render phase.

Override:

FlexDataGridContainerBase#updateDisplayList

Params:

NameTypeAttributeDescription
unscaledWidth *
unscaledHeight *

public validateDisplayList() source