PyCIRCLean/slides/PyCIRCLean/beamerinnerthemefancy.sty

183 lines
6.0 KiB
TeX

% Copyright 2007 by Marco Barisione
%
% This file may be distributed and/or modified
%
% 1. under the LaTeX Project Public License and/or
% 2. under the GNU Public License.
\mode<presentation>
% Use alternative title page style.
\DeclareOptionBeamer{alternativetitlepage}[true]{\def\beamer@fancy@alternativetitlepage{#1}}
% Logo to use in the alternative title page.
\def\beamer@fancy@titlepagelogo{}
\DeclareOptionBeamer{titlepagelogo}{\def\beamer@fancy@titlepagelogo{#1}}
% Bullet shape.
\DeclareOptionBeamer{bullet}{\def\beamer@fancy@bullet{#1}}
\ExecuteOptionsBeamer{alternativetitlepage=false,bullet=square}
\ProcessOptionsBeamer
% Colors.
\setbeamercolor*{lineup}{parent=palette primary}
\setbeamercolor*{linemid}{parent=palette secondary}
\setbeamercolor*{linebottom}{parent=palette tertiary}
\setbeamercolor*{title page header}{parent=palette quaternary}
% Lengths.
\newlength{\beamer@fancy@lineup}
\setlength{\beamer@fancy@lineup}{.025\paperheight}
\newlength{\beamer@fancy@linemid}
\setlength{\beamer@fancy@linemid}{.015\paperheight}
\newlength{\beamer@fancy@linebottom}
\setlength{\beamer@fancy@linebottom}{.01\paperheight}
% Margins.
\newlength{\beamer@fancy@normalmargin}
\setlength{\beamer@fancy@normalmargin}{.06\paperwidth}
\setbeamersize{text margin left=\beamer@fancy@normalmargin}
\setbeamersize{text margin right=\beamer@fancy@normalmargin}
\setlength\leftmargini{.6\beamer@fancy@normalmargin}
\setlength\leftmarginii{.6\beamer@fancy@normalmargin}
\setlength\leftmarginiii{.6\beamer@fancy@normalmargin}
% Normal title page.
\defbeamertemplate*{title page normal}{fancy theme}[1][]
{
\vbox{}
\vfill
\begin{centering}
\begin{beamercolorbox}[wd=\paperwidth,sep=8pt,center,#1]{title page header}
\usebeamerfont{title}\inserttitle\par%
\ifx\insertsubtitle\@empty%
\else%
\vskip0.25em%
{\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%
\fi%
\end{beamercolorbox}%
\vskip1em\par
\begin{beamercolorbox}[sep=8pt,center,#1]{author}
\usebeamerfont{author}\insertauthor
\end{beamercolorbox}
\begin{beamercolorbox}[sep=8pt,center,#1]{institute}
\usebeamerfont{institute}\insertinstitute
\end{beamercolorbox}
\begin{beamercolorbox}[sep=8pt,center,#1]{date}
\usebeamerfont{date}\insertdate
\end{beamercolorbox}\vskip0.5em
{\usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par}
\end{centering}
\vfill
}
% Alternative title page, you should use this in a frame with the [plain]
% option.
\defbeamertemplate*{title page alternative}{fancy theme}[1][]
{
{\parskip0pt\offinterlineskip%
\hbox{\hskip-\Gm@lmargin\hbox{\vbox{%
\@tempdima=\textwidth\textwidth=\paperwidth\hsize=\textwidth\def\\{,}\vbox{}\vskip-1.5ex%
% Title.
\begin{beamercolorbox}[wd=\paperwidth,ht=.4\paperheight,center,#1]{title page header}
\usebeamerfont{title}\inserttitle\par%
\ifx\insertsubtitle\@empty%
\else%
\vskip0.25em%
{\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%
\fi%
\vspace{.125\paperheight}%
\end{beamercolorbox}%
\vbox{}\vskip-\beamer@fancy@lineup%
\vbox{}\vskip-\beamer@fancy@linemid%
% First line.
\hbox{%
\begin{beamercolorbox}[wd=.2\paperwidth,ht=\beamer@fancy@lineup,dp=0pt]{}%
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.8\paperwidth,ht=\beamer@fancy@lineup,dp=0pt]{lineup}%
\end{beamercolorbox}%
}%
\vbox{}\vskip0ex%
% Second line.
\hbox{%
\begin{beamercolorbox}[wd=.1\paperwidth,ht=\beamer@fancy@linemid,dp=0pt]{}%
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.9\paperwidth,ht=\beamer@fancy@linemid,dp=0pt]{linemid}%
\end{beamercolorbox}%
}%
% Third line.
\hbox{%
\begin{beamercolorbox}[wd=.5\paperwidth,ht=\beamer@fancy@linebottom,dp=0pt]{}%
\end{beamercolorbox}%
\begin{beamercolorbox}[wd=.5\paperwidth,ht=\beamer@fancy@linebottom,dp=0pt]{linebottom}%
\end{beamercolorbox}%
}%
\vskip0pt%
}}%
\hskip-\Gm@rmargin%
}}\hfil%
%
\begin{columns}
\ifx\beamer@fancy@titlepagelogo\@empty%
\column{\textwidth}
\else
\column{.5\textwidth}
% Logo.
\begin{centering}
\vbox{}\vfill
\includegraphics[height=.2\paperheight]{\beamer@fancy@titlepagelogo}
\vfill
\end{centering}
\column{.5\textwidth}
\fi
% Authors, institute and date
\vskip1em\par
\begin{beamercolorbox}[sep=8pt,center,#1]{author}
\usebeamerfont{author}\insertauthor
\end{beamercolorbox}
\begin{beamercolorbox}[sep=8pt,center,#1]{institute}
\usebeamerfont{institute}\insertinstitute
\end{beamercolorbox}
\begin{beamercolorbox}[sep=8pt,center,#1]{date}
\usebeamerfont{date}\insertdate
\end{beamercolorbox}\vskip0.5em
{\usebeamercolor[fg]{titlegraphic}\inserttitlegraphic\par}
\end{columns}
}
\defbeamertemplate*{title page}{fancy}[1][]
{
\def\beamer@fancy@truetext{true}%
\ifx\beamer@fancy@alternativetitlepage\beamer@fancy@truetext%
\usebeamertemplate{title page alternative}%
\else%
\usebeamertemplate{title page normal}%
\fi%
}
% Items.
\defbeamertemplate{itemize item}{squarealt}%
{\tiny\raise.5ex\hbox{\donotcoloroutermaths$\blacksquare$}}
\defbeamertemplate{itemize subitem}{squarealt}%
{\tiny\raise.4ex\hbox{\donotcoloroutermaths$\square$}}
\defbeamertemplate{itemize subsubitem}{squarealt}%
{\tiny\raise.3ex\hbox{\donotcoloroutermaths$\blacksquare$}}
\defbeamertemplate{itemize item}{circlealt}%
{\small\raise.2ex\hbox{\donotcoloroutermaths$\bullet$}}
\defbeamertemplate{itemize subitem}{circlealt}%
{\small\raise.1ex\hbox{\donotcoloroutermaths$\circ$}}
\defbeamertemplate{itemize subsubitem}{circlealt}%
{\scriptsize\raise.1ex\hbox{\donotcoloroutermaths$\bullet$}}
\def\circletext{circle}
\ifx\beamer@fancy@bullet\circletext
\setbeamertemplate{items}[circlealt]
\else
\setbeamertemplate{items}[squarealt]
\fi
\mode<all>