summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex')
-rw-r--r--Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex40
1 files changed, 23 insertions, 17 deletions
diff --git a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex
index 6a4d0932393..71a3876da32 100644
--- a/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex
+++ b/Master/texmf-dist/tex/generic/pgf/modules/pgfmoduleshapes.code.tex
@@ -7,7 +7,7 @@
%
% See the file doc/generic/pgf/licenses/LICENSE for more details.
-\ProvidesFileRCS $Header: /cvsroot/pgf/pgf/generic/pgf/modules/pgfmoduleshapes.code.tex,v 1.35 2014/03/21 19:52:38 tantau Exp $
+\ProvidesFileRCS{pgfmoduleshapes.code.tex}
@@ -41,6 +41,9 @@
{\pgferror{Unknown shape ``#1''}}%
{%
{%
+ \ifpgflatenodepositioning%
+ \pgfsys@beginscope%
+ \fi%
\pgf@outer@adjust@hook%
\let\pgf@sh@savedmacros=\pgfutil@empty% MW
\let\pgf@sh@savedpoints=\pgfutil@empty%
@@ -58,7 +61,7 @@
}%
% Save the saved points and the transformation matrix
\edef\pgf@node@name{#3}%
- \ifpgflatenodepositioning
+ \ifpgflatenodepositioning%
\pgf@shapes@late@pos@begin%
\fi%
\ifx\pgf@node@name\pgfutil@empty%
@@ -73,36 +76,39 @@
\expandafter\xdef\csname pgf@sh@pi@\pgf@node@name\endcsname{\pgfpictureid}%
\fi%
\pgfutil@ifundefined{pgf@sh@bbg@#1}{}
- {{\pgfscope\csname pgf@sh@bbg@#1\endcsname\endpgfscope}}%
+ {{\pgfusetype{.behind background}\pgfidscope\pgfscope\csname pgf@sh@bbg@#1\endcsname\endpgfscope\endpgfidscope}}%
\pgfutil@ifundefined{pgf@sh@bg@#1}{%
\global\let\pgfpositionnodelaterpath\pgfutil@empty%
}%
- {\csname pgf@sh@bg@#1\endcsname%
+ {\pgfpushtype%
+ \pgfusetype{.background}\csname pgf@sh@bg@#1\endcsname%
\ifpgflatenodepositioning%
\pgfsyssoftpath@getcurrentpath\pgfpositionnodelaterpath%
\pgfprocessround{\pgfpositionnodelaterpath}{\pgfpositionnodelaterpath}%
\global\let\pgfpositionnodelaterpath\pgfpositionnodelaterpath%
\fi%
- #4}%
+ #4\pgfpoptype}%
\pgfutil@ifundefined{pgf@sh@fbg@#1}{}
- {{\pgfscope\csname pgf@sh@fbg@#1\endcsname\endpgfscope}}%
+ {{\pgfusetype{.before background}\pgfidscope\pgfscope\csname pgf@sh@fbg@#1\endcsname\endpgfscope\endpgfidscope}}%
{%
\expandafter\pgfutil@for\expandafter\pgf@shape@com\expandafter:\expandafter=\csname pgf@sh@boxes@#1\endcsname\do{%
{%
+ \pgfusetype{.\pgf@shape@com}%
\pgftransformshift{\pgf@sh@reanchor{#1}{\pgf@shape@com}}%
- \pgfapproximatenonlineartransformation%
+ \pgfapproximatenonlineartransformation%
\expandafter\pgfqboxsynced\expandafter{\csname pgfnodepart\pgf@shape@com box\endcsname}%
}%
}%
}%
\pgfutil@ifundefined{pgf@sh@bfg@#1}{}%
- {{\pgfscope\csname pgf@sh@bfg@#1\endcsname\endpgfscope}}%
+ {{\pgfusetype{.behind foreground}\pgfidscope\pgfscope\csname pgf@sh@bfg@#1\endcsname\endpgfscope\endpgfidscope}}%
\pgfutil@ifundefined{pgf@sh@fg@#1}{}%
- {\csname pgf@sh@fg@#1\endcsname#4}%
+ {\pgfpushtype\pgfusetype{.foreground}\csname pgf@sh@fg@#1\endcsname#4\pgfpoptype}%
\pgfutil@ifundefined{pgf@sh@ffg@#1}{}%
- {{\pgfscope\csname pgf@sh@ffg@#1\endcsname\endpgfscope}}%
+ {{\pgfusetype{.before foreground}\pgfidscope\pgfscope\csname pgf@sh@ffg@#1\endcsname\endpgfscope\endpgfidscope}}%
\ifpgflatenodepositioning%
\pgf@shapes@late@pos@end%
+ \pgfsys@endscope%
\else%
\expandafter\pgf@nodecallback\expandafter{\pgf@node@name}%
\fi%
@@ -120,9 +126,11 @@
\pgf@relevantforpicturesizetrue%
\setbox\pgfpositionnodelaterbox=\hbox%
\bgroup%
+ \pgfsys@beginscope%
}
\def\pgf@shapes@late@pos@end{%
+ \pgfsys@endscope%
\egroup% Close box
\ifdim\pgf@picminx>\pgf@picmaxx\relax% happens for empty nodes
\def\pgfpositionnodelaterminx{0.0pt}%
@@ -539,15 +547,13 @@
\pgf@sh@reanchor{\csname pgf@sh@ns@#1\endcsname}{#2}%
{%
\pgfsettransform{\csname pgf@sh@nt@#1\endcsname}%
- \pgf@pos@transform{\pgf@x}{\pgf@y}%
- \global\pgf@x=\pgf@x%
- \global\pgf@y=\pgf@y%
+ \pgf@pos@transform@glob%
}%
% Add inter picture transformation
\pgf@shape@interpictureshift{#1}%
% Undo current transformation
\pgftransforminvert%
- \pgf@pos@transform{\pgf@x}{\pgf@y}%
+ \pgf@pos@transform@glob%
}%
}%
}
@@ -605,7 +611,7 @@
\pgf@process{\pgfpointtransformed{#2}}%
\pgfsettransform{\csname pgf@sh@nt@#1\endcsname}%
\pgftransforminvert%
- \pgf@pos@transform{\pgf@x}{\pgf@y}%
+ \pgf@pos@transform@glob%
\pgf@xa=\pgf@x%
\pgf@ya=\pgf@y%
\pgf@process{\csname pgf@anchor@\csname pgf@sh@ns@#1\endcsname @center\endcsname}%
@@ -614,7 +620,7 @@
\advance\pgf@ya by-\pgf@y%
\csname pgf@anchor@\csname pgf@sh@ns@#1\endcsname @border\endcsname{\pgfqpoint{\pgf@xa}{\pgf@ya}}%
\pgfsettransform{\csname pgf@sh@nt@#1\endcsname}%
- \pgf@pos@transform{\pgf@x}{\pgf@y}%
+ \pgf@pos@transform@glob%
\global\pgf@x=\pgf@x%
\global\pgf@y=\pgf@y%
}%
@@ -622,7 +628,7 @@
\pgf@shape@interpictureshift{#1}%
% Undo current transformation
\pgftransforminvert%
- \pgf@pos@transform{\pgf@x}{\pgf@y}%
+ \pgf@pos@transform@glob%
}%
}%
}