summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/upmethodology/src/upmethodology-extension.sty
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/upmethodology/src/upmethodology-extension.sty
Initial commit
Diffstat (limited to 'macros/latex/contrib/upmethodology/src/upmethodology-extension.sty')
-rw-r--r--macros/latex/contrib/upmethodology/src/upmethodology-extension.sty115
1 files changed, 115 insertions, 0 deletions
diff --git a/macros/latex/contrib/upmethodology/src/upmethodology-extension.sty b/macros/latex/contrib/upmethodology/src/upmethodology-extension.sty
new file mode 100644
index 0000000000..8b6a2cd786
--- /dev/null
+++ b/macros/latex/contrib/upmethodology/src/upmethodology-extension.sty
@@ -0,0 +1,115 @@
+% Package for Unified Process Methodology's extensions
+%
+% 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
+% published by the Free Software Foundation; either version 3 of the
+% License, or any later version.
+%
+% This library is distributed in the hope that it will be useful, but
+% WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+% Lesser General Public License for more details.
+%
+% You should have received a copy of the GNU Lesser General Public
+% License along with this library; see the file COPYING. If not,
+% write to the Free Software Foundation, Inc., 59 Temple Place - Suite
+% 330, Boston, MA 02111-1307, USA.
+%
+
+\global\edef\upm@package@ext@ver{2017/08/08}
+
+\NeedsTeXFormat{LaTeX2e}[1995/12/01]
+\ProvidesPackage{upmethodology-extension}[\upm@package@ext@ver]
+
+\RequirePackage{upmethodology-p-common}
+
+%----------------------------------------
+% TEST MACROS
+%----------------------------------------
+\long\def\Ifdefined#1#2{\@ifundefined{upmext@extension@value@#1}{}{#2}}
+\long\def\Ifelsedefined#1#2#3{\@ifundefined{upmext@extension@value@#1}{#3}{#2}}
+\long\def\Ifundefined#1#2{\@ifundefined{upmext@extension@value@#1}{#2}{}}
+\long\def\Ifelseundefined#1#2#3{\@ifundefined{upmext@extension@value@#1}{#2}{#3}}
+
+%----------------------------------------
+% EXTENSION MANAGEMENT
+%----------------------------------------
+
+\newif\ifupm@extension@savealllang\upm@extension@savealllangfalse
+
+\newcommand{\Get}[1]{\@nameuse{upmext@extension@value@#1}}
+\newcommand{\GetLang}[2]{\@nameuse{upmext@extension@value@#1@#2}}
+
+\newcommand{\upm@extension@Set}[3][\upmcurrentlang]{%
+ % PREDEFINED FRONT PAGE
+ \ifthenelse{\equal{#2}{frontpage}}{%
+ \gdef\upmext@extension@value@frontpage{#3}%
+ \global\let\upmext@extension@value@frontpage@custom\relax%
+ }{%
+ % CUSTOM BACK PAGE
+ \ifthenelse{\equal{#2}{backpage}}{%
+ \ifthenelse{\equal{\upmcurrentlang}{#1}}{%
+ \gdef\upmext@extension@value@backpage{#3}%
+ }{}%
+ }{%
+ % CUSTOM FRONT PAGE
+ \ifthenelse{\equal{#2}{cfrontpage}}{%
+ \ifthenelse{\equal{\upmcurrentlang}{#1}}{%
+ \gdef\upmext@extension@value@frontpage{custom}%
+ \gdef\upmext@extension@value@frontpage@custom{#3}%
+ }{}%
+ }{%
+ \ifthenelse{\equal{\upmcurrentlang}{#1}}{%
+ \message{*** define extension value #2 ****}%
+ \global\@namedef{upmext@extension@value@#2}{#3}%
+ }{}%
+ \ifupm@extension@savealllang%
+ \global\@namedef{upmext@extension@value@#2@#1}{#3}%
+ \fi
+ }}}%
+}
+\let\Set\upm@extension@Set
+
+\newcommand{\Unset}[2][\upmcurrentlang]{%
+ \ifthenelse{\equal{\upmcurrentlang}{#1}}{%
+ \message{*** undefine extension value #2 ****}%
+ \global\expandafter\let\csname upmext@extension@value@#2\endcsname\@undefined%
+ \ifupm@extension@savealllang%
+ \global\expandafter\let\csname upmext@extension@value@#2@#1\endcsname\@undefined%
+ \fi%
+ }{}%
+}
+
+\newcommand{\DeclareCopyright}[5][\upmcurrentlang]{%
+ \ifthenelse{\equal{\upmcurrentlang}{#1}}{%
+ \Set{copyright}{Copyright {(c)} #3 #4.}%
+ \message{*** style extension #2, \Get{copyright} ****}%
+ \Set{trademarks}{#5}%
+ }{}%
+}
+
+\newlength{\upmext@tmp@putx}
+\def\Put(#1,#2){%
+ \setlength{\upmext@tmp@putx}{#1\unitlength}%
+ \if@twoside\ifodd\c@page\else\addtolength{\upmext@tmp@putx}{28\unitlength}\fi\fi%
+ \put(\strip@pt\upmext@tmp@putx,#2)}
+
+%-----
+% Use the specified extension
+%\UseExtension{extension_name}
+\newcommand{\UseExtension}[1]{%
+ \message{**** including upm extension #1 (upmext-#1.cfg) ****}%
+ \input{upmext-#1.cfg}%
+}
+
+%------------
+% Default declarations
+\Set{frontillustrationsize}{1}
+\Set{watermarksize}{1}
+\Unset{publisher}
+\Unset{copyrighter}
+\Unset{printedin}
+
+\endinput