summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tikz-timing/tikz-timing-nicetabs.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-12-11 01:03:36 +0000
committerKarl Berry <karl@freefriends.org>2009-12-11 01:03:36 +0000
commitdc9526cb9ac65af66d74d5b44c78647df15e5b13 (patch)
treeebcff6b7777c4f463e59ea5dc1ec7481f202cf92 /Master/texmf-dist/tex/latex/tikz-timing/tikz-timing-nicetabs.sty
parent74b4962e535420c873e7047cf77c79a8277743f1 (diff)
tikz-timing 0.7 (9dec09)
git-svn-id: svn://tug.org/texlive/trunk@16348 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/tikz-timing/tikz-timing-nicetabs.sty')
-rw-r--r--Master/texmf-dist/tex/latex/tikz-timing/tikz-timing-nicetabs.sty125
1 files changed, 125 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/tikz-timing/tikz-timing-nicetabs.sty b/Master/texmf-dist/tex/latex/tikz-timing/tikz-timing-nicetabs.sty
new file mode 100644
index 00000000000..4b4f8cc0ad8
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/tikz-timing/tikz-timing-nicetabs.sty
@@ -0,0 +1,125 @@
+%%
+%% This is file `tikz-timing-nicetabs.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% tikz-timing.dtx (with options: `lib,lib-nicetabs')
+%%
+%% Copyright (C) 2009 by Martin Scharrer <martin@scharrer-online.de>
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% 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.3c or later is part of all distributions of LaTeX
+%% version 2008/05/04 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%%
+%% The Current Maintainer of this work is Martin Scharrer.
+%%
+%% This work consists of the files tikz-timing.dtx, tikz-timing.ins
+%% and the derived file tikz-timing.sty.
+%%
+\RequirePackage{svn-prov}[2009/05/03]
+\ProvidesPackageSVN[tikz-timing-nicetabs]
+ {$Id: tikz-timing.dtx 1580 2009-12-09 11:14:01Z martin $}
+ [v0.7
+ TikZ-Timing Library for
+ nice timing tables]
+\GetFileInfoSVN*%
+\RequirePackage{tikz-timing}[\filedate]%
+\DefineFileInfoSVN
+
+\RequirePackage{array}
+\RequirePackage{booktabs}
+
+\newcommand*\tikztiming@nicetabs@tableheader[3][]{%
+ \path [timing/table/midrules] [/utils/exec=\xdef\@gtempa{\the\pgflinewidth}];
+ \path [timing/table/header,#1]
+ let \p1 = (0,\belowrulesep + \aboverulesep + \@gtempa + \arraystretch *
+ {(\ht\strutbox + \extrarowheight)} + \arraystretch\dp\strutbox) in
+ node [anchor=base west] (tikztiming@header) at (0,\y1) {\ignorespaces
+ #3\unskip\strut}
+ node [anchor=base east] at (-1*{(\tikztiming@coldist)},\y1) {\ignorespaces
+ #2\unskip\strut}
+ ;
+ \tikztiming@tableheadtrue
+}
+\newcommand*\tikztiming@nicetabs@tablerules[1][]{%
+ \begin{scope}[#1]
+ \coordinate (NW) at (current bounding box.north west);
+ \coordinate (SE) at (current bounding box.south east);
+ %
+ \draw [timing/table/rules]
+ let
+ \p1 = (NW),
+ \p2 = (SE),
+ \p3 = (last row text.base),
+ \p4 = ($ (0,\y3) - (0,\arraystretch\dp\strutbox + \aboverulesep +
+ .5\pgflinewidth) $)
+ in
+ (\x1-\tabcolsep,\y4) -- (\x2+\tabcolsep,\y4)
+ \iftikztiming@tablehead
+ let
+ \p5 = (tikztiming@header.base),
+ \p6 = ($ (0,\y5) + (0,\arraystretch * {(\ht\strutbox + \extrarowheight
+ )} + \belowrulesep + .5\pgflinewidth) $)
+ in
+ (\x1-\tabcolsep,\y6) -- (\x2+\tabcolsep,\y6)
+ \fi
+ ;
+ \draw
+ \iftikztiming@tablehead [timing/table/midrules] \else [timing/table/rules] \fi
+ let
+ \p1 = (NW),
+ \p2 = (SE),
+ \p3 = (0, \arraystretch * {( \ht\strutbox + \extrarowheight )} +
+ \belowrulesep + .5\pgflinewidth)
+ in
+ (\x1-\tabcolsep, \y3)
+ --
+ (\x2+\tabcolsep, \y3)
+ ;
+ \end{scope}
+}
+\let\tikztiming@normal@tableheader\tikztiming@tableheader
+\let\tikztiming@normal@tablerules\tikztiming@tablerules
+\let\tikztiming@normal@coldist\tikztiming@coldist
+\let\tikztiming@normal@rowdist\tikztiming@rowdist
+
+\tikzset{%
+ timing/no nice tabs/.code={%
+ \let\tikztiming@coldist\tikztiming@normal@coldist
+ \let\tikztiming@rowdist\tikztiming@normal@rowdist
+ \let\tikztiming@tableheader\tikztiming@normal@tableheader
+ \let\tikztiming@tablerules\tikztiming@normal@tablerules
+ },
+ timing/nice tabs/.code={%
+ \ifx\tikztiming@tableheader\tikztiming@nicetabs@tableheader\else
+ \let\tikztiming@normal@coldist\tikztiming@coldist
+ \let\tikztiming@normal@rowdist\tikztiming@rowdist
+ \fi
+ \def\tikztiming@rowdist{%
+ \arraystretch * {(\ht\strutbox+\extrarowheight)}%
+ +\arraystretch\dp\strutbox
+ }%
+ \def\tikztiming@coldist{2\tabcolsep}%
+ \let\tikztiming@tableheader\tikztiming@nicetabs@tableheader
+ \let\tikztiming@tablerules\tikztiming@nicetabs@tablerules
+ },
+ timing/nicetabs/no nice tabs/.style={/tikz/timing/no nice tabs},
+ timing/nicetabs/off/.style={/tikz/timing/no nice tabs},
+ timing/nicetabs/nice tabs/.style={/tikz/timing/nice tabs},
+ timing/nicetabs/on/.style={/tikz/timing/nice tabs},
+}
+\tikzset{timing/nice tabs}%
+\RequirePackage{pgfopts}
+\ProcessPgfOptions{/tikz/timing/nicetabs}
+\endinput
+%%
+%% End of file `tikz-timing-nicetabs.sty'.