#include <IWAParser.h>
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 boost::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< IWORKSize > | readSize (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 |
boost::shared_ptr< IWORKText > | m_currentText |
Private Types | |
typedef std::map< unsigned, boost::variant< std::string, unsigned > > | DataList_t |
Private Member Functions | |
IWAParser (const IWAParser &) | |
IWAParser & | operator= (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 |
IWORKCollector & | m_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 |
boost::shared_ptr< TableInfo > | m_currentTable |
Friends | |
class | ObjectMessage |
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 boost::function<void(unsigned, IWORKStylePtr_t &)> libetonyek::IWAParser::StyleParseFun_t [protected] |
libetonyek::IWAParser::IWAParser | ( | const IWAParser & | ) | [private] |
libetonyek::IWAParser::IWAParser | ( | const RVNGInputStreamPtr_t & | fragments, |
const RVNGInputStreamPtr_t & | package, | ||
IWORKCollector & | collector | ||
) |
bool libetonyek::IWAParser::dispatchShape | ( | unsigned | id | ) | [protected] |
Reimplemented in libetonyek::KEY6Parser.
Referenced by parseGroup().
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] |
Referenced by parseCharacterStyle(), and parseParagraphStyle().
void libetonyek::IWAParser::parseCharacterStyle | ( | unsigned | id, |
IWORKStylePtr_t & | style | ||
) | [private] |
Referenced by queryCharacterStyle().
void libetonyek::IWAParser::parseComment | ( | unsigned | id | ) | [protected] |
Referenced by libetonyek::KEY6Parser::parseStickyNote().
void libetonyek::IWAParser::parseDataList | ( | unsigned | id, |
DataList_t & | dataList | ||
) | [private] |
Referenced by parseTabularModel().
virtual bool libetonyek::IWAParser::parseDocument | ( | ) | [private, pure virtual] |
Implemented in libetonyek::KEY6Parser, libetonyek::NUM3Parser, and libetonyek::PAG5Parser.
Referenced by parse().
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().
bool libetonyek::IWAParser::parseText | ( | unsigned | id | ) | [protected] |
void libetonyek::IWAParser::parseTile | ( | unsigned | id | ) | [private] |
Referenced by parseTabularModel().
const IWORKStylePtr_t libetonyek::IWAParser::queryCellStyle | ( | unsigned | id | ) | const [protected] |
Referenced by parseCellStyle(), parseTabularModel(), and parseTile().
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] |
Referenced by parseDrawableShape(), and parseGraphicStyle().
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] |
Referenced by libetonyek::IWAParser::ObjectMessage::ObjectMessage().
const IWORKStylePtr_t libetonyek::IWAParser::queryParagraphStyle | ( | unsigned | id | ) | const [protected] |
Referenced by parseParagraphStyle(), parseTabularModel(), and parseText().
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] |
Referenced by parseTableStyle(), and parseTabularModel().
boost::optional< IWORKColor > libetonyek::IWAParser::readColor | ( | const IWAMessage & | msg, |
unsigned | field | ||
) | [static, protected] |
Referenced by parseCharacterProperties(), parseGraphicStyle(), parseParagraphStyle(), readFill(), readGradient(), readShadow(), and readStroke().
bool libetonyek::IWAParser::readFill | ( | const IWAMessage & | msg, |
IWORKFill & | fill | ||
) | [protected] |
Referenced by parseCellStyle(), parseGraphicStyle(), libetonyek::KEY6Parser::parseSlideStyle(), and parseTableStyle().
void libetonyek::IWAParser::readGradient | ( | const IWAMessage & | msg, |
IWORKGradient & | gradient | ||
) | [static, protected] |
Referenced by readFill().
void libetonyek::IWAParser::readPadding | ( | const IWAMessage & | msg, |
IWORKPadding & | padding | ||
) | [static, protected] |
Referenced by parseCellStyle().
boost::optional< IWORKPosition > libetonyek::IWAParser::readPosition | ( | const IWAMessage & | msg, |
unsigned | field | ||
) | [static, protected] |
Referenced by parseDrawableShape(), and parseShapePlacement().
boost::optional< unsigned > libetonyek::IWAParser::readRef | ( | const IWAMessage & | msg, |
unsigned | field | ||
) | [static, protected] |
Referenced by parseCellStyle(), parseCharacterStyle(), libetonyek::PAG5Parser::parseDocument(), libetonyek::KEY6Parser::parseDocument(), parseDrawableShape(), parseGraphicStyle(), parseImage(), parseListStyle(), libetonyek::KEY6Parser::parseNotes(), parseParagraphStyle(), libetonyek::KEY6Parser::parsePlaceholder(), libetonyek::KEY6Parser::parsePresentation(), libetonyek::KEY6Parser::parseSlide(), libetonyek::KEY6Parser::parseSlideStyle(), libetonyek::KEY6Parser::parseStickyNote(), parseTableStyle(), parseTabularInfo(), parseTabularModel(), parseText(), and readFill().
std::deque< unsigned > libetonyek::IWAParser::readRefs | ( | const IWAMessage & | msg, |
unsigned | field | ||
) | [static, protected] |
void libetonyek::IWAParser::readShadow | ( | const IWAMessage & | msg, |
IWORKShadow & | shadow | ||
) | [static, protected] |
boost::optional< IWORKSize > libetonyek::IWAParser::readSize | ( | const IWAMessage & | msg, |
unsigned | field | ||
) | [static, protected] |
Referenced by parseDrawableShape(), parseImage(), parseShapePlacement(), and readFill().
void libetonyek::IWAParser::readStroke | ( | const IWAMessage & | msg, |
IWORKStroke & | stroke | ||
) | [static, protected] |
Referenced by parseCellStyle(), parseGraphicStyle(), and parseParagraphStyle().
void libetonyek::IWAParser::scanFragment | ( | unsigned | id | ) | [private] |
Referenced by parseObjectIndex(), and queryObject().
void libetonyek::IWAParser::scanFragment | ( | unsigned | id, |
const RVNGInputStreamPtr_t & | stream | ||
) | [private] |
friend class ObjectMessage [friend] |
StyleMap_t libetonyek::IWAParser::m_cellStyles [mutable, private] |
Referenced by queryCellStyle().
StyleMap_t libetonyek::IWAParser::m_charStyles [mutable, private] |
Referenced by queryCharacterStyle().
IWORKCollector& libetonyek::IWAParser::m_collector [private] |
Reimplemented in libetonyek::KEY6Parser, libetonyek::NUM3Parser, and libetonyek::PAG5Parser.
Referenced by parseDrawableShape(), parseGroup(), parseImage(), parseShapePlacement(), parseTabularInfo(), parseTabularModel(), and parseTile().
boost::shared_ptr<TableInfo> libetonyek::IWAParser::m_currentTable [private] |
Referenced by parseTabularModel(), and parseTile().
boost::shared_ptr<IWORKText> libetonyek::IWAParser::m_currentText [protected] |
FileMap_t libetonyek::IWAParser::m_fileMap [mutable, private] |
Referenced by parseObjectIndex(), and queryFile().
Referenced by parseObjectIndex(), and scanFragment().
RecordMap_t libetonyek::IWAParser::m_fragmentObjectMap [mutable, private] |
Referenced by parseObjectIndex(), queryObject(), and scanFragment().
const RVNGInputStreamPtr_t libetonyek::IWAParser::m_fragments [private] |
Referenced by scanFragment().
StyleMap_t libetonyek::IWAParser::m_graphicStyles [mutable, private] |
Referenced by queryGraphicStyle().
StyleMap_t libetonyek::IWAParser::m_listStyles [mutable, private] |
const RVNGInputStreamPtr_t libetonyek::IWAParser::m_package [private] |
Referenced by parseObjectIndex(), and queryFile().
StyleMap_t libetonyek::IWAParser::m_paraStyles [mutable, private] |
Referenced by queryParagraphStyle().
Referenced by parseTabularModel().
StyleMap_t libetonyek::IWAParser::m_tableStyles [mutable, private] |
Referenced by queryListStyle(), and queryTableStyle().
std::deque<unsigned> libetonyek::IWAParser::m_visited [private] |
Referenced by libetonyek::IWAParser::ObjectMessage::ObjectMessage().