MSWParser Class Reference

the main class to read a Microsoft Word file More...

`#include <MSWParser.hxx>`

Inheritance diagram for MSWParser:

## Public Member Functions

| MSWParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
| constructor More...
virtual | ~MSWParser ()
| destructor More...
bool | checkHeader (MWAWHeader *header, bool strict=false)
| checks if the document header is correct (or not) More...
void | parse (WPXDocumentInterface *documentInterface)
| the main parse function More...
Public Member Functions inherited from MWAWParser
virtual | ~MWAWParser ()
| virtual destructor More...
int | version () const
| returns the works version More...
void | setVersion (int vers)
| sets the works version More...

## Protected Member Functions

void | init ()
| inits all internal variables More...
void | createDocument (WPXDocumentInterface *documentInterface)
| creates the listener which will be associated to the document More...
bool | createZones ()
| finds the different zones More...
bool | readHeaderEndV3 ()
| finish reading the header (v3) More...
bool | readZoneList ()
| read the list of zones More...
bool | readPrintInfo (MSWEntry &entry)
| read the print info zone More...
bool | readPrinter (MSWEntry &entry)
| read the printer name More...
bool | readDocSum (MSWEntry &entry)
| read the document sumary More...
bool | readStringsZone (MSWEntry &entry, std::vector< std::string > &list)
| read a zone which consists in a list of string More...
bool | readObjects ()
| read the objects More...
bool | readObjectList (MSWEntry &entry)
| read the object list More...
bool | readObjectFlags (MSWEntry &entry)
| read the object flags More...
bool | readObject (MSWParserInternal::Object &obj)
| read an object More...
bool | readDocumentInfo (MSWEntry &entry)
| read the page dimensions + ? More...
bool | readZone17 (MSWEntry &entry)
| read the zone 17( some bdbox + text position ?) More...
bool | checkPicturePos (long pos, int type)
| check if a position corresponds or not to a picture entry More...
bool | readPicture (MSWEntry &entry)
| read a picture data More...
void | sendPicture (long fPos, int cPos, MWAWPosition::AnchorTo anchor=MWAWPosition::Char)
| send a picture More...
bool | getColor (int id, MWAWColor &col) const
| returns the color corresponding to an id More...
void | newPage (int number)
| adds a new page More...
void | sendFootnote (int id)
| try to send a footnote id More...
void | sendFieldComment (int id)
| try to send a bookmark field id More...
void | send (int id, libmwaw::SubDocumentType type)
| try to send a footnote, a field to the textParser More...
void | send (MWAWEntry const &entry)
| try to send a text to the textParser More...
MSWEntry | readEntry (std::string type, int id=-1)
| read a file entry More...
Protected Member Functions inherited from MWAWParser
| MWAWParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
| constructor (protected) More...
| MWAWParser (MWAWParserStatePtr state)
| constructor using a state More...
MWAWParserStatePtr | getParserState ()
| returns the parser state More...
MWAWHeader * | getHeader ()
| returns the header More...
MWAWInputStreamPtr & | getInput ()
| returns the actual input More...
MWAWContentListenerPtr & | getListener ()
| returns the listener More...
MWAWPageSpan const & | getPageSpan () const
| returns the actual page dimension More...
MWAWPageSpan & | getPageSpan ()
| returns the actual page dimension More...
double | getFormLength () const
| returns the form length More...
double | getFormWidth () const
| returns the form width More...
double | getPageLength () const
| returns the page length (form length without margin ) More...
double | getPageWidth () const
| returns the page width (form width without margin ) More...
MWAWRSRCParserPtr & | getRSRCParser ()
| returns the rsrc parser More...
void | setListener (MWAWContentListenerPtr &listener)
| sets the listener More...
void | resetListener ()
| resets the listener More...
MWAWFontConverterPtr & | getFontConverter ()
| returns the font converter More...
void | setFontConverter (MWAWFontConverterPtr fontConverter)
| sets the font convertor More...
libmwaw::DebugFile & | ascii ()
| a DebugFile used to write what we recognize when we parse the document More...
void | setAsciiName (char const *name)
| Debugging: change the default ascii file. More...
std::string const & | asciiName () const
| return the ascii file name More...

## Protected Attributes

shared_ptr < MSWParserInternal::State > | m_state
| the state More...
std::multimap< std::string, MSWEntry > | m_entryMap
| the list of entries More...
shared_ptr< MSWText > | m_textParser
| the text parser More...

## Friends

class | MSWText
class | MSWTextStyles
class | MSWParserInternal::SubDocument

## Detailed Description

the main class to read a Microsoft Word file

## Constructor & Destructor Documentation

MSWParser::MSWParser | ( | MWAWInputStreamPtr | input,
|  | MWAWRSRCParserPtr | rsrcParser,
|  | MWAWHeader * | header
| ) |  |

constructor

MSWParser::~MSWParser | ( |  | ) |

