10 #ifndef IWORKCOLLECTOR_H_INCLUDED 11 #define IWORKCOLLECTOR_H_INCLUDED 17 #include <boost/optional.hpp> 18 #include <boost/shared_ptr.hpp> 33 class IWORKDocumentInterface;
34 class IWORKLanguageManager;
35 class IWORKPropertyMap;
57 void setRecorder(
const boost::shared_ptr<IWORKRecorder> &recorder);
89 void collectTable(
const boost::shared_ptr<IWORKTable> &table);
128 virtual void drawMedia(
double x,
double y,
double w,
double h,
const std::string &mimetype,
const librevenge::RVNGBinaryData &
data) = 0;
164 #endif // IWORKCOLLECTOR_H_INCLUDED boost::shared_ptr< IWORKStylesheet > IWORKStylesheetPtr_t
Definition: IWORKStylesheet.h:19
void collectText(const boost::shared_ptr< IWORKText > &text)
Definition: IWORKCollector.cpp:592
Definition: IWORKBezierElement.cpp:18
std::stack< IWORKStylesheetPtr_t > m_stylesheetStack
Definition: IWORKCollector.h:138
IWORKMediaContentPtr_t m_currentFiltered
Definition: IWORKCollector.h:153
Definition: IWORKToken.h:216
boost::shared_ptr< IWORKMediaContent > IWORKMediaContentPtr_t
Definition: IWORKTypes_fwd.h:53
IWORKCollector(IWORKDocumentInterface *document)
Definition: IWORKCollector.cpp:318
Definition: IWORKToken.h:257
Represents a hierarchical style.
Definition: IWORKStyle.h:28
void collectGeometry(const IWORKGeometryPtr_t &geometry)
Definition: IWORKCollector.cpp:375
IWORKMediaContentPtr_t m_currentLeveled
Definition: IWORKCollector.h:154
Definition: IWORKToken.h:192
double y
Definition: IWORKShape.cpp:43
A manager for output elements.
Definition: IWORKOutputManager.h:29
boost::shared_ptr< IWORKStyle > IWORKStylePtr_t
Definition: IWORKStyle_fwd.h:21
boost::shared_ptr< IWORKShape > IWORKShapePtr_t
Definition: IWORKShape.h:36
Definition: IWORKToken.h:176
IWORKStylePtr_t m_graphicStyle
Definition: IWORKCollector.h:47
Definition: IWORKToken.h:88
Representation of a dynamic inheritance of styles.
Definition: IWORKStyleStack.h:34
IWORKMediaContentPtr_t m_currentContent
Definition: IWORKCollector.h:155
void popStylesheet()
Definition: IWORKCollector.cpp:706
void setRecorder(const boost::shared_ptr< IWORKRecorder > &recorder)
Definition: IWORKCollector.cpp:343
Definition: IWORKToken.h:239
virtual void drawTextBox(const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox)=0
Definition: IWORKToken.h:154
void collectBezier(const IWORKPathPtr_t &path)
Definition: IWORKCollector.cpp:389
void startGroup()
Definition: IWORKCollector.cpp:620
void collectStarPath(const IWORKSize &size, unsigned points, double innerRadius)
Definition: IWORKCollector.cpp:499
boost::shared_ptr< IWORKText > m_currentText
Definition: IWORKCollector.h:144
Definition: IWORKToken.h:312
void drawMedia(const IWORKMediaPtr_t &media)
Definition: IWORKCollector.cpp:757
void collectStyle(const IWORKStylePtr_t &style)
Definition: IWORKCollector.cpp:348
Definition: IWORKCollector.h:44
boost::shared_ptr< IWORKGeometry > IWORKGeometryPtr_t
Definition: IWORKTypes_fwd.h:40
Definition: IWORKTypes.h:37
void resolveStyle(IWORKStyle &style)
Definition: IWORKCollector.cpp:719
virtual boost::shared_ptr< IWORKText > createText(const IWORKLanguageManager &langManager, bool discardEmptyContent=false) const
Definition: IWORKCollector.cpp:649
boost::shared_ptr< IWORKImage > IWORKImagePtr_t
Definition: IWORKTypes_fwd.h:58
Definition: IWORKToken.h:270
void popStyle()
Definition: IWORKCollector.cpp:690
void collectFooter(const std::string &name)
Definition: IWORKCollector.cpp:573
void collectHeaderFooter(const std::string &name, IWORKHeaderFooterMap_t &map)
Definition: IWORKCollector.cpp:725
Definition: IWORKDocumentInterface.h:18
double x
Definition: IWORKShape.cpp:42
virtual void drawTable()=0
void setGraphicStyle(const IWORKStylePtr_t &style)
Definition: IWORKCollector.cpp:360
void collectMetadata(const IWORKMetadata &metadata)
Definition: IWORKCollector.cpp:563
IWORKHeaderFooterMap_t m_headers
Definition: IWORKCollector.h:146
~IWORKCollector()
Definition: IWORKCollector.cpp:333
virtual boost::shared_ptr< IWORKTable > createTable(const IWORKTableNameMapPtr_t &tableNameMap) const
Definition: IWORKCollector.cpp:644
void collectImage(const IWORKImagePtr_t &image)
Definition: IWORKCollector.cpp:397
Definition: IWORKToken.h:254
IWORKGeometryPtr_t m_geometry
Definition: IWORKCollector.h:46
void startDocument()
Definition: IWORKCollector.cpp:604
void endDocument()
Definition: IWORKCollector.cpp:609
boost::shared_ptr< IWORKPath > IWORKPathPtr_t
Definition: IWORKPath_fwd.h:20
IWORKPathPtr_t m_currentPath
Definition: IWORKCollector.h:150
Definition: IWORKCollector.h:41
void collectHeader(const std::string &name)
Definition: IWORKCollector.cpp:568
void collectConnectionPath(const IWORKSize &size, double middleX, double middleY)
Definition: IWORKCollector.cpp:508
std::stack< Level > m_levelStack
Definition: IWORKCollector.h:136
const char * name
Definition: IWORKToken.cpp:43
boost::shared_ptr< IWORKTable > m_currentTable
Definition: IWORKCollector.h:143
void collectStylesheet(const IWORKStylesheetPtr_t &stylesheet)
Definition: IWORKCollector.cpp:551
boost::shared_ptr< IWORKData > IWORKDataPtr_t
Definition: IWORKTypes_fwd.h:48
boost::shared_ptr< IWORKRecorder > m_recorder
Definition: IWORKCollector.h:134
Definition: IWORKToken.h:240
void collectBezierPath()
Definition: IWORKCollector.cpp:463
std::deque< IWORKStylePtr_t > m_newStyles
Definition: IWORKCollector.h:141
IWORKDocumentInterface * m_document
Definition: IWORKCollector.h:133
static void writeFill(const IWORKFill &fill, librevenge::RVNGPropertyList &props)
Definition: IWORKCollector.cpp:822
boost::variant< IWORKColor, IWORKGradient, IWORKFillImage > IWORKFill
Definition: IWORKTypes.h:243
void collectMedia(const IWORKMediaContentPtr_t &content)
Definition: IWORKCollector.cpp:530
Level()
Definition: IWORKCollector.cpp:311
virtual void fillShapeProperties(librevenge::RVNGPropertyList &props)=0
IWORKOutputManager & getOutputManager()
Definition: IWORKCollector.cpp:752
Definition: IWORKToken.h:354
void drawShape(const IWORKShapePtr_t &shape)
Definition: IWORKCollector.cpp:793
IWORKMediaContentPtr_t m_currentUnfiltered
Definition: IWORKCollector.h:152
Definition: IWORKToken.h:139
void startLevel()
Definition: IWORKCollector.cpp:654
boost::shared_ptr< IWORKTableNameMap_t > IWORKTableNameMapPtr_t
Definition: IWORKTypes_fwd.h:33
glm::dmat3 m_trafo
Definition: IWORKCollector.h:48
void collectArrowPath(const IWORKSize &size, double headWidth, double stemRelYPos, bool doubleSided)
Definition: IWORKCollector.cpp:486
void endLevel()
Definition: IWORKCollector.cpp:671
Definition: KEY1Token.h:156
boost::unordered_map< std::string, IWORKOutputElements > IWORKHeaderFooterMap_t
Definition: IWORKTypes.h:33
Definition: IWORKToken.h:95
void endGroup()
Definition: IWORKCollector.cpp:631
boost::shared_ptr< IWORKMedia > IWORKMediaPtr_t
Definition: IWORKTypes_fwd.h:63
Definition: IWORKLanguageManager.h:24
IWORKOutputManager m_outputManager
Definition: IWORKCollector.h:139
Definition: NUM1Token.h:34
IWORKHeaderFooterMap_t m_footers
Definition: IWORKCollector.h:147
Definition: IWORKToken.h:252
void collectCalloutPath(const IWORKSize &size, double radius, double tailSize, double tailX, double tailY, bool quoteBubble)
Definition: IWORKCollector.cpp:517
IWORKMetadata m_metadata
Definition: IWORKCollector.h:157
void fillMetadata(librevenge::RVNGPropertyList &props)
Definition: IWORKCollector.cpp:740
void collectLine(const IWORKLinePtr_t &line)
Definition: IWORKCollector.cpp:413
void collectShape()
Definition: IWORKCollector.cpp:429
boost::shared_ptr< IWORKLine > IWORKLinePtr_t
Definition: IWORKTypes_fwd.h:44
IWORKStyleStack m_styleStack
Definition: IWORKCollector.h:137
void pushStyle()
Definition: IWORKCollector.cpp:685
int m_groupLevel
Definition: IWORKCollector.h:159
boost::shared_ptr< IWORKText > IWORKTextPtr_t
Definition: IWORKText_fwd.h:18
void collectPolygonPath(const IWORKSize &size, unsigned edges)
Definition: IWORKCollector.cpp:468
void collectTable(const boost::shared_ptr< IWORKTable > &table)
Definition: IWORKCollector.cpp:578
void pushStylesheet(const IWORKStylesheetPtr_t &stylesheet)
Definition: IWORKCollector.cpp:695
Definition: IWORKToken.h:194
Definition: IWORKToken.h:347
void collectRoundedRectanglePath(const IWORKSize &size, double radius)
Definition: IWORKCollector.cpp:477
Definition: IWORKToken.h:108
IWORKDataPtr_t m_currentData
Definition: IWORKCollector.h:151