Canorus 0.0
typesetctl.h
Go to the documentation of this file.
1
8#ifndef _TYPESET_CTL_H_
9#define _TYPESET_CTL_H_
10
11// Includes
12#include <QObject>
13#include <QVariant>
14#include <QVector>
15#include <QStringList>
16#include <QTemporaryFile>
17
18// Forward declarations
19class CAExternProgram;
20class CAExport;
21class CADocument;
22class CASheet;
23
24class CATypesetCtl : public QObject
25{
26 Q_OBJECT
27
28public:
31
32 void setTypesetter( const QString &roProgramName, const QString &roProgramPath = "" );
33 void setPS2PDF( const QString &roProgrammName, const QString &roProgramPath = "",
34 const QStringList &roParams = (QStringList() << QString("") ) );
35 virtual void setExpOption( const QVariant &roName, const QVariant &roValue );
36 virtual void setTSetOption( const QVariant &roName, const QVariant &roValue, bool bSpace = false, bool bShortParam = true );
37 inline void setPDFConversion( bool bConversion ) { _bPDFConversion = bConversion; }
38 inline void setExporter( CAExport *poExport ) { _poExport = poExport ; }
39 // Attention: .pdf automatically added and removed if it was added internally
40 void exportDocument( CADocument *poDoc );
41 void exportSheet( CASheet *poSheet );
42 void runTypesetter();
43
44 inline bool getPDFConversion() { return _bPDFConversion; }
45 inline CAExport *getExporter() { return _poExport; }
46 inline QString getTempFilePath() { return _oOutputFileName; }
47 bool waitForFinished ( int iMSecs );
48
49signals:
50 void nextOutput( const QByteArray &roData );
51 void nextStep();
52 void typesetterFinished( int iExitCode );
53
54protected slots:
55 void rcvTypesetterOutput( const QByteArray &roData );
56 void typsetterExited( int iExitCode );
57
58protected:
59 bool createPDF();
60
61 CAExternProgram *_poTypesetter; // Transforms exported file to pdf / postscript
62 CAExternProgram *_poConvPS2PDF; // Transforms postscripts files to pdf if needed
63 CAExport *_poExport; // Transforms canorus document to typesetter format
64 QVector<QVariant> _oExpOptList; // List of options for export
65 QVector<QVariant> _oTSetOptList; // List of options for typesetter
66 QTemporaryFile *_poOutputFile; // Output file for pdf (also used for exported file)
67 QString _oOutputFileName; // Output file name for pdf (temporary file deletes it on close)
68 bool _bPDFConversion; // Do a conversion from postscript to pdf
69 bool _bOutputFileNameFirst; // File name as first parameter ? (Default: No)
70};
71
72#endif // _TYPESET_CTL_H_
73
Class which represents the current document.
Definition: document.h:19
Base class for export filters.
Definition: export.h:22
Start a program as extern background process.
Definition: externprogram.h:23
Represents a single sheet of paper in the document.
Definition: sheet.h:22
Interface to start a typesetter in the background.
Definition: typesetctl.h:25
bool _bOutputFileNameFirst
Definition: typesetctl.h:69
~CATypesetCtl()
Definition: typesetctl.cpp:38
void typesetterFinished(int iExitCode)
void exportSheet(CASheet *poSheet)
Definition: typesetctl.cpp:196
CAExport * _poExport
Definition: typesetctl.h:63
void setPDFConversion(bool bConversion)
Definition: typesetctl.h:37
CAExternProgram * _poTypesetter
Definition: typesetctl.h:61
void nextOutput(const QByteArray &roData)
void nextStep()
void runTypesetter()
Definition: typesetctl.cpp:234
void setTypesetter(const QString &roProgramName, const QString &roProgramPath="")
Definition: typesetctl.cpp:61
QString getTempFilePath()
Definition: typesetctl.h:46
QString _oOutputFileName
Definition: typesetctl.h:67
virtual void setTSetOption(const QVariant &roName, const QVariant &roValue, bool bSpace=false, bool bShortParam=true)
Definition: typesetctl.cpp:129
void exportDocument(CADocument *poDoc)
Definition: typesetctl.cpp:158
bool getPDFConversion()
Definition: typesetctl.h:44
virtual void setExpOption(const QVariant &roName, const QVariant &roValue)
Definition: typesetctl.cpp:105
CAExternProgram * _poConvPS2PDF
Definition: typesetctl.h:62
bool waitForFinished(int iMSecs)
Definition: typesetctl.cpp:273
QVector< QVariant > _oExpOptList
Definition: typesetctl.h:64
QVector< QVariant > _oTSetOptList
Definition: typesetctl.h:65
bool createPDF()
Definition: typesetctl.cpp:249
void typsetterExited(int iExitCode)
Definition: typesetctl.cpp:289
CAExport * getExporter()
Definition: typesetctl.h:45
CATypesetCtl()
Definition: typesetctl.cpp:25
void setExporter(CAExport *poExport)
Definition: typesetctl.h:38
void setPS2PDF(const QString &roProgrammName, const QString &roProgramPath="", const QStringList &roParams=(QStringList()<< QString("")))
Definition: typesetctl.cpp:82
QTemporaryFile * _poOutputFile
Definition: typesetctl.h:66
bool _bPDFConversion
Definition: typesetctl.h:68
void rcvTypesetterOutput(const QByteArray &roData)
Definition: typesetctl.cpp:261