KHtml

html_list.h
1 /*
2  * This file is part of the DOM implementation for KDE.
3  *
4  * Copyright 1999 Lars Knoll ([email protected])
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Library General Public
8  * License as published by the Free Software Foundation; either
9  * version 2 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Library General Public License for more details.
15  *
16  * You should have received a copy of the GNU Library General Public License
17  * along with this library; see the file COPYING.LIB. If not, write to
18  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19  * Boston, MA 02110-1301, USA.
20  *
21  * This file includes excerpts from the Document Object Model (DOM)
22  * Level 1 Specification (Recommendation)
23  * https://www.w3.org/TR/REC-DOM-Level-1/
24  * Copyright © World Wide Web Consortium , (Massachusetts Institute of
25  * Technology , Institut National de Recherche en Informatique et en
26  * Automatique , Keio University ). All Rights Reserved.
27  *
28  */
29 #ifndef HTML_LIST_H
30 #define HTML_LIST_H
31 
32 #include <khtml_export.h>
33 #include <dom/html_element.h>
34 
35 namespace DOM
36 {
37 
38 class HTMLDListElementImpl;
39 class HTMLUListElementImpl;
40 class HTMLOListElementImpl;
41 class HTMLDirectoryElementImpl;
42 class HTMLMenuElementImpl;
43 class HTMLLIElementImpl;
44 
45 class DOMString;
46 
47 /**
48  * Definition list. See the <a
49  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#edef-DL">
50  * DL element definition </a> in HTML 4.0.
51  *
52  */
53 class KHTML_EXPORT HTMLDListElement : public HTMLElement
54 {
55 public:
57  HTMLDListElement(const HTMLDListElement &other);
58  HTMLDListElement(const Node &other) : HTMLElement()
59  {
60  (*this) = other;
61  }
62 protected:
63  HTMLDListElement(HTMLDListElementImpl *impl);
64 public:
65 
66  HTMLDListElement &operator = (const HTMLDListElement &other);
67  HTMLDListElement &operator = (const Node &other);
68 
70 
71  /**
72  * Reduce spacing between list items. See the <a
73  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-compact">
74  * compact attribute definition </a> in HTML 4.0. This attribute
75  * is deprecated in HTML 4.0.
76  *
77  */
78  bool compact() const;
79 
80  /**
81  * see compact
82  */
83  void setCompact(bool);
84 };
85 
86 // --------------------------------------------------------------------------
87 
88 /**
89  * Directory list. See the <a
90  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#edef-DIR">
91  * DIR element definition </a> in HTML 4.0. This element is deprecated
92  * in HTML 4.0.
93  *
94  */
95 class KHTML_EXPORT HTMLDirectoryElement : public HTMLElement
96 {
97 public:
100  HTMLDirectoryElement(const Node &other) : HTMLElement()
101  {
102  (*this) = other;
103  }
104 protected:
105  HTMLDirectoryElement(HTMLDirectoryElementImpl *impl);
106 public:
107 
108  HTMLDirectoryElement &operator = (const HTMLDirectoryElement &other);
109  HTMLDirectoryElement &operator = (const Node &other);
110 
112 
113  /**
114  * Reduce spacing between list items. See the <a
115  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-compact">
116  * compact attribute definition </a> in HTML 4.0. This attribute
117  * is deprecated in HTML 4.0.
118  *
119  */
120  bool compact() const;
121 
122  /**
123  * see compact
124  */
125  void setCompact(bool);
126 };
127 
128 // --------------------------------------------------------------------------
129 
130 /**
131  * List item. See the <a
132  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#edef-LI">
133  * LI element definition </a> in HTML 4.0.
134  *
135  */
136 class KHTML_EXPORT HTMLLIElement : public HTMLElement
137 {
138 public:
139  HTMLLIElement();
140  HTMLLIElement(const HTMLLIElement &other);
141  HTMLLIElement(const Node &other) : HTMLElement()
142  {
143  (*this) = other;
144  }
145 
146 protected:
147  HTMLLIElement(HTMLLIElementImpl *impl);
148 public:
149 
150  HTMLLIElement &operator = (const HTMLLIElement &other);
151  HTMLLIElement &operator = (const Node &other);
152 
153  ~HTMLLIElement();
154 
155  /**
156  * List item bullet style. See the <a
157  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-type-LI">
158  * type attribute definition </a> in HTML 4.0. This attribute is
159  * deprecated in HTML 4.0.
160  *
161  */
162  DOMString type() const;
163 
164  /**
165  * see type
166  */
167  void setType(const DOMString &);
168 
169  /**
170  * Reset sequence number when used in \c OL See the <a
171  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-value-LI">
172  * value attribute definition </a> in HTML 4.0. This attribute is
173  * deprecated in HTML 4.0.
174  *
175  */
176  long value() const;
177 
178  /**
179  * see value
180  */
181  void setValue(long);
182 };
183 
184 // --------------------------------------------------------------------------
185 
186 /**
187  * Menu list. See the <a
188  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#edef-MENU">
189  * MENU element definition </a> in HTML 4.0. This element is
190  * deprecated in HTML 4.0.
191  *
192  */
193 class KHTML_EXPORT HTMLMenuElement : public HTMLElement
194 {
195 public:
196  HTMLMenuElement();
197  HTMLMenuElement(const HTMLMenuElement &other);
198  HTMLMenuElement(const Node &other) : HTMLElement()
199  {
200  (*this) = other;
201  }
202 
203 protected:
204  HTMLMenuElement(HTMLMenuElementImpl *impl);
205 public:
206 
207  HTMLMenuElement &operator = (const HTMLMenuElement &other);
208  HTMLMenuElement &operator = (const Node &other);
209 
210  ~HTMLMenuElement();
211 
212  /**
213  * Reduce spacing between list items. See the <a
214  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-compact">
215  * compact attribute definition </a> in HTML 4.0. This attribute
216  * is deprecated in HTML 4.0.
217  *
218  */
219  bool compact() const;
220 
221  /**
222  * see compact
223  */
224  void setCompact(bool);
225 };
226 
227 // --------------------------------------------------------------------------
228 
229 /**
230  * Ordered list. See the <a
231  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#edef-OL">
232  * OL element definition </a> in HTML 4.0.
233  *
234  */
235 class KHTML_EXPORT HTMLOListElement : public HTMLElement
236 {
237 public:
239  HTMLOListElement(const HTMLOListElement &other);
240  HTMLOListElement(const Node &other) : HTMLElement()
241  {
242  (*this) = other;
243  }
244 protected:
245  HTMLOListElement(HTMLOListElementImpl *impl);
246 public:
247 
248  HTMLOListElement &operator = (const HTMLOListElement &other);
249  HTMLOListElement &operator = (const Node &other);
250 
251  ~HTMLOListElement();
252 
253  /**
254  * Reduce spacing between list items. See the <a
255  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-compact">
256  * compact attribute definition </a> in HTML 4.0. This attribute
257  * is deprecated in HTML 4.0.
258  *
259  */
260  bool compact() const;
261 
262  /**
263  * see compact
264  */
265  void setCompact(bool);
266 
267  /**
268  * Starting sequence number. See the <a
269  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-start">
270  * start attribute definition </a> in HTML 4.0. This attribute is
271  * deprecated in HTML 4.0.
272  *
273  */
274  long start() const;
275 
276  /**
277  * see start
278  */
279  void setStart(long);
280 
281  /**
282  * Numbering style. See the <a
283  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-type-OL">
284  * type attribute definition </a> in HTML 4.0. This attribute is
285  * deprecated in HTML 4.0.
286  *
287  */
288  DOMString type() const;
289 
290  /**
291  * see type
292  */
293  void setType(const DOMString &);
294 };
295 
296 // --------------------------------------------------------------------------
297 
298 /**
299  * Unordered list. See the <a
300  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#edef-UL">
301  * UL element definition </a> in HTML 4.0.
302  *
303  */
304 class KHTML_EXPORT HTMLUListElement : public HTMLElement
305 {
306 public:
308  HTMLUListElement(const HTMLUListElement &other);
309  HTMLUListElement(const Node &other) : HTMLElement()
310  {
311  (*this) = other;
312  }
313 protected:
314  HTMLUListElement(HTMLUListElementImpl *impl);
315 public:
316 
317  HTMLUListElement &operator = (const HTMLUListElement &other);
318  HTMLUListElement &operator = (const Node &other);
319 
320  ~HTMLUListElement();
321 
322  /**
323  * Reduce spacing between list items. See the <a
324  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-compact">
325  * compact attribute definition </a> in HTML 4.0. This attribute
326  * is deprecated in HTML 4.0.
327  *
328  */
329  bool compact() const;
330 
331  /**
332  * see compact
333  */
334  void setCompact(bool);
335 
336  /**
337  * Bullet style. See the <a
338  * href="https://www.w3.org/TR/REC-html40/struct/lists.html#adef-type-UL">
339  * type attribute definition </a> in HTML 4.0. This attribute is
340  * deprecated in HTML 4.0.
341  *
342  */
343  DOMString type() const;
344 
345  /**
346  * see type
347  */
348  void setType(const DOMString &);
349 };
350 
351 } //namespace
352 
353 #endif
The Node interface is the primary datatype for the entire Document Object Model.
Definition: dom_node.h:278
Directory list.
Definition: html_list.h:95
List item.
Definition: html_list.h:136
Ordered list.
Definition: html_list.h:235
This class implements the basic string we use in the DOM.
Definition: dom_string.h:44
Definition list.
Definition: html_list.h:53
This library provides a full-featured HTML parser and widget.
Unordered list.
Definition: html_list.h:304
All HTML element interfaces derive from this class.
Definition: html_element.h:70
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Thu Mar 4 2021 22:47:18 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.