MWParser Class Reference

the main class to read a MacWrite file More...

`#include <MWParser.hxx>`

Inheritance diagram for MWParser:

## Public Member Functions

| MWParser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header)
| constructor More...
virtual | ~MWParser ()
| destructor More...
bool | checkHeader (MWAWHeader *header, bool strict=false)
| checks if the document header is correct (or not) More...
void | parse (WPXDocumentInterface *documentInterface)
| virtual function used to parse the input 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 | setListener (MWAWContentListenerPtr listen)
| sets the listener in this class and in the helper classes More...
void | createDocument (WPXDocumentInterface *documentInterface)
| creates the listener which will be associated to the document More...
bool | sendWindow (int zone)
| send a zone ( 0: MAIN ZONE, 1 : HEADER, 2 : FOOTER ) More...
bool | createZones ()
| finds the different objects zones More...
bool | createZonesV3 ()
| finds the different objects zones (version <= 3) More...
bool | readPrintInfo ()
| read the print info zone More...
bool | readWindowsInfo (int wh)
| read the windows zone More...
bool | readLinesHeight (MWAWEntry const &entry, std::vector< int > &firstParagLine, std::vector< int > &linesHeight)
| read the line height More...
bool | readInformationsV3 (int numInfo, std::vector< MWParserInternal::Information > &informations)
| read the information ( version <= 3) More...
bool | readInformations (MWAWEntry const &entry, std::vector< MWParserInternal::Information > &informations)
| read the information More...
bool | readParagraph (MWParserInternal::Information const &info)
| read a paragraph More...
bool | readGraphic (MWParserInternal::Information const &info)
| read a graphics More...
bool | readText (MWParserInternal::Information const &info, std::vector< int > const &lineHeight)
| read a text zone More...
bool | readPageBreak (MWParserInternal::Information const &info)
| read a page break zone ( version <= 3) More...
bool | checkFreeList ()
| check the free list More...
void | newPage (int number)
| adds a new page 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...

## Static Protected Member Functions

static bool | isMagicPic (WPXBinaryData const &dt)
| test if a graphic is empty. More...

## Protected Attributes

shared_ptr < MWParserInternal::State > | m_state
| the state More...

## Friends

class | MWParserInternal::SubDocument

## Detailed Description

the main class to read a MacWrite file

## Constructor & Destructor Documentation

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

constructor

MWParser::~MWParser | ( |  | ) |

virtual

destructor

## Member Function Documentation

bool MWParser::checkFreeList | ( |  | ) |

protected

check the free list

Referenced by createZones().

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

virtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by parse().

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

protected

creates the listener which will be associated to the document

Referenced by parse().

bool MWParser::createZones | ( |  | ) |

protected

finds the different objects zones

Referenced by parse().

bool MWParser::createZonesV3 | ( |  | ) |

protected

finds the different objects zones (version <= 3)

Referenced by parse().

void MWParser::init | ( |  | ) |

protected

inits all internal variables

Referenced by MWParser().

bool MWParser::isMagicPic | ( | WPXBinaryData const & | dt | ) |

static protected

test if a graphic is empty.

In v5, some empty graphic are added before a page break, so it better to remove them

Referenced by readGraphic().

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

protected

adds a new page

Referenced by sendWindow().

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

virtual

virtual function used to parse the input

Implements MWAWParser.

bool MWParser::readGraphic | ( | MWParserInternal::Information const & | info | ) |

protected

read a graphics

Referenced by sendWindow().

bool MWParser::readInformations | ( | MWAWEntry const & | entry,
|  | std::vector< MWParserInternal::Information > & | informations
| ) |  |

protected

read the information

Referenced by readWindowsInfo().

bool MWParser::readInformationsV3 | ( | int | numInfo,
|  | std::vector< MWParserInternal::Information > & | informations
| ) |  |

protected

read the information ( version <= 3)

Referenced by createZonesV3().

bool MWParser::readLinesHeight | ( | MWAWEntry const & | entry,
|  | std::vector< int > & | firstParagLine,
|  | std::vector< int > & | linesHeight
| ) |  |

protected

read the line height

Referenced by readText(), and readWindowsInfo().

bool MWParser::readPageBreak | ( | MWParserInternal::Information const & | info | ) |

protected

read a page break zone ( version <= 3)

Referenced by sendWindow().

bool MWParser::readParagraph | ( | MWParserInternal::Information const & | info | ) |

protected

read a paragraph

Referenced by sendWindow().

bool MWParser::readPrintInfo | ( |  | ) |

protected

read the print info zone

Referenced by checkHeader(), createZones(), and createZonesV3().

bool MWParser::readText | ( | MWParserInternal::Information const & | info,
|  | std::vector< int > const & | lineHeight
| ) |  |

protected

read a text zone

Referenced by sendWindow().

bool MWParser::readWindowsInfo | ( | int | wh | ) |

protected

read the windows zone

Referenced by createZones(), and createZonesV3().

bool MWParser::sendWindow | ( | int | zone | ) |

protected

send a zone ( 0: MAIN ZONE, 1 : HEADER, 2 : FOOTER )

Referenced by createDocument(), and parse().

void MWParser::setListener | ( | MWAWContentListenerPtr | listen | ) |

protected

sets the listener in this class and in the helper classes

Referenced by createDocument().

## Friends And Related Function Documentation

friend class MWParserInternal::SubDocument

friend

## Member Data Documentation

shared_ptr<MWParserInternal::State> MWParser::m_state

protected

the state

Referenced by checkFreeList(), checkHeader(), createDocument(), createZones(), createZonesV3(), init(), newPage(), parse(), readText(), readWindowsInfo(), and sendWindow().

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

- MWParser.hxx
- MWParser.cxx