… | |
… | |
209 | my ($arg) = @_; |
209 | my ($arg) = @_; |
210 | |
210 | |
211 | my $w = $self->{widget}{$arg->{id}} |
211 | my $w = $self->{widget}{$arg->{id}} |
212 | or return; |
212 | or return; |
213 | |
213 | |
214 | $w->{$_->[0]} = $_->[1] |
214 | my $attr = $arg->{attr}; |
215 | for @{ $arg->{attr} }; |
215 | |
|
|
216 | for (my $i = 0; $i < $#$attr; $i += 2) { |
|
|
217 | my ($member, $value) = @$attr[$i, $i+1]; |
|
|
218 | if (defined $value) { |
|
|
219 | $w->{$member} = $value; |
|
|
220 | } else { |
|
|
221 | delete $w->{$member}; |
|
|
222 | } |
|
|
223 | $w->{parent}->realloc if $member =~ /^c_/ && $w->{visible}; |
|
|
224 | } |
216 | }); |
225 | }); |
217 | |
226 | |
218 | # widget get |
227 | # widget get |
219 | $self->connect_ext (w_g => sub { |
228 | $self->connect_ext (w_g => sub { |
220 | my ($arg) = @_; |
229 | my ($arg) = @_; |