Cogito, ergo sum

UE3:UIComp_ListPresenter (UT3)

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UT3 Object >> Component >> UIComponent >> UIComp_ListComponentBase >> UIComp_ListPresenter
Package: 
Engine
Within class: 
UIList
Implemented interfaces
CustomPropertyItemHandler
Direct subclasses:
UIComp_ListPresenterCascade, UIComp_ListPresenterTree, UIComp_UTUIMenuListPresenter
This class in other games:
UDK

Resonsible for how the data associated with this list is presented. Updates the list's operating parameters (CellHeight, CellWidth, etc.) according to the presentation type for the data contained by this list.

Routes render messages from the list to the individual elements, adding any additional data necessary for the element to understand how to render itself. For example, a listdata component might add that the element being rendered is the currently selected element, so that the element can adjust the way it renders itself accordingly. For a tree-type list, the listdata component might add whether the element being drawn is currently open, has children, etc.

Copyright 1998-2007 Epic Games, Inc. All Rights Reserved.

Properties[edit]

Property group 'Image'[edit]

ColumnHeaderBackground[edit]

Type: UITexture

Array size: 3 (EColumnHeaderState.COLUMNHEADER_MAX)

Modifiers: instanced, editinlineuse

Optional background image for the column headers; only applicable if bDisplayColumnHeaders is TRUE.

ColumnHeaderBackgroundCoordinates[edit]

Type: UIRoot.TextureCoordinates

Array size: 3 (EColumnHeaderState.COLUMNHEADER_MAX)

Texture atlas coordinates for the column header background textures; only applicable if bDisplayColumnHeaders is TRUE. Values of 0 indicate that the texture is not part of an atlas.

ListItemOverlay[edit]

Type: UITexture

Array size: 4 (EUIListElementState.ELEMENT_MAX)

Modifiers: instanced, editinlineuse

The image to render over each element.

Default value, index 0: UITexture'Engine.Default__UIComp_ListPresenter:NormalOverlayTemplate'

Default value, index 1: UITexture'Engine.Default__UIComp_ListPresenter:ActiveOverlayTemplate'

Default value, index 2: UITexture'Engine.Default__UIComp_ListPresenter:SelectionOverlayTemplate'

Default value, index 3: UITexture'Engine.Default__UIComp_ListPresenter:HoverOverlayTemplate'

ListItemOverlayCoordinates[edit]

Type: UIRoot.TextureCoordinates

Array size: 4 (EUIListElementState.ELEMENT_MAX)

the texture atlas coordinates for the SelectionOverlay. Values of 0 indicate that the texture is not part of an atlas.

Property group 'UIComp_ListPresenter'[edit]

bDisplayColumnHeaders[edit]

Type: bool

Modifiers: private

Controls whether column headers are rendered for this list

Default value: True

ElementSchema[edit]

Type: UIElementCellSchema

Modifiers: const, private

Contains the formatting information configured for each individual cell in the UI editor. Private/const because changing the value of this property invalidates all data in this, requiring that all data be refreshed.

ListItems[edit]

Type: array<UIListItem>

Modifiers: editconst, editinline, transient, noimport, init

Contains the element cells for each list item. Each item in the ElementCells array is the list of UIListElementCells for the corresponding element in the list.

Internal variables[edit]

bReapplyFormatting[edit]

Type: bool

Modifiers: transient

set to indicate that the cells in this list needs to recalculate their extents

Subobjects[edit]

ActiveOverlayTemplate[edit]

Class: Engine.UITexture

No new values.

HoverOverlayTemplate[edit]

Class: Engine.UITexture

No new values.

NormalOverlayTemplate[edit]

Class: Engine.UITexture

No new values.

SelectionOverlayTemplate[edit]

Class: Engine.UITexture

No new values.

Structs[edit]

UIElementCellSchema[edit]

Modifiers: native

Contains the data store bindings for the individual cells of a single element in this list. This struct is used for looking up the data required to fill the cells of a list element when a new element is added.

array<UIListElementCellTemplate> Cells 
contains the data store bindings used for creating new elements in this list

UIListElementCell[edit]

Modifiers: native

