diff options
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.sty | 112 |
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}} |