ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/DC/UI.pm
(Generate patch)

Comparing deliantra/Deliantra-Client/DC/UI.pm (file contents):
Revision 1.236 by root, Thu May 25 16:54:29 2006 UTC vs.
Revision 1.239 by root, Thu May 25 22:29:57 2006 UTC

458sub set_parent { 458sub set_parent {
459 my ($self, $parent) = @_; 459 my ($self, $parent) = @_;
460 460
461 Scalar::Util::weaken ($self->{parent} = $parent); 461 Scalar::Util::weaken ($self->{parent} = $parent);
462 462
463 $self->{root} = $parent->{root};
464 $self->{visible} = $parent->{visible};
465
463 # TODO: req_w _does_change after ->reconfigure 466 # TODO: req_w _does_change after ->reconfigure
464 $self->check_size 467 $self->check_size
465 unless exists $self->{req_w}; 468 unless exists $self->{req_w};
466 469
467 $self->show; 470 $self->show;
871 $self->{vp}->add ($self->{scrolled}); 874 $self->{vp}->add ($self->{scrolled});
872 $self->add ($self->{vp}); 875 $self->add ($self->{vp});
873 $self->add ($self->{slider}); 876 $self->add ($self->{slider});
874 877
875 $self 878 $self
879}
880
881sub update {
882 my ($self) = @_;
883
884 $self->SUPER::update;
885
886 # todo: overwrite size_allocate of child
887 my $child = $self->{vp}->child;
888 $self->{slider}->set_range ([$self->{slider}{range}[0], 0, $child->{h}, $self->{vp}{h}, 1]);
876} 889}
877 890
878sub size_allocate { 891sub size_allocate {
879 my ($self, $w, $h) = @_; 892 my ($self, $w, $h) = @_;
880 893
1168sub size_allocate { 1181sub size_allocate {
1169 my ($self, $w, $h) = @_; 1182 my ($self, $w, $h) = @_;
1170 1183
1171 my ($ws, $hs) = $self->get_wh; 1184 my ($ws, $hs) = $self->get_wh;
1172 1185
1173 my $req_w = sum @$ws; 1186 my $req_w = (sum @$ws) || 1;
1174 my $req_h = sum @$hs; 1187 my $req_h = (sum @$hs) || 1;
1175 1188
1176 # TODO: nicer code && do row_expand 1189 # TODO: nicer code && do row_expand
1177 my @col_expand = @{$self->{col_expand}}; 1190 my @col_expand = @{$self->{col_expand}};
1178 @col_expand = (1) x @$ws unless @col_expand; 1191 @col_expand = (1) x @$ws unless @col_expand;
1179 my $col_expand = (sum @col_expand) || 1; 1192 my $col_expand = (sum @col_expand) || 1;
2133} 2146}
2134 2147
2135sub set_range { 2148sub set_range {
2136 my ($self, $range) = @_; 2149 my ($self, $range) = @_;
2137 2150
2138 $self->{range} = $range; 2151 ($range, $self->{range}) = ($self->{range}, $range);
2139 2152
2140 $self->update; 2153 $self->update
2154 if "@$range" ne "@{$self->{range}}";
2141} 2155}
2142 2156
2143sub set_value { 2157sub set_value {
2144 my ($self, $value) = @_; 2158 my ($self, $value) = @_;
2145 2159
2748 $self->{scrolled}->add (1, $row, $item->{desc_widget}); 2762 $self->{scrolled}->add (1, $row, $item->{desc_widget});
2749 $self->{scrolled}->add (2, $row, $item->{weight_widget}); 2763 $self->{scrolled}->add (2, $row, $item->{weight_widget});
2750 2764
2751 $row++; 2765 $row++;
2752 } 2766 }
2753
2754# $range->{range} = [$self->{pos}, 0, $self->{max_pos}, $page];
2755} 2767}
2756 2768
2757sub size_request { 2769sub size_request {
2758 my ($self) = @_; 2770 my ($self) = @_;
2759 ($self->{req_w}, $self->{req_h}); 2771 ($self->{req_w}, $self->{req_h});

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines