s-pre-06.tex / last modification: 2020-01-26 18:36
%D \module
%D   [      file=s-pre-06,
%D        version=1999.04.28,
%D          title=\CONTEXT\ Style File,
%D       subtitle=Presentation Environment 6,
%D         author=Hans Hagen,
%D           date=\currentdate,
%D      copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
%C This module is part of the \CONTEXT\ macro||package and is
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.

%D I wrote this sixth presentation style on behalf of a
%D presentation at Bachotek~'99. The joke in this style is
%D (ab)using the Antikwa Torunska, a rather Polish font. When I
%D was first confronted with this font, the backward slant
%D stoke me as very characteristic.
%D Each page has a slightly different background consisting of
%D three O's. Although \TEX\ could do the randomization,
%D scaling and placement, I prefered to use \METAPOST. The
%D backward slant is also reflected in the stepwise increasing
%D left margin. Due to this characteristic and the trick used,
%D this style is only suited for simple presentations, using
%D itemizations.


%D \macros
%D   {setupbodyfont}
%D As said, we will use the Antikwa Torunska, and because we
%D want it to show up well, we use it large.


%D \macros
%D   {definecolor, setupcolors}
%D Thus style only uses gray scales, but nevertheless we turn
%D on color. We only use a few logical color names.


\definecolor [BackgroundColor]  [s=.8]
\definecolor [ContrastColor]    [s=.9]
\definecolor [InteractionColor] [s=.6]

%D \macros
%D   {setuppapersize}
%D As (nearly) always, we use a 600 pt times 450 pt screen
%D width, mapped on ditto paper dimensions.


%D \macros
%D   {setuplayout}
%D The layout is rather symmetrical. We don't use headers and
%D footers, and thereby automatically turn off the page
%D numbering: no room, no number. We use the bottom to present
%D a rather trivial menu.


%D \macros
%D   {setupinteractionmenu,startinteractionmenu}
%D This menu is slighly moved to the right because that looks
%D better. The menu itself has one goto (\type {\got}) entry,
%D which is forced to the right.


  \hfill \got [CloseDocument] \bfd Quit \\

%D \macros
%D   {setupbackgrounds}
%D Page background are calculated at each page, opposite to the
%D other backgrounds, that are reused and only calculated when
%D \CONTEXT\ is explictly told to do so. There are three
%D overlays: a gray fill, the graphic, and a button that
%D circulates the pages.


%D \macros
%D  {defineoverlay}
%D The \type {forward} reference action circulates over the
%D pages, so, at the last page, we are led back to the first.

\defineoverlay [GoAround] [\overlaybutton{forward}]

%D The joke is a simple \METAPOST\ routine. The picture is
%D actually larger than the screen, but is clipped of when
%D included.

\defineoverlay [Joke] [\useMPgraphic{background}]

  width  := \overlaywidth ;
  height := \overlayheight ;
  picture p ; p := char 79 infont "\truefontname{Regular}" scaled 1 ;
  pwidth  := xpart urcorner bbox p - xpart llcorner bbox p ;
  pheight := ypart urcorner bbox p - ypart llcorner bbox p ;
  def do (expr r) =
    addto currentpicture also p shifted - center p scaled r
      xscaled (width/pwidth) yscaled (height/pheight)
      withcolor \MPcolor{ContrastColor} ;
  enddef ;
  do (0.9+uniformdeviate0.1) ;
  do (1.4+uniformdeviate0.1) ;
  do (1.9+uniformdeviate0.1) ;

%D \macros
%D   {setupinteraction,setupinteractionscreen}
%D We did not yet turn on the interaction, so let's do that
%D now. When opened, the document will fil the screen.



%D \macros
%D   {TitlePage, Topics, Topic}
%D A presentation normally consists of a title page, a list of
%D topics, and the content itself. In this style, a further
%D subdivision does not make sense, but because we want to be
%D compatible with the other styles, they are added. A
%D presentation looks like:
%D \starttyping
%D \usemodule[pre-antikwa]
%D \startext
%D \TitlePage{The Title}
%D \Topics{Contents}
%D \Topic{Some Topic}
%D \startitemize
%D \item first
%D \item second
%D \stopitemize
%D \Topic{Some Topic}
%D ...
%D \stoptext
%D \stoptyping

%D \macros
%D   {definehead, Topic, Subject}
%D We use dedicated sectioning commands.

\definehead [Topic]   [chapter]
\definehead [Subject] [section]

\definehead [Nopic]   [title]

%D \macros
%D   {setuphead}
%D We turn of numbering. The assignment to \type {after} takes
%D care of the increasing indentation. This indentation is the
%D only low level \TEX\ code needed. Including this
%D functionality in the core of \CONTEXT\ is not that useful
%D and I would forget about this feature being present anyway.

  [Topic, Nopic, Subject]

%D After section titles we set the \type {\leftskip} to a value
%D that suits the Antikwa slant.


%D Each new paragraph adds to the \type {\leftskip}.

   \leftskip=\LeftSkip pt\relax}

%D \macros
%D   {Topics}
%D The \type {\Topics} command uses a bot of low level
%D \CONTEXT. We could have done with:
%D \starttyping
%D \def\Topics#1%
%D   {\Nopic[Topics]{#1}
%D    \placelist[Topic][criteriumcriterium=all]}
%D \stoptyping
%D but the next alternative sort of ignores this command when
%D no list is found.


%D \macros
%D   {setuplist}
%D We use the single item command to achieve a result similar
%D to the itemizations.



%D A dummy command, needed to be compatible with the other
%D presentation styles.


%D \macros
%D   {StartTitlePage}
%D We use a nested \type {\everypar}; everything in there
%D will be put in front of each paragraph. The nesting prevents
%D the first paragraph from indenting. The struts give the
%D lines a decent height, which looks better inrelation to the
%D next pages.



%D \macros
%D   {TitlePage}
%D The title page can be generated with one command:



%D The (rather silly) demo section.



\TitlePage{Title Page\\pre-polish}

\Topics{Some Nice Lists}

\Topic{Some Lists}

\Subject{A list}

\item first
\item second

\Subject{A bigger list}

\item first
\item second
\item third
\item fourth