]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/htcell.tex
Some work on GTK focus handling and events.
[wxWidgets.git] / docs / latex / wx / htcell.tex
index 1774f94f8ff09b67fa7e2c1adebe3ffb78075716..fc54ec8317a90100507c5fbbfb3e7fc952073e70 100644 (file)
@@ -6,7 +6,7 @@
 \section{\class{wxHtmlCell}}\label{wxhtmlcell}
 
 Internal data structure. It represents fragments of parsed HTML
 \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.
+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.
 
 It is used by \helpref{wxHtmlWindow}{wxhtmlwindow} and 
 \helpref{wxHtmlWinParser}{wxhtmlwinparser} to represent HTML page in memory.
 
@@ -16,7 +16,11 @@ perform special actions such as color or font change.
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
-wxObject
+\helpref{wxObject}{wxobject}
+
+\wxheading{Include files}
+
+<wx/html/htmlcell.h>
 
 \wxheading{See Also}
 
 
 \wxheading{See Also}
 
@@ -31,7 +35,6 @@ wxObject
 
 Constructor.
 
 
 Constructor.
 
-
 \membersection{wxHtmlCell::AdjustPagebreak}\label{wxhtmlcelladjustpagebreak}
 
 \func{virtual bool}{AdjustPagebreak}{\param{int * }{pagebreak}}
 \membersection{wxHtmlCell::AdjustPagebreak}\label{wxhtmlcelladjustpagebreak}
 
 \func{virtual bool}{AdjustPagebreak}{\param{int * }{pagebreak}}
@@ -44,72 +47,111 @@ few pixels up.
 
 Returns TRUE if pagebreak was modified, FALSE otherwise
 
 
 Returns TRUE if pagebreak was modified, FALSE otherwise
 
-Usage 
+Usage: 
 \begin{verbatim}
 while (container->AdjustPagebreak(&p)) {}
 \end{verbatim}
 
 \begin{verbatim}
 while (container->AdjustPagebreak(&p)) {}
 \end{verbatim}
 
-\membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent}
+\membersection{wxHtmlCell::Draw}\label{wxhtmlcelldraw}
 
 
-\func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}}
+\func{virtual void}{Draw}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{view\_y1}, \param{int }{view\_y2}}
 
 
-Sets parent container of this cell. This is called from
-\helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}.
+Renders the cell.
 
 
-\membersection{wxHtmlCell::GetParent}\label{wxhtmlcellgetparent}
+\wxheading{Parameters}
 
 
-\constfunc{wxHtmlContainerCell*}{GetParent}{\void}
+\docparam{dc}{Device context to which the cell is to be drawn}
 
 
-Returns pointer to parent container.
+\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)}}
 
 
-\membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx}
+\docparam{view\_y1}{y-coord of the first line visible in window. This is
+used to optimize rendering speed}
 
 
-\constfunc{int}{GetPosX}{\void}
+\docparam{view\_y2}{y-coord of the last line visible in window. This is
+used to optimize rendering speed}
 
 
-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!
+\membersection{wxHtmlCell::DrawInvisible}\label{wxhtmlcelldrawinvisible}
 
 
-\membersection{wxHtmlCell::GetPosY}\label{wxhtmlcellgetposy}
+\func{virtual void}{DrawInvisible}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}}
 
 
-\constfunc{int}{GetPosY}{\void}
+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!
 
 
-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!
+\wxheading{Parameters}
 
 
-\membersection{wxHtmlCell::GetWidth}\label{wxhtmlcellgetwidth}
+\docparam{dc}{Device context to which the cell is to be drawn}
 
 
-\constfunc{int}{GetWidth}{\void}
+\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)}}
 
 
-Returns width of the cell (m_Width member).
+\membersection{wxHtmlCell::Find}\label{wxhtmlcellfind}
 
 
-\membersection{wxHtmlCell::GetHeight}\label{wxhtmlcellgetheight}
+\func{virtual const wxHtmlCell*}{Find}{\param{int }{condition}, \param{const void* }{param}}
 
 
-\constfunc{int}{GetHeight}{\void}
+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)
 
 
-Returns height of the cell (m_Height member).
+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}
 
 
 \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}
 
 \image{}{descent.bmp}
+}
+
+\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}
 
 
 \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
 
 \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::GetNext}\label{wxhtmlcellgetnext}
 
 
 \membersection{wxHtmlCell::GetNext}\label{wxhtmlcellgetnext}
 
