10 #ifndef IWORKCOLLECTOR_H_INCLUDED
11 #define IWORKCOLLECTOR_H_INCLUDED
17 #include <boost/optional.hpp>
19 #include <glm/glm.hpp>
36 class IWORKDocumentInterface;
37 class IWORKPropertyMap;
111 void startText(
bool discardEmptyContent =
false);
138 virtual void drawMedia(
double x,
double y,
double w,
double h,
const std::string &mimetype,
const librevenge::RVNGBinaryData &
data) = 0;
173 #endif // IWORKCOLLECTOR_H_INCLUDED
boost::shared_ptr< IWORKStylesheet > IWORKStylesheetPtr_t
Definition: IWORKStylesheet.h:19
std::stack< IWORKStylesheetPtr_t > m_stylesheetStack
Definition: IWORKCollector.h:147
IWORKMediaContentPtr_t m_currentFiltered
Definition: IWORKCollector.h:162
boost::shared_ptr< IWORKMediaContent > IWORKMediaContentPtr_t
Definition: IWORKTypes_fwd.h:46
IWORKCollector(IWORKDocumentInterface *document)
Definition: IWORKCollector.cpp:185
Represents a hierarchical style.
Definition: IWORKStyle.h:28
void collectGeometry(const IWORKGeometryPtr_t &geometry)
Definition: IWORKCollector.cpp:224
IWORKMediaContentPtr_t m_currentLeveled
Definition: IWORKCollector.h:163
double y
Definition: IWORKShape.cpp:43
void startText(bool discardEmptyContent=false)
Definition: IWORKCollector.cpp:528
A manager for output elements.
Definition: IWORKOutputManager.h:29
Definition: IWORKToken.h:122
boost::shared_ptr< IWORKStyle > IWORKStylePtr_t
Definition: IWORKStyle_fwd.h:21
boost::shared_ptr< IWORKShape > IWORKShapePtr_t
Definition: IWORKShape.h:36
void collectTable()
Definition: IWORKCollector.cpp:416
IWORKStylePtr_t m_graphicStyle
Definition: IWORKCollector.h:46
Representation of a dynamic inheritance of styles.
Definition: IWORKStyleStack.h:34
void collectTableBorders(const IWORKGridLineList_t &verticalLines, const IWORKGridLineList_t &horizontalLines)
Definition: IWORKCollector.cpp:377
IWORKMediaContentPtr_t m_currentContent
Definition: IWORKCollector.h:164
void collectTableRow()
Definition: IWORKCollector.cpp:411
void popStylesheet()
Definition: IWORKCollector.cpp:574
virtual void drawTextBox(const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox)=0
void collectBezier(const IWORKPathPtr_t &path)
Definition: IWORKCollector.cpp:232
void startGroup()
Definition: IWORKCollector.cpp:452
void collectStarPath(const IWORKSize &size, unsigned points, double innerRadius)
Definition: IWORKCollector.cpp:309
void drawMedia(const IWORKMediaPtr_t &media)
Definition: IWORKCollector.cpp:619
void collectStyle(const IWORKStylePtr_t &style)
Definition: IWORKCollector.cpp:209
Definition: IWORKToken.h:177
Definition: IWORKCollector.h:43
boost::shared_ptr< IWORKGeometry > IWORKGeometryPtr_t
Definition: IWORKTypes_fwd.h:33
Definition: IWORKTypes.h:34
void endLayout()
Definition: IWORKCollector.cpp:472
void resolveStyle(IWORKStyle &style)
Definition: IWORKCollector.cpp:581
boost::shared_ptr< IWORKImage > IWORKImagePtr_t
Definition: IWORKTypes_fwd.h:51
Definition: IWORKToken.h:179
void popStyle()
Definition: IWORKCollector.cpp:564
void collectFooter(const std::string &name)
Definition: IWORKCollector.cpp:431
void openSpan(const IWORKStylePtr_t &style)
Definition: IWORKCollector.cpp:496
void collectHeaderFooter(const std::string &name, IWORKHeaderFooterMap_t &map)
Definition: IWORKCollector.cpp:587
Definition: IWORKDocumentInterface.h:18
double x
Definition: IWORKShape.cpp:42
virtual void drawTable()=0
void setGraphicStyle(const IWORKStylePtr_t &style)
Definition: IWORKCollector.cpp:215
void collectMetadata(const IWORKMetadata &metadata)
Definition: IWORKCollector.cpp:421
IWORKHeaderFooterMap_t m_headers
Definition: IWORKCollector.h:155
Definition: IWORKToken.h:194
Definition: IWORKToken.h:182
Definition: IWORKToken.h:67
~IWORKCollector()
Definition: IWORKCollector.cpp:199
void collectImage(const IWORKImagePtr_t &image)
Definition: IWORKCollector.cpp:237
void collectTableSizes(const IWORKRowSizes_t &rowSizes, const IWORKColumnSizes_t &columnSizes)
Definition: IWORKCollector.cpp:372
IWORKGeometryPtr_t m_geometry
Definition: IWORKCollector.h:45
void collectLineBreak()
Definition: IWORKCollector.cpp:364
void startDocument()
Definition: IWORKCollector.cpp:436
std::vector< IWORKGridLine_t > IWORKGridLineList_t
Definition: IWORKTypes.h:99
void endDocument()
Definition: IWORKCollector.cpp:441
Definition: IWORKToken.h:261
Definition: IWORKToken.h:105
void endText()
Definition: IWORKCollector.cpp:533
boost::shared_ptr< IWORKPath > IWORKPathPtr_t
Definition: IWORKPath_fwd.h:19
IWORKPathPtr_t m_currentPath
Definition: IWORKCollector.h:159
Definition: IWORKCollector.h:40
std::stack< IWORKTextPtr_t > m_textStack
Definition: IWORKCollector.h:152
void collectHeader(const std::string &name)
Definition: IWORKCollector.cpp:426
void collectConnectionPath(const IWORKSize &size, double middleX, double middleY)
Definition: IWORKCollector.cpp:314
std::stack< Level > m_levelStack
Definition: IWORKCollector.h:145
const char * name
Definition: IWORKToken.cpp:43
void collectCoveredTableCell(unsigned row, unsigned column)
Definition: IWORKCollector.cpp:406
void collectTab()
Definition: IWORKCollector.cpp:356
void collectStylesheet(const IWORKStylesheetPtr_t &stylesheet)
Definition: IWORKCollector.cpp:342
IWORKTable m_currentTable
Definition: IWORKCollector.h:153
boost::shared_ptr< IWORKData > IWORKDataPtr_t
Definition: IWORKTypes_fwd.h:41
void collectBezierPath()
Definition: IWORKCollector.cpp:286
void closeLink()
Definition: IWORKCollector.cpp:520
std::deque< IWORKStylePtr_t > m_newStyles
Definition: IWORKCollector.h:150
void openLink(const std::string &url)
Definition: IWORKCollector.cpp:512
void closeSpan()
Definition: IWORKCollector.cpp:504
IWORKDocumentInterface * m_document
Definition: IWORKCollector.h:143
void collectMedia(const IWORKMediaContentPtr_t &content)
Definition: IWORKCollector.cpp:327
Level()
Definition: IWORKCollector.cpp:178
virtual void fillShapeProperties(librevenge::RVNGPropertyList &props)=0
IWORKOutputManager & getOutputManager()
Definition: IWORKCollector.cpp:614
std::deque< double > IWORKColumnSizes_t
Definition: IWORKTypes_fwd.h:22
Definition: IWORKToken.h:229
Definition: IWORKToken.h:129
void drawShape(const IWORKShapePtr_t &shape)
Definition: IWORKCollector.cpp:655
std::deque< double > IWORKRowSizes_t
Definition: IWORKTypes_fwd.h:24
Definition: IWORKToken.h:148
IWORKMediaContentPtr_t m_currentUnfiltered
Definition: IWORKCollector.h:161
void startLevel()
Definition: IWORKCollector.cpp:540
glm::dmat3 m_trafo
Definition: IWORKCollector.h:47
void collectArrowPath(const IWORKSize &size, double headWidth, double stemRelYPos, bool doubleSided)
Definition: IWORKCollector.cpp:301
void endLevel()
Definition: IWORKCollector.cpp:551
boost::unordered_map< std::string, IWORKOutputElements > IWORKHeaderFooterMap_t
Definition: IWORKTypes.h:30
void endGroup()
Definition: IWORKCollector.cpp:457
void collectText(const std::string &text)
Definition: IWORKCollector.cpp:348
boost::shared_ptr< IWORKMedia > IWORKMediaPtr_t
Definition: IWORKTypes_fwd.h:56
IWORKOutputManager m_outputManager
Definition: IWORKCollector.h:148
IWORKHeaderFooterMap_t m_footers
Definition: IWORKCollector.h:156
Definition: IWORKToken.h:167
void collectCalloutPath(const IWORKSize &size, double radius, double tailSize, double tailX, double tailY, bool quoteBubble)
Definition: IWORKCollector.cpp:319
Definition: KEY1Token.h:156
IWORKMetadata m_metadata
Definition: IWORKCollector.h:166
Definition: IWORKToken.h:256
void fillMetadata(librevenge::RVNGPropertyList &props)
Definition: IWORKCollector.cpp:602
void collectLine(const IWORKLinePtr_t &line)
Definition: IWORKCollector.cpp:247
void collectShape()
Definition: IWORKCollector.cpp:257
boost::shared_ptr< IWORKLine > IWORKLinePtr_t
Definition: IWORKTypes_fwd.h:37
Definition: NUM1Token.h:34
Definition: IWORKToken.h:56
Definition: IWORKToken.h:130
IWORKStyleStack m_styleStack
Definition: IWORKCollector.h:146
Definition: IWORKTable.h:23
void pushStyle()
Definition: IWORKCollector.cpp:559
void startLayout(const IWORKStylePtr_t &style)
Definition: IWORKCollector.cpp:464
int m_groupLevel
Definition: IWORKCollector.h:168
boost::shared_ptr< IWORKText > IWORKTextPtr_t
Definition: IWORKText_fwd.h:18
void collectPolygonPath(const IWORKSize &size, unsigned edges)
Definition: IWORKCollector.cpp:291
void endParagraph()
Definition: IWORKCollector.cpp:488
void collectTableCell(unsigned row, unsigned column, const boost::optional< std::string > &content, unsigned rowSpan, unsigned columnSpan)
Definition: IWORKCollector.cpp:382
void startParagraph(const IWORKStylePtr_t &style)
Definition: IWORKCollector.cpp:480
void pushStylesheet(const IWORKStylesheetPtr_t &stylesheet)
Definition: IWORKCollector.cpp:569
Definition: IWORKToken.h:63
Definition: IWORKToken.h:166
Definition: IWORKToken.h:92
void collectRoundedRectanglePath(const IWORKSize &size, double radius)
Definition: IWORKCollector.cpp:296
IWORKDataPtr_t m_currentData
Definition: IWORKCollector.h:160