libetonyek::IWAParser Class Referenceabstract

#include <IWAParser.h>

Inheritance diagram for libetonyek::IWAParser:
libetonyek::KEY6Parser libetonyek::NUM3Parser libetonyek::PAG5Parser

Classes

class  ObjectMessage
 
struct  ObjectRecord
 
struct  TableHeader
 
struct  TableInfo
 

Public Types

typedef std::map< unsigned,
std::pair< std::string,
RVNGInputStreamPtr_t > > 
FileMap_t
 
typedef std::map< unsigned,
std::pair< unsigned,
ObjectRecord > > 
RecordMap_t
 

Public Member Functions

 IWAParser (const RVNGInputStreamPtr_t &fragments, const RVNGInputStreamPtr_t &package, IWORKCollector &collector)
 
bool parse ()
 

Protected Types

typedef std::map< unsigned,
IWORKStylePtr_t
StyleMap_t
 
typedef std::function< void(unsigned,
IWORKStylePtr_t &)> 
StyleParseFun_t
 

Protected Member Functions

bool readFill (const IWAMessage &msg, IWORKFill &fill)
 
bool dispatchShape (unsigned id)
 
bool parseText (unsigned id)
 
void parseComment (unsigned id)
 
bool parseShapePlacement (const IWAMessage &msg, IWORKGeometryPtr_t &geometry)
 
const IWORKStylePtr_t queryCharacterStyle (unsigned id) const
 
const IWORKStylePtr_t queryParagraphStyle (unsigned id) const
 
const IWORKStylePtr_t queryGraphicStyle (unsigned id) const
 
const IWORKStylePtr_t queryCellStyle (unsigned id) const
 
const IWORKStylePtr_t queryTableStyle (unsigned id) const
 
const IWORKStylePtr_t queryListStyle (unsigned id) const
 
const IWORKStylePtr_t queryStyle (unsigned id, StyleMap_t &styleMap, StyleParseFun_t parse) const
 

Static Protected Member Functions

static boost::optional< unsigned > readRef (const IWAMessage &msg, unsigned field)
 
static std::deque< unsigned > readRefs (const IWAMessage &msg, unsigned field)
 
static boost::optional
< IWORKPosition
readPosition (const IWAMessage &msg, unsigned field)
 
static boost::optional< IWORKSizereadSize (const IWAMessage &msg, unsigned field)
 
static boost::optional
< IWORKColor
readColor (const IWAMessage &msg, unsigned field)
 
static void readStroke (const IWAMessage &msg, IWORKStroke &stroke)
 
static void readGradient (const IWAMessage &msg, IWORKGradient &gradient)
 
static void readShadow (const IWAMessage &msg, IWORKShadow &shadow)
 
static void readPadding (const IWAMessage &msg, IWORKPadding &padding)
 

Protected Attributes

IWORKLanguageManager m_langManager
 
std::shared_ptr< IWORKTextm_currentText
 

Private Types

typedef std::map< unsigned,
boost::variant< std::string,
unsigned > > 
DataList_t
 

Private Member Functions

 IWAParser (const IWAParser &)
 
IWAParseroperator= (const IWAParser &)
 
virtual bool parseDocument ()=0
 
void queryObject (unsigned id, unsigned &type, boost::optional< IWAMessage > &msg) const
 
const RVNGInputStreamPtr_t queryFile (unsigned id) const
 
void parseObjectIndex ()
 
void scanFragment (unsigned id)
 
void scanFragment (unsigned id, const RVNGInputStreamPtr_t &stream)
 
void parseCharacterStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseParagraphStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseGraphicStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseCellStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseTableStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseListStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseTabularModel (unsigned id)
 
void parseDataList (unsigned id, DataList_t &dataList)
 
void parseTile (unsigned id)
 
void parseHeaders (unsigned id, TableHeader &header)
 
void parseLink (unsigned id, std::string &url)
 
bool parseDrawableShape (const IWAMessage &msg)
 
bool parseGroup (const IWAMessage &msg)
 
bool parseShapePlacement (const IWAMessage &msg)
 
void parseCharacterProperties (const IWAMessage &msg, IWORKPropertyMap &props)
 
bool parseImage (const IWAMessage &msg)
 
bool parseTabularInfo (const IWAMessage &msg)
 

Private Attributes

const RVNGInputStreamPtr_t m_fragments
 
