Home Reference Source
public class | source

FlexDataGridHeaderContainer

Extends:

react~React.ComponentEventDispatcherUIComponentFlexDataGridContainerBase → FlexDataGridHeaderContainer

The container for header, footer, filter and pager sections of the top level. These rows are locked so they stay in place, i.e, they do not scroll when the user scrolls vertically.

When the user scrolls horizontally, these rows will scroll.

Constructor Summary

Public Constructor
public

constructor(grid: *)

Member Summary

Public Members
public

The type of this container.

public
public

Method Summary

Public Methods
public

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

public

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

public
public

Returns the filter at the top level.

public
public

getPager(): flexiciousNmsp.FlexDataGridPagerCell

public

getPagerCell(): flexiciousNmsp.FlexDataGridPagerCell

public
public

getScrollableRect(): flexiciousNmsp.Rectangle

public
public

onFilterChange(event: *)

public

onWidthChanged(event: *)

public

rootPageChange(event: *)

public

Sets the filter at the top level.

public

setFilterValue(col: *, val: *)

Sets the filter value at the top level for the specified field

public

setWidth(value: number)

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 chromeType: * source

The type of this container. Can be one of:

  • ROW_TYPE_HEADER
  • ROW_TYPE_FOOTER
  • ROW_TYPE_PAGER
  • ROW_TYPE_FILTER
  • ROW_TYPE_DATA
  • ROW_TYPE_FILL
  • ROW_TYPE_RENDERER
  • ROW_TYPE_COLUMN_GROUP

public horizontalScrollPolicy: String source

Override:

UIComponent#horizontalScrollPolicy

Properties:

NameTypeAttributeDescription
horizontalScrollPolicy *

public verticalScrollPolicy: String source

Override:

UIComponent#verticalScrollPolicy

Properties:

NameTypeAttributeDescription
verticalScrollPolicy *

Public Methods

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

Override:

FlexDataGridContainerBase#addCell

Params:

NameTypeAttributeDescription
component *
row flexiciousNmsp.RowInfo
existingComponent flexiciousNmsp.ComponentInfo

Return:

*

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

Override:

FlexDataGridContainerBase#createComponents

Params:

NameTypeAttributeDescription
level flexiciousNmsp.FlexDataGridColumnLevel
currentScroll number
flat object

public getClassNames(): string[] source

Override:

FlexDataGridContainerBase#getClassNames

Return:

string[]

public getFilterArguments(): Array source

Returns the filter at the top level.

Return:

Array

public getMaxHorizontalScrollPosition(): number source

Return:

number

public getPager(): flexiciousNmsp.FlexDataGridPagerCell source

Return:

flexiciousNmsp.FlexDataGridPagerCell

public getPagerCell(): flexiciousNmsp.FlexDataGridPagerCell source

Return:

flexiciousNmsp.FlexDataGridPagerCell

public getRowsForRecycling(): Array source

Override:

FlexDataGridContainerBase#getRowsForRecycling

Return:

Array

public getScrollableRect(): flexiciousNmsp.Rectangle source

Return:

flexiciousNmsp.Rectangle

public onCellDropMouseMove(event: *) source

Override:

FlexDataGridContainerBase#onCellDropMouseMove

Params:

NameTypeAttributeDescription
event *

public onFilterChange(event: *) source

Params:

NameTypeAttributeDescription
event *

public onWidthChanged(event: *) source

Params:

NameTypeAttributeDescription
event *

public rootPageChange(event: *) source

Override:

FlexDataGridContainerBase#rootPageChange

Params:

NameTypeAttributeDescription
event *

public setFilterFocus(fld: String): boolean source

Sets the filter at the top level.

Params:

NameTypeAttributeDescription
fld String

The string to match the searchField property of the filter control with.

Return:

boolean

True if focus was set, false if otherwise.
Focus may not be set if the given search field does not exist,
or if the filter control for the given search field does not
implement IFocusManagerComponent.

public setFilterValue(col: *, val: *) source

Sets the filter value at the top level for the specified field

Params:

NameTypeAttributeDescription
col *
val *

public setWidth(value: number) source

Override:

UIComponent#setWidth

Params:

NameTypeAttributeDescription
value number

public setWidth(w: number) source

Override:

UIComponent#setWidth

Params:

NameTypeAttributeDescription
w number

width