Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
libetonyek::PAGCollector Class Reference

`#include <PAGCollector.h>`

Inheritance diagram for libetonyek::PAGCollector:

## Public Member Functions
| PAGCollector (IWORKDocumentInterface *document)
void | collectPublicationInfo (const PAGPublicationInfo &pubInfo)
void | collectTextBody ()
void | collectAttachment (const IWORKOutputID_t &id, bool block)
void | collectAttachmentPosition (const IWORKPosition &position)
void | collectAnnotation (const std::string &name)
void | openPageGroup (const boost::optional< int > &page)
void | closePageGroup ()
void | setPageDimensions (const IWORKPrintInfo &dimensions)
void | openSection (const std::string &style)
void | openSection (const IWORKStylePtr_t &style)
void | closeSection ()
void | sendAnnotation (const std::string &name)
PAGFootnoteKind | getFootnoteKind () const
Public Member Functions inherited from libetonyek::IWORKCollector
| IWORKCollector (IWORKDocumentInterface *document)
virtual | ~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 | setAccumulateTransformTo (bool accumulate)
void | collectBezier (const IWORKPathPtr_t &path)
void | collectLine (const IWORKLinePtr_t &line)
void | collectShape (const boost::optional< int > &order=boost::none, bool locked=false)
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 IWORKConnectionPath &path)
void | collectCalloutPath (const IWORKSize &size, double radius, double tailSize, double tailX, double tailY, bool quoteBubble)
void | collectImage (const IWORKMediaContentPtr_t &image, const IWORKGeometryPtr_t &cropGeometry=IWORKGeometryPtr_t(), const boost::optional< int > &order=boost::none, bool locked=false)
void | collectMedia (const IWORKMediaContentPtr_t &content, const IWORKGeometryPtr_t &cropGeometry=IWORKGeometryPtr_t(), const boost::optional< int > &order=boost::none)
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 | startAttachment ()
void | endAttachment ()
void | startAttachments ()
void | endAttachments ()
void | startGroup ()
void | endGroup ()
void | openGroup ()
void | closeGroup ()
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, bool allowListInsertion=true) const

## Private Types
typedef std::map< unsigned, IWORKOutputID_t > | PageGroupsMap_t

## Private Member Functions
void | drawShape (const IWORKShapePtr_t &shape) override
void | drawTable () override
void | drawMedia (double x, double y, const librevenge::RVNGPropertyList &data) override
void | fillShapeProperties (librevenge::RVNGPropertyList &props) override
bool | createFrameStylesForTextBox () const override
void | drawTextBox (const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox, const librevenge::RVNGPropertyList &style) override
void | flushPageSpan (bool writeEmpty=true)
void | writePageGroupsObjects ()

## Private Attributes
boost::optional< IWORKPrintInfo > | m_pageDimensions
IWORKStylePtr_t | m_currentSectionStyle
bool | m_firstPageSpan
PAGPublicationInfo | m_pubInfo
PageGroupsMap_t | m_pageGroups
int | m_page
boost::optional< IWORKPosition > | m_attachmentPosition
PAGAnnotationMap_t | m_annotations

## Additional Inherited Members
Protected Member Functions inherited from libetonyek::IWORKCollector
void | fillMetadata (librevenge::RVNGPropertyList &props)
| IWORKCollector (const IWORKCollector &)
IWORKCollector & | operator= (const IWORKCollector &)
Static Protected Member Functions inherited from libetonyek::IWORKCollector
static void | fillGraphicProps (const IWORKStylePtr_t style, librevenge::RVNGPropertyList &props, bool isSurface=true, bool isFrame=false)
static void | fillLayoutProps (const IWORKStylePtr_t style, librevenge::RVNGPropertyList &props)
static void | fillWrapProps (const IWORKStylePtr_t style, librevenge::RVNGPropertyList &props, const boost::optional< int > &order)
static void | writeFill (const IWORKFill &fill, librevenge::RVNGPropertyList &props)
Protected Attributes inherited from libetonyek::IWORKCollector
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
std::stack< IWORKPathPtr_t > | m_pathStack
IWORKPathPtr_t | m_currentPath
std::stack< bool > | m_attachmentStack
bool | m_inAttachment
bool | m_inAttachments

## Member Typedef Documentation

## ◆ PageGroupsMap_t

typedef std::map<unsigned, IWORKOutputID_t> libetonyek::PAGCollector::PageGroupsMap_t
| private

## Constructor & Destructor Documentation

## ◆ PAGCollector()

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

## Member Function Documentation

## ◆ closePageGroup()

void libetonyek::PAGCollector::closePageGroup | ( |  | ) |

Referenced by libetonyek::PAG5Parser::parseGroupRef().

## ◆ closeSection()

void libetonyek::PAGCollector::closeSection | ( |  | ) |

Referenced by libetonyek::PAG5Parser::parseDocument().

## ◆ collectAnnotation()

void libetonyek::PAGCollector::collectAnnotation | ( | const std::string & | name | ) |

## ◆ collectAttachment()

