libetonyek::IWORKCollector Class Reference documentation

Classes | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
libetonyek::IWORKCollector Class Referenceabstract

`#include <IWORKCollector.h>`

Inheritance diagram for libetonyek::IWORKCollector:

## Classes
struct | Level

## Public Member Functions
| IWORKCollector (IWORKDocumentInterface *document)
| ~IWORKCollector ()
void | setRecorder (const std::shared_ptr< IWORKRecorder > &recorder)
void | collectStyle (const IWORKStylePtr_t &style)
void | setGraphicStyle (const IWORKStylePtr_t &style)
void | collectGeometry (const IWORKGeometryPtr_t &geometry)
void | collectBezier (const IWORKPathPtr_t &path)
void | collectImage (const IWORKImagePtr_t &image)
void | collectLine (const IWORKLinePtr_t &line)
void | collectShape ()
void | collectBezierPath ()
void | collectPolygonPath (const IWORKSize &size, unsigned edges)
void | collectRoundedRectanglePath (const IWORKSize &size, double radius)
void | collectArrowPath (const IWORKSize &size, double headWidth, double stemRelYPos, bool doubleSided)
void | collectStarPath (const IWORKSize &size, unsigned points, double innerRadius)
void | collectConnectionPath (const IWORKSize &size, double middleX, double middleY)
void | collectCalloutPath (const IWORKSize &size, double radius, double tailSize, double tailX, double tailY, bool quoteBubble)
void | collectMedia (const IWORKMediaContentPtr_t &content)
void | collectStylesheet (const IWORKStylesheetPtr_t &stylesheet)
void | collectMetadata (const IWORKMetadata &metadata)
void | collectHeader (const std::string &name)
void | collectFooter (const std::string &name)
void | collectTable (const std::shared_ptr< IWORKTable > &table)
void | collectText (const std::shared_ptr< IWORKText > &text)
void | startDocument ()
void | endDocument ()
void | startGroup ()
void | endGroup ()
void | startLevel ()
void | endLevel ()
void | pushStyle ()
void | popStyle ()
void | pushStylesheet (const IWORKStylesheetPtr_t &stylesheet)
void | popStylesheet ()
IWORKStylesheetPtr_t | getStylesheet () const
IWORKOutputManager & | getOutputManager ()
virtual std::shared_ptr< IWORKTable > | createTable (const IWORKTableNameMapPtr_t &tableNameMap, const IWORKLanguageManager &langManager) const
virtual std::shared_ptr< IWORKText > | createText (const IWORKLanguageManager &langManager, bool discardEmptyContent=false) const

## Protected Member Functions
void | fillMetadata (librevenge::RVNGPropertyList &props)

## Static Protected Member Functions
static void | writeFill (const IWORKFill &fill, librevenge::RVNGPropertyList &props)

## Protected Attributes
IWORKDocumentInterface * | m_document
std::shared_ptr< IWORKRecorder > | m_recorder
std::stack< Level > | m_levelStack
IWORKStyleStack | m_styleStack
std::stack< IWORKStylesheetPtr_t > | m_stylesheetStack
IWORKOutputManager | m_outputManager
std::deque< IWORKStylePtr_t > | m_newStyles
std::shared_ptr< IWORKTable > | m_currentTable
std::shared_ptr< IWORKText > | m_currentText
IWORKHeaderFooterMap_t | m_headers
IWORKHeaderFooterMap_t | m_footers

## Private Member Functions
void | pushStyle (const IWORKStylePtr_t &style)
void | resolveStyle (IWORKStyle &style)
void | collectHeaderFooter (const std::string &name, IWORKHeaderFooterMap_t &map)
void | drawMedia (const IWORKMediaPtr_t &media)
void | drawShape (const IWORKShapePtr_t &shape)
virtual void | drawTable ()=0
virtual void | drawMedia (double x, double y, double w, double h, const std::string &mimetype, const librevenge::RVNGBinaryData &data)=0
virtual void | fillShapeProperties (librevenge::RVNGPropertyList &props)=0
virtual void | drawTextBox (const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox)=0

## Private Attributes
IWORKPathPtr_t | m_currentPath
IWORKDataPtr_t | m_currentData
IWORKMediaContentPtr_t | m_currentUnfiltered
IWORKMediaContentPtr_t | m_currentFiltered
IWORKMediaContentPtr_t | m_currentLeveled
IWORKMediaContentPtr_t | m_currentContent
IWORKMetadata | m_metadata
int | m_groupLevel

