% Use \documentclass[truedoublespace,12pt]{uithesis} in main latex file \NeedsTeXFormat{LaTeX2e}[1995/06/01] \ProvidesClass{uithesis}[2001/04/18 Idiotic UI Formatting For LaTex2e] % Required Packages \RequirePackage{setspace}[1998/04/8] \RequirePackage{verbatim} \def\@to{to} \newcommand{\etptsize}{12pt} % Setting Font Size \DeclareOption{10pt}{\renewcommand{\etptsize}{10pt}} \DeclareOption{11pt}{\renewcommand{\etptsize}{11pt}} \DeclareOption{12pt}{\renewcommand{\etptsize}{12pt}} \DeclareOption{letterpaper}{\PassOptionsToClass{letterpaper}{report}} % The following options set the global amount of spacing \newcommand{\etspacing}{\setstretch{1.37}} \DeclareOption{truedoublespace}{\renewcommand{\etspacing}{\setstretch{2.0}}} \DeclareOption{doublespace}{\renewcommand{\etspacing}{\setstretch{1.37}}} \DeclareOption{onehalfspace}{\renewcommand{\etspacing}{\onehalfspacing}} \DeclareOption{singlespace}{\renewcommand{\etspacing}{\singlespacing}} % Pass all other options to report.cls. \DeclareOption*{% \PassOptionsToClass{\CurrentOption}{report} } % It would be better to have the following line next, % rather than setting the defaults manually, by % this would break early version of LaTeX2e %\ExecuteOptions{12pt,letterpaper,doublespace} \ProcessOptions\relax \LoadClass[\etptsize]{report} % Adjust spacing of document \etspacing % Change the margins to fit requirements \setlength{\textheight}{8.75in} \setlength{\textwidth}{6in} \setlength{\topmargin}{-0.75in} % back to 1in % Beginning stuff \renewcommand{\title}[1]{\gdef\@title{#1}} \renewcommand{\author}[1]{\gdef\@author{#1}} \newcommand{\department}[1]{\gdef\@department{#1}} \newcommand{\degree}[1]{\gdef\@degree{#1}} \renewcommand{\date}[1]{\gdef\@date{#1}} \newcommand{\supervisor}[1]{\gdef\@supervisor{#1}} % Title Page \renewcommand{\maketitle}{ \begin{titlepage} \begin{center} \begin{singlespace} \vfill \hbox{} \vfill \MakeUppercase{\@title} \vfill by \\ \hbox{} \@author \vfill A thesis submitted in partial fulfillment of the \\ requirements for the \@degree\ \\ degree in \@department\ \\ in the Graduate College of \\ The University of Iowa \break\break\break \@date \break\break\break Thesis Supervisor: \@supervisor \end{singlespace} \end{center} \end{titlepage} } % Certificate Page \newcommand{\makecert}{ \newpage \pagestyle{empty} \hbox{}\hbox{} \begin{singlespace} \begin{center} Graduate College\\ The University of Iowa\\ Iowa City, Iowa \vfill CERTIFICATE OF APPROVAL\\ \vfill \rule{2.5in}{0.01in} \vfill MASTER'S THESIS \vfill \rule{1.5in}{0.01in} \end{center} \vfill \noindent This is to certify that the Master's thesis of \vfill \begin{center} \@author \end{center} \vfill \noindent has been approved by the Examining Committee for the thesis requirement for the \@degree\ degree in \@department\ at the \@date\ \linebreak graduation. \vfill \vfill \begin{tabbing} Thesis Committee: \=\rule{3in}{0.01in} \\ \>Maria Paola Bonacina, Thesis Supervisor \\ \\ \\ \>\rule{3in}{0.01in} \\ \>Cesare Tinelli \\ \\ \\ \>\rule{3in}{0.01in} \\ \>Ted Herman \\ %\\ %\\ %\>\rule{3in}{0.01in} \\ %\>Member \end{tabbing} \end{singlespace} } % Acknowledgement Page \newcommand{\ackfile}[1]{\gdef\@ackfile{#1}} \newcommand{\ackpg}{ \newpage \pagestyle{plain} \setlength{\footskip}{1.1in} \begin{singlespace} \begin{center} ACKNOWLEDGEMENTS \end{center} \end{singlespace} \vskip 2pt \begin{doublespace} \input{\@ackfile} \vfill \end{doublespace} } % Redo command that makes chapter headers \newcommand{\etchapterheadstyle}[1]{\MakeUppercase{#1}} \renewcommand{\@makechapterhead}[1]{{ \normalfont \begin{center} \etchapterheadstyle{\@chapapp{ \thechapter}} % CHAPTER 1 or APPENDIX \etchapterheadstyle{#1} % TITLE OF CHAPTER \end{center} \thispagestyle{myheadings} }} \renewcommand{\@makeschapterhead}[1]{{ \normalfont \begin{center} \etchapterheadstyle{#1} % TITLE OF CHAPTER \end{center} \pagestyle{myheadings} }} % Redo command that makes section headers \renewcommand\section{\@startsection {section}{1}{\z@}% {-3.5ex \@plus -1ex \@minus -.2ex}% {2.3ex \@plus.2ex}% {\normalfont\normalsize\bfseries}} % Redo command that makes subsection headers \renewcommand\subsection{\@startsection{subsection}{2}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\normalfont\normalsize}} % Redo command that makes subsubsection headers \renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}% {-3.25ex\@plus -1ex \@minus -.2ex}% {1.5ex \@plus .2ex}% {\normalfont\bfseries}} % Redo command that makes paragraph headers \renewcommand\paragraph{\@startsection{paragraph}{4}{\z@}% {3.25ex \@plus1ex \@minus.2ex}% {-1em}% {\normalfont\normalsize}} % Redo command that makes subparagraph headers \renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}% {3.25ex \@plus1ex \@minus .2ex}% {-1em}% {\normalfont\normalsize}} % Theorem and Lemma Environments \newcommand{\qed}{\hfill$\sqr$} \newtheorem{lemma}{Lemma} \newtheorem{theorem}{Theorem} \newtheorem{definition}{Definition} \newtheorem{proposition}{Proposition} \newtheorem{invariant}{Invariant} \newtheorem{remark}{Remark} \newtheorem{observation}{Observation} \newtheorem{notation}{Notation} % define end-of-proof symbol \def\sqr{{\vcenter{\vbox{\hrule height.4pt% \hbox{\vrule width.4pt height5pt \kern5pt% \vrule width.4pt} \hrule height.4pt}}}} % define proof environment \newenvironment{proof}{\begin{trivlist} \item[\hspace{\labelsep}{\bf\noindent Proof: }] }{\hfill\qed\end{trivlist}} % define example environment \newenvironment{example}{\begin{trivlist} \item[\hspace{\labelsep}{\it\noindent Example: }] }{\hfill\end{trivlist}} % Change style of printing chapters in TOC \renewcommand*\l@chapter[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% \setlength\@tempdima{2em}% \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip \hskip 4em \etchapterheadstyle{#1}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #2}% \par \endgroup \fi} % Change style of printing sections in TOC \renewcommand*\l@section[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% \setlength\@tempdima{2em}% \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip \hskip 6.05em \normalfont \normalcolor #1\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #2}% \par \endgroup \fi} % Change style of printing subsections in TOC \renewcommand*\l@subsection[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% \setlength\@tempdima{2.5em}% \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip \hskip 8.15em \normalfont \normalcolor #1\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #2}% \par \endgroup \fi} % Change style of printing subsubsections in TOC \renewcommand*\l@subsubsection[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% \setlength\@tempdima{2.5em}% \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip \hskip 10.30em \normalfont \normalcolor #1\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #2}% \par \endgroup \fi} % Change style of printing tables in LOT \renewcommand*\l@table[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% \setlength\@tempdima{2em}% \vskip -0.75em \@plus\p@ \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip \etchapterheadstyle{#1}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #2}% \par \endgroup \vskip 2.25em \@plus\p@ \fi} % Change style of printing figures in LOF \renewcommand*\l@figure[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% \setlength\@tempdima{2em}% \vskip -0.75em \@plus\p@ \begingroup \parindent \z@ \rightskip \@pnumwidth \parfillskip -\@pnumwidth \leavevmode \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip \etchapterheadstyle{#1}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{}\mkern \@dotsep mu$}\hfill \nobreak \hb@xt@\@pnumwidth{\hfil\normalfont \normalcolor #2}% \par \endgroup \vskip 2.25em \@plus\p@ \fi} % Changing where the page numbers go on pages that aren't the first % page of a chapter. % Change name of bibliography \renewcommand{\bibname}{Bibliography} \pagestyle{myheadings} \markright{} % Define Bib Command \newcommand{\biblio}[1]{ \addcontentsline{toc}{chapter}{BIBLIOGRAPHY} \singlespace \bibliographystyle{plain} \bibliography{#1} } % This redfinition of the thebibliography environment ensures that % that there is at least 4 blank lines between the title and the % first entry, and that there is a full blank line between each entry \renewenvironment{thebibliography}[1] {\chapter*{\bibname \@mkboth{\MakeUppercase\bibname}{\MakeUppercase\bibname}} \thispagestyle{myheadings} \list{\@biblabel{\@arabic\c@enumiv}} {\settowidth\labelwidth{\@biblabel{#1}} \leftmargin\labelwidth \advance\leftmargin\labelsep \parsep 1.0em \usecounter{enumiv} \let\p@enumiv\@empty \renewcommand\theenumiv{\@arabic\c@enumiv}} \renewcommand\newblock{\hskip .11em \@plus.33em \@minus.07em} \sloppy\clubpenalty4000\widowpenalty4000 \sfcode`\.=\@m \vspace{1.25em} %Throw in some more space after the title } % Make the Table of Contents \let\oldtableofcontents = \tableofcontents \renewcommand{\tableofcontents}{ \newpage \setlength{\footskip}{1.1in} \pagestyle{plain} \begin{singlespace} \begin{center} TABLE OF CONTENTS \end{center} \hbox{} \hbox{} \@starttoc{tables} \@starttoc{figures} \vskip -1.0em \hbox{CHAPTER} \@starttoc{toc} \end{singlespace} } % Make the List of Tables \let\oldlistoftables = \listoftables \renewcommand{\listoftables}{ \newpage \setlength{\footskip}{1.1in} \pagestyle{plain} \begin{singlespace} \begin{center} LIST OF TABLES \end{center} \hbox{} \hbox{Table} \hbox{} \@starttoc{lot} \end{singlespace} \addcontentsline{tables}{table}{LIST OF TABLES} } % Make the List of Figures \let\oldlistoffigures = \listoffigures \renewcommand{\listoffigures}{ \newpage \setlength{\footskip}{1.1in} \pagestyle{plain} \begin{singlespace} \begin{center} LIST OF FIGURES \end{center} \hbox{} \hbox{Figure} \hbox{} \@starttoc{lof} \end{singlespace} \addcontentsline{figures}{figure}{LIST OF FIGURES} }