Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
libqxp::QXP33Parser Class Reference

`#include <QXP33Parser.h>`

Inheritance diagram for libqxp::QXP33Parser:

## Classes
struct | ObjectHeader

## Public Types
enum class | ShapeType { UNKNOWN , LINE , ORTHOGONAL_LINE , RECTANGLE , CORNERED_RECTANGLE , OVAL , POLYGON }

## Public Member Functions
| QXP33Parser (const std::shared_ptr< librevenge::RVNGInputStream > &input, librevenge::RVNGDrawingInterface *painter, const std::shared_ptr< QXP33Header > &header)
Public Member Functions inherited from libqxp::QXPParser
| QXPParser (const std::shared_ptr< librevenge::RVNGInputStream > &input, librevenge::RVNGDrawingInterface *painter, const std::shared_ptr< QXPHeader > &header)
virtual | ~QXPParser ()=default
bool | parse ()

## Private Member Functions
bool | parseDocument (const std::shared_ptr< librevenge::RVNGInputStream > &docStream, QXPCollector &collector) override
bool | parsePages (const std::shared_ptr< librevenge::RVNGInputStream > &pagesStream, QXPCollector &collector) override
void | parseColors (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
CharFormat | parseCharFormat (const std::shared_ptr< librevenge::RVNGInputStream > &stream) override
ParagraphFormat | parseParagraphFormat (const std::shared_ptr< librevenge::RVNGInputStream > &stream) override
std::shared_ptr< HJ > | parseHJ (const std::shared_ptr< librevenge::RVNGInputStream > &stream) override
Page | parsePage (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
void | parseObject (const std::shared_ptr< librevenge::RVNGInputStream > &stream, QXP33Deobfuscator &deobfuscate, QXPCollector &collector, const Page &page, unsigned index)
ObjectHeader | parseObjectHeader (const std::shared_ptr< librevenge::RVNGInputStream > &stream, QXP33Deobfuscator &deobfuscate)
void | readObjectFlags (const std::shared_ptr< librevenge::RVNGInputStream > &stream, bool &noColor, bool &noRunaround)
void | parseLine (const std::shared_ptr< librevenge::RVNGInputStream > &stream, const ObjectHeader &header, QXPCollector &collector)
void | parseTextBox (const std::shared_ptr< librevenge::RVNGInputStream > &stream, const ObjectHeader &header, QXPCollector &collector)
void | parsePictureBox (const std::shared_ptr< librevenge::RVNGInputStream > &stream, const ObjectHeader &header, QXPCollector &collector)
void | parseEmptyBox (const std::shared_ptr< librevenge::RVNGInputStream > &stream, const ObjectHeader &header, QXPCollector &collector)
void | parseGroup (const std::shared_ptr< librevenge::RVNGInputStream > &stream, const ObjectHeader &header, QXPCollector &collector, const Page &page, unsigned index)
Frame | readFrame (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
std::vector< Point > | readPolygonData (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
std::string | readName (const std::shared_ptr< librevenge::RVNGInputStream > &stream)

## Private Attributes
const std::shared_ptr< QXP33Header > | m_header

## Additional Inherited Members
Protected Member Functions inherited from libqxp::QXPParser
Color | getColor (unsigned id, Color defaultColor=Color(0, 0, 0)) const
const LineStyle * | getLineStyle (unsigned id) const
std::string | getFont (int id, std::string defaultFont="Arial") const
void | convertCharFormatFlags (unsigned flags, CharFormat &format)
TabStopType | convertTabStopType (unsigned type)
virtual bool | parseDocument (const std::shared_ptr< librevenge::RVNGInputStream > &docStream, QXPCollector &collector)=0
virtual bool | parsePages (const std::shared_ptr< librevenge::RVNGInputStream > &stream, QXPCollector &collector)=0
void | skipRecord (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
void | parseFonts (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
void | parseHJs (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
void | parseCharFormats (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
void | parseCommonCharFormatProps (const std::shared_ptr< librevenge::RVNGInputStream > &stream, CharFormat &result)
void | parseHJProps (const std::shared_ptr< librevenge::RVNGInputStream > &stream, HJ &result)
TabStop | parseTabStop (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
void | parseParagraphFormats (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
virtual CharFormat | parseCharFormat (const std::shared_ptr< librevenge::RVNGInputStream > &stream)=0
virtual ParagraphFormat | parseParagraphFormat (const std::shared_ptr< librevenge::RVNGInputStream > &stream)=0
virtual std::shared_ptr< HJ > | parseHJ (const std::shared_ptr< librevenge::RVNGInputStream > &stream)=0
void | parseCollection (const std::shared_ptr< librevenge::RVNGInputStream >stream, std::function< void()> itemHandler)
std::vector< PageSettings > | parsePageSettings (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
std::shared_ptr< Text > | parseText (unsigned index, unsigned linkId, QXPCollector &collector)
uint32_t | readRecordEndOffset (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
uint8_t | readColorComp (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
Rect | readObjectBBox (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
Gradient | readGradient (const std::shared_ptr< librevenge::RVNGInputStream > &stream, const Color &color1)
HorizontalAlignment | readHorAlign (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
VerticalAlignment | readVertAlign (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
Point | readYX (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
std::shared_ptr< ParagraphRule > | readParagraphRule (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
uint8_t | readParagraphFlags (const std::shared_ptr< librevenge::RVNGInputStream > &stream, bool &incrementalLeading, bool &ruleAbove, bool &ruleBelow)
uint8_t | readObjectFlags (const std::shared_ptr< librevenge::RVNGInputStream > &stream, bool &noColor)
void | readGroupElements (const std::shared_ptr< librevenge::RVNGInputStream > &stream, unsigned count, unsigned objectsCount, unsigned index, std::vector< unsigned > &elements)
void | setArrow (const unsigned index, Frame &frame) const
void | skipFileInfo (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
Protected Attributes inherited from libqxp::QXPParser
const std::shared_ptr< librevenge::RVNGInputStream > | m_input
librevenge::RVNGDrawingInterface * | m_painter
const bool | be
QXPBlockParser | m_blockParser
QXPTextParser | m_textParser
std::map< unsigned, Color > | m_colors
std::map< int, std::string > | m_fonts
std::vector< std::shared_ptr< CharFormat > > | m_charFormats
std::vector< std::shared_ptr< ParagraphFormat > > | m_paragraphFormats
std::map< unsigned, LineStyle > | m_lineStyles
std::vector< Arrow > | m_arrows
std::deque< std::shared_ptr< HJ > > | m_hjs
std::set< unsigned > | m_groupObjects

## Member Enumeration Documentation

## ◆ ShapeType

enum class libqxp::QXP33Parser::ShapeType
| strong

Enumerator
UNKNOWN |
LINE |
ORTHOGONAL_LINE |
RECTANGLE |
CORNERED_RECTANGLE |
OVAL |
POLYGON |

## Constructor & Destructor Documentation

## ◆ QXP33Parser()

libqxp::QXP33Parser::QXP33Parser | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | input,
|  | librevenge::RVNGDrawingInterface * | painter,
|  | const std::shared_ptr< QXP33Header > & | header
| ) |  |

## Member Function Documentation

## ◆ parseCharFormat()

CharFormat libqxp::QXP33Parser::parseCharFormat | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| override private virtual

Implements libqxp::QXPParser.

## ◆ parseColors()

void libqxp::QXP33Parser::parseColors | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| private

Referenced by parseDocument().

## ◆ parseDocument()

bool libqxp::QXP33Parser::parseDocument | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | docStream,
|  | QXPCollector & | collector
| ) |  |
| override private virtual

Implements libqxp::QXPParser.

## ◆ parseEmptyBox()

void libqxp::QXP33Parser::parseEmptyBox | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | const ObjectHeader & | header,
|  | QXPCollector & | collector
| ) |  |
| private

Referenced by parseObject().

## ◆ parseGroup()

void libqxp::QXP33Parser::parseGroup | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | const ObjectHeader & | header,
|  | QXPCollector & | collector,
|  | const Page & | page,
|  | unsigned | index
| ) |  |
| private

Referenced by parseObject().

## ◆ parseHJ()

std::shared_ptr< HJ > libqxp::QXP33Parser::parseHJ | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| override private virtual

Implements libqxp::QXPParser.

## ◆ parseLine()

void libqxp::QXP33Parser::parseLine | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | const ObjectHeader & | header,
|  | QXPCollector & | collector
| ) |  |
| private

Referenced by parseObject().

## ◆ parseObject()

void libqxp::QXP33Parser::parseObject | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | QXP33Deobfuscator & | deobfuscate,
|  | QXPCollector & | collector,
|  | const Page & | page,
|  | unsigned | index
| ) |  |
| private

Referenced by parsePages().

## ◆ parseObjectHeader()

QXP33Parser::ObjectHeader libqxp::QXP33Parser::parseObjectHeader | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | QXP33Deobfuscator & | deobfuscate
| ) |  |
| private

Referenced by parseObject().

## ◆ parsePage()

Page libqxp::QXP33Parser::parsePage | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| private

Referenced by parsePages().

## ◆ parsePages()

bool libqxp::QXP33Parser::parsePages | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | pagesStream,
|  | QXPCollector & | collector
| ) |  |
| override private virtual

Implements libqxp::QXPParser.

## ◆ parseParagraphFormat()

ParagraphFormat libqxp::QXP33Parser::parseParagraphFormat | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| override private virtual

Implements libqxp::QXPParser.

## ◆ parsePictureBox()

void libqxp::QXP33Parser::parsePictureBox | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | const ObjectHeader & | header,
|  | QXPCollector & | collector
| ) |  |
| private

Referenced by parseObject().

## ◆ parseTextBox()

void libqxp::QXP33Parser::parseTextBox | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | const ObjectHeader & | header,
|  | QXPCollector & | collector
| ) |  |
| private

Referenced by parseObject().

## ◆ readFrame()

Frame libqxp::QXP33Parser::readFrame | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| private

Referenced by parseEmptyBox(), parsePictureBox(), and parseTextBox().

## ◆ readName()

std::string libqxp::QXP33Parser::readName | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| private

Referenced by parseColors(), and parseHJ().

## ◆ readObjectFlags()

void libqxp::QXP33Parser::readObjectFlags | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream,
|  | bool & | noColor,
|  | bool & | noRunaround
| ) |  |
| private

Referenced by parseObjectHeader().

## ◆ readPolygonData()

std::vector< Point > libqxp::QXP33Parser::readPolygonData | ( | const std::shared_ptr< librevenge::RVNGInputStream > & | stream | ) |
| private

Referenced by parseEmptyBox(), parsePictureBox(), and parseTextBox().

## Member Data Documentation

## ◆ m_header

const std::shared_ptr<QXP33Header> libqxp::QXP33Parser::m_header
| private

Referenced by parseDocument(), parseObjectHeader(), parsePages(), and parsePictureBox().

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

- QXP33Parser.h
- QXP33Parser.cpp