aboutsummaryrefslogtreecommitdiff
path: root/summary/kauparts.sty
blob: 5252ba6178877d78020b0a4b3733a953ae0cf3b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
%%
%% This is file `kauparts.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% kautools.dtx  (with options: `parts')
%% 
%% This is a generated file.
%% 
%% Copyright (c) 2011-2014 Stefan Berthold <stefan.berthold@kau.se>
%% 
%% This file is part of the kauthesis bundle.
%% 
%% 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 `author-maintained'.
%% 
%% The Current Maintainer and author of this work is Stefan Berthold.
%% 
%% This work consists of all files listed in manifest.txt.
%% 
%% kautools.dtx
%% Copyright (c) 2011-2015 Stefan Berthold <stefan.berthold@kau.se>
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{kauparts}
    [2014/10/22 v1.15 Karlstad University kautools bundle]
\RequirePackage{xkeyval}

\define@cmdkeys[kup]{pkg}[kup@]{vshift,vstep}
\setkeys[kup]{pkg}{vshift=2,vstep=0.8}

\ProcessOptionsX[kup]<pkg>

\RequirePackage{calc}
\RequirePackage{ifthen}
\RequirePackage{suffix}
\RequirePackage{tikz}
\usetikzlibrary{positioning}

\define@cmdkeys[kup]{part}[kup@]{body,label}
\define@boolkeys[kup]{part}[kup@]{tocentry}

\newcounter{kup@part}
\newcounter{kup@vertical}
\setcounter{kup@vertical}{0}

\newcommand*\@titlepagestyle{empty}
\newcommand\titlepagestyle[1]{\renewcommand*\@titlepagestyle{#1}}

\newcommand\kup@partheadline[2]{%
  \path[node distance=1ex] (current page.north east) +(3pt,\kup@vshift+\kup@vstep*\arabic{kup@vertical}) %
    node%
      [ anchor=north east%
      , minimum width=2cm+3pt%
      %, minimum height=7mm%
      %, draw=black%
      %, fill=black%
      , left color=white%
      , right color=black%
      , text=white%
      , font=\LARGE\bfseries%
      ] (bar) {#1}%
    node[base left=of bar,font=\LARGE\bfseries] {#2};%
}
\newcommand\kaupart[2][]{%
  \cleardoublepage%
  \thispagestyle{\@titlepagestyle}%
  \stepcounter{kup@part}%
  \setkeys[kup]{part}{body=\relax,label=,tocentry=true,#1}%
  \providecommand\phantomsection{}%
  \phantomsection%
  \ifkup@tocentry%
    \addcontentsline{toc}{part}{\numberline{\Roman{kup@part}}\textsc{#2}}%
  \fi%
  \renewcommand\@currentlabel{\Roman{kup@part}}%
  \ifthenelse{\equal{\kup@label}{}}{}{\label{\kup@label}}%
  \begin{tikzpicture}[remember picture,overlay,yscale=-1]%
    \kup@partheadline{\Roman{kup@part}}{#2}%
  \end{tikzpicture}%
  \kup@body
  \stepcounter{kup@vertical}%
  \cleardoublepage%
}
\WithSuffix\newcommand\kaupart*[2][]{%
  \cleardoublepage%
  \thispagestyle{\@titlepagestyle}%
  \setkeys[kup]{part}{body=\relax,tocentry=true,#1}%
  \providecommand\phantomsection{}%
  \phantomsection%
  \ifkup@tocentry%
    \addcontentsline{toc}{part}{\textsc{#2}}%
  \fi%
  \begin{tikzpicture}[remember picture,overlay,yscale=-1]%
    \kup@partheadline{\vphantom{X}}{#2}%
  \end{tikzpicture}%
  \kup@body
  \stepcounter{kup@vertical}%
  \cleardoublepage%
}
\endinput
%%
%% End of file `kauparts.sty'.