]>
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 | ||
132 | \constfunc{virtual wxString}{GetLink}{\param{int }{x = 0}, \param{int }{y = 0}} | |
133 | ||
134 | Returns hypertext link if associated with this cell or empty string otherwise. | |
448af9a4 | 135 | (Note: this makes sense only for visible tags). |
704a4b75 VS |
136 | |
137 | \wxheading{Parameters} | |
138 | ||
139 | \docparam{x,y}{Coordinates of position where the user pressed mouse button. | |
140 | These coordinates are used e.g. by COLORMAP. Values are relative to the | |
141 | upper left corner of THIS cell (i.e. from 0 to m_Width or m_Height)} | |
142 | ||
143 | \membersection{wxHtmlCell::GetNext}\label{wxhtmlcellgetnext} | |
144 | ||
145 | \constfunc{wxHtmlCell*}{GetNext}{\void} | |
146 | ||
147 | Returns pointer to the next cell in list (see htmlcell.h if you're | |
148 | interested in details). | |
149 | ||
559fe022 | 150 | \membersection{wxHtmlCell::GetParent}\label{wxhtmlcellgetparent} |
704a4b75 | 151 | |
559fe022 | 152 | \constfunc{wxHtmlContainerCell*}{GetParent}{\void} |
704a4b75 | 153 | |
559fe022 | 154 | Returns pointer to parent container. |
704a4b75 | 155 | |
559fe022 | 156 | \membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx} |
704a4b75 | 157 | |
559fe022 | 158 | \constfunc{int}{GetPosX}{\void} |
704a4b75 | 159 | |
559fe022 VS |
160 | Returns X position within parent (the value is relative to parent's |
161 | upper left corner). The returned value is meaningful only if | |
162 | parent's \helpref{Layout}{wxhtmlcelllayout} was called before! | |
704a4b75 | 163 | |
559fe022 | 164 | \membersection{wxHtmlCell::GetPosY}\label{wxhtmlcellgetposy} |
704a4b75 | 165 | |
559fe022 | 166 | \constfunc{int}{GetPosY}{\void} |
704a4b75 | 167 | |
559fe022 VS |
168 | Returns Y position within parent (the value is relative to parent's |
169 | upper left corner). The returned value is meaningful only if | |
170 | parent's \helpref{Layout}{wxhtmlcelllayout} was called before! | |
171 | ||
172 | \membersection{wxHtmlCell::GetWidth}\label{wxhtmlcellgetwidth} | |
173 | ||
174 | \constfunc{int}{GetWidth}{\void} | |
175 | ||
176 | Returns width of the cell (m_Width member). | |
704a4b75 VS |
177 | |
178 | \membersection{wxHtmlCell::Layout}\label{wxhtmlcelllayout} | |
179 | ||
180 | \func{virtual void}{Layout}{\param{int }{w}} | |
181 | ||
182 | This method performs 2 actions: | |
183 | ||
448af9a4 | 184 | \begin{enumerate}\itemsep=0pt |
704a4b75 VS |
185 | \item adjusts cell's width according to the fact that maximal possible width is {\it w}. |
186 | (this has sense when working with horizontal lines, tables etc.) | |
187 | \item prepares layout (=fill-in m\_PosX, m\_PosY (and sometimes m\_Height) members) | |
188 | based on actual width {\it w} | |
189 | \end{enumerate} | |
190 | ||
3660fc40 RD |
191 | It must be called before displaying cells structure because |
192 | m\_PosX and m\_PosY are undefined (or invalid) | |
193 | before calling Layout. | |
704a4b75 | 194 | |
704a4b75 VS |
195 | \membersection{wxHtmlCell::OnMouseClick}\label{wxhtmlcellonmouseclick} |
196 | ||
704a4b75 VS |
197 | \func{virtual void}{OnMouseClick}{\param{wxWindow* }{parent}, \param{int }{x}, \param{int }{y}, \param{bool }{left}, \param{bool }{middle}, \param{bool }{right}} |
198 | ||
199 | This function is simple event handler. Each time user clicks mouse button over a cell | |
200 | within \helpref{wxHtmlWindow}{wxhtmlwindow} this method of that cell is called. Default behavior is | |
201 | that it calls \helpref{wxHtmlWindow::LoadPage}{wxhtmlwindowloadpage}. | |
202 | ||
203 | \wxheading{Note} | |
204 | ||
205 | If you need more "advanced" behaviour (for example you'd like to catch mouse movement events or | |
d7cb14ce | 206 | key events or whatsoever) you should use wxHtmlBinderCell instead. |
704a4b75 VS |
207 | |
208 | \wxheading{Parameters} | |
209 | ||
d7cb14ce | 210 | \docparam{parent}{parent window (always wxHtmlWindow!)} |
704a4b75 VS |
211 | |
212 | \docparam{x, y}{coordinates of mouse click (this is relative to cell's origin} | |
213 | ||
214 | \docparam{left, middle, right}{boolean flags for mouse buttons. TRUE if the left/middle/right | |
215 | button is pressed, FALSE otherwise} | |
216 | ||
559fe022 VS |
217 | \membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink} |
218 | ||
219 | \func{void}{SetLink}{\param{const wxString\& }{link}} | |
220 | ||
221 | Sets the hypertext link asocciated with this cell. (Default value | |
222 | is wxEmptyString (no link)) | |
223 | ||
224 | \membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext} | |
225 | ||
226 | \func{void}{SetNext}{\param{wxHtmlCell }{*cell}} | |
227 | ||
228 | Sets the next cell in the list. This shouldn't be called by user - it is | |
229 | to be used only by \helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell} | |
230 | ||
231 | \membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent} | |
232 | ||
233 | \func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}} | |
234 | ||
235 | Sets parent container of this cell. This is called from | |
236 | \helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}. | |
237 | ||
238 | \membersection{wxHtmlCell::SetPos}\label{wxhtmlcellsetpos} | |
239 | ||
240 | \func{void}{SetPos}{\param{int }{x}, \param{int }{y}} | |
241 | ||
448af9a4 | 242 | Sets the cell's position within parent container. |
559fe022 | 243 |