Tickit::Widget::ScrollBox::Extent - represents the range of scrolling extent
This small utility object stores the effective scrolling range for a Tickit::Widget::ScrollBox.
They are not constructed directly,
but instead returned by the
vextent methods of the associated ScrollBox.
$viewport = $extent->viewport
Returns the size of the viewable portion of the scrollable area (the "viewport").
$total = $extent->total
Returns the total size of the scrollable area; which is always at least the size of the viewport.
$extent->set_total( $total )
Sets the total size of the scrollable area. This method should only be used by the child widget, when it is performing smart scrolling.
$limit = $extent->limit
Returns the limit of the offset; the largest value the start offset may be. This is simply
$total - $viewport, with a limit applied so that it returns zero rather than a negative value, in the case that the viewport is larger than the total.
$start = $extent->start
Returns the start position offset of the viewport within the total area. This is always at least zero, and no greater than the limit.
$extent->scroll( $delta )
Requests to move the start by the amount given. This will be clipped if it moves outside the allowed range.
$extent->scroll_to( $new_start )
Requests to move the start to that given. This will be clipped if it is outside the allowed range.
( $bar_top, $mark_top, $mark_bottom, $bar_bottom ) = $extent->scrollbar_geom( $top, $length )
Calculates the start and end positions of a scrollbar and the mark within it to represent the position of the extent. Returns four integer indexes within
Paul Evans <email@example.com>