diff options
author | groditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7> | 2009-07-10 20:42:51 +0000 |
---|---|---|
committer | groditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7> | 2009-07-10 20:42:51 +0000 |
commit | 99535516a8275b3c98a90cb037d2c88219c2b756 (patch) | |
tree | 66dadc45c8914b3d3d0d2949c277c5514bcf3c46 /lib/ComponentUI | |
parent | ad0b52c377cccb45543fbd76d2e85288dfe4045e (diff) | |
download | reaction-99535516a8275b3c98a90cb037d2c88219c2b756.tar.gz reaction-99535516a8275b3c98a90cb037d2c88219c2b756.zip |
String fragment viewport
Diffstat (limited to 'lib/ComponentUI')
-rw-r--r-- | lib/ComponentUI/Controller/TestModel/Baz.pm | 12 | ||||
-rw-r--r-- | lib/ComponentUI/UI/ViewPort/Baz/ListView/Member.pm | 23 |
2 files changed, 34 insertions, 1 deletions
diff --git a/lib/ComponentUI/Controller/TestModel/Baz.pm b/lib/ComponentUI/Controller/TestModel/Baz.pm index 2fece5a..6c88792 100644 --- a/lib/ComponentUI/Controller/TestModel/Baz.pm +++ b/lib/ComponentUI/Controller/TestModel/Baz.pm @@ -2,6 +2,7 @@ package ComponentUI::Controller::TestModel::Baz; use base 'Reaction::UI::Controller::Collection::CRUD'; use Reaction::Class; +use ComponentUI::UI::ViewPort::Baz::ListView::Member; __PACKAGE__->config( model_name => 'TestModel', @@ -10,7 +11,16 @@ __PACKAGE__->config( base => { Chained => '/base', PathPart => 'testmodel/baz' }, list => { ViewPort => { - enable_order_by => [qw/id name/], + enable_order_by => [qw/id name bool_field description/], + member_class => 'ComponentUI::UI::ViewPort::Baz::ListView::Member', + Member => { + Field => { + description => { + max_length => 40, + layout => 'value/string', + }, + }, + }, }, }, }, diff --git a/lib/ComponentUI/UI/ViewPort/Baz/ListView/Member.pm b/lib/ComponentUI/UI/ViewPort/Baz/ListView/Member.pm new file mode 100644 index 0000000..26740ce --- /dev/null +++ b/lib/ComponentUI/UI/ViewPort/Baz/ListView/Member.pm @@ -0,0 +1,23 @@ +package ComponentUI::UI::ViewPort::Baz::ListView::Member; + +use Reaction::Class; +use namespace::clean -except => [ qw(meta) ]; +use aliased 'Reaction::UI::ViewPort::Field::String::Fragment'; + +extends 'Reaction::UI::ViewPort::Collection::Grid::Member::WithActions'; + +sub _build_layout { + 'collection/grid/member/with_actions'; +} + +sub _build_fields_for_name_description { + my ($self, $attr, $args) = @_; + $self->_build_simple_field(attribute => $attr, class => Fragment, %$args); +} + +__PACKAGE__->meta->make_immutable; + +1; + +__END__; + |