Loading...
Searching...
No Matches
odsdocreader.h
Go to the documentation of this file.
/*
libodsstream is a library to read and write ODS documents as streams
Copyright (C) 2013 Olivier Langella <Olivier.Langella@moulon.inra.fr>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program 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 Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include <quazip.h>
#include "reader/odscell.h"
#include "odsdochandlerinterface.h"
class QXmlStreamReaderContentXml;
class OdsDocReader
{
friend QXmlStreamReaderContentXml;
public:
/**
* creates an ODS reader with a reader handler
*
* @Param OdsDocHandlerInterface & the interface to implement to read ODS
* files
*/
OdsDocReader(OdsDocHandlerInterface &handler);
virtual ~OdsDocReader();
void parse(QFile &odsFile);
void parse(QIODevice *p_inputstream);
private:
void setInsideCell(const OdsCell &cell);
void startInsideLine();
void startSheet(const QString &sheet_name);
void endSheet();
void startLine();
void endLine();
void setCell(const OdsCell &cell);
void endDocument();
QuaZip *_p_quaZip = nullptr;
uint _column_number;
OdsDocHandlerInterface &_handler;
};
OdsCell
Definition odscell.h:29
OdsDocHandlerInterface
Definition odsdochandlerinterface.h:43
OdsDocReader::_handler
OdsDocHandlerInterface & _handler
Definition odsdocreader.h:69
OdsDocReader::endLine
void endLine()
Definition odsdocreader.cpp:171
OdsDocReader::_p_quaZip
QuaZip * _p_quaZip
Definition odsdocreader.h:65
OdsDocReader::startInsideLine
void startInsideLine()
Definition odsdocreader.cpp:123
OdsDocReader::startSheet
void startSheet(const QString &sheet_name)
Definition odsdocreader.cpp:153
OdsDocReader::setCell
void setCell(const OdsCell &cell)
Definition odsdocreader.cpp:177
OdsDocReader::~OdsDocReader
virtual ~OdsDocReader()
Definition odsdocreader.cpp:32
OdsDocReader::parse
void parse(QFile &odsFile)
Definition odsdocreader.cpp:49
OdsDocReader::endDocument
void endDocument()
Definition odsdocreader.cpp:182
OdsDocReader::_column_number
uint _column_number
Definition odsdocreader.h:67
OdsDocReader::endSheet
void endSheet()
Definition odsdocreader.cpp:159
OdsDocReader::setInsideCell
void setInsideCell(const OdsCell &cell)
Definition odsdocreader.cpp:130
OdsDocReader::OdsDocReader
OdsDocReader(OdsDocHandlerInterface &handler)
Definition odsdocreader.cpp:28
OdsDocReader::QXmlStreamReaderContentXml
friend QXmlStreamReaderContentXml
Definition odsdocreader.h:31
OdsDocReader::startLine
void startLine()
Definition odsdocreader.cpp:165
QXmlStreamReaderContentXml
Definition qxmlstreamreadercontentxml.h:38
odscell.h
odsdochandlerinterface.h
interface to use as a wildcard to writer in either TSV, ODS TSVdirectory writers any kind of writer c...