% Copyright 2007 by Till Tantau % Copyright 2015 by Vedran Mileti\'c, Joseph Wright % Copyright 2017,2018 by Louis Stuart, Joseph Wright % Copyright 2021-2024 by Joseph Wright, samcarter % % This file may be distributed and/or modified % % 1. under the LaTeX Project Public License and/or % 2. under the GNU Public License. % % See the file LICENSE.md for more details. \let\beamer@storesize\@currsize \newdimen\beamer@sidebarwidth \def\beamersidebarwidth{\beamer@sidebarwidth} \newdimen\beamer@headheight \def\beamerheadheight{\beamer@headheight} \usebeamerfont{frametitle} \beamer@sidebarwidth=2.5\baselineskip \beamer@headheight=2.5\baselineskip \reset@font \def\beamer@lefttext{left} \DeclareOptionBeamer{hideothersubsections}[]{\beamer@nav@subsectionstyle{show/show/hide}} \DeclareOptionBeamer{hideallsubsections}[]{\beamer@nav@subsectionstyle{hide}} \DeclareOptionBeamer{width}{\beamer@sidebarwidth=#1} \DeclareOptionBeamer{height}{\beamer@headheight=#1} \DeclareOptionBeamer{left}{\def\beamer@sidebarside{left}} \DeclareOptionBeamer{right}{\def\beamer@sidebarside{right}} \ExecuteOptionsBeamer{left} \ProcessOptionsBeamer \mode \ifdim\beamer@headheight>0pt % if head height is 0pt, use default frame title \setbeamercolor*{frametitle}{parent=sidebar} \defbeamertemplate*{frametitle}{sidebar theme} {% \nointerlineskip% \ifbeamer@plainframe% \hbox{\usebeamercolor[bg]{frametitle}% \@tempdima\paperwidth\advance\@tempdima-\beamer@sidebarwidth \hskip-\beamer@leftmargin\vrule height\beamer@headheight width\@tempdima\hskip-\beamer@rightmargin}% \nointerlineskip% \fi% \vskip-\beamer@headheight% \vbox to \beamer@headheight{% \vfil \leftskip=-\beamer@leftmargin% \advance\leftskip by0.3cm% \rightskip=-\beamer@rightmargin% \advance\rightskip by0.3cm plus1fil% {\usebeamercolor[fg]{frametitle}\usebeamerfont{frametitle}\strut\insertframetitle\par}% \ifx\insertframesubtitle\@empty\else% {\usebeamercolor[fg]{framesubtitle}\usebeamerfont{framesubtitle}\strut\insertframesubtitle\par}% \fi% \vbox{}% \vskip-1em% \vfil }% } \defbeamertemplate*{headline}{sidebar theme} {% \begin{beamercolorbox}[wd=\paperwidth]{frametitle} \ifx\beamer@sidebarside\beamer@lefttext% \else% \hfill% \fi% \ifdim\beamer@sidebarwidth>0pt% \usebeamercolor[bg]{logo}% \vrule width\beamer@sidebarwidth height \beamer@headheight% \hskip-\beamer@sidebarwidth% \hbox to \beamer@sidebarwidth{\hss\vbox to \beamer@headheight{\vss\hbox{\color{fg}\insertlogo}\vss}\hss}% \else% \vrule width0pt height \beamer@headheight% \fi% \end{beamercolorbox} } \fi \def\beamer@sidebarformat#1#2#3{% \begin{beamercolorbox}[wd=\beamer@sidebarwidth,leftskip=#1,rightskip=1ex plus1fil,vmode]{#2} \vbox{}% #3\par% \vbox{}% \vskip-1.5ex% \end{beamercolorbox} } \defbeamertemplate*{section in sidebar}{sidebar theme} {% \vbox{% \vskip1ex% \beamer@sidebarformat{3pt}{section in sidebar}{\insertsectionhead}% }% } \defbeamertemplate*{section in sidebar shaded}{sidebar theme} {% \vbox{% \vskip1ex% \beamer@sidebarformat{3pt}{section in sidebar shaded}{\insertsectionhead}% }% } \defbeamertemplate*{subsection in sidebar}{sidebar theme} {% \beamer@sidebarformat{5pt}{subsection in sidebar}{\insertsubsectionhead}% } \defbeamertemplate*{subsection in sidebar shaded}{sidebar theme} {% \beamer@sidebarformat{5pt}{subsection in sidebar shaded}{\insertsubsectionhead}% } \defbeamertemplate*{subsubsection in sidebar}{sidebar theme} {% \beamer@sidebarformat{7pt}{subsubsection in sidebar}{\insertsubsubsectionhead}% } \defbeamertemplate*{subsubsection in sidebar shaded}{sidebar theme} {% \beamer@sidebarformat{7pt}{subsubsection in sidebar shaded}{\insertsubsubsectionhead}% } \ifdim\beamer@sidebarwidth>0pt % Sidebar \setbeamersize{sidebar width \beamer@sidebarside=\beamer@sidebarwidth} \defbeamertemplate*{sidebar \beamer@sidebarside}{sidebar theme} { \beamer@tempdim=\beamer@sidebarwidth% \advance\beamer@tempdim by -6pt% {\usebeamerfont{title in sidebar}% \vskip1.5em% \hskip3pt% \usebeamercolor[fg]{title in sidebar}% \insertshorttitle[width=\beamer@tempdim,center,respectlinebreaks]\par% \vskip1.25em% }% {% \hskip3pt% \usebeamercolor[fg]{author in sidebar}% \usebeamerfont{author in sidebar}% \insertshortauthor[width=\beamer@tempdim,center,respectlinebreaks]\par% \vskip1.25em% }% \insertverticalnavigation{\beamer@sidebarwidth}% \vfill \ifx\beamer@sidebarside\beamer@lefttext% \else% \usebeamercolor{normal text}% \llap{\usebeamertemplate***{navigation symbols}\hskip0.1cm}% \vskip2pt% \fi% }% \ifx\beamer@sidebarside\beamer@lefttext% \defbeamertemplate*{sidebar right}{sidebar theme} {% \vfill% \llap{\usebeamertemplate***{navigation symbols}\hskip0.1cm}% \vskip2pt} \fi % Margins \setbeamersize{text margin left=0.5cm,text margin right=0.5cm} \fi \mode \beamer@storesize