X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3660fc40ad00d17d21bf0057a30c099179b6eae8..760f0fc2f4b875beb06e5ecd6d69b891d8360efe:/docs/latex/wx/htcell.tex?ds=sidebyside diff --git a/docs/latex/wx/htcell.tex b/docs/latex/wx/htcell.tex index 5d58c1283a..602480ea64 100644 --- a/docs/latex/wx/htcell.tex +++ b/docs/latex/wx/htcell.tex @@ -1,101 +1,185 @@ -% -% 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} + + \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} + +\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) -Returns height of the cell (m_Height member). +\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} \membersection{wxHtmlCell::GetNext}\label{wxhtmlcellgetnext} @@ -104,35 +188,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). -\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! -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} +\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}} -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} @@ -142,97 +233,62 @@ 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} +\membersection{wxHtmlCell::ProcessMouseClick}\label{wxhtmlcellprocessmouseclick} -\func{virtual void}{Draw}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{view\_y1}, \param{int }{view\_y2}} +\func{virtual bool}{ProcessMouseClick}{\param{wxHtmlWindowInterface* }{window}, \param{const wxPoint\& }{pos}, \param{const wxMouseEvent\& }{event}} -Renders the cell. +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}. -\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} - -\docparam{view_y2}{y-coord of the last line visible in window. This is -used to optimize rendering speed} - -\membersection{wxHtmlCell::DrawInvisible}\label{wxhtmlcelldrawinvisible} - -\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{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 -HTML_COND_ISANCHOR condition) +\docparam{window}{interface to the parent HTML window} -\wxheading{Parameters} +\docparam{pos}{coordinates of mouse click (this is relative to cell's origin} -\docparam{condition}{Unique integer identifier of condition} +\docparam{event}{mouse event that triggered the call} -\docparam{param}{Optional parameters} +\wxheading{Return value} -\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} +\true if a link was clicked, \false otherwise. +\membersection{wxHtmlCell::SetId}\label{wxhtmlcellsetid} +\func{void}{SetId}{\param{const wxString\& }{id}} -\membersection{wxHtmlCell::OnMouseClick}\label{wxhtmlcellonmouseclick} +Sets unique cell identifier. Default value is no identifier, i.e. empty string. +\membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink} -\func{virtual void}{OnMouseClick}{\param{wxWindow* }{parent}, \param{int }{x}, \param{int }{y}, \param{bool }{left}, \param{bool }{middle}, \param{bool }{right}} +\func{void}{SetLink}{\param{const wxHtmlLinkInfo\& }{link}} -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 hypertext link associated with this cell. (Default value +is \helpref{wxHtmlLinkInfo}{wxhtmllinkinfo}("", "") (no link)) -\wxheading{Note} +\membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext} -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. +\func{void}{SetNext}{\param{wxHtmlCell }{*cell}} -\wxheading{Parameters} +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{parent}{parent window (always wxHtmlWindow!!)} +\membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent} -\docparam{x, y}{coordinates of mouse click (this is relative to cell's origin} +\func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}} -\docparam{left, middle, right}{boolean flags for mouse buttons. TRUE if the left/middle/right -button is pressed, FALSE otherwise} +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.