Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames

Engine.UIComp_ListPresenter

Extends
UIComp_ListComponentBase
Modifiers
native ( inherit ) DependsOn ( UIDataStorePublisher ) implements ( CustomPropertyItemHandler )

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-2008 Epic Games, Inc. All Rights Reserved.

Core.Object
|   
+-- Core.Component
   |   
   +-- Engine.UIComponent
      |   
      +-- Engine.UIComp_ListComponentBase
         |   
         +-- Engine.UIComp_ListPresenter

Direct Known Subclasses:

UIComp_ListPresenterCascade, UIComp_ListPresenterTree, UIComp_UTUIMenuListPresenter

Variables Summary
boolbReapplyFormatting
Image
bDisplayColumnHeaders>
bDisplayColumnHeaders>
TextureCoordinatesListItemOverlayCoordinates[EUIListElementState.ELEMENT_MAX]
UITextureListItemOverlay[EUIListElementState.ELEMENT_MAX]
UIComp_ListPresenter
boolbDisplayColumnHeaders
UIElementCellSchemaElementSchema
array<UIListItem>ListItems

Structures Summary
UIElementCellSchema
Cells
UIListElementCell
ContainerElementIndex, OwnerList, ValueString, CellStyle[EUIListElementState.ELEMENT_MAX]
UIListElementCellTemplate
CellDataField, ColumnHeaderText, CellSize, CellPosition
UIListItem
DataSource, Cells, ElementState
UIListItemDataBinding
DataSourceProvider, DataSourceTag, DataSourceIndex

Functions Summary
function EnableColumnHeaderRendering (bool bShouldRenderColHeaders=true)
functionint FindElementIndex (int DataSourceIndex ) con)
functionUIListElementCellProvider GetCellSchemaProvider () con)
functionbool ShouldAdjustListBounds (EUIOrientation Orientation ) con)
functionbool ShouldRenderColumnHeaders () con)


Variables Detail

bReapplyFormatting Source code

var transient bool bReapplyFormatting;
set to indicate that the cells in this list needs to recalculate their extents

Image

> Source code

var(Image) instanced editinlineuse UITexture ColumnHeaderBackground[EColumnHeaderState.COLUMNHEADER_MAX] < EditCondition = bDisplayColumnHeaders >;
Optional background image for the column headers; only applicable if bDisplayColumnHeaders is TRUE.

> Source code

var(Image) TextureCoordinates ColumnHeaderBackgroundCoordinates[EColumnHeaderState.COLUMNHEADER_MAX] < EditCondition = bDisplayColumnHeaders >;
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.

ListItemOverlayCoordinates[EUIListElementState.ELEMENT_MAX] Source code

var(Image) TextureCoordinates ListItemOverlayCoordinates[EUIListElementState.ELEMENT_MAX];
the texture atlas coordinates for the SelectionOverlay. Values of 0 indicate that the texture is not part of an atlas.

ListItemOverlay[EUIListElementState.ELEMENT_MAX] Source code

var(Image) instanced editinlineuse UITexture ListItemOverlay[EUIListElementState.ELEMENT_MAX];
The image to render over each element.

UIComp_ListPresenter

bDisplayColumnHeaders Source code

var(UIComp_ListPresenter) private bool bDisplayColumnHeaders;
Controls whether column headers are rendered for this list

ElementSchema Source code

var(UIComp_ListPresenter) const private UIElementCellSchema ElementSchema;
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 Source code

var(UIComp_ListPresenter) editconst editinline transient noimport init array<UIListItem> ListItems;
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.


Structures Detail

UIElementCellSchema Source code

struct UIElementCellSchema
{
var(UIComp_ListPresenter) editinline array<UIListElementCellTemplate> Cells;
};
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.
Cells:
contains the data store bindings used for creating new elements in this list

UIListElementCell Source code

struct UIListElementCell
{
var UIStyleReference CellStyle[EUIListElementState.ELEMENT_MAX];
var const native transient int ContainerElementIndex;
var const transient UIList OwnerList;
var transient UIListString ValueString;
};
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.
CellStyle[EUIListElementState.ELEMENT_MAX]:
Allows the designer to specify a different style for each cell in a column/row
ContainerElementIndex:
index of the UIListElement that contains this UIListElementCell
OwnerList:
pointer to the list that contains this element cell
ValueString:
A UIString which contains data for this cell

UIListElementCellTemplate Source code

