1 package Reaction::UI::Widget::GridView;
3 use Reaction::UI::WidgetClass;
5 class GridView, which {
6 widget renders [ qw/header body footer/ ];
8 header renders [ 'header_row' ];
9 header_row renders [ header_cell over func('viewport', 'field_order'),
10 { labels => func(viewport => 'field_labels') } ];
11 header_cell renders [ string { $_{labels}->{$_} } ], { field_name => $_ };
13 footer renders [ 'footer_row' ];
14 footer_row renders [ footer_cell over func('viewport', 'field_order'),
15 { labels => func(viewport => 'field_labels') } ];
16 footer_cell renders [ string { $_{labels}->{$_} } ], { field_name => $_ };
18 body renders [ viewport over func('viewport','entities')];