import FlexDataGridCell from 'flexicious-react-datagrid/js/flexgrid/cells/FlexDataGridCell.js'
FlexDataGridCell
Extends:
Direct Subclass:
Indirect Subclass:
FlexDataGridCell is the container component for each of the DataGrid's cells. This is a psuedo abstract class, the cells that you see in the grid are actually one of the following subclasses of this class:
- FlexDataGridHeaderCell
- FlexDataGridFilterCell
- FlexDataGridFooterCell
- FlexDataGridPagerCell
- FlexDataGridLevelRendererCell
- FlexDataGridExpandCollapseHeaderCell
- FlexDataGridExpandCollapseCell
- FlexDataGridPaddingCell
- FlexDataGridDataCell
The FlexDataGridCell is responsible for sizing, positioning (based on padding), drawing the background, and drawing the borders. This class has a renderer property, which is the actual component that is displayed on the UI. In case of the Header,Data or Footer cells the default renderer is a UITextField or UIFTETextField. For Filter, it is an instance of the IFilterControl. For the Pager, it is an IPager control. For the LevelRenderer it is an instance of the Class Factory that you specify in the nextLevelRenderer of the associated column Level. For the ExpandCollapse cells, it will draw an instance of the expand collapse icon on basis of the disclosureIcon style property All the drawing happens in the drawCell method. It seperately calls the drawBackground and drawBorder methods. Usually specifying the style properties, or the cellBackgroud/rowBackground/cellBorder/rowBorder functions is sufficient, but in case its needed, these methods can be overridden in a custom implementation, and this custom implementation can then be hooked in via the dataCellRenderer, headerCellRenderer, footerCellRenderer, pagerCellRenderer, filterCellRender, expandCollapseHeaderCellRenderer,nestIndentPaddingCellRenderer, and expandCollapseCellRenderer of the column or the level.
Please note, that this class is recycled, so for example, as you scroll, a FlexDataGridCell object that was displaying some other item in the data provider previously could be reused to display the current one.
Constructor Summary
Public Constructor | ||
public |
|
Member Summary
Public Members | ||
public |
A number of operations can cause the cells text and background colors to change. |
|
public |
children: *[] |
|
public |
When column.enableIcon=true, this is the icon that will be associated with the cell. |
|
public |
column: * |
|
public |
componentInfo: ComponentInfo The component info that holds this cell in the cells collection of the associated rowInfo object. |
|
public |
This property stores the temporary value of a cells background color when the user hovers over it. |
|
public |
This property stores the temporary value of a cells text color when the user hovers over it. |
|
public |
Once a grid is rendered, each cell in the grid is shown in the UI. |
|
public |
expandCollapseIcon: ExpandCollapseIcon In 2.7, ability was added to have any cell be a expand collapse cell. |
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
The FlexDataGridColumnLevel associated with this cell. |
|
public |
Used by header cells and column group cells for drag drop move. |
|
public |
|
|
public |
rowInfo: RowInfo The rowInfo object associated with this cell. |
|
public |
|
Method Summary
Public Methods | ||
public |
attachUserClass(className: *) |
|
public |
capitalizeFirstLetterIfPrefix(val: *): String If there is a value for the prefix parameter, capitalizes the first word of the val parameter and returns it |
|
public |
|
|
public |
destroy() destroy function. |
|
public |
drawBackground(unscaledWidth: *, unscaledHeight: *) Draws the background as well as calls drawBorder on the given cell |
|
public |
drawCell(unscaledWidth: *, unscaledHeight: *) Draws the background as well as calls drawBorder on the given cell |
|
public |
drawRightBorder(unscaledWidth: *, unscaledHeight: *): * Draws the right border for this cell. |
|
public |
If the cell.backgroundColors is an array, returns a string join using a comma. |
|
public |
The getBackgroundColors method is responsible for evaluating the background color of the cell. |
|
public |
If column is a checkbox column, returns the current state of the checkbox renderer |
|
public |
getClassNames(): string[] |
|
public |
getColumn(): FlexDataGridColumn The FlexDataGridColumn associated with this cell. |
|
public |
Calculated property that controls whether or not to draw the top border. |
|
public |
getGrid(): FlexDataGrid The FlexDataGrid associated with this cell. |
|
public |
What color to use to draw the horizontal grid lines for this cell. |
|
public |
What thickness to use to draw the horizontal grid lines for this cell. |
|
public |
getIExpandCollapseComponent(): IExpandCollapseComponent |
|
public |
getIconUrl(over: *): String |
|
public |
The "Chrome" is defined as header,footer,pager,filter sections. |
|
public |
getIsContentArea(): * | Boolean Returns true if we are a data cell or if we area a chrome cell at a nest depth of greater than 1. |
|
public |
Returns true if the rowInfo object associated with this cell is of type RowPositionInfo.ROW_TYPE_DATA. |
|
public |
Returns true if this cell is not right locked or not fixed width. |
|
public |
Calcualted property that returns if this cell is a expand collapse cell. |
|
public |
Returns true if the column associated with this cell has columnLockMode="left" |
|
public |
Returns true if the column associated with this cell has columnLockMode="left" or columnLockMode="right" |
|
public |
When a cell is created for the first time, this flag is set to true. |
|
public |
Returns true if the column associated with this cell has columnLockMode="right" |
|
public |
|
|
public |
The FlexDataGridColumnLevel associated with this cell. |
|
public |
getLevel(): FlexDataGridColumnLevel The FlexDataGridColumnLevel associated with this cell. |
|
public |
getNestDepth(): * | Number Returns the nestpDepth property of the associated level, if it is not null. |
|
public |
The X Position of this cell, as the user sees it. |
|
public |
Returns one of the following values on basis of what type of cell this is:
|
|
public |
getRenderer(): DisplayObject The actual renderer component that displays the value of the cell. |
|
public |
getRendererFactory(): IFactory The factory class used for initializing the cell. |
|
public |
If this is a fillRow, returns the value of the color property. |
|
public |
Returns the value of the textRollOverColor style property. |
|
public |
getRowInfo(): RowInfo The rowInfo object associated with this cell. |
|
public |
getStyleValue(styleProp: *): * |
|
public |
This is the actual text to display in the cell. |
|
public |
The getTextColors method is responsible for evaluating the text color of the cell. |
|
public |
What color to use to draw the vertical grid lines for this cell. |
|
public |
What thickness to use to draw the horizontal grid lines for this cell. |
|
public |
This flag is a used for enabling the wordWrap on the associated renderer. |
|
public |
globalToLocal(ptIn: *): flexiciousNmsp.Point Converts the given global Point to local co-ordinates. |
|
public |
Returns true if the style property for horizontalGridLines is defined for the type of the row. |
|
public |
Returns true if the style property for verticalGridLines is defined for the type of the row. |
|
public |
initializeCheckBoxRenderer(renderer: *): * This method is responsible for initializing the checkbox renderer for both the header and data cells. |
|
public |
Marks the cell so that the background and borders are drawn in the next validation cycle. |
|
public |
kill() Clean up this cell |
|
public |
onCheckChange(event: *) |
|
public |
onIconMouseClick(evt: *) when the icon is enables, handles the mouse click event of the icon. |
|
public |
onIconMouseOut(evnt: *) when the icon is enables, handles the mouse out event of the icon. |
|
public |
onIconMouseOver(evnt: *) when the icon is enables, handles the mouse over event of the icon. |
|
public |
onTimerComplete(evt: *) Once the timer completed its time, the final result will be renderered such as showing shooltips or dispatching some events. |
|
public |
placeComponent(cellRenderer: *, unscaledWidth: *, unscaledHeight: *, usePadding: *): * This method will size and place the renderer within the bounds of this cell. |
|
public |
setting the position of ExpandCollapseIcon. |
|
public |
setting the correct position of the Icon. |
|
public |
Used to refresh the contents of a Cell. |
|
public |
setActualSize(w: *, h: *) To set the actualsize value using width and height values. |
|
public |
setColumn(value: *) The FlexDataGridColumnLevel associated with this cell. |
|
public |
setEnabled(val: *) Is this enabled cell |
|
public |
setHeight(value: *) |
|
public |
setRendererFactory(value: *) The factory class used for initializing the cell. |
|
public |
setRendererSize(cellRenderer: *, w: *, h: *) Given a renderer, sets the size on basis of whether or not there are vertical and horizotnal gridlines . |
|
public |
setSelectable(val: *) |
|
public |
setText(val: *) This is the actual text to display in the cell. |
|
public |
setTruncateToFit(val: *) |
|
public |
setWidth(value: *) Setting the width. |
|
public |
setWordWrap(val: *) This flag is a used for enabling the wordWrap on the associated renderer. |
|
public |
updateDisplayList(w: *, h: *) |
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 |
getClassNames(): string[] |
|
public |
getStyle(prop: *): * Gets the value of the prop property on this object |
|
public |
hasEventListener(type: *): Boolean Returns true if an event listener exists |
|
public |
implementsOrExtends(name: *): Boolean 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 |
childrenWithProps: *[] |
|
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 |
errorString: * |
|
public |
handCursor: * |
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
A flag to store if this object has been marked for invalidation. |
|
public |
oldDisplay: * |
|
public |
parent: * |
|
public |
propertyBag: {} |
|
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 |
componentWillReceiveProps(nextProps: *) |
|
public |
|
|
public |
|
|
public |
detachClass(newClass: *) |
|
public |
domEventFired(event: *) The event handler that gets triggered from the HTML DOM. |
|
public |
focus() |
|
public |
getAllChildren(): * |
|
public |
getAttribute(attr: *): * |
|
public |
getAutomationName(): * |
|
public |
getChildAt(idx: *): * Returns the child of the domElement at the specified index. |
|
public |
getClassNames(): string[] |
|
public |
getComponentStyleAttribute(attr: *): * |
|
public |
getData(): * This is a getter/setter for the data property. |
|
public |
getElementByTagName(tag: *): * |
|
public |
getEnabled(): * Sets the enabled flag |
|
public |
getErrorString(val: *): * |
|
public |
getHandCursor(): * |
|
public |
getHandCursor(): * |
|
public |
getHeight(): * |
|
public |
|
|
public |
|
|
public |
getIncludeInLayout(val: *): * |
|
public |
getInnerHTML(): * Getter for the innerHTML property |
|
public |
getPixelHeight(): * |
|
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 |
numChildren(): * Gets the number of children of the dom element associated with this UIComponent. |
|
public |
Recursively iterates through the parent hierarchy of the given element to check to see if the current node is in its parent hierarchy. |
|
public |
|
|
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 |
removeComponentAttribute(attr: *) |
|
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 |
setAutomationName(val: *) |
|
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 |
setHorizontalScrollPolicy(policy: *) |
|
public |
setHorizontalScrollPosition(val: *): * |
|
public |
setIncludeInLayout(val: *) |
|
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 |
setVerticalScrollPolicy(policy: *) |
|
public |
setVerticalScrollPosition(val: *): * |
|
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 Members
public backgroundDirty: Boolean source
A number of operations can cause the cells text and background colors to change. Resizing, mouse interactions, scrolling, hovering, etc. In order to make sure we're not calling the painting and color calculating routines unnecessarily, all these operations simply mark the background as dirty. The is done by calling the invalidateBackground() method. This method will set the backgroundDirty flag to true and call invalidateDisplayList. In the next validation cycle the cell get's its color calculation code executed and painting code will then use the calculated color values to paint the cell.
Properties:
Name | Type | Attribute | Description |
backgroundDirty | * |
public colIcon: Image source
When column.enableIcon=true, this is the icon that will be associated with the cell.
Properties:
Name | Type | Attribute | Description |
colIcon | * |
public column: * source
public componentInfo: ComponentInfo source
The component info that holds this cell in the cells collection of the associated rowInfo object.
When a row is rendered in the FlexDataGrid, the memory structure used to hold each row is the RowInfo object. If you look at grid.bodyContainer.rows, each item in this collection is an object of type RowInfo. These are the rows in the dataprovider that are currently rendered, which is different than the list of items in the dataprovider. In the cells collection of the rowInfo object, we have a list of ComponentInfo objects. The componentInfo object stores a bunch of additional information and provides a number of handy methods to interact with the cell object. It is basically a wrapper around the IFlexDataGridCell object.
Properties:
Name | Type | Attribute | Description |
componentInfo | * |
public currentBackgroundColors: * source
This property stores the temporary value of a cells background color when the user hovers over it. The background colors of each cell are calculated using a series of rules as defined in the documentation for the getBackgroundColors method of the CellUtils class.
Properties:
Name | Type | Attribute | Description |
currentBackgroundColors | * |
public currentTextColors: Array source
This property stores the temporary value of a cells text color when the user hovers over it. The text colors of each cell are calculated using a series of rules as defined in the documentation for the getTextColors method of the CellUtils class.
Properties:
Name | Type | Attribute | Description |
currentTextColors | * |
public destroyed: Boolean source
Once a grid is rendered, each cell in the grid is shown in the UI. After being shown, if the user performs operations like filtering, or paging, that result in the cell being taken out of view and no longer being rendered on the UI, instead of removing the cell from memory, we store it in the renderer cache of the grid. Prior to decommissioning the cell, we call the destroy method on the cell. This method will set the destroyed flag to true.
Properties:
Name | Type | Attribute | Description |
_renderer | * |
public expandCollapseIcon: ExpandCollapseIcon source
In 2.7, ability was added to have any cell be a expand collapse cell. If you set enableExpandCollapse=true on the column the cells that belong to that column are provided with an iExpandCollapseComponent, which defaults to an instance of
Properties:
Name | Type | Attribute | Description |
expandCollapseIcon | * |
public level: FlexDataGridColumnLevel source
The FlexDataGridColumnLevel associated with this cell. This set on initialize. This is usually never null.
Properties:
Name | Type | Attribute | Description |
level | * |
public moving: Boolean source
Used by header cells and column group cells for drag drop move. This property should not be set by your code.
Properties:
Name | Type | Attribute | Description |
moving | * |
public previouslyAttached: * source
public rowInfo: RowInfo source
The rowInfo object associated with this cell. This cell should be within the cells collection of this rowInfo object. Each cell has a corresponding rowinfo object. The rowInfo, in turn has a rowPositionInfo object. The key difference between these two objects is that there are only as many rowInfo objects as there visible rows on the page. RowPositionInfo objects on the other hand, there are as many of these as there are total items in the data provider.
Properties:
Name | Type | Attribute | Description |
rowInfo | * |
Public Methods
public attachUserClass(className: *) source
Params:
Name | Type | Attribute | Description |
className | * |
public capitalizeFirstLetterIfPrefix(val: *): String source
If there is a value for the prefix parameter, capitalizes the first word of the val parameter and returns it
Params:
Name | Type | Attribute | Description |
val | * |
public createColumnIcon() source
public drawBackground(unscaledWidth: *, unscaledHeight: *) source
Draws the background as well as calls drawBorder on the given cell
Each cell in Ultimate will draw its own background and border. This method will use the evaluated results of a number of properties on the cell object to calculate the color, width, and visibility of the background associated with this cell.
Params:
Name | Type | Attribute | Description |
unscaledWidth | * | ||
unscaledHeight | * |
public drawCell(unscaledWidth: *, unscaledHeight: *) source
Draws the background as well as calls drawBorder on the given cell
Each cell in Ultimate will draw its own background and border. This method will use the evaluated results of a number of properties on the cell object to calculate the color, width, and visibility of the background associated with this cell.
- First, this method will check to see if you have defined a cellCustomBackgroundDrawFunction for the associated column or level. If so, it will call this method, with the cell as a parameter. You can draw a custom background in this function. If you return false, from this function, this method will not execute any other code, and simply call the drawBorders method
- First, this method will check to see if you have defined a cellCustomBackgroundDrawFunction for the associated column or level. If so, it will call this method, with the cell as a parameter. You can draw a custom background in this function. If you return false, from this function, this method will not execute any other code, and simply call the drawBorders method
Params:
Name | Type | Attribute | Description |
unscaledWidth | * | ||
unscaledHeight | * |
public drawRightBorder(unscaledWidth: *, unscaledHeight: *): * source
Draws the right border for this cell. There are a few rules on basis of which a right (or a left) border is drawn on a cell.
- First, if the cell is a Pager cell, no right border is drawn, since the pager shares its left and right border with the grid.
- Second, if the cell has no vertical gridlines, no border is drawn.
- Else, if the cell has a column and its right locked, then a left border is drawn.
Params:
Name | Type | Attribute | Description |
unscaledWidth | * | ||
unscaledHeight | * |
Return:
* |
public getBackgroundColorString(): String source
If the cell.backgroundColors is an array, returns a string join using a comma. Else, returns the result of ExtendedUIUtils.getColorName on it.
public getBackgroundColors(): String source
The getBackgroundColors method is responsible for evaluating the background color of the cell.
public getCheckBoxState(): string source
If column is a checkbox column, returns the current state of the checkbox renderer
public getColumn(): FlexDataGridColumn source
The FlexDataGridColumn associated with this cell. Can be null for cells that do not have a column (e.g. ExpandCollapse Cells). For Cells that span multiple columns, it is still the column that this cell starts on.
Return:
FlexDataGridColumn |
public getDrawTopBorder(): Boolean source
Calculated property that controls whether or not to draw the top border. Each cell in Ultimate will draw its own background and border. In order to prevent cells from drawing double borders (cell above me drew bottom border, so I should not need to draw my top border), this flag evaluates to false. But in certain cases, you may want to draw both top and bottom border. The bottom border is always controlled by the horizontalGridLines style property. The top border is controlled by the drawTopBorder style property. In order to provide fine grained control over border drawing functionality, there are the following style properties available.
- drawTopBorder
- headerDrawTopBorder
- footerDrawTopBorder
- pagerDrawTopBorder
- filterDrawTopBorder
- columnGroupDrawTopBorder
- horizontalGridLines
- headerHorizontalGridLines
- footerHorizontalGridLines
- pagerHorizontalGridLines
- filterHorizontalGridLines
- columnGroupHorizontalGridLines
public getGrid(): FlexDataGrid source
The FlexDataGrid associated with this cell. This set on initialize. This is usually never null.
Return:
FlexDataGrid |
public getHorizontalGridLineColor(): String source
What color to use to draw the horizontal grid lines for this cell. The value is used to draw the bottom border. Similar to the drawTopBorder, this is a calculated property which is derived from the associated rowInfo object's row type. The result is the value of one of the following based on the rowInfo.rowPositionInfo.rowType:
- horizontalGridLineColor
- headerHorizontalGridLineColor
- footerHorizontalGridLineColor
- pagerHorizontalGridLineColor
- filterHorizontalGridLineColor
- columnHorizontalGridLineColor
public getHorizontalGridLineThickness(): Number source
What thickness to use to draw the horizontal grid lines for this cell. The value is used to draw the bottom border. drawTopBorder Similar to the drawTopBorder, this is a calculated property which is derived from the associated rowInfo object's row type. The result is the value of one of the following based on the rowInfo.rowPositionInfo.rowType:
- horizontalGridLineThickness
- headerHorizontalGridLineThickness
- footerHorizontalGridLineThickness
- pagerHorizontalGridLineThickness
- filterHorizontalGridLineThickness
- columnGroupHorizontalGridLineThickness
public getIExpandCollapseComponent(): IExpandCollapseComponent source
Return:
IExpandCollapseComponent |
public getIsChromeCell(): Boolean source
The "Chrome" is defined as header,footer,pager,filter sections. This method returns true if this cell belongs to either of these containers.
public getIsContentArea(): * | Boolean source
Returns true if we are a data cell or if we area a chrome cell at a nest depth of greater than 1. These cells are all drawn in the content area, hence have to scroll. The "Chrome" is defined as header,footer,pager,filter sections. This method returns true if this cell belongs to either of these containers.
public getIsDataCell(): Boolean source
Returns true if the rowInfo object associated with this cell is of type RowPositionInfo.ROW_TYPE_DATA.
public getIsElastic(): Boolean source
Returns true if this cell is not right locked or not fixed width.
public getIsExpandCollapseCell(): Boolean source
Calcualted property that returns if this cell is a expand collapse cell.
public getIsLeftLocked(): Boolean source
Returns true if the column associated with this cell has columnLockMode="left"
public getIsLocked(): Boolean source
Returns true if the column associated with this cell has columnLockMode="left" or columnLockMode="right"
public getIsNewlyCreated(): Boolean source
When a cell is created for the first time, this flag is set to true. After the cell is no longer needed the cell is put back into the renderer cache. If after being put in the renderer cache, the cell gets called back into action and is added to the display list, this flag will be set to false.
public getIsRightLocked(): boolean source
Returns true if the column associated with this cell has columnLockMode="right"
public getLevel(): FlexDataGridColumnLevel source
The FlexDataGridColumnLevel associated with this cell. This set on initialize. This is usually never null.
public getLevel(): FlexDataGridColumnLevel source
The FlexDataGridColumnLevel associated with this cell. This set on initialize. This is usually never null.
Return:
FlexDataGridColumnLevel |
public getNestDepth(): * | Number source
Returns the nestpDepth property of the associated level, if it is not null. If it is null, returns 1. The top level column has nestDepth=1;
public getPerceivedX(): Number source
The X Position of this cell, as the user sees it. Since the Left, Right and Unlocked containers are measuremment frames in themselves, each cell's X is relative to its container. This method converts the measurement of the x value relative to the corresponding parent container to the measurement of X relative to the grid. This is used mainly by keyboard navigation to figure out which cell is to the right or left of the given cell.
public getPrefix(): string source
Returns one of the following values on basis of what type of cell this is:
- Blank string for data cells
- header
- footer
- filter
- columnGroup
- pager
public getRenderer(): DisplayObject source
The actual renderer component that displays the value of the cell. For all but the FlexDataGridDataCell2 and FlexDataGridDataCell3 there is a separate component that does the rendering. For FlexDataGridDataCell2 and FlexDataGridDataCell3, the cell itself becomes the renderer. This is why both FlexDataGridDataCell2 and FlexDataGridDataCell3 are more performant and optimized than the others. These are also more numerous, since they display data values. The header, filters and footers are relatively smaller in number.
Return:
DisplayObject |
public getRendererFactory(): IFactory source
The factory class used for initializing the cell. This is arrived at by calling the deriveRenderer method of the associated column.
Return:
IFactory |
public getRolloverColor(): String source
If this is a fillRow, returns the value of the color property. Else, returns the value of the "prop" property which is the value of one of the following style properties:
public getRolloverTextColor(): String source
Returns the value of the textRollOverColor style property.
public getRowInfo(): RowInfo source
The rowInfo object associated with this cell. This cell should be within the cells collection of this rowInfo object.
Return:
RowInfo |
public getStyleValue(styleProp: *): * source
Params:
Name | Type | Attribute | Description |
styleProp | * |
Return:
* |
public getText(): String source
This is the actual text to display in the cell. This is just a placeholder for the text. Ultimately this value is applied to the renderers text property. This is why, if you specify a custom renderer that exposes a text property, the grid automatically applies the result of the column.itemToLabel method on the associated rowInfo.data object to the text property of the itemRenderer.
Override:
UIComponent#getTextpublic getTextColors(): String source
The getTextColors method is responsible for evaluating the text color of the cell.
public getVerticalGridLineColor(): String source
What color to use to draw the vertical grid lines for this cell. The value is used to draw the right border. drawTopBorder Similar to the drawTopBorder, this is a calculated property which is derived from the associated rowInfo object's row type. The result is the value of one of the following based on the rowInfo.rowPositionInfo.rowType:
- verticalGridLineColor
- headerVerticalGridLineColor
- footerVerticalGridLineColor
- pagerVerticalGridLineColor
- filterVerticalGridLineColor
- columnGroupVerticalGridLineColor
public getVerticalGridLineThickness(): Number source
What thickness to use to draw the horizontal grid lines for this cell. The value is used to draw the bottom border. drawTopBorder Similar to the drawTopBorder, this is a calculated property which is derived from the associated rowInfo object's row type. The result is the value of one of the following based on the rowInfo.rowPositionInfo.rowType:
- verticalGridLineThickness
- headerVerticalGridLineThickness
- footerVerticalGridLineThickness
- pagerVerticalGridLineThickness
- filterVerticalGridLineThickness
- columnGroupVerticalGridLineThickness
public getWordWrap(): Boolean source
This flag is a used for enabling the wordWrap on the associated renderer. Please note, if you define an item renderer, setting wordWrap will only have an impact if you define a renderer that exposes a wordWrap property. When you specify wordWrap on the associated column, the grid will set this flag to true. It will also use a predefined item renderer that has a wordWrap property, unless you specify a custom renderer. If you specify a custom renderer, then this renderer must assume responsibility for exposing a wordWrap property and handling wordWrap appropriately.
public globalToLocal(ptIn: *): flexiciousNmsp.Point source
Converts the given global Point to local co-ordinates.
Override:
UIComponent#globalToLocalParams:
Name | Type | Attribute | Description |
ptIn | * | {flexiciousNmsp.Point} |
Return:
flexiciousNmsp.Point |
public hasHorizontalGridLines(): Boolean source
Returns true if the style property for horizontalGridLines is defined for the type of the row. Based upon the rowInfo.rowPositionInfo.rowType, one of the following properties are inspected:
- horizontalGridLines
- headerHorizontalGridLines
- footerHorizontalGridLines
- pagerHorizontalGridLines
- filterHorizontalGridLines
- columnGroupHorizontalGridLines
public hasVerticalGridLines(): Boolean source
Returns true if the style property for verticalGridLines is defined for the type of the row. Based upon the rowInfo.rowPositionInfo.rowType, one of the following properties are inspected:
public initializeCheckBoxRenderer(renderer: *): * source
This method is responsible for initializing the checkbox renderer for both the header and data cells. It performns the following tasks
- First, it will set the radio button mode of the associated TriStateCheckBox to true if col.radioButtonMode or level.enableSingleSelect is set to true
- Next, if the grid.enableSelectionExclusion flag is set to true, it will set the selected state of the associated TriStateCheckBox to the result of the getCheckBoxStateBasedOnExclusion method of the level
- Next, if the grid.enableSelectionExclusion flag is set to false (default),
it will set the selected state of the associated TriStateCheckBox based upon the following logic (if enableTriStateCheckBox=true):
- If the associated rowData object is in the selected objects collection of the level, sets it to checked
- If any of the children the associated rowData object are selected, sets it to middle
- Else sets it to unchecked
- Finally, if the enableLabelAndCheckBox flag is set to true on the column, this method will apply the result of the columns itemToLabel function to the label property of the checkbox
Params:
Name | Type | Attribute | Description |
renderer | * |
public invalidateBackground() source
Marks the cell so that the background and borders are drawn in the next validation cycle. Please, note this does not update or re-evaluate the content of the cell, just the border and the background. To updated the content, call the refreshCell method instead.
public onCheckChange(event: *) source
Params:
Name | Type | Attribute | Description |
event | * |
public onIconMouseClick(evt: *) source
when the icon is enables, handles the mouse click event of the icon.
Params:
Name | Type | Attribute | Description |
evt | * |
public onIconMouseOut(evnt: *) source
when the icon is enables, handles the mouse out event of the icon.
Params:
Name | Type | Attribute | Description |
evnt | * |
public onIconMouseOver(evnt: *) source
when the icon is enables, handles the mouse over event of the icon.
Params:
Name | Type | Attribute | Description |
evnt | * |
public onTimerComplete(evt: *) source
Once the timer completed its time, the final result will be renderered such as showing shooltips or dispatching some events.
Params:
Name | Type | Attribute | Description |
evt | * |
public placeComponent(cellRenderer: *, unscaledWidth: *, unscaledHeight: *, usePadding: *): * source
This method will size and place the renderer within the bounds of this cell. The renderer of the cell gets a width of cell.width - paddingLeft - paddingRight. It gets a height of cell.height - paddingTop - paddingBottom. It then gets placed at x position of paddingLeft and y position of paddingTop. The padding is only applied if usePadding is set to true (default).
The padding is calculated on basis of what type of cell this is. The following style properties are used to figure out padding:
- paddingLeft
- paddingRight
- paddingTop
- paddingBottom
- headerPaddingLeft
- headerPaddingRight
- headerPaddingTop
- headerPaddingBottom
- footerPaddingLeft
- footerPaddingRight
- footerPaddingTop
- filterPaddingBottom
- filterPaddingLeft
- filterPaddingRight
- filterPaddingTop
- filterPaddingBottom
- columnGroupPaddingBottom
- columnGroupPaddingLeft
- columnGroupPaddingRight
- columnGroupPaddingTop
- columnGroupPaddingBottom
This method is also used by the edit code, to place the editor. When placing the editor, usePadding is set to falst, so the editor occupies the entire cell to prevent the text of the cells from showing.
Params:
Name | Type | Attribute | Description |
cellRenderer | * | The renderer to place. Can be the actual renderer, or the editor. |
|
unscaledWidth | * | The width of the cell. |
|
unscaledHeight | * | The height of the cell. |
|
usePadding | * | Flag to apply padding while figuring out the size of the renderer |
Return:
* | a new Point object with paddingTop and paddingLeft as y and x properties. |
public setActualSize(w: *, h: *) source
To set the actualsize value using width and height values.
Override:
UIComponent#setActualSizeParams:
Name | Type | Attribute | Description |
w | * | ||
h | * |
public setColumn(value: *) source
The FlexDataGridColumnLevel associated with this cell. This set on initialize. This is usually never null.
Params:
Name | Type | Attribute | Description |
value | * |
public setEnabled(val: *) source
Is this enabled cell
Override:
UIComponent#setEnabledParams:
Name | Type | Attribute | Description |
val | * |
public setHeight(value: *) source
Override:
UIComponent#setHeightParams:
Name | Type | Attribute | Description |
value | * |
public setRendererFactory(value: *) source
The factory class used for initializing the cell. This is arrived at by calling the deriveRenderer method of the associated column.
Params:
Name | Type | Attribute | Description |
value | * |
public setRendererSize(cellRenderer: *, w: *, h: *) source
Given a renderer, sets the size on basis of whether or not there are vertical and horizotnal gridlines . If there are vertical gridlines, sets the width to width minus verticalGridLineThickness If there are vertical gridlines, sets the height to width minus horizontalGridLineThickness
Params:
Name | Type | Attribute | Description |
cellRenderer | * | ||
w | * | ||
h | * |
public setSelectable(val: *) source
Params:
Name | Type | Attribute | Description |
val | * |
public setText(val: *) source
This is the actual text to display in the cell. This is just a placeholder for the text. Ultimately this value is applied to the renderers text property. This is why, if you specify a custom renderer that exposes a text property, the grid automatically applies the result of the column.itemToLabel method on the associated rowInfo.data object to the text property of the itemRenderer.
Override:
UIComponent#setTextParams:
Name | Type | Attribute | Description |
val | * |
public setTruncateToFit(val: *) source
Params:
Name | Type | Attribute | Description |
val | * |
public setWidth(value: *) source
Setting the width.
Override:
UIComponent#setWidthParams:
Name | Type | Attribute | Description |
value | * |
public setWordWrap(val: *) source
This flag is a used for enabling the wordWrap on the associated renderer. Please note, if you define an item renderer, setting wordWrap will only have an impact if you define a renderer that exposes a wordWrap property. When you specify wordWrap on the associated column, the grid will set this flag to true. It will also use a predefined item renderer that has a wordWrap property, unless you specify a custom renderer. If you specify a custom renderer, then this renderer must assume responsibility for exposing a wordWrap property and handling wordWrap appropriately.
Params:
Name | Type | Attribute | Description |
val | * |
public updateDisplayList(w: *, h: *) source
Called as a part of render phase.
Override:
UIComponent#updateDisplayListParams:
Name | Type | Attribute | Description |
w | * | ||
h | * |