I would like to have an horizontal subsection navigation inside a vertical navigation bar.
The idea is to obtain the same subsection navigation as for the outersmoothbar but in a vertical navigation bar.
I look for it but cannot find any solution. Any idea ?
Elendil
Edit: I'm writing my theme and I put here the peace of code concerning the sidebar.
% ============================================================
% LENGTH
% ============================================================
\newlength{\SidebarWidth}
\setlength{\SidebarWidth}{\beamer@sidebarwidth}
\newlength{\HeadlineWidth}
\setlength{\HeadlineWidth}{\paperwidth}
\addtolength{\HeadlineWidth}{-\SidebarWidth}
\addtolength{\HeadlineWidth}{-1pt}
\newlength{\HeadlineHeight}
\settoheight{\HeadlineHeight}{\large TexTe}
\addtolength{\HeadlineHeight}{1ex}
% ============================================================
% SIDEBAR
% ============================================================
% color
\setbeamercolor{sidebar}{bg=white}
\setbeamercolor{section in head/foot}{fg=black, bg=white}
% sidebar itself
\setbeamertemplate{sidebar \beamer@sidebarside}
{
\vfill
\insertverticalnavigation{\beamer@sidebarwidth}%
\vfill
}%
% vertical rule
\setbeamertemplate{sidebar canvas \beamer@sidebarside}{
\vspace*{-0.7\HeadlineHeight}%
\ifx\beamer@sidebarside\beamer@lefttext{%
\hspace*{0.99\beamer@sidebarwidth}%
\color{black}\rule{1pt}{0.9\paperheight}%
}
\else{%
\color{black}\rule{1pt}{0.9\paperheight}%
}
\fi
}
% section in sidebar
\setbeamertemplate{section in sidebar}%{sidebar theme}
{%
\vbox{%
\vskip1ex%
\beamer@sidebarformat{3pt}{section in sidebar}{
\centering\tikz[opacity=1.0] \node[xshift=0cm,yshift=0cm] at (0,0) {\includegraphics[height=0.7\beamer@sidebarwidth]{obian/sec\expandafter\insertsectionheadnumber\expandafter}};%
}%
}%
}
% section in sidebar shaded
\setbeamertemplate{section in sidebar shaded}%{sidebar theme}
{%
\vbox{%
\vskip1ex%
\beamer@sidebarformat{3pt}{section in sidebar}{
\centering\tikz[opacity=0.3] \node at (0,0) {\includegraphics[height=0.7\beamer@sidebarwidth]{obian/sec\expandafter\insertsectionheadnumber\expandafter}};%
}%
}%
}
% Patch sidebar to not hide section when show subsection
\patchcmd{\insertverticalnavigation}%
{\ifx\beamer@nav@css\beamer@hidetext{\usebeamertemplate{section in sidebar}}\else{\usebeamertemplate{section in sidebar shaded}}\fi}%
{{\usebeamertemplate{section in sidebar}}}{}{}
And a simple example could be this one loading the previous code in the preamble:
\documentclass{beamer}
\begin{document}
\begin{frame}
\titlepage
\end{frame}
\begin{frame}
\tableofcontents[subsectionstyle=show]
\end{frame}
\section{Section 1}
\begin{frame}
\begin{itemize}
\item No frametitle
\item section 1
\end{itemize}
\end{frame}
\subsection{Subsection 1}
\begin{frame}
\begin{itemize}
\item No frametitle
\item section 1
\item subsection 1
\end{itemize}
\end{frame}
\end{document}
Best Answer
Finally I found a solution by re-writing the internal macro
\insertverticalnavigation
. I put the code if it can help someone.If you have any idea to improve, please let me know.
In a MyStyle.sty file I wrote:
And a MWE could be:
This little example provide me what I want which is subsection in horizontal mode inside a vertical navigation bar.