void libetonyek::PAGCollector::collectAttachment | ( | const IWORKOutputID_t & | id,
|  | bool | block
| ) |  |

## ◆ collectAttachmentPosition()

void libetonyek::PAGCollector::collectAttachmentPosition | ( | const IWORKPosition & | position | ) |

## ◆ collectPublicationInfo()

void libetonyek::PAGCollector::collectPublicationInfo | ( | const PAGPublicationInfo & | pubInfo | ) |

## ◆ collectTextBody()

void libetonyek::PAGCollector::collectTextBody | ( |  | ) |

Referenced by libetonyek::PAG1TextStorageElement::endOfElement(), and libetonyek::PAG5Parser::parseDocument().

## ◆ createFrameStylesForTextBox()

bool libetonyek::PAGCollector::createFrameStylesForTextBox | ( |  | ) | const
| inline override private virtual

Implements libetonyek::IWORKCollector.

## ◆ drawMedia()

void libetonyek::PAGCollector::drawMedia | ( | double | x,
|  | double | y,
|  | const librevenge::RVNGPropertyList & | data
| ) |  |
| override private virtual

Implements libetonyek::IWORKCollector.

## ◆ drawShape()

void libetonyek::PAGCollector::drawShape | ( | const IWORKShapePtr_t & | shape | ) |
| override private virtual

Reimplemented from libetonyek::IWORKCollector.

## ◆ drawTable()

void libetonyek::PAGCollector::drawTable | ( |  | ) |
| override private virtual

Implements libetonyek::IWORKCollector.

## ◆ drawTextBox()

void libetonyek::PAGCollector::drawTextBox | ( | const IWORKTextPtr_t & | text,
|  | const glm::dmat3 & | trafo,
|  | const IWORKGeometryPtr_t & | boundingBox,
|  | const librevenge::RVNGPropertyList & | style
| ) |  |
| override private virtual

Implements libetonyek::IWORKCollector.

## ◆ fillShapeProperties()

void libetonyek::PAGCollector::fillShapeProperties | ( | librevenge::RVNGPropertyList & | props | ) |
| override private virtual

Implements libetonyek::IWORKCollector.

Referenced by drawMedia(), drawTable(), and drawTextBox().

## ◆ flushPageSpan()

void libetonyek::PAGCollector::flushPageSpan | ( | bool | writeEmpty = `true` | ) |
| private

Referenced by closeSection(), and collectTextBody().

## ◆ getFootnoteKind()

PAGFootnoteKind libetonyek::PAGCollector::getFootnoteKind | ( |  | ) | const

## ◆ openPageGroup()

void libetonyek::PAGCollector::openPageGroup | ( | const boost::optional< int > & | page | ) |

Referenced by libetonyek::PAG5Parser::parseGroupRef().

## ◆ openSection() [1/2]

void libetonyek::PAGCollector::openSection | ( | const std::string & | style | ) |

Referenced by libetonyek::PAG5Parser::parseDocument().

## ◆ openSection() [2/2]

void libetonyek::PAGCollector::openSection | ( | const IWORKStylePtr_t & | style | ) |

## ◆ sendAnnotation()

void libetonyek::PAGCollector::sendAnnotation | ( | const std::string & | name | ) |

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

## ◆ setPageDimensions()

void libetonyek::PAGCollector::setPageDimensions | ( | const IWORKPrintInfo & | dimensions | ) |

Referenced by libetonyek::PAG5Parser::parseDocument().

## ◆ writePageGroupsObjects()

void libetonyek::PAGCollector::writePageGroupsObjects | ( |  | ) |
| private

Referenced by flushPageSpan().

## Member Data Documentation

## ◆ m_annotations

PAGAnnotationMap_t libetonyek::PAGCollector::m_annotations
| private

Referenced by collectAnnotation(), and sendAnnotation().

## ◆ m_attachmentPosition

boost::optional<IWORKPosition> libetonyek::PAGCollector::m_attachmentPosition
| private

Referenced by collectAttachmentPosition(), and drawMedia().

## ◆ m_currentSectionStyle

IWORKStylePtr_t libetonyek::PAGCollector::m_currentSectionStyle
| private

Referenced by flushPageSpan(), and openSection().

## ◆ m_firstPageSpan

bool libetonyek::PAGCollector::m_firstPageSpan
| private

Referenced by flushPageSpan().

## ◆ m_page

int libetonyek::PAGCollector::m_page
| private

Referenced by closePageGroup(), fillShapeProperties(), and openPageGroup().

## ◆ m_pageDimensions

boost::optional<IWORKPrintInfo> libetonyek::PAGCollector::m_pageDimensions
| private

Referenced by flushPageSpan(), and setPageDimensions().

## ◆ m_pageGroups

PageGroupsMap_t libetonyek::PAGCollector::m_pageGroups
| private

Referenced by closePageGroup(), and writePageGroupsObjects().

## ◆ m_pubInfo

PAGPublicationInfo libetonyek::PAGCollector::m_pubInfo
| private

Referenced by collectPublicationInfo(), and getFootnoteKind().

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

- PAGCollector.h
- PAGCollector.cpp