List (PRIM_LIST)

Tree and list control supporting data entry and user defined cells

Ancestors - Control (PRIM_CTRL)Object (PRIM_OBJT)

Details

The List control is a highly functional list that supports tree structures, data entry and user defined cell content.

In its simplest form, List is a typical two dimensional column based LANSA list control managed by the LANSA list commands, such as ADD_ENTRY, GET_ENTRY, SELECTLIST etc. Each column has a source field and data values are mapped in and out of the list as items are used.

List can also be used as a tree. List Items can be parented to other list items and the List control will manage the appearance, expanding and collapsing items as required.

Unlike other LANSA list controls such as Tree and Grid which use a single column type, List has specific column types to support the different types of content. This extends beyond the typical field based columns to include image, check box, button and reusable part.

Supported column types - string, number, date time, image, button, check box and reusable part.

List also supports the use of dataless columns. For example, a list may consist of nothing more that checkboxes if required. Rather than relying on field values the column currentitem property can be accessed.

Columns work in 2 ways. Firstly, the definition of the column is used as a prototype when an entry is added. So, a button column defined with a caption of "Delete" will show a button in each item with a caption of "Delete". Secondly, all column types have a CurrentItem property that provides access to the individual instance.

List is also used as the basis for the DropDown control. The result is that all the features available in list are also available in the drop down area of DropDown.

Note

Execution in the browser does not lend itself to high volumes of data. Adding thousands of entries to a list will impact performance. Instead, you should use improved filtering, page at a time and load on demand strategies to ensure that the data is limited.

Example

