change()

PPresenter
Manual
function

change via:

Portable Presenter is a package designed to give presentations. Presentations are written in options to style-elements grouped into styles. Well, sometimes you like to change the style-elements.

The following changes are possible:

The general syntax is:
  $o = $object->change($objtype, name, options);
  $o = $object->change($objtype, 'ALL', options);

 

Changes via Show

Via the show, you can change a style and change the style-elements of the selected style. The following two are equivalent:
   use PPresenter;
   my $show = PPresenter->new;
   $show->change(style => 'slidenotes'
                , -name => 'notes');
   $show->find(style => 'slidenotes')
        ->change(-name  => 'notes');
Also the next three are equivalent:
   $show->change(template => 'tm'
          , -showTemplateOutlines => 1);
   $show->find(style)
        ->change(template => 'tm'
          , -showTemplateOutlines => 1);
   $show->find(style)->find(template => 'tm')
        ->change(-showTemplateOutlines => 1);
If you want to use template => 'ALL', then the last syntax cannot be used.

A change on a show returns the style, so you can write:

   $show->change(template => 'ALL'
          , -areaSeparation => '8%')
        ->change(decoration => 'SELECTED'
          , -fgcolor => 'red', -backdrop => 1);

Changes via Style

Changes via the style are exactly equivalent to changes to the show, only not called via the show-object, by a style object. For instance:
   my $style = $show->find(style => 'slidenotes')
   $style->change(decoration => 'ALL'
      , -bgcolor => 'green');

Changes via Style-element

Each style-element belongs to a list of style-elements for exactly one style. If you change a the style-element, it will do as if it was changed via the style, except that it will return the changed object.

The following is equivalent:

   my $d = $show->find('decoration');
   $d->change(-fgcolor => 'blue');
and
   $show->find(style => 'SELECTED')
        ->change(decoration => 'SELECTED'
          , -fgcolor => 'blue');
And there are more ways to write the same:
   $show->change(decoration => 'SELECTED'
          , -fgcolor => 'blue');

   $show->find('decoration')
        ->change(-fgcolor => 'blue');

Portable Presenter is written and maintained by Mark Overmeer. Copyright (C) 2000-2002, Free Software Foundation FSF.