summaryrefslogtreecommitdiffstats
path: root/scribus/plugins/gettext/csvim/csvim.h
diff options
context:
space:
mode:
authorcraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
committercraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
commit7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch)
tree4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/plugins/gettext/csvim/csvim.h
downloadscribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/plugins/gettext/csvim/csvim.h')
-rw-r--r--scribus/plugins/gettext/csvim/csvim.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/scribus/plugins/gettext/csvim/csvim.h b/scribus/plugins/gettext/csvim/csvim.h
new file mode 100644
index 0000000..8ef7dff
--- /dev/null
+++ b/scribus/plugins/gettext/csvim/csvim.h
@@ -0,0 +1,58 @@
+/*
+For general Scribus (>=1.3.2) copyright and licensing information please refer
+to the COPYING file provided with the program. Following this notice may exist
+a copyright and/or license notice that predates the release of Scribus 1.3.2
+for which a new license (GPL+exception) is in place.
+*/
+#ifndef CSVIM_H
+#define CSVIM_H
+
+#include "pluginapi.h"
+#include "csvdia.h"
+#include <gtwriter.h>
+#include <gtparagraphstyle.h>
+#include <QByteArray>
+#include <QFile>
+#include <QFileInfo>
+#include <QString>
+#include <QStringList>
+#include <QTextCodec>
+
+extern "C" PLUGIN_API void GetText(QString filename, QString encoding, bool textOnly, gtWriter *writer);
+
+extern "C" PLUGIN_API QString FileFormatName();
+
+extern "C" PLUGIN_API QStringList FileExtensions();
+
+class CsvIm
+{
+public:
+ CsvIm(const QString& fname, const QString& enc, gtWriter *w, const QString& fdelim = ",",
+ const QString& vdelim = "\"", bool header = false, bool usevdelim = true);
+ ~CsvIm();
+ void setFieldDelimiter(const QString& fdelim);
+ void setValueDelimiter(const QString& vdelim);
+ void write();
+private:
+ QString fieldDelimiter;
+ QString valueDelimiter;
+ bool hasHeader;
+ bool useVDelim;
+ QString filename;
+ QString encoding;
+ gtWriter *writer;
+ QString header;
+ QString data;
+ int rowNumber;
+ int colIndex;
+ int colCount;
+ gtParagraphStyle *pstyleData;
+ gtParagraphStyle *pstyleHeader;
+ void loadFile();
+ void parseLine(const QString& line, bool isHeader);
+ QString toUnicode(const QByteArray& rawText);
+ void setupPStyles();
+ void setupTabulators();
+};
+
+#endif // CSVIM_H