PDF::FromHTML::Template::Element::PageBreak - PDF::FromHTML::Template::Element::PageBreak documentation


PDF-FromHTML documentation Contained in the PDF-FromHTML distribution.

Index


Code Index:

NAME

Top

PDF::FromHTML::Template::Element::PageBreak

PURPOSE

Top

To insert a hard pagebreak.

NODE NAME

Top

PAGEBREAK

INHERITANCE

Top

PDF::FromHTML::Template::Element

ATTRIBUTES

Top

None

CHILDREN

Top

None

AFFECTS

Top

Nothing

DEPENDENCIES

Top

None

USAGE

Top

  <pagebreak/>

This will cause a pagebreak to occur at the spot the node is.

AUTHOR

Top

Rob Kinyon (rkinyon@columbus.rr.com)

SEE ALSO

Top


PDF-FromHTML documentation Contained in the PDF-FromHTML distribution.

package PDF::FromHTML::Template::Element::PageBreak;

use strict;

BEGIN {
    use vars qw(@ISA);
    @ISA = qw(PDF::FromHTML::Template::Element);

    use PDF::FromHTML::Template::Element;
}

sub new
{
   my $class = shift;
   my $self = $class->SUPER::new(@_);

   $self->trip(0);

   return $self;
}

sub reset
{
   my $self = shift;

   $self->trip(0);

   return $self->SUPER::reset;
}

sub trip { $_[0]{__TRIP_WIRE__} = $_[1] if defined $_[1]; $_[0]{__TRIP_WIRE__} }

sub render
{
   my $self = shift;
   my ($context) = @_;

   return 0 unless $self->should_render($context);

   return 1 if $self->trip;

    # Regardless of whether a pagebreak actually occurs, this node
    # has done its job.

   $self->trip(1);

    if ($context->get($self, 'Y') != $context->get($self, 'START_Y'))
    {
       $context->trip_pagebreak;
    }

   return 0;
}

1;
__END__