% -*- TeX:PL -*-
% $Id: alaword.cls,v 1.0 2006-04-06 19:40:25+02 myszka Exp myszka $
%
\NeedsTeXFormat{LaTeX2e}            % dla pełnej jasności
\ProvidesClass{alaword}             % jedyny niezbędny element klasy :-)
\DeclareOption*{%                     wszystkie opcje
\PassOptionsToClass{\CurrentOption}{mwart}} % mają być przekazywane
                                    % do klasy mwart
\ProcessOptions
\LoadClass[11pt,floatssmall]{mwart} % Ładujemy klasę bazową, do opcji
                                    % podanych w dokumencie dodajemy 11pt
                                    % i floatssmall
\RequirePackage[OT4]{polski}        % odpowiednik \usepackage
\RequirePackage[latin2]{inputenc}   % sens umieszczenia tu jest wątpliwy
\RequirePackage{graphicx}
\RequirePackage[a4paper,width=13.5cm,height=19cm,nohead,nofoot]{geometry}
\RequirePackage{qtimes}             % qtimes pozwala użyć kodowania OT4
                                    % inne rozwiązania mogą mieć inne wymagania

% Wstawki
%
% Na początku - żeby łatwo było zmieniać - parametry:
% podpisy rysunków i tabel - zdefiniowane są
% w pakiecie polski, ale jeżeli nam nie odpowiadają...
%
\renewcommand\figurename{Rysunek}
\renewcommand\tablename{Tabela}
%
% na potrzeby podpisów angielskich --
%
\newcommand\efigurename{Figure}
\newcommand\etablename{Table}

%\makeatletter
%
% Redefinicja polecenia \normalsize obejmuje również odstępy
% przed wzorami wystawionymi
%
\renewcommand\normalsize{%
   \@setfontsize\normalsize{11}{13}%
   \abovedisplayskip 0.5cm
   \abovedisplayshortskip 0.5cm
   \belowdisplayshortskip 0.5cm
   \belowdisplayskip \abovedisplayskip
   }
\normalsize
%
% I do kompletu zmiana wcięcia akapitowego
%
\setlength\parindent{5mm}
%
% Redefinicja polecenia \large
%
\renewcommand\large{\@setfontsize\large{13}{15}}
%
% \secondarysize używane jest do składu pobocznych części tekstu
% z definicji wynika, że powinno to być \footnotesize (9/11)
%
\def\secondarysize{\footnotesize}
%
% Tytularia - przedefiniowywujemy odstępy przed i po, ustawiamy centrowanie
% i konwersję na wersaliki
%
\renewcommand{\sectsetup}{\rmfamily}
\SetSectionFormatting{section}
        {1cm}
        {\FormatBlockHeading{\centering\normalsize\MakeUppercase}}
        {0.7cm}

\SetSectionFormatting{subsection}
        {0.7cm}
        {\FormatBlockHeading{\centering\footnotesize\MakeUppercase}}
        {0.5cm}
%
% Bibliografia - nie jest do końca jasne czy powinno to być \section*
% czy może raczej \subsection*
%
\setlength\bibindent{0.5cm}
\renewenvironment{thebibliography}[1]{%
 \subsection*{\refname}%
      \list{\@biblabel{\@arabic\c@enumiv}}%
           {\settowidth\labelwidth{\@biblabel{#1}}%
            \leftmargin\labelwidth
            \advance\leftmargin\labelsep
            \@openbib@code
            \usecounter{enumiv}%
            \let\p@enumiv\@empty
            \renewcommand\theenumiv{\@arabic\c@enumiv}%
            \secondarysize}%
      \sloppy
      \sfcode`\.\@m}
     {\def\@noitemerr
       {\@latex@warning{Empty `thebibliography' environment}}%
      \endlist}
%
% Linia oddzielająca przypisy dolne powinna mieć 2 cm
%
\renewcommand\footnoterule{%
  \kern-3\p@
  \hrule width 2cm
  \kern2.6\p@}
%
% Polecenie \maketitle tworzone jest przez analogię do już istniejącego
% dodajemy (obok \author i \title jeszcze słowa kluczowe \keywords
% pewno trzeba by sprawdzić czy nie gryzie się z jakimś
% poleceniem jakiejś innej klasy :-)
%
\def\keywords#1{\gdef\@keywords{#1}}
\def\@keywords{\@latex@error{No \noexpand\keywords given}\@ehc}
%
% Tu samo polecenie \maketitle skopiowane z mwart - trzeba było
% skopiować, bo do dobrej tradycji należy ,,sprzątanie''...
%
\renewcommand\maketitle{%\par
  \begingroup
    \renewcommand\thefootnote{\@fnsymbol\c@footnote}%
    \long\def\@makefntext##1{
        \parindent\@parindent
        \@textsuperscript{\normalfont\@thefnmark}\enspace##1}%
    \if@twocolumn
      \ifnum \col@number=\@ne
        \@maketitle
      \else
        \twocolumn[\@maketitle]%
      \fi
    \else
      \newpage
      \global\@topnum\z@   % Prevents figures from going at top of page.
      \@maketitle
    \fi
  \endgroup
  \setcounter{footnote}{0}%
  \global\let\maketitle\relax
  \global\let\@maketitle\relax
  \global\let\@keywords\@empty
  \global\let\@author\@empty
  \global\let\@date\@empty
  \global\let\@title\@empty
  \global\let\title\relax
  \global\let\author\relax
  \global\let\date\relax
  \global\let\keywords\relax
  \global\let\and\relax
  \vskip1.5cm
}
%
% Tytuł formatuje polecenie \@maketitle
%
\def\@maketitle{%
\noindent\hbox to \textwidth{\parindent=0pt
 \vbox to 3cm {%\hrule
  \vskip1.5cm%
  \vbox to 1.5cm%
   {%\hrule
   \raggedleft\parbox{8cm}{\secondarysize\raggedleft
   \emph{\@keywords}}\par\vfil}
   %\hrule
   }%
  }
 \normalsize\@author%
 \vskip1cm
 {\large\centering\textbf{\@title}\par}
  }
%
% Środowisko streszcenie służy do umieszczenia polskojęzycznego
% streszczenia na początku dokkumentu
%
\newenvironment{streszczenie}
    {\list{}{\leftmargin0.5cm\rightmargin0pt}\footnotesize\listparindent0.5cm\itemindent0.5cm\item\relax}
    {\endlist}
%
% Środowisko Abstract właściwie powinno nazywać się abstract (żeby być
% w zgodzie z konwencją) - wówczas powinniśmy mieć \renewenwironment
%
\newenvironment{Abstract}
    {\list{}{\leftmargin0.5cm\rightmargin0pt}\footnotesize\listparindent0.5cm\itemindent0.5cm\item\relax\centerline{\footnotesize ABSTRACT}\vskip5mm}
    {\endlist}
%
%\makeatother

\def\efnum@figure{\efigurename~\thefigure}
\def\efnum@table{\etablename~\thetable}

\long\def\@caption#1[#2]#3#4{%
  \par
  \addcontentsline{\csname ext@#1\endcsname}{#1}%
    {\protect\numberline{\csname the#1\endcsname.}{\ignorespaces #2}}%
  \begingroup
    \@parboxrestore
    \if@minipage
      \@setminipage
    \fi
    \captionsetup
    \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
    \@makecaption{\csname efnum@#1\endcsname}{\ignorespaces #4}\par
  \endgroup}


\pagestyle{empty}


\endinput                           % dla porządku
