From 2607d53137ede06e9780342b225218743e100bb4 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Sun, 27 Aug 2006 22:38:54 +0000
Subject: oberdiek update from tds zip (28aug06)

git-svn-id: svn://tug.org/texlive/trunk@2054 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/latex/oberdiek/picture.sty | 198 +++++++++++++++++++++++
 1 file changed, 198 insertions(+)
 create mode 100644 Master/texmf-dist/tex/latex/oberdiek/picture.sty

(limited to 'Master/texmf-dist/tex/latex/oberdiek/picture.sty')

diff --git a/Master/texmf-dist/tex/latex/oberdiek/picture.sty b/Master/texmf-dist/tex/latex/oberdiek/picture.sty
new file mode 100644
index 00000000000..e88796af38b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/oberdiek/picture.sty
@@ -0,0 +1,198 @@
+%%
+%% This is file `picture.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% picture.dtx  (with options: `package')
+%% 
+%% This is a generated file.
+%% 
+%% Copyright (C) 2006 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%%    http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of
+%% LaTeX version 2005/12/01 or later.
+%% 
+%% This work has the LPPL maintenance status "maintained".
+%% 
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%% 
+%% This work consists of the main source file picture.dtx
+%% and the derived files
+%%    picture.sty, picture.pdf, picture.ins, picture.drv,
+%%    picture-example.tex.
+%% 
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{picture}%
+  [2006/08/26 v1.0 Dimens for picture macros (HO)]
+\def\Pc@calcname{calc}
+\def\Pc@etexname{etex}
+\def\Pc@plainname{plain}
+\@ifpackageloaded{calc}{%
+  \let\Pc@method\Pc@calcname
+}{%
+  \begingroup\expandafter\expandafter\expandafter\endgroup
+  \expandafter\ifx\csname dimexpr\endcsname\relax
+    \let\Pc@method\Pc@plainname
+  \else
+    \let\Pc@method\Pc@etexname
+  \fi
+}
+\DeclareOption{plain}{%
+  \let\Pc@method\Pc@plainname
+}
+\DeclareOption{etex}{%
+  \begingroup\expandafter\expandafter\expandafter\endgroup
+  \expandafter\ifx\csname dimexpr\endcsname\relax
+    \PackageError{picture}{%
+      e-TeX is not available%
+    }\@ehc
+  \else
+    \let\Pc@method\Pc@etexname
+  \fi
+}
+\DeclareOption{calc}{%
+  \let\Pc@method\Pc@calcname
+}
+\ProcessOptions*
+\begingroup
+  \let\on@line\@empty
+  \PackageInfo{picture}{Calculation method: \Pc@method}
+\endgroup
+\ifx\Pc@method\Pc@calcname
+  \RequirePackage{calc}%
+\fi
+\ifx\Pc@method\Pc@calcname
+  \def\Pc@tokslength#1{%
+    \begingroup
+      \let\calc@error\Pc@calc@error
+      \setlength\dimen@{#1\unitlength}\Pc@next\Pc@nil{#1}%
+  }%
+  \let\PcOrg@calc@error\calc@error
+  \def\Pc@calc@error#1{%
+    \expandafter\ifx\expandafter\unitlength\noexpand#1\relax
+      \def\calc@next##1!{%
+        \endgroup
+        \aftergroup\afterassignment
+        \aftergroup\Pc@next
+      }%
+    \else
+      \@ReturnAfterFi{%
+        \PcOrg@calc@error{#1}%
+      }%
+    \fi
+  }%
+  \expandafter\@firstofone
+\else
+  \expandafter\@gobble
+\fi
+{%
+  \long\def\@ReturnAfterFi#1\fi{\fi#1}%
+}
+\ifx\Pc@method\Pc@etexname
+  \def\Pc@tokslength#1{%
+    \begingroup
+      \afterassignment\Pc@next
+      \dimen@=\dimexpr#1\unitlength\Pc@nil{#1}%
+  }%
+\fi
+\ifx\Pc@method\Pc@plainname
+  \def\Pc@tokslength#1{%
+    \begingroup
+      \afterassignment\Pc@next
+      \dimen@=#1\unitlength\Pc@nil{#1}%
+  }%
+\fi
+\def\Pc@next#1\Pc@nil#2{%
+  \ifx\\#1\\%
+    \endgroup
+    \Pc@addtoks{{#2}}%
+  \else
+    \expandafter\endgroup
+    \expandafter\Pc@addtoks\expandafter{%
+      \expandafter{\the\dimen@\@gobble}%
+    }%
+  \fi
+}
+\let\Pc@nil\message
+\def\Pc@addtoks#1{%
+  \toks@=\expandafter{\the\toks@#1}%
+}
+\def\Pc@init#1{%
+  \begingroup
+    \toks@={#1}%
+}
+\def\Pc@finish#1{%
+  \expandafter\endgroup
+  \expandafter#1\the\toks@
+}
+\def\picture@redefine#1#2{%
+  \begingroup
+    \edef\reserved@a{%
+      \noexpand\noexpand
+      \expandafter\noexpand
+          \csname PcOrg@\expandafter\@gobble\string#1\endcsname
+    }%
+    \toks0{#1}%
+    \Pc@first#2&0%
+}
+\def\Pc@first#1&{%
+  \toks1={#1}%
+  \toks2={\Pc@init{#1}}%
+  \Pc@scanlength
+}
+\def\Pc@scanlength#1{%
+  \ifcase#1 %
+    \expandafter\Pc@last
+  \else
+    \toks1=\expandafter{\the\toks1 ###1}%
+    \toks2=\expandafter{\the\toks2 \Pc@tokslength{###1}}%
+    \expandafter\Pc@scannext
+  \fi
+}
+\def\Pc@scannext#1&{%
+  \ifx\\#1\\%
+  \else
+    \toks1=\expandafter{\the\toks1 #1}%
+    \toks2=\expandafter{\the\toks2 \Pc@addtoks{#1}}%
+  \fi
+  \Pc@scanlength
+}
+\def\Pc@last{%
+  \edef\x{%
+    \endgroup
+    \let\reserved@a\the\toks0 %
+    \def\the\toks0 \the\toks1 {%
+      \the\toks2 %
+      \noexpand\Pc@finish\reserved@a
+    }%
+  }%
+  \x
+}
+\picture@redefine\@picture{(&1,&2)(&3,&4)}
+\picture@redefine\put{(&1,&2)}
+\picture@redefine\multiput{(&1,&2)}
+\picture@redefine\@multiput{(&1,&2)}
+\picture@redefine\line{(#1,#2)&3}
+\picture@redefine\vector{(#1,#2)&3}
+\picture@redefine\dashbox{&1(&2,&3)}
+\picture@redefine\@circle{&1}
+\picture@redefine\@dot{&1}
+\picture@redefine\@bezier{#1(&2,&3)(&4,&5)(&6,&7)}
+\picture@redefine\@imakepicbox{(&1,&2)}
+\@ifpackageloaded{pspicture}{%
+  \picture@redefine\@oval{[&1](&2,&3)}
+  \picture@redefine\Line{(&1,&2)}
+  \picture@redefine\Curve{(&1,&2)}
+  \picture@redefine\Vector{(&1,&2)}
+}{
+  \picture@redefine\@oval{(&1,&2)}
+}
+\endinput
+%%
+%% End of file `picture.sty'.
-- 
cgit v1.2.3

