libqxp::QXP33Parser Class Reference

#include <QXP33Parser.h>

Inheritance diagram for libqxp::QXP33Parser:
libqxp::QXPParser

Classes

struct  ObjectHeader
 

Public Types

enum  ShapeType {
  ShapeType::UNKNOWN, ShapeType::LINE, ShapeType::ORTHOGONAL_LINE, ShapeType::RECTANGLE,
  ShapeType::CORNERED_RECTANGLE, ShapeType::OVAL, ShapeType::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< HJparseHJ (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< PointreadPolygonData (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
 
std::string readName (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
 

Private Attributes

const std::shared_ptr< QXP33Headerm_header
 

Additional Inherited Members

- Protected Member Functions inherited from libqxp::QXPParser
Color getColor (unsigned id, Color defaultColor=Color(0, 0, 0)) const
 
const LineStylegetLineStyle (unsigned id) const
 
std::string getFont (int id, std::string defaultFont="Arial") const
 
void convertCharFormatFlags (unsigned flags, CharFormat &format)
 
TabStopType convertTabStopType (unsigned type)
 
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)
 
void parseCollection (const std::shared_ptr< librevenge::RVNGInputStream >stream, std::function< void()> itemHandler)
 
std::vector< PageSettingsparsePageSettings (const std::shared_ptr< librevenge::RVNGInputStream > &stream)
 
std::shared_ptr< TextparseText (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< ParagraphRulereadParagraphRule (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, Colorm_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, LineStylem_lineStyles
 
std::vector< Arrowm_arrows
 
std::deque< std::shared_ptr< HJ > > m_hjs
 
std::set< unsigned > m_groupObjects
 

Member Enumeration Documentation

◆ ShapeType

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)
overrideprivatevirtual

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 
)
overrideprivatevirtual

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)
overrideprivatevirtual

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 
)
overrideprivatevirtual

Implements libqxp::QXPParser.

◆ parseParagraphFormat()

ParagraphFormat libqxp::QXP33Parser::parseParagraphFormat ( const std::shared_ptr< librevenge::RVNGInputStream > &  stream)
overrideprivatevirtual

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

◆ 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

Member Data Documentation

◆ m_header

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

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

Generated for libqxp by doxygen 1.8.16