@@ -118,34 +160,42 @@ 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).
 
 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::SetLink}\label{wxhtmlcellsetlink}
+\membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx}
 
 
-\func{void}{SetLink}{\param{const wxString\& }{link}}
+\constfunc{int}{GetPosX}{\void}
 
 
-Sets the hypertext link asocciated with this cell. (Default value
-is wxEmptyString (no 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!
 
 
-\membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext}
+\membersection{wxHtmlCell::GetPosY}\label{wxhtmlcellgetposy}
 
 
-\func{void}{SetNext}{\param{wxHtmlCell }{*cell}}
+\constfunc{int}{GetPosY}{\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 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}
+
+Returns width of the cell (m\_Width member).
 
 \membersection{wxHtmlCell::Layout}\label{wxhtmlcelllayout}
 
 \func{virtual void}{Layout}{\param{int }{w}}
 
 
 \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}
 (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}
@@ -155,90 +205,58 @@ It must be called before displaying cells structure because
 m\_PosX and m\_PosY are undefined (or invalid)
 before calling Layout.
 
 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)}}
-
-\docparam{view_y1}{y-coord of the first line visible in window. This is
-used to optimize rendering speed}
+\membersection{wxHtmlCell::OnMouseClick}\label{wxhtmlcellonmouseclick}
 
 
-\docparam{view_y2}{y-coord of the last line visible in window. This is
-used to optimize rendering speed}
+\func{virtual void}{OnMouseClick}{\param{wxWindow* }{parent}, \param{int}{x}, \param{int }{y}, \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
+that it calls \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}
 
 
 \wxheading{Parameters}
 
-\docparam{dc}{Device context to which the cell is to be drawn}
-
-\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}
+\docparam{parent}{parent window (always wxHtmlWindow!)}
 
 
-\func{virtual const wxHtmlCell*}{Find}{\param{int }{condition}, \param{const void* }{param}}
+\docparam{x, y}{coordinates of mouse click (this is relative to cell's origin}
 
 
-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)
+\docparam{left, middle, right}{boolean flags for mouse buttons. TRUE if the left/middle/right
+button is pressed, FALSE otherwise}
 
 
-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)
+\membersection{wxHtmlCell::SetId}\label{wxhtmlcellsetid}
 
 
-\wxheading{Parameters}
+\func{void}{SetId}{\param{const wxString\& }{id}}
 
 
-\docparam{condition}{Unique integer identifier of condition}
+Sets unique cell identifier. Default value is no identifier, i.e. empty string.
 
 
-\docparam{param}{Optional parameters}
+\membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink}
 
 
-\wxheading{Defined conditions}
+\func{void}{SetLink}{\param{const wxHtmlLinkInfo\& }{link}}
 
 
-\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}
+Sets the hypertext link asocciated with this cell. (Default value
+is \helpref{wxHtmlLinkInfo}{wxhtmllinkinfo}("", "") (no link))
 
 
-\membersection{wxHtmlCell::OnMouseClick}\label{wxhtmlcellonmouseclick}
+\membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext}
 
 
-\func{virtual void}{OnMouseClick}{\param{wxWindow* }{parent}, \param{int }{x}, \param{int }{y}, \param{bool }{left}, \param{bool }{middle}, \param{bool }{right}}
+\func{void}{SetNext}{\param{wxHtmlCell }{*cell}}
 
 
-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}.
+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}.
 
 
-\wxheading{Note}
+\membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent}
 
 
-If you need more "advanced" behaviour (for example you'd like to catch mouse movement events or
-key events or whatsoever) you should use wxHtmlBinderCell instead.
+\func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}}
 
 
-\wxheading{Parameters}
+Sets parent container of this cell. This is called from
+\helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}.
 
 
-\docparam{parent}{parent window (always wxHtmlWindow!)}
+\membersection{wxHtmlCell::SetPos}\label{wxhtmlcellsetpos}
 
 
-\docparam{x, y}{coordinates of mouse click (this is relative to cell's origin}
+\func{void}{SetPos}{\param{int }{x}, \param{int }{y}}
 
 
-\docparam{left, middle, right}{boolean flags for mouse buttons. TRUE if the left/middle/right
-button is pressed, FALSE otherwise}
+Sets the cell's position within parent container.