File: htcell.tex

package info (click to toggle)
wxwidgets2.8 2.8.10.1-3
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 239,052 kB
  • ctags: 289,550
  • sloc: cpp: 1,838,857; xml: 396,717; python: 282,506; ansic: 126,171; makefile: 51,406; sh: 14,581; asm: 299; sql: 258; lex: 194; perl: 139; yacc: 128; pascal: 95; php: 39; lisp: 38; tcl: 24; haskell: 20; java: 18; cs: 18; erlang: 17; ruby: 16; ada: 9; ml: 9; csh: 9
file content (300 lines) | stat: -rw-r--r-- 10,075 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name:        htcell.tex
%% Purpose:     wxHtmlCell documentation
%% Author:      wxWidgets Team
%% Modified by:
%% Created:     21/Mar/99 22:45:23
%% RCS-ID:      $Id: htcell.tex 39365 2006-05-28 09:47:08Z MR $
%% Copyright:   (c) wxWidgets Team
%% License:     wxWindows license
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\section{\class{wxHtmlCell}}\label{wxhtmlcell}

Internal data structure. It represents fragments of parsed HTML
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}

\helpref{wxObject}{wxobject}

\wxheading{Include files}

<wx/html/htmlcell.h>

\wxheading{See Also}

\helpref{Cells Overview}{cells},
\helpref{wxHtmlContainerCell}{wxhtmlcontainercell}

\latexignore{\rtfignore{\wxheading{Members}}}

\membersection{wxHtmlCell::wxHtmlCell}\label{wxhtmlcellwxhtmlcell}

\func{}{wxHtmlCell}{\void}

Constructor.

\membersection{wxHtmlCell::AdjustPagebreak}\label{wxhtmlcelladjustpagebreak}

\func{virtual bool}{AdjustPagebreak}{\param{int * }{pagebreak}}

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.

Returns true if pagebreak was modified, false otherwise

Usage: 
\begin{verbatim}
while (container->AdjustPagebreak(&p)) {}
\end{verbatim}

\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}

\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}}

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!

\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
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). 
\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 wxHtmlLinkInfo*}{GetLink}{\param{int }{x = 0}, \param{int }{y = 0}}

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)}

\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}

\constfunc{wxHtmlCell*}{GetNext}{\void}

Returns pointer to the next cell in list (see htmlcell.h if you're
interested in details).

\membersection{wxHtmlCell::GetParent}\label{wxhtmlcellgetparent}

\constfunc{wxHtmlContainerCell*}{GetParent}{\void}

Returns pointer to parent container.

\membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx}

\constfunc{int}{GetPosX}{\void}

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::GetPosY}\label{wxhtmlcellgetposy}

\constfunc{int}{GetPosY}{\void}

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}}

This method performs two actions:

\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::ProcessMouseClick}\label{wxhtmlcellprocessmouseclick}

\func{virtual bool}{ProcessMouseClick}{\param{wxHtmlWindowInterface* }{window}, \param{const wxPoint\& }{pos}, \param{const wxMouseEvent\& }{event}}

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{Note}

If you need more "advanced" event handling
you should use wxHtmlBinderCell instead.

\wxheading{Parameters}

\docparam{window}{interface to the parent HTML window}

\docparam{pos}{coordinates of mouse click (this is relative to cell's origin}

\docparam{event}{mouse event that triggered the call}

\wxheading{Return value}

\true if a link was clicked, \false otherwise.

\newsince{2.7.0} (before \tt{OnMouseClick} method served a similar purpose).


\membersection{wxHtmlCell::SetId}\label{wxhtmlcellsetid}

\func{void}{SetId}{\param{const wxString\& }{id}}

Sets unique cell identifier. Default value is no identifier, i.e. empty string.

\membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink}

\func{void}{SetLink}{\param{const wxHtmlLinkInfo\& }{link}}

Sets the hypertext link associated with this cell. (Default value
is \helpref{wxHtmlLinkInfo}{wxhtmllinkinfo}("", "") (no link))

\membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext}

\func{void}{SetNext}{\param{wxHtmlCell }{*cell}}

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::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.