%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name:        htcontnr.tex
%% Purpose:     wxHtmlContainerCell documentation
%% Author:      wxWidgets Team
%% Modified by:
%% Created:     21/Mar/99 22:45:23
%% RCS-ID:      $Id: htcontnr.tex,v 1.12 2005/05/13 18:43:38 ABX Exp $
%% Copyright:   (c) wxWidgets Team
%% License:     wxWindows license
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\section{\class{wxHtmlContainerCell}}\label{wxhtmlcontainercell}

The wxHtmlContainerCell class is an implementation of a cell that may
contain more cells in it. It is heavily used in the wxHTML layout algorithm.

\wxheading{Derived from}

\helpref{wxHtmlCell}{wxhtmlcell}

\wxheading{Include files}

<wx/html/htmlcell.h>

\wxheading{See Also}

\helpref{Cells Overview}{cells}

\latexignore{\rtfignore{\wxheading{Members}}}

\membersection{wxHtmlContainerCell::wxHtmlContainerCell}\label{wxhtmlcontainercellwxhtmlcontainercell}

\func{}{wxHtmlContainerCell}{\param{wxHtmlContainerCell }{*parent}}

Constructor. {\it parent} is pointer to parent container or NULL.


\membersection{wxHtmlContainerCell::GetAlignHor}\label{wxhtmlcontainercellgetalignhor}

\constfunc{int}{GetAlignHor}{\void}

Returns container's horizontal alignment.

\membersection{wxHtmlContainerCell::GetAlignVer}\label{wxhtmlcontainercellgetalignver}

\constfunc{int}{GetAlignVer}{\void}

Returns container's vertical alignment.

\membersection{wxHtmlContainerCell::GetBackgroundColour}\label{wxhtmlcontainercellgetbackgroundcolour}

\func{wxColour}{GetBackgroundColour}{\void}

Returns the background colour of the container or {\tt wxNullColour} if no background
colour is set.

\membersection{wxHtmlContainerCell::GetIndent}\label{wxhtmlcontainercellgetindent}

\constfunc{int}{GetIndent}{\param{int }{ind}}

Returns the indentation. {\it ind} is one of the {\bf wxHTML\_INDENT\_*} constants.

{\bf Note:} You must call \helpref{GetIndentUnits}{wxhtmlcontainercellgetindentunits} 
with same {\it ind} parameter in order to correctly interpret the returned integer value.
It is NOT always in pixels!

\membersection{wxHtmlContainerCell::GetIndentUnits}\label{wxhtmlcontainercellgetindentunits}

\constfunc{int}{GetIndentUnits}{\param{int }{ind}}

Returns the units of indentation for {\it ind} where {\it ind} is one
of the {\bf wxHTML\_INDENT\_*} constants.

\membersection{wxHtmlContainerCell::InsertCell}\label{wxhtmlcontainercellinsertcell}

\func{void}{InsertCell}{\param{wxHtmlCell }{*cell}}

Inserts new cell into the container.

\membersection{wxHtmlContainerCell::SetAlign}\label{wxhtmlcontainercellsetalign}

\func{void}{SetAlign}{\param{const wxHtmlTag\& }{tag}}

Sets the container's alignment (both horizontal and vertical) according to
the values stored in {\it tag}. (Tags {\tt ALIGN} parameter is extracted.) In fact
it is only a front-end to \helpref{SetAlignHor}{wxhtmlcontainercellsetalignhor} 
and \helpref{SetAlignVer}{wxhtmlcontainercellsetalignver}.

\membersection{wxHtmlContainerCell::SetAlignHor}\label{wxhtmlcontainercellsetalignhor}

\func{void}{SetAlignHor}{\param{int }{al}}

Sets the container's {\it horizontal alignment}. During \helpref{Layout}{wxhtmlcelllayout} 
each line is aligned according to {\it al} value.

\wxheading{Parameters}

\docparam{al}{new horizontal alignment. May be one of these values:

\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxHTML\_ALIGN\_LEFT}}{lines are left-aligned (default)}
\twocolitem{{\bf wxHTML\_ALIGN\_JUSTIFY}}{lines are justified}
\twocolitem{{\bf wxHTML\_ALIGN\_CENTER}}{lines are centered}
\twocolitem{{\bf wxHTML\_ALIGN\_RIGHT}}{lines are right-aligned}
\end{twocollist}
}

\membersection{wxHtmlContainerCell::SetAlignVer}\label{wxhtmlcontainercellsetalignver}

\func{void}{SetAlignVer}{\param{int }{al}}

Sets the container's {\it vertical alignment}. This is per-line alignment!

\wxheading{Parameters}

\docparam{al}{new vertical alignment. May be one of these values:

\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxHTML\_ALIGN\_BOTTOM}}{cells are over the line (default)}
\twocolitem{{\bf wxHTML\_ALIGN\_CENTER}}{cells are centered on line}
\twocolitem{{\bf wxHTML\_ALIGN\_TOP}}{cells are under the line}
\end{twocollist}

