%% %% This is file `euproposal.cls', %% generated with the docstrip utility. %% %% The original source files were: %% %% euproposal.dtx (with options: `cls') %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesClass{euproposal}[2020/08/21 v1.7 EU Proposal] \newif\ifpartB\partBfalse \DeclareOption{partB}{\partBtrue} \newif\if@split\@splitfalse \DeclareOption{split}{\@splittrue} \DeclareOption*{\PassOptionsToClass{\CurrentOption}{proposal}} \ProcessOptions \ifpartB\LoadClass[report]{proposal}\else\LoadClass{proposal}\fi \RequirePackage{longtable} \RequirePackage{eurosym} \RequirePackage{wrapfig} \RequirePackage{eupdata} \RequirePackage{datetime} \RequirePackage{chngcntr} \counterwithin{figure}{subsection} \counterwithin{table}{subsection} \setcounter{secnumdepth}{4} \ifpartB \def\thepart{\Alph{part}} \setcounter{part}{2} \def\thechapter{\thepart.\arabic{chapter}} \def\numberline#1{\hb@xt@\@tempdima{#1\hfil} } \fi% ifpartB \newcommand\prop@sites@table{\def\@@table{} {\let\tabularnewline\relax\let\hline\relax \@for\@I:=\prop@gen@sites\do{\xdef\@@table{\@@table\pdataref@safe{site}\@I{number}} \xdef\@@table{\@@table&\pdataref@safe{site}\@I{shortname}\ifx\@I\prop@gen@coordinatorsite (coordinator)\fi} \xdef\@@table{\@@table&\pdataref@safe{site}\@I{acronym}} \xdef\@@table{\@@table&\pdataref@safe{site}\@I{countryshort}\tabularnewline\hline}}} \begin{tabular}{|l|p{8cm}|l|l|}\hline%| \# & Participant organisation name & Short name & Country\\\hline\hline \@@table \end{tabular}} \renewenvironment{prop@proposal} {\ifgrantagreement\else \thispagestyle{empty}\begin{center} {\Large \prop@gen@instrument}\\[.2cm] {\Large\textbf\prop@gen@callname}\\[.4cm] {\LARGE \prop@gen@callid}\\[.8cm] {\huge\textbf\prop@gen@title}\\[.4cm] \ifx\prop@gen@acronym\@empty\else{\LARGE Acronym: {\prop@gen@acronym}}\\[2cm]\fi \end{center} {\large\textbf{Date of Preparation: \today: \currenttime}} \\[1em] \begin{large} \begin{description} % \item[Work program topics addressed by \pn:] % \@ifundefined{prop@gen@topicsaddressed} % {\textbf{Challenge \prop@gen@challengeid}: \prop@gen@challenge, % \textbf{Objective \prop@gen@objectiveid}: \prop@gen@objective, % \textbf{target outcome \prop@gen@outcomeid}) \prop@gen@outcome. % {\prop@gen@topicsaddressed}\\[1em] \item[Coordinator:] \prop@gen@coordinator \item[e-mail:] \prop@gen@Cemail \item[tel/fax:] \prop@gen@Ctelfax \@ifundefined{prop@gen@keywords}{}{\item[Keywords:] \prop@gen@keywords} \end{description} \end{large} \vspace*{1em} \begin{center} \prop@sites@table\vfill \@ifundefined{prop@gen@iconrowheight}{} {\@for\@site:=\prop@gen@sites\do{\includegraphics[height=\prop@gen@iconrowheight]{\pdataref@safe{site}\@site{logo}}\qquad}} \end{center} \newpage \fi% ifgrantagreement \setcounter{tocdepth}{2}\setcounter{part}{2}} {\newpage\printbibliography[heading=warnpubs]% \if@split \newwrite\@@SPLIT% \immediate\openout\@@SPLIT=SPLIT.at% \protected@write\@@SPLIT{}{\thepage}% \closeout\@@SPLIT% \fi}% if@split \def\prop@gen@instrument{Proposal Instrument (e.g. IP)} \define@key{site@desc}{box}[true]{\def\site@desc@box{#1}% \pdata@def{sitedesc}{\@site}{box}{#1}} \define@key{site@desc}{logo}[true]{\def\site@desc@logo{#1}% \pdata@def{sitedesc}{\@site}{logo}{#1}} \define@key{site@desc}{width}{\def\site@desc@width{#1}% \pdata@def{sitedesc}{\@site}{width}{#1}\@dmp{wd=#1}} \define@key{site@desc}{height}{\def\site@desc@height{#1}% \pdata@def{sitedesc}{\@site}{height}{#1}\@dmp{ht=#1}} \newenvironment{sitedescription}[2][]% {\def\c@site{#2}% remember the site ID \newcounter{site@#2@PM} % for the site PM \def\site@desc@box{false}% not box unless requested \def\site@desc@logo{false}% not logo unless requested \def\site@desc@height{1.3cm}% default height \def\site@desc@width{5cm}% default width \setkeys{site@desc}{#1}% read the keys to overwrite the defaults \ifx\@site@desc@box\@true% if we want a logo \begin{wrapfigure}{r}{\site@desc@width}\vspace{-2.5ex}% \begin{tabular}{|p{\site@desc@width}|}\hline\vspace{1mm}% \ifx\@site@desc@logo\@true% if we want a logo \includegraphics[height=\site@desc@width]{#2}\\[1ex]% \fi% end logo \textbf{\pdataref@safe{site}{#2}{type}.\hfill \pdataref@safe{site}{#2}{country}}\\% \small\pdataref@safe{site}{#2}{streetaddress}, \pdataref@safe{site}{#2}{townzip}\\\hline% \end{tabular}\vspace{-2.5ex}% \end{wrapfigure}% \fi% end box \pdata@target{site}{#2}% {\subsubsection{\pdataref@safe{site}{#2}{acronym}: % space here {\textsc{\pdataref@safe{site}{#2}{shortname}} (\pdataref@safe{site}{#2}{countryshort})}}}% \small% \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {0.25ex \@plus1ex \@minus.2ex}% {-1em}% {\normalfont\normalsize\bfseries}}} {\pdata@def{site}{\c@site}{reqPM}{\csname thesite@\c@site @PM\endcsname}} \define@key{site@part}{type}{\def\site@part@type{#1}\@dmp{type=#1}} \define@key{site@part}{PM}{\def\site@part@PM{#1}\@dmp{PM=#1}} \define@key{site@part}{salary}{\def\site@part@salary{#1}}%\@dmp{\euro=#1}} \define@key{site@part}{gender}{\def\site@part@gender{#1}}%\@dmp{\euro=#1}} \newenvironment{participant}[2][]% {\def\site@part@type{}\def\site@part@PM{}\def\site@part@salary{}\def\site@part@gender{}% \setkeys{site@part}{#1}% \ifx\site@part@PM\@empty\else\addtocounter{site@\c@site @PM}{\site@part@PM}\fi% \paragraph*{#2\ % (\ifx\site@part@type\@empty\else\site@part@type\fi% \ifx\site@part@gender\@empty\else, \site@part@gender\fi% \ifx\site@part@PM\@empty\else, \site@part@PM~PM\fi% )}% \ignorespaces} {\par\medskip} \newmdenv[frametitle=Objectives]{wpobjectives} \newmdenv[frametitle=Description]{wpdescription} \renewenvironment{workpackage}[1][] {\begin{work@package}[#1]\medskip\wpheadertable% \addcontentsline{toc}{subsubsection}{\wp@label\wp@num: \pdataref{wp}\wp@id{title}}} {\end{work@package}} \newcounter{@sitespo}\newcounter{@sitespt} \renewcommand\wpheadertable{% \wp@sites@efforts@lines% \setcounter{@sitespo}{\thewp@sites@num}\addtocounter{@sitespo}{1}% \par\noindent\begin{tabular}{|l|*{\thewp@sites@num}{c|}c|}\hline% \multicolumn{\the@sitespo}{|l|}{\textbf{\wp@mk@title{\wp@num}: }% \textsf{\pdata@target{wp}{\wp@id}{\pdataref{wp}\wp@id{title}}}} &\textbf{Start: }\pdataref{wp}\wp@id{start}\\\hline% \wp@sites@line\\\hline% \wp@efforts@line\\\hline% \end{tabular}\smallskip\par\noindent\ignorespaces} \surroundwithmdframed{wpdelivs} \define@key{milestone}{verif}{\gdef\mile@verif{#1}\pdata@def{mile}\mile@id{verif}{#1}} \define@key{mst}{caption}{\gdef\mst@caption{#1}} \define@key{mst}{wname}{\gdef\mst@wname{#1}} \define@key{mst}{wdeliv}{\gdef\mst@wdeliv{#1}} \define@key{mst}{wverif}{\gdef\mst@wverif{#1}} \newcommand\milestonetable[1][]{% \IfFileExists{./\jobname.deliverables}{% to avoid errors \message{euproposal.cls: Generating Milestones Table}% \def\mst@caption{Milestones, Deliverables, and Verification}% \def\mst@wname{2.5cm}\def\mst@wdeliv{7cm}\def\mst@wverif{4cm} \setkeys{mst}{#1}% {\gdef\mst@lines{}%initialize \let\tabularnewline\relax\let\hline\relax% so they \let\textbf\relax\let\emph\relax% do not bother us \edef\@@miles{\pdataref{all}{mile}{ids}} \@for\@I:=\@@miles\do{ \edef\@delivs{\pdataref@safe{mile}{\@I}{delivs}}% \def\@@delivs{} \@for\@J:=\@delivs\do{\xdef\@@delivs{\@@delivs\ \pdataref{deliv}\@J{label}}} \def\@@line{ \textbf{\pdataref{mile}\@I{label}}& \emph{\pdataref{mile}{\@I}{title}} & \@@delivs& \pdataref{mile}\@I{month} & \pdataref{mile}\@I{verif}} \xdef\mst@lines{\mst@lines\@@line\tabularnewline\hline}}} \begin{table}[ht] \begin{tabular}{|l|p{\mst@wname}|p{\mst@wdeliv}|l|p{\mst@wverif}|}\hline \#&\textbf{\miles@legend@name} &\textbf{\miles@legend@involved} &\textbf{\miles@legend@mo} &\textbf{\miles@legend@verif}\\\hline\hline \mst@lines \end{tabular} \caption{\mst@caption\ ($^\ast$\miles@legend)}\label{tab:milestonetable} \end{table}} {\ClassWarning{not formatting mile stones table yet, deliverables are still missing; generate\jobname.deliverables\ to get it!}}} \newcommand\miles@legend@name{Name} \newcommand\miles@legend@mo{Mo} \newcommand\miles@legend@verif{Means of Verif.} \newcommand\miles@legend@involved{WPs$^\ast$/Deliverables involved} \newcommand\miles@legend{WP is first number in deliverable label} \newcommand\prop@milesfor[1]{\edef\@delivs{\pdataref@safe{mile}{#1}{delivs}}% \let\m@sep=\relax\def\new@sep{,\ }% \@for\@I:=\@delivs\do{\m@sep\pdataRef{deliv}\@I{label}\let\m@sep=\new@sep}} \newenvironment{risk}[3] {\paragraph{Risk: #1}\hfill\emph{probability}: #2, \emph{gravity}: #3\par\noindent\ignorespaces} {} \newenvironment{riskcont}[3] {\begin{risk}{#1}{#2}{#3}\textbf{Contingency:} } {\end{risk}} \newcommand\keypubs[1]{% \begin{refsection}\nocite{#1}\printbibliography[heading=empty]\end{refsection}} \endinput %% %% End of file `euproposal.cls'.