]>
Commit | Line | Data |
---|---|---|
704a4b75 VS |
1 | % |
2 | % automatically generated by HelpGen from | |
3 | % htmlcell.tex at 21/Mar/99 22:45:23 | |
4 | % | |
5 | ||
704a4b75 VS |
6 | \section{\class{wxHtmlCell}}\label{wxhtmlcell} |
7 | ||
8 | Internal data structure. It represents fragments of parsed HTML | |
448af9a4 | 9 | page, the so-called {\bf cell} - a word, picture, table, horizontal line and so on. |
22d6efa8 | 10 | It is used by \helpref{wxHtmlWindow}{wxhtmlwindow} and |
704a4b75 VS |
11 | \helpref{wxHtmlWinParser}{wxhtmlwinparser} to represent HTML page in memory. |
12 | ||
13 | You can divide cells into two groups : {\it visible} cells with non-zero width and | |
14 | height and {\it helper} cells (usually with zero width and height) that | |
15 | perform special actions such as color or font change. | |
16 | ||
704a4b75 VS |
17 | \wxheading{Derived from} |
18 | ||
19 | wxObject | |
20 | ||
21 | \wxheading{See Also} | |
22 | ||
23 | \helpref{Cells Overview}{cells}, | |
22d6efa8 | 24 | \helpref{wxHtmlContainerCell}{wxhtmlcontainercell} |
704a4b75 VS |
25 | |
26 | \latexignore{\rtfignore{\wxheading{Members}}} | |
27 | ||
704a4b75 VS |
28 | \membersection{wxHtmlCell::wxHtmlCell}\label{wxhtmlcellwxhtmlcell} |
29 | ||
30 | \func{}{wxHtmlCell}{\void} | |
31 | ||
32 | Constructor. | |
33 | ||
eb3a4aa9 VS |
34 | \membersection{wxHtmlCell::AdjustPagebreak}\label{wxhtmlcelladjustpagebreak} |
35 | ||
36 | \func{virtual bool}{AdjustPagebreak}{\param{int * }{pagebreak}} | |
37 | ||
38 | This method is used to adjust pagebreak position. The parameter is | |
39 | variable that contains y-coordinate of page break (= horizontal line that | |
40 | should not be crossed by words, images etc.). If this cell cannot be divided | |
41 | into two pieces (each one on another page) then it moves the pagebreak | |
42 | few pixels up. | |
43 | ||
44 | Returns TRUE if pagebreak was modified, FALSE otherwise | |
45 | ||
448af9a4 | 46 | Usage: |
eb3a4aa9 VS |
47 | \begin{verbatim} |
48 | while (container->AdjustPagebreak(&p)) {} | |
49 | \end{verbatim} | |
50 | ||
559fe022 | 51 | \membersection{wxHtmlCell::Draw}\label{wxhtmlcelldraw} |
704a4b75 | 52 | |
559fe022 | 53 | \func{virtual void}{Draw}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{view\_y1}, \param{int }{view\_y2}} |
704a4b75 | 54 | |
559fe022 | 55 | Renders the cell. |
704a4b75 | 56 | |
559fe022 | 57 | \wxheading{Parameters} |
704a4b75 | 58 | |
559fe022 | 59 | \docparam{dc}{Device context to which the cell is to be drawn} |
704a4b75 | 60 | |
559fe022 VS |
61 | \docparam{x,y}{Coordinates of parent's upper left corner (origin). You must |
62 | add this to m\_PosX,m\_PosY when passing coordinates to dc's methods | |
63 | Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)}} | |
704a4b75 | 64 | |
559fe022 VS |
65 | \docparam{view_y1}{y-coord of the first line visible in window. This is |
66 | used to optimize rendering speed} | |
704a4b75 | 67 | |
559fe022 VS |
68 | \docparam{view_y2}{y-coord of the last line visible in window. This is |
69 | used to optimize rendering speed} | |
704a4b75 | 70 | |
559fe022 | 71 | \membersection{wxHtmlCell::DrawInvisible}\label{wxhtmlcelldrawinvisible} |
704a4b75 | 72 | |
559fe022 | 73 | \func{virtual void}{DrawInvisible}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}} |
704a4b75 | 74 | |
559fe022 VS |
75 | This method is called instead of \helpref{Draw}{wxhtmlcelldraw} when the |
76 | cell is certainly out of the screen (and thus invisible). This is not | |
77 | nonsense - some tags (like \helpref{wxHtmlColourCell}{wxhtmlcolourcell} | |
78 | or font setter) must be drawn even if they are invisible! | |
704a4b75 | 79 | |
559fe022 | 80 | \wxheading{Parameters} |
704a4b75 | 81 | |
559fe022 | 82 | \docparam{dc}{Device context to which the cell is to be drawn} |
704a4b75 | 83 | |
559fe022 VS |
84 | \docparam{x,y}{Coordinates of parent's upper left corner. You must |
85 | add this to m\_PosX,m\_PosY when passing coordinates to dc's methods | |
86 | Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)}} | |
704a4b75 | 87 | |
559fe022 | 88 | \membersection{wxHtmlCell::Find}\label{wxhtmlcellfind} |
704a4b75 | 89 | |
559fe022 | 90 | \func{virtual const wxHtmlCell*}{Find}{\param{int }{condition}, \param{const void* }{param}} |
704a4b75 | 91 | |
559fe022 VS |
92 | Returns pointer to itself if this cell matches condition (or if any of the cells |
93 | following in the list matches), NULL otherwise. | |
94 | (In other words if you call top-level container's Find it will | |
95 | return pointer to the first cell that matches the condition) | |
704a4b75 | 96 | |
559fe022 VS |
97 | It is recommended way how to obtain pointer to particular cell or |
98 | to cell of some type (e.g. wxHtmlAnchorCell reacts on | |
99 | HTML_COND_ISANCHOR condition) | |
100 | ||
101 | \wxheading{Parameters} | |
102 | ||
103 | \docparam{condition}{Unique integer identifier of condition} | |
104 | ||
105 | \docparam{param}{Optional parameters} | |
106 | ||
107 | \wxheading{Defined conditions} | |
108 | ||
448af9a4 JS |
109 | \begin{twocollist}\itemsep=0pt |
110 | \twocolitem{{\bf HTML_COND_ISANCHOR}}{Finds particular anchor. | |
559fe022 VS |
111 | {\it param} is pointer to wxString with name of the anchor.} |
112 | \twocolitem{{\bf HTML_COND_USER}}{User-defined conditions start | |
448af9a4 | 113 | from this number.} |
559fe022 | 114 | \end{twocollist} |
704a4b75 VS |
115 | |
116 | \membersection{wxHtmlCell::GetDescent}\label{wxhtmlcellgetdescent} | |
117 | ||
118 | \constfunc{int}{GetDescent}{\void} | |
119 | ||
120 | Returns descent value of the cell (m_Descent member). See explanation: | |
121 | ||
122 | \image{}{descent.bmp} | |
123 | ||
559fe022 VS |
124 | \membersection{wxHtmlCell::GetHeight}\label{wxhtmlcellgetheight} |
125 | ||
126 | \constfunc{int}{GetHeight}{\void} | |
127 | ||
128 | Returns height of the cell (m_Height member). | |
129 | ||
704a4b75 VS |
130 | \membersection{wxHtmlCell::GetLink}\label{wxhtmlcellgetlink} |
131 | ||
846914d1 | 132 | \constfunc{virtual wxHtmlLinkInfo*}{GetLink}{\param{int }{x = 0}, \param{int }{y = 0}} |
704a4b75 | 133 | |
846914d1 VS |
134 | Returns hypertext link if associated with this cell or NULL otherwise. |
135 | See \helpref{wxHtmlLinkInfo}{wxhtmllinkinfo}. | |
448af9a4 | 136 | (Note: this makes sense only for visible tags). |
704a4b75 VS |
137 | |
138 | \wxheading{Parameters} | |
139 | ||
140 | \docparam{x,y}{Coordinates of position where the user pressed mouse button. | |
141 | These coordinates are used e.g. by COLORMAP. Values are relative to the | |
142 | upper left corner of THIS cell (i.e. from 0 to m_Width or m_Height)} | |
143 | ||
144 | \membersection{wxHtmlCell::GetNext}\label{wxhtmlcellgetnext} | |
145 | ||
146 | \constfunc{wxHtmlCell*}{GetNext}{\void} | |
147 | ||
148 | Returns pointer to the next cell in list (see htmlcell.h if you're | |
149 | interested in details). | |
150 | ||
559fe022 | 151 | \membersection{wxHtmlCell::GetParent}\label{wxhtmlcellgetparent} |
704a4b75 | 152 | |
559fe022 | 153 | \constfunc{wxHtmlContainerCell*}{GetParent}{\void} |
704a4b75 | 154 | |
559fe022 | 155 | Returns pointer to parent container. |
704a4b75 | 156 | |
559fe022 | 157 | \membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx} |
704a4b75 | 158 | |
559fe022 | 159 | \constfunc{int}{GetPosX}{\void} |
704a4b75 | 160 | |
559fe022 VS |
161 | Returns X position within parent (the value is relative to parent's |
162 | upper left corner). The returned value is meaningful only if | |
163 | parent's \helpref{Layout}{wxhtmlcelllayout} was called before! | |
704a4b75 | 164 | |
559fe022 | 165 | \membersection{wxHtmlCell::GetPosY}\label{wxhtmlcellgetposy} |
704a4b75 | 166 | |
559fe022 | 167 | \constfunc{int}{GetPosY}{\void} |
704a4b75 | 168 | |
559fe022 VS |
169 | Returns Y position within parent (the value is relative to parent's |
170 | upper left corner). The returned value is meaningful only if | |
171 | parent's \helpref{Layout}{wxhtmlcelllayout} was called before! | |
172 | ||
173 | \membersection{wxHtmlCell::GetWidth}\label{wxhtmlcellgetwidth} | |
174 | ||
175 | \constfunc{int}{GetWidth}{\void} | |
176 | ||
177 | Returns width of the cell (m_Width member). | |
704a4b75 VS |
178 | |
179 | \membersection{wxHtmlCell::Layout}\label{wxhtmlcelllayout} | |
180 | ||
181 | \func{virtual void}{Layout}{\param{int }{w}} | |
182 | ||
183 | This method performs 2 actions: | |
184 | ||
448af9a4 | 185 | \begin{enumerate}\itemsep=0pt |
704a4b75 VS |
186 | \item adjusts cell's width according to the fact that maximal possible width is {\it w}. |
187 | (this has sense when working with horizontal lines, tables etc.) | |
188 | \item prepares layout (=fill-in m\_PosX, m\_PosY (and sometimes m\_Height) members) | |
189 | based on actual width {\it w} | |
190 | \end{enumerate} | |
191 | ||
3660fc40 RD |
192 | It must be called before displaying cells structure because |
193 | m\_PosX and m\_PosY are undefined (or invalid) | |
194 | before calling Layout. | |
704a4b75 | 195 | |
704a4b75 VS |
196 | \membersection{wxHtmlCell::OnMouseClick}\label{wxhtmlcellonmouseclick} |
197 | ||
704a4b75 VS |
198 | \func{virtual void}{OnMouseClick}{\param{wxWindow* }{parent}, \param{int }{x}, \param{int }{y}, \param{bool }{left}, \param{bool }{middle}, \param{bool }{right}} |
199 | ||
200 | This function is simple event handler. Each time user clicks mouse button over a cell | |
201 | within \helpref{wxHtmlWindow}{wxhtmlwindow} this method of that cell is called. Default behavior is | |
202 | that it calls \helpref{wxHtmlWindow::LoadPage}{wxhtmlwindowloadpage}. | |
203 | ||
204 | \wxheading{Note} | |
205 | ||
206 | If you need more "advanced" behaviour (for example you'd like to catch mouse movement events or | |
d7cb14ce | 207 | key events or whatsoever) you should use wxHtmlBinderCell instead. |
704a4b75 VS |
208 | |
209 | \wxheading{Parameters} | |
210 | ||
d7cb14ce | 211 | \docparam{parent}{parent window (always wxHtmlWindow!)} |
704a4b75 VS |
212 | |
213 | \docparam{x, y}{coordinates of mouse click (this is relative to cell's origin} | |
214 | ||
215 | \docparam{left, middle, right}{boolean flags for mouse buttons. TRUE if the left/middle/right | |
216 | button is pressed, FALSE otherwise} | |
217 | ||
559fe022 VS |
218 | \membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink} |
219 | ||
846914d1 | 220 | \func{void}{SetLink}{\param{const wxHtmlLinkInfo\& }{link}} |
559fe022 VS |
221 | |
222 | Sets the hypertext link asocciated with this cell. (Default value | |
846914d1 | 223 | is \helpref{wxHtmlLinkInfo}{wxhtmllinkinfo}("", "") (no link)) |
559fe022 VS |
224 | |
225 | \membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext} | |
226 | ||
227 | \func{void}{SetNext}{\param{wxHtmlCell }{*cell}} | |
228 | ||
229 | Sets the next cell in the list. This shouldn't be called by user - it is | |
230 | to be used only by \helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell} | |
231 | ||
232 | \membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent} | |
233 | ||
234 | \func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}} | |
235 | ||
236 | Sets parent container of this cell. This is called from | |
237 | \helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}. | |
238 | ||
239 | \membersection{wxHtmlCell::SetPos}\label{wxhtmlcellsetpos} | |
240 | ||
241 | \func{void}{SetPos}{\param{int }{x}, \param{int }{y}} | |
242 | ||
448af9a4 | 243 | Sets the cell's position within parent container. |
559fe022 | 244 |