## Constructor & Destructor Documentation

## ◆ IWORKCollector()

libetonyek::IWORKCollector::IWORKCollector | ( | IWORKDocumentInterface * | document | ) |
| explicit

## ◆ ~IWORKCollector()

libetonyek::IWORKCollector::~IWORKCollector | ( |  | ) |

## Member Function Documentation

## ◆ collectArrowPath()

void libetonyek::IWORKCollector::collectArrowPath | ( | const IWORKSize & | size,
|  | double | headWidth,
|  | double | stemRelYPos,
|  | bool | doubleSided
| ) |  |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectBezier()

void libetonyek::IWORKCollector::collectBezier | ( | const IWORKPathPtr_t & | path | ) |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectBezierPath()

void libetonyek::IWORKCollector::collectBezierPath | ( |  | ) |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectCalloutPath()

void libetonyek::IWORKCollector::collectCalloutPath | ( | const IWORKSize & | size,
|  | double | radius,
|  | double | tailSize,
|  | double | tailX,
|  | double | tailY,
|  | bool | quoteBubble
| ) |  |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectConnectionPath()

void libetonyek::IWORKCollector::collectConnectionPath | ( | const IWORKSize & | size,
|  | double | middleX,
|  | double | middleY
| ) |  |

## ◆ collectFooter()

void libetonyek::IWORKCollector::collectFooter | ( | const std::string & | name | ) |

## ◆ collectGeometry()

void libetonyek::IWORKCollector::collectGeometry | ( | const IWORKGeometryPtr_t & | geometry | ) |

Referenced by libetonyek::IWAParser::parseShapePlacement().

## ◆ collectHeader()

void libetonyek::IWORKCollector::collectHeader | ( | const std::string & | name | ) |

## ◆ collectHeaderFooter()

void libetonyek::IWORKCollector::collectHeaderFooter | ( | const std::string & | name,
|  | IWORKHeaderFooterMap_t & | map
| ) |  |
| private

Referenced by collectFooter(), collectHeader(), and getStylesheet().

## ◆ collectImage()

void libetonyek::IWORKCollector::collectImage | ( | const IWORKImagePtr_t & | image | ) |

## ◆ collectLine()

void libetonyek::IWORKCollector::collectLine | ( | const IWORKLinePtr_t & | line | ) |

## ◆ collectMedia()

void libetonyek::IWORKCollector::collectMedia | ( | const IWORKMediaContentPtr_t & | content | ) |

Referenced by libetonyek::IWAParser::parseImage().

## ◆ collectMetadata()

void libetonyek::IWORKCollector::collectMetadata | ( | const IWORKMetadata & | metadata | ) |

## ◆ collectPolygonPath()

void libetonyek::IWORKCollector::collectPolygonPath | ( | const IWORKSize & | size,
|  | unsigned | edges
| ) |  |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectRoundedRectanglePath()

void libetonyek::IWORKCollector::collectRoundedRectanglePath | ( | const IWORKSize & | size,
|  | double | radius
| ) |  |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectShape()

void libetonyek::IWORKCollector::collectShape | ( |  | ) |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectStarPath()

void libetonyek::IWORKCollector::collectStarPath | ( | const IWORKSize & | size,
|  | unsigned | points,
|  | double | innerRadius
| ) |  |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ collectStyle()

void libetonyek::IWORKCollector::collectStyle | ( | const IWORKStylePtr_t & | style | ) |

Referenced by libetonyek::KEY2StyleContext::endOfElement().

## ◆ collectStylesheet()

void libetonyek::IWORKCollector::collectStylesheet | ( | const IWORKStylesheetPtr_t & | stylesheet | ) |

## ◆ collectTable()

void libetonyek::IWORKCollector::collectTable | ( | const std::shared_ptr< IWORKTable > & | table | ) |

Referenced by libetonyek::IWAParser::parseTabularModel().

## ◆ collectText()

void libetonyek::IWORKCollector::collectText | ( | const std::shared_ptr< IWORKText > & | text | ) |

Referenced by libetonyek::PAG1TextStorageElement::endOfElement(), libetonyek::PAG5Parser::parseDocument(), libetonyek::KEY6Parser::parseNotes(), libetonyek::KEY6Parser::parsePlaceholder(), and libetonyek::KEY6Parser::parseStickyNote().

## ◆ createTable()