const RVNGInputStreamPtr_t m_package
 
IWORKCollectorm_collector
 
FileMap_t m_fragmentMap
 
RecordMap_t m_fragmentObjectMap
 
FileMap_t m_fileMap
 
std::deque< unsigned > m_visited
 
StyleMap_t m_charStyles
 
StyleMap_t m_paraStyles
 
StyleMap_t m_graphicStyles
 
StyleMap_t m_cellStyles
 
StyleMap_t m_tableStyles
 
StyleMap_t m_listStyles
 
IWORKTableNameMapPtr_t m_tableNameMap
 
std::shared_ptr< TableInfom_currentTable
 

Friends

class ObjectMessage
 

Member Typedef Documentation

typedef std::map<unsigned, boost::variant<std::string, unsigned> > libetonyek::IWAParser::DataList_t
private
typedef std::map<unsigned, std::pair<std::string, RVNGInputStreamPtr_t> > libetonyek::IWAParser::FileMap_t
typedef std::map<unsigned, std::pair<unsigned, ObjectRecord> > libetonyek::IWAParser::RecordMap_t
typedef std::map<unsigned, IWORKStylePtr_t> libetonyek::IWAParser::StyleMap_t
protected
typedef std::function<void(unsigned, IWORKStylePtr_t &)> libetonyek::IWAParser::StyleParseFun_t
protected

Constructor & Destructor Documentation

libetonyek::IWAParser::IWAParser ( const IWAParser )
private
libetonyek::IWAParser::IWAParser ( const RVNGInputStreamPtr_t fragments,
const RVNGInputStreamPtr_t package,
IWORKCollector collector 
)

Member Function Documentation

bool libetonyek::IWAParser::dispatchShape ( unsigned  id)
protected
IWAParser& libetonyek::IWAParser::operator= ( const IWAParser )
private
bool libetonyek::IWAParser::parse ( )
void libetonyek::IWAParser::parseCellStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryCellStyle().

void libetonyek::IWAParser::parseCharacterProperties ( const IWAMessage msg,
IWORKPropertyMap props 
)
private
void libetonyek::IWAParser::parseCharacterStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryCharacterStyle().

void libetonyek::IWAParser::parseComment ( unsigned  id)
protected
void libetonyek::IWAParser::parseDataList ( unsigned  id,
DataList_t dataList 
)
private

Referenced by parseTabularModel().

virtual bool libetonyek::IWAParser::parseDocument ( )
privatepure virtual
bool libetonyek::IWAParser::parseDrawableShape ( const IWAMessage msg)
private

Referenced by dispatchShape().

void libetonyek::IWAParser::parseGraphicStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryGraphicStyle().

bool libetonyek::IWAParser::parseGroup ( const IWAMessage msg)
private

Referenced by dispatchShape().

void libetonyek::IWAParser::parseHeaders ( unsigned  id,
TableHeader header 
)
private

Referenced by parseTabularModel().

bool libetonyek::IWAParser::parseImage ( const IWAMessage msg)
private

Referenced by dispatchShape().

void libetonyek::IWAParser::parseLink ( unsigned  id,
std::string &  url 
)
private

Referenced by parseText().

void libetonyek::IWAParser::parseListStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryListStyle().

void libetonyek::IWAParser::parseObjectIndex ( )
private

Referenced by parse().

void libetonyek::IWAParser::parseParagraphStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryParagraphStyle().

bool libetonyek::IWAParser::parseShapePlacement ( const IWAMessage msg,
IWORKGeometryPtr_t geometry 
)
protected
bool libetonyek::IWAParser::parseShapePlacement ( const IWAMessage msg)
private
void libetonyek::IWAParser::parseTableStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryTableStyle().

bool libetonyek::IWAParser::parseTabularInfo ( const IWAMessage msg)
private

Referenced by dispatchShape().

void libetonyek::IWAParser::parseTabularModel ( unsigned  id)
private

Referenced by parseTabularInfo().

void libetonyek::IWAParser::parseTile ( unsigned  id)
private

Referenced by parseTabularModel().

const IWORKStylePtr_t libetonyek::IWAParser::queryCellStyle ( unsigned  id) const
protected
const IWORKStylePtr_t libetonyek::IWAParser::queryCharacterStyle ( unsigned  id) const
protected

Referenced by parseCharacterStyle(), and parseText().

