aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Reaction/UI/Widget/DisplayField/Collection.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Reaction/UI/Widget/DisplayField/Collection.pm')
-rw-r--r--lib/Reaction/UI/Widget/DisplayField/Collection.pm17
1 files changed, 13 insertions, 4 deletions
diff --git a/lib/Reaction/UI/Widget/DisplayField/Collection.pm b/lib/Reaction/UI/Widget/DisplayField/Collection.pm
index bcac990..40bedd3 100644
--- a/lib/Reaction/UI/Widget/DisplayField/Collection.pm
+++ b/lib/Reaction/UI/Widget/DisplayField/Collection.pm
@@ -3,10 +3,19 @@ package Reaction::UI::Widget::DisplayField::Collection;
use Reaction::UI::WidgetClass;
class Collection, which {
- fragment widget [ qw/label list/ ];
- fragment label [ string { $_{viewport}->label } ];
- fragment list [ item => over func('viewport', 'value_names') ];
- fragment item [ string { $_ } ];
+
+ before fragment widget {
+ arg 'label' => $_{viewport}->label;
+ };
+
+ implements fragment list {
+ render 'item' => over $_{viewport}->value_names;
+ };
+
+ implements fragment item {
+ arg 'name' => $_;
+ };
+
};
1;