⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qxml.h

📁 奇趣公司比较新的qt/emd版本
💻 H
字号:
/******************************************************************************** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.**** This file is part of the QtXML module of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.0 as published by the Free Software Foundation** and appearing in the file LICENSE.GPL included in the packaging of** this file.  Please review the following information to ensure GNU** General Public Licensing requirements will be met:** http://trolltech.com/products/qt/licenses/licensing/opensource/**** If you are unsure which license is appropriate for your use, please** review the following information:** http://trolltech.com/products/qt/licenses/licensing/licensingoverview** or contact the sales department at sales@trolltech.com.**** In addition, as a special exception, Trolltech gives you certain** additional rights. These rights are described in the Trolltech GPL** Exception version 1.0, which can be found at** http://www.trolltech.com/products/qt/gplexception/ and in the file** GPL_EXCEPTION.txt in this package.**** In addition, as a special exception, Trolltech, as the sole copyright** holder for Qt Designer, grants users of the Qt/Eclipse Integration** plug-in the right for the Qt/Eclipse Integration to link to** functionality provided by Qt Designer and its related libraries.**** Trolltech reserves all rights not expressly granted herein.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#ifndef QXML_H#define QXML_H#include <QtCore/qtextstream.h>#include <QtCore/qfile.h>#include <QtCore/qstring.h>#include <QtCore/qstringlist.h>#include <QtCore/qlist.h>QT_BEGIN_HEADERQT_MODULE(Xml)class QXmlNamespaceSupport;class QXmlAttributes;class QXmlContentHandler;class QXmlDefaultHandler;class QXmlDTDHandler;class QXmlEntityResolver;class QXmlErrorHandler;class QXmlLexicalHandler;class QXmlDeclHandler;class QXmlInputSource;class QXmlLocator;class QXmlNamespaceSupport;class QXmlParseException;class QXmlReader;class QXmlSimpleReader;class QXmlSimpleReaderPrivate;class QXmlNamespaceSupportPrivate;class QXmlAttributesPrivate;class QXmlInputSourcePrivate;class QXmlParseExceptionPrivate;class QXmlLocatorPrivate;class QXmlDefaultHandlerPrivate;//// SAX Namespace Support//class Q_XML_EXPORT QXmlNamespaceSupport{public:    QXmlNamespaceSupport();    ~QXmlNamespaceSupport();    void setPrefix(const QString&, const QString&);    QString prefix(const QString&) const;    QString uri(const QString&) const;    void splitName(const QString&, QString&, QString&) const;    void processName(const QString&, bool, QString&, QString&) const;    QStringList prefixes() const;    QStringList prefixes(const QString&) const;    void pushContext();    void popContext();    void reset();private:    QXmlNamespaceSupportPrivate *d;    friend class QXmlSimpleReaderPrivate;    Q_DISABLE_COPY(QXmlNamespaceSupport)};//// SAX Attributes//class Q_XML_EXPORT QXmlAttributes{public:    QXmlAttributes() {}    virtual ~QXmlAttributes() {}    int index(const QString& qName) const;    int index(const QLatin1String& qName) const;    int index(const QString& uri, const QString& localPart) const;    int length() const;    int count() const;    QString localName(int index) const;    QString qName(int index) const;    QString uri(int index) const;    QString type(int index) const;    QString type(const QString& qName) const;    QString type(const QString& uri, const QString& localName) const;    QString value(int index) const;    QString value(const QString& qName) const;    QString value(const QLatin1String& qName) const;    QString value(const QString& uri, const QString& localName) const;    void clear();    void append(const QString &qName, const QString &uri, const QString &localPart, const QString &value);private:    struct Attribute {        QString qname, uri, localname, value;    };    typedef QList<Attribute> AttributeList;    AttributeList attList;    QXmlAttributesPrivate *d;};//// SAX Input Source//class Q_XML_EXPORT QXmlInputSource{public:    QXmlInputSource();    QXmlInputSource(QIODevice *dev);    virtual ~QXmlInputSource();    virtual void setData(const QString& dat);    virtual void setData(const QByteArray& dat);    virtual void fetchData();    virtual QString data() const;    virtual QChar next();    virtual void reset();    static const ushort EndOfData;    static const ushort EndOfDocument;#ifdef QT3_SUPPORT    QT3_SUPPORT_CONSTRUCTOR QXmlInputSource(QFile& file);    QT3_SUPPORT_CONSTRUCTOR QXmlInputSource(QTextStream& stream);#endifprotected:    virtual QString fromRawData(const QByteArray &data, bool beginning = false);private:    void init();    QXmlInputSourcePrivate *d;};//// SAX Exception Classes//class Q_XML_EXPORT QXmlParseException{public:    explicit QXmlParseException(const QString &name = QString(), int c = -1, int l = -1,                                const QString &p = QString(), const QString &s = QString());    ~QXmlParseException();    int columnNumber() const;    int lineNumber() const;    QString publicId() const;    QString systemId() const;    QString message() const;private:    QXmlParseExceptionPrivate *d;};//// XML Reader//class Q_XML_EXPORT QXmlReader{public:    virtual ~QXmlReader() {}    virtual bool feature(const QString& name, bool *ok = 0) const = 0;    virtual void setFeature(const QString& name, bool value) = 0;    virtual bool hasFeature(const QString& name) const = 0;    virtual void* property(const QString& name, bool *ok = 0) const = 0;    virtual void setProperty(const QString& name, void* value) = 0;    virtual bool hasProperty(const QString& name) const = 0;    virtual void setEntityResolver(QXmlEntityResolver* handler) = 0;    virtual QXmlEntityResolver* entityResolver() const = 0;    virtual void setDTDHandler(QXmlDTDHandler* handler) = 0;    virtual QXmlDTDHandler* DTDHandler() const = 0;    virtual void setContentHandler(QXmlContentHandler* handler) = 0;    virtual QXmlContentHandler* contentHandler() const = 0;    virtual void setErrorHandler(QXmlErrorHandler* handler) = 0;    virtual QXmlErrorHandler* errorHandler() const = 0;    virtual void setLexicalHandler(QXmlLexicalHandler* handler) = 0;    virtual QXmlLexicalHandler* lexicalHandler() const = 0;    virtual void setDeclHandler(QXmlDeclHandler* handler) = 0;    virtual QXmlDeclHandler* declHandler() const = 0;    virtual bool parse(const QXmlInputSource& input) = 0;    virtual bool parse(const QXmlInputSource* input) = 0;};class Q_XML_EXPORT QXmlSimpleReader : public QXmlReader{public:    QXmlSimpleReader();    virtual ~QXmlSimpleReader();    bool feature(const QString& name, bool *ok = 0) const;    void setFeature(const QString& name, bool value);    bool hasFeature(const QString& name) const;    void* property(const QString& name, bool *ok = 0) const;    void setProperty(const QString& name, void* value);    bool hasProperty(const QString& name) const;    void setEntityResolver(QXmlEntityResolver* handler);    QXmlEntityResolver* entityResolver() const;    void setDTDHandler(QXmlDTDHandler* handler);    QXmlDTDHandler* DTDHandler() const;    void setContentHandler(QXmlContentHandler* handler);    QXmlContentHandler* contentHandler() const;    void setErrorHandler(QXmlErrorHandler* handler);    QXmlErrorHandler* errorHandler() const;    void setLexicalHandler(QXmlLexicalHandler* handler);    QXmlLexicalHandler* lexicalHandler() const;    void setDeclHandler(QXmlDeclHandler* handler);    QXmlDeclHandler* declHandler() const;    bool parse(const QXmlInputSource& input);    bool parse(const QXmlInputSource* input);    virtual bool parse(const QXmlInputSource* input, bool incremental);    virtual bool parseContinue();private:    Q_DISABLE_COPY(QXmlSimpleReader)    Q_DECLARE_PRIVATE(QXmlSimpleReader)    QXmlSimpleReaderPrivate* d_ptr;    friend class QXmlSimpleReaderLocator;};//// SAX Locator//class Q_XML_EXPORT QXmlLocator{public:    QXmlLocator();    virtual ~QXmlLocator();    virtual int columnNumber() const = 0;    virtual int lineNumber() const = 0;//    QString getPublicId() const//    QString getSystemId() const};//// SAX handler classes//class Q_XML_EXPORT QXmlContentHandler{public:    virtual ~QXmlContentHandler() {}    virtual void setDocumentLocator(QXmlLocator* locator) = 0;    virtual bool startDocument() = 0;    virtual bool endDocument() = 0;    virtual bool startPrefixMapping(const QString& prefix, const QString& uri) = 0;    virtual bool endPrefixMapping(const QString& prefix) = 0;    virtual bool startElement(const QString& namespaceURI, const QString& localName, const QString& qName, const QXmlAttributes& atts) = 0;    virtual bool endElement(const QString& namespaceURI, const QString& localName, const QString& qName) = 0;    virtual bool characters(const QString& ch) = 0;    virtual bool ignorableWhitespace(const QString& ch) = 0;    virtual bool processingInstruction(const QString& target, const QString& data) = 0;    virtual bool skippedEntity(const QString& name) = 0;    virtual QString errorString() const = 0;};class Q_XML_EXPORT QXmlErrorHandler{public:    virtual ~QXmlErrorHandler() {}    virtual bool warning(const QXmlParseException& exception) = 0;    virtual bool error(const QXmlParseException& exception) = 0;    virtual bool fatalError(const QXmlParseException& exception) = 0;    virtual QString errorString() const = 0;};class Q_XML_EXPORT QXmlDTDHandler{public:    virtual ~QXmlDTDHandler() {}    virtual bool notationDecl(const QString& name, const QString& publicId, const QString& systemId) = 0;    virtual bool unparsedEntityDecl(const QString& name, const QString& publicId, const QString& systemId, const QString& notationName) = 0;    virtual QString errorString() const = 0;};class Q_XML_EXPORT QXmlEntityResolver{public:    virtual ~QXmlEntityResolver() {}    virtual bool resolveEntity(const QString& publicId, const QString& systemId, QXmlInputSource*& ret) = 0;    virtual QString errorString() const = 0;};class Q_XML_EXPORT QXmlLexicalHandler{public:    virtual ~QXmlLexicalHandler() {}    virtual bool startDTD(const QString& name, const QString& publicId, const QString& systemId) = 0;    virtual bool endDTD() = 0;    virtual bool startEntity(const QString& name) = 0;    virtual bool endEntity(const QString& name) = 0;    virtual bool startCDATA() = 0;    virtual bool endCDATA() = 0;    virtual bool comment(const QString& ch) = 0;    virtual QString errorString() const = 0;};class Q_XML_EXPORT QXmlDeclHandler{public:    virtual ~QXmlDeclHandler() {}    virtual bool attributeDecl(const QString& eName, const QString& aName, const QString& type, const QString& valueDefault, const QString& value) = 0;    virtual bool internalEntityDecl(const QString& name, const QString& value) = 0;    virtual bool externalEntityDecl(const QString& name, const QString& publicId, const QString& systemId) = 0;    virtual QString errorString() const = 0;    // ### Qt5: Conform to SAX by adding elementDecl};class Q_XML_EXPORT QXmlDefaultHandler : public QXmlContentHandler, public QXmlErrorHandler, public QXmlDTDHandler, public QXmlEntityResolver, public QXmlLexicalHandler, public QXmlDeclHandler{public:    QXmlDefaultHandler() { }    virtual ~QXmlDefaultHandler() { }    void setDocumentLocator(QXmlLocator* locator);    bool startDocument();    bool endDocument();    bool startPrefixMapping(const QString& prefix, const QString& uri);    bool endPrefixMapping(const QString& prefix);    bool startElement(const QString& namespaceURI, const QString& localName, const QString& qName, const QXmlAttributes& atts);    bool endElement(const QString& namespaceURI, const QString& localName, const QString& qName);    bool characters(const QString& ch);    bool ignorableWhitespace(const QString& ch);    bool processingInstruction(const QString& target, const QString& data);    bool skippedEntity(const QString& name);    bool warning(const QXmlParseException& exception);    bool error(const QXmlParseException& exception);    bool fatalError(const QXmlParseException& exception);    bool notationDecl(const QString& name, const QString& publicId, const QString& systemId);    bool unparsedEntityDecl(const QString& name, const QString& publicId, const QString& systemId, const QString& notationName);    bool resolveEntity(const QString& publicId, const QString& systemId, QXmlInputSource*& ret);    bool startDTD(const QString& name, const QString& publicId, const QString& systemId);    bool endDTD();    bool startEntity(const QString& name);    bool endEntity(const QString& name);    bool startCDATA();    bool endCDATA();    bool comment(const QString& ch);    bool attributeDecl(const QString& eName, const QString& aName, const QString& type, const QString& valueDefault, const QString& value);    bool internalEntityDecl(const QString& name, const QString& value);    bool externalEntityDecl(const QString& name, const QString& publicId, const QString& systemId);    QString errorString() const;private:    QXmlDefaultHandlerPrivate *d;    Q_DISABLE_COPY(QXmlDefaultHandler)};// inlinesinline int QXmlAttributes::count() const{ return length(); }QT_END_HEADER#endif // QXML_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -