%% xyps-c.tex from $Id: xyps-c.doc,v 3.3 1996/12/18 10:05:50 ross Exp $ %% %% Xy-pic ``Colour extension'' PostScript backend support. %% Copyright (c) 1993-1996 Ross Moore %% %% 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-1996 Kristoffer H. Rose %% %% 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. %% \expandafter\ifx\csname xyps-cloaded\endcsname\empty \message{not reloaded}\endinput \fi \expandafter\let\csname xyps-cloaded\endcsname=\empty \xycatcodes \expandafter\ifx \csname xyps-sloaded\endcsname\empty\else \xyinputorelse@{xyps-s}{\xyerror@{Could not load xyps-s}{}}% \xycatcodes\fi \xydef@\UsePScolor{\installPScolor@} \xydef@\NoPScolor{\UnloadColor@} \xydef@\installPScolor@{\installPSstyle@ \let\xymath@=\xyPSmath@ \let\xynomath@=\xyPSnomath@ \let\checkxyPScolor@=\checkxyPScolor@@ \let\xycolor@@=\xyPScolor@@ \xystandardcolors@ \xyuncatcodes } \xydef@\xyPSmath@{\hbox\bgroup\dimen@=.55ex \checkxyPScolor@ \xyinside@} \xydef@\xyPSnomath@{\hbox\bgroup\dimen@=\z@ \checkxyPScolor@ \xyinside@} \xydef@\checkxyPScolor@@{\xycolor@raw@@{}\let\checkxyPScolor@=\relax} \xylet@\checkxyPScolor@=\relax \xydef@\xyPSnewcolor@#1#2#3#4#5{% \expandafter\DN@\expandafter{\csname shape [#1]\endcsname}% \DNii@{\relax}\ifx\next@\nextii@\newxycolor{#1}{}\relax\fi \DNii@{#4}\ifx\nextii@\empty \expandafter\DNii@\expandafter{\csname xyPSshape@#1@\endcsname}% \expandafter\def\nextii@{\xyPScolor@{#2 #3}}\else \expandafter\DNii@\expandafter{\csname xyPSshape@#1@\endcsname}% \expandafter\def\nextii@{\xyPScolor@{#4}}\fi \ifx\nextii@\empty\expandafter\def\next@{\xyPSnotimplemented@@`#1'@@}% \else \edef\tmp@{\noexpand\let\expandafter\noexpand\next@ \expandafter\noexpand\nextii@}\expandafter\tmp@\fi } \xydef@\xyPScolor@{\ifPSspecials@\expandafter\xyPScolor@@ \else\expandafter\eat@\fi} \xydef@\xyPScolor@@#1{\bgroup \checkXyStyle@ \def\preStyle@@{\expandafter\addtostyletoks@\expandafter{\xyPSpre@}}% \def\postStyle@@{\expandafter\addtostyletoks@\expandafter{\xyPSpost@}}% \let\modPSboxz@=\modXYstyle@ \xyPS@color@@{#1}% \toks@={\egroup\let\xy@style@=\relax \def\Drop@@}% \expandafter\addtotoks@\expandafter{\expandafter{\Drop@@}\def\Connect@@}% \expandafter\addtotoks@\expandafter{\expandafter{\Connect@@}}% \the\toks@ } \xydef@\xyPS@color@@#1{\xyPSsplitPS@{{#1}cc}{}} \xydef@\xycolor@raw@@#1{\PSraw@@{xyc}} \endinput