Table of Contents
Extends: Group
Description
The ArrayGrid node class is an abstract base class that provides functionality to the list and grid node classes that are extended from ArrayGrid. The field value settings and their effect in this abstract base class depend in many cases on whether a list, or a grid, node class is extended from ArrayGrid, and the specific type of list or grid.
The following node classes extended from ArrayGrid derive their basic functionality from the ArrayGrid abstract node class:
ArrayGrid is not meant to be instantiated directly by channel code.
Fields
Field | Type | Default | Use | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
content | ContentNode | none | Specifies the content meta-data for the list or grid. This field must be set with a ContentNode node that specifies the content meta-data for the list or grid in order for the list or grid to be displayed. See the Data Bindings section of each list or grid reference description for details on the content meta-data that must be specified in the ContentNode node. | ||||||||
itemSize | vector2d | [0,0] | Specifies the width and height of each item in the list or grid. For list or grid items that are posters, itemSize is the value of a basePosterSize field and any sub-elements included with the poster. | ||||||||
itemSpacing | vector2d | [0,0] | Specifies the horizontal and vertical spacing between the list or grid items. For lists, the vector2d Y-value specifies the vertical spacing between items in the list, and the vector2d X-value is ignored. | ||||||||
numRows | integer | 0 | Specifies the number of visible rows displayed. Note that the actual number of rows may be more or less than the number specified depending on the number of items in the list or grid content. | ||||||||
numColumns | integer | 0 | Specifies the number of columns in a grid. This field is not used for lists. | ||||||||
focusRow | integer | 0 | Specifies the row that will have fixed focus if the vertFocusAnimationStyle field value is set to fixedFocusWrap . | ||||||||
focusColumn | integer | 0 | Specifies the column that will have fixed focus for grids if the horizFocusAnimationStyle field value is set to fixedFocusWrap . This field is not used for lists. | ||||||||
horizFocusAnimationStyle | option string | "floatingFocus" | Specifies the how the focus indicator moves in a row of grid items in response to the remote direction pad Left and Right key presses. This field is not used for lists. The possible values are:
| ||||||||
vertFocusAnimationStyle | option string | "floatingFocus" | Specifies the how the focus indicator moves in a list or a column of grid items in response to the remote direction pad Up and Down key presses. The possible values are:
| ||||||||
drawFocusFeedbackOnTop | Boolean | false | If the drawFocusFeedback field value is set to true , specifies whether the specified focus indicator bitmap is drawn on top of the focused list or grid items. The default value draws the specified focus indicator bitmap below the focused list or grid item. | ||||||||
drawFocusFeedback | Boolean | true | Causes a specified bitmap to be drawn on list or grid items to indicate focus has moved to that item. | ||||||||
fadeFocusFeedbackWhenAutoScrolling | Boolean | false | This function is available in firmware 7.7 or later. When set to true, the focus feedback indicator will quickly fade out when scrolling multiple items and fade back in when the scrolling ends. The focus feedback indicator will also after in and out when using the FFW/Rewind keys to scroll a page at a time. Additionally, the focus behavior has been modified for situations where all the items in a RowList row are visible on screen at once. In the past, the focus would step once, then begin to scroll smoothly. Now, the focus steps one-by-one through each item. | ||||||||
currFocusFeedbackOpacity | float | read-only | This function is available in firmware 7.7 or later. This field provides access to the current opacity of the focus feedback indicator. It can be used to have other items on the screen fade in/out when the focus feedback indicator fades in/out. Additionally, the focus behavior has been modified for situations where all the items in a RowList row are visible on screen at once. In the past, the focus would step once, then begin to scroll smoothly. Now, the focus steps one-by-one through each item. | ||||||||
focusBitmapUri | uri | "" | If the drawFocusFeedback field value is set to true , specifies a custom bitmap to be drawn on list or grid items to indicate the focus has moved to that item. Only set this field to use a bitmap with a different appearance than the system default. In most cases, you will want to use a 9-patch PNG bitmap with both expandable regions as well as margins to fit around the item, which is the type of bitmap used as the system default. | ||||||||
focusFootprintBitmapUri | uri | "" | If the drawFocusFeedback field value is set to true , specifies a custom bitmap to be drawn on list or grid items to indicate focus on that item, when the list or grid itself does not have focus. Only set this field to use a bitmap with a different appearance than the system default. In most cases, you will want to use a 9-patch PNG bitmap with both expandable regions as well as margins to fit around the item, which is the type of bitmap used as the system default. | ||||||||
focusBitmapBlendColor | color | 0xFFFFFFFF | Blend the graphic image specified by focusBitmapUri with the specified color. If set to the default, 0xFFFFFFFF, no color blending will occur. Set this field to show a focus indicator graphic image with a different color than the image specified by focusBitmapUri . | ||||||||
focusFootprintBlendColor | color | 0xFFFFFFFF | Blend the graphic image specified by focusFootprintBitmapUri with the specified color. If set to the default, 0xFFFFFFFF, no color blending will occur. Set this field to show a focus footprint indicator graphic image with a different color than the image specified by focusFootprintBitmapUri . | ||||||||
wrapDividerBitmapUri | uri | "" | If the | ||||||||
wrapDividerWidth | float | 0 | If the vertFocusAnimationStyle field value is set to fixedFocusWrap , specifies the width of a bitmap used as a visual divider between the last and first list or grid items when the list or grid wraps. Only set this field to use a value with a different appearance than the system default. | ||||||||
wrapDividerHeight | float | 36 | If the vertFocusAnimationStyle field value is set to fixedFocusWrap , specifies the height of a bitmap used as a visual divider between the last and first list or grid items, when the list or grid wraps. Only set this field to use a value with a different appearance than the system default. | ||||||||
fixedLayout | Boolean | false | Specifies that a grid will have a layout of items of different widths configured by parameters included in a ContentNode node for the grid. This field is not used by lists. | ||||||||
numRenderPasses | integer | 1 | Specifies the number of rendering operations to display a complex list or grid. This allows you to achieve a performance increase by specifying that individual sub-elements of the list or grid items occur on sequential rendering operations, rather than all of the item sub-elements being rendered in one rendering operation, which is the default. If you set this field to a value greater than 1, you must specify the rendering operation number for each of the item sub-elements as the renderPass field value for that sub-element. No sub-element that has a renderPass field value of 0 (the default), or has a renderPass field value greater than the value of the numRenderPasses field, will render. | ||||||||
rowHeights | array of floats | [] | Specifies differing heights for each list or grid row, to allow the height of each row to vary from row to row. The specified values override the | ||||||||
columnWidths | array of floats | [] | Specifies differing widths for each grid column, to allow the width of each column to vary from column to column. This field is not used by lists. The specified values override the | ||||||||
rowSpacings | array of floats | [] | Specifies differing spaces between each list or grid row, to allow the spacing between rows to vary from row to row. The specified values override the | ||||||||
columnSpacings | array of floats | [] | Specifies differing spaces between each grid column, to allow the spacing between columns to vary from column to column. This field is not used by lists. The specified values override the | ||||||||
sectionDividerBitmapUri | uri | "" | If the ContentNode node specifies sections for a list or grid, specifies a custom bitmap to use as a visual divider between the sections of the list or grid. Only set this field to use a bitmap with a different appearance than the system default. For sections that do not include an icon or a title, the system default or custom bitmap specified as the | ||||||||
sectionDividerFont | font | system default | If the ContentNode node specifies sections for a list or grid, specifies a custom font to use for the section title text. Only set this field to use a different font than the system default. | ||||||||
sectionDividerTextColor | color | system default | If the ContentNode node specifies sections for a list or grid, specifies a custom color to use for the section title text. Only set this field to use a different text color than the system default. | ||||||||
sectionDividerSpacing | float | 0.0 | If the ContentNode node specifies sections for a list or grid, and the section dividers are specified to include an icon and/or a label, specifies the spacing between the icon, label, and section divider bitmap. | ||||||||
sectionDividerWidth | float | 0.0 | If the ContentNode node specifies sections for a list or grid, specifies the width of the section divider bitmap. | ||||||||
sectionDividerHeight | float | 0.0 | If the ContentNode node specifies sections for a list or grid, specifies the height of the section divider bitmap. | ||||||||
sectionDividerMinWidth | float | 0.0 | If the ContentNode node specifies sections for a list or grid, specifies the minimum width of the section divider bitmap. | ||||||||
sectionDividerLeftOffset | float | 0.0 | If the ContentNode node specifies sections for a list or grid, specifies the left offset of the section divider from the list or grid. | ||||||||
itemClippingRect | rect2d | [ 0.0, 0.0, 0.0, 0.0 ] | Specifies a clipping region for the list or grid items. | ||||||||
itemSelected | integer | 0 | Read-Only | ||||||||
itemFocused | integer | 0 | Read-Only | ||||||||
itemUnfocused | integer | 0 | Read-Only | ||||||||
jumpToItem | integer | 0 | Write-Only When set to a valid item index, causes the list or grid to immediately update so that the item at the specified index moves into focus, or focus moves to the item. | ||||||||
animateToItem | integer | 0 | Write-Only When set to a valid item index, causes the list or grid to quickly scroll so that the item at the specified index moves into focus, or focus moves to the item. | ||||||||
currFocusRow | float | 0.0 | Gives access to which row of a grid is in the focus position as the items scrolling around. So, currFocusRow = 3.7 would mean that item 3 occupies 30% of the focus position while item 4 occupies 70% of the focus position. To maximize performance, the field should be kept to a minimum, as these scripts will run once during each render. | ||||||||
currFocusColumn | float | 0.0 | Gives access to which column of a grid is in the focus position as the items scrolling around. So, currFocusColumn = 3.7 would mean that item 3 occupies 30% of the focus position while item 4 occupies 70% of the focus position. To maximize performance, the field should be kept to a minimum, as these scripts will run once during each render | ||||||||
currFocusSection | float | 0.0 | Gives access to which section of a grid is in the focus position as the items scrolling around. So, currFocusSection = 3.7 would mean that item 3 occupies 30% of the focus position while item 4 occupies 70% of the focus position. To maximize performance, the field should be kept to a minimum, as these scripts will run once during each render |
Data Bindings
Each node class extended from the ArrayGrid abstract node class will have custom data bindings.