summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/generic/xypic/xytile.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/generic/xypic/xytile.tex')
-rw-r--r--Master/texmf-dist/tex/generic/xypic/xytile.tex126
1 files changed, 126 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/generic/xypic/xytile.tex b/Master/texmf-dist/tex/generic/xypic/xytile.tex
new file mode 100644
index 00000000000..1b7af8f47e1
--- /dev/null
+++ b/Master/texmf-dist/tex/generic/xypic/xytile.tex
@@ -0,0 +1,126 @@
+%% xytile.tex from $Id: xytile.doc,v 3.4 1997/05/18 01:13:24 ross Exp $
+%%
+%% Xy-pic ``Pattern and Tile extension'' option.
+%% Copyright (c) 1993-1997 Ross Moore <ross@mpce.mq.edu.au>
+%%
+%% This file is part of the Xy-pic package for graphs and diagrams in TeX.
+%% See the companion README and INSTALL files for further information.
+%% Copyright (c) 1991-1997 Kristoffer H. Rose <krisrose@brics.dk>
+%%
+%% The Xy-pic package is free software; you can redistribute it and/or modify
+%% it under the terms of the GNU General Public License as published by the
+%% Free Software Foundation; either version 2 of the License, or (at your
+%% option) any later version.
+%%
+%% The Xy-pic package is distributed in the hope that it will be useful, but
+%% WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+%% or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+%% for more details.
+%%
+%% You should have received a copy of the GNU General Public License along
+%% with this package; if not, write to the Free Software Foundation, Inc.,
+%% 675 Mass Ave, Cambridge, MA 02139, USA.
+%%
+\ifx\xyloaded\undefined \input xy \fi
+\xyprovide{tile}{Pattern and Tile extension}{\stripRCS$Revision: 3.4 $}%
+ {Ross Moore}{ross@mpce.mq.edu.au}%
+ {Mathematics Department, Macquarie University, NSW~2109, Australia}
+\xydef@\xypatternwarning@@{\xypatternmessage@
+ \gdef\xypatternwarning@{\xypatternmessage@
+ \xywarning@{...no further pattern warnings will be given.}%
+ \global\let\xypatternwarning@=\relax }}
+\xylet@\xypatternwarning@=\xypatternwarning@@
+\xydef@\xypatternmessage@{%
+ \xywarning@{Current driver does not support patterns.}}%
+\xydef@\newxypattern{\begingroup\xycatcodes\newxypattern@i}
+\xydef@\newxypattern@i#1#2{\edef\next@{\endgroup
+ \noexpand\newxyPattern{#1}{}{#2}{}}\next@}
+\xydef@\newxyPattern#1#2#3#4{\newxypattern@{#1}{#2}{#3}{#4}{}}
+\xydef@\newxypattern@#1#2#3#4#5{%
+ \expandafter\let\expandafter\next@\csname shape [#1]\endcsname
+ \ifx\next@\relax
+ \DN@{#4}\ifx\next@\empty
+ \DN@{#2}\ifx\next@\empty
+ \DN@{\newxystyle{#1}{\xylocalpattern@{}{#3}\xypattern@{#3}}}%
+ \else
+ \DN@{\newxystyle{#1}{\xylocalpattern@{#2}{#3}\xypattern@{#2 #3}}}%
+ \fi
+ \else\DN@{#2#3}\ifx\next@\empty
+ \DN@{\newxystyle{#1}{\xylocalpattern@{#4}{}\xypattern@{#4}}}%
+ \else
+ \DN@{\newxystyle{#1}{\xylocalpattern@{#2}{#3}\xypattern@{#4}}}%
+ \fi\fi
+ \else \def\tmp@{\relax}\DNii@{#5}%
+ \ifx\nextii@\tmp@
+ \DN@{#4}\ifx\next@\empty
+ \DN@{#2}\ifx\next@\empty
+ \DN@{\newxystyle{#1}{\xylocalpattern@{}{#3}\xypattern@{#3}}}%
+ \else
+ \DN@{\newxystyle{#1}{\xylocalpattern@{#2}{#3}\xypattern@{#2 #3}}}%
+ \fi
+ \else
+ \DN@{#2#3}\ifx\next@\empty
+ \DN@{\newxystyle{#1}{\xylocalpattern@{#4}{}\xypattern@{#4}}}%
+ \else
+ \DN@{\newxystyle{#1}{\xylocalpattern@{#2}{#3}\xypattern@{#4}}}%
+ \fi\fi
+ \else\DN@{}\fi\fi \next@\relax }
+\xydef@\xyNopattern@#1{}
+\xylet@\xypattern@@=\xyNopattern@
+\xydef@\xyNopattern@@#1#2{\xypatternwarning@}
+\xylet@\xypattern@=\xypattern@@
+\xylet@\xylocalpattern@=\xyNopattern@@
+\xydef@\Unloadpattern@{%
+ \let\xylocalpattern@=\xyNopattern@@
+ \let\xypattern@=\xyNopattern@
+ \let\xypatternwarning@=\xypatternwarning@@ }
+\Unloadpattern@
+\xydef@\xystandardpatterns@{}%
+\xynew@{read}{\xypatread@}
+\xydef@\defaultpattfile@{}
+\xydef@\xygetfilepatterns@#1{\DN@{#1}%
+ \ifx\next@\empty
+ \ifx\defaultpattfile@\empty \xywarning@{No pattern file specified.}%
+ \else \DN@{\expandafter\openpattfile@\expandafter{\defaultpattfile@}}\fi
+ \else \DN@{\openpattfile@{#1}}\fi \next@ }
+\xydef@\openpattfile@#1{\openin\xypatread@=#1.xyp
+ \ifeof\xypatread@\xywarning@{No patterns in file: #1.xyp}%
+ \closein\xypatread@
+ \else \expandafter \xyreadpatfile@ \fi }%
+\xydef@\UsePatternFile#1{\def\defaultpattfile@{#1}}
+\xydef@\LoadAllPatterns{\let\parsepattern@=\parsepattern@@
+ \xygetfilepatterns@ }
+\xydef@\LoadPattern#1{\let\parsepattern@=\filepattern@@
+ \def\pattname@{#1}\xygetfilepatterns@}
+\xydef@\AliasPattern#1#2{\let\parsepattern@=\aliaspattern@@
+ \def\aliasname@{#1}\def\pattname@{#2}\xygetfilepatterns@}
+\xydef@\xyreadpatfile@{%
+ \loop@ \bgroup\xycatcodes
+ \global\read\xypatread@ to\xypatline@
+ \ifeof\xypatread@ \aftergroup\endpatread@
+ \else\aftergroup\morepatread@\fi \edef\next@{%
+ \egroup\noexpand\getxypattern@{\xypatline@!!!}\relax}\next@
+ \repeat@ }
+\xydef@\endpatread@{\closein\xypatread@\iffalse}
+\xydef@\morepatread@{\iftrue}
+\xydef@\getxypattern@#1{\def\next{#1}\getxypattern@@}
+\xydef@\getxypattern@@{\DN@{!!!}\ifx\next\next@\DN@{}%
+ \else\DN@{\expandafter\parsepattern@\next}\fi \next@ }
+\xydef@\parsepattern@@#1 #2!#3\relax{\newxypattern{#1}{#2}}
+\xydef@\filepattern@@#1 #2!#3\relax{\DN@{#1}%
+ \ifx\next@\pattname@
+ \DN@{\expandafter\foundpattern@\expandafter{\pattname@}{#2}}%
+ \else\DN@{}\fi \next@ }
+\xydef@\foundpattern@#1#2{\newxypattern{#1}{#2}\endpatread@\fi
+ \expandafter\eat@}
+\xydef@\aliaspattern@@#1 #2!#3\relax{\DN@{#1}%
+ \ifx\next@\pattname@
+ \DN@{\expandafter\foundpattern@\expandafter{\aliasname@}{#2}}%
+ \else\DN@{}\fi \next@ }
+\DN@{\xyaddunsupport{tile}\Unloadpattern@}%
+\ifx\xyeverywithoption@tile@\undefined
+\else\ifx\xyeverywithoption@tile@\empty
+\else
+ \DN@{\xysetup@@{\xywithoption{tile}{\xyeverywithoption@tile@\xydriversloaded@@}}}%
+\fi\fi \next@
+\xyendinput