-
Notifications
You must be signed in to change notification settings - Fork 0
Perlover/WWW-Ruler
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
NAME WWW::Ruler - a helper for building rulers for visual presentation (in WWW applictions for example) SYNOPSIS Now this module is beta. Not all documentation is finished yet. use WWW::Ruler; my $ruler = WWW::Ruler->new( page_size => $page_size, ruler_size => 15 ); # $page_number - a number of current page # $array_length - a dimension of array of data my $piece = $ruler->cut_off( page_number => $page_number, amount => $array_length ); # Detail in manual WWW::Ruler::Piece(3) $piece->outside; # true if piece are located outside of array of data. You can test before next methods $ruler_array = $piece->ruler; # An array of ruler items for drawing $start_index = $piece->start; # A start index of array (a base is zero) for cutting $end_index = $piece->end; # An end index of array (a base is zero) for cutting $size = $piece->size; # A size (dimension) of piece of current page. DESCRIPTION This class will help to make a ruler with a following layouts and calculate start and end indices. Ruler can look like these examples: [ << ] [ 1 ] [ ... ] [ 4 ] [ 5 ] ( 6 ) [ 7 ] [ 8 ] [ ... ] [ 999 ] [ >> ] [ 1 ] [ 4 ] [ 5 ] ( 6 ) [ 7 ] [ 8 ] [ ... ] [ 999 ] [ >> ] [ << ] [ 1 ] [ ... ] [ 4 ] [ 5 ] ( 6 ) [ 7 ] [ 8 ] [ >> ] Here ( 1 ) and ( 6 ) are "current" pages. A [ << ], [ >> ] and [ DIGIT ] - linked buttons for other pages for example. And the [ ... ] is an ellipse figure of span between page numbers (not linked). CONSTRUCTOR $ruler = WWW::Ruler->new( page_size => $page_size, ruler_size => 15 ); $ruler = WWW::Ruler->new; You can construct object with and without options. OPTIONS These options can be passed in "new" and "cut_off" methods. Options in "cut_off" method redefine constructor's options. page_size Number. How many do you have items in one page? ruler_size A desired maximum number of buttons (not included button [<<], [>>] and [...]). It is only desired amount! Please notice that real items in ruler can be up 3-4 items! It option will be improved in next versions. page_number A current number of page for which this ruler to be builded. It starts from 1. amount An amount of items in whole array. METHODS new( %opts ) The constructor. The %opts are optional. Any options can be redefined in "cut_off" method. cut_off ( %opts ) This method makes virtual *cut off* of array and contructs array of ruler items. Any options passed into this method redefine options of constructor (to see "SYNOPSIS"). Returns an instance of WWW::Ruler::Piece object. You can test a validation of piece bounds by "outside" in WWW::Ruler::Piece method. AUTHOR This module has been written by Perlover <perlover@perlover.com> LICENSE This module is free software and is published under the same terms as Perl itself.
About
Helper class for making ruler buttons in web applications.
Resources
Stars
Watchers
Forks
Packages 0
No packages published