%% 
%%  An UIT Edition example
%%  
%%  1st edition
%% 
%%  Example 02-04-2 on page 27.
%% 
%%  Copyright (C) 2012 Herbert Voss
%% 
%%  It may be distributed and/or modified under the conditions
%%  of the LaTeX Project Public License, either version 1.3
%%  of this license or (at your option) any later version.
%% 
%%  See http://www.latex-project.org/lppl.txt for details.
%% 
%% 
%% ==== 
% Show page(s) 1,2,3,4

\documentclass[size=12pt,paper=screen,mode=present,display=slidesnotes, style=simple,nopagebreaks]{exapd}
\pagestyle{empty}
\usepackage[utf8]{inputenc}
\usepackage[british]{babel}
\AtBeginDocument{\renewcommand\today{\the\day-\the\month-\the\year}}
\newcommand\Date[1][\today]{\textsf{#1}}
%\StartShownPreambleCommands
\usepackage{listings,pst-node}
%\StopShownPreambleCommands
\begin{document}
\begin{slide}[method=file]{The optional argument}
A demonstration of commented listings with the package of the same name.
\lstset{escapechar=|,basicstyle=\ttfamily\small,xrightmargin=-2cm,language=[LaTeX]TeX,}
\begin{lstlisting}
\AtBeginDocument{\renewcommand\today{\the\day-\the\month-\the\year}}   |\pause|
\newcommand\Date[1]|\rnode{A}{[\string\today]}|{\textsf{#1}}}          |\pause|
Today is \Date. Spring starts on \Date|\rnode{B}{[March\,21st]}|.
\end{lstlisting}
\smallskip Output:\\
\fbox{Today is \Date. Spring starts on \Date[March\,21st].} \par
\bigskip
\onslide*{4-}{%
Beware -- \rnode{C}{Here} the optional argument for the
\texttt{\textbackslash Date} command is used to overwrite the
\rnode{D}{default}.\psset{arrowscale=2}
\nccurve[angleA=210,angleB=190]{->}{D}{A}\ncarc[arcangle=5]{<-}{B}{C}}
\end{slide}
\end{document}
