summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty
blob: 36d1622e2375b92360fe2549f4d902bef3efd689 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
% Copyright 2007 by Till Tantau
% Copyright 2015 by Vedran Mileti\'c, Joseph Wright
%
% 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 doc/licenses/LICENSE for more details.

\newif\ifbeamer@sb@subsection

\DeclareOptionBeamer{subsection}[true]{\csname beamer@sb@subsection#1\endcsname}
\ExecuteOptionsBeamer{subsection=true}
\ProcessOptionsBeamer



\mode<presentation>

\setbeamercolor{frametitle}{parent=palette primary}
\setbeamercolor{subsection in head/foot}{parent=palette secondary}
\setbeamercolor{section in head/foot}{parent=palette quaternary}


\beamer@compresstrue

\AtBeginDocument{
  {
    \usebeamerfont*{headline}
    \colorlet{global.bg}{bg}
    \usebeamercolor{subsection in head/foot}
    \usebeamercolor{section in head/foot}
    \usebeamercolor{frametitle}

    \ifbeamer@sb@subsection
      \pgfdeclareverticalshading{beamer@barshade}{\the\paperwidth}{%
         color(0ex)=(global.bg);%
         color(1ex)=(subsection in head/foot.bg);%
         color(3.25ex)=(subsection in head/foot.bg);%
         color(4.25ex)=(section in head/foot.bg);%
         color(9.75ex)=(section in head/foot.bg)%
       }
       \pgfdeclareverticalshading{beamer@aboveframetitle}{\the\paperwidth}{%
         color(0ex)=(frametitle.bg);%
         color(1ex)=(frametitle.bg);%
         color(2ex)=(subsection in head/foot.bg)
       }
    \else
      \pgfdeclareverticalshading{beamer@barshade}{\the\paperwidth}{%
         color(0ex)=(global.bg);%
         color(1ex)=(section in head/foot.bg);%
         color(7ex)=(section in head/foot.bg)%
       }
     \pgfdeclareverticalshading{beamer@aboveframetitle}{\the\paperwidth}{%
         color(0ex)=(frametitle.bg);%
         color(1ex)=(frametitle.bg);%
         color(2ex)=(section in head/foot.bg)
       }
    \fi  

    \pgfdeclareverticalshading{beamer@belowframetitle}{\the\paperwidth}{%
      color(0ex)=(global.bg);%
      color(1ex)=(frametitle.bg)
    }
  }
}

                                % Head
\defbeamertemplate*{headline}{smoothbars theme}
{%
  \pgfuseshading{beamer@barshade}%
  \ifbeamer@sb@subsection%
    \vskip-9.75ex%
  \else%
    \vskip-7ex%
  \fi%
  \begin{beamercolorbox}[ignorebg,ht=2.25ex,dp=3.75ex]{section in head/foot}
    \insertnavigation{\paperwidth}
  \end{beamercolorbox}%
  \ifbeamer@sb@subsection%
    \begin{beamercolorbox}[ignorebg,ht=2.125ex,dp=1.125ex,%
      leftskip=.3cm,rightskip=.3cm plus1fil]{subsection in head/foot}
      \usebeamerfont{subsection in head/foot}\insertsubsectionhead
    \end{beamercolorbox}%
  \fi%
}%


\defbeamertemplate*{frametitle}{smoothbars theme}
{%
  \nointerlineskip%
  \usebeamerfont{headline}%
  \begin{beamercolorbox}[wd=\paperwidth,ht=1.5ex,dp=0ex,vmode]{empty}
    \pgfuseshading{beamer@aboveframetitle}%
  \end{beamercolorbox}%
  \vskip-.5ex%
  \nointerlineskip%
  \begin{beamercolorbox}[wd=\paperwidth,leftskip=.3cm,rightskip=.3cm plus1fil,vmode]{frametitle}
    \usebeamerfont*{frametitle}\insertframetitle%
      \ifx\insertframesubtitle\@empty%
        \strut\par%
      \else
        \par{\usebeamerfont*{framesubtitle}{\usebeamercolor[fg]{framesubtitle}\insertframesubtitle}\strut\par}%
      \fi%%
    \usebeamerfont{headline}%
    \vskip.5ex  
  \end{beamercolorbox}%
  \nointerlineskip
  \begin{beamercolorbox}[wd=\paperwidth,ht=.5ex,dp=0ex]{empty}
    \pgfuseshading{beamer@belowframetitle}%
  \end{beamercolorbox}%
}
  
  
\mode
<all>