insilmaril@0: #ifndef EXPORTS_H insilmaril@0: #define EXPORTS_H insilmaril@0: insilmaril@0: #include insilmaril@0: #include insilmaril@0: #include insilmaril@0: insilmaril@0: #include "mapcenterobj.h" insilmaril@62: #include "settings.h" insilmaril@62: #include "vymmodel.h" insilmaril@0: insilmaril@0: insilmaril@62: /*! \brief Base class for all exports insilmaril@62: */ insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: insilmaril@62: class ExportBase insilmaril@0: { insilmaril@0: public: insilmaril@62: ExportBase(); insilmaril@62: virtual ~ExportBase(); insilmaril@62: virtual void setDir(const QDir&); insilmaril@62: virtual void setFile(const QString &); insilmaril@62: virtual QString getFile (); insilmaril@62: virtual void setModel (VymModel *m); insilmaril@62: virtual void setCaption(const QString &); insilmaril@62: virtual void addFilter (const QString &); insilmaril@62: virtual bool execDialog(); insilmaril@62: virtual bool canceled(); insilmaril@0: protected: insilmaril@62: VymModel *model; insilmaril@62: virtual QString getSectionString (BranchObj*); insilmaril@0: insilmaril@62: QDir tmpDir; insilmaril@62: QDir outDir; insilmaril@62: QString outputFile; insilmaril@0: QString indentPerDepth; insilmaril@62: QString caption; insilmaril@62: QString filter; insilmaril@62: bool cancelFlag; insilmaril@0: }; insilmaril@0: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportASCII:public ExportBase insilmaril@62: { insilmaril@62: public: insilmaril@62: ExportASCII(); insilmaril@62: virtual void doExport(); insilmaril@62: virtual QString underline (const QString &text, const QString &line); insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportCSV:public ExportBase insilmaril@62: { insilmaril@62: public: insilmaril@62: virtual void doExport(); insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportXMLBase:public ExportBase insilmaril@62: { insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportKDE3Bookmarks:public ExportXMLBase insilmaril@62: { insilmaril@62: public: insilmaril@62: virtual void doExport(); insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportKDE4Bookmarks:public ExportXMLBase insilmaril@62: { insilmaril@62: public: insilmaril@62: virtual void doExport(); insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportFirefoxBookmarks:public ExportXMLBase insilmaril@62: { insilmaril@62: public: insilmaril@62: virtual void doExport(); insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportTaskjuggler:public ExportXMLBase insilmaril@62: { insilmaril@62: public: insilmaril@62: virtual void doExport(); insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportLaTeX:public ExportBase insilmaril@62: { insilmaril@62: public: insilmaril@62: virtual void doExport(); insilmaril@62: }; insilmaril@62: insilmaril@62: /////////////////////////////////////////////////////////////////////// insilmaril@62: class ExportOO:public ExportBase insilmaril@62: { insilmaril@62: public: insilmaril@62: ExportOO(); insilmaril@62: ~ExportOO(); insilmaril@62: void exportPresentation(); insilmaril@62: bool setConfigFile (const QString &); insilmaril@62: private: insilmaril@62: QString buildList (BranchObj*); insilmaril@62: bool useSections; insilmaril@62: QString configFile; insilmaril@62: QString configDir; insilmaril@62: QString templateDir; insilmaril@62: QString content; insilmaril@62: QString contentTemplate; insilmaril@62: QString contentTemplateFile; insilmaril@62: QString contentFile; insilmaril@62: QString pageTemplate; insilmaril@62: QString pageTemplateFile; insilmaril@62: QString sectionTemplate; insilmaril@62: QString sectionTemplateFile; insilmaril@62: }; insilmaril@0: #endif