std::shared_ptr< IWORKTable > libetonyek::IWORKCollector::createTable | ( | const IWORKTableNameMapPtr_t & | tableNameMap,
|  | const IWORKLanguageManager & | langManager
| ) |  | const
| virtual

Reimplemented in libetonyek::KEY2Collector.

Referenced by libetonyek::KEY2Collector::createTable(), getStylesheet(), and libetonyek::IWAParser::parseTabularModel().

## ◆ createText()

std::shared_ptr< IWORKText > libetonyek::IWORKCollector::createText | ( | const IWORKLanguageManager & | langManager,
|  | bool | discardEmptyContent = `false`
| ) |  | const
| virtual

Reimplemented in libetonyek::KEY2Collector.

Referenced by libetonyek::KEY2Collector::createText(), libetonyek::PAG1TextStorageElement::element(), getStylesheet(), libetonyek::PAG5Parser::parseDocument(), libetonyek::IWAParser::parseDrawableShape(), libetonyek::KEY6Parser::parseNotes(), libetonyek::KEY6Parser::parsePlaceholder(), libetonyek::KEY6Parser::parseStickyNote(), and libetonyek::IWAParser::parseTile().

## ◆ drawMedia() [1/2]

void libetonyek::IWORKCollector::drawMedia | ( | const IWORKMediaPtr_t & | media | ) |
| private

Referenced by collectMedia(), and getStylesheet().

## ◆ drawMedia() [2/2]

virtual void libetonyek::IWORKCollector::drawMedia | ( | double | x,
|  | double | y,
|  | double | w,
|  | double | h,
|  | const std::string & | mimetype,
|  | const librevenge::RVNGBinaryData & | data
| ) |  |
| privatepure virtual

Implemented in libetonyek::KEYCollector, libetonyek::PAGCollector, and libetonyek::NUMCollector.

## ◆ drawShape()

void libetonyek::IWORKCollector::drawShape | ( | const IWORKShapePtr_t & | shape | ) |
| private

Referenced by collectShape(), and getStylesheet().

## ◆ drawTable()

virtual void libetonyek::IWORKCollector::drawTable | ( |  | ) |
| privatepure virtual

Implemented in libetonyek::KEYCollector, libetonyek::PAGCollector, and libetonyek::NUMCollector.

Referenced by collectTable(), and getStylesheet().

## ◆ drawTextBox()

virtual void libetonyek::IWORKCollector::drawTextBox | ( | const IWORKTextPtr_t & | text,
|  | const glm::dmat3 & | trafo,
|  | const IWORKGeometryPtr_t & | boundingBox
| ) |  |
| privatepure virtual

Implemented in libetonyek::KEYCollector, libetonyek::PAGCollector, and libetonyek::NUMCollector.

Referenced by drawShape(), and getStylesheet().

## ◆ endDocument()

void libetonyek::IWORKCollector::endDocument | ( |  | ) |

Referenced by libetonyek::NUMCollector::endDocument(), libetonyek::KEYCollector::endDocument(), and libetonyek::PAG5Parser::parseDocument().

## ◆ endGroup()

void libetonyek::IWORKCollector::endGroup | ( |  | ) |

Referenced by libetonyek::IWAParser::parseGroup().

## ◆ endLevel()

void libetonyek::IWORKCollector::endLevel | ( |  | ) |

Referenced by libetonyek::KEYCollector::endLayer(), libetonyek::KEYCollector::endPage(), libetonyek::IWAParser::parseDrawableShape(), libetonyek::IWAParser::parseGroup(), libetonyek::IWAParser::parseImage(), libetonyek::KEY6Parser::parsePlaceholder(), libetonyek::KEY6Parser::parseStickyNote(), and libetonyek::IWAParser::parseTabularInfo().

## ◆ fillMetadata()

void libetonyek::IWORKCollector::fillMetadata | ( | librevenge::RVNGPropertyList & | props | ) |
| protected

Referenced by libetonyek::NUMCollector::endDocument(), libetonyek::KEYCollector::endDocument(), libetonyek::PAGCollector::flushPageSpan(), and getStylesheet().

## ◆ fillShapeProperties()

virtual void libetonyek::IWORKCollector::fillShapeProperties | ( | librevenge::RVNGPropertyList & | props | ) |
| privatepure virtual

Implemented in libetonyek::KEYCollector, libetonyek::PAGCollector, and libetonyek::NUMCollector.

Referenced by drawShape(), and getStylesheet().

## ◆ getOutputManager()

