\chapter{Application options}\label{sec:ApplicationOptions}

These are requirements for adapting the User Interface of \ProgramName.
\begin{itemize}
    \item Multi-language.
    \item Multi-core calculation.
    \item Changing units.
    \item Real-time validation.
    \item Calculation log.
    \item Undo-Redo.
\end{itemize}

\section{Multi-language}\label{sec:USMultiLanguage}
It should be possible to change the display language of the User Interface.
Two options are possible.
\begin{itemize}
	\item Dutch.
	\item English.
\end{itemize}

\section{Multi-core calculation}\label{sec:USMultiCore}
It should be possible to use multiple processor cores during the calculations to decrease the total calculation time.

\section{Changing units}\label{sec:USUnits}
It should be possible to change the units that are used in the User Interface.
Below a list of quantities and their units.
\begin{itemize}
	\item Fraction (÷, \%, ‰, ppm).
	\item Length (m, cm, mm, km, inch, ft).
	\item Tiny length (mm, µm).
	\item Angle (deg, rad, grad, tan, cot).
	\item Weight (Kn/m3, N/m3, MN/m3, lb/in3, lb/ft3).
	\item Pressure per length (Kn/m3, N/m3, kN/cm3, lb/in3, lb/ft3, kip/inch3, MPa/m).
	\item Pressure (Kn/m2, N/m2, Pa, KPa, MPa, kN/cm2, psi).
	\item Permeability (m/s, m/min, m/h, m/d, cm/s, mm/s).
\end{itemize}

\section{Real-time validation}\label{sec:USRealTimeValidation}
The input data should be validated during the use of the application (real-time/on the fly) given the (calculation) settings. 
The validation results are shown in a validation overview.

\section{Calculation log}\label{sec:USCalculationLog}
After the calculaton a log of the errors and warnings that are generated during the calculation will be shown.

\section{Undo-Redo}\label{sec:USUndoRedo}
It should be possible to undo and redo changes of the data in the User Interface.