This example shows a simple list with a number and button columns. The button is hidden if the row is an even numbered row. Clicking the button will delete the row.

     Begin_Com Role(*EXTENDS #PRIM_WEB) Height(456) Width(864) Layoutmanager(#TableLayout1)
Define_Com Class(#PRIM_TBLO) Name(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Column) Name(#Column1) Displayposition(1) Parent(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Row) Name(#Row1) Displayposition(1) Parent(#TableLayout1)
Define_Com Class(#PRIM_TBLO.Item) Name(#List1Item1) Column(#Column1) Manage(#List) Parent(#TableLayout1) Row(#Row1)

Define_Com Class(#PRIM_LIST) Name(#List) Displayposition(1) Left(0) Parent(#COM_OWNER) Tabposition(1) Top(0) Height(456) Width(864) Rowheight(33)
Define_Com Class(#PRIM_LIST.Number) Name(#ColumnXDEMONUMB1) Displayposition(1) Increment(1) Parent(#List) Source(#xDemoNumber) Wrap(False)
Define_Com Class(#PRIM_LIST.Button) Name(#ColumnButton1) Columnwidth(100) Displayposition(2) Parent(#List) Caption('Delete') Cellsizing(None) Cellwidth(80)

Evtroutine Handling(#Com_Owner.CreateInstance)

Begin_Loop Using(#xDemoNumber) To(10)

Add_Entry To_List(#List)

#ColumnButton1.CurrentItem.Visible := (#xDemoNumber.mod( 2 ) = 0)

End_Loop

Endroutine

Evtroutine Handling(#ColumnButton1.Click)

Dlt_Entry Number(#List.CurrentItem.Entry)

Endroutine

End_Com

Properties

Name

Description

AlternateItemThemeDrawStyle

ThemeDrawStyle to be applied to alternate items

AutoSelectItem

Automatically select the first item when the list is loaded

BusyUpdates

BusyUpdates specifies how the control updates itself Inherited from Control (PRIM_CTRL)

BusyUpdatesOfParent

BusyUpdatesOfParent specifies whether the parent controls updates Inherited from Control (PRIM_CTRL)

CanFocus

CanFocus returns a value indicating whether the control can receive keyboard focus Inherited from Control (PRIM_CTRL)

CheckBoxes

Show a checkbox for each item in the list

ColumnDrag

Specifies whether columns can be reordered by the user

ColumnHeaderHeight

Height of the column header area in pixels

ColumnHeaderSizing

Determines how column headers will resize

ColumnLines

Show the column separator lines

ColumnMarginLeft

Left Margin of column in pixels

ColumnMarginRight

Right Margin of column in pixels

ColumnMouseOverStyle

Style applied to the column heading when mouse over

ColumnMouseOverStyles

Collection of styles applied to the column heading when mouse over

ColumnPressedStyle

Style applied to the column heading on mouse down

ColumnPressedStyles

Collection of styles applied to the column heading on mouse down

Columns

Collection of columns defined for the list

ColumnSortArrow

Show the column sort arrow if the primary sort

ColumnStyle

Style applied to the column heading on mouse down

ColumnStyles

Collection of styles applied to the column heading

ColumnThemeDrawStyle

Name of the Theme DrawStyle to be applied to the column headings

ComponentClassName

ComponentClassName is the name of the component's class. Inherited from Object (PRIM_OBJT)

ComponentMembers

ComponentMembers provides access to all the member components of this component Inherited from Object (PRIM_OBJT)

ComponentPatternName

ComponentPatternName is used to qualify the class of the component. Inherited from Object (PRIM_OBJT)

ComponentTag

Generic space allowing a value to be stored for the instance Inherited from Object (PRIM_OBJT)

ComponentType

ComponentType gives you access to the type information about the component Inherited from Object (PRIM_OBJT)

ComponentTypeName

ComponentTypeName is the fully qualified name of the component's class. Inherited from Object (PRIM_OBJT)

CurrentItem

Base class for all Prim_List Current Item classes

CurrentPage

Specifies the current page to be displayed

Cursor

Cursor sets the cursor image Inherited from Control (PRIM_CTRL)

DisplayPosition

DisplayPosition determines the order in which components are shown Inherited from Control (PRIM_CTRL)

DragStyle

DragStyle determines how a component can be dragged Inherited from Control (PRIM_CTRL)

Enabled

Enable activates/deactivates the component Inherited from Control (PRIM_CTRL)

EnterKeyStyle

EnterKeyStyle determines what happens when Enter key is pressed in a list

Filter

String to be searched for to filter the list

FixedPosition

Fix the control position so that it does not move if the parent is scrolled Inherited from Control (PRIM_CTRL)

Focus

Focus tells whether the component has focus Inherited from Control (PRIM_CTRL)

FocusColumn

Reference to the active column in the list

FocusedStyle

Reference to a style to be applied when the control is focus Inherited from Control (PRIM_CTRL)

FocusedStyles

Collection of styles to be applied when the control is focus Inherited from Control (PRIM_CTRL)

FocusItem

Reference to the focus item in the list

Handle

Returns the Windows handle in desktop applications Inherited from Control (PRIM_CTRL)

Height

The height of the control in pixels Inherited from Control (PRIM_CTRL)

Hint

Caption displayed when the mouse hovers over the control Inherited from Control (PRIM_CTRL)

HintPopup

HintPopup allows a PopupPanel instance to be used instead of the default hint text box Inherited from Control (PRIM_CTRL)

HintShow

Enabled or disable the appearance of hints Inherited from Control (PRIM_CTRL)

HintShowOfParent

Delegate hints appearance to the parent control Inherited from Control (PRIM_CTRL)

HintTitle

HintTitle defines the text shown at the top of the hint window in emphasized text Inherited from Control (PRIM_CTRL)

HorizontalScrollInc

HorizontalScrollInc specifies the pixel increment for horizontal scroll bar.

HorizontalScrollPos

HorizontalScrollPos sets the position of the horizontal scroll bar

IsAnimating

IsAnimating indicates that a control is currently being animated Inherited from Control (PRIM_CTRL)

IsRealized

True if the control is currently realized Inherited from Control (PRIM_CTRL)

Items

Collection of items in the list

ItemThemeDrawStyle

Name of the Theme DrawStyle to be applied to the items

KeyboardPositioning

Determines how the list will position based on keyboard input

Left

Position of the control relative to the left boundary of its parent Inherited from Control (PRIM_CTRL)

Modified

Modified indicates that the contents of the component have changed Inherited from Control (PRIM_CTRL)

ModifiedRules

Controls when the Modified property is set to True

MouseOver

MouseOver determines whether the mouse is directly over a control Inherited from Control (PRIM_CTRL)

MouseOverStyle

MouseOverStyle defines the style to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL)

MouseOverStyles

MouseOverStyles is a collection of styles to be applied to a control when the mouse is over it Inherited from Control (PRIM_CTRL)

Name

Name identifies the component Inherited from Object (PRIM_OBJT)

NotificationStyle

NotificationStyle controls how events are triggered

Opacity

Opacity denotes the appearance of a control in terms of its interaction with its background Inherited from Control (PRIM_CTRL)

Owner

Owner owns this component Inherited from Object (PRIM_OBJT)

Parent

Reference to the control in which this control is visually positioned Inherited from Control (PRIM_CTRL)

Popup

Popup allows a PopupPanel instance to be used instead of the typical right click popup menu Inherited from Control (PRIM_CTRL)

PopupMenu

Reference to a PopupMenu to be shown on a right click Inherited from Control (PRIM_CTRL)

Rotation

Rotation allows a control to rotate a number of degrees about a given origin Inherited from Control (PRIM_CTRL)

RotationOriginLeft

RotationOriginLeft defines the left coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL)

RotationOriginTop

RotationOriginTop defines the top coordinate of an imaginary point around which a control will rotate Inherited from Control (PRIM_CTRL)

RowHeight

Height of a row in pixels

RowLines

Show the row separator lines

RowResize

Allow rows to be resized

RowSizing

Determines how rows will resize

RowsPerPage

Specifies how many rows will appear per page

ScaleHeight

ScaleHeight is the percentage of the height to use in the visual appearance of a control Inherited from Control (PRIM_CTRL)

ScaleOriginLeft

ScaleOriginLeft defines the left coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL)

ScaleOriginTop

ScaleOriginTop defines the top coordinate of an imaginary point from which a control will scale Inherited from Control (PRIM_CTRL)

ScaleWidth

ScaleWidth is the percentage of the width to use in the visual appearance of a control Inherited from Control (PRIM_CTRL)

ScreenLeft

ScreenLeft sets the distance from the left of the screen Inherited from Control (PRIM_CTRL)

ScreenTop

ScreenTop sets the distance from the top of the screen Inherited from Control (PRIM_CTRL)

ScrollLeft

Left position of a horizontally scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL)

ScrollTop

Top position of a vertically scrolled child control relative to its parent control Inherited from Control (PRIM_CTRL)

SelectedRowCount

SelectedRowCount shows how many columns have been selected

SelectionStyle

Specifies the rules for item selection within the list

ShowPages

Show or hide the paging buttons

SkewLeft

SkewLeft defines the angle at which to skew the control horizontally Inherited from Control (PRIM_CTRL)

SkewOriginLeft

SkewOriginLeft defines the left coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL)

SkewOriginTop

SkewOriginTop defines the top coordinate of an imaginary point from which a control will skew Inherited from Control (PRIM_CTRL)

SkewTop

SkewTop defines the angle at which to skew the control vertically Inherited from Control (PRIM_CTRL)

Style

Style defines the style to be applied to a control Inherited from Control (PRIM_CTRL)

Styles

Collection of styles to be applied to the control Inherited from Control (PRIM_CTRL)

TabPosition

TabPosition sets the order of focus when the Tab key is used Inherited from Control (PRIM_CTRL)

TabStop

Set to false to stop focus being given to the control via the Tab key Inherited from Control (PRIM_CTRL)

ThemeDrawStyle

Name of the Theme DrawStyle to be applied to the control Inherited from Control (PRIM_CTRL)

Top

Position of the control relative to the top boundary of its parent Inherited from Control (PRIM_CTRL)

TouchMove

Determines how the control will respond to touch move processing Inherited from Control (PRIM_CTRL)

TouchRotate

Determines how the control will respond to touch rotation Inherited from Control (PRIM_CTRL)

TouchScale

Determines how the control will respond to touch scaling Inherited from Control (PRIM_CTRL)

TouchSize

Determines whether a control can be resized Inherited from Control (PRIM_CTRL)

TreeButtons

Show or hide the expand/collapse images

VerticalScrollInc

VerticalScrollInc specifies the pixel increment for vertical scroll bar.

VerticalScrollPos

VerticalScrollPos sets the position of the vertical scroll bar

Virtualization

Specifies if a list is a virtualized.

Visible

Show or hide the control Inherited from Control (PRIM_CTRL)

VisualStyle

VisualStyle sets the appearance Inherited from Control (PRIM_CTRL)

VisualStyleOfParent

Adopt the Visual style from the parent control Inherited from Control (PRIM_CTRL)

Width

Width of the component in pixels Inherited from Control (PRIM_CTRL)

Events

Name

Description

AnimationEnded

Fired when an animation is ended Inherited from Control (PRIM_CTRL)

Cancelled

Changed

Changed is a change in the component

CreateInstance

CreateInstance is signalled when an instance of a component is created Inherited from Control (PRIM_CTRL)

DestroyInstance

DestroyInstance is signalled when an instance of a component is about to be destroyed Inherited from Control (PRIM_CTRL)

DragDrop

Fired on mouse up to signify the end of a drag process Inherited from Control (PRIM_CTRL)

PosX, PosY, Source, Payload, AggregatedSource, Origin, Handled, DragResult

DragOver

Fired during the drag and drop process when the cursor moves over the control Inherited from Control (PRIM_CTRL)

PosX, PosY, Source, Payload, DragState, AcceptDrop, DragCursor, ShowDropHilight, AggregatedSource, Origin, Handled

EndDrag

Fired when the drag and drop process has completed Inherited from Control (PRIM_CTRL)

Source, Payload, DragResult, AggregatedSource, Origin, Handled

Enter

Fired when the Enter key is pressed

KeyCode, Char, IsAltDown, IsControlDown, IsShiftDown, Handled

GotFocus

Fired when the control receives the focus

Initialize

Fired after a component has been realized for the first time Inherited from Control (PRIM_CTRL)

ItemChanged

ItemChanged happens when an item is changed

Item

ItemClick

Fired when an item is clicked

Item

ItemCollapsed

An item in the list has collapsed

Item

ItemDoubleClick

Fired when the user double clicks an item in the list

Item

ItemExpanding

An item in the list is expanding

Item

ItemGotFocus

Fired when an item receives the focus

Item

ItemGotSelection

Fired when an item in the list becomes selected

Item

ItemLostFocus

Fired when the item loses focus Item

ItemLostSelection

ItemLostSelection happens when another item is selected

Item

ItemMouseEnter

The mouse has entered the bounds of the item

Item

ItemMouseHover

The mouse is hovering over the item

Item

ItemMouseLeave

The mouse has left the bounds of the item

Item

ItemRealizing

Fired when an item design instance is realized, typically when the it comes in to the view port

Item

KeyPress

Fired when a key is pressed on the keyboard

KeyCode, Char, IsAltDown, IsControlDown, IsShiftDown, Handled

LostFocus

LostFocus happens when a component is no longer active

MouseEnter

The mouse has entered the bounds of the control Inherited from Control (PRIM_CTRL)

MouseHover

The mouse has hovered over the control Inherited from Control (PRIM_CTRL)

Origin, Handled

MouseLeave

The mouse has left the bounds of the control Inherited from Control (PRIM_CTRL)

ScrollChanged

Fired when the scrollbars in a composite control are moved

Orientation

StartDrag

Fired when the user starts a drag and drop process Inherited from Control (PRIM_CTRL)

Source, Payload, Continue, DragList, AggregatedSource, Origin, Handled

TouchChange

Fired repeatedly between the TouchStart and TouchEnd boundaries to provide details of the touch events Inherited from Control (PRIM_CTRL)

MoveLeft, MoveTop, ScaleWidth, ScaleHeight, Rotation, Continue

TouchEnd

Fired when the user stops touching the screen Inherited from Control (PRIM_CTRL)

TouchStart

Fired when the user first makes physical contact with the screen Inherited from Control (PRIM_CTRL)

Origin, TouchMove, TouchRotate, TouchScale, TouchSize

Methods

Name

Description

Export

Exports list data to text file

FileName, Type

FadeIn

Animate from invisible to visible Inherited from Control (PRIM_CTRL)

Duration, Delay

FadeOut

Animate from visible to invisible Inherited from Control (PRIM_CTRL)

Duration, Delay, Visible

FindItem

Executes the OnFind method on the design interface for all list items

Result, Key, StartItem

FindReference

Find an object stored as a RelatedReference

Result, RelatedReference, StartItem

MoveFrom

Move a control from the specified position to the current position Inherited from Control (PRIM_CTRL)

Left, Top, Duration, Delay

MoveTo

Animate a move from the specified number of pixels Inherited from Control (PRIM_CTRL)

Left, Top, Duration, Delay

Realize

Creates the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL)

Scale

Animate a change of scale Inherited from Control (PRIM_CTRL)

ScaleWidth, ScaleHeight, Duration, Delay

SetFocus

Sets the control to be the focus control Inherited from Control (PRIM_CTRL)

ShowMessages

LANSA Internal Use Inherited from Control (PRIM_CTRL)

SizeTo

Changes and animates control size changing Inherited from Control (PRIM_CTRL)

Width, Height, Duration, Delay

Unrealize

Destroys the visual portion of dynamically created controls Inherited from Control (PRIM_CTRL)

UpdateDisplay

UpdateDisplay updates the display immediately Inherited from Control (PRIM_CTRL)

VerticalScrollTo

Set the vertical scroll position using an item

Item, ScrollPosition


See also

All Component Classes

Technical Reference

  • No labels