]> git.saurik.com Git - wxWidgets.git/blob - interface/wx/html/htmltag.h
even more interface fixes
[wxWidgets.git] / interface / wx / html / htmltag.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: html/htmltag.h
3 // Purpose: interface of wxHtmlTag
4 // Author: wxWidgets team
5 // RCS-ID: $Id$
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
8
9 /**
10 @class wxHtmlTag
11
12 This class represents a single HTML tag.
13 It is used by @ref overview_handlers "tag handlers".
14
15 @library{wxhtml}
16 @category{FIXME}
17 */
18 class wxHtmlTag
19 {
20 public:
21 /**
22 Constructor. You will probably never have to construct a wxHtmlTag object
23 yourself. Feel free to ignore the constructor parameters.
24 Have a look at src/html/htmlpars.cpp if you're interested in creating it.
25 */
26 wxHtmlTag(wxHtmlTag* parent, const wxString& source, int pos,
27 int end_pos, wxHtmlTagsCache* cache,
28 wxHtmlEntitiesParser* entParser);
29
30 /**
31 Returns a string containing all parameters.
32 Example : tag contains @c FONT SIZE=+2 COLOR="#000000". Call to
33 tag.GetAllParams() would return @c SIZE=+2 COLOR="#000000".
34 */
35 const wxString GetAllParams() const;
36
37 /**
38 Returns beginning position of the text @e between this tag and paired
39 ending tag.
40 See explanation (returned position is marked with '|'):
41 @deprecated @todo provide deprecation description
42 */
43 int GetBeginPos() const;
44
45 /**
46 Returns ending position of the text @e between this tag and paired
47 ending tag.
48 See explanation (returned position is marked with '|'):
49 @deprecated @todo provide deprecation description
50 */
51 int GetEndPos1() const;
52
53 /**
54 Returns ending position 2 of the text @e between this tag and paired
55 ending tag.
56 See explanation (returned position is marked with '|'):
57 @deprecated @todo provide deprecation description
58 */
59 int GetEndPos2() const;
60
61 /**
62 Returns tag's name. The name is always in uppercase and it doesn't contain
63 " or '/' characters. (So the name of @c FONT SIZE=+2 tag is "FONT"
64 and name of @c /table is "TABLE")
65 */
66 wxString GetName() const;
67
68 /**
69 Returns the value of the parameter. You should check whether the
70 parameter exists or not (use wxHtmlTag::HasParam) first.
71
72 @param par
73 The parameter's name.
74 @param with_quotes
75 @true if you want to get quotes as well. See example.
76 */
77 wxString GetParam(const wxString& par, bool with_quotes = false) const;
78
79 /**
80 Interprets tag parameter @a par as colour specification and saves its value
81 into wxColour variable pointed by @e clr.
82 Returns @true on success and @false if @a par is not colour specification or
83 if the tag has no such parameter.
84 */
85 bool GetParamAsColour(const wxString& par, wxColour* clr) const;
86
87 /**
88 Interprets tag parameter @a par as an integer and saves its value
89 into int variable pointed by @e value.
90 Returns @true on success and @false if @a par is not an integer or
91 if the tag has no such parameter.
92 */
93 bool GetParamAsInt(const wxString& par, int* value) const;
94
95 /**
96 Returns @true if this tag is paired with ending tag, @false otherwise.
97 See the example of HTML document:
98
99 In this example tags HTML and BODY have ending tags, first P and BR
100 doesn't have ending tag while the second P has. The third P tag (which
101 is ending itself) of course doesn't have ending tag.
102 */
103 bool HasEnding() const;
104
105 /**
106 Returns @true if the tag has a parameter of the given name.
107 Example : @c FONT SIZE=+2 COLOR="\#FF00FF" has two parameters named
108 "SIZE" and "COLOR".
109
110 @param par
111 the parameter you're looking for.
112 */
113 bool HasParam(const wxString& par) const;
114
115 /**
116 This method scans the given parameter. Usage is exactly the same as sscanf's
117 usage except that you don't pass a string but a parameter name as the first
118 argument
119 and you can only retrieve one value (i.e. you can use only one "%" element
120 in @e format).
121
122 @param par
123 The name of the tag you want to query
124 @param format
125 scanf()-like format string.
126 @param value
127 pointer to a variable to store the value in
128 */
129 wxString ScanParam(const wxString& par, const wxChar* format,
130 void* value) const;
131 };
132