\helponly{\image{}{alignv.bmp}}
}

\membersection{wxHtmlContainerCell::SetBackgroundColour}\label{wxhtmlcontainercellsetbackgroundcolour}

\func{void}{SetBackgroundColour}{\param{const wxColour\& }{clr}}

Sets the background colour for this container.

\membersection{wxHtmlContainerCell::SetBorder}\label{wxhtmlcontainercellsetborder}

\func{void}{SetBorder}{\param{const wxColour\& }{clr1}, \param{const wxColour\& }{clr2}}

Sets the border (frame) colours. A border is a rectangle around the container.

\wxheading{Parameters}

\docparam{clr1}{Colour of top and left lines}

\docparam{clr2}{Colour of bottom and right lines}

\membersection{wxHtmlContainerCell::SetIndent}\label{wxhtmlcontainercellsetindent}

\func{void}{SetIndent}{\param{int }{i}, \param{int }{what}, \param{int }{units = wxHTML\_UNITS\_PIXELS}}

Sets the indentation (free space between borders of container and subcells).

\wxheading{Parameters}

\docparam{i}{Indentation value.}

\docparam{what}{Determines which of the four borders we're setting. It is OR
combination of following constants:

\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxHTML\_INDENT\_TOP}}{top border}
\twocolitem{{\bf wxHTML\_INDENT\_BOTTOM}}{bottom}
\twocolitem{{\bf wxHTML\_INDENT\_LEFT}}{left}
\twocolitem{{\bf wxHTML\_INDENT\_RIGHT}}{right}
\twocolitem{{\bf wxHTML\_INDENT\_HORIZONTAL}}{left and right}
\twocolitem{{\bf wxHTML\_INDENT\_VERTICAL}}{top and bottom}
\twocolitem{{\bf wxHTML\_INDENT\_ALL}}{all 4 borders}
\end{twocollist}

\helponly{\image{}{indent.bmp}}
}

\docparam{units}{Units of {\it i}. This parameter affects interpretation of {\it} value.

\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxHTML\_UNITS\_PIXELS}}{{\it i} is number of pixels}
\twocolitem{{\bf wxHTML\_UNITS\_PERCENT}}{{\it i} is interpreted as percents of width
of parent container}
\end{twocollist}
}

\membersection{wxHtmlContainerCell::SetMinHeight}\label{wxhtmlcontainercellsetminheight}

\func{void}{SetMinHeight}{\param{int }{h}, \param{int }{align = wxHTML\_ALIGN\_TOP}}

Sets minimal height of the container.

When container's \helpref{Layout}{wxhtmlcelllayout} is called, m\_Height
is set depending on layout of subcells to the height of area covered
by layed-out subcells. Calling this method guarantees you that the height
of container is never smaller than {\it h} - even if the subcells cover
much smaller area.

\wxheading{Parameters}

\docparam{h}{The minimal height.}

\docparam{align}{If height of the container is lower than the minimum height, empty space must be inserted
somewhere in order to ensure minimal height. This parameter is one of {\bf wxHTML\_ALIGN\_TOP,
wxHTML\_ALIGN\_BOTTOM, wxHTML\_ALIGN\_CENTER}. It refers to the {\it contents}, not to the
empty place.}

\membersection{wxHtmlContainerCell::SetWidthFloat}\label{wxhtmlcontainercellsetwidthfloat}

\func{void}{SetWidthFloat}{\param{int }{w}, \param{int }{units}}

\func{void}{SetWidthFloat}{\param{const wxHtmlTag\& }{tag}, \param{double }{pixel\_scale = 1.0}}

Sets floating width adjustment.

The normal behaviour of container is that its width is the same as the width of
parent container (and thus you can have only one sub-container per line).
You can change this by setting FWA.

{\it pixel\_scale} is number of real pixels that equals to 1 HTML pixel.

\wxheading{Parameters}

\docparam{w}{Width of the container. If the value is negative it means
complement to full width of parent container (e.g.
{\tt SetWidthFloat(-50, wxHTML\_UNITS\_PIXELS)} sets the width
of container to parent's width minus 50 pixels. This is useful when
creating tables - you can call SetWidthFloat(50) and SetWidthFloat(-50))}

\docparam{units}{Units of {\it w} This parameter affects the interpretation of {\it} value.

\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxHTML\_UNITS\_PIXELS}}{{\it w} is number of pixels}
\twocolitem{{\bf wxHTML\_UNITS\_PERCENT}}{{\it w} is interpreted as percents of width
of parent container}
\end{twocollist}
}

\docparam{tag}{In the second version of method, {\it w} and {\it units}
info is extracted from tag's {\tt WIDTH} parameter.}

\pythonnote{The second form of this method is named
SetWidthFloatFromTag in wxPython.}








