summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls')
-rw-r--r--Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls168
1 files changed, 146 insertions, 22 deletions
diff --git a/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls
index 3860f56c895..484e45af230 100644
--- a/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls
+++ b/Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls
@@ -1,6 +1,6 @@
% Document class for Unified Process Methodology
%
-% Copyright (c) 2006-2007 Stephane GALLAND <galland@arakhne.org>
+% Copyright (c) 2006-2009 Stephane GALLAND <galland@arakhne.org>
%
% This program is free library; you can redistribute it and/or modify
% it under the terms of the GNU Lesser General Public License as
@@ -19,6 +19,11 @@
%
% Creation date: 2006-04-06
% Modifications:
+% 2009-10-30 Add "book", "report" and "article" options.
+% 2009-10-28 Add hyperref declarations.
+% 2009-10-27 Add publication page.
+% 2009-10-22 Add back page.
+% 2009-10-09 Add option to hide the document informations
% 2007-07-03 Force the height of the small logo in headers.
% Remove the copyright date building function.
% 2007-03-19 Add localization.
@@ -28,43 +33,119 @@
% 2006-04-22 Remove task and specification packages.
%
-\global\edef\upm@package@docclazz@ver{2007/07/03}
+\global\edef\upm@package@docclazz@ver{2009/10/30}
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\ProvidesClass{upmethodology-document}[\upm@package@docclazz@ver]
+\RequirePackage{upmethodology-p-common}
+
+\newif\ifupm@package@docclazz@nodocinfo
+\upm@package@docclazz@nodocinfofalse
+\newif\ifupm@package@docclazz@nopubpage
+\upm@package@docclazz@nopubpagefalse
+
+\gdef\upm@package@docclazz@optionstopass{a4paper,11pt}
+
\DeclareOption{twoside}{%
- \PassOptionsToClass{twoside,openright}{book}
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,twoside,openright}%
}
\DeclareOption{oneside}{%
- \PassOptionsToClass{oneside}{book}
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,oneside}%
}
\DeclareOption{french}{%
- \PassOptionsToClass{french}{book}
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,french}%
\PassOptionsToPackage{french}{upmethodology-document}
}
\DeclareOption{francais}{%
- \PassOptionsToClass{french}{book}
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,french}%
\PassOptionsToPackage{french}{upmethodology-document}
}
\DeclareOption{english}{%
- \PassOptionsToClass{english}{book}
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,english}%
\PassOptionsToPackage{english}{upmethodology-document}
}
+\DeclareOption{nodocumentinfo}{%
+ \upm@package@docclazz@nodocinfotrue%
+}
+\DeclareOption{documentinfo}{%
+ \upm@package@docclazz@nodocinfofalse%
+}
+\DeclareOption{nopubpage}{%
+ \upm@package@docclazz@nopubpagetrue%
+}
+\DeclareOption{pubpage}{%
+ \upm@package@docclazz@nopubpagefalse%
+}
+\DeclareOption{book}{%
+ \upmbookformattrue
+ \upmreportformatfalse
+ \upmarticleformatfalse
+ \upm@package@docclazz@nopubpagefalse%
+ \upm@package@docclazz@nodocinfofalse%
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,twoside}%
+}
+\DeclareOption{report}{%
+ \upmbookformatfalse
+ \upmreportformattrue
+ \upmarticleformatfalse
+ \upm@package@docclazz@nopubpagetrue%
+ \upm@package@docclazz@nodocinfofalse%
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,oneside}%
+}
+\DeclareOption{article}{%
+ \upmbookformatfalse
+ \upmreportformatfalse
+ \upmarticleformattrue
+ \upm@package@docclazz@nopubpagetrue%
+ \upm@package@docclazz@nodocinfotrue%
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,oneside}%
+}
-\DeclareOption*{\PassOptionsToClass{\CurrentOption}{book}}
-\ExecuteOptions{oneside}
+\DeclareOption*{%
+ \xdef\upm@package@docclazz@optionstopass{\upm@package@docclazz@optionstopass,\CurrentOption}%
+ }
+\ExecuteOptions{report}
\ProcessOptions
-\PassOptionsToClass{a4paper,11pt}{book}
-\LoadClass{book}
+\ifupmbookformat
+ \message{*********** UPMETHODOLOGY BOOK CLASS (WITH PART AND CHAPTER)}
+ \expandafter\LoadClass[\upm@package@docclazz@optionstopass]{book}
+\else\ifupmreportformat
+ \message{*********** UPMETHODOLOGY REPORT CLASS (WITHOUT PART, WITH CHAPTER)}
+ \expandafter\LoadClass[\upm@package@docclazz@optionstopass]{report}
+\else
+ \message{*********** UPMETHODOLOGY ARTICLE CLASS (WITHOUT PART AND CHAPTER)}
+ \expandafter\LoadClass[\upm@package@docclazz@optionstopass]{article}
+\fi\fi
\RequirePackage{a4wide}
\RequirePackage{fancyhdr}
\RequirePackage{upmethodology-document}
+\RequirePackage{upmethodology-extension}
\RequirePackage{upmethodology-frontpage}
+\RequirePackage{upmethodology-backpage}
+\RequirePackage{upmethodology-task}
+\RequirePackage{upmethodology-code}
+\RequirePackage{upmethodology-spec}
+
+\RequirePackage{url}
+\RequirePackage[pdftex=true,
+ breaklinks, %make links breakable on several lines
+ pageanchor=true, %put implicit anchor on each page (required for \printindex)
+ bookmarks=false, %hide bookmarks
+ hyperfigures=true, %not documented
+ hyperindex=true, %the page numbers in the index are links
+ linktocpage=true, %page numbers are used for links in TOC, LOF...
+ bookmarks=true, %open the bookmarks
+ bookmarksopen=true, %open all the bookmark's nodes by default
+ bookmarksnumbered=true, %section number in bookmarks
+ colorlinks=false, % Use a frame around links
+ pdfproducer={upmethodology \upm@package@docclazz@ver},
+ ]{hyperref}
+\urlstyle{same}
\pdfpageheight=29.7cm
\pdfpagewidth=21.0cm
@@ -83,23 +164,21 @@
\if@twoside
-
-
-\lhead[\includegraphics[height=\upm@smalllogo@height]{\theupmsmalldoclogo}]{\fancyplain{}{\upm@header@fmt{\theupmfulldocname}}}
+\lhead[]{\fancyplain{}{\upm@header@fmt{\theupmfulldocname}}}
\chead{}
-\rhead[\fancyplain{}{\upm@header@fmt{\theupmfulldocname}}]{\includegraphics[height=\upm@smalllogo@height]{\theupmsmalldoclogo}}
-\lfoot[\upm@header@fmt{\thepage}]{\upm@copyright@fmt{\theupmdocref~\copyright~\upmcopyrightdate~\theupmpublisher}}
+\rhead{\Ifdefined{smalllogo}{\expandafter\includegraphics[height=\upm@smalllogo@height]{\theupmsmalldoclogo}}}
+\lfoot[\upm@header@fmt{\ifthenelse{\thepage>0}{\thepage}{}}]{\upm@copyright@fmt{\tiny\theupmdocref~\copyright~\upmcopyrightdate~\theupmformattedcopyrighter}}
\cfoot{}
-\rfoot[\upm@copyright@fmt{\tiny\theupmdocref~\copyright~\upmcopyrightdate~\theupmpublisher}]{\upm@header@fmt{\thepage}}
+\rfoot[\upm@copyright@fmt{\tiny\theupmdocref~\copyright~\upmcopyrightdate~\theupmformattedcopyrighter}]{\upm@header@fmt{\ifthenelse{\thepage>0}{\thepage}{}}}
\else
\lhead{\fancyplain{}{\upm@header@fmt{\theupmfulldocname}}}
\chead{}
-\rhead{\includegraphics[height=\upm@smalllogo@height]{\theupmsmalldoclogo}}
-\lfoot{\upm@copyright@fmt{\tiny\theupmdocref~\copyright~\upmcopyrightdate~\theupmpublisher}}
+\rhead{\Ifdefined{smalllogo}{\expandafter\includegraphics[height=\upm@smalllogo@height]{\theupmsmalldoclogo}}}
+\lfoot{\upm@copyright@fmt{\tiny\theupmdocref~\copyright~\upmcopyrightdate~\theupmformattedcopyrighter}}
\cfoot{}
-\rfoot{\upm@header@fmt{\thepage}}
+\rfoot{\upm@header@fmt{\ifthenelse{\thepage>0}{\thepage}{}}}
\fi
@@ -108,9 +187,54 @@
%----------------------------------------
\AtBeginDocument{
- \maketitle
- \thispagestyle{plain}\upmdocumentsummary\upmdocumentauthors\upmdocumentvalidators\upmdocumentinformedpeople\vfill\upmhistory\cleardoublepage
+ \makefrontcover
+ \ifupm@package@docclazz@nopubpage\else\upmpublicationpage\fi
+ \ifupm@package@docclazz@nodocinfo\else\upmdocinfopage\fi
\sloppy
}
+\AtEndDocument{
+ \makebackcover
+}
+
+%----------------------------------------
+% PDF COLORS
+%----------------------------------------
+\gdef\upm@package@getcolor#1,#2,#3{#1 #2 #3}
+\renewcommand{\setpdfcolor}[1]{
+ \hypersetup{
+ filebordercolor={\upm@package@getcolor #1}, % frame color
+ linkbordercolor={\upm@package@getcolor #1}, % frame color
+ citebordercolor={\upm@package@getcolor #1}, % frame color
+ menubordercolor={\upm@package@getcolor #1}, % frame color
+ urlbordercolor={\upm@package@getcolor #1}, % frame color
+ runbordercolor={\upm@package@getcolor #1}, % frame color
+ }
+}
+
+%----------------------------------------
+% SET FORBIDDEN SECTIONNING FUNCTIONS
+%----------------------------------------
+\ifupmbookformat\else
+ \gdef\upm@package@docclazz@hidesec@a#1{%
+ \@ifnextchar*{\upm@package@docclazz@hidesec@d{#1}}{%
+ \@ifnextchar[{\upm@package@docclazz@hidesec@b{#1}}{\upm@package@docclazz@hidesec@c{#1}}%
+ }}
+ \gdef\upm@package@docclazz@hidesec@d#1#2{%
+ \@ifnextchar[{\upm@package@docclazz@hidesec@b{#1}}{\upm@package@docclazz@hidesec@c{#1}}}
+ \gdef\upm@package@docclazz@hidesec@b#1[#2]#3{\@warning{"#1" macro is skipped. Title: "#3"}}
+ \gdef\upm@package@docclazz@hidesec@c#1#2{\@warning{"#1" macro is skipped. Title: "#2"}}
+
+ \gdef\part{\upm@package@docclazz@hidesec@a{\string\part}}
+ \gdef\partstar{\upm@package@docclazz@hidesec@a{\string\part*}}
+ \gdef\parttoc{\upm@package@docclazz@hidesec@a{\string\parttoc}}
+
+\ifupmreportformat\else
+
+ \gdef\chapter{\upm@package@docclazz@hidesec@a{\string\part}}
+ \gdef\chapterstar{\upm@package@docclazz@hidesec@a{\string\part*}}
+ \gdef\chaptertoc{\upm@package@docclazz@hidesec@a{\string\parttoc}}
+
+\fi\fi
+
\endinput