lbajardsilogic@15: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ lbajardsilogic@15: lbajardsilogic@15: /* Sound Access lbajardsilogic@15: EASAIER client application. lbajardsilogic@15: Silogic 2007. Laure Bajard. lbajardsilogic@15: lbajardsilogic@15: This program is free software; you can redistribute it and/or lbajardsilogic@15: modify it under the terms of the GNU General Public License as lbajardsilogic@15: published by the Free Software Foundation; either version 2 of the lbajardsilogic@15: License, or (at your option) any later version. See the file lbajardsilogic@15: COPYING included with this distribution for more information. lbajardsilogic@15: */ lbajardsilogic@15: lbajardsilogic@15: #ifndef _QUERY_CONFIG_READER_H_ lbajardsilogic@15: #define _QUERY_CONFIG_READER_H_ lbajardsilogic@15: lbajardsilogic@15: #include lbajardsilogic@15: lbajardsilogic@15: class QueryModel; lbajardsilogic@15: lbajardsilogic@15: class QueryConfigReader lbajardsilogic@15: { lbajardsilogic@15: public: lbajardsilogic@15: QueryConfigReader(QueryModel * queryModel); lbajardsilogic@15: virtual ~QueryConfigReader(){} lbajardsilogic@15: lbajardsilogic@15: bool parse(const QString & filename); lbajardsilogic@15: lbajardsilogic@15: private: lbajardsilogic@15: lbajardsilogic@15: QueryModel *m_queryModel; lbajardsilogic@15: }; lbajardsilogic@15: lbajardsilogic@15: class QueryConfigHandler : public QXmlDefaultHandler lbajardsilogic@15: { lbajardsilogic@15: public: lbajardsilogic@15: QueryConfigHandler(QueryModel * queryModel); lbajardsilogic@15: lbajardsilogic@15: bool startElement(const QString &namespaceURI, const QString &localName, lbajardsilogic@15: const QString &qName, const QXmlAttributes &attributes); lbajardsilogic@15: bool endElement(const QString &namespaceURI, const QString &localName, lbajardsilogic@15: const QString &qName); lbajardsilogic@15: bool characters(const QString &str); lbajardsilogic@15: bool error(const QXmlParseException &exception); lbajardsilogic@15: bool fatalError(const QXmlParseException &exception); lbajardsilogic@15: lbajardsilogic@15: lbajardsilogic@15: private: lbajardsilogic@15: lbajardsilogic@15: bool m_inTheme; lbajardsilogic@15: bool m_inFieldGroup; lbajardsilogic@15: lbajardsilogic@15: QueryModel *m_queryModel; lbajardsilogic@15: }; lbajardsilogic@15: lbajardsilogic@15: #endif