IWORKOutputManager & libetonyek::IWORKCollector::getOutputManager | ( |  | ) |

Referenced by libetonyek::PAGCollector::closePageGroup(), libetonyek::KEYCollector::collectLayer(), libetonyek::PAGCollector::drawMedia(), libetonyek::KEYCollector::drawMedia(), libetonyek::NUMCollector::endDocument(), libetonyek::KEYCollector::endLayer(), getStylesheet(), libetonyek::KEYCollector::insertLayer(), libetonyek::PAGCollector::openPageGroup(), libetonyek::KEYCollector::startLayer(), and libetonyek::PAGCollector::writePageGroupsObjects().

## ◆ getStylesheet()

IWORKStylesheetPtr_t libetonyek::IWORKCollector::getStylesheet | ( |  | ) | const
| inline

## ◆ popStyle()

void libetonyek::IWORKCollector::popStyle | ( |  | ) |

Referenced by endLevel().

## ◆ popStylesheet()

void libetonyek::IWORKCollector::popStylesheet | ( |  | ) |

## ◆ pushStyle() [1/2]

void libetonyek::IWORKCollector::pushStyle | ( |  | ) |

Referenced by getStylesheet(), and startLevel().

## ◆ pushStyle() [2/2]

void libetonyek::IWORKCollector::pushStyle | ( | const IWORKStylePtr_t & | style | ) |
| private

## ◆ pushStylesheet()

void libetonyek::IWORKCollector::pushStylesheet | ( | const IWORKStylesheetPtr_t & | stylesheet | ) |

## ◆ resolveStyle()

void libetonyek::IWORKCollector::resolveStyle | ( | IWORKStyle & | style | ) |
| private

Referenced by getStylesheet().

## ◆ setGraphicStyle()

void libetonyek::IWORKCollector::setGraphicStyle | ( | const IWORKStylePtr_t & | style | ) |

Referenced by libetonyek::IWAParser::parseDrawableShape().

## ◆ setRecorder()

void libetonyek::IWORKCollector::setRecorder | ( | const std::shared_ptr< IWORKRecorder > & | recorder | ) |

## ◆ startDocument()

void libetonyek::IWORKCollector::startDocument | ( |  | ) |

Referenced by libetonyek::PAG5Parser::parseDocument(), libetonyek::NUMCollector::startDocument(), and libetonyek::KEYCollector::startDocument().

## ◆ startGroup()

void libetonyek::IWORKCollector::startGroup | ( |  | ) |

Referenced by libetonyek::IWAParser::parseGroup().

## ◆ startLevel()

void libetonyek::IWORKCollector::startLevel | ( |  | ) |

Referenced by libetonyek::IWAParser::parseDrawableShape(), libetonyek::IWAParser::parseGroup(), libetonyek::IWAParser::parseImage(), libetonyek::KEY6Parser::parsePlaceholder(), libetonyek::KEY6Parser::parseStickyNote(), libetonyek::IWAParser::parseTabularInfo(), libetonyek::KEYCollector::startLayer(), and libetonyek::KEYCollector::startPage().

## ◆ writeFill()

void libetonyek::IWORKCollector::writeFill | ( | const IWORKFill & | fill,
|  | librevenge::RVNGPropertyList & | props
| ) |  |
| staticprotected

Referenced by getStylesheet(), and libetonyek::KEYCollector::writeSlide().

## Member Data Documentation

## ◆ m_currentContent

IWORKMediaContentPtr_t libetonyek::IWORKCollector::m_currentContent
| private

## ◆ m_currentData

IWORKDataPtr_t libetonyek::IWORKCollector::m_currentData
| private

## ◆ m_currentFiltered

IWORKMediaContentPtr_t libetonyek::IWORKCollector::m_currentFiltered
| private

## ◆ m_currentLeveled

IWORKMediaContentPtr_t libetonyek::IWORKCollector::m_currentLeveled
| private

## ◆ m_currentPath

IWORKPathPtr_t libetonyek::IWORKCollector::m_currentPath
| private

Referenced by collectArrowPath(), collectBezier(), collectCalloutPath(), collectConnectionPath(), collectPolygonPath(), collectRoundedRectanglePath(), collectShape(), collectStarPath(), endDocument(), and ~IWORKCollector().

## ◆ m_currentTable

std::shared_ptr<IWORKTable> libetonyek::IWORKCollector::m_currentTable
| protected

