Prima::Tie - tie widget properties to scalars and arrays
Prima::Tie contains two abstract classes Prima::Tie::Array and Prima::Tie::Scalar which tie an array or a scalar to a widget's arbitrary array or scalar property. Also, it contains classes Prima::Tie::items, Prima::Tie::text, and Prima::Tie::value, which tie a variable to a widget's items, text, and value properties respectively.
Prima::Tie::Array
Prima::Tie::Scalar
Prima::Tie::items
Prima::Tie::text
Prima::Tie::value
use Prima::Tie; tie @items, 'Prima::Tie::items', $widget; tie @some_property, 'Prima::Tie::Array', $widget, 'some_property'; tie $text, 'Prima::Tie::text', $widget; tie $some_property, 'Prima::Tie::Scalar', $widget, 'some_property';
These classes provide immediate access to a widget's array and scalar properties, in particular to popular properties items and text. It is considerably simpler to say
splice(@items,3,1,'new item');
than to say
my @i = @{$widget->items}; splice(@i,3,1,'new item'); $widget->items(\@i);
That way, you can work directly with the text or items. Furthermore, if the only reason you keep an object around after creation is to access its text or items, you no longer need to do so:
tie @some_array, 'Prima::Tie::items', Prima::ListBox->new(@args);
As opposed to:
my $widget = Prima::ListBox->new(@args); tie @some_array, 'Prima::Tie::items', $widget;
Prima::Tie::items requires the ::items property to be available on the widget. Also, it takes advantage of additional get_items, add_items, and the like methods if available.
::items
get_items
add_items
The class is applicable to Prima::ListViewer, Prima::ListBox, Prima::Widget::Header, and their descendants, and in a limited fashion to Prima::OutlineViewer and its descendants Prima::StringOutline and Prima::Outline.
Prima::ListViewer
Prima::ListBox
Prima::Widget::Header
Prima::OutlineViewer
Prima::StringOutline
Prima::Outline
The class is applicable to any widget.
The class is applicable to Prima::GroupBox, Prima::Dialog::ColorDialog, Prima::SpinEdit, Prima::Gauge, Prima::Slider, Prima::CircularSlider, and Prima::ScrollBar.
Prima::GroupBox
Prima::Dialog::ColorDialog
Prima::SpinEdit
Prima::Gauge
Prima::Slider
Prima::CircularSlider
Prima::ScrollBar
Copyright 2004 Teo Sankaro
This program is distributed under the BSD License. (Although a credit would be nice.)
Teo Sankaro, <teo_sankaro@hotmail.com>. Dmitry Karasik, <dmitry@karasik.eu.org>.
To install Prima, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Prima
CPAN shell
perl -MCPAN -e shell install Prima
For more information on module installation, please visit the detailed CPAN module installation guide.