% College of William and Mary  PhD thesis style -- modifications to the report style
% For LaTeX version 2.09
%
% Based on suthesis.sty by Joseph Pallas 9/13/88
%  Modified by John Burton 3/11/92


\typeout{Document Style Option `wmthesis' <11 March 92>.}

\long\def\comment#1{}
\comment{

  Example of use:
    \documentstyle[12pt,suthesis]{report}
    \begin{document}
    \title{How to Write Theses\\
 	    With Two Line Titles}
    \author{John Henry Candidate}
    \principaladviser{John Parker}
    \firstreader{John Green}
    \secondreader{John BigBooty\\(Another Department)}
 
    \beforepreface
    \prefacesection{Preface}
        This thesis tells you all you need to know about...
    \prefacesection{Acknowledgements}
        I would like to thank...
    \afterpreface
 
    \chapter{Introduction}
         ...
    \chapter{Conclusions}
         ...
    \appendix
    \chapter{A Long Proof}
         ...
    \bibliographystyle{plain}
    \bibliography{mybib}
    \end{document}

Documentation:
    This style file modifies the standard report style to follow the
    Graduate Program Offices's "Directions for Preparing Doctoral
    Dissertations".  It sets the margins and interline spacing and
    disallows page breaks at hyphens.

    The \beforepreface command creates the title page, a copyright page
    (optionally), and a signature page.  Then the user should put
    preface section(s), using the \prefacesection{section title}
    command.  The \afterpreface command then produces the tables of
    contents, tables and figures, and sets things up to start
    the main body (on arabic page 1).
    
    The following commands can control what goes in the front matter
    material:
    
	\title{thesis title}
	\author{author's name}
	\dept{author's department}
		- Computer Science if omitted
	\principaladviser{the principal advisor's name}
	   (or \principaladvisor, if you prefer advisor spelled with o)
	\firstreader{the first reader's name}
	\secondreader{the second reader's name}
	\submitdate{month year in which submitted to GPO}
		- date LaTeX'd if omitted
	\copyrightyear{year degree conferred (next year if submitted in Dec.)}
		- year LaTeX'd (or next year, in December) if omitted
	\copyrighttrue or \copyrightfalse
		- produce or don't produce a copyright page (true by default)
	\figurespagetrue or \figurespagefalse
		- produce or don't produce a List of Figures page
		  (true by default)
	\tablespagetrue or \tablespagefalse
		- produce or don't produce a List of Tables page
		  (true by default)

This style uses interline spacing that is 1.3 times normal, except
in the figure and table environments where normal spacing is used.
That can be changed by doing:
    \renewcommand{\baselinestretch}{1.6}
(or whatever you want instead of 1.6)
Unfortunately, that command probably won't take effect unless it comes
before the \begin{document} or after something like \small \normalsize.

The example above shows the 12pt substyle being used.  This seems to give
acceptable looking results, but it may be omitted to get smaller print.

}
%
% First thing we do is make sure that report has been loaded.  A
% common error is to try to use suthesis as a documentstyle.
\@ifundefined{chapter}{\@latexerr{The `suthesis' option should be used
  with the `report' document style}{You should probably read the
  suthesis documentation.}}{}

% We need 1" margins except on the binding edge, where it is 1 1/2"
% Theses are single-sided, so we don't care about \evensidemargin

\oddsidemargin 0.5in 
\evensidemargin 0.0in
\marginparwidth 40pt 
\marginparsep 10pt
\topmargin 0pt 
\headsep .5in
\textheight 8.1in 
\textwidth 6in

% Disallow page breaks at hyphens (this will give some underfull vbox's,
% so an alternative is to use \brokenpenalty=100 and manually search
% for and fix such page breaks)
\brokenpenalty=10000

% The guide suggests using double space, but we'll try to get by with less
% Use 1.2 times the normal baseline-to-baseline skip
\renewcommand{\baselinestretch}{1.1}

% Redefine the macro used for floats (including figures and tables)
% so that single spacing is used.
% (Note \def\figure{\@float{figure}set single spacing} doesn't work
%  because figure has an optional argument)

\def\@xfloat#1[#2]{\ifhmode \@bsphack\@floatpenalty -\@Mii\else
   \@floatpenalty-\@Miii\fi\def\@captype{#1}\ifinner
      \@parmoderr\@floatpenalty\z@
    \else\@next\@currbox\@freelist{\@tempcnta\csname ftype@#1\endcsname
       \multiply\@tempcnta\@xxxii\advance\@tempcnta\sixt@@n
       \@tfor \@tempa :=#2\do
                        {\if\@tempa h\advance\@tempcnta \@ne\fi
                         \if\@tempa t\advance\@tempcnta \tw@\fi
                         \if\@tempa b\advance\@tempcnta 4\relax\fi
                         \if\@tempa p\advance\@tempcnta 8\relax\fi
         }\global\count\@currbox\@tempcnta}\@fltovf\fi
    \global\setbox\@currbox\vbox\bgroup 
    \def\baselinestretch{1}\@normalsize
    \boxmaxdepth\z@
    \hsize\columnwidth \@parboxrestore}

% Redefine the macro used for footnotes to use single spacing
\long\def\@footnotetext#1{\insert\footins{\def\baselinestretch{1}\footnotesize
    \interlinepenalty\interfootnotelinepenalty 
    \splittopskip\footnotesep
    \splitmaxdepth \dp\strutbox \floatingpenalty \@MM
    \hsize\columnwidth \@parboxrestore
   \edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}\@makefntext
    {\rule{\z@}{\footnotesep}\ignorespaces
      #1\strut}}}

% \author, \title are defined in report; here are the rest of the
% front matter defining macros
\def\dept#1{\gdef\@dept{#1}}
\def\principaladviser#1{\gdef\@principaladviser{#1}}
\def\advis@r{Adviser} % default spelling
\def\principaladvisor#1{\gdef\@principaladviser{#1}\gdef\advis@r{Advisor}}
\def\firstreader#1{\gdef\@firstreader{#1}}
\def\secondreader#1{\gdef\@secondreader{#1}}
\def\thirdreader#1{\gdef\@thirdreader{#1}}
\def\fourthreader#1{\gdef\@fourthreader{#1}}
\def\submitdate#1{\gdef\@submitdate{#1}}
\def\copyrightyear#1{\gdef\@copyrightyear{#1}} % \author, \title in report
\def\@title{}\def\@author{}\def\@dept{computer science}
\def\@principaladviser{}\def\@firstreader{}\def\@secondreader{}
\def\@thirdreader{}\def\@fourthreader{}
\def\@submitdate{\ifcase\the\month\or
  January\or February\or March\or April\or May\or June\or
  July\or August\or September\or October\or November\or December\fi
  \space \number\the\year}
% Stanford says that December theses should have the next year as the
% copyright year
\ifnum\month=12
    \@tempcnta=\year \advance\@tempcnta by 1
    \edef\@copyrightyear{\number\the\@tempcnta}
\else
    \def\@copyrightyear{\number\the\year}
\fi
\newif\ifcopyright \newif\iffigurespage \newif\iftablespage
\copyrighttrue \figurespagetrue \tablespagetrue


\def\titlep{%
	\thispagestyle{empty}%
	\null\vskip1in%
	\begin{center}
		\large\uppercase\expandafter{\@title}
	\end{center}
	\vfill
        \centerline{\hbox{\vrule width 1in height 0.4pt}}
        \vfill
	\begin{center}
		\sc a dissertation\\
		presented to \\the faculty of the department of 
			\lowercase\expandafter{\@dept}\\
		the college of william and mary in virginia\\
	\end{center}
	\vfill
	\begin{center}
		\sc in partial fulfillment \\
                of the requirements for the degree of\\
		doctor of philosophy
	\end{center}
	\vfill
        \centerline{\hbox{\vrule width 1in height 0.4pt}}
        \vfill

	\begin{center}
		\rm By\\
		\@author\\
		\@submitdate\\
	\end{center}\vskip.5in\newpage}

\def\copyrightpage{%
	\null\vfill
	\begin{center}
		\large
		\copyright\ Copyright \@copyrightyear\ by \@author\\
		All Rights Reserved
	\end{center}
	\vfill\newpage}

\long\def\signature#1{%
\begin{center}
\begin{minipage}{2in}
\parindent=0pt
\par
\vspace{.5in}
\hbox{\shortstack{\vrule width 3in height 0.4pt\\ #1}}
\end{minipage}
\end{center}}

\def\signaturepage{%
	\begin{center}
	  APPROVAL SHEET
	\end{center}
	\vfill
	\begin{center}
          This dissertation is submitted in partial fulfillment of\\
	  the requirements of the degree of\\
	  Doctor of Philosophy
        \end{center}
	\signature{\@author, Author}
        \vspace{1.0in}
	\vfill
        \flushleft{Approved, \@submitdate} \\
        \vfill
	\signature{\@principaladviser, Dissertation Director}
	\vfill
	\signature\@firstreader
	\vfill
	\signature\@secondreader
	\vfill
	\signature\@thirdreader
	\vfill
	\signature\@fourthreader
	\vfill
}

\def\beforepreface{
	\pagenumbering{roman}
	\pagestyle{plain}
	\titlep
%	\ifcopyright\copyrightpage\fi
	\signaturepage}

\def\prefacesection#1{%
	\chapter*{#1}
	\addcontentsline{toc}{chapter}{#1}}

\def\afterpreface{\newpage
	\tableofcontents
	\newpage
	\iftablespage
		\listoftables
		\newpage
	\fi
	\iffigurespage
		\listoffigures
		\newpage
	\fi
	\pagenumbering{arabic}
	\pagestyle{headings}}

\def\thebibliography#1{\section*{References\@mkboth
 {REFERENCES}{REFERENCES}}\list
 {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
 \advance\leftmargin\labelsep
 \usecounter{enumi}}
 \def\newblock{\hskip .11em plus .33em minus .07em}
 \sloppy\clubpenalty4000\widowpenalty4000
 \sfcode`\.=1000\relax}
\let\endthebibliography=\endlist

% Redefine \thebibliography to go to a new page and put an entry in the
% table of contents
\let\@ldthebibliography\thebibliography
\renewcommand{\thebibliography}[1]{\newpage
	\addcontentsline{toc}{section}{References}
	\@ldthebibliography{#1}}

% Start out normal
\pagestyle{headings}

