GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  PRIMA::DETAILEDLIST (3)

.ds Aq ’

NAME

Prima::DetailedList - a multi-column list viewer with controlling header widget.

CONTENTS

SYNOPSIS

use Prima::DetailedList;



        my $l = $w-> insert( Prima::DetailedList,
                columns => 2,
                headers => [ Column 1, Column 2 ],
                items => [
                        [Row 1, Col 1, Row 1, Col 2],
                        [Row 2, Col 1, Row 2, Col 2]
                ],
        );
        $l-> sort(1);



DESCRIPTION

Prima::DetailedList is a descendant of Prima::ListViewer, and as such provides a certain level of abstraction. It overloads format of items in order to support multi-column ( 2D ) cell span. It also inserts Prima::Header widget on top of the list, so the user can interactively move, resize and sort the content of the list. The sorting mechanism is realized inside the package; it is activated by the mouse click on a header tab.

Since the class inherits Prima::ListViewer, some functionality, like ’item search by key’, or get_item_text method can not operate on 2D lists. Therefore, mainColumn property is introduced, that selects the column representing all the data.

API

    Events

Sort COLUMN, DIRECTION Called inside sort method, to facilitate custom algorithms of sorting. If the callback procedure is willing to sort by COLUMN index, then it must call clear_event, to signal the event flow stop. The DIRECTION is a boolean flag, specifying whether the sorting must be performed is ascending ( 1 ) or descending ( 0 ) order.

The callback procedure must operate on the internal storage of {items}, which is an array of arrays of scalars.

The default action is the literal sorting algorithm, where precedence is arbitrated by cmp operator ( see Equality Operators in perlop ) .

    Properties

aligns ARRAY Array of ta:: align constants, where each defined the column alignment. Where an item in the array is undef, it means that the value of the align property must be used.
columns INTEGER Governs the number of columns in items. If set-called, and the new number is different from the old number, both items and headers are restructured.

Default value: 0

headerClass Assigns a header class.

Create-only property.

Default value: Prima::Header

headerProfile HASH Assigns hash of properties, passed to the header widget during the creation.

Create-only property.

headerDelegations ARRAY Assigns a header widget list of delegated notifications.

Create-only property.

headers ARRAY Array of strings, passed to the header widget as column titles.
items ARRAY Array of arrays of scalars, of arbitrary kind. The default behavior, however, assumes that the scalars are strings. The data direction is from left to right and from top to bottom.
mainColumn INTEGER Selects the column, responsible for representation of all the data. As the user clicks the header tab, mainColumn is automatically changed to the corresponding column.

Default value: 0

    Methods

sort [ COLUMN ] Sorts items by the COLUMN index in ascending order. If COLUMN is not specified, sorts by the last specified column, or by #0 if it is the first sort invocation.

If COLUMN was specified, and the last specified column equals to COLUMN, the sort direction is reversed.

The method does not perform sorting itself, but invokes Sort notification, so the sorting algorithms can be overloaded, or be applied differently to the columns.

AUTHOR

Dmitry Karasik, <dmitry@karasik.eu.org>.

SEE ALSO

Prima, Prima::Lists, Prima::Header, examples/sheet.pl
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 PRIMA::DETAILEDLIST (3) 2015-11-17

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.