Описание класса QXmlDefaultHandlerКласс QXmlDefaultHandler обеспечивает реализацию по умолчанию всех классов-обработчиков XML. Далее... #include <QXmlDefaultHandler> Унаследован от: QXmlContentHandler, QXmlErrorHandler, QXmlDTDHandler, QXmlEntityResolver, QXmlLexicalHandler и QXmlDeclHandler. Замечание: Все функции в этом классе реентерабельны. Открытые функции
Переопределённые открытые функции
Подробное описаниеКласс QXmlDefaultHandler обеспечивает реализацию по умолчанию всех классов-обработчиков XML. Этот класс объединяет черты специализированных классов обработки, что делает его удобным отправным пунктом при реализации пользовательских обработчиков для подклассов QXmlReader, в частности, QXmlSimpleReader. Виртуальные функции каждого из базовых классов переопределены в этом классе, обеспечивая разумное поведение по умолчанию для многих случаев. Наследуя от этого класса и перегружая его функции, вы можете сконцентрироваться на изменении поведения тех частей обработчика, которые вам необходимы. Читатель XML должен сообщать обработчику о событиях, которые случаются в процессе анализа. Это означает, что, хоть QXmlDefaultHandler и обеспечивает реализации по умолчанию для унаследованных от всех базовых классов функций, мы можем использовать специализированные обработчики для отдельных видов событий. Например, QXmlDefaultHandler наследует от QXmlContentHandler и QXmlErrorHandler, и мы можем использовать одинаковые обработчики для обоих функций чтения: xmlReader.setContentHandler(handler); xmlReader.setErrorHandler(handler); Поскольку читатель будет информировать обработчик об ошибках чтения, необходимо переопределить QXmlErrorHandler::fatalError(), если, например, мы хотим останавливать анализ при возникновении ошибок: bool Handler::fatalError (const QXmlParseException & exception) { qWarning() << "Fatal error on line" << exception.lineNumber() << ", column" << exception.columnNumber() << ":" << exception.message(); return false; } Функция выше возвращает false, что приводит к остановке анализа. Чтобы продолжать использовать тот же читатель, необходимо создать новый обработчик и установить читатель описанным выше способом. Это полезно при изучении функций, унаследованных от QXmlDefaultHandler, а также при рассмотрении вопроса, почему они могут быть переопределены в пользовательском обработчике. Свои обработчики будут обычно переопределять QXmlContentHandler::startDocument() для подготовки обработчика к новому содержимому. Обработка элементов документа и текста в них может быть переопределена с помощью QXmlContentHandler::startElement(), QXmlContentHandler::endElement() и QXmlContentHandler::characters(). Вы можете захотеть переопределить QXmlContentHandler::endDocument() для совершения некоторых действий по завершению или для проверки содержимого после окончания чтения. Смотрите также QXmlDTDHandler, QXmlDeclHandler, QXmlContentHandler, QXmlEntityResolver, QXmlErrorHandler, QXmlLexicalHandler и Введение в SAX2. Описание функций-членовQXmlDefaultHandler::QXmlDefaultHandler ()Создаёт обработчик для использования в подклассах QXmlReader. QXmlDefaultHandler::~QXmlDefaultHandler () [virtual]Уничтожает обработчик. bool QXmlDefaultHandler::attributeDecl ( const QString & eName, const QString & aName, const QString & type, const QString & valueDefault, const QString & value ) [virtual]Переопределено из QXmlDeclHandler::attributeDecl(). Это переопределение ничего не делает. bool QXmlDefaultHandler::characters ( const QString & ch ) [virtual]Переопределено из QXmlContentHandler::characters(). Это переопределение ничего не делает. bool QXmlDefaultHandler::comment ( const QString & ch ) [virtual]Переопределено из QXmlLexicalHandler::comment(). Это переопределение ничего не делает. bool QXmlDefaultHandler::endCDATA () [virtual]Переопределено из QXmlLexicalHandler::endCDATA(). Это переопределение ничего не делает. bool QXmlDefaultHandler::endDTD () [virtual]Переопределено из QXmlLexicalHandler::endDTD(). Это переопределение ничего не делает. bool QXmlDefaultHandler::endDocument () [virtual]Переопределено из QXmlContentHandler::endDocument(). Это переопределение ничего не делает. bool QXmlDefaultHandler::endElement ( const QString & namespaceURI, const QString & localName, const QString & qName ) [virtual]Переопределено из QXmlContentHandler::endElement(). Это переопределение ничего не делает. bool QXmlDefaultHandler::endEntity ( const QString & name ) [virtual]Переопределено из QXmlLexicalHandler::endEntity(). Это переопределение ничего не делает. bool QXmlDefaultHandler::endPrefixMapping ( const QString & prefix ) [virtual]Переопределено из QXmlContentHandler::endPrefixMapping(). Это переопределение ничего не делает. bool QXmlDefaultHandler::error ( const QXmlParseException & exception ) [virtual]Переопределено из QXmlErrorHandler::error(). Это переопределение ничего не делает. QString QXmlDefaultHandler::errorString () const [virtual]Переопределено из QXmlContentHandler::errorString(). Возвращает по умолчанию строку с ошибкой. bool QXmlDefaultHandler::externalEntityDecl ( const QString & name, const QString & publicId, const QString & systemId ) [virtual]Переопределено из QXmlDeclHandler::externalEntityDecl(). Это переопределение ничего не делает. bool QXmlDefaultHandler::fatalError ( const QXmlParseException & exception ) [virtual]Переопределено из QXmlErrorHandler::fatalError(). Это переопределение ничего не делает. bool QXmlDefaultHandler::ignorableWhitespace ( const QString & ch ) [virtual]Переопределено из QXmlContentHandler::ignorableWhitespace(). Это переопределение ничего не делает. bool QXmlDefaultHandler::internalEntityDecl ( const QString & name, const QString & value ) [virtual]Переопределено из QXmlDeclHandler::internalEntityDecl(). Это переопределение ничего не делает. bool QXmlDefaultHandler::notationDecl ( const QString & name, const QString & publicId, const QString & systemId ) [virtual]Переопределено из QXmlDTDHandler::notationDecl(). Это переопределение ничего не делает. bool QXmlDefaultHandler::processingInstruction ( const QString & target, const QString & data ) [virtual]Переопределено из QXmlContentHandler::processingInstruction(). Это переопределение ничего не делает. bool QXmlDefaultHandler::resolveEntity ( const QString & publicId, const QString & systemId, QXmlInputSource *& ret ) [virtual]Переопределено из QXmlEntityResolver::resolveEntity(). Установите ret равным 0, чтобы читатель использовал системный идентификатор, предоставленный в XML-документе. void QXmlDefaultHandler::setDocumentLocator ( QXmlLocator * locator ) [virtual]Переопределено из QXmlContentHandler::setDocumentLocator(). Это переопределение ничего не делает. bool QXmlDefaultHandler::skippedEntity ( const QString & name ) [virtual]Переопределено из QXmlContentHandler::skippedEntity(). Это переопределение ничего не делает. bool QXmlDefaultHandler::startCDATA () [virtual]Переопределено из QXmlLexicalHandler::startCDATA(). Это переопределение ничего не делает. bool QXmlDefaultHandler::startDTD ( const QString & name, const QString & publicId, const QString & systemId ) [virtual]Переопределено из QXmlLexicalHandler::startDTD(). Это переопределение ничего не делает. bool QXmlDefaultHandler::startDocument () [virtual]Переопределено из QXmlContentHandler::startDocument(). Это переопределение ничего не делает. bool QXmlDefaultHandler::startElement ( const QString & namespaceURI, const QString & localName, const QString & qName, const QXmlAttributes & atts ) [virtual]Переопределено из QXmlContentHandler::startElement(). Это переопределение ничего не делает. bool QXmlDefaultHandler::startEntity ( const QString & name ) [virtual]Переопределено из QXmlLexicalHandler::startEntity(). Это переопределение ничего не делает. bool QXmlDefaultHandler::startPrefixMapping ( const QString & prefix, const QString & uri ) [virtual]Переопределено из QXmlContentHandler::startPrefixMapping(). Это переопределение ничего не делает. bool QXmlDefaultHandler::unparsedEntityDecl ( const QString & name, const QString & publicId, const QString & systemId, const QString & notationName ) [virtual]Переопределено из QXmlDTDHandler::unparsedEntityDecl(). Это переопределение ничего не делает. bool QXmlDefaultHandler::warning ( const QXmlParseException & exception ) [virtual]Переопределено из QXmlErrorHandler::warning(). Это переопределение ничего не делает. |
Попытка перевода Qt документации. Если есть желание присоединиться, или если есть замечания или пожелания, то заходите на форум: Перевод Qt документации на русский язык... Люди внесшие вклад в перевод: Команда переводчиков |