virtual

destructor

## Member Function Documentation

bool MSWParser::checkHeader | ( | MWAWHeader * | header,
|  | bool | strict = `false`
| ) |  |

virtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by parse().

bool MSWParser::checkPicturePos | ( | long | pos,
|  | int | type
| ) |  |

protected

check if a position corresponds or not to a picture entry

Referenced by MSWTextStyles::readFont().

void MSWParser::createDocument | ( | WPXDocumentInterface * | documentInterface | ) |

protected

creates the listener which will be associated to the document

Referenced by parse().

bool MSWParser::createZones | ( |  | ) |

protected

finds the different zones

Referenced by parse().

bool MSWParser::getColor | ( | int | id,
|  | MWAWColor & | col
| ) |  | const

protected

returns the color corresponding to an id

Referenced by MSWTextStyles::readFont().

void MSWParser::init | ( |  | ) |

protected

inits all internal variables

Referenced by MSWParser().

void MSWParser::newPage | ( | int | number | ) |

protected

adds a new page

Referenced by MSWText::sendText().

void MSWParser::parse | ( | WPXDocumentInterface * | documentInterface | ) |

virtual

the main parse function

Implements MWAWParser.

bool MSWParser::readDocSum | ( | MSWEntry & | entry | ) |

protected

read the document sumary

Referenced by createZones().

bool MSWParser::readDocumentInfo | ( | MSWEntry & | entry | ) |

protected

read the page dimensions + ?

Referenced by createZones().

MSWEntry MSWParser::readEntry | ( | std::string | type,
|  | int | id = `-1`
| ) |  |

protected

read a file entry

Referenced by readZoneList().

bool MSWParser::readHeaderEndV3 | ( |  | ) |

protected

finish reading the header (v3)

Referenced by checkHeader().

bool MSWParser::readObject | ( | MSWParserInternal::Object & | obj | ) |

protected

read an object

Referenced by readObjects().

bool MSWParser::readObjectFlags | ( | MSWEntry & | entry | ) |

protected

read the object flags

Referenced by readObjects().

bool MSWParser::readObjectList | ( | MSWEntry & | entry | ) |

protected

read the object list

Referenced by readObjects().

bool MSWParser::readObjects | ( |  | ) |

protected

read the objects

Referenced by createZones().

bool MSWParser::readPicture | ( | MSWEntry & | entry | ) |

protected

read a picture data

Referenced by createZones().

bool MSWParser::readPrinter | ( | MSWEntry & | entry | ) |

protected

read the printer name

Referenced by createZones().

bool MSWParser::readPrintInfo | ( | MSWEntry & | entry | ) |

protected

read the print info zone

Referenced by createZones().

bool MSWParser::readStringsZone | ( | MSWEntry & | entry,
|  | std::vector< std::string > & | list
| ) |  |

protected

read a zone which consists in a list of string

Referenced by readObjects().

bool MSWParser::readZone17 | ( | MSWEntry & | entry | ) |

protected

read the zone 17( some bdbox + text position ?)

Referenced by createZones().

bool MSWParser::readZoneList | ( |  | ) |

protected

read the list of zones

Referenced by createZones().

void MSWParser::send | ( | int | id,
|  | libmwaw::SubDocumentType | type
| ) |  |

protected

try to send a footnote, a field to the textParser

void MSWParser::send | ( | MWAWEntry const & | entry | ) |

protected

try to send a text to the textParser

void MSWParser::sendFieldComment | ( | int | id | ) |

protected

try to send a bookmark field id

Referenced by MSWText::sendText().

void MSWParser::sendFootnote | ( | int | id | ) |

protected

try to send a footnote id

Referenced by MSWText::sendText().

void MSWParser::sendPicture | ( | long | fPos,
|  | int | cPos,
|  | MWAWPosition::AnchorTo | anchor = `MWAWPosition::Char`
| ) |  |

protected

send a picture

Referenced by MSWText::sendText().

## Friends And Related Function Documentation

friend class MSWParserInternal::SubDocument

friend

friend class MSWText

friend

Referenced by init().

friend class MSWTextStyles

friend

## Member Data Documentation

std::multimap<std::string, MSWEntry> MSWParser::m_entryMap

protected

the list of entries

Referenced by checkPicturePos(), createZones(), MSWText::createZones(), readEntry(), readObject(), and readObjects().

shared_ptr<MSWParserInternal::State> MSWParser::m_state

protected

the state

Referenced by checkHeader(), createDocument(), createZones(), init(), newPage(), readHeaderEndV3(), readObjectFlags(), readObjectList(), readObjects(), readPicture(), sendFootnote(), and sendPicture().

shared_ptr<MSWText> MSWParser::m_textParser

protected

the text parser

Referenced by checkHeader(), createDocument(), createZones(), init(), parse(), readHeaderEndV3(), readObjectList(), and send().

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

- MSWParser.hxx
- MSWParser.cxx