summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tcolorbox
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2012-03-16 23:09:16 +0000
committerKarl Berry <karl@freefriends.org>2012-03-16 23:09:16 +0000
commit7a512ee19c4e94fe3c8653353e33109b1fadaecf (patch)
tree9c53709b3ebb7b8b7a04e11d3402cf25c3971c54 /Master/texmf-dist/tex/latex/tcolorbox
parenta46348bb90baf5d9a63ba4c87cb3c22260046759 (diff)
tcolorbox (16mar12)
git-svn-id: svn://tug.org/texlive/trunk@25666 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/tcolorbox')
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex13
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex2
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex2
-rw-r--r--Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty274
4 files changed, 226 insertions, 65 deletions
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
index e66e5143807..af67fc2327c 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbdocumentation.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
+%% The LaTeX package tcolorbox - version 1.20 (2012/03/16)
%% tcbdocumentation.code.tex: Code for LaTeX documentations
%%
%% -------------------------------------------------------------------------------------------
@@ -54,9 +54,9 @@
% The following macros are taken from ltxdoc
\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}}
\def\marg#1{%
- {\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}}
+ {\ttfamily\char`\{}{\rmfamily\meta{#1}}{\ttfamily\char`\}}}
\def\oarg#1{%
- \colOpt{{\ttfamily[}\meta{#1}{\ttfamily]}}}
+ \colOpt{{\ttfamily[}{\rmfamily\meta{#1}}{\ttfamily]}}}
% language specific texts
\tcbset{
@@ -162,18 +162,18 @@
% main documentation environments
\newenvironment{docCommand}[2]{\begin{manual@entry}%
- \hypertarget{com:#1}{\manual@top{\disp@com{\cs{#1}}\index@Com{#1}\protected@edef\@currentlabel{\noexpand\cs{#1}}\label{com:#1}#2}}}%
+ \hypertarget{com:#1}{\manual@top{\disp@com{\cs{#1}}\index@Com{#1}\protected@edef\@currentlabel{\noexpand\cs{#1}}\label{com:#1}{\ttfamily #2}}}}%
{\end{manual@entry}}
\newenvironment{docEnvironment}[2]{\begin{manual@entry}%
- \hypertarget{env:#1}{\manual@top{\cs{begin}\brackets{\disp@com{#1}}\index@Env{#1}\protected@edef\@currentlabel{#1}\label{env:#1}#2}}%
+ \hypertarget{env:#1}{\manual@top{\cs{begin}\brackets{\disp@com{#1}}\index@Env{#1}\protected@edef\@currentlabel{#1}\label{env:#1}{\ttfamily #2}}}%
\manual@top{~~\meta{\kvtcb@text@envcontent}}%
\manual@top{\cs{end}\brackets{\disp@com{#1}}}}%
{\end{manual@entry}}
\newenvironment{docKey}[4][\@empty]{\begin{manual@entry}%
\ifx#1\@empty%
- \hypertarget{key:#2}{\manual@top{\disp@com{#2}\index@Key{#2}\protected@edef\@currentlabel{#2}\label{key:#2}#3\hfill(#4)}}
+ \hypertarget{key:#2}{\manual@top{\disp@com{#2}\index@Key{#2}\protected@edef\@currentlabel{#2}\label{key:#2}{\ttfamily #3}\hfill(#4)}}
\else\hypertarget{key:/#1/#2}{\manual@top{\disp@com{/#1/#2}\index@KeyPath{#1}{#2}\protected@edef\@currentlabel{/#1/#2}\label{key:/#1/#2}#3\hfill(#4)}}\fi}%
{\end{manual@entry}}
@@ -185,6 +185,7 @@
}
\def\docColor#1{\disp@com{#1}\index@Col{#1}}%
+\def\docAuxCommand#1{\disp@com{\cs{#1}}\index@Com{#1}}%
\def\ref@doc#1{\hyperlink{#1}{\texttt{\ref*{#1}}\textsuperscript{\ding{213}\,\kvtcb@text@pageshort\,\pageref*{#1}}}}
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex
index 6f0653f9c82..7da6520d564 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcblistings.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
+%% The LaTeX package tcolorbox - version 1.20 (2012/03/16)
%% tcblistings.code.tex: Code for colorboxes with listings
%%
%% -------------------------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex
index 864e30f103d..c5109fa8c12 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcbtheorems.code.tex
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
+%% The LaTeX package tcolorbox - version 1.20 (2012/03/16)
%% tcbtheorems.code.tex: Code for theorems in colorboxes
%%
%% -------------------------------------------------------------------------------------------
diff --git a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
index 2929cf75e57..2a1da7a1e92 100644
--- a/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
+++ b/Master/texmf-dist/tex/latex/tcolorbox/tcolorbox.sty
@@ -1,4 +1,4 @@
-%% The LaTeX package tcolorbox - version 1.10 (2012/03/01)
+%% The LaTeX package tcolorbox - version 1.20 (2012/03/16)
%% tcolorbox.sty: Text color boxes
%%
%% -------------------------------------------------------------------------------------------
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{tcolorbox}[2012/03/01 version 1.10 text color boxes]
+\ProvidesPackage{tcolorbox}[2012/03/16 version 1.20 text color boxes]
\RequirePackage{pgf}[2008/01/15]
\RequirePackage{calc}[2007/08/22]
@@ -45,11 +45,18 @@
\tcbset{
title/.store in=\kvtcb@title,
notitle/.style={title=},
+ adjusted title/.style={title={\rule[0mm-\depthof{pgjy}]{0mm}{\depthof{pgjy}+\heightof{\"A}}#1}},
width/.store in=\kvtcb@width,
boxsep/.store in=\kvtcb@boxsep,
boxrule/.store in=\kvtcb@boxrule,
- left/.store in=\kvtcb@left,
- right/.store in=\kvtcb@right,
+ lefttitle/.store in=\kvtcb@lefttitle,
+ leftupper/.store in=\kvtcb@leftupper,
+ leftlower/.store in=\kvtcb@leftlower,
+ left/.style={lefttitle=#1,leftupper=#1,leftlower=#1},
+ righttitle/.store in=\kvtcb@righttitle,
+ rightupper/.store in=\kvtcb@rightupper,
+ rightlower/.store in=\kvtcb@rightlower,
+ right/.style={righttitle=#1,rightupper=#1,rightlower=#1},
top/.store in=\kvtcb@top,
bottom/.store in=\kvtcb@bottom,
middle/.store in=\kvtcb@middle,
@@ -76,17 +83,37 @@
lowerbox/ignored/.code={\tcb@lowerignoredtrue\tcb@lowervisiblefalse},
parskip/.style={before={\par\pagebreak[0]\noindent},after={\par}},
noparskip/.style={before={\par\smallskip\pagebreak[0]\noindent},after={\par\smallskip}},
+ natural height/.code={\let\tcb@ch=\tcb@ch@natural},
+ height/.code={\def\tcb@height@fixed{#1}\let\tcb@ch=\tcb@ch@fixed},
+ equal height group/.code={\edef\tcb@ehgid{#1}\let\tcb@ch=\tcb@ch@equalheight},
+ minimum for equal height group/.code args={#1:#2}{\edef\tcb@ehgid{#1}\tcb@ehgadd{#2}},
+ space/.code={\def\tcb@height@fraction{#1}\let\tcb@ch@fixed@both=\tcb@ch@fixed@space},
+ space to upper/.style={space=1},
+ space to lower/.style={space=0},
+ space to both/.style={space=0.5},
+ split/.code={\def\tcb@height@fraction{#1}\let\tcb@ch@fixed@both=\tcb@ch@fixed@split},
+ valign/.store in=\kvtcb@valign,
+ valign lower/.store in=\kvtcb@valignlower,
+ skin/.store in=\kvtcb@skin,
+ enlarge top by/.store in=\kvtcb@bbtop,
+ enlarge bottom by/.store in=\kvtcb@bbbottom,
+ enlarge left by/.store in=\kvtcb@bbleft,
+ enlarge right by/.store in=\kvtcb@bbright,
+ toggle enlargement/.store in=\kvtcb@bbtoggle,
}
\tcbset{notitle,width=\linewidth,boxsep=1mm,boxrule=0.5mm,
left=4mm,right=4mm,top=2mm,bottom=2mm,middle=2mm,arc=1mm,lowerbox=visible,
colback=black!5,colframe=black!75,coltext=black,coltitle=white,
fonttitle=,fontupper=,fontlower=,floatplacement=htb,nofloat,savelowerto=,
- parskip,savedelimiter={tcolorbox},tempfile={\jobname.tcbtemp}}%
+ parskip,savedelimiter={tcolorbox},tempfile={\jobname.tcbtemp},skin=standard,
+ enlarge top by=0mm,enlarge bottom by=0mm,enlarge left by=0mm,enlarge right by=0mm,
+ toggle enlargement=none,
+}%
% lrbox with integrated minipage
-\def\tcb@lrbox#1{%
+\def\tcb@lrbox#1#2{%
\edef\reserved@a{%
\endgroup
\setbox#1\hbox{%
@@ -96,14 +123,14 @@
\reserved@a
\@endpefalse
\color@setgroup
- \ignorespaces\minipage\tcb@textdim\ignorespaces}
+ \ignorespaces\minipage#2\ignorespaces}
\def\endtcb@lrbox{\unskip\endminipage\unskip\color@endgroup}
\def\tcb@saveupperbox{%
- \begin{tcb@lrbox}{\tcb@upperbox}\color{\kvtcb@coltext}\kvtcb@fontupper\ignorespaces}
+\begin{tcb@lrbox}{\tcb@upperbox}{\tcb@widthupper}\color{\kvtcb@coltext}\kvtcb@fontupper\ignorespaces}
\def\tcb@savelowerbox{%
- \begin{tcb@lrbox}{\tcb@lowerbox}\color{\kvtcb@coltext}\kvtcb@fontlower\ignorespaces}
+ \begin{tcb@lrbox}{\tcb@lowerbox}{\tcb@widthlower}\color{\kvtcb@coltext}\kvtcb@fontlower\ignorespaces}
% counter for float
@@ -123,14 +150,21 @@
\tcbset{#1}%
\tcb@hasLowerfalse%
% computation of text width
- \setlength{\tcb@textdim}{\kvtcb@width-\kvtcb@boxsep*2-\kvtcb@boxrule*2-\kvtcb@left-\kvtcb@right}%
+ \setlength{\tcb@textdim}{\kvtcb@width-\kvtcb@boxsep*2-\kvtcb@boxrule*2}%
+ \edef\tcb@innerwidth{\the\tcb@textdim}%
+ \setlength{\tcb@textdim}{\tcb@innerwidth-\kvtcb@leftupper-\kvtcb@rightupper}%
+ \edef\tcb@widthupper{\the\tcb@textdim}%
\ifx\kvtcb@title\@empty\tcb@hasTitlefalse\else%
\tcb@hasTitletrue%
- \begin{tcb@lrbox}{\tcb@titlebox}\color{\kvtcb@coltitle}\kvtcb@fonttitle\kvtcb@title\end{tcb@lrbox}%
+ \setlength{\tcb@textdim}{\tcb@innerwidth-\kvtcb@lefttitle-\kvtcb@righttitle}%
+ \edef\tcb@widthtitle{\the\tcb@textdim}%
+ \begin{tcb@lrbox}{\tcb@titlebox}{\tcb@widthtitle}\color{\kvtcb@coltitle}\kvtcb@fonttitle\kvtcb@title\end{tcb@lrbox}%
\fi%
% switch for lower box
\def\tcblower{%
\end{tcb@lrbox}%
+ \setlength{\tcb@textdim}{\tcb@innerwidth-\kvtcb@leftlower-\kvtcb@rightlower}%
+ \edef\tcb@widthlower{\the\tcb@textdim}%
\tcb@hasLowertrue%
\ifx\kvtcb@savelowerto\@empty%
\let\tcb@startbox\tcb@savelowerbox%
@@ -154,7 +188,153 @@
\tcb@drawcolorbox%
}
-\let\endtcolorbox\tcb@endboxanddraw
+\let\endtcolorbox=\tcb@endboxanddraw
+
+% height computations
+\def\tcb@ch@natural{%
+ \edef\tcb@height{\tcb@natheight}%
+ \setlength{\tcb@textdim}{\ht\tcb@upperbox+\dp\tcb@upperbox}%
+ \edef\tcb@height@upper{\the\tcb@textdim}%
+ \iftcb@hasLower\iftcb@lowerignored\else%
+ \setlength{\tcb@textdim}{\ht\tcb@lowerbox+\dp\tcb@lowerbox}%
+ \edef\tcb@height@lower{\the\tcb@textdim}%
+ \fi\fi%
+}
+
+\def\tcb@ch@fixed@upper{%
+ \setlength{\tcb@textdim}{\ht\tcb@upperbox+\dp\tcb@upperbox+\tcb@height-\tcb@natheight}%
+ \edef\tcb@height@upper{\the\tcb@textdim}%
+}
+
+\def\tcb@ch@fixed@space{%
+ \setlength{\tcb@textdim}{\tcb@height-\tcb@natheight}%
+ \edef\tcb@height@space{\the\tcb@textdim}%
+ \setlength{\tcb@textdim}{\tcb@height@space*\real{\tcb@height@fraction}}%
+ \edef\tcb@height@spaceupper{\the\tcb@textdim}%
+ \setlength{\tcb@textdim}{\ht\tcb@upperbox+\dp\tcb@upperbox+\tcb@height@spaceupper}%
+ \edef\tcb@height@upper{\the\tcb@textdim}%
+ \setlength{\tcb@textdim}{\ht\tcb@lowerbox+\dp\tcb@lowerbox+\tcb@height@space-\tcb@height@spaceupper}%
+ \edef\tcb@height@lower{\the\tcb@textdim}%
+}
+
+\def\tcb@ch@fixed@split{%
+ \setlength{\tcb@textdim}{\tcb@height-\tcb@natheight+\ht\tcb@upperbox+\dp\tcb@upperbox+\ht\tcb@lowerbox+\dp\tcb@lowerbox}%
+ \edef\tcb@height@space{\the\tcb@textdim}%
+ \setlength{\tcb@textdim}{\tcb@height@space*\real{\tcb@height@fraction}}%
+ \edef\tcb@height@upper{\the\tcb@textdim}%
+ \setlength{\tcb@textdim}{\tcb@height@space-\tcb@height@upper}%
+ \edef\tcb@height@lower{\the\tcb@textdim}%
+}
+
+\def\tcb@ch@fixed{%
+ \edef\tcb@height{\tcb@height@fixed}%
+ \iftcb@hasLower%
+ \iftcb@lowerignored\tcb@ch@fixed@upper\else\tcb@ch@fixed@both\fi%
+ \else\tcb@ch@fixed@upper\fi%
+}
+
+\def\tcb@saveehg#1{%
+ \immediate\write\@auxout{\string\gdef\string\tcb@ehg@#1@height{\csname tcb@ehg@#1@current\endcsname}}%
+}
+
+\def\tcb@ehgadd#1{%
+ \@ifundefined{tcb@ehg@\tcb@ehgid @current}{%
+ \expandafter\xdef\csname tcb@ehg@\tcb@ehgid @current\endcsname{#1}%
+ \edef\tcb@temp{\noexpand\AtEndDocument{\noexpand\tcb@saveehg{\tcb@ehgid}}}%
+ \tcb@temp}{%
+ \ifdim\csname tcb@ehg@\tcb@ehgid @current\endcsname<#1%
+ \expandafter\xdef\csname tcb@ehg@\tcb@ehgid @current\endcsname{#1}\fi}%
+}
+
+\def\tcb@ch@equalheight{%
+ \tcb@ehgadd{\tcb@natheight}%
+ \@ifundefined{tcb@ehg@\tcb@ehgid @height}{%
+ \edef\tcb@height{\tcb@natheight}}{%
+ \ifdim\csname tcb@ehg@\tcb@ehgid @height\endcsname<\tcb@natheight%
+ \edef\tcb@height{\tcb@natheight}%
+ \else
+ \edef\tcb@height{\csname tcb@ehg@\tcb@ehgid @height\endcsname}%
+ \fi}%
+ \iftcb@hasLower%
+ \iftcb@lowerignored\tcb@ch@fixed@upper\else\tcb@ch@fixed@both\fi%
+ \else\tcb@ch@fixed@upper\fi%
+}
+
+\def\tcb@dbox@top#1#2#3#4{\pgftext[x=#1,y=#2+#3,left,top]{\usebox{#4}}}%
+
+\def\tcb@dbox@bottom#1#2#3#4{\pgftext[x=#1,y=#2,left,bottom]{\usebox{#4}}}%
+
+\def\tcb@dbox@center#1#2#3#4{\pgftext[x=#1,y=#2+#3/2,left]{\usebox{#4}}}%
+
+\tcbset{natural height,space to lower,valign=top,valign lower=top}
+
+
+% graphical environment
+\def\tcb@drawenv@standard{pgfpicture}
+
+% fill frame
+\def\tcb@drawframe@standard{%
+ \begin{pgfscope}%
+ \pgfsetcornersarced{\pgfpoint{\kvtcb@arc+\kvtcb@boxrule}{\kvtcb@arc+\kvtcb@boxrule}}%
+ \pgfsetfillcolor{\kvtcb@colframe}%
+ \pgfpathrectangle{\pgfpoint{0mm}{0mm}}{\pgfpoint{\kvtcb@width}{\tcb@height}}%
+ \pgfusepath{fill}%
+ \end{pgfscope}%
+}
+
+% fill inner box with title
+\def\tcb@drawwithtitle@standard{%
+ \begin{pgfscope}%
+ \pgfsetcornersarced{\pgfpoint{0mm}{0mm}}%
+ \pgfmoveto{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule}}%
+ \pgflineto{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule+\tcb@innerheight}}%
+ \pgflineto{\pgfpoint{\kvtcb@width-\kvtcb@boxrule}{\kvtcb@boxrule+\tcb@innerheight}}%
+ \pgfsetcornersarced{\pgfpoint{\kvtcb@arc}{\kvtcb@arc}}%
+ \pgflineto{\pgfpoint{\kvtcb@width-\kvtcb@boxrule}{\kvtcb@boxrule}}%
+ \pgflineto{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule}}%
+ \pgfpathclose%
+ \pgfsetfillcolor{\kvtcb@colback}%
+ \pgfusepath{fill}%
+ \end{pgfscope}%
+}
+
+% fill inner box without title
+\def\tcb@drawwithouttitle@standard{%
+ \begin{pgfscope}%
+ \pgfsetcornersarced{\pgfpoint{\kvtcb@arc}{\kvtcb@arc}}%
+ \pgfsetfillcolor{\kvtcb@colback}%
+ \pgfpathrectangle{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule}}%
+ {\pgfpoint{\kvtcb@width-\kvtcb@boxrule*2}{\tcb@innerheight}}%
+ \pgfusepath{fill}%
+ \end{pgfscope}%
+}
+
+% draw segmentation line
+\def\tcb@drawlower@standard{%
+ \begin{pgfscope}%
+ \pgfsetcolor{\kvtcb@colframe}%
+ \pgfsetdash{{1mm}{1mm}}{0.5mm}%
+ \setlength{\tcb@textdim}{\kvtcb@boxrule+\kvtcb@boxsep*2+\kvtcb@middle+\kvtcb@bottom+\tcb@height@lower}%
+ \pgfpathmoveto{\pgfpoint{\kvtcb@boxrule}{\tcb@textdim}}%
+ \pgfpathlineto{\pgfpoint{\kvtcb@width-\kvtcb@boxrule}{\tcb@textdim}}%
+ \pgfusepath{stroke}%
+ \end{pgfscope}%
+}
+
+
+\def\tcb@setbb@toggle@none{%
+ \pgfpathrectanglecorners{\pgfpoint{-\kvtcb@bbleft}{-\kvtcb@bbbottom}}%
+ {\pgfpoint{\kvtcb@width+\kvtcb@bbright}{\tcb@height+\kvtcb@bbtop}}%
+}
+
+\def\tcb@setbb@toggle@forced{%
+ \pgfpathrectanglecorners{\pgfpoint{-\kvtcb@bbright}{-\kvtcb@bbbottom}}%
+ {\pgfpoint{\kvtcb@width+\kvtcb@bbleft}{\tcb@height+\kvtcb@bbtop}}%
+}
+
+\def\tcb@setbb@toggle@evenpage{%
+ \ifodd\thepage\tcb@setbb@toggle@none\else\tcb@setbb@toggle@forced\fi%
+}
\def\tcb@drawcolorbox{%
% floats
@@ -170,65 +350,45 @@
\iftcb@hasLower\iftcb@lowerignored\else%
\addtolength{\tcb@textdim}{\kvtcb@boxsep*2+\kvtcb@middle*2+\ht\tcb@lowerbox+\dp\tcb@lowerbox}%
\fi\fi%
- \begin{tcb@float}\begin{pgfpicture}%
- \begin{pgfscope}%
- \pgfpathrectangle{\pgfpoint{0mm}{0mm}}{\pgfpoint{\kvtcb@width}{\tcb@textdim}}%
+ \edef\tcb@natheight{\the\tcb@textdim}%
+ \tcb@ch%
+ \begin{tcb@float}\begin{\csname tcb@drawenv@\kvtcb@skin\endcsname}%
+ %\pgfpathrectangle{\pgfpoint{0mm}{0mm}}{\pgfpoint{\kvtcb@width}{\tcb@height}}%
+ \csname tcb@setbb@toggle@\kvtcb@bbtoggle\endcsname%
\pgfusepath{use as bounding box}%
- % fill box
- \pgfsetcornersarced{\pgfpoint{\kvtcb@arc+\kvtcb@boxrule}{\kvtcb@arc+\kvtcb@boxrule}}%
- \pgfsetfillcolor{\kvtcb@colframe}%
- \pgfpathrectangle{\pgfpoint{0mm}{0mm}}{\pgfpoint{\kvtcb@width}{\tcb@textdim}}%
- \pgfusepath{fill}%
- \end{pgfscope}%
+ % fill frame
+ \csname tcb@drawframe@\kvtcb@skin\endcsname%
% set title
\iftcb@hasTitle%
- \addtolength{\tcb@textdim}{-\kvtcb@boxrule-\kvtcb@boxsep}%
- \pgftext[x=\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@left,
+ \setlength{\tcb@textdim}{\tcb@height-\kvtcb@boxrule-\kvtcb@boxsep}%
+ \pgftext[x=\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@lefttitle,
y=\tcb@textdim,left,top]{\usebox{\tcb@titlebox}}%
- % width of inner box
+ % height of inner box
\addtolength{\tcb@textdim}{-\ht\tcb@titlebox-\dp\tcb@titlebox-\kvtcb@boxrule*2-\kvtcb@boxsep}%
- \begin{pgfscope}%
+ \edef\tcb@innerheight{\the\tcb@textdim}%
% fill inner box with title
- \pgfsetcornersarced{\pgfpoint{0mm}{0mm}}%
- \pgfmoveto{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule}}%
- \pgflineto{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule+\tcb@textdim}}%
- \pgflineto{\pgfpoint{\kvtcb@width-\kvtcb@boxrule}{\kvtcb@boxrule+\tcb@textdim}}%
- \pgfsetcornersarced{\pgfpoint{\kvtcb@arc}{\kvtcb@arc}}%
- \pgflineto{\pgfpoint{\kvtcb@width-\kvtcb@boxrule}{\kvtcb@boxrule}}%
- \pgflineto{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule}}%
- \pgfpathclose
- \pgfsetfillcolor{\kvtcb@colback}%
- \pgfusepath{fill}%
- \end{pgfscope}%
+ \csname tcb@drawwithtitle@\kvtcb@skin\endcsname%
\else%
- \addtolength{\tcb@textdim}{-\kvtcb@boxrule*2}%
- \begin{pgfscope}%
- % fill inner box without title
- \pgfsetcornersarced{\pgfpoint{\kvtcb@arc}{\kvtcb@arc}}%
- \pgfsetfillcolor{\kvtcb@colback}%
- \pgfpathrectangle{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule}}%
- {\pgfpoint{\kvtcb@width-\kvtcb@boxrule*2}{\tcb@textdim}}%
- \pgfusepath{fill}%
- \end{pgfscope}%
+ \setlength{\tcb@textdim}{\tcb@height-\kvtcb@boxrule*2}%
+ \edef\tcb@innerheight{\the\tcb@textdim}%
+ % fill inner box without title
+ \csname tcb@drawwithouttitle@\kvtcb@skin\endcsname%
\fi%
% draw upper box
- \pgftext[x=\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@left,
- y=\tcb@textdim+\kvtcb@boxrule-\kvtcb@boxsep-\kvtcb@top,left,top]{\usebox{\tcb@upperbox}}%
+ \csname tcb@dbox@\kvtcb@valign\endcsname{\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@leftupper}%
+ {\tcb@innerheight+\kvtcb@boxrule-\kvtcb@boxsep-\kvtcb@top-\tcb@height@upper}%
+ {\tcb@height@upper}{\tcb@upperbox}%
% draw lower box
\iftcb@hasLower\iftcb@lowerignored\else%
- \begin{pgfscope}%
- \pgfsetcolor{\kvtcb@colframe}%
- \pgfsetdash{{1mm}{1mm}}{0.5mm}%
- \pgfpathmoveto{\pgfpoint{\kvtcb@boxrule}{\kvtcb@boxrule+\kvtcb@boxsep*2+\kvtcb@middle+\kvtcb@bottom+\ht\tcb@lowerbox+\dp\tcb@lowerbox}}%
- \pgfpathlineto{\pgfpoint{\kvtcb@width-\kvtcb@boxrule}{\kvtcb@boxrule+\kvtcb@boxsep*2+\kvtcb@middle+\kvtcb@bottom+\ht\tcb@lowerbox+\dp\tcb@lowerbox}}%
- \pgfusepath{stroke}%
- \end{pgfscope}%
+ % draw segmentation line
+ \csname tcb@drawlower@\kvtcb@skin\endcsname%
\iftcb@lowervisible%
- \pgftext[x=\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@left,
- y=\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@bottom,left,bottom]{\usebox{\tcb@lowerbox}}%
+ \csname tcb@dbox@\kvtcb@valignlower\endcsname{\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@leftlower}%
+ {\kvtcb@boxrule+\kvtcb@boxsep+\kvtcb@bottom}%
+ {\tcb@height@lower}{\tcb@lowerbox}%
\fi%
\fi\fi%
- \end{pgfpicture}\end{tcb@float}%
+ \end{\csname tcb@drawenv@\kvtcb@skin\endcsname}\end{tcb@float}%
}