Referenced by collectTable(), libetonyek::NUMCollector::drawTable(), libetonyek::PAGCollector::drawTable(), and libetonyek::KEYCollector::drawTable().

## ◆ m_currentText

std::shared_ptr<IWORKText> libetonyek::IWORKCollector::m_currentText
| protected

Referenced by collectHeaderFooter(), libetonyek::KEYCollector::collectNote(), collectShape(), libetonyek::KEYCollector::collectStickyNote(), collectText(), libetonyek::KEYCollector::collectTextPlaceholder(), endDocument(), libetonyek::PAGCollector::flushPageSpan(), and ~IWORKCollector().

## ◆ m_currentUnfiltered

IWORKMediaContentPtr_t libetonyek::IWORKCollector::m_currentUnfiltered
| private

## ◆ m_document

IWORKDocumentInterface* libetonyek::IWORKCollector::m_document
| protected

Referenced by libetonyek::NUMCollector::endDocument(), libetonyek::KEYCollector::endDocument(), endDocument(), libetonyek::PAGCollector::flushPageSpan(), startDocument(), libetonyek::PAGCollector::writePageGroupsObjects(), and libetonyek::KEYCollector::writeSlide().

## ◆ m_footers

IWORKHeaderFooterMap_t libetonyek::IWORKCollector::m_footers
| protected

Referenced by collectFooter(), and libetonyek::PAGCollector::flushPageSpan().

## ◆ m_groupLevel

int libetonyek::IWORKCollector::m_groupLevel
| private

Referenced by endDocument(), endGroup(), startGroup(), and ~IWORKCollector().

## ◆ m_headers

IWORKHeaderFooterMap_t libetonyek::IWORKCollector::m_headers
| protected

Referenced by collectHeader(), and libetonyek::PAGCollector::flushPageSpan().

## ◆ m_levelStack

std::stack<Level> libetonyek::IWORKCollector::m_levelStack
| protected

Referenced by collectGeometry(), collectImage(), collectLine(), collectMedia(), collectShape(), libetonyek::KEYCollector::collectStickyNote(), drawMedia(), drawShape(), libetonyek::PAGCollector::drawTable(), libetonyek::KEYCollector::drawTable(), endDocument(), endLevel(), libetonyek::KEYCollector::insertTextPlaceholder(), setGraphicStyle(), startLevel(), and ~IWORKCollector().

## ◆ m_metadata

IWORKMetadata libetonyek::IWORKCollector::m_metadata
| private

Referenced by collectMetadata(), and fillMetadata().

## ◆ m_newStyles

std::deque<IWORKStylePtr_t> libetonyek::IWORKCollector::m_newStyles
| protected

Referenced by collectStyle(), and collectStylesheet().

## ◆ m_outputManager

IWORKOutputManager libetonyek::IWORKCollector::m_outputManager
| protected

Referenced by collectImage(), collectLine(), drawShape(), libetonyek::NUMCollector::drawTable(), libetonyek::PAGCollector::drawTable(), libetonyek::KEYCollector::drawTable(), libetonyek::PAGCollector::drawTextBox(), libetonyek::KEYCollector::drawTextBox(), and getOutputManager().

## ◆ m_recorder

std::shared_ptr<IWORKRecorder> libetonyek::IWORKCollector::m_recorder
| protected

Referenced by collectArrowPath(), collectBezier(), collectCalloutPath(), collectConnectionPath(), collectGeometry(), collectImage(), collectLine(), collectMedia(), collectPolygonPath(), collectRoundedRectanglePath(), collectShape(), collectStarPath(), collectStyle(), collectStylesheet(), collectTable(), collectText(), endGroup(), endLevel(), libetonyek::KEYCollector::endPage(), popStylesheet(), pushStylesheet(), setGraphicStyle(), setRecorder(), startGroup(), and startLevel().

## ◆ m_stylesheetStack

std::stack<IWORKStylesheetPtr_t> libetonyek::IWORKCollector::m_stylesheetStack
| protected

Referenced by getStylesheet(), libetonyek::PAGCollector::openSection(), popStylesheet(), pushStylesheet(), and ~IWORKCollector().

## ◆ m_styleStack

IWORKStyleStack libetonyek::IWORKCollector::m_styleStack
| protected

Referenced by libetonyek::KEYCollector::collectTextPlaceholder(), popStyle(), pushStyle(), and setGraphicStyle().

The documentation for this class was generated from the following files:

- IWORKCollector.h
- IWORKCollector.cpp