EPUBPagedGenerator.h
Go to the documentation of this file.
00001 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
00002 /*
00003  * This file is part of the libepubgen project.
00004  *
00005  * This Source Code Form is subject to the terms of the Mozilla Public
00006  * License, v. 2.0. If a copy of the MPL was not distributed with this
00007  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
00008  */
00009 
00010 #ifndef INCLUDED_EPUBPAGEDGENERATOR_H
00011 #define INCLUDED_EPUBPAGEDGENERATOR_H
00012 
00013 #include <memory>
00014 
00015 #include <librevenge/librevenge.h>
00016 #include <librevenge-stream/librevenge-stream.h>
00017 
00018 namespace libepubgen
00019 {
00020 
00021 class EPUBPackage;
00022 class EPUBSplitGuard;
00023 
00024 class EPUBPagedGenerator: public librevenge::RVNGPresentationInterface
00025 {
00026   class Impl;
00027 
00028 public:
00029   EPUBPagedGenerator(EPUBPackage *package, int version);
00030 
00031   void setSplitMethod(EPUBSplitMethod split);
00032   void setSplitHeadingLevel(unsigned level);
00033   void setSplitSize(unsigned size);
00034 
00035   void startDocument(const librevenge::RVNGPropertyList &propList) override;
00036 
00037   void endDocument() override;
00038 
00039   void setDocumentMetaData(const librevenge::RVNGPropertyList &propList) override;
00040 
00041   void defineEmbeddedFont(const librevenge::RVNGPropertyList &propList) override;
00042 
00043   void startSlide(const librevenge::RVNGPropertyList &propList) override;
00044 
00045   void endSlide() override;
00046 
00047   void startMasterSlide(const librevenge::RVNGPropertyList &propList) override;
00048 
00049   void endMasterSlide() override;
00050 
00051   void setStyle(const librevenge::RVNGPropertyList &propList) override;
00052 
00053   void setSlideTransition(const librevenge::RVNGPropertyList &propList) override;
00054 
00055   void startLayer(const librevenge::RVNGPropertyList &propList) override;
00056 
00057   void endLayer() override;
00058 
00059   void startEmbeddedGraphics(const librevenge::RVNGPropertyList &propList) override;
00060 
00061   void endEmbeddedGraphics() override;
00062 
00063   void openGroup(const librevenge::RVNGPropertyList &propList) override;
00064 
00065   void closeGroup() override;
00066 
00067   void drawRectangle(const librevenge::RVNGPropertyList &propList) override;
00068 
00069   void drawEllipse(const librevenge::RVNGPropertyList &propList) override;
00070 
00071   void drawPolygon(const librevenge::RVNGPropertyList &propList) override;
00072 
00073   void drawPolyline(const librevenge::RVNGPropertyList &propList) override;
00074 
00075   void drawPath(const librevenge::RVNGPropertyList &propList) override;
00076 
00077   void drawGraphicObject(const librevenge::RVNGPropertyList &propList) override;
00078 
00079   void drawConnector(const librevenge::RVNGPropertyList &propList) override;
00080 
00081   void startTextObject(const librevenge::RVNGPropertyList &propList) override;
00082 
00083   void endTextObject() override;
00084 
00085   void insertTab() override;
00086 
00087   void insertSpace() override;
00088 
00089   void insertText(const librevenge::RVNGString &text) override;
00090 
00091   void insertLineBreak() override;
00092 
00093   void insertField(const librevenge::RVNGPropertyList &propList) override;
00094 
00095   void openOrderedListLevel(const librevenge::RVNGPropertyList &propList) override;
00096 
00097   void openUnorderedListLevel(const librevenge::RVNGPropertyList &propList) override;
00098 
00099   void closeOrderedListLevel() override;
00100 
00101   void closeUnorderedListLevel() override;
00102 
00103   void openListElement(const librevenge::RVNGPropertyList &propList) override;
00104 
00105   void closeListElement() override;
00106 
00107   void defineParagraphStyle(const librevenge::RVNGPropertyList &propList) override;
00108 
00109   void openParagraph(const librevenge::RVNGPropertyList &propList) override;
00110 
00111   void closeParagraph() override;
00112 
00113   void defineCharacterStyle(const librevenge::RVNGPropertyList &propList) override;
00114 
00115   void openSpan(const librevenge::RVNGPropertyList &propList) override;
00116 
00117   void closeSpan() override;
00118 
00119   void openLink(const librevenge::RVNGPropertyList &propList) override;
00120 
00121   void closeLink() override;
00122 
00123   void startTableObject(const librevenge::RVNGPropertyList &propList) override;
00124 
00125   void openTableRow(const librevenge::RVNGPropertyList &propList) override;
00126 
00127   void closeTableRow() override;
00128 
00129   void openTableCell(const librevenge::RVNGPropertyList &propList) override;
00130 
00131   void closeTableCell() override;
00132 
00133   void insertCoveredTableCell(const librevenge::RVNGPropertyList &propList) override;
00134 
00135   void endTableObject() override;
00136 
00137   void startComment(const librevenge::RVNGPropertyList &propList) override;
00138 
00139   void endComment() override;
00140 
00141   void startNotes(const librevenge::RVNGPropertyList &propList) override;
00142 
00143   void endNotes() override;
00144 
00145   void defineChartStyle(const librevenge::RVNGPropertyList &propList) override;
00146 
00147   void openChart(const librevenge::RVNGPropertyList &propList) override;
00148 
00149   void closeChart() override;
00150 
00151   void openChartTextObject(const librevenge::RVNGPropertyList &propList) override;
00152 
00153   void closeChartTextObject() override;
00154 
00155   void openChartPlotArea(const librevenge::RVNGPropertyList &propList) override;
00156 
00157   void closeChartPlotArea() override;
00158 
00159   void insertChartAxis(const librevenge::RVNGPropertyList &propList) override;
00160 
00161   void openChartSeries(const librevenge::RVNGPropertyList &propList) override;
00162 
00163   void closeChartSeries() override;
00164 
00165   void openAnimationSequence(const librevenge::RVNGPropertyList &propList) override;
00166 
00167   void closeAnimationSequence() override;
00168 
00169   void openAnimationGroup(const librevenge::RVNGPropertyList &propList) override;
00170 
00171   void closeAnimationGroup() override;
00172 
00173   void openAnimationIteration(const librevenge::RVNGPropertyList &propList) override;
00174 
00175   void closeAnimationIteration() override;
00176 
00177   void insertMotionAnimation(const librevenge::RVNGPropertyList &propList) override;
00178 
00179   void insertColorAnimation(const librevenge::RVNGPropertyList &propList) override;
00180 
00181   void insertAnimation(const librevenge::RVNGPropertyList &propList) override;
00182 
00183   void insertEffect(const librevenge::RVNGPropertyList &propList) override;
00184 
00185 private:
00186   std::shared_ptr<Impl> m_impl;
00187 };
00188 
00189 }
00190 
00191 #endif // INCLUDED_EPUBPAGEDGENERATOR_H
00192 
00193 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */