Mercurial > clickerconvert
view src/converter.h @ 31:7bc75b1ff367
Removed tag 0.8
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Mon, 11 Apr 2016 13:37:37 +0200 |
parents | e5c5ebfa4205 |
children | 5354cbda7188 |
line wrap: on
line source
#ifndef CONVERTER_H #define CONVERTER_H /* Copyright (C) 2016 by ETH Zürich * Software engineering by Intevation GmbH * * This file is Free Software under the GNU GPL (v>=2) * and comes with ABSOLUTELY NO WARRANTY! * See LICENSE.txt for details. */ #include <QThread> #include <QString> #include <QStringList> #include <QTextStream> #include <QFile> #include "xlsxformat.h" /** @file Declaration of the Converter class. */ /** * @enum ConvertFormat * @brief Possible output format values. */ enum ConvertFormat { /*! XLSX (default). */ Format_XLSX, /*! PDF */ Format_PDF, /*! HTML */ Format_HTML, }; /** @brief Base class of Convert operations. * * Set up an instance of this using the ctor and according setters and * start it. */ class Converter : public QThread { Q_OBJECT public: /** Construct a new Converter object. * * If input is empty stdin is used. If output * is empty stdout is used. * * @param input input filename. * @param output output filename. * @param format the format of this. */ Converter(const QString &input, const QString &output, ConvertFormat fmt = Format_XLSX, const QString &title = QString()); /** Check for errors * * @returns Empty stringlist on success. Translated errors otherwise.*/ const QStringList & errors() {return mErrors;} protected: void convertToXSLX(QTextStream &instream, QFile &output); void run(); QString mInput, mOutput; ConvertFormat mFmt; QStringList mErrors; QString mTitle; QXlsx::Format mTitleFmt, mQuestionFmt, mAnswerChoiceFmt, mAnswerTextFmt, mFreeTextFmt, mChoiceTextFmt, mChoiceVotesFmt; QString mTitleStyle, mQuestionStyle, mAnswerChoiceStyle, mAnswerTextStyle, mFreeTextStyle, mChoiceTextStyle, mChoiceVotesStyle, mEmptyRow; }; #endif // CONVERTER_H