From 00bb99ac80741fc50ef8a289719373032f2391eb Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdeaccessibility@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- kmouth/phrasebook/phrasebookparser.h | 73 ++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 kmouth/phrasebook/phrasebookparser.h (limited to 'kmouth/phrasebook/phrasebookparser.h') diff --git a/kmouth/phrasebook/phrasebookparser.h b/kmouth/phrasebook/phrasebookparser.h new file mode 100644 index 0000000..a6e436a --- /dev/null +++ b/kmouth/phrasebook/phrasebookparser.h @@ -0,0 +1,73 @@ +/*************************************************************************** + phrasebookparser.h - description + ------------------- + begin : Don Sep 12 2002 + copyright : (C) 2002 by Gunnar Schmi Dt + email : kmouth@schmi-dt.de + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + +#ifndef PHRASEBOOKPARSER_H +#define PHRASEBOOKPARSER_H + +#include +#include +#include "phrasebook.h" + +/** + * This class implements a parser for both the phrase list and for phrase + * books. It is intended to be used together with the Qt SAX2 framework. + * @author Gunnar Schmi Dt + */ + +class PhraseBookParser : public QXmlDefaultHandler { +public: + PhraseBookParser(); + ~PhraseBookParser(); + + bool warning (const QXmlParseException &exception); + bool error (const QXmlParseException &exception); + bool fatalError (const QXmlParseException &exception); + QString errorString(); + + /** Processes the start of the document. */ + bool startDocument(); + + /** Processes the start tag of an element. */ + bool startElement (const QString &, const QString &, const QString &name, + const QXmlAttributes &attributes); + + /** Processes a chunk of normal character data. */ + bool characters (const QString &ch); + + /** Processes whitespace. */ + bool ignorableWhitespace (const QString &ch); + + /** Processes the end tag of an element. */ + bool endElement (const QString &, const QString &, const QString &name); + + /** Processes the end of the document. */ + bool endDocument(); + + /** returns a list of phrase book entries */ + PhraseBookEntryList getPhraseList(); + +private: + bool isInPhrase; + bool starting; + int offset; + Phrase phrase; + + PhraseBookEntryList list; + int level; +}; + +#endif -- cgit v1.2.1