summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty')
-rw-r--r--macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty112
1 files changed, 54 insertions, 58 deletions
diff --git a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
index 32393e5965..3d5aaf5e93 100644
--- a/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
+++ b/macros/latex/contrib/beamer-contrib/themes/beamertheme-tcolorbox/beamerinnerthemetcolorbox.sty
@@ -12,13 +12,14 @@
% See http://www.latex-project.org/lppl.txt
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{beamerinnerthemetcolorbox}[2022/08/26 version v0.1 Beamer blocks with tcolorboxes]
+\ProvidesPackage{beamerinnerthemetcolorbox}[2022/08/27 version v0.2 Beamer blocks with tcolorboxes]
-\RequirePackage[skins]{tcolorbox}
+\RequirePackage{tcolorbox}
+\tcbuselibrary{skins,hooks}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Theme Options
+% Theme Options
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifbeamer@tcb@rounded
@@ -43,6 +44,24 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
+% Colours
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\beamer@tcb@colini}[1][]{
+ \usebeamercolor[bg]{block body#1}
+ \colorlet{beamer@tcb@bodybg}{block body#1.bg}
+ \usebeamercolor[fg]{block body#1}
+ \colorlet{beamer@tcb@bodyfg}{block body#1.fg}
+ \usebeamercolor[bg]{block title#1}
+ \colorlet{beamer@tcb@titlebg}{block title#1.bg}
+ \usebeamercolor[fg]{block title#1}
+ \colorlet{beamer@tcb@titlefg}{block title#1.fg}
+}
+\beamer@tcb@colini
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
% General Settings
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -54,7 +73,11 @@
boxrule=0cm,
frame hidden,
top=1.5mm,
- bottom=0.5mm
+ bottom=0.5mm,
+ colback=beamer@tcb@bodybg,
+ colbacktitle=beamer@tcb@titlebg,
+ coltext=beamer@tcb@bodyfg,
+ coltitle=beamer@tcb@titlefg,
}
% optional settings
@@ -64,6 +87,9 @@
top=0.8mm,
toptitle=0.2mm,
bottom=0mm,
+ title code app={
+ \shade[top color=beamer@tcb@titlebg,bottom color=beamer@tcb@bodybg] (title.south west) rectangle ([yshift=-0.5mm]title.south east);
+ }
}
\else
\tcbset{sharpish corners}
@@ -82,90 +108,60 @@
% normal block
\setbeamertemplate{block begin}{%
- \usebeamercolor[bg]{block body}
- \usebeamercolor[bg]{block title}
- \colorlet{beamer@tcb@topshade}{block title.bg}
- \colorlet{beamer@tcb@bottomshade}{block body.bg}
- \ifbeamer@tcb@rounded\else
+ \beamer@tcb@colini
+ \unless\ifbeamer@tcb@rounded
\tcbset{title={\insertblocktitle}}
\fi
\ifx\insertblocktitle\@empty\else
\tcbset{title={\insertblocktitle}}
- \ifbeamer@tcb@rounded
- \tcbset{
- overlay={
- \begin{scope}
- \shade[top color=beamer@tcb@topshade,bottom color=beamer@tcb@bottomshade] (title.south west) rectangle ([yshift=-0.5mm]title.south east);
- \end{scope}
- }
- }
- \fi
\fi
\begin{tcolorbox}[
- colbacktitle=block title.bg,
- colback=block body.bg,
- before title={\usebeamercolor[fg]{block title}\usebeamerfont{block title}},
- before upper={\usebeamercolor[fg]{block body}\usebeamerfont{block body}},
+ colback=beamer@tcb@bodybg,
+ colbacktitle=beamer@tcb@titlebg,
+ coltext=beamer@tcb@bodyfg,
+ coltitle=beamer@tcb@titlefg,
+ before title={\usebeamerfont{block title}},
+ before upper={\usebeamerfont{block body}},
]
}
\setbeamertemplate{block end}{\end{tcolorbox}}
% alert block
\setbeamertemplate{block alerted begin}{%
- \usebeamercolor[bg]{block body alerted}
- \usebeamercolor[bg]{block title alerted}
- \colorlet{beamer@tcb@topshade}{block title alerted.bg}
- \colorlet{beamer@tcb@bottomshade}{block body alerted.bg}
- \ifbeamer@tcb@rounded\else
+ \beamer@tcb@colini[ alerted]
+ \unless\ifbeamer@tcb@rounded
\tcbset{title={\insertblocktitle}}
\fi
\ifx\insertblocktitle\@empty\else
\tcbset{title={\insertblocktitle}}
- \ifbeamer@tcb@rounded
- \tcbset{
- overlay={
- \begin{scope}
- \shade[top color=beamer@tcb@topshade,bottom color=beamer@tcb@bottomshade] (title.south west) rectangle ([yshift=-0.5mm]title.south east);
- \end{scope}
- }
- }
- \fi
\fi
\begin{tcolorbox}[
- colbacktitle=block title alerted.bg,
- colback=block body alerted.bg,
- before title={\usebeamercolor[fg]{block title alerted}\usebeamerfont{block title alerted}},
- before upper={\usebeamercolor[fg]{block body alerted}\usebeamerfont{block body alerted}},
+ colback=beamer@tcb@bodybg,
+ colbacktitle=beamer@tcb@titlebg,
+ coltext=beamer@tcb@bodyfg,
+ coltitle=beamer@tcb@titlefg,
+ before title={\usebeamerfont{block title alerted}},
+ before upper={\usebeamerfont{block body alerted}},
]
}
\setbeamertemplate{block alerted end}{\end{tcolorbox}}
% example block
\setbeamertemplate{block example begin}{%
- \usebeamercolor[bg]{block body example}
- \usebeamercolor[bg]{block title example}
- \colorlet{beamer@tcb@topshade}{block title example.bg}
- \colorlet{beamer@tcb@bottomshade}{block body example.bg}
- \ifbeamer@tcb@rounded\else
+\beamer@tcb@colini[ example]
+ \unless\ifbeamer@tcb@rounded
\tcbset{title={\insertblocktitle}}
\fi
\ifx\insertblocktitle\@empty\else
\tcbset{title={\insertblocktitle}}
- \ifbeamer@tcb@rounded
- \tcbset{
- overlay={
- \begin{scope}
- \shade[top color=beamer@tcb@topshade,bottom color=beamer@tcb@bottomshade] (title.south west) rectangle ([yshift=-0.5mm]title.south east);
- \end{scope}
- }
- }
- \fi
\fi
\begin{tcolorbox}[
- colbacktitle=block title example.bg,
- colback=block body example.bg,
- before title={\usebeamercolor[fg]{block title example}\usebeamerfont{block title example}},
- before upper={\usebeamercolor[fg]{block body example}\usebeamerfont{block body example}},
+ colback=beamer@tcb@bodybg,
+ colbacktitle=beamer@tcb@titlebg,
+ coltext=beamer@tcb@bodyfg,
+ coltitle=beamer@tcb@titlefg,
+ before title={\usebeamerfont{block title example}},
+ before upper={\usebeamerfont{block body example}},
]
}
\setbeamertemplate{block example end}{\end{tcolorbox}}