KissCount/src/model/import/XMLImportEngine.hpp

47 lines
1.4 KiB
C++

/*
Copyright 2010-2012 Grégory Soutadé
This file is part of KissCount.
KissCount 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 3 of the License, or
(at your option) any later version.
KissCount is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with KissCount. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef XMLIMPORTENGINE_H
#define XMLIMPORTENGINE_H
#include <QXmlDefaultHandler>
#include <QXmlAttributes>
#include "ImportEngine.hpp"
class XMLImportEngine : public ImportEngine, public QXmlDefaultHandler {
public:
XMLImportEngine();
~XMLImportEngine();
virtual bool HandleFile(const QString& path, User* user, Database* db, KissCount* kiss);
private:
QXmlSimpleReader _sax;
bool startElement (const QString& namespaceURI, const QString& localName, const QString& qName, const QXmlAttributes& atts);
void LoadAccount(const QXmlAttributes& atts);
void LoadAccountAmount(const QXmlAttributes& atts);
void LoadCategory(const QXmlAttributes& atts);
void LoadOperation(const QXmlAttributes& atts);
};
#endif