aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgroditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7>2008-01-02 20:44:09 +0000
committergroditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7>2008-01-02 20:44:09 +0000
commitc03f75a7322e8194591d2f8bd02fb3f83df8833f (patch)
treedeab14b2437bcd270c6dfec9f7cec4e9e74e245d
parent3b02c20949cb0a23eaecb903ea450643cd95cabf (diff)
downloadreaction-c03f75a7322e8194591d2f8bd02fb3f83df8833f.tar.gz
reaction-c03f75a7322e8194591d2f8bd02fb3f83df8833f.zip
grid is starting to work, actions and view to go
-rw-r--r--lib/Reaction/UI/ViewPort/Collection/Grid/Member.pm16
-rw-r--r--lib/Reaction/UI/ViewPort/Field.pm4
-rw-r--r--lib/Reaction/UI/ViewPort/Object.pm6
-rw-r--r--lib/Reaction/UI/Widget/Field/Number.pm4
-rw-r--r--lib/Reaction/UI/Widget/Object.pm2
-rw-r--r--share/skin/default/layout/field.tt2
6 files changed, 18 insertions, 16 deletions
diff --git a/lib/Reaction/UI/ViewPort/Collection/Grid/Member.pm b/lib/Reaction/UI/ViewPort/Collection/Grid/Member.pm
index c37e10e..bbe1c49 100644
--- a/lib/Reaction/UI/ViewPort/Collection/Grid/Member.pm
+++ b/lib/Reaction/UI/ViewPort/Collection/Grid/Member.pm
@@ -5,35 +5,35 @@ use Reaction::Class;
class Member is 'Reaction::UI::ViewPort::Object', which {
around _build_fields_for_type_Num => sub {
- $_[0]->(@_[1..3], { layout => 'value/number', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/number', %{ $_[3] || {}} })
};
around _build_fields_for_type_Int => sub {
- $_[0]->(@_[1..3], { layout => 'value/number', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/number', %{ $_[3] || {} } })
};
around _build_fields_for_type_Bool => sub {
- $_[0]->(@_[1..3], { layout => 'value/boolean', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/boolean', %{ $_[3] || {} } })
};
around _build_fields_for_type_Enum => sub {
- $_[0]->(@_[1..3], { layout => 'value/string', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/string', %{ $_[3] || {} } })
};
around _build_fields_for_type_Str => sub {
- $_[0]->(@_[1..3], { layout => 'value/string', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/string', %{ $_[3] || {} } })
};
around _build_fields_for_type_SimpleStr => sub {
- $_[0]->(@_[1..3], { layout => 'value/string', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/string', %{ $_[3] || {} } })
};
around _build_fields_for_type_Reaction_InterfaceModel_Object => sub {
- $_[0]->(@_[1..3], { layout => 'value/string', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/string', %{ $_[3] || {} } })
};
around _build_fields_for_type_DateTime => sub {
- $_[0]->(@_[1..3], { layout => 'value/date_time', %{ $_[4] } })
+ $_[0]->(@_[1,2], { layout => 'value/date_time', %{ $_[3] || {} } })
};
around _build_fields_for_type_Password => sub { return };
diff --git a/lib/Reaction/UI/ViewPort/Field.pm b/lib/Reaction/UI/ViewPort/Field.pm
index d8d504a..c374eb8 100644
--- a/lib/Reaction/UI/ViewPort/Field.pm
+++ b/lib/Reaction/UI/ViewPort/Field.pm
@@ -29,7 +29,9 @@ class Field is 'Reaction::UI::ViewPort', which {
my $reader = $self->attribute->get_read_method;
my $predicate = $self->attribute->predicate;
#this is bound to blow the fuck if !model->$predicate what to do?
- return $self->model->$reader if (!$predicate || $self->model->$predicate);
+ return $self->model->$reader ; #if (!$predicate || $self->model->$predicate);
+
+ print STDERR "weird!\n";
return;
};
diff --git a/lib/Reaction/UI/ViewPort/Object.pm b/lib/Reaction/UI/ViewPort/Object.pm
index 8a40fbf..326394f 100644
--- a/lib/Reaction/UI/ViewPort/Object.pm
+++ b/lib/Reaction/UI/ViewPort/Object.pm
@@ -42,10 +42,10 @@ class Object is 'Reaction::UI::ViewPort', which {
my $obj = $self->model;
my $args = $self->has_field_args ? $self->field_args : {};
my @fields;
- for my $field_name (@{ $self->field_order }) {
+ for my $field_name (@{ $self->ordered_fields }) {
my $attr = $obj->meta->find_attribute_by_name($field_name);
my $meth = $self->builder_cache->{$field_name} ||= $self->get_builder_for($attr);
- my $field = $self->$meth($obj, $attr, ($args->{$field_name} || {}));
+ my $field = $self->$meth($attr, ($args->{$field_name} || {}));
push(@fields, $field) if $field;
}
return \@fields;
@@ -57,7 +57,7 @@ class Object is 'Reaction::UI::ViewPort', which {
#treat _$field_name as private and exclude fields with no reader
my @names = grep { $_ !~ /^_/ && !exists($excluded{$_})} map { $_->name }
grep { defined $_->get_read_method } $self->model->meta->parameter_attributes;
- return $self->sort_by_spec($self->field_order, \@names);
+ return $self->sort_by_spec($self->field_order || [], \@names);
};
override child_event_sinks => sub {
diff --git a/lib/Reaction/UI/Widget/Field/Number.pm b/lib/Reaction/UI/Widget/Field/Number.pm
index f80144e..0691768 100644
--- a/lib/Reaction/UI/Widget/Field/Number.pm
+++ b/lib/Reaction/UI/Widget/Field/Number.pm
@@ -12,11 +12,11 @@ __END__;
=head1 NAME
-Reaction::UI::Widget::DisplayField::Numberx
+Reaction::UI::Widget::DisplayField::Number
=head1 DESCRIPTION
-See L<Reaction::UI::Widget::DisplayField>
+See L<Reaction::UI::Widget::Display>
=head1 AUTHORS
diff --git a/lib/Reaction/UI/Widget/Object.pm b/lib/Reaction/UI/Widget/Object.pm
index 68b47f3..505d00d 100644
--- a/lib/Reaction/UI/Widget/Object.pm
+++ b/lib/Reaction/UI/Widget/Object.pm
@@ -5,7 +5,7 @@ use Reaction::UI::WidgetClass;
class Object, which {
implements fragment field_list {
- render field => over $_{viewport}->ordered_fields;
+ render field => over $_{viewport}->fields;
};
implements fragment field {
diff --git a/share/skin/default/layout/field.tt b/share/skin/default/layout/field.tt
index d531087..937ba51 100644
--- a/share/skin/default/layout/field.tt
+++ b/share/skin/default/layout/field.tt
@@ -9,6 +9,6 @@
=for layout value_layout
-[% value %]
+[% field_value %]
=cut