const RVNGInputStreamPtr_t libetonyek::IWAParser::queryFile ( unsigned  id) const
private

Referenced by parseImage(), and readFill().

const IWORKStylePtr_t libetonyek::IWAParser::queryGraphicStyle ( unsigned  id) const
protected
const IWORKStylePtr_t libetonyek::IWAParser::queryListStyle ( unsigned  id) const
protected

Referenced by parseListStyle(), and parseText().

void libetonyek::IWAParser::queryObject ( unsigned  id,
unsigned &  type,
boost::optional< IWAMessage > &  msg 
) const
private
const IWORKStylePtr_t libetonyek::IWAParser::queryParagraphStyle ( unsigned  id) const
protected
const IWORKStylePtr_t libetonyek::IWAParser::queryStyle ( unsigned  id,
StyleMap_t styleMap,
StyleParseFun_t  parse 
) const
protected
const IWORKStylePtr_t libetonyek::IWAParser::queryTableStyle ( unsigned  id) const
protected
boost::optional< IWORKColor > libetonyek::IWAParser::readColor ( const IWAMessage msg,
unsigned  field 
)
staticprotected
bool libetonyek::IWAParser::readFill ( const IWAMessage msg,
IWORKFill fill 
)
protected
void libetonyek::IWAParser::readGradient ( const IWAMessage msg,
IWORKGradient gradient 
)
staticprotected

Referenced by readFill().

void libetonyek::IWAParser::readPadding ( const IWAMessage msg,
IWORKPadding padding 
)
staticprotected

Referenced by parseCellStyle().

boost::optional< IWORKPosition > libetonyek::IWAParser::readPosition ( const IWAMessage msg,
unsigned  field 
)
staticprotected
std::deque< unsigned > libetonyek::IWAParser::readRefs ( const IWAMessage msg,
unsigned  field 
)
staticprotected
void libetonyek::IWAParser::readShadow ( const IWAMessage msg,
IWORKShadow shadow 
)
staticprotected
boost::optional< IWORKSize > libetonyek::IWAParser::readSize ( const IWAMessage msg,
unsigned  field 
)
staticprotected
void libetonyek::IWAParser::readStroke ( const IWAMessage msg,
IWORKStroke stroke 
)
staticprotected
void libetonyek::IWAParser::scanFragment ( unsigned  id)
private

Referenced by parseObjectIndex(), and queryObject().

void libetonyek::IWAParser::scanFragment ( unsigned  id,
const RVNGInputStreamPtr_t stream 
)
private

Friends And Related Function Documentation

friend class ObjectMessage
friend

Member Data Documentation

StyleMap_t libetonyek::IWAParser::m_cellStyles
mutableprivate

Referenced by queryCellStyle().

StyleMap_t libetonyek::IWAParser::m_charStyles
mutableprivate

Referenced by queryCharacterStyle().

std::shared_ptr<TableInfo> libetonyek::IWAParser::m_currentTable
private

Referenced by parseTabularModel(), and parseTile().

FileMap_t libetonyek::IWAParser::m_fileMap
mutableprivate

Referenced by parseObjectIndex(), and queryFile().

FileMap_t libetonyek::IWAParser::m_fragmentMap
private

Referenced by parseObjectIndex(), and scanFragment().

RecordMap_t libetonyek::IWAParser::m_fragmentObjectMap
mutableprivate
const RVNGInputStreamPtr_t libetonyek::IWAParser::m_fragments
private

Referenced by scanFragment().

StyleMap_t libetonyek::IWAParser::m_graphicStyles
mutableprivate

Referenced by queryGraphicStyle().

StyleMap_t libetonyek::IWAParser::m_listStyles
mutableprivate
const RVNGInputStreamPtr_t libetonyek::IWAParser::m_package
private

Referenced by parseObjectIndex(), and queryFile().

StyleMap_t libetonyek::IWAParser::m_paraStyles
mutableprivate

Referenced by queryParagraphStyle().

IWORKTableNameMapPtr_t libetonyek::IWAParser::m_tableNameMap
private

Referenced by parseTabularModel().

StyleMap_t libetonyek::IWAParser::m_tableStyles
mutableprivate

Referenced by queryListStyle(), and queryTableStyle().

std::deque<unsigned> libetonyek::IWAParser::m_visited
private

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

Generated for libetonyek by doxygen 1.8.5