summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/beamer/beamerbasesection.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-12 23:52:02 +0000
committerKarl Berry <karl@freefriends.org>2006-01-12 23:52:02 +0000
commitb1daf7130666bef14cdb98d88b3c107da38becec (patch)
tree08f591f90145354f39d714eadee16c99557b7109 /Master/texmf-dist/tex/latex/beamer/beamerbasesection.sty
parent47773c8fa98e5885b1d789b205b39fb924707e6e (diff)
beamer
git-svn-id: svn://tug.org/texlive/trunk@699 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/beamer/beamerbasesection.sty')
-rw-r--r--Master/texmf-dist/tex/latex/beamer/beamerbasesection.sty366
1 files changed, 366 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/beamer/beamerbasesection.sty b/Master/texmf-dist/tex/latex/beamer/beamerbasesection.sty
new file mode 100644
index 00000000000..41193801eda
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/beamer/beamerbasesection.sty
@@ -0,0 +1,366 @@
+\ProvidesPackageRCS $Header: /cvsroot/latex-beamer/latex-beamer/base/beamerbasesection.sty,v 1.18 2005/04/20 09:14:53 tantau Exp $
+
+% Copyright 2003 by Till Tantau <tantau@users.sourceforge.net>.
+%
+% This program can be redistributed and/or modified under the terms
+% of the GNU Public License, version 2.
+
+\mode<presentation>
+
+
+\mode
+<all>
+{
+ \def\beamer@secgobble{\@ifnextchar*{\beamer@secstargobble}{\beamer@gobbleoptional}}
+ \def\beamer@secstargobble*{\beamer@gobbleoptional}
+}
+
+
+%
+% Lecture Definitions
+%
+\newif\ifbeamer@inlecture
+\beamer@inlecturetrue
+
+\newcounter{lecture}
+\renewcommand\thelecture{\@arabic\c@lecture}
+\let\insertlecturenumber=\thelecture
+\newcommand\lecture{\@dblarg\beamer@lecture}
+\long\def\beamer@lecture[#1]#2#3{
+ \beamer@savemode
+ \mode<all>
+ \refstepcounter{lecture}
+ \def\beamer@currentlecturelabel{#3}
+ \def\beamer@lecturename{#2}
+ \def\beamer@shortlecturename{#1}
+ \ifx\beamer@onlylecture\@empty
+ \else
+ \ifx\beamer@currentlecturelabel\beamer@onlylecture
+ \beamer@inlecturetrue
+ \else
+ \beamer@inlecturefalse
+ \fi
+ \fi
+ \beamer@atbeginlecture
+ \beamer@resumemode
+}
+
+
+\mode
+<all>
+{
+ \long\def\AtBeginLecture#1{%
+ \def\beamer@atbeginlecture{#1}}
+ \AtBeginLecture{}
+
+ \newcommand\includeonlylecture[1]{%
+ \def\beamer@onlylecture{#1}}
+
+ \includeonlylecture{}
+}
+
+\newcommand\insertlecture{\beamer@lecturename}
+\newcommand\insertshortlecture[1][]{%
+ {%
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\beamer@shortlecturename}%
+ }}
+
+\mode
+<article>
+{
+ % no effect
+ \newcommand\lecture[3][]{}
+}
+
+
+%
+% Part Definitions
+%
+\newcounter{part}
+\renewcommand\thepart{\@arabic\c@part}
+\beamer@partstartpage=1
+
+\newcommand<>{\part}{\alt#1{\@dblarg\beamer@part}{\beamer@gobbleoptional}}
+\long\def\beamer@part[#1]#2{%
+ \beamer@savemode%
+ \mode<all>%
+ \ifbeamer@inlecture%
+ \refstepcounter{part}%
+ \def\beamer@partname{#2}%
+ \def\beamer@partnameshort{#1}%
+ \addtocontents{nav}{\protect\headcommand{\protect\partentry{#2}{\the\c@part}}}%
+ \xdef\partlink{{Navigation\the\c@page}{\noexpand\beamer@partname}}%
+ \xdef\partlinkshort{{Navigation\the\c@page}{\noexpand\beamer@partnameshort}}%
+ \beamer@tempcount=\c@page\advance\beamer@tempcount by -1%
+ \addtocontents{nav}{\protect\headcommand{%
+ \protect\beamer@partpages{\the\beamer@partstartpage}{\the\beamer@tempcount}}}%
+ \addtocontents{nav}{\protect\headcommand{%
+ \protect\beamer@sectionpages{\the\beamer@sectionstartpage}{\the\beamer@tempcount}}}%
+ \addtocontents{nav}{\protect\headcommand{%
+ \protect\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}%
+ \beamer@partstartpage=\c@page%
+ \beamer@sectionstartpage=\c@page%
+ \beamer@subsectionstartpage=\c@page%
+ \setcounter{subsection}{0}%
+ \def\insertsection{}%
+ \def\insertsubsection{}%
+ \def\insertsubsubsection{}%
+ \def\insertsectionhead{}%
+ \def\insertsubsectionhead{}%
+ \def\insertsubsubsectionhead{}%
+ \def\lastsubsection{}%
+ \def\insertpart{\expandafter\hyperlink\partlink}%
+ \Hy@writebookmark{\the\c@section}{#1}{Outline\the\c@part}{1}{toc}%
+ \hyper@anchorstart{Outline\the\c@part}\hyper@anchorend%
+ \beamer@atbeginpart%
+ \fi%
+ \beamer@resumemode}%
+\def\insertpart{}
+\def\partlinkshort{{Navigation1}{}}
+
+\def\insertromanpartnumber{\@Roman\c@part}
+\def\insertpartnumber{\@arabic\c@part}
+
+\newcommand\insertshortpart[1][]{%
+ {%
+ \beamer@setupshort{#1}%
+ \beamer@insertshort{\expandafter\hyperlink\partlinkshort}%
+ }}
+
+\mode
+<all>
+{
+ \long\def\AtBeginPart#1{%
+ \def\beamer@atbeginpart{#1}}
+ \AtBeginPart{}
+}
+
+
+\mode
+<article>
+{
+ \ifx\part\@undefined%
+ \else
+ \renewcommand<>{\part}{\alt#1{\beameroriginal\part}{\beamer@gobbleoptional}}
+ \fi
+}
+
+
+%
+% Section Definitions
+%
+\def\sectionname{Section}
+\newcounter{section}
+\renewcommand\thesection{\@arabic\c@section}
+\beamer@sectionstartpage=1\relax
+\beamer@tocsectionnumber=0\relax
+
+\newcommand<>{\section}{\alt#1{\@ifnextchar[\beamer@section\beamer@@section}{\beamer@secgobble}}
+
+\def\beamer@@section{\@ifnextchar*\beamer@@ssection\beamer@@@section}
+\long\def\beamer@@ssection*#1{\beamer@section[#1]{}}
+\long\def\beamer@@@section#1{\beamer@section[#1]{#1}}
+\long\def\beamer@section[#1]#2{%
+ \beamer@savemode%
+ \mode<all>%
+ \ifbeamer@inlecture
+ \refstepcounter{section}%
+ \beamer@ifempty{#2}%
+ {\long\def\secname{#1}}%
+ {\advance\beamer@tocsectionnumber by 1\relax%
+ \long\def\secname{#2}\addtocontents{toc}{\protect\beamer@sectionintoc{\the\c@section}{#2}{\the\c@page}{\the\c@part}%
+ {\the\beamer@tocsectionnumber}}}%
+ {\let\\=\relax\xdef\sectionlink{{Navigation\the\c@page}{\noexpand\secname}}}%
+ \beamer@tempcount=\c@page\advance\beamer@tempcount by -1%
+ \beamer@ifempty{#1}{}{%
+ \addtocontents{nav}{\protect\headcommand{\protect\sectionentry{\the\c@section}{#1}{\the\c@page}{\secname}{\the\c@part}}}%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@sectionpages{\the\beamer@sectionstartpage}{\the\beamer@tempcount}}}%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}%
+ }%
+ \beamer@sectionstartpage=\c@page%
+ \beamer@subsectionstartpage=\c@page%
+ \def\insertsection{\expandafter\hyperlink\sectionlink}%
+ \def\insertsubsection{}%
+ \def\insertsubsubsection{}%
+ \def\insertsectionhead{#1}%
+ \def\insertsubsectionhead{}%
+ \def\insertsubsubsectionhead{}%
+ \def\lastsubsection{}%
+ \Hy@writebookmark{\the\c@section}{\secname}{Outline\the\c@part.\the\c@section}{2}{toc}%
+ \hyper@anchorstart{Outline\the\c@part.\the\c@section}\hyper@anchorend%
+ \beamer@ifempty{#2}{\beamer@atbeginsections}{\beamer@atbeginsection}%
+ \fi%
+ \beamer@resumemode}%
+\def\insertsection{}
+\def\lastsubsection{}
+
+\def\breakhere{\protect\beamer@breakhere}
+\def\beamer@breakhere{}
+
+\def\insertsectionhead{}
+\def\insertsubsectionhead{}
+
+\mode
+<all>
+{
+ \def\AtBeginSection{\@ifnextchar[{\beamer@AtBeginSection}{\beamer@@AtBeginSection}}
+ \long\def\beamer@@AtBeginSection#1{\beamer@AtBeginSection[{#1}]{#1}}
+ \long\def\beamer@AtBeginSection[#1]#2{%
+ \def\beamer@atbeginsection{#2}%
+ \def\beamer@atbeginsections{#1}%
+ }
+ \AtBeginSection{}
+}
+
+\mode
+<article>
+{
+ \renewcommand<>{\section}{\alt#1{\beameroriginal\section}{\beamer@secgobble}}
+}
+
+
+%
+% Subsection Definitions
+%
+\newcounter{subsection}[section]
+\renewcommand\thesubsection{\@arabic\c@subsection}
+
+\beamer@subsectionstartpage=1
+
+\newcommand<>{\subsection}{\alt#1{\@ifnextchar[\beamer@subsection\beamer@@subsection}{\beamer@secgobble}}
+
+\def\beamer@@subsection{\@ifnextchar*\beamer@@ssubsection\beamer@@@subsection}
+\long\def\beamer@@ssubsection*#1{%
+ \beamer@ifempty{#1}{\beamer@untitledsubsection}{\beamer@subsection[#1]{}}}
+\def\beamer@@@subsection#1{\beamer@subsection[#1]{#1}}
+\def\beamer@subsection[#1]#2{%
+ \beamer@savemode%
+ \mode<all>%
+ \ifbeamer@inlecture%
+ \refstepcounter{subsection}%
+ \beamer@ifempty{#2}{\long\def\subsecname{#1}\long\def\lastsubsection{#1}}
+ {%
+ \long\def\subsecname{#2}%
+ \long\def\lastsubsection{#1}%
+ \addtocontents{toc}{\protect\beamer@subsectionintoc{\the\c@section}{\the\c@subsection}{#2}{\the\c@page}{\the\c@part}{\the\beamer@tocsectionnumber}}%
+ }%
+ \beamer@tempcount=\c@page\advance\beamer@tempcount by -1%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsectionpages{\the\beamer@subsectionstartpage}{\the\beamer@tempcount}}}%
+ \beamer@subsectionstartpage=\c@page%
+ \edef\subsectionlink{{Navigation\the\c@page}{\noexpand\subsecname}}%
+ \def\insertsubsection{\expandafter\hyperlink\subsectionlink}%
+ \def\insertsubsubsection{}%
+ \def\insertsubsectionhead{#1}%
+ \def\insertsubsubsectionhead{}%
+ \Hy@writebookmark{\the\c@subsection}{#2}{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@page}{3}{toc}%
+ \hyper@anchorstart{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@page}\hyper@anchorend%
+ \beamer@ifempty{#2}{\beamer@atbeginsubsections}{\beamer@atbeginsubsection}%
+ \fi%
+ \beamer@resumemode}
+\def\insertsubsection{}
+
+\def\beamer@untitledsubsection{%
+ \refstepcounter{subsection}%
+ \def\insertsubsection{}%
+ \def\lastsubsection{}}
+
+
+\mode
+<all>
+{
+ \def\AtBeginSubsection{\@ifnextchar[{\beamer@AtBeginSubsection}{\beamer@@AtBeginSubsection}}
+ \long\def\beamer@@AtBeginSubsection#1{\beamer@AtBeginSubsection[{#1}]{#1}}
+ \long\def\beamer@AtBeginSubsection[#1]#2{%
+ \def\beamer@atbeginsubsection{#2}%
+ \def\beamer@atbeginsubsections{#1}}
+ \AtBeginSubsection{}
+}
+
+\mode
+<article>
+{
+ \renewcommand<>{\subsection}{\alt#1{\beameroriginal\subsection}{\beamer@secgobble}}
+}
+
+
+%
+% Subsubsection Definitions
+%
+\newcounter{subsubsection}[subsection]
+\renewcommand\thesubsubsection{\@arabic\c@subsubsection}
+
+\beamer@subsectionstartpage=1
+
+\newcommand<>{\subsubsection}{\alt#1{\@ifnextchar[\beamer@subsubsection\beamer@@subsubsection}{\beamer@secgobble}}
+
+\def\beamer@@subsubsection{\@ifnextchar*\beamer@@ssubsubsection\beamer@@@subsubsection}
+\long\def\beamer@@ssubsubsection*#1{\beamer@subsubsection[#1]{}}
+\def\beamer@@@subsubsection#1{\beamer@subsubsection[#1]{#1}}
+\def\beamer@subsubsection[#1]#2{%
+ \beamer@savemode%
+ \mode<all>%
+ \ifbeamer@inlecture%
+ \refstepcounter{subsubsection}%
+ \beamer@ifempty{#2}{\long\def\subsubsecname{#1}}
+ {%
+ \long\def\subsubsecname{#2}%
+ \addtocontents{toc}{\protect\beamer@subsubsectionintoc%
+ {\the\c@part}{\the\c@section}{\the\c@subsection}{\the\c@subsubsection}{\the\c@page}{\the\beamer@tocsectionnumber}{#2}}%
+ }%
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@subsubsectionentry%
+ {\the\c@part}{\the\c@section}{\the\c@subsection}{\the\c@subsubsection}{\the\c@page}{\subsubsecname}}}%
+ \edef\subsubsectionlink{{Navigation\the\c@page}{\noexpand\subsubsecname}}%
+ \def\insertsubsubsection{\expandafter\hyperlink\subsubsectionlink}%
+ \def\insertsubsubsectionhead{#1}%
+ \Hy@writebookmark{\the\c@subsubsection}{#2}{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@subsubsection.\the\c@page}{4}{toc}%
+ \hyper@anchorstart{Outline\the\c@part.\the\c@section.\the\c@subsection.\the\c@subsubsection.\the\c@page}\hyper@anchorend%
+ \beamer@ifempty{#2}{\beamer@atbeginsubsubsections}{\beamer@atbeginsubsubsection}%
+ \fi%
+ \beamer@resumemode}
+\def\insertsubsubsection{}
+\def\insertsubsubsectionhead{}
+
+\mode
+<all>
+{
+ \def\AtBeginSubsubsection{\@ifnextchar[{\beamer@AtBeginSubsubsection}{\beamer@@AtBeginSubsubsection}}
+ \long\def\beamer@@AtBeginSubsubsection#1{\beamer@AtBeginSubsubsection[{#1}]{#1}}
+ \long\def\beamer@AtBeginSubsubsection[#1]#2{%
+ \def\beamer@atbeginsubsubsection{#2}%
+ \def\beamer@atbeginsubsubsections{#1}}
+ \AtBeginSubsubsection{}
+}
+
+\mode
+<article>
+{
+ \renewcommand<>{\subsubsection}{\alt#1{\beameroriginal\subsubsection}{\beamer@secgobble}}
+}
+
+
+%
+% Appendix stuff
+%
+
+\newcommand<>\appendix{%
+ \only#1{\part{\appendixname}
+ \addtocontents{nav}{\protect\headcommand{\protect\beamer@appendixpages{\the\c@page}}}}}
+
+\mode
+<article>
+{
+ \ifx\appendix\@undefined
+ \else
+ \renewcommand<>{\appendix}{\only#1{\beameroriginal\appendix}}
+ \fi
+}
+
+
+\mode
+<all>
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "~/texmf/tex/latex/beamer/examples/beamerexample1.tex"
+%%% End: