]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/htcell.tex
Demonstrates printing
[wxWidgets.git] / docs / latex / wx / htcell.tex
index a6e2620b3d36df0edc1fda0948e445300225fc02..61f802338f05a31dd1180f6349785b44b1daa907 100644 (file)
-%
-% automatically generated by HelpGen from
-% htmlcell.tex at 21/Mar/99 22:45:23
-%
-
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%% Name:        htcell.tex
+%% Purpose:     wxHtmlCell documentation
+%% Author:      wxWidgets Team
+%% Modified by:
+%% Created:     21/Mar/99 22:45:23
+%% RCS-ID:      $Id$
+%% Copyright:   (c) wxWidgets Team
+%% License:     wxWindows license
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
 \section{\class{wxHtmlCell}}\label{wxhtmlcell}
 
 Internal data structure. It represents fragments of parsed HTML
-page, so-called {\bf cell} - a word, picture, table, horizontal line and so on.
-It is used by \helpref{wxHtmlWindow}{wxhtmlwindow} and
+page, the so-called {\bf cell} - a word, picture, table, horizontal line and so on.
+It is used by \helpref{wxHtmlWindow}{wxhtmlwindow} and 
 \helpref{wxHtmlWinParser}{wxhtmlwinparser} to represent HTML page in memory.
 
 You can divide cells into two groups : {\it visible} cells with non-zero width and
 height and {\it helper} cells (usually with zero width and height) that
 perform special actions such as color or font change.
 
-
 \wxheading{Derived from}
 
-wxObject
+\helpref{wxObject}{wxobject}
+
+\wxheading{Include files}
+
+<wx/html/htmlcell.h>
 
 \wxheading{See Also}
 
 \helpref{Cells Overview}{cells},
-\helpref{wxHtmlContainerCell}{wxhtmlcontainercell},
+\helpref{wxHtmlContainerCell}{wxhtmlcontainercell}
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
-
 \membersection{wxHtmlCell::wxHtmlCell}\label{wxhtmlcellwxhtmlcell}
 
 \func{}{wxHtmlCell}{\void}
 
 Constructor.
 
+\membersection{wxHtmlCell::AdjustPagebreak}\label{wxhtmlcelladjustpagebreak}
 
-\membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent}
+\func{virtual bool}{AdjustPagebreak}{\param{int * }{pagebreak}}
 
-\func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}}
+This method is used to adjust pagebreak position. The parameter is
+variable that contains y-coordinate of page break (= horizontal line that
+should not be crossed by words, images etc.). If this cell cannot be divided
+into two pieces (each one on another page) then it moves the pagebreak
+few pixels up.
 
-Sets parent container of this cell. This is called from 
-\helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}.
+Returns true if pagebreak was modified, false otherwise
 
-\membersection{wxHtmlCell::GetParent}\label{wxhtmlcellgetparent}
+Usage: 
+\begin{verbatim}
+while (container->AdjustPagebreak(&p)) {}
+\end{verbatim}
 
-\constfunc{wxHtmlContainerCell*}{GetParent}{\void}
+\membersection{wxHtmlCell::Draw}\label{wxhtmlcelldraw}
 
-Returns pointer to parent container.
+\func{virtual void}{Draw}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{view\_y1}, \param{int }{view\_y2}}
 
-\membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx}
+Renders the cell.
 
-\constfunc{int}{GetPosX}{\void}
+\wxheading{Parameters}
 
-Returns X position within parent (the value is relative to parent's
-upper left corner). The returned value is meaningful only if 
-parent's \helpref{Layout}{wxhtmlcelllayout} was called before!
+\docparam{dc}{Device context to which the cell is to be drawn}
 
-\membersection{wxHtmlCell::GetPosY}\label{wxhtmlcellgetposy}
+\docparam{x,y}{Coordinates of parent's upper left corner (origin). You must
+add this to m\_PosX,m\_PosY when passing coordinates to dc's methods
+Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)}}
 
-\constfunc{int}{GetPosY}{\void}
+\docparam{view\_y1}{y-coord of the first line visible in window. This is
+used to optimize rendering speed}
 
-Returns Y position within parent (the value is relative to parent's
-upper left corner). The returned value is meaningful only if 
-parent's \helpref{Layout}{wxhtmlcelllayout} was called before!
+\docparam{view\_y2}{y-coord of the last line visible in window. This is
+used to optimize rendering speed}
 
-\membersection{wxHtmlCell::GetWidth}\label{wxhtmlcellgetwidth}
+\membersection{wxHtmlCell::DrawInvisible}\label{wxhtmlcelldrawinvisible}
 
-\constfunc{int}{GetWidth}{\void}
+\func{virtual void}{DrawInvisible}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}}
 
-Returns width of the cell (m_Width member).
+This method is called instead of \helpref{Draw}{wxhtmlcelldraw} when the
+cell is certainly out of the screen (and thus invisible). This is not
+nonsense - some tags (like \helpref{wxHtmlColourCell}{wxhtmlcolourcell}
+or font setter) must be drawn even if they are invisible!
 
-\membersection{wxHtmlCell::GetHeight}\label{wxhtmlcellgetheight}
+\wxheading{Parameters}
 
-\constfunc{int}{GetHeight}{\void}
+\docparam{dc}{Device context to which the cell is to be drawn}
 
-Returns height of the cell (m_Height member).
+\docparam{x,y}{Coordinates of parent's upper left corner. You must
+add this to m\_PosX,m\_PosY when passing coordinates to dc's methods
+Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)}}
+
+\membersection{wxHtmlCell::Find}\label{wxhtmlcellfind}
+
+\func{virtual const wxHtmlCell*}{Find}{\param{int }{condition}, \param{const void* }{param}}
+
+Returns pointer to itself if this cell matches condition (or if any of the cells
+following in the list matches), NULL otherwise.
+(In other words if you call top-level container's Find it will
+return pointer to the first cell that matches the condition)
+
+It is recommended way how to obtain pointer to particular cell or
+to cell of some type (e.g. wxHtmlAnchorCell reacts on
+wxHTML\_COND\_ISANCHOR condition)
+
+\wxheading{Parameters}
+
+\docparam{condition}{Unique integer identifier of condition}
+
+\docparam{param}{Optional parameters}
+
+\wxheading{Defined conditions}
+
+\begin{twocollist}\itemsep=0pt
+\twocolitem{{\bf wxHTML\_COND\_ISANCHOR}}{Finds particular anchor. 
+{\it param} is pointer to wxString with name of the anchor.}
+\twocolitem{{\bf wxHTML\_COND\_USER}}{User-defined conditions start
+from this number.}
+\end{twocollist}
 
 \membersection{wxHtmlCell::GetDescent}\label{wxhtmlcellgetdescent}
 
 \constfunc{int}{GetDescent}{\void}
 
-Returns descent value of the cell (m_Descent member). See explanation:
+Returns descent value of the cell (m\_Descent member). 
+\helponly{See explanation:
 
 \image{}{descent.bmp}
+}
+
+\membersection{wxHtmlCell::GetFirstChild}\label{wxhtmlcellgetfirstchild}
+
+\func{wxHtmlCell*}{GetFirstChild}{\void}
+
+Returns pointer to the first cell in the list.
+You can then use child's \helpref{GetNext}{wxhtmlcellgetnext}
+method to obtain pointer to the next cell in list.
+
+{\bf Note:} This shouldn't be used by the end user. If you need some way of
+finding particular cell in the list, try \helpref{Find}{wxhtmlcellfind} method
+instead.
+
+\membersection{wxHtmlCell::GetHeight}\label{wxhtmlcellgetheight}
+
+\constfunc{int}{GetHeight}{\void}
+
+Returns height of the cell (m\_Height member).
+
+\membersection{wxHtmlCell::GetId}\label{wxhtmlcellgetid}
+
+\constfunc{virtual wxString}{GetId}{\void}
+
+Returns unique cell identifier if there is any, empty string otherwise.
 
 \membersection{wxHtmlCell::GetLink}\label{wxhtmlcellgetlink}
 
-\constfunc{virtual wxString}{GetLink}{\param{int }{x = 0}, \param{int }{y = 0}}
+\constfunc{virtual wxHtmlLinkInfo*}{GetLink}{\param{int }{x = 0}, \param{int }{y = 0}}
 
-Returns hypertext link if associated with this cell or empty string otherwise.
-(Note : this makes sense only for visible tags). 
+Returns hypertext link if associated with this cell or NULL otherwise.
+See \helpref{wxHtmlLinkInfo}{wxhtmllinkinfo}.
+(Note: this makes sense only for visible tags).
 
 \wxheading{Parameters}
 
 \docparam{x,y}{Coordinates of position where the user pressed mouse button.
 These coordinates are used e.g. by COLORMAP. Values are relative to the
-upper left corner of THIS cell (i.e. from 0 to m_Width or m_Height)}
+upper left corner of THIS cell (i.e. from 0 to m\_Width or m\_Height)}
+
+\membersection{wxHtmlCell::GetMouseCursor}\label{wxhtmlcellgetmousecursor}
+
+\func{virtual wxCursor}{GetMouseCursor}{\param{wxHtmlWindowInterface* }{window}}
+
+Returns cursor to show when mouse pointer is over the cell.
+
+\wxheading{Parameters}
+
+\docparam{window}{interface to the parent HTML window}
+
+\newsince{2.7.0} (before \tt{GetCursor} method served a similar purpose, which is now deprecated).
+
 
 \membersection{wxHtmlCell::GetNext}\label{wxhtmlcellgetnext}
 
@@ -104,137 +191,110 @@ upper left corner of THIS cell (i.e. from 0 to m_Width or m_Height)}
 Returns pointer to the next cell in list (see htmlcell.h if you're
 interested in details).
 
-\membersection{wxHtmlCell::SetPos}\label{wxhtmlcellsetpos}
+\membersection{wxHtmlCell::GetParent}\label{wxhtmlcellgetparent}
 
-\func{void}{SetPos}{\param{int }{x}, \param{int }{y}}
+\constfunc{wxHtmlContainerCell*}{GetParent}{\void}
 
-Sets cell's position within parent container.
+Returns pointer to parent container.
 
+\membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx}
 
-\membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink}
+\constfunc{int}{GetPosX}{\void}
 
-\func{void}{SetLink}{\param{const wxString\& }{link}}
+Returns X position within parent (the value is relative to parent's
+upper left corner). The returned value is meaningful only if
+parent's \helpref{Layout}{wxhtmlcelllayout} was called before!
 
-Sets the hypertext link asocciated with this cell. (Default value
-is wxEmptyString (no link))
+\membersection{wxHtmlCell::GetPosY}\label{wxhtmlcellgetposy}
 
-\membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext}
+\constfunc{int}{GetPosY}{\void}
 
-\func{void}{SetNext}{\param{wxHtmlCell }{*cell}}
+Returns Y position within parent (the value is relative to parent's
+upper left corner). The returned value is meaningful only if
+parent's \helpref{Layout}{wxhtmlcelllayout} was called before!
+
+\membersection{wxHtmlCell::GetWidth}\label{wxhtmlcellgetwidth}
+
+\constfunc{int}{GetWidth}{\void}
 
-Sets the next cell in the list. This shouldn't be called by user - it is 
-to be used only by \helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}
+Returns width of the cell (m\_Width member).
 
 \membersection{wxHtmlCell::Layout}\label{wxhtmlcelllayout}
 
 \func{virtual void}{Layout}{\param{int }{w}}
 
-This method performs 2 actions:
+This method performs two actions:
 
-\begin{enumerate}
-\item adjusts cell's width according to the fact that maximal possible width is {\it w}.
+\begin{enumerate}\itemsep=0pt
+\item adjusts the cell's width according to the fact that maximal possible width is {\it w}.
 (this has sense when working with horizontal lines, tables etc.)
 \item prepares layout (=fill-in m\_PosX, m\_PosY (and sometimes m\_Height) members)
 based on actual width {\it w}
 \end{enumerate}
 
-It must be called before displaying cells structure because 
-m\_PosX and m\_PosY are undefined (or invalid) 
-before calling Layout. 
-
-\membersection{wxHtmlCell::Draw}\label{wxhtmlcelldraw}
-
-\func{virtual void}{Draw}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{view\_y1}, \param{int }{view\_y2}}
-
-Renders the cell.
-
-\wxheading{Parameters}
-
-\docparam{dc}{Device context to which the cell is to be drawn}
-
-\docparam{x,y}{Coordinates of parent's upper left corner (origin). You must
-add this to m\_PosX,m\_PosY when passing coordinates to dc's methods
-Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)}}
+It must be called before displaying cells structure because
+m\_PosX and m\_PosY are undefined (or invalid)
+before calling Layout.
 
-\docparam{view_y1}{y-coord of the first line visible in window. This is
-used to optimize rendering speed}
+\membersection{wxHtmlCell::ProcessMouseClick}\label{wxhtmlcellprocessmouseclick}
 
-\docparam{view_y2}{y-coord of the last line visible in window. This is
-used to optimize rendering speed}
+\func{virtual bool}{ProcessMouseClick}{\param{wxHtmlWindowInterface* }{window}, \param{const wxPoint\& }{pos}, \param{const wxMouseEvent\& }{event}}
 
-\membersection{wxHtmlCell::DrawInvisible}\label{wxhtmlcelldrawinvisible}
+This function is simple event handler. Each time the user clicks mouse button
+over a cell within \helpref{wxHtmlWindow}{wxhtmlwindow} this method of that
+cell is called. Default behavior is to call
+\helpref{wxHtmlWindow::LoadPage}{wxhtmlwindowloadpage}.
 
-\func{virtual void}{DrawInvisible}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}}
+\wxheading{Note}
 
-This method is called instead of \helpref{Draw{wxhtmlcelldraw} when the
-cell is certainly out of the screen (and thus invisible). This is not
-nonsense - some tags (like \helpref{wxHtmlColourCell}{wxhtmlcolourcell} 
-or font setter) must be drawn even if they are invisible!
+If you need more "advanced" event handling
+you should use wxHtmlBinderCell instead.
 
 \wxheading{Parameters}
 
-\docparam{dc}{Device context to which the cell is to be drawn}
+\docparam{window}{interface to the parent HTML window}
 
-\docparam{x,y}{Coordinates of parent's upper left corner. You must
-add this to m\_PosX,m\_PosY when passing coordinates to dc's methods
-Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)} }
+\docparam{pos}{coordinates of mouse click (this is relative to cell's origin}
 
+\docparam{event}{mouse event that triggered the call}
 
-\membersection{wxHtmlCell::Find}\label{wxhtmlcellfind}
+\wxheading{Return value}
 
-\func{virtual const wxHtmlCell*}{Find}{\param{int }{condition}, \param{const void* }{param}}
+\true if a link was clicked, \false otherwise.
 
-Returns pointer to itself if this cell matches condition (or if any of the cells
-following in the list matches), NULL otherwise.
-(In other words if you call top-level container's Find it will 
-return pointer to the first cell that matches the condition)
+\newsince{2.7.0} (before \tt{OnMouseClick} method served a similar purpose).
 
-It is recommended way how to obtain pointer to particular cell or
-to cell of some type (e.g. wxHtmlAnchorCell reacts on 
-HTML_COND_ISANCHOR condition)
 
-\wxheading{Parameters}
+\membersection{wxHtmlCell::SetId}\label{wxhtmlcellsetid}
 
-\docparam{condition}{Unique integer identifier of condition}
+\func{void}{SetId}{\param{const wxString\& }{id}}
 
-\docparam{param}{Optional parameters}
+Sets unique cell identifier. Default value is no identifier, i.e. empty string.
 
-\wxheading{Defined conditions}
-
-\begin{twocollist}
-\twocolitem{{\bf HTML_COND_ISANCHOR}}{Finds particular anchor.
-{\it param} is pointer to wxString with name of the anchor.}
-\twocolitem{{\bf HTML_COND_USER}}{User-defined conditions start
-from this number}
-\end{twocollist}
-
-
-
-\membersection{wxHtmlCell::OnMouseClick}\label{wxhtmlcellonmouseclick}
-
-
-\func{virtual void}{OnMouseClick}{\param{wxWindow* }{parent}, \param{int }{x}, \param{int }{y}, \param{bool }{left}, \param{bool }{middle}, \param{bool }{right}}
+\membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink}
 
-This function is simple event handler. Each time user clicks mouse button over a cell
-within \helpref{wxHtmlWindow}{wxhtmlwindow} this method of that cell is called. Default behavior is
-that it calls \helpref{wxHtmlWindow::LoadPage}{wxhtmlwindowloadpage}.
+\func{void}{SetLink}{\param{const wxHtmlLinkInfo\& }{link}}
 
-\wxheading{Note}
+Sets the hypertext link associated with this cell. (Default value
+is \helpref{wxHtmlLinkInfo}{wxhtmllinkinfo}("", "") (no link))
 
-If you need more "advanced" behaviour (for example you'd like to catch mouse movement events or
-key events or whatsooever) you should use \helpref{wxHtmlBinderCell}{wxhtmlbindercell} instead.
-
-\wxheading{Parameters}
+\membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext}
 
-\docparam{parent}{parent window (always wxHtmlWindow!!)}
+\func{void}{SetNext}{\param{wxHtmlCell }{*cell}}
 
-\docparam{x, y}{coordinates of mouse click (this is relative to cell's origin}
+Sets the next cell in the list. This shouldn't be called by user - it is
+to be used only by \helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}.
 
-\docparam{left, middle, right}{boolean flags for mouse buttons. TRUE if the left/middle/right
-button is pressed, FALSE otherwise}
+\membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent}
 
+\func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}}
 
+Sets parent container of this cell. This is called from
+\helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}.
 
+\membersection{wxHtmlCell::SetPos}\label{wxhtmlcellsetpos}
 
+\func{void}{SetPos}{\param{int }{x}, \param{int }{y}}
 
+Sets the cell's position within parent container.