~ubuntu-branches/ubuntu/hoary/psi/hoary

« back to all changes in this revision

Viewing changes to qxml/qdom.h

  • Committer: Bazaar Package Importer
  • Author(s): Jan Niehusmann
  • Date: 2004-06-15 00:10:41 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20040615001041-enywb6pcpe4sjsw6
Tags: 0.9.2-1
* New upstream release
* Set KDEDIR for ./configure so kde specific files get installed
* Don't install libpsiwidgets.so. It got installed in /usr/share
  where it doesn't belong. May be included (at a better location)
  later.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/****************************************************************************
 
2
** $Id: qdom.h,v 1.1 2004/02/29 00:05:06 justin Exp $
 
3
**
 
4
** Definition of QDomDocument and related classes.
 
5
**
 
6
** Created : 000518
 
7
**
 
8
** Copyright (C) 1992-2002 Trolltech AS.  All rights reserved.
 
9
**
 
10
** This file is part of the xml module of the Qt GUI Toolkit.
 
11
**
 
12
** This file may be distributed under the terms of the Q Public License
 
13
** as defined by Trolltech AS of Norway and appearing in the file
 
14
** LICENSE.QPL included in the packaging of this file.
 
15
**
 
16
** This file may be distributed and/or modified under the terms of the
 
17
** GNU General Public License version 2 as published by the Free Software
 
18
** Foundation and appearing in the file LICENSE.GPL included in the
 
19
** packaging of this file.
 
20
**
 
21
** Licensees holding valid Qt Enterprise Edition licenses may use this
 
22
** file in accordance with the Qt Commercial License Agreement provided
 
23
** with the Software.
 
24
**
 
25
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 
26
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 
27
**
 
28
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
 
29
**   information about Qt Commercial License Agreements.
 
30
** See http://www.trolltech.com/qpl/ for QPL licensing information.
 
31
** See http://www.trolltech.com/gpl/ for GPL licensing information.
 
32
**
 
33
** Contact info@trolltech.com if any conditions of this licensing are
 
34
** not clear to you.
 
35
**
 
36
**********************************************************************/
 
37
 
 
38
#ifndef QDOM_H
 
39
#define QDOM_H
 
40
 
 
41
#ifndef QT_H
 
42
#include "qstring.h"
 
43
#endif // QT_H
 
44
 
 
45
#if !defined(QT_MODULE_XML) || defined( QT_LICENSE_PROFESSIONAL ) || defined( QT_INTERNAL_XML )
 
46
#define QM_EXPORT_DOM
 
47
#else
 
48
#define QM_EXPORT_DOM Q_EXPORT
 
49
#endif
 
50
 
 
51
#ifndef QT_NO_DOM
 
52
 
 
53
class QIODevice;
 
54
class QTextStream;
 
