Classes | 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:

## Classes
struct | Section

## 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 | openPageGroup (const boost::optional< int > &page)
void | closePageGroup ()
void | openSection (const std::string &style, double width, double height, double horizontalMargin, double verticalMargin)
void | closeSection ()
void | openAttachments ()
void | closeAttachments ()
PAGFootnoteKind | getFootnoteKind () const
Public Member Functions inherited from libetonyek::IWORKCollector
| 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

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

## Private Member Functions
void | drawTable () override
void | drawMedia (double x, double y, double w, double h, const std::string &mimetype, const librevenge::RVNGBinaryData &data) override
void | fillShapeProperties (librevenge::RVNGPropertyList &props) override
void | drawTextBox (const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox) override
void | flushPageSpan (bool writeEmpty=true)
void | writePageGroupsObjects ()

## Private Attributes
Section | m_currentSection
bool | m_firstPageSpan
PAGPublicationInfo | m_pubInfo
PageGroupsMap_t | m_pageGroups
int | m_page
boost::optional< IWORKPosition > | m_attachmentPosition
bool | m_inAttachments

## Additional Inherited Members
Protected Member Functions inherited from libetonyek::IWORKCollector
void | fillMetadata (librevenge::RVNGPropertyList &props)
Static Protected Member Functions inherited from libetonyek::IWORKCollector
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

## 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

## ◆ closeAttachments()

void libetonyek::PAGCollector::closeAttachments | ( |  | ) |

## ◆ closePageGroup()

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

## ◆ closeSection()

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

## ◆ 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().

## ◆ drawMedia()

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

Implements 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
| ) |  |
| override private virtual

Implements libetonyek::IWORKCollector.

## ◆ fillShapeProperties()

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

Implements libetonyek::IWORKCollector.

Referenced by drawTextBox().

## ◆ flushPageSpan()

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

Referenced by closeSection(), and collectTextBody().

## ◆ getFootnoteKind()

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

## ◆ openAttachments()

void libetonyek::PAGCollector::openAttachments | ( |  | ) |

## ◆ openPageGroup()

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

## ◆ openSection()

void libetonyek::PAGCollector::openSection | ( | const std::string & | style,
|  | double | width,
|  | double | height,
|  | double | horizontalMargin,
|  | double | verticalMargin
| ) |  |

## ◆ writePageGroupsObjects()

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

Referenced by flushPageSpan().

## Member Data Documentation

## ◆ m_attachmentPosition

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

Referenced by collectAttachmentPosition(), and drawMedia().

## ◆ m_currentSection

Section libetonyek::PAGCollector::m_currentSection
| private

Referenced by flushPageSpan(), and openSection().

## ◆ m_firstPageSpan

bool libetonyek::PAGCollector::m_firstPageSpan
| private

Referenced by flushPageSpan().

## ◆ m_inAttachments

bool libetonyek::PAGCollector::m_inAttachments
| private

Referenced by closeAttachments(), drawMedia(), and openAttachments().

## ◆ m_page

int libetonyek::PAGCollector::m_page
| private

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

## ◆ 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