aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ComponentUI
diff options
context:
space:
mode:
authorgroditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7>2009-07-10 20:42:51 +0000
committergroditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7>2009-07-10 20:42:51 +0000
commit99535516a8275b3c98a90cb037d2c88219c2b756 (patch)
tree66dadc45c8914b3d3d0d2949c277c5514bcf3c46 /lib/ComponentUI
parentad0b52c377cccb45543fbd76d2e85288dfe4045e (diff)
downloadreaction-99535516a8275b3c98a90cb037d2c88219c2b756.tar.gz
reaction-99535516a8275b3c98a90cb037d2c88219c2b756.zip
String fragment viewport
Diffstat (limited to 'lib/ComponentUI')
-rw-r--r--lib/ComponentUI/Controller/TestModel/Baz.pm12
-rw-r--r--lib/ComponentUI/UI/ViewPort/Baz/ListView/Member.pm23
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__;
+