%% xy17oztex.tex from $Id: xy17oztex.doc,v 3.3 1996/12/18 14:21:23 ross Exp $
%%
%% Xy-pic ``OzTeX v1.7'' driver interface option.
%% Copyright (c) 1995-1996 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-1996 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{17oztex}{OzTeX v1.7 driver}{\stripRCS$Revision: 3.3 $}%
 {Ross Moore}{ross@mpce.mq.edu.au}%
 {Mathematics Department, Macquarie University, NSW~2109, Australia}
\xydef@\OzTeX@@#1{\dvimessage@{OzTeX v1.7}{#1}}
\newdriver{%
 \xyaddsupport{color}\oldoztexColor@@
 \xyaddsupport{crayon}\oldoztexCrayon@@
 \xyaddsupport{ps}\oldoztexPS@@
 \xyaddsupport{rotate}\oldoztexRotate@@
 \xyaddsupport{line}\oldoztexLine@@
 \xyaddsupport{frame}\oldoztexFrames@@
 \xyaddsupport{tile}\oldoztexTiles@@
 \xyaddsupport{cmtip}\relax
}
\xydef@\oldoztexColor@@{\oldOzTeXColours@}
\xydef@\oldOzTeXColours@{\oldOzTeXPStypes@
 \let\xylocalColor@=\xyNoColor@@ \def\xycolor@{\xycolor@@}%
 \expandafter\ifx\csname xyps-psloaded\endcsname\empty\DN@{%
 \xyinputorelse@{xyps-c}{\xydrivernoload@{ps-c}}%
 \installPScolor@ }\else\DN@{}\fi \next@
 \ifx\xycrayolaloaded\empty \DN@{\xystandardcolors@\oldOzTeXCrayon@@{}}%
 \else\let\next@=\xystandardcolors@\fi \next@
 \let\xycolorwarning@=\relax
 \let\oldoztexColor@@=\relax
 \let\UnloadColor@@=\NooldOzTeXColor@
 }
\xydef@\NooldOzTeXColor@{%
 \let\xylocalColor@=\xyNoColor@@
 \let\xycolor@=\xyNoColor@
 \let\xycolorwarning@=\xycolorwarning@@
 \let\oldoztexColor@@=\oldOzTeXColours@
 \let\UnloadColor@@=\UnloadColor@
 }
\xydef@\oldOzTeXCrayon@@{\installCrayolaColors@}
\xydef@\oldoztexPS@@{\oldoztexPS@}
\xydef@\oldoztexPSunload@{\UnloadPS@
 \def\xyPSdictname{}\UsePSdict@@false
 \let\installxyps@@=\relax
 \let\UnloadPS@@=\UnloadPS@
 \xyPSshapes@true 
 \let\oldoztexPS@@=\oldoztexPS@ }
\xydef@\oldOzTeXSpecial@#1{\special{empty.ps {#1}xy}}
\xydef@\oldOzTeXMacro@#1{\special{empty.ps {#1}xy}}
\xydef@\oldOzTeXDict@#1{\special{empty.ps @obxy{#1}stopped pop @eoxy}}
\xydef@\oldOzTeXinclude@#1{\special{#1}}
\xydef@\oldOzTeXraw@#1{\special{empty.ps @boxy #1 @eoxy}}%
\xydef@\oldOzTeXPStypes@{%
 \xyinputorelse@{xyps-ps}{\xydrivernoload@{ps-ps}}%
 \ifx\PSspecial@@\oldOzTeXSpecial@\else
 \let\PSspecial@@=\oldOzTeXSpecial@
 \let\PSmacro@@=\oldOzTeXMacro@
 \let\PSdict@@=\oldOzTeXDict@
 \let\PSraw@@=\oldOzTeXraw@
 \let\PSinclude@@=\oldOzTeXinclude@
 \let\xyPSobeylines@@=\obeyoldOzTeXlines@
 \let\PSspecialdict@@=\oldOzTeXDict@
 \oldOzTeX@@{PostScript}%
 \fi
 \oldOzTeXCurrpt@ }
{\catcode`\^^M=\active
 \gdef\next{\catcode`\^^M=\active \let^^M=\space \obeyspaces}}
\xylet@\obeyoldOzTeXlines@=\next
\xydef@\oldOzTeXCurrpt@{\let\xyPScurrpt@@=\OzTeXCurrpt@@}%
\xydef@\oldOzTeXCurrpt@@{}
\xydef@\oldoztexPS@@{\oldOzTeXPStypes@ 
 \let\installxyps@@=\old@OzTeX@PS@
 \installxyps@ }
\xydef@\old@OzTeX@PS@{\UsePSdict@@true
 \let\includePSmessage@=\xyoldOzTeXheader 
 \ifx\undefined\xyPSdictname\def\xyPSdictname{global.ps}\fi}
\xydef@\xyoldOzTeXheader#1#2#3{\UsePSdict@@true}
\xydef@\oldoztexLine@@{\oldoztexLine@}
\xydef@\oldoztexLine@{\oldOzTeXPStypes@
 \expandafter\ifx\csname xyps-psloaded\endcsname\empty\DN@{%
 \xyinputorelse@{xyps-l}{\xydrivernoload@{ps-l}}\installPSline@ }%
 \else\DN@{\xydriverfail@{line-styles are}\UnloadLine@\relax}\fi
 \next@ }
\xydef@\oldoztexFrames@@{\oldOzTeXFrames@}
\xydef@\oldOzTeXFrames@{\oldOzTeXPStypes@
 \expandafter\ifx\csname xyps-psloaded\endcsname\empty\DN@{%
 \xyinputorelse@{xyps-f}{\xydrivernoload@{ps-f}}\installPSframes@ }%
 \else\DN@{\xydriverfail@{frames are}\UnloadPSFrames@\relax}\fi
 \next@ }
\xydef@\oldoztexTiles@@{\oldOzTeXTiles@}
\xydef@\oldOzTeXTiles@{\oldOzTeXPStypes@
 \expandafter\ifx\csname xyps-psloaded\endcsname\empty\DN@{%
 \xyinputorelse@{xyps-t}{\xydrivernoload@{ps-t}}\installPSpatterns@
 \xystandardpatterns@ }%
 \else\DN@{\xydriverfail@{Patterns are}\UnloadPSpatterns@\relax}\fi
 \next@ }
\xydef@\oldoztexRotate@@{\oldOzTeXRotate@}
\xydef@\oldOzTeXRotate@{\oldOzTeXPStypes@
 \expandafter\ifx\csname xyps-psloaded\endcsname\empty\DN@{%
 \xyinputorelse@{xyps-r}{\xydrivernoload@{ps-r}}%
 \xyRotScale@@ \installPSrotscale@ \xyPSshapes@false }%
 \else\DN@{\xydriverfail@{rotations are}\UnloadRotate@\relax}\fi
 \next@ }
\xyendinput