55
 
 
56
namespace PsiXml {
 
57
 
 
58
class QXmlInputSource;
 
59
class QXmlReader;
 
60
 
 
61
class QDomDocumentPrivate;
 
62
class QDomDocumentTypePrivate;
 
63
class QDomDocumentFragmentPrivate;
 
64
class QDomNodePrivate;
 
65
class QDomNodeListPrivate;
 
66
class QDomImplementationPrivate;
 
67
class QDomElementPrivate;
 
68
class QDomNotationPrivate;
 
69
class QDomEntityPrivate;
 
70
class QDomEntityReferencePrivate;
 
71
class QDomProcessingInstructionPrivate;
 
72
class QDomAttrPrivate;
 
73
class QDomCharacterDataPrivate;
 
74
class QDomTextPrivate;
 
75
class QDomCommentPrivate;
 
76
class QDomCDATASectionPrivate;
 
77
class QDomNamedNodeMapPrivate;
 
78
class QDomImplementationPrivate;
 
79
 
 
80
class QDomNodeList;
 
81
class QDomElement;
 
82
class QDomText;
 
83
class QDomComment;
 
84
class QDomCDATASection;
 
85
class QDomProcessingInstruction;
 
86
class QDomAttr;
 
87
class QDomEntityReference;
 
88
class QDomDocument;
 
89
class QDomNamedNodeMap;
 
90
class QDomDocument;
 
91
class QDomDocumentFragment;
 
92
class QDomDocumentType;
 
93
class QDomImplementation;
 
94
class QDomNode;
 
95
class QDomEntity;
 
96
class QDomNotation;
 
97
class QDomCharacterData;
 
98
 
 
99
class QM_EXPORT_DOM QDomImplementation
 
100
{
 
101
public:
 
102
    QDomImplementation();
 
103
    QDomImplementation( const QDomImplementation& );
 
104
    virtual ~QDomImplementation();
 
105
    QDomImplementation& operator= ( const QDomImplementation& );
 
106
    bool operator== ( const QDomImplementation& ) const;
 
107
    bool operator!= ( const QDomImplementation& ) const;
 
108
 
 
109
    // functions
 
110
    virtual bool hasFeature( const QString& feature, const QString& version );
 
111
    virtual QDomDocumentType createDocumentType( const QString& qName, const QString& publicId, const QString& systemId );
 
112
    virtual QDomDocument createDocument( const QString& nsURI, const QString& qName, const QDomDocumentType& doctype );
 
113
 
 
114
    // Qt extension
 
115
    bool isNull();
 
116
 
 
117
private:
 
118
    QDomImplementationPrivate* impl;
 
119
    QDomImplementation( QDomImplementationPrivate* );
 
120
 
 
121
    friend class QDomDocument;
 
122
};
 
123
 
 
124
class QM_EXPORT_DOM QDomNode
 
125
{
 
126
public:
 
127
    enum NodeType {
 
128
        ElementNode               = 1,
 
129
        AttributeNode             = 2,
 
130
        TextNode                  = 3,
 
131
        CDATASectionNode          = 4,
 
132
        EntityReferenceNode       = 5,
 
133
        EntityNode                = 6,
 
134
        ProcessingInstructionNode = 7,
 
135
        CommentNode               = 8,
 
136
        DocumentNode              = 9,
 
137
        DocumentTypeNode          = 10,
 
138
        DocumentFragmentNode      = 11,
 
139
        NotationNode              = 12,
 
140
        BaseNode                  = 21,// this is not in the standard
 
141
        CharacterDataNode         = 22 // this is not in the standard
 
142
    };
 
143
 
 
144
    QDomNode();
 
145
    QDomNode( const QDomNode& );
 
146
    QDomNode& operator= ( const QDomNode& );
 
147
    bool operator== ( const QDomNode& ) const;
 
148
    bool operator!= ( const QDomNode& ) const;
 
149
    virtual ~QDomNode();
 
150
 
 
151
    // DOM functions
 
152
    virtual QDomNode insertBefore( const QDomNode& newChild, const QDomNode& refChild );
 
153
    virtual QDomNode insertAfter( const QDomNode& newChild, const QDomNode& refChild );
 
154
    virtual QDomNode replaceChild( const QDomNode& newChild, const QDomNode& oldChild );
 
155
    virtual QDomNode removeChild( const QDomNode& oldChild );
 
156
    virtual QDomNode appendChild( const QDomNode& newChild );
 
157
    virtual bool hasChildNodes() const;
 
158
    virtual QDomNode cloneNode( bool deep = TRUE ) const;
 
159
    virtual void normalize();
 
160
    virtual bool isSupported( const QString& feature, const QString& version ) const;
 
161
 
 
162
    // DOM read only attributes
 
163
    virtual QString nodeName() const;
 
164
    virtual QDomNode::NodeType nodeType() const;
 
165
    virtual QDomNode         parentNode() const;
 
166
    virtual QDomNodeList     childNodes() const;
 
167
    virtual QDomNode         firstChild() const;
 
168
    virtual QDomNode         lastChild() const;
 
169
    virtual QDomNode         previousSibling() const;
 
170
    virtual QDomNode         nextSibling() const;
 
171
    virtual QDomNamedNodeMap attributes() const;
 
172
    virtual QDomDocument     ownerDocument() const;
 
173
    virtual QString namespaceURI() const;
 
174
    virtual QString localName() const;
 
175
    virtual bool hasAttributes() const;
 
176
 
 
177
    // DOM attributes
 
178
    virtual QString nodeValue() const;
 
179
    virtual void setNodeValue( const QString& );
 
180
    virtual QString prefix() const;
 
181
    virtual void setPrefix( const QString& pre );
 
182
 
 
183
    // Qt extensions
 
184
    virtual bool isAttr() const;
 
185
    virtual bool isCDATASection() const;
 
186
    virtual bool isDocumentFragment() const;
 
187
    virtual bool isDocument() const;
 
188
    virtual bool isDocumentType() const;
 
189
    virtual bool isElement() const;
 
190
    virtual bool isEntityReference() const;
 
191
    virtual bool isText() const;
 
192
    virtual bool isEntity() const;
 
193
    virtual bool isNotation() const;
 
194
    virtual bool isProcessingInstruction() const;
 
195
    virtual bool isCharacterData() const;
 
196
    virtual bool isComment() const;
 
197
 
 
198
    /**
 
199
     * Shortcut to avoid dealing with QDomNodeList
 
200
     * all the time.
 
201
     */
 
202
    QDomNode namedItem( const QString& name ) const;
 
203
 
 
204
    bool isNull() const;
 
205
    void clear();
 
206
 
 
207
    QDomAttr toAttr();
 
208
    QDomCDATASection toCDATASection();
 
209
    QDomDocumentFragment toDocumentFragment();
 
210
    QDomDocument toDocument();
 
211
    QDomDocumentType toDocumentType();
 
212
    QDomElement toElement();
 
213
    QDomEntityReference toEntityReference();
 
214
    QDomText toText();
 
215
    QDomEntity toEntity();
 
216
    QDomNotation toNotation();
 
217
    QDomProcessingInstruction toProcessingInstruction();
 
218
    QDomCharacterData toCharacterData();
 
219
    QDomComment toComment();
 
220
 
 
221
    void save( QTextStream&, int ) const;
 
222
 
 
223
protected:
 
224
    QDomNodePrivate* impl;
 
225
    QDomNode( QDomNodePrivate* );
 
226
 
 
227
private:
 
228
    friend class QDomDocument;
 
229
    friend class QDomDocumentType;
 
230
    friend class QDomNodeList;
 
231
    friend class QDomNamedNodeMap;
 
232
};
 
233
 
 
234
class QM_EXPORT_DOM QDomNodeList
 
235
{
 
236
public:
 
237
    QDomNodeList();
 
238
    QDomNodeList( const QDomNodeList& );
 
239
    QDomNodeList& operator= ( const QDomNodeList& );
 
240
    bool operator== ( const QDomNodeList& ) const;
 
241
    bool operator!= ( const QDomNodeList& ) const;
 
242
    virtual ~QDomNodeList();
 
243
 
 
244
    // DOM functions
 
245
    virtual QDomNode item( int index ) const;
 
246
 
 
247
    // DOM read only attributes
 
248
    virtual uint length() const;
 
249
    uint count() const { return length(); } // Qt API consitancy
 
250
 
 
251
private:
 
252
    QDomNodeListPrivate* impl;
 
253
    QDomNodeList( QDomNodeListPrivate* );
 
254
 
 
255
    friend class QDomNode;
 
256
    friend class QDomElement;
 
257
    friend class QDomDocument;
 
258
};
 
259
 
 
260
class QM_EXPORT_DOM QDomDocumentType : public QDomNode
 
261
{
 
262
public:
 
263
    QDomDocumentType();
 
264
    QDomDocumentType( const QDomDocumentType& x );
 
265
    QDomDocumentType& operator= ( const QDomDocumentType& );
 
266
    ~QDomDocumentType();
 
267
 
 
268
    // DOM read only attributes
 
269
    virtual QString name() const;
 
270
    virtual QDomNamedNodeMap entities() const;
 
271
    virtual QDomNamedNodeMap notations() const;
 
272
    virtual QString publicId() const;
 
273
    virtual QString systemId() const;
 
274
    virtual QString internalSubset() const;
 
275
 
 
276
    // Reimplemented from QDomNode
 
277
    QDomNode::NodeType nodeType() const;
 
278
    bool isDocumentType() const;
 
279
 
 
280
private:
 
281
    QDomDocumentType( QDomDocumentTypePrivate* );
 
282
 
 
283
    friend class QDomImplementation;
 
284
    friend class QDomDocument;
 
285
    friend class QDomNode;
 
286
};
 
287
 
 
288
class QM_EXPORT_DOM QDomDocument : public QDomNode
 
289
{
 
290
public:
 
291
    QDomDocument();
 
292
    Q_EXPLICIT QDomDocument( const QString& name );
 
293
    Q_EXPLICIT QDomDocument( const QDomDocumentType& doctype );
 
294
    QDomDocument( const QDomDocument& x );
 
295
    QDomDocument& operator= ( const QDomDocument& );
 
296
    ~QDomDocument();
 
297
 
 
298
    // DOM functions
 
299
    QDomElement createElement( const QString& tagName );
 
300
    QDomDocumentFragment createDocumentFragment();
 
301
    QDomText createTextNode( const QString& data );
 
302
    QDomComment createComment( const QString& data );
 
303
    QDomCDATASection createCDATASection( const QString& data );
 
304
    QDomProcessingInstruction createProcessingInstruction( const QString& target, const QString& data );
 
305
    QDomAttr createAttribute( const QString& name );
 
306
    QDomEntityReference createEntityReference( const QString& name );
 
307
    QDomNodeList elementsByTagName( const QString& tagname ) const;
 
308
    QDomNode importNode( const QDomNode& importedNode, bool deep );
 
309
    QDomElement createElementNS( const QString& nsURI, const QString& qName );
 
310
    QDomAttr createAttributeNS( const QString& nsURI, const QString& qName );
 
311
    QDomNodeList elementsByTagNameNS( const QString& nsURI, const QString& localName );
 
312
    QDomElement elementById( const QString& elementId );
 
313
 
 
314
    // DOM read only attributes
 
315
    QDomDocumentType doctype() const;
 
316
    QDomImplementation implementation() const;
 
317
    QDomElement documentElement() const;
 
318
 
 
319
    // Qt extensions
 
320
    bool setContent( const QCString& text, bool namespaceProcessing, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
321
    bool setContent( const QByteArray& text, bool namespaceProcessing, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
322
    bool setContent( const QString& text, bool namespaceProcessing, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
323
    bool setContent( QIODevice* dev, bool namespaceProcessing, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
324
    bool setContent( const QCString& text, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0 );
 
325
    bool setContent( const QByteArray& text, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
326
    bool setContent( const QString& text, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
327
    bool setContent( QIODevice* dev, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
328
 
 
329
    bool setContent( QXmlInputSource *source, QXmlReader *reader, QString *errorMsg=0, int *errorLine=0, int *errorColumn=0  );
 
330
 
 
331
    // Reimplemented from QDomNode
 
332
    QDomNode::NodeType nodeType() const;
 
333
    bool isDocument() const;
 
334
 
 
335
    // Qt extensions
 
336
    QString toString() const; // ### Qt 4: merge the two overloads
 
337
    QString toString( int ) const;
 
338
    QCString toCString() const; // ### Qt 4: merge the two overloads
 
339
    QCString toCString( int ) const;
 
340
 
 
341
private:
 
342
    QDomDocument( QDomDocumentPrivate* );
 
343
 
 
344
    friend class QDomNode;
 
345
};
 
346
 
 
347
class QM_EXPORT_DOM QDomNamedNodeMap
 
348
{
 
349
public:
 
350
    QDomNamedNodeMap();
 
351
    QDomNamedNodeMap( const QDomNamedNodeMap& );
 
352
    QDomNamedNodeMap& operator= ( const QDomNamedNodeMap& );
 
353
    bool operator== ( const QDomNamedNodeMap& ) const;
 
354
    bool operator!= ( const QDomNamedNodeMap& ) const;
 
355
    ~QDomNamedNodeMap();
 
356
 
 
357
    // DOM functions
 
358
    QDomNode namedItem( const QString& name ) const;
 
359
    QDomNode setNamedItem( const QDomNode& newNode );
 
360
    QDomNode removeNamedItem( const QString& name );
 
361
    QDomNode item( int index ) const;
 
362
    QDomNode namedItemNS( const QString& nsURI, const QString& localName ) const;
 
363
    QDomNode setNamedItemNS( const QDomNode& newNode );
 
364
    QDomNode removeNamedItemNS( const QString& nsURI, const QString& localName );
 
365
 
 
366
    // DOM read only attributes
 
367
    uint length() const;
 
368
    uint count() const { return length(); } // Qt API consitancy
 
369
 
 
370
    // Qt extension
 
371
    bool contains( const QString& name ) const;
 
372
 
 
373
private:
 
374
    QDomNamedNodeMapPrivate* impl;
 
375
    QDomNamedNodeMap( QDomNamedNodeMapPrivate* );
 
376
 
 
377
    friend class QDomNode;
 
378
    friend class QDomDocumentType;
 
379
    friend class QDomElement;
 
380
};
 
381
 
 
382
class QM_EXPORT_DOM QDomDocumentFragment : public QDomNode
 
383
{
 
384
public:
 
385
    QDomDocumentFragment();
 
386
    QDomDocumentFragment( const QDomDocumentFragment& x );
 
387
    QDomDocumentFragment& operator= ( const QDomDocumentFragment& );
 
388
    ~QDomDocumentFragment();
 
389
 
 
390
    // Reimplemented from QDomNode
 
391
    QDomNode::NodeType nodeType() const;
 
392
    bool isDocumentFragment() const;
 
393
 
 
394
private:
 
395
    QDomDocumentFragment( QDomDocumentFragmentPrivate* );
 
396
 
 
397
    friend class QDomDocument;
 
398
    friend class QDomNode;
 
399
};
 
400
 
 
401
class QM_EXPORT_DOM QDomCharacterData : public QDomNode
 
402
{
 
403
public:
 
404
    QDomCharacterData();
 
405
    QDomCharacterData( const QDomCharacterData& x );
 
406
    QDomCharacterData& operator= ( const QDomCharacterData& );
 
407
    ~QDomCharacterData();
 
408
 
 
409
    // DOM functions
 
410
    virtual QString substringData( unsigned long offset, unsigned long count );
 
411
    virtual void appendData( const QString& arg );
 
412
    virtual void insertData( unsigned long offset, const QString& arg );
 
413
    virtual void deleteData( unsigned long offset, unsigned long count );
 
414
    virtual void replaceData( unsigned long offset, unsigned long count, const QString& arg );
 
415
 
 
416
    // DOM read only attributes
 
417
    virtual uint length() const;
 
418
 
 
419
    // DOM attributes
 
420
    virtual QString data() const;
 
421
    virtual void setData( const QString& );
 
422
 
 
423
    // Reimplemented from QDomNode
 
424
    QDomNode::NodeType nodeType() const;
 
425
    bool isCharacterData() const;
 
426
 
 
427
private:
 
428
    QDomCharacterData( QDomCharacterDataPrivate* );
 
429
 
 
430
    friend class QDomDocument;
 
431
    friend class QDomText;
 
432
    friend class QDomComment;
 
433
    friend class QDomNode;
 
434
};
 
435
 
 
436
class QM_EXPORT_DOM QDomAttr : public QDomNode
 
437
{
 
438
public:
 
439
    QDomAttr();
 
440
    QDomAttr( const QDomAttr& x );
 
441
    QDomAttr& operator= ( const QDomAttr& );
 
442
    ~QDomAttr();
 
443
 
 
444
    // DOM read only attributes
 
445
    virtual QString name() const;
 
446
    virtual bool specified() const;
 
447
    virtual QDomElement ownerElement() const;
 
448
 
 
449
    // DOM attributes
 
450
    virtual QString value() const;
 
451
    virtual void setValue( const QString& );
 
452
 
 
453
    // Reimplemented from QDomNode
 
454
    QDomNode::NodeType nodeType() const;
 
455
    bool isAttr() const;
 
456
 
 
457
private:
 
458
    QDomAttr( QDomAttrPrivate* );
 
459
 
 
460
    friend class QDomDocument;
 
461
    friend class QDomElement;
 
462
    friend class QDomNode;
 
463
};
 
464
 
 
465
class QM_EXPORT_DOM QDomElement : public QDomNode
 
466
{
 
467
public:
 
468
    QDomElement();
 
469
    QDomElement( const QDomElement& x );
 
470
    QDomElement& operator= ( const QDomElement& );
 
471
    ~QDomElement();
 
472
 
 
473
    // DOM functions
 
474
    QString attribute( const QString& name, const QString& defValue = QString::null ) const;
 
475
    void setAttribute( const QString& name, const QString& value );
 
476
    void setAttribute( const QString& name, int value );
 
477
    void setAttribute( const QString& name, uint value );
 
478
    void setAttribute( const QString& name, long value );
 
479
    void setAttribute( const QString& name, ulong value );
 
480
    void setAttribute( const QString& name, double value );
 
481
    void removeAttribute( const QString& name );
 
482
    QDomAttr attributeNode( const QString& name);
 
483
    QDomAttr setAttributeNode( const QDomAttr& newAttr );
 
484
    QDomAttr removeAttributeNode( const QDomAttr& oldAttr );
 
485
    virtual QDomNodeList elementsByTagName( const QString& tagname ) const;
 
486
    bool hasAttribute( const QString& name ) const;
 
487
 
 
488
    QString attributeNS( const QString nsURI, const QString& localName, const QString& defValue ) const;
 
489
    void setAttributeNS( const QString nsURI, const QString& qName, const QString& value );
 
490
    void setAttributeNS( const QString nsURI, const QString& qName, int value );
 
491
    void setAttributeNS( const QString nsURI, const QString& qName, uint value );
 
492
    void setAttributeNS( const QString nsURI, const QString& qName, long value );
 
493
    void setAttributeNS( const QString nsURI, const QString& qName, ulong value );
 
494
    void setAttributeNS( const QString nsURI, const QString& qName, double value );
 
495
    void removeAttributeNS( const QString& nsURI, const QString& localName );
 
496
    QDomAttr attributeNodeNS( const QString& nsURI, const QString& localName );
 
497
    QDomAttr setAttributeNodeNS( const QDomAttr& newAttr );
 
498
    virtual QDomNodeList elementsByTagNameNS( const QString& nsURI, const QString& localName ) const;
 
499
    bool hasAttributeNS( const QString& nsURI, const QString& localName ) const;
 
500
 
 
501
    // DOM read only attributes
 
502
    QString tagName() const;
 
503
    void setTagName( const QString& name ); // Qt extension
 
504
 
 
505
    // Reimplemented from QDomNode
 
506
    QDomNamedNodeMap attributes() const;
 
507
    QDomNode::NodeType nodeType() const;
 
508
    bool isElement() const;
 
509
 
 
510
    QString text() const;
 
511
 
 
512
private:
 
513
    QDomElement( QDomElementPrivate* );
 
514
 
 
515
    friend class QDomDocument;
 
516
    friend class QDomNode;
 
517
    friend class QDomAttr;
 
518
};
 
519
 
 
520
class QM_EXPORT_DOM QDomText : public QDomCharacterData
 
521
{
 
522
public:
 
523
    QDomText();
 
524
    QDomText( const QDomText& x );
 
525
    QDomText& operator= ( const QDomText& );
 
526
    ~QDomText();
 
527
 
 
528
    // DOM functions
 
529
    QDomText splitText( int offset );
 
530
 
 
531
    // Reimplemented from QDomNode
 
532
    QDomNode::NodeType nodeType() const;
 
533
    bool isText() const;
 
534
 
 
535
private:
 
536
    QDomText( QDomTextPrivate* );
 
537
 
 
538
    friend class QDomCDATASection;
 
539
    friend class QDomDocument;
 
540
    friend class QDomNode;
 
541
};
 
542
 
 
543
class QM_EXPORT_DOM QDomComment : public QDomCharacterData
 
544
{
 
545
public:
 
546
    QDomComment();
 
547
    QDomComment( const QDomComment& x );
 
548
    QDomComment& operator= ( const QDomComment& );
 
549
    ~QDomComment();
 
550
 
 
551
    // Reimplemented from QDomNode
 
552
    QDomNode::NodeType nodeType() const;
 
553
    bool isComment() const;
 
554
 
 
555
private:
 
556
    QDomComment( QDomCommentPrivate* );
 
557
 
 
558
    friend class QDomDocument;
 
559
    friend class QDomNode;
 
560
};
 
561
 
 
562
class QM_EXPORT_DOM QDomCDATASection : public QDomText
 
563
{
 
564
public:
 
565
    QDomCDATASection();
 
566
    QDomCDATASection( const QDomCDATASection& x );
 
567
    QDomCDATASection& operator= ( const QDomCDATASection& );
 
568
    ~QDomCDATASection();
 
569
 
 
570
    // Reimplemented from QDomNode
 
571
    QDomNode::NodeType nodeType() const;
 
572
    bool isCDATASection() const;
 
573
 
 
574
private:
 
575
    QDomCDATASection( QDomCDATASectionPrivate* );
 
576
 
 
577
    friend class QDomDocument;
 
578
    friend class QDomNode;
 
579
};
 
580
 
 
581
class QM_EXPORT_DOM QDomNotation : public QDomNode
 
582
{
 
583
public:
 
584
    QDomNotation();
 
585
    QDomNotation( const QDomNotation& x );
 
586
    QDomNotation& operator= ( const QDomNotation& );
 
587
    ~QDomNotation();
 
588
 
 
589
    // DOM read only attributes
 
590
    QString publicId() const;
 
591
    QString systemId() const;
 
592
 
 
593
    // Reimplemented from QDomNode
 
594
    QDomNode::NodeType nodeType() const;
 
595
    bool isNotation() const;
 
596
 
 
597
private:
 
598
    QDomNotation( QDomNotationPrivate* );
 
599
 
 
600
    friend class QDomDocument;
 
601
    friend class QDomNode;
 
602
};
 
603
 
 
604
class QM_EXPORT_DOM QDomEntity : public QDomNode
 
605
{
 
606
public:
 
607
    QDomEntity();
 
608
    QDomEntity( const QDomEntity& x );
 
609
    QDomEntity& operator= ( const QDomEntity& );
 
610
    ~QDomEntity();
 
611
 
 
612
    // DOM read only attributes
 
613
    virtual QString publicId() const;
 
614
    virtual QString systemId() const;
 
615
    virtual QString notationName() const;
 
616
 
 
617
    // Reimplemented from QDomNode
 
618
    QDomNode::NodeType nodeType() const;
 
619
    bool isEntity() const;
 
620
 
 
621
private:
 
622
    QDomEntity( QDomEntityPrivate* );
 
623
 
 
624
    friend class QDomNode;
 
625
};
 
626
 
 
627
class QM_EXPORT_DOM QDomEntityReference : public QDomNode
 
628
{
 
629
public:
 
630
    QDomEntityReference();
 
631
    QDomEntityReference( const QDomEntityReference& x );
 
632
    QDomEntityReference& operator= ( const QDomEntityReference& );
 
633
    ~QDomEntityReference();
 
634
 
 
635
    // Reimplemented from QDomNode
 
636
    QDomNode::NodeType nodeType() const;
 
637
    bool isEntityReference() const;
 
638
 
 
639
private:
 
640
    QDomEntityReference( QDomEntityReferencePrivate* );
 
641
 
 
642
    friend class QDomDocument;
 
643
    friend class QDomNode;
 
644
};
 
645
 
 
646
class QM_EXPORT_DOM QDomProcessingInstruction : public QDomNode
 
647
{
 
648
public:
 
649
    QDomProcessingInstruction();
 
650
    QDomProcessingInstruction( const QDomProcessingInstruction& x );
 
651
    QDomProcessingInstruction& operator= ( const QDomProcessingInstruction& );
 
652
    ~QDomProcessingInstruction();
 
653
 
 
654
    // DOM read only attributes
 
655
    virtual QString target() const;
 
656
 
 
657
    // DOM attributes
 
658
    virtual QString data() const;
 
659
    virtual void setData( const QString& d );
 
660
 
 
661
    // Reimplemented from QDomNode
 
662
    QDomNode::NodeType nodeType() const;
 
663
    bool isProcessingInstruction() const;
 
664
 
 
665
private:
 
666
    QDomProcessingInstruction( QDomProcessingInstructionPrivate* );
 
667
 
 
668
    friend class QDomDocument;
 
669
    friend class QDomNode;
 
670
};
 
671
 
 
672
 
 
673
QM_EXPORT_DOM QTextStream& operator<<( QTextStream&, const QDomNode& );
 
674
 
 
675
} // namespace PsiXml
 
676
 
 
677
using namespace PsiXml;
 
678
 
 
679
#endif //QT_NO_DOM
 
680
#endif // QDOM_H