Manpage logo

Tickit::WidgetRole::Alignable - implement widgets with adjustable alignment

NAME  DESCRIPTION  METHODS  NAME  set_NAME  _NAME_allocation  AUTHOR 

NAME

"Tickit::WidgetRole::Alignable" − implement widgets with adjustable alignment

DESCRIPTION

Mixing this parametric role into a Tickit::Widget subclass adds behaviour to implement alignment of content within a possibly−larger space.

METHODS

The following methods are provided parametrically on the caller package when the module is imported by

use Tickit::WidgetRole::Alignable
name => NAME,
style => STYLE,
reshape => RESHAPE;

The parameters are
name => STRING

Optional. The name to use for "NAME" in the following generated methods. Defaults to 'align' if not provided.

dir => "h" or "v"

Optional. The direction, horizontal or vertical, that the alignment represents. Used to parse symbolic names into fractions. Defaults to 'h' if not provided.

reshape => BOOL

Optional. If true, the widget will be reshaped after the value has been set by calling the "reshape" method. If false or absent then it will just be redrawn by calling "redraw".

NAME

$align = $widget−>NAME;

Return the current alignment value

set_NAME

$widget−>set_NAME( $value );

Set the new alignment value

Gives a value in the range from 0.0 to 1.0 to align the content display within the window.

For vertical direction alignments, the symbolic values "top", "middle" and "bottom" can be supplied instead of 0.0, 0.5 and 1.0 respectively.

For horizontal direction alignments, the symbolic values "left", "centre" and "right" can be supplied instead of 0.0, 0.5 and 1.0 respectively.

_NAME_allocation

( $before, $alloc, $after ) = $widget−>_NAME_allocation( $value, $total );

Returns a list of three integers created by aligning the $value to the given alignment position within the $total. See also "align" in Tickit::Utils.

AUTHOR

Paul Evans <[email protected]>


Updated 2026-06-01 - jenkler.se | uex.se