=for comment POD_DERIVED_INDEX_GENERATED
The following documentation is automatically generated.  Please do not edit
this file, but rather the original, inline with Tickit::Widget::Table::Column
at lib/Tickit/Widget/Table/Column.pm
(on the system that originally ran this).
If you do edit this file, and don't want your changes to be removed, make
sure you change the first line.

=cut

=head1 NAME

Tickit::Widget::Table::Column - a column in a L<Ticket::Widget::Table>

=head1 VERSION

version 0.100

=head1 DESCRIPTION

See L<Tickit::Widget::Table>.

A column includes a single header cell, and zero or more data cells.

=head1 METHODS

=head2 new

Instantiate a new column.

Takes the following named parameters:

=over 4

=item * table - the L<Tickit::Widget::Table> which will hold this column

=item * label (optional) - a label to use for the header cell, if appropriate

=item * width (optional) - how wide we'd like to be

=item * align (optional) - type of alignment, should be one of left, right, center|centre

=item * format - any formatting to apply. currently a bit vague.

=item * can_highlight - whether this column is highlightable, if not then any
change to highlighting will skip this column.

=back

Returns the new instance.

=head2 format_by_name

Returns the appropriate format coderef for the given string.

Currently the format can be one of:

=over 4

=item * datetime - %Y-%m-%dT%H:%M:%S

=item * date - %Y-%m-%d

=item * time - %H:%M:%S

=back

=head2 format

Returns the format type for this column.

=head2 apply_format

Formats the given value according to the requirements of this column's formatting
settings.

=head2 remove_row

Remove the given row from this column.

=head2 add_header_cell

Attach the given header cell to this column.

=head2 lines

Number of lines in this widget - since we draw indirectly via cells, this is left as 1.

=head2 cols

Returns the number of (screen) columns we'd like to have.

=head2 width_type

What sort of width this is. Probably something like left|right|auto

=head2 width

The width for this column. Should probably return a number.

=head2 displayed_width

This returns the actual displayed width, i.e. the real number of
(screen) columns used. I think.

=head2 align

Returns the current alignment setting.

=head2 label

Returns the current label for this column.

=head2 set_displayed_width

Change the displayed width.

=head2 table

Accessor for the containing L<Tickit::Widget::Table>.

=head2 add_cell

Adds a new L<Tickit::Widget::Cell> to the end of this column.

=head2 add_row

Does nothing at all yet has a confusingly purposeful name.

=head2 autofit

Makes a wild guess as to how wide we should be then sets the displayed width
accordingly.

=head2 render

Does nothing, for cases where we're attached to something as a real widget.

=head2 idx

Our index in the containing L<Tickit::Widget::Table>. Zero-based.

=head2 update_style

Updates the pen for all contained cells.

Returns $self.

=head2 cells

Returns a list of all contained L<Tickit::Widget::Cell> instances.

=head1 INHERITED METHODS

=over 4

=item L<Tickit::Widget>

L<get_style_pen|Tickit::Widget/get_style_pen>, L<get_style_text|Tickit::Widget/get_style_text>, L<get_style_values|Tickit::Widget/get_style_values>, L<key_focus_next_after|Tickit::Widget/key_focus_next_after>, L<key_focus_next_before|Tickit::Widget/key_focus_next_before>, L<on_pen_changed|Tickit::Widget/on_pen_changed>, L<parent|Tickit::Widget/parent>, L<pen|Tickit::Widget/pen>, L<redraw|Tickit::Widget/redraw>, L<reshape|Tickit::Widget/reshape>, L<resized|Tickit::Widget/resized>, L<set_parent|Tickit::Widget/set_parent>, L<set_pen|Tickit::Widget/set_pen>, L<set_style|Tickit::Widget/set_style>, L<set_style_tag|Tickit::Widget/set_style_tag>, L<set_window|Tickit::Widget/set_window>, L<style_classes|Tickit::Widget/style_classes>, L<take_focus|Tickit::Widget/take_focus>, L<window|Tickit::Widget/window>, L<window_gained|Tickit::Widget/window_gained>, L<window_lost|Tickit::Widget/window_lost>

=item L<Tickit::Widget::Table::Highlight>

L<action|Tickit::Widget::Table::Highlight/action>, L<activate|Tickit::Widget::Table::Highlight/activate>, L<can_highlight|Tickit::Widget::Table::Highlight/can_highlight>, L<highlighted|Tickit::Widget::Table::Highlight/highlighted>, L<is_highlighted|Tickit::Widget::Table::Highlight/is_highlighted>, L<is_selected|Tickit::Widget::Table::Highlight/is_selected>

=back

=head1 AUTHOR

Tom Molesworth <cpan@entitymodel.com>

=head1 LICENSE

Copyright Tom Molesworth 2011. Licensed under the same terms as Perl itself.
