%\iffalse -*- doctex -*- \fi
%
%% \RCS$Id: pmn-sigalternate-nfss.sty,v 1.4 2003/11/03 08:28:54 turtle Exp $
%% \RCS$Revision: 1.4 $
%% \RCS$Date: 2003/11/03 08:28:54 $
%
%\iffalse metacomment
%%  (C) 2003 Peter M�ller Neergaard
%% 
%%  This program may be distributed and/or modified under the
%%  conditions of the LaTeX Project Public License, either version 1.2
%%  of this license or (at your option) any later version.
%%  The latest version of this license is in
%%    http://www.latex-project.org/lppl.txt
%%  and version 1.2 or later is part of all distributions of LaTeX 
%%  version 1999/12/01 or later.
%
% This program consists of the file pmn-sigalternate-nfss.sty.
% 
% To print the documentation (which for the moment is uninteresting)
% remove you will have to uncomment all the lines starting with %D%.
% 
%\fi
%
% \CheckSum{18}^^A 18
% \CharacterTable
%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%   Digits        \0\1\2\3\4\5\6\7\8\9
%   Exclamation   \!     Double quote  \"     Hash (number) \#
%   Dollar        \$     Percent       \%     Ampersand     \&
%   Acute accent  \'     Left paren    \(     Right paren   \)
%   Asterisk      \*     Plus          \+     Comma         \,
%   Minus         \-     Point         \.     Solidus       \/
%   Colon         \:     Semicolon     \;     Less than     \<
%   Equals        \=     Greater than  \>     Question mark \?
%   Commercial at \@     Left bracket  \[     Backslash     \\
%   Right bracket \]     Circumflex    \^     Underscore    \_
%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%   Right brace   \}     Tilde         \~}
%
%
% \MakeShortVerb{\"}
%
% \title{The \package{sig-alternate-nfss} package\thanks
%   {This file is CVS revision \RCSRevision, dated \RCSDate.}}
% \author{Peter M�ller Neergaard}
% \maketitle
%
% \begin{abstract}
%   This package fixes ACM's \package{sig-alternate} class so it  uses
%   NFSS (new font selection scheme).  Among other things, it  ensures
%   that fonts in the headings are scaled correctly.
% \end{abstract}
%
%D% % \section{Stub For the User's Guide And Documentation}
%D% %
%D% % Slightly embarrasing, the very first part of the \LaTeX\ code is a
%D% % hack on \LaTeX\ to make it believe that it is loading the package
%D% % "pmn-sigalternate-nfss.sty" when printing the documentation.
%D% %    \begin{macrocode}
%D% %<*documentation>
%D% \makeatletter 
%D% \def\@currname{pmn-sigalternate-nfss} 
%D% \def\@currext{sty}
%D% %</documentation>
%D% %    \end{macrocode}
% \cmd{\@currname} and \cmd{\@currext} are the internal \LaTeX-macros containg
% the name and extension of the package currently being loaded;
% setting these prevents an error from \cmd{\ProvidesPackage}.
% 
%  Since we use \cmd{\renewcommand} we have to make sure that all
%  commands are defined before processing the documentation.
%    \begin{macrocode}
\let\secfnt\@iden
\let\secit\@iden
\let\subsecfnt\@iden
\let\subsecit\@iden
\let\ttlfnt\@iden
\let\ttlit\@iden
\let\subttlfnt\@iden
\let\subttlit\@iden
\let\subttlbf\@iden
\let\aufnt\@iden
\let\auit\@iden
\let\affaddr\@iden
\let\affaddrit\@iden
\let\eaddfnt\@iden
\let\ixpt\@iden
\let\ninept\@iden
\let\confname\@iden
\let\crnotice\@iden
%    \end{macrocode}
%
% \section{Package identification}
%    \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pmn-sigalternate-nfss}[2003/06/12 pmn-sigalternate-nfss (sig-alternate class with NFSS fonts)]
%    \end{macrocode}
%
% \begin{macro}{\pmn@sa@iftimesnewroman}
%   \mcmd{\pmn@sa@iftimesnewroman}\marg{consequence} is a flag that
%   tells that we want Times New Roman as font for the running text.
%   If so \meta{consequence} is applied; otherwise it is ignored.
%   It is set with the option "times-new-roman" and cleared with the
%   option "computer-modern" (default).
%    \begin{macrocode}
\let\pmn@sa@iftimesnewroman\@gobble
\DeclareOption{times-new-roman}{\let\pmn@sa@iftimesnewroman\@iden}
\DeclareOption{computer-modern}{\let\pmn@sa@iftimesnewroman\@gobble}
%    \end{macrocode}
%   Technically, we use \LaTeX's "\@iden" or "\gobble" to other set or
%   swallow the argument.
% \end{macro} ^^A \pmn@sa@iftimesnewroman
%
% If we want Times New Roman we load the package~\package{times}, but
% keeps the computer modern type writer.
%    \begin{macrocode}
\ProcessOptions
\pmn@sa@iftimesnewroman{%
  \RequirePackage{times}
  \renewcommand{\ttdefault}{cmtt}}
%    \end{macrocode}
%
%  We now overwrite all the font commands defined in the
%  "sigalternate" class.
%    \begin{macrocode}
\renewcommand{\secfnt}{\fontsize{12pt}{10.5pt}\usefont{\encodingdefault}{ptm}{b}{n}}
\renewcommand{\secit}{\fontsize{12pt}{10.5pt}\usefont{\encodingdefault}{ptm}{b}{it}}
\renewcommand{\subsecfnt}{\fontsize{11pt}{10.5pt}\usefont{\encodingdefault}{ptm}{m}{it}}
\renewcommand{\subsecit}{\fontsize{11pt}{10.5pt}\usefont{\encodingdefault}{ptm}{b}{it}}
\renewcommand{\ttlfnt}{\fontsize{18pt}{18pt}\usefont{\encodingdefault}{phv}{b}{n}}
\renewcommand{\ttlit}{\fontsize{18pt}{18pt}\usefont{\encodingdefault}{phv}{b}{sl}}
\renewcommand{\subttlfnt}{\fontsize{14pt}{14pt}\usefont{\encodingdefault}{phv}{m}{n}}
\renewcommand{\subttlit}{\fontsize{14pt}{14pt}\usefont{\encodingdefault}{phv}{m}{sl}}
\renewcommand{\subttlbf}{\fontsize{14pt}{14pt}\usefont{\encodingdefault}{phv}{b}{n}}
\renewcommand{\aufnt}{\fontsize{12pt}{10.5pt}\usefont{\encodingdefault}{phv}{m}{n}}
\renewcommand{\auit}{\fontsize{12pt}{10.5pt}\usefont{\encodingdefault}{phv}{m}{sl}}
\renewcommand{\affaddr}{\fontsize{10pt}{10.5pt}\usefont{\encodingdefault}{phv}{m}{n}}
\renewcommand{\affaddrit}{\fontsize{10pt}{10.5pt}\usefont{\encodingdefault}{phv}{m}{sl}}
\renewcommand{\eaddfnt}{\fontsize{12pt}{10.5pt}\usefont{\encodingdefault}{phv}{m}{n}}
\renewcommand{\ixpt}{\fontsize{9pt}{10.5pt}\usefont{\encodingdefault}{ptm}{m}{n}}
\renewcommand{\ninept}{\fontsize{9pt}{10.5pt}\usefont{\encodingdefault}{ptm}{m}{n}}
\renewcommand{\confname}{\fontsize{8pt}{8pt}\usefont{\encodingdefault}{ptm}{m}{it}}
\renewcommand{\crnotice}{\fontsize{8pt}{8pt}\usefont{\encodingdefault}{ptm}{m}{n}}
\def\part{%
    \@startsection{part}{9}{\z@}{-10\p@ \@plus -4\p@ \@minus -2\p@}
        {4\p@}{\normalsize\@ucheadtrue}%
}
\def\section{%
    \@startsection{section}{1}{\z@}{-10\p@ \@plus -4\p@ \@minus -2\p@}% GM
    {4\p@}{\secfnt\baselineskip 14pt\@ucheadtrue}%
}
%    \end{macrocode}
% \StopEventually{}
% 
%D% % And the commands to typeset the documentation.  All enclosed in
%D% % "<*documentation>"$\ldots$"</documentation>" so we exclude it if we
%D% % ever make a docstrip file.  For now it is just commented out.
%D% %    \begin{macrocode}
%D% %<*documentation>
%D% %    \end{macrocode}
%D% %  First we need to disable the \cmd{\part} command 
%D% %    \begin{macrocode}
%D% %\endinput
%D% \makeatletter
%D% \let\part\@undefined
%D% \let\section\@undefined
%D% \makeatother
%D% \documentclass{pmn-ldoc} 
%D% \usepackage[latin1]{inputenc}
%D% \newcommand{\docdate}{2003/11/02}
%D%  % \OnlyDescription
%D%  % \DisableCrossrefs
%D% \begin{document}
%D%   \DocInput{pmn-sigalternate-nfss.sty}
%D% \end{document}
%D% %</documentation>
%D% %    \end{macrocode}
%D% % \Finale \sloppy \PrintChanges

