#include <IWORKCollector.h>
Classes | |
struct | Level |
Public Member Functions | |
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, const boost::optional< unsigned > &resizeFlags=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) |
virtual void | collectStickyNote () |
void | startDocument (const librevenge::RVNGPropertyList &props) |
void | endDocument () |
void | startAttachment () |
void | endAttachment () |
void | startAttachments () |
void | endAttachments () |
void | startGroup () |
void | endGroup () |
void | openGroup () |
void | closeGroup () |
bool | getOpenGroupLevel () const |
void | startLevel () |
void | endLevel () |
void | pushStyle () |
void | popStyle () |
void | pushStylesheet (const IWORKStylesheetPtr_t &stylesheet) |
void | popStylesheet () |
IWORKStylesheetPtr_t | getStylesheet () const |
virtual boost::optional< std::string > | getWorkSpaceName () const |
IWORKOutputManager & | getOutputManager () |
virtual std::shared_ptr< IWORKTable > | createTable (const IWORKTableNameMapPtr_t &tableNameMap, IWORKFormatNameMap &formatNameMap, const IWORKLanguageManager &langManager) const |
virtual std::shared_ptr< IWORKText > | createText (const IWORKLanguageManager &langManager, bool discardEmptyContent=false, bool allowListInsertion=true) const |
Protected Member Functions | |
void | fillMetadata (librevenge::RVNGPropertyList &props) |
void | drawShape (const IWORKShapePtr_t &shape) |
IWORKCollector (const IWORKCollector &) | |
IWORKCollector & | operator= (const IWORKCollector &) |
Static Protected Member Functions | |
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 | fillTextAutoSizeProps (const boost::optional< unsigned > &resizeFlags, const IWORKGeometryPtr_t &boundingBox, 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 | |
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 |
Private Member Functions | |
void | pushStyle (const IWORKStylePtr_t &style) |
void | collectHeaderFooter (const std::string &name, IWORKHeaderFooterMap_t &map) |
void | drawLine (const IWORKLinePtr_t &line) |
void | drawMedia (const IWORKMediaPtr_t &media) |
virtual void | drawTable ()=0 |
virtual void | drawMedia (double x, double y, const librevenge::RVNGPropertyList &data)=0 |
virtual void | fillShapeProperties (librevenge::RVNGPropertyList &props)=0 |
virtual bool | createFrameStylesForTextBox () const =0 |
virtual void | drawTextBox (const IWORKTextPtr_t &text, const glm::dmat3 &trafo, const IWORKGeometryPtr_t &boundingBox, const librevenge::RVNGPropertyList &style)=0 |
|
explicit |
|
virtual |
|
protected |
void libetonyek::IWORKCollector::closeGroup | ( | ) |
Referenced by libetonyek::PAGCollector::drawTable(), and libetonyek::IWAParser::parseGroup().
void libetonyek::IWORKCollector::collectArrowPath | ( | const IWORKSize & | size, |
double | headWidth, | ||
double | stemRelYPos, | ||
bool | doubleSided ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
void libetonyek::IWORKCollector::collectBezier | ( | const IWORKPathPtr_t & | path | ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
void libetonyek::IWORKCollector::collectBezierPath | ( | ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
void libetonyek::IWORKCollector::collectCalloutPath | ( | const IWORKSize & | size, |
double | radius, | ||
double | tailSize, | ||
double | tailX, | ||
double | tailY, | ||
bool | quoteBubble ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
void libetonyek::IWORKCollector::collectConnectionPath | ( | const IWORKConnectionPath & | path | ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
void libetonyek::IWORKCollector::collectFooter | ( | const std::string & | name | ) |
Referenced by libetonyek::IWAParser::parseHeaderAndFooter().
void libetonyek::IWORKCollector::collectGeometry | ( | const IWORKGeometryPtr_t & | geometry | ) |
void libetonyek::IWORKCollector::collectHeader | ( | const std::string & | name | ) |
Referenced by libetonyek::IWAParser::parseHeaderAndFooter().
|
private |
Referenced by collectFooter(), and collectHeader().
void libetonyek::IWORKCollector::collectImage | ( | const IWORKMediaContentPtr_t & | image, |
const IWORKGeometryPtr_t & | cropGeometry = IWORKGeometryPtr_t(), | ||
const boost::optional< int > & | order = boost::none, | ||
bool | locked = false ) |
void libetonyek::IWORKCollector::collectLine | ( | const IWORKLinePtr_t & | line | ) |
void libetonyek::IWORKCollector::collectMedia | ( | const IWORKMediaContentPtr_t & | content, |
const IWORKGeometryPtr_t & | cropGeometry = IWORKGeometryPtr_t(), | ||
const boost::optional< int > & | order = boost::none ) |
Referenced by libetonyek::IWAParser::parseImage().
void libetonyek::IWORKCollector::collectMetadata | ( | const IWORKMetadata & | metadata | ) |
void libetonyek::IWORKCollector::collectPolygonPath | ( | const IWORKSize & | size, |
unsigned | edges ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
void libetonyek::IWORKCollector::collectRoundedRectanglePath | ( | const IWORKSize & | size, |
double | radius ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
void libetonyek::IWORKCollector::collectShape | ( | const boost::optional< int > & | order = boost::none, |
const boost::optional< unsigned > & | resizeFlags = boost::none, | ||
bool | locked = false ) |
void libetonyek::IWORKCollector::collectStarPath | ( | const IWORKSize & | size, |
unsigned | points, | ||
double | innerRadius ) |
Referenced by libetonyek::IWAParser::parseDrawableShape().
|
virtual |
Reimplemented in libetonyek::KEYCollector, and libetonyek::NUMCollector.
void libetonyek::IWORKCollector::collectStyle | ( | const IWORKStylePtr_t & | style | ) |
void libetonyek::IWORKCollector::collectStylesheet | ( | const IWORKStylesheetPtr_t & | stylesheet | ) |
void libetonyek::IWORKCollector::collectTable | ( | const std::shared_ptr< IWORKTable > & | table | ) |
Referenced by libetonyek::IWAParser::parseTabularModel().
void libetonyek::IWORKCollector::collectText | ( | const std::shared_ptr< IWORKText > & | text | ) |
Referenced by libetonyek::PAG1AnnotationContext::endOfElement(), libetonyek::PAG1AnnotationElement::endOfElement(), libetonyek::PAG1TextStorageElement::endOfElement(), libetonyek::PAG5Parser::parseDocument(), libetonyek::IWAParser::parseDrawableShape(), libetonyek::IWAParser::parseHeaderAndFooter(), libetonyek::KEY6Parser::parseNotes(), libetonyek::KEY6Parser::parsePlaceholder(), and libetonyek::KEY6Parser::parseStickyNote().
|
privatepure virtual |
Implemented in libetonyek::KEYCollector, libetonyek::NUMCollector, and libetonyek::PAGCollector.
Referenced by drawShape().
|
virtual |
|
virtual |
Referenced by libetonyek::PAG1TextStorageElement::element(), libetonyek::KEY1ParserState::openBullet(), libetonyek::KEY2ParserState::openHeadline(), libetonyek::PAG5Parser::parseDocument(), libetonyek::IWAParser::parseDrawableShape(), libetonyek::IWAParser::parseHeaderAndFooter(), libetonyek::KEY6Parser::parseNotes(), libetonyek::KEY6Parser::parsePlaceholder(), libetonyek::KEY6Parser::parseStickyNote(), libetonyek::IWAParser::parseTileDefinition(), and libetonyek::PAG1AnnotationContext::startOfElement().
|
private |
Referenced by collectLine().
|
private |
Referenced by collectImage(), collectMedia(), and drawMedia().
|
privatepure virtual |
Implemented in libetonyek::KEYCollector, libetonyek::NUMCollector, and libetonyek::PAGCollector.
|
protected |
Referenced by collectShape().
|
privatepure virtual |
Implemented in libetonyek::KEYCollector, libetonyek::NUMCollector, and libetonyek::PAGCollector.
Referenced by collectTable().
|
privatepure virtual |
Implemented in libetonyek::KEYCollector, libetonyek::NUMCollector, and libetonyek::PAGCollector.
Referenced by drawShape().
void libetonyek::IWORKCollector::endAttachment | ( | ) |
void libetonyek::IWORKCollector::endAttachments | ( | ) |
void libetonyek::IWORKCollector::endDocument | ( | ) |
void libetonyek::IWORKCollector::endGroup | ( | ) |
Referenced by libetonyek::IWAParser::parseGroup().
void libetonyek::IWORKCollector::endLevel | ( | ) |
Referenced by libetonyek::PAG5Parser::dispatchShape(), endAttachment(), libetonyek::KEYCollector::endLayer(), libetonyek::KEY1TableElement::endOfElement(), libetonyek::KEYCollector::endPage(), libetonyek::NUMCollector::endWorkSpace(), libetonyek::IWAParser::parseDrawableShape(), libetonyek::IWAParser::parseGroup(), libetonyek::IWAParser::parseImage(), libetonyek::KEY6Parser::parsePlaceholder(), libetonyek::KEY6Parser::parseStickyNote(), libetonyek::NUM3Parser::parseStickyNote(), and libetonyek::IWAParser::parseTabularInfo().
|
staticprotected |
Referenced by drawLine(), drawMedia(), and drawShape().
|
staticprotected |
Referenced by drawShape(), and libetonyek::KEYCollector::insertTextPlaceholder().
|
protected |
|
privatepure virtual |
Implemented in libetonyek::KEYCollector, libetonyek::NUMCollector, and libetonyek::PAGCollector.
Referenced by drawLine(), and drawShape().
|
staticprotected |
Referenced by drawShape(), and libetonyek::KEYCollector::insertTextPlaceholder().
|
staticprotected |
Referenced by drawMedia(), drawShape(), libetonyek::KEYCollector::drawTable(), and libetonyek::PAGCollector::drawTable().
|
inline |
Referenced by libetonyek::PAGCollector::drawTable().
IWORKOutputManager & libetonyek::IWORKCollector::getOutputManager | ( | ) |
Referenced by libetonyek::PAGCollector::closePageGroup(), libetonyek::KEYCollector::collectLayer(), libetonyek::KEYCollector::drawMedia(), libetonyek::NUMCollector::drawMedia(), libetonyek::PAGCollector::drawMedia(), libetonyek::PAGCollector::drawTable(), libetonyek::NUMCollector::endDocument(), libetonyek::KEYCollector::endLayer(), libetonyek::NUMCollector::endWorkSpace(), libetonyek::KEYCollector::insertLayer(), libetonyek::PAGCollector::openPageGroup(), libetonyek::KEYCollector::startLayer(), libetonyek::NUMCollector::startWorkSpace(), and libetonyek::PAGCollector::writePageGroupsObjects().
|
inline |
|
inlinevirtual |
Reimplemented in libetonyek::NUMCollector.
Referenced by libetonyek::IWAParser::parseTabularModel().
void libetonyek::IWORKCollector::openGroup | ( | ) |
Referenced by libetonyek::PAGCollector::drawTable(), and libetonyek::IWAParser::parseGroup().
|
protected |
void libetonyek::IWORKCollector::popStyle | ( | ) |
Referenced by endLevel().
void libetonyek::IWORKCollector::popStylesheet | ( | ) |
void libetonyek::IWORKCollector::pushStyle | ( | ) |
Referenced by startLevel().
|
private |
void libetonyek::IWORKCollector::pushStylesheet | ( | const IWORKStylesheetPtr_t & | stylesheet | ) |
void libetonyek::IWORKCollector::setAccumulateTransformTo | ( | bool | accumulate | ) |
void libetonyek::IWORKCollector::setGraphicStyle | ( | const IWORKStylePtr_t & | style | ) |
Referenced by libetonyek::IWAParser::parseDrawableShape(), and libetonyek::IWAParser::parseImage().
void libetonyek::IWORKCollector::setRecorder | ( | const std::shared_ptr< IWORKRecorder > & | recorder | ) |
void libetonyek::IWORKCollector::startAttachment | ( | ) |
void libetonyek::IWORKCollector::startAttachments | ( | ) |
void libetonyek::IWORKCollector::startDocument | ( | const librevenge::RVNGPropertyList & | props | ) |
void libetonyek::IWORKCollector::startGroup | ( | ) |
Referenced by libetonyek::IWAParser::parseGroup().
void libetonyek::IWORKCollector::startLevel | ( | ) |
Referenced by libetonyek::PAG5Parser::dispatchShape(), libetonyek::IWAParser::parseDrawableShape(), libetonyek::IWAParser::parseGroup(), libetonyek::IWAParser::parseImage(), libetonyek::KEY6Parser::parsePlaceholder(), libetonyek::KEY6Parser::parseStickyNote(), libetonyek::NUM3Parser::parseStickyNote(), libetonyek::IWAParser::parseTabularInfo(), startAttachment(), libetonyek::KEYCollector::startLayer(), libetonyek::KEY1TableElement::startOfElement(), libetonyek::KEYCollector::startPage(), and libetonyek::NUMCollector::startWorkSpace().
|
staticprotected |
Referenced by libetonyek::PAGCollector::flushPageSpan(), and libetonyek::KEYCollector::insertSlide().
|
private |
Referenced by collectGeometry(), drawLine(), and setAccumulateTransformTo().
|
protected |
Referenced by endAttachment(), and startAttachment().
|
private |
|
private |
|
private |
|
private |
|
protected |
Referenced by collectArrowPath(), collectBezier(), collectCalloutPath(), collectConnectionPath(), collectPolygonPath(), collectRoundedRectanglePath(), collectShape(), collectStarPath(), libetonyek::KEYCollector::collectStickyNote(), endAttachment(), endDocument(), startAttachment(), and ~IWORKCollector().
|
protected |
|
protected |
Referenced by libetonyek::PAGCollector::collectAnnotation(), collectHeaderFooter(), libetonyek::KEYCollector::collectNote(), collectShape(), libetonyek::KEYCollector::collectStickyNote(), collectText(), libetonyek::KEYCollector::collectTextPlaceholder(), endDocument(), libetonyek::PAGCollector::flushPageSpan(), libetonyek::PAGCollector::sendAnnotation(), and ~IWORKCollector().
|
private |
|
protected |
|
protected |
Referenced by collectFooter(), and libetonyek::PAGCollector::flushPageSpan().
|
private |
Referenced by closeGroup(), endDocument(), endGroup(), openGroup(), startGroup(), and ~IWORKCollector().
|
private |
Referenced by closeGroup(), endDocument(), getOpenGroupLevel(), openGroup(), and ~IWORKCollector().
|
protected |
Referenced by collectHeader(), and libetonyek::PAGCollector::flushPageSpan().
|
protected |
Referenced by endAttachment(), and startAttachment().
|
protected |
|
protected |
Referenced by collectGeometry(), collectImage(), collectLine(), collectMedia(), collectShape(), libetonyek::KEYCollector::collectStickyNote(), libetonyek::NUMCollector::collectStickyNote(), drawLine(), drawMedia(), drawShape(), libetonyek::KEYCollector::drawTable(), libetonyek::NUMCollector::drawTable(), libetonyek::PAGCollector::drawTable(), endDocument(), endLevel(), libetonyek::KEYCollector::insertTextPlaceholder(), setGraphicStyle(), startLevel(), and ~IWORKCollector().
|
private |
Referenced by collectMetadata(), and fillMetadata().
|
protected |
Referenced by collectStyle(), and collectStylesheet().
|
protected |
|
protected |
Referenced by endAttachment(), endDocument(), and startAttachment().
|
protected |
Referenced by closeGroup(), collectArrowPath(), collectBezier(), collectCalloutPath(), collectConnectionPath(), collectGeometry(), collectImage(), libetonyek::KEYCollector::collectLayer(), collectLine(), collectMedia(), collectPolygonPath(), collectRoundedRectanglePath(), collectShape(), collectStarPath(), collectStyle(), collectStylesheet(), collectTable(), collectText(), endAttachment(), endGroup(), endLevel(), openGroup(), popStylesheet(), pushStylesheet(), setGraphicStyle(), setRecorder(), startAttachment(), startGroup(), and startLevel().
|
protected |
Referenced by getStylesheet(), libetonyek::PAGCollector::openSection(), popStylesheet(), pushStylesheet(), and ~IWORKCollector().
|
protected |
Referenced by libetonyek::KEYCollector::collectTextPlaceholder(), popStyle(), pushStyle(), and setGraphicStyle().