struct UIListElementCellTemplate extends UIListElementCell
{
var(UIComp_ListPresenter) editinline editconst name CellDataField;
var float CellPosition;
var(UIComp_ListPresenter) UIScreenValue_Extent CellSize;
var(UIComp_ListPresenter) editconst string ColumnHeaderText;
};
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.
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
CellPosition:
The starting position of this cell, in absolute pixels.
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.
ColumnHeaderText:
The string that should be rendered in the header for the column which displays the data for this cell.

UIListItem Source code

struct UIListItem
{
var(UIComp_ListPresenter) editinline editconst editfixedsize array<UIListElementCell> Cells;
var const UIListItemDataBinding DataSource;
var(UIComp_ListPresenter) editconst transient noimport EUIListElementState ElementState;
};
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.
Cells:
the cells associated with this list element
DataSource:
The list element associated with the cells contained by this UIElementCellList.
ElementState:
The current state of this cell (selected, active, etc.)

UIListItemDataBinding Source code

struct UIListItemDataBinding
{
var int DataSourceIndex;
var UIListElementCellProvider DataSourceProvider;
var name DataSourceTag;
};
Applies the resolved style data for the column header style to the schema cells' strings. This function is called anytime the header style data that is applied to the schema cells is no longer valid, such as when the owning list's menu state is changed.
@param ResolvedStyle the style resolved by the style reference
DataSourceIndex:
The index into the array [DataSourceTag] in DataSourceProvider that this list element represents.
DataSourceProvider:
The data provider that contains the data for this list element
DataSourceTag:
The name of the field from DataSourceProvider that contains the array of data corresponding to this list element


Functions Detail

EnableColumnHeaderRendering Source code

native final function EnableColumnHeaderRendering ( bool bShouldRenderColHeaders=true )
Changes whether this list renders colum headers or not. Only applicable if the owning list's CellLinkType is LINKED_Columns

FindElementIndex Source code

native final const function int FindElementIndex ( int DataSourceIndex ) con )
Find the index of the list item which corresponds to the data element specified.
@param DataSourceIndex the index into the list element provider's data source collection for the element to find.
@return 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 Source code

native final const function UIListElementCellProvider GetCellSchemaProvider ( ) con )
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 Source code

native final const function bool ShouldAdjustListBounds ( EUIOrientation Orientation ) con )
Returns whether the list's bounds will be adjusted for the specified orientation considering the list's configured autosize and cell link type values.
@param Orientation the orientation to check auto-sizing for

ShouldRenderColumnHeaders Source code

native final const function bool ShouldRenderColumnHeaders ( ) con )
Returns whether this list should render column headers


Defaultproperties

defaultproperties
{
   Begin Object Class=UITexture Name=NormalOverlayTemplate ObjName=NormalOverlayTemplate Archetype=UITexture'Engine.Default__UITexture'
      Name="NormalOverlayTemplate"
      ObjectArchetype=UITexture'Engine.Default__UITexture'
   End Object
   ListItemOverlay(0)=UITexture'Engine.Default__UIComp_ListPresenter:NormalOverlayTemplate'
   Begin Object Class=UITexture Name=ActiveOverlayTemplate ObjName=ActiveOverlayTemplate Archetype=UITexture'Engine.Default__UITexture'
      Name="ActiveOverlayTemplate"
      ObjectArchetype=UITexture'Engine.Default__UITexture'
   End Object
   ListItemOverlay(1)=UITexture'Engine.Default__UIComp_ListPresenter:ActiveOverlayTemplate'
   Begin Object Class=UITexture Name=SelectionOverlayTemplate ObjName=SelectionOverlayTemplate Archetype=UITexture'Engine.Default__UITexture'
      Name="SelectionOverlayTemplate"
      ObjectArchetype=UITexture'Engine.Default__UITexture'
   End Object
   ListItemOverlay(2)=UITexture'Engine.Default__UIComp_ListPresenter:SelectionOverlayTemplate'
   Begin Object Class=UITexture Name=HoverOverlayTemplate ObjName=HoverOverlayTemplate Archetype=UITexture'Engine.Default__UITexture'
      Name="HoverOverlayTemplate"
      ObjectArchetype=UITexture'Engine.Default__UITexture'
   End Object
   ListItemOverlay(3)=UITexture'Engine.Default__UIComp_ListPresenter:HoverOverlayTemplate'
   bDisplayColumnHeaders=True
   Name="Default__UIComp_ListPresenter"
   ObjectArchetype=UIComp_ListComponentBase'Engine.Default__UIComp_ListComponentBase'
}

Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames
Creation time: sk 18-3-2018 10:00:46.478 - Created with UnCodeX