Corresponds to a single cell in a UIList (intersection of a row and column). Generally maps directly to a single item in the list, but in the case of multiple columns or rows, a single list item may be associated with multiple UIListElementCells (where each column for that row is represented by a UIListElementCell).

The data for a UIListElementCell is accessed using a UIString. Contains one UIListCellRegion per UIStringNode in the UIString, which can be configured to manually controls the extent for each UIStringNode.

int ContainerElementIndex 
index of the UIListElement that contains this UIListElementCell
UIList OwnerList 
pointer to the list that contains this element cell
UIListString ValueString 
A UIString which contains data for this cell
UIRoot.UIStyleReference CellStyle[4] (EUIListElementState.ELEMENT_MAX) 
Allows the designer to specify a different style for each cell in a column/row

Default values:

Property Value
CellStyle[-1] (ELEMENT_Active)
Member Value
RequiredStyleClass Class'Engine.UIStyle_Combo'
CellStyle[-1] (ELEMENT_Normal)
Member Value
RequiredStyleClass Class'Engine.UIStyle_Combo'
CellStyle[-1] (ELEMENT_Selected)
Member Value
RequiredStyleClass Class'Engine.UIStyle_Combo'
CellStyle[-1] (ELEMENT_UnderCursor)
Member Value
RequiredStyleClass Class'Engine.UIStyle_Combo'

UIListElementCellTemplate[edit]

Extends: UIListElementCell

Modifiers: native

Contains the data binding information for a single row or column in a list. Also used for rendering the list's column headers, if configured to do so.

name CellDataField 
Contains the data binding for each cell group in the list (row if columns are linked, columns if

rows are linked, individual cells if neither are linked

string ColumnHeaderText 
The string that should be rendered in the header for the column which displays the data for this cell.
UIRoot.UIScreenValue_Extent CellSize 
The custom size for the linked cell (column/row). A value of 0 indicates that the row/column's size should be

controlled by the owning list according to its cell auto-size configuration.

float CellPosition 
The starting position of this cell, in absolute pixels.

UIListItem[edit]

Modifiers: native

Corresponds to a single item in a UIList, which may be any type of data structure.

Contains a list of UIListElementCells, which correspond to one or more data fields of the underlying data structure associated with the list item represented by this object. For linked-column lists, each UIListElementCell is typically associated with a different field from the underlying data structure.

UIListItemDataBinding DataSource 
The list element associated with the cells contained by this UIElementCellList.
array<UIListElementCell> Cells 
the cells associated with this list element
UIRoot.EUIListElementState ElementState 
The current state of this cell (selected, active, etc.)

UIListItemDataBinding[edit]

Modifiers: native

UIListElementCellProvider DataSourceProvider 
The data provider that contains the data for this list element
name DataSourceTag 
The name of the field from DataSourceProvider that contains the array of data corresponding to this list element
int DataSourceIndex 
The index into the array [DataSourceTag] in DataSourceProvider that this list element represents.

Native functions[edit]

EnableColumnHeaderRendering[edit]

native final function EnableColumnHeaderRendering (bool bShouldRenderColHeaders)

Changes whether this list renders colum headers or not. Only applicable if the owning list's CellLinkType is LINKED_Columns

FindElementIndex[edit]

native final function int FindElementIndex (int DataSourceIndex) const

Find the index of the list item which corresponds to the data element specified.

Parameters:

  • DataSourceIndex - the index into the list element provider's data source collection for the element to find.

Returns:

the index [into the ListItems array] for the element which corresponds to the data element specified, or INDEX_NONE if none where found or DataSourceIndex is invalid.

GetCellSchemaProvider[edit]

native final function UIListElementCellProvider GetCellSchemaProvider () const

Returns the object that provides the cell schema for this component's owner list (usually the class default object for the class of the owning list's list element provider)

ShouldAdjustListBounds[edit]

native final function bool ShouldAdjustListBounds (UIRoot.EUIOrientation Orientation) const

Returns whether the list's bounds will be adjusted for the specified orientation considering the list's configured autosize and cell link type values.

Parameters:

  • Orientation - the orientation to check auto-sizing for

ShouldRenderColumnHeaders[edit]

native final function bool ShouldRenderColumnHeaders () const

Returns whether this list should render column headers