% \iffalse meta-comment ------------------------------------------------------- % Copyright 2015 Matthias Vogelgesang and the LaTeX community. A full list of % contributors can be found at % % https://github.com/matze/mtheme/graphs/contributors % % and the original template was based on the HSRM theme by Benjamin Weiss. % % This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 % International License (https://creativecommons.org/licenses/by-sa/4.0/). %% --------------------------------------------------------------------------- %% Copyright 2024 Johan Larsson and contributors % ------------------------------------------------------------------------- \fi % \iffalse %<*package> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{beamerouterthememoloch}[2024-03-06 v0.3.0 Moloch outer theme] % x-release-please-version % % \fi % \CheckSum{0} % \StopEventually{} % \iffalse %<*package> % ------------------------------------------------------------------------- \fi % % \subsection{\themename outer theme} % % A |beamer| outer theme dictates the style of the frame elements traditionally % set outside the body of each slide: the head, footline, and frame title. % % % % \subsubsection{Package dependencies} % % \begin{macrocode} \RequirePackage{calc} \RequirePackage{pgfopts} % \end{macrocode} % % % % \subsubsection{Options} % % \begin{macro}{progressbar} % Adds a progress bar to the top, bottom, or frametitle of each slide. % \begin{macrocode} \pgfkeys{ /moloch/outer/progressbar/.cd, .is choice, none/.code={% \setbeamertemplate{headline}[plain] \setbeamertemplate{frametitle}[plain] \setbeamertemplate{footline}[plain] }, head/.code={\pgfkeys{/moloch/outer/progressbar=none} \addtobeamertemplate{headline}{}{% \usebeamertemplate*{progress bar in head/foot} } }, frametitle/.code={\pgfkeys{/moloch/outer/progressbar=none} \addtobeamertemplate{frametitle}{}{% \usebeamertemplate*{progress bar in head/foot} } }, foot/.code={\pgfkeys{/moloch/outer/progressbar=none} \addtobeamertemplate{footline}{}{% \usebeamertemplate*{progress bar in head/foot}% } }, } % \end{macrocode} % \end{macro} % % \begin{macro}{\moloch@outer@setdefaults} % Sets default values for outer theme options. % \begin{macrocode} \newcommand{\moloch@outer@setdefaults}{ \pgfkeys{/moloch/outer/.cd, progressbar=none, } } % \end{macrocode}% % \end{macro} % % \subsubsection{Deprecated Options} % % These options are deprecated and will be removed in a future version. % % \begin{macro}{numbering} % Adds slide numbers to the bottom right of each slide. % \begin{macrocode} \pgfkeys{ /moloch/outer/numbering/.cd, .is choice, none/.code={% \PackageWarning{moloch}{The ``numbering'' option is deprecated. Use beamer's ``page number in head/foot'' template instead}% \setbeamertemplate{page number in head/foot}[default] }, counter/.code={% \PackageWarning{moloch}{The ``numbering'' option is deprecated. Use beamer's ``page number in head/foot'' template instead}% \setbeamertemplate{page number in head/foot}[framenumber] }, fraction/.code={% \PackageWarning{moloch}{The ``numbering'' option is deprecated. Use beamer's ``page number in head/foot'' template instead}% \setbeamertemplate{page number in head/foot}[totalframenumber] }, } % \end{macrocode} % \end{macro} % % \subsubsection{Slide Numbering} % % Moloch defaults to numbering frames. To modify this, simply copy this line to your % preamble and replace |framenumber|. % % \begin{macrocode} \setbeamertemplate{page number in head/foot}[framenumber] % \end{macrocode} % % \subsubsection{Head and footline} % % All good |beamer| presentations should already remove the navigation symbols, % but \themename removes them automatically (just in case). % % \begin{macrocode} \setbeamertemplate{navigation symbols}{} % \end{macrocode} % % % \begin{macro}{headline} % \begin{macro}{footline} % Templates for the head- and footline at the top and bottom of each frame. % \begin{macrocode} \defbeamertemplate{headline}{plain}{} \defbeamertemplate{footline}{plain}{% \begin{beamercolorbox}[ leftskip=4pt,% rightskip=5pt,% wd=\textwidth,% ]{footline}% \usebeamercolor[fg]{page number in head/foot}% \usebeamerfont{page number in head/foot}% \usebeamertemplate*{frame footer}% \hfill% \usebeamertemplate*{page number in head/foot}\vskip4pt% \end{beamercolorbox}% } % \end{macrocode} % \end{macro} % \end{macro} % % % % \subsubsection{Frametitle} % % \begin{macro}{frametitle} % Templates for the frame title, which is optionally underlined with a % progress bar. % \begin{macrocode} \defbeamertemplate{frametitle}{plain}{% \nointerlineskip% \begin{beamercolorbox}[% wd=\paperwidth,% sep=1.1ex,% leftskip=0.5ex,% rightskip=\the\glueexpr 0.5ex plus 1fill\relax,% ]{frametitle}% \usebeamerfont{frametitle}% \vbox{}\vskip-0.4ex% \strut\insertframetitle\nolinebreak\strut\par% {% \ifx\insertframesubtitle\@empty% \else% {\usebeamerfont{framesubtitle}\vspace{-0.8ex}\usebeamercolor[fg]{framesubtitle}\strut\insertframesubtitle\strut\par}% \fi }% \end{beamercolorbox}% } \setbeamertemplate{frametitle continuation}{\romannumeral\insertcontinuationcount} % \end{macrocode} % \end{macro} % % \begin{macro}{progress bar in head/foot} % Template for the progress bar optionally displayed below the frame title % on each page. Much of this code is duplicated in the inner theme's % template |progress bar in section page|. % \begin{macrocode} \newlength{\moloch@progressinheadfoot} \newlength{\moloch@progressinheadfoot@linewidth} \setlength{\moloch@progressinheadfoot@linewidth}{0.4pt} \setbeamertemplate{progress bar in head/foot}{ \nointerlineskip \pgfmathsetlength{\moloch@progressinheadfoot}{% \paperwidth * min(1,\insertframenumber/\inserttotalframenumber)% } \begin{beamercolorbox}[wd=\paperwidth]{progress bar in head/foot} \tikzexternaldisable \begin{tikzpicture} \fill[bg] (0,0) rectangle (\paperwidth, \moloch@progressinheadfoot@linewidth); \fill[fg] (0,0) rectangle (\moloch@progressinheadfoot, \moloch@progressinheadfoot@linewidth); \end{tikzpicture} \tikzexternalenable \end{beamercolorbox} } % \end{macrocode} % \end{macro} % % \subsubsection{Process package options} % % \begin{macrocode} \moloch@outer@setdefaults \ProcessPgfPackageOptions{/moloch/outer} % \end{macrocode} % % \iffalse % % \fi % \Finale \endinput