%% %% This is file `tabvar.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% tabvar.dtx (with options: `sty') %% %% IMPORTANT NOTICE: %% %% For the copyright see the source file. %% %% Any modified versions of this file must be renamed %% with new filenames distinct from tabvar.sty. %% %% For distribution of the original source see the terms %% for copying and modification in the file tabvar.dtx. %% %% This generated file may be distributed as long as the %% original source files, as listed above, are part of the %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% %% Copyright (C) Daniel Flipo 2003-2007 %% \NeedsTeXFormat{LaTeX2e}[1997/06/01] \ProvidesFile{tabvar.sty} [2007/08/08 v1.11 (Daniel Flipo)] \newif\ifFlechesMP \FlechesMPfalse \DeclareOption{FlechesMP}{\FlechesMPtrue} \DeclareOption{FlechesPS}{\FlechesMPfalse} \ProcessOptions \RequirePackage{array} \RequirePackage{colortbl} \RequirePackage{varwidth} \RequirePackage{ifthen} \RequirePackage{graphicx} \RequirePackage{ifpdf} \ifpdf \input{supp-pdf} \DeclareGraphicsRule{*}{mps}{*}{} \fi \newsavebox{\arup} \newsavebox{\ardown} \newsavebox{\arhor} \providecommand{\@ptsize}{0} \sbox{\arup} {\includegraphics[scale=1.\@ptsize]{tabvar.1}} \sbox{\ardown}{\includegraphics[scale=1.\@ptsize]{tabvar.2}} \sbox{\arhor} {\includegraphics[scale=1.\@ptsize]{tabvar.3}} \newcommand{\FlecheCm}{\raisebox{.5ex}{\usebox{\arup}}} \newcommand{\FlecheDm}{\raisebox{.5ex}{\usebox{\ardown}}} \newcommand{\FlecheHm}{\raisebox{.5ex}{\usebox{\arhor}}} \AtBeginDocument{% \ifFlechesMP \newcommand{\FlecheC}{\FlecheCm}% \newcommand{\FlecheD}{\FlecheDm}% \newcommand{\FlecheH}{\FlecheHm}% \else \DeclareFontFamily{U}{tv}{}% \DeclareFontShape{U}{tv}{m}{n}{<->tabvar}{}% \DeclareSymbolFont{tvsymbols}{U}{tv}{m}{n}% \DeclareMathSymbol{\enearrow}{\mathrel}{tvsymbols}{"25}% \DeclareMathSymbol{\esearrow}{\mathrel}{tvsymbols}{"26}% \DeclareMathSymbol{\eastarrow}{\mathrel}{tvsymbols}{"21}% \newcommand{\FlecheC}{\ensuremath{\enearrow}}% \newcommand{\FlecheD}{\ensuremath{\esearrow}}% \newcommand{\FlecheH}{\ensuremath{\eastarrow}}% \fi} \newdimen\TVextraheight \setlength{\TVextraheight}{.7\baselineskip} \newcount\@niveaux \newcount\@pos \newif\if@socle \newcommand{\niveau}[2]{\global\@pos=#1 \global\@niveaux=#2 \global\@socletrue} \newcommand{\@socle}{% \ifnum\@pos=1 \@soclefalse \fi \if@socle \rule{\z@}{\TVextraheight}% \@tempcnta=\@pos \advance\@tempcnta by -1 \whiledo{\@tempcnta>0}{\TVnl \null \advance\@tempcnta by -1}% \fi} \newif\ifreset@niveaux \newcommand{\reset@niveaux}{% \ifreset@niveaux \global\@niveaux=1 \global\@pos=1 \global\@soclefalse \fi} \newdimen\TVmaxcolwidth \setlength{\TVmaxcolwidth}{5em} \newcolumntype{C}{% >{\begin{varwidth}[b]{\TVmaxcolwidth}\let\TVnl=\\ \let\\=\TVtabularnewline $}% c% <{\@socle \reset@niveaux $\@finalstrut\@arstrutbox\end{varwidth}}} \newcolumntype{L}{% >{\begin{varwidth}[b]{\TVmaxcolwidth}\let\TVnl=\\ \let\\=\TVtabularnewline $}% l% <{\@socle \reset@niveaux $\@finalstrut\@arstrutbox\end{varwidth}}} \newcolumntype{R}{% >{\begin{varwidth}[b]{\TVmaxcolwidth}\let\TVnl=\\ \let\\=\TVtabularnewline $}% r% <{\@socle \reset@niveaux $\@finalstrut\@arstrutbox\end{varwidth}}} \definecolor{TVcolor}{gray}{0.7} \newdimen\TVarraycolsep \newdimen\TVcolorLeftSep \newdimen\TVcolorRightSep \setlength{\TVcolorLeftSep}{\TVarraycolsep} \setlength{\TVcolorRightSep}{\TVarraycolsep} \newcolumntype{N}{% >{\columncolor{TVcolor}[\TVcolorLeftSep][\TVcolorRightSep]} c} \newcommand{\decroit}{\FlecheD \global\advance\@pos by -1 \ifnum\@pos<1 \PackageError{tabvar.sty}% {Les arguments la commande \protect\niveau\space sont incorrects}% \fi} \newcommand{\croit} {\raisebox{-\baselineskip}{\FlecheC}% \global\advance\@pos by 1 \ifnum\@pos>\@niveaux \PackageError{tabvar.sty}% {Les arguments la commande \protect\niveau\space sont incorrects}% \fi} \newcommand{\constante}{\FlecheH} \newcommand{\barre@dth}{% \ifnum\@niveaux=1 \@tempdimc=\TVarraystretch\baselineskip \else \@tempcnta=\@niveaux \advance\@tempcnta by -1 \@tempdimc=\@tempcnta\baselineskip \@tempdimb=\TVextraheight \ifdim\@tempdimb<.7\baselineskip \@tempdimb=.7\baselineskip \fi \advance\@tempdimc by \@tempdimb \advance\@tempdimc by \dp\@arstrutbox \fi \@tempdimb=\dp\@arstrutbox} \newcommand{\dbarre}{% \barre@dth \rule[-\@tempdimb]{.5\p@}{\@tempdimc}% \kern 2\p@ \rule[-\@tempdimb]{.5\p@}{\@tempdimc}% \@soclefalse} \newsavebox{\tab@box} \definecolor{TVbarrecolor}{gray}{0.7} \newcommand{\barre}[1]{% \sbox{\tab@box}{\ensuremath{#1}}% \barre@dth \@tempcnta=\@niveaux \advance\@tempcnta by -\@pos \advance\@tempdimb by \@tempcnta\baselineskip \raisebox{-\@tempdimb}[0pt][0pt]{% \makebox[\wd\tab@box][c]{\color{TVbarrecolor}% \rule{.5\p@}{\@tempdimc}}}% \kern-\wd\tab@box\usebox{\tab@box}% } \newcommand{\discont}[4][0]{% \settowidth{\@tempdimc}{\ensuremath{#2}}% \settowidth{\@tempdimb}{\ensuremath{#4}}% \ifdim\@tempdimc<\@tempdimb \@tempdimc=\@tempdimb\fi \rule{\z@}{\TVextraheight}% \@soclefalse \ifthenelse{\equal{#3}{<}}% {\makebox[\@tempdimc]{\ensuremath{#4}}% \@tempcnta=#1 \whiledo{\@tempcnta>0}{\TVnl \null \advance\@tempcnta by -1}% \TVnl \makebox[\@tempdimc]{\ensuremath{#2}}% \@tempcnta=\@pos \advance\@tempcnta by -1 \whiledo{\@tempcnta>0}{\TVnl \null \advance\@tempcnta by -1}% \global\advance\@pos by 1 \global\advance\@pos by #1 }% {\ifthenelse{\equal{#3}{>}}% {\makebox[\@tempdimc]{\ensuremath{#2}}% \@tempcnta=#1 \whiledo{\@tempcnta>0}{\TVnl \null \advance\@tempcnta by -1}% \TVnl \makebox[\@tempdimc]{\ensuremath{#4}}% \@tempcnta=\@pos \advance\@tempcnta by -2 \advance\@tempcnta by -#1 \whiledo{\@tempcnta>0}{\TVnl \null \advance\@tempcnta by -1}% \global\advance\@pos by -1 \global\advance\@pos by -#1 }% {\PackageError{tabvar.sty}% {Le second argument de \protect\discont\space doit \^etre \MessageBreak soit '<' soit '>'}}% }% } \newcommand{\TVarraystretch}{1.5} \setlength{\TVarraycolsep}{1pt} \newenvironment{tabvar}[1] {\renewcommand{\arraystretch}{\TVarraystretch}% \setlength{\arraycolsep}{\TVarraycolsep}% \global\@niveaux=1 \global\@pos=1 \global\@soclefalse \def\TVtabularnewline{\reset@niveauxtrue\tabularnewline}% \begin{array}{#1}} {\end{array}} \InputIfFileExists{tabvar.cfg} {\typeout{loading tabvar.cfg}} {\typeout{tabvar.cfg not found, using default values}} \endinput %% %% End of file `tabvar.sty'.