… | |
… | |
2312 | |
2312 | |
2313 | $self->{need_reflow}++; |
2313 | $self->{need_reflow}++; |
2314 | $self->update; |
2314 | $self->update; |
2315 | } |
2315 | } |
2316 | |
2316 | |
|
|
2317 | sub clear { |
|
|
2318 | my ($self) = @_; |
|
|
2319 | |
|
|
2320 | $self->{par} = []; |
|
|
2321 | $self->{height} = 0; |
|
|
2322 | |
|
|
2323 | $self->reflow; |
|
|
2324 | } |
|
|
2325 | |
2317 | sub add_paragraph { |
2326 | sub add_paragraph { |
2318 | my ($self, $color, $text, $indent) = @_; |
2327 | my ($self, $color, $text, $indent) = @_; |
2319 | |
|
|
2320 | #TODO: intelligently "reformat" paragraph |
|
|
2321 | |
2328 | |
2322 | for my $line (split /\n/, $text) { |
2329 | for my $line (split /\n/, $text) { |
2323 | my $height = $self->text_height ($line); |
2330 | my $height = $self->text_height ($line); |
2324 | $self->{height} += $height; |
2331 | $self->{height} += $height; |
2325 | push @{$self->{par}}, [$height, $color, $indent, $line]; |
2332 | push @{$self->{par}}, [$height, $color, $indent, $line]; |