diff options
author | Karl Berry <karl@freefriends.org> | 2009-11-17 18:02:43 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-11-17 18:02:43 +0000 |
commit | 592922d263ef31c47620333f40281f722a5b4e2e (patch) | |
tree | f2cf6e71567420254ee534f7f66fb531c72f75fd /Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls | |
parent | 8caf232ea678d2a7c51b476be84aec1fc9e17423 (diff) |
upmethodology 20091102 (2nov09)
git-svn-id: svn://tug.org/texlive/trunk@16051 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls')
-rw-r--r-- | Master/texmf-dist/tex/latex/upmethodology/upmethodology-document.cls | 168 |
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 |