%% %% This is file `ctable.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% ctable.dtx (with options: `package') %% %% This is a generated file. %% %% Copyright (C) 2005 by Wybo Dekker %% %% This file may be distributed and/or modified under the conditions of %% the LaTeX Project Public License, either version 1.2 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.2 or later is part of all distributions of LaTeX version %% 1999/12/01 or later. %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{ctable} [2006/10/12 v1.8 ctable package] \RequirePackage{xspace,color,xkeyval,array,tabularx,booktabs,rotating} \def\NN{\tabularnewline} \def\FL{\toprule} \def\ML{\NN\midrule} \def\LL{\NN\bottomrule} \def\@ctblfgcolor#1 #2 #3={\definecolor{@ctblframefg}{rgb}{#1,#2,#3}} \def\@ctblbgcolor#1 #2 #3={\definecolor{@ctblframebg}{rgb}{#1,#2,#3}} \newdimen\@ctblframesep \newdimen\@ctblframerule \newdimen\@ctblwidth \newdimen\@ctblcaptionskip \newdimen\@ctblmaxwidth \newdimen\@ctblmincapwidth \newdimen\@ctblw % the final width \newdimen\@ctblww \newdimen\@ctbloldsep \newdimen\@ctbloldrule \newbox\ctbl@tabelx % the width with X columns \newbox\ctbl@tabel % the width where X is replaced with l \newbox\ctbl@t % the final box will become one of the two above \define@key{ctbl}{caption}{\def\@ctblcaption{#1}}% \define@key{ctbl}{cap}{\def\@ctblcap{#1}}% \define@key{ctbl}{label}{\def\@ctbllabel{#1}}% \define@key{ctbl}{pos}{\def\@ctblpos{#1}\def\@ctblbegin{\@ctblbeg[#1]}}% \define@key{ctbl}{width}{\@ctblwidth=#1}% \define@key{ctbl}{maxwidth}{\@ctblmaxwidth=#1}% \define@key{ctbl}{mincapwidth}{\@ctblmincapwidth=#1}% \define@key{ctbl}{botcap}[]{\def\@ctblbotcap{1}}% \define@key{ctbl}{sideways}[]{\def\@ctblsideways{sideways}}% \define@key{ctbl}{rotate}[]{\def\@ctblsideways{sideways}% \PackageWarning{ctable}{% using obsolete option 'rotate', use 'sideways' instead} }% \define@key{ctbl}{figure}[]{\def\@ctbltaborfig{figure}}% \define@key{ctbl}{center}[]{\def\@ctblalign{center}}% \define@key{ctbl}{right}[]{\def\@ctblalign{flushright}}% \define@key{ctbl}{left}[]{\def\@ctblalign{flushleft}}% \define@key{ctbl}{star}[]{\def\@ctblstarred {*}}% \define@key{ctbl}{framerule}{\@ctblframerule=#1}% \define@key{ctbl}{framesep}{\@ctblframesep=#1}% \define@key{ctbl}{framefg}{\@ctblfgcolor#1=}% \define@key{ctbl}{framebg}{\@ctblbgcolor#1=}% \define@key{ctbl}{captionskip}{\@ctblcaptionskip=#1}% \def\@ctblCaption{ \ifx\@ctblcap\empty\let\@ctblcap\@ctblcaption\fi \ifx\@ctblcaption\empty\else \caption[\@ctblcap]{\label{\@ctbllabel}\@ctblcaption} \fi } \def\@ctblframe#1#2#3{% \@ctbloldsep\fboxsep\fboxsep\@ctblframesep% \@ctbloldrule\fboxrule\fboxrule\@ctblframerule% \fcolorbox{#1}{#2}{\fboxsep\@ctbloldsep\fboxrule\@ctbloldrule #3}% } \newcommand{\tnote}[2][a]{% \hbox{\@textsuperscript{\normalfont\textit{#1}}}\NN} \newcommand{\tmark}[1][a]{% \hbox{\@textsuperscript{\normalfont\textit{#1\xspace}}}} \newcommand{\ctable}[4][]{% \def\@ctbltaborfig{table}% \def\@ctblalign {center}% \def\@ctblsideways {}% \def\@ctblpos {}% \def\@ctblcaption {}% \def\@ctblcap {}% \def\@ctbllabel {}% \def\@ctblbeg {\begin{\@ctblsideways\@ctbltaborfig\@ctblstarred}}% \def\@ctblbegin {\@ctblbeg}% \def\@ctblend {\end{\@ctblsideways\@ctbltaborfig\@ctblstarred}}% \def\@ctblbotcap {}% \def\@ctblstarred {}% \definecolor{@ctblframefg}{rgb}{0,0,0}% \definecolor{@ctblframebg}{rgb}{1,1,1}% \@ctblframerule0pt \@ctblcaptionskip2ex \@ctblframesep0pt \@ctblwidth=0pt \@ctblmaxwidth=0pt \@ctblmincapwidth=0pt \setkeys{ctbl}{#1}% \ifdim\@ctblwidth=0pt\else \ifdim\@ctblmaxwidth=0pt\else \PackageError{ctable}{ You may not use the width and maxwidth options together}{% Use either width or maxwidth} \fi \fi \ifx\@ctblpos\empty\else \ifx\@ctblsideways\empty\else \PackageError{ctable}{ You may not use the pos and sideways options together}{% Rotated tables and figures are always typeset on a separate page} \fi \fi \newcolumntype{Y}{X}% save the X type \sbox\ctbl@tabel{% \newcolumntype{X}{l}% temporarily make type X = l \@ctblframe{@ctblframefg}{@ctblframebg}{% \begin{tabular}{#2} #4 \end{tabular}% }% }% \sbox\ctbl@tabelx{% \newcolumntype{X}{Y}% restore X \@ctblframe{@ctblframefg}{@ctblframebg}{% \begin{tabularx}{\ifdim\@ctblwidth>0pt\@ctblwidth\else\@ctblmaxwidth\fi}{#2} #4 \end{tabularx}% }% }% \ifdim\@ctblmaxwidth=0pt \ifdim\@ctblwidth=0pt \sbox{\ctbl@t}{\usebox\ctbl@tabel}% \else \sbox{\ctbl@t}{\usebox\ctbl@tabelx}% \fi \else \ifdim\wd\ctbl@tabel>\@ctblmaxwidth \sbox{\ctbl@t}{\usebox\ctbl@tabelx}% \else \sbox{\ctbl@t}{\usebox\ctbl@tabel}% \fi \fi \@ctblw=\wd\ctbl@t \ifdim\@ctblmincapwidth=0pt\@ctblww=\@ctblw\else% \settowidth{\@ctblww}{Table 1: \@ctblcaption} \ifdim\@ctblww>\@ctblmincapwidth\@ctblww=\@ctblmincapwidth\fi% \fi \@ctblbegin \begin{\@ctblalign} \begin{minipage}{\@ctblww} \ifx\@ctblbotcap\empty\@ctblCaption\vspace{\@ctblcaptionskip}\fi \centering{\usebox\ctbl@t} % insert the tabular \def\@ctblfootnotes{#3} \ifx#3\empty\else % append footnotes, if any \\ \begin{tabularx}{\hsize}{r@{\,}>{\footnotesize\raggedright}X} #3 \end{tabularx} \fi \ifx\@ctblbotcap\empty\else\@ctblCaption\fi \end{minipage} \end{\@ctblalign} \@ctblend } \endinput %% %% End of file `ctable.sty'.