From 955af14f6664574df1ff47e073e39f8d48d6355a Mon Sep 17 00:00:00 2001
From: Aldrik Ramaekers <aldrikboy@gmail.com>
Date: Sat, 11 Oct 2025 23:36:54 +0200
Subject: doxygen setup

---
 manual/new_header.tex | 310 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 310 insertions(+)
 create mode 100644 manual/new_header.tex

(limited to 'manual/new_header.tex')

diff --git a/manual/new_header.tex b/manual/new_header.tex
new file mode 100644
index 0000000..0c34f4c
--- /dev/null
+++ b/manual/new_header.tex
@@ -0,0 +1,310 @@
+% Latex header for doxygen 1.14.0
+  % Handle batch mode
+  $latex_batchmode
+
+  % to overcome problems with too many open files
+  \let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}
+
+  \RequirePackage{iftex}
+  \ifLuaTeX
+    \directlua{pdf.setminorversion(7)}
+  \fi
+  \ifXeTeX
+    \special{pdf:minorversion 7}
+  \fi
+  \ifPDFTeX
+    \pdfminorversion=7
+  \fi
+
+  % Set document class depending on configuration
+%%BEGIN COMPACT_LATEX
+  \documentclass[twoside]{article}
+%%END COMPACT_LATEX
+%%BEGIN !COMPACT_LATEX
+  \documentclass[twoside]{book}
+%%END !COMPACT_LATEX
+
+  %% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package
+  \usepackage{ifthen}
+  \ifx\requestedLaTeXdate\undefined
+    \usepackage{array}
+  \else
+    \usepackage{array}[=2016-10-06]
+  \fi
+  %%
+
+  % Packages required by doxygen
+  \makeatletter
+  \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
+  % suppress package identification of infwarerr as it contains the word "warning"
+  \let\@@protected@wlog\protected@wlog
+  \def\protected@wlog#1{\wlog{package info suppressed}}
+  \RequirePackage{infwarerr}
+  \let\protected@wlog\@@protected@wlog
+  \makeatother
+  \IfFormatAtLeastTF{2016/01/01}{}{\usepackage{fixltx2e}} % for \textsubscript
+  \ifPDFTeX
+    \IfFormatAtLeastTF{2015/01/01}{\pdfsuppresswarningpagegroup=1}{}
+  \fi
+
+  \usepackage{doxygen}
+
+  $extralatexstylesheet
+
+  \usepackage{graphicx}
+  \iftutex
+    \usepackage{fontspec}
+    \defaultfontfeatures{Ligatures={TeX}}
+    \usepackage{unicode-math}
+  \else
+    \usepackage[utf8]{inputenc}
+  \fi
+  \usepackage{makeidx}
+  \PassOptionsToPackage{warn}{textcomp}
+  \usepackage{textcomp}
+  \usepackage[nointegrals]{wasysym}
+  \usepackage{ifxetex}
+  \usepackage{geometry}
+  \usepackage{xcolor}
+  \usepackage{graphicx}
+  \usepackage{pmboxdraw}
+  \usepackage{lipsum}% Used for dummy text.
+  \definecolor{titlepagecolor}{cmyk}{1,.60,0,.40}
+  \definecolor{namecolor}{cmyk}{1,.50,0,.10} 
+
+  \usepackage{setspace}
+  \setstretch{1.0}
+
+  % NLS support packages
+  $languagesupport
+
+  % Define default fonts
+  % Font selection
+%%BEGIN LATEX_FONTENC
+  \iftutex
+  \else
+    \usepackage[$latexfontenc]{fontenc}
+  \fi
+%%END LATEX_FONTENC
+
+  % set main and monospaced font
+  $latexfont
+
+  \doxyallsectionsfont{%
+    \fontseries{bc}\selectfont%
+    \color{darkgray}%
+  }
+  \renewcommand{\DoxyLabelFont}{%
+    \fontseries{bc}\selectfont%
+    \color{darkgray}%
+  }
+  \newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
+
+   % Arguments of doxygenemoji:
+   % 1) ':<text>:' form of the emoji, already LaTeX-escaped
+   % 2) file with the name of the emoji without the .png extension
+   % in case image exist use this otherwise use the ':<text>:' form
+   \newcommand{\doxygenemoji}[2]{%
+     \IfFileExists{$latexemojidirectory/#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{$latexemojidirectory/#2.png}}}{#1}%
+   }
+
+  % Page & text layout
+  \usepackage{geometry}
+  \geometry{%
+    $papertype,%
+    top=2.5cm,%
+    bottom=2.5cm,%
+    left=1.5cm,%
+    right=1.5cm%
+  }
+  \usepackage{changepage}
+
+  % Allow a bit of overflow to go unnoticed by other means
+  \tolerance=750
+  \hfuzz=15pt
+  \hbadness=750
+  \setlength{\emergencystretch}{15pt}
+  \setlength{\parindent}{0cm}
+  \newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}}
+  \newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}}
+  \doxynormalparskip
+  % Redefine paragraph/subparagraph environments, using sectsty fonts
+  \makeatletter
+  \renewcommand{\paragraph}{%
+    \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
+      \normalfont\normalsize\bfseries\SS@parafont%
+    }%
+  }
+  \renewcommand{\subparagraph}{%
+    \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
+      \normalfont\normalsize\bfseries\SS@subparafont%
+    }%
+  }
+  \makeatother
+
+  \makeatletter
+  \newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@}
+  \makeatother
+
+  % Headers & footers
+  \usepackage{fancyhdr}
+  \pagestyle{fancyplain}
+  \renewcommand{\footrulewidth}{0.4pt}
+
+  \fancypagestyle{fancyplain}{
+    \fancyhf{}
+    \fancyhead[LE, RO]{\bfseries\thepage}
+    \fancyhead[LO]{\bfseries\rightmark}
+    \fancyhead[RE]{\bfseries\leftmark}
+    \fancyfoot[LO, RE]{\bfseries\scriptsize OpenBooks Manual }
+  }
+
+  \fancypagestyle{plain}{
+    \fancyhf{}
+    \fancyfoot[LO, RE]{\bfseries\scriptsize OpenBooks Manual }
+    \renewcommand{\headrulewidth}{0pt}
+  }
+
+  \pagestyle{fancyplain}
+
+
+%%BEGIN !COMPACT_LATEX
+  \renewcommand{\chaptermark}[1]{%
+    \markboth{#1}{}%
+  }
+%%END !COMPACT_LATEX
+  \renewcommand{\sectionmark}[1]{%
+    \markright{\thesection\ #1}%
+  }
+
+  % ToC, LoF, LoT, bibliography, and index
+  % Indices & bibliography
+  \usepackage[numbers]{natbib}
+  \usepackage[titles]{tocloft}
+  \setcounter{tocdepth}{3}
+  \setcounter{secnumdepth}{5}
+
+  % creating indexes
+  $makeindex
+
+  $extralatexpackages
+
+  $latexspecialformulachars
+
+%%BEGIN FORMULA_MACROFILE
+  \input{$formulamacrofile}
+%%END FORMULA_MACROFILE
+
+  % Hyperlinks
+%%BEGIN PDF_HYPERLINKS
+    % Hyperlinks (required, but should be loaded last)
+    \ifPDFTeX
+      \usepackage[pdftex,pagebackref=true]{hyperref}
+    \else
+      \ifXeTeX
+        \usepackage[xetex,pagebackref=true]{hyperref}
+      \else
+        \ifLuaTeX
+          \usepackage[luatex,pagebackref=true]{hyperref}
+        \else
+          \usepackage[ps2pdf,pagebackref=true]{hyperref}
+        \fi
+      \fi
+    \fi
+    \hypersetup{%
+      colorlinks=false,%
+      linkcolor=blue,%
+      citecolor=blue,%
+      unicode,%
+      pdftitle={$projectname},%
+      pdfsubject={$projectbrief}%
+    }
+
+%%END PDF_HYPERLINKS
+
+  % Custom commands used by the header
+  % Custom commands
+  \newcommand{\clearemptydoublepage}{%
+    \newpage{\pagestyle{empty}\cleardoublepage}%
+  }
+
+  % caption style definition
+  \usepackage{caption}
+  \captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
+
+
+  % in page table of contents
+  \IfFormatAtLeastTF{2023/05/01}{\usepackage[deeplevels]{etoc}}{\usepackage[deeplevels]{etoc_doxygen}}
+  \etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
+  \etocsetlevel{subsubsubsection}{4}
+  \etocsetlevel{subsubsubsubsection}{5}
+  \etocsetlevel{subsubsubsubsubsection}{6}
+  \etocsetlevel{subsubsubsubsubsubsection}{7}
+  \etocsetlevel{paragraph}{8}
+  \etocsetlevel{subparagraph}{9}
+
+  % prevent numbers overlap the titles in toc
+  \renewcommand{\numberline}[1]{#1~}
+
+  \renewcommand{\doxysection}[1]{%
+    \clearpage
+    \section{#1}%
+  }
+
+% End of preamble, now comes the document contents
+%===== C O N T E N T S =====
+
+\begin{document}
+  \raggedbottom
+
+  $latexdocumentpre
+
+  % Titlepage & ToC
+%%BEGIN PDF_HYPERLINKS
+%%BEGIN USE_PDFLATEX
+    % To avoid duplicate page anchors due to reuse of same numbers for
+    % the index (be it as roman numbers)
+    \hypersetup{pageanchor=false,
+                bookmarksnumbered=true,
+                pdfencoding=unicode
+               }
+%%END USE_PDFLATEX
+%%END PDF_HYPERLINKS
+  \pagenumbering{alph}
+
+  \begin{titlepage}
+  \newgeometry{left=7.5cm} %defines the geometry for the titlepage
+  \pagecolor{titlepagecolor}
+  \noindent
+  %\includegraphics[width=2cm]{logo.jpg}\\[-1em]
+  \color{white}
+  \makebox[0pt][l]{\rule{1.3\textwidth}{1pt}}
+  \par
+  \noindent
+  \textbf{\huge{OpenBooks}} \textcolor{namecolor}{\textsf{$projectnumber}}
+  \vfill
+  \noindent
+  \vskip\baselineskip
+  \noindent
+  \end{titlepage}
+
+  \nopagecolor
+  \restoregeometry
+
+  \clearemptydoublepage
+  \pagenumbering{roman}
+
+  \tableofcontents
+  \clearemptydoublepage
+  \pagenumbering{arabic}
+
+%%BEGIN PDF_HYPERLINKS
+%%BEGIN USE_PDFLATEX
+  % re-enable anchors again
+  \hypersetup{pageanchor=true}
+%%END USE_PDFLATEX
+%%END PDF_HYPERLINKS
+
+%--- Begin generated contents ---
+
+
-- 
cgit v1.2.3-70-g09d2

