From 683d8229d4e98772f56ad658500561b7dc97ad62 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Wed, 8 Dec 2010 23:10:08 +0000
Subject: interfaces 2.5 (8dec10)

git-svn-id: svn://tug.org/texlive/trunk@20692 c570f23f-e606-0410-a88d-b1316a301751
---
 .../tex/latex/interfaces/interfaces-base.sty       | 79 ++++++++++++----------
 1 file changed, 44 insertions(+), 35 deletions(-)

(limited to 'Master/texmf-dist/tex/latex/interfaces/interfaces-base.sty')

diff --git a/Master/texmf-dist/tex/latex/interfaces/interfaces-base.sty b/Master/texmf-dist/tex/latex/interfaces/interfaces-base.sty
index 7c8e80abdd3..792369ffdea 100644
--- a/Master/texmf-dist/tex/latex/interfaces/interfaces-base.sty
+++ b/Master/texmf-dist/tex/latex/interfaces/interfaces-base.sty
@@ -8,7 +8,7 @@
 %% 
 %% This is a generated file.
 %% 
-%% interfaces : 2010/11/26 v2.4 - interfaces : interfaces with keys for other packages (FC)
+%% interfaces : 2010/12/07 v2.5 - interfaces : interfaces with keys for other packages (FC)
 %% 
 %% This work may be distributed and/or modified under the
 %% conditions of the LaTeX Project Public License, either
@@ -44,8 +44,8 @@
 %% Copyright (C) 2010 by Florent Chervet <florent.chervet@free.fr>
 %% 
 \ProvidesPackage{interfaces-base}
-   [2010/11/26 v2.4 Basic macros for interfaces package (FC)]
-\RequirePackage{etex,ltxcmds,etoolbox,pgfkeys,scrlfile}
+   [2010/12/07 v2.5 Basic macros for interfaces package (FC)]
+\RequirePackage{etex,ltxcmds,etoolbox,pgfkeys,scrlfile,infwarerr}
 \AtEndOfPackage{%
    \RequirePackage{interfaces-etoolbox}%
    \RequirePackage{interfaces-scrlfile}%
@@ -81,30 +81,9 @@
 \newrobustcmd*\itf@AfterPackage[1]{%
    \csname\ltx@ifpackageloaded{#1}{ltx@secondoftwo}{@AfterPackage}\endcsname{#1}%
 }% \itf@AfterPackage
-\AfterPackage*{colortbl}{%
-   \renewcommand*\endarray{%
-      \crcr \egroup \egroup \@arrayright \gdef\@preamble{}\CT@end}%
-}% AfterPackage colortbl
-\AfterPackage*{arydshln}{%
-   \ltx@ifpackageloaded{colortbl}
-      {% colortbl
-      \def\endarray{%
-       \adl@endarray \egroup \adl@arrayrestore \CT@end \egroup %<original>
-       \@arrayright     % <FC>
-       \gdef\@preamble{}% <FC>
-                  }%
-      }
-      {% no colortbl
-      \def\endarray{%
-       \adl@endarray \egroup \adl@arrayrestore \egroup %<original>
-       \@arrayright     % <FC>
-       \gdef\@preamble{}% <FC>
-                   }%
-      }%
-}% AfterPackage arydshln
 \AfterPackage{colortbl}{%
    {\ltx@ifpackageloaded{arydshln}
-      {\PackageWarning{interfaces-base}
+      {\@PackageWarningNoLine{interfaces-base}
          {The package arydshln should be loaded after colortbl
          \MessageBreak because both redefine \string\@classz}}%
       {}}%
@@ -136,11 +115,19 @@
    \catcode`\#=6%
    \let\itf@tp#2%
    #1\itf@tp{#3}{#4}%
-   {\let#2\itf@tp
+   {\ifx#1\patchcmd \itf@patch@inside@{#1}{#3}{#4}\fi
+    \let#2\itf@tp
     \AtBeginDocument{#5}%
    }
    {#6}%
 }% \itf@patch@inside (for \patchcmd)
+\def\itf@patch@inside@#1#2#3{%
+   \loop
+      \let\@tempa \itf@tp
+      #1\itf@tp{#2}{#3}{}{}%
+      \unless\ifx \@tempa\itf@tp
+   \repeat
+}% \itf@patch@inside@
 \newskip\itf@sk
 \newmuskip\itf@musk
 \newtoks\itf@tk
@@ -177,6 +164,37 @@
    \else remove@to@nnil%
    \fi \endcsname
 }% \itf@number@@@
+\protected\def\itf@setlength#1#2{#1\glueexpr#2\relax}
+%% glue * 1.5 = glue * 98302 / 65536
+%% glue * 3/2 = glue * 3/2
+\def\itf@units@scale#1!{\itf@units@scale@normalize#1/\@nnil/\@nil}
+\def\itf@units@scale@normalize#1/#2/#3\@nil{%
+   \ifx#2\@nnil \number\dimexpr#1pt\relax/65536
+   \else#1/#2
+   \fi
+}% \itf@units@scale@normalize
+\def\itf@units@scaleNoCalc#1!{\itf@units@scale@normalizeNoCalc#1/\@nnil/\@nil}
+\let\itf@units@scale@normalizeNoCalc \itf@units@scale@normalize
+\protected\def\itf@setlength@calc#1#2{\begingroup
+   \let\calc@multiply@by@real \itf@calc@multiply@by@real
+   \let\calc@Adimen \itf@calc@Askip  \let\calc@Bdimen \itf@calc@Bskip
+   \setlength{#1}{#2}%
+   \expandafter\endgroup\expandafter#1\the#1\relax
+}% \itf@setlength@calc
+\def\itf@units@scale@normalize@calc#1/#2/#3\@nil{%
+   \ifx#2\@nnil 1*\ratio{\dimexpr#1pt\relax}\p@
+   \else        1*\ratio{\dimexpr#1pt\relax}/{\dimexpr#2pt\relax}%
+   \fi
+}% \itf@units@scale@normalize@calc
+\def\itf@calc@multiply@by@real#1{%
+   \calc@Bdimen\glueexpr\calc@B*\number\dimexpr#1pt\relax/65536\relax
+   \calc@B\calc@Bdimen
+}% \itf@calc@multiply@by@real
+\AfterPackage*{calc}{%
+   \newskip\itf@calc@Askip \newskip\itf@calc@Bskip
+   \let\itf@setlength \itf@setlength@calc
+   \let\itf@units@scale@normalize \itf@units@scale@normalize@calc
+}% AfterPackage calc
 %%   U N I T S   F O R   D I M E N S
 \def\itf@strip@mu{\expandafter\itf@rem@mu\the}
 {%
@@ -230,15 +248,6 @@
       \@defaultunits#1 #2pt\relax\@nnil
    \fi
 }}}% \itf@units@pt
-%% glue * 1.5 = glue * 98302 / 65536
-%% glue * 3/2 = glue * 3/2
-\def\itf@units@scale#1!{\itf@units@scale@normalize#1/\@nnil/\@nil}
-\def\itf@units@scale@normalize#1/#2/#3\@nil{%
-   \ifx#2\@nnil
-      \number\dimexpr#1pt\relax/65536
-   \else#1/#2
-   \fi
-}% \itf@units@normalize
 \AtBeginDocument{%
    \ltx@ifpackageloaded{xcolor}
       {\@ifundefinedcolor{default}
-- 
cgit v1.2.3

