[Tex/LaTex] left, right, and center alignment with hfill

horizontal alignment

this problem is driving me nuts. I need a line of text formatted as follows:

Avian Influenza       Tamiflu          Jan 2, 2011
* This is a random description, note that it spans 
  mult. cols.
* These bullet points--would like to use itemize
  for them.

Chicken pox           DrugXYZ          Feb 3, 1998
* This is another description.
* The "headers" (e.g. DrugXYZ, Avian Influenza) can  
be different, and have different lengths.

basically, I want Avian Influenza to be left-aligned, Tamiflu to be centered, and Jan 2, 2011 to be right-aligned, such that the disease, dates and drug names in both sets are aligned at the same tabs. Altogether, the three should span the textwidth.

I tried to use tabular, but I want to be able to use itemize, etc in the "stuff" portion.

Any ideas??

Best Answer

Another possible solution:

\documentclass{article}
\usepackage{array}

\newcommand\MyHeadings[3]{%
  \multicolumn{2}{@{}p{0.45\textwidth}@{}}{#1}  & #2 & #3 \tabularnewline
}
\newcommand\Description[1]{%
  \textbullet & \multicolumn{3}{@{}p{0.97\textwidth}@{}}{#1}\tabularnewline}

\begin{document}

\noindent
\begin{tabular}{@{}p{0.03\textwidth}@{}p{0.42\textwidth}@{}p{0.3\textwidth}@{}>{\raggedleft}p{0.25\textwidth}@{}}
\MyHeadings{Avian Influenza}{Tamiflu}{Jan 2, 2011}
\Description{stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff}
\Description{stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff}
\MyHeadings{Chicken pox}{DrugXYZ}{Feb 3, 1998}
\Description{stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff}
\Description{stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff}
\end{tabular}

\end{document}

And yet another option: tabular is only used for the words requiring alignment, the descriptions are left to an itemize environment (customized with the help of enumitem):

\documentclass{article}
\usepackage{enumitem}
\usepackage{array}

\setitemize{leftmargin=*,nolistsep}
\newcommand\MyHeadings[3]{%
  \noindent\begin{tabular}  {@{}p{0.45\textwidth}@{}p{0.3\textwidth}@{}>{\raggedleft}p{0.25\textwidth}@{}}
    #1 & #2 & #3
\end{tabular}\par
}

\begin{document}

\MyHeadings{Avian Influenza}{Tamiflu}{Jan 2, 2011}
\begin{itemize}
  \item stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff
  \item stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff
\end{itemize}
\MyHeadings{Chicken pox}{DrugXYZ}{Feb 3, 1998}
\begin{itemize}
  \item stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff
  \item stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff stuff
\end{itemize}


\end{document}