FullWrtParser Class Referencefinal

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

`#include <FullWrtParser.hxx>`

Inheritance diagram for FullWrtParser:

## Public Member Functions

| FullWrtParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor
| ~FullWrtParser () final
| destructor
bool | checkHeader (MWAWHeader *header, bool strict=false) final
| checks if the document header is correct (or not)
void | parse (librevenge::RVNGTextInterface *documentInterface) final
| virtual function used to parse the input
Public Member Functions inherited from MWAWTextParser
| ~MWAWTextParser () override
| destructor
Public Member Functions inherited from MWAWParser
virtual | ~MWAWParser ()
| virtual destructor
int | version () const
| returns the works version
MWAWParserStatePtr | getParserState ()
| returns the parser state
MWAWHeader * | getHeader ()
| returns the header
MWAWInputStreamPtr & | getInput ()
| returns the actual input
MWAWListenerPtr | getMainListener ()
| returns the main listener
MWAWGraphicListenerPtr & | getGraphicListener ()
| returns the graphic listener
MWAWPresentationListenerPtr & | getPresentationListener ()
| returns the presentation listener
MWAWSpreadsheetListenerPtr & | getSpreadsheetListener ()
| returns the spreadsheet listener
MWAWTextListenerPtr & | getTextListener ()
| returns the text listener
MWAWFontConverterPtr & | getFontConverter ()
| returns the font converter
MWAWFontManagerPtr & | getFontManager ()
| returns the font manager
MWAWPageSpan const & | getPageSpan () const
| returns the actual page dimension
MWAWPageSpan & | getPageSpan ()
| returns the actual page dimension
double | getFormLength () const
| returns the form length
double | getFormWidth () const
| returns the form width
double | getPageLength () const
| returns the page length (form length without margin )
double | getPageWidth () const
| returns the page width (form width without margin )
MWAWRSRCParserPtr & | getRSRCParser ()
| returns the rsrc parser
libmwaw::DebugFile & | ascii ()
| a DebugFile used to write what we recognize when we parse the document

## Protected Member Functions

void | init ()
| inits all internal variables
void | createDocument (librevenge::RVNGTextInterface *documentInterface)
| creates the listener which will be associated to the document
bool | createZones ()
| finds the different objects zones
bool | createFileZones ()
| create the file zone ( first step of create zones)
void | newPage (int number)
| adds a new page
bool | readDocPosition ()
| find the last position of the document and read data
bool | readFileZoneFlags (FullWrtStruct::EntryPtr zone)
| try to read the file zones main flags
bool | readFileZonePos (FullWrtStruct::EntryPtr zone)
| try to read the file zones position
bool | readDocZoneData (FullWrtStruct::EntryPtr zone)
| try to read the zone containing the data of each doc zone (ie. Zone0)
bool | readDocZoneStruct (FullWrtStruct::EntryPtr zone)
| try to read the zone which stores the structure of zone0, ... (ie. Zone1)
bool | readDocInfo (FullWrtStruct::EntryPtr zone)
| try to read zone2, a zone which stores the document information zone, ...
bool | readEndDocInfo (FullWrtStruct::EntryPtr zone)
| try to read the end of zone2 (only v2) ?
bool | readCitationDocInfo (FullWrtStruct::EntryPtr zone)
| try to read the list of citation (at the end of doc info)
bool | readPrintInfo (FullWrtStruct::EntryPtr zone)
| try read the print info zone
MWAWVec2f | getPageLeftTop () const
| returns the page left top point ( in inches)
bool | getBorder (int bId, FullWrtStruct::Border &border) const
| try to return a border corresponding to an id
void | sendText (int docId, libmwaw::SubDocumentType type, MWAWNote::Type which=MWAWNote::FootNote)
| try to send a footnote/endnote entry
void | sendGraphic (int docId)
| try to send a graphic
void | sendVariable (int docId)
| try to send a variable, in pratice do nothing
void | sendReference (int docId)
| try to send a reference, in pratice do nothing
bool | send (int fileId, MWAWColor fontColor=MWAWColor::black())
| ask the text parser to send a zone
int | getNumDocZoneStruct () const
| returns the number of zone struct
std::string | getDocumentTypeName (int zId) const
| returns a the type of a document zone ( mainly used for debugging)
bool | readReferenceData (FullWrtStruct::EntryPtr zone)
| try to read the reference data
bool | readGenericDocData (FullWrtStruct::EntryPtr zone, FullWrtStruct::ZoneHeader &doc)
| try to read the data of a zone which begins with a generic header
Protected Member Functions inherited from MWAWTextParser
| MWAWTextParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected)
| MWAWTextParser (MWAWParserStatePtr const &state)
| constructor using a state
Protected Member Functions inherited from MWAWParser
| MWAWParser (MWAWParserState::Type type, MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected)
| MWAWParser (MWAWParserStatePtr const &state)
| constructor using a state
void | setVersion (int vers)
| sets the document's version
void | setGraphicListener (MWAWGraphicListenerPtr &listener)
| sets the graphic listener
void | resetGraphicListener ()
| resets the listener
void | setPresentationListener (MWAWPresentationListenerPtr &listener)
| sets the presentation listener
void | resetPresentationListener ()
| resets the listener
void | setSpreadsheetListener (MWAWSpreadsheetListenerPtr &listener)
| sets the spreadsheet listener
void | resetSpreadsheetListener ()
| resets the listener
void | setTextListener (MWAWTextListenerPtr &listener)
| sets the text listener
void | resetTextListener ()
| resets the listener
void | setAsciiName (char const *name)
| Debugging: change the default ascii file.
std::string const & | asciiName () const
| return the ascii file name

## Protected Attributes

std::shared_ptr< FullWrtParserInternal::State > | m_state
| the state
std::shared_ptr< FullWrtGraph > | m_graphParser
| the graph parser
std::shared_ptr< FullWrtText > | m_textParser
| the text parser

## Friends

class | FullWrtGraph
class | FullWrtText
class | FullWrtParserInternal::SubDocument

## Detailed Description

the main class to read a FullWrite file

## Constructor & Destructor Documentation

## FullWrtParser()

FullWrtParser::FullWrtParser | ( | MWAWInputStreamPtr const & | input,
|  | MWAWRSRCParserPtr const & | rsrcParser,
|  | MWAWHeader * | header )

constructor

## ~FullWrtParser()

FullWrtParser::~FullWrtParser | ( |  | ) |

final

destructor

## Member Function Documentation

## checkHeader()

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

final virtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by FullWrtParserInternal::SubDocument, and parse().

## createDocument()

void FullWrtParser::createDocument | ( | librevenge::RVNGTextInterface * | documentInterface | ) |

protected

creates the listener which will be associated to the document

Referenced by FullWrtParserInternal::SubDocument, and parse().

## createFileZones()

bool FullWrtParser::createFileZones | ( |  | ) |

protected

create the file zone ( first step of create zones)

Referenced by createZones(), and FullWrtParserInternal::SubDocument.

## createZones()

bool FullWrtParser::createZones | ( |  | ) |

protected

finds the different objects zones

Referenced by FullWrtParserInternal::SubDocument, and parse().

## getBorder()

bool FullWrtParser::getBorder | ( | int | bId,
|  | FullWrtStruct::Border & | border ) const

protected

try to return a border corresponding to an id

Referenced by FullWrtParserInternal::SubDocument.

## getDocumentTypeName()

std::string FullWrtParser::getDocumentTypeName | ( | int | zId | ) | const

protected

returns a the type of a document zone ( mainly used for debugging)

Referenced by FullWrtParserInternal::SubDocument.

## getNumDocZoneStruct()

int FullWrtParser::getNumDocZoneStruct | ( |  | ) | const

protected

returns the number of zone struct

Referenced by FullWrtParserInternal::SubDocument.

## getPageLeftTop()

MWAWVec2f FullWrtParser::getPageLeftTop | ( |  | ) | const

protected

returns the page left top point ( in inches)

Referenced by FullWrtParserInternal::SubDocument.

## init()

void FullWrtParser::init | ( |  | ) |

protected

inits all internal variables

Referenced by FullWrtParser(), and FullWrtParserInternal::SubDocument.

## newPage()

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

protected

adds a new page

Referenced by FullWrtParserInternal::SubDocument.

## parse()

void FullWrtParser::parse | ( | librevenge::RVNGTextInterface * | documentInterface | ) |

final virtual

virtual function used to parse the input

Implements MWAWTextParser.

Referenced by FullWrtParserInternal::SubDocument.

## readCitationDocInfo()

bool FullWrtParser::readCitationDocInfo | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read the list of citation (at the end of doc info)

Referenced by FullWrtParserInternal::SubDocument, and readEndDocInfo().

## readDocInfo()

bool FullWrtParser::readDocInfo | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read zone2, a zone which stores the document information zone, ...

Referenced by createZones(), and FullWrtParserInternal::SubDocument.

## readDocPosition()

bool FullWrtParser::readDocPosition | ( |  | ) |

protected

find the last position of the document and read data

Referenced by checkHeader(), and FullWrtParserInternal::SubDocument.

## readDocZoneData()

bool FullWrtParser::readDocZoneData | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read the zone containing the data of each doc zone (ie. Zone0)

Referenced by createZones(), and FullWrtParserInternal::SubDocument.

## readDocZoneStruct()

bool FullWrtParser::readDocZoneStruct | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read the zone which stores the structure of zone0, ... (ie. Zone1)

Referenced by createZones(), and FullWrtParserInternal::SubDocument.

## readEndDocInfo()

bool FullWrtParser::readEndDocInfo | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read the end of zone2 (only v2) ?

Referenced by FullWrtParserInternal::SubDocument, and readDocInfo().

## readFileZoneFlags()

bool FullWrtParser::readFileZoneFlags | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read the file zones main flags

-1: generic, -2: null, other fId

Referenced by createFileZones(), and FullWrtParserInternal::SubDocument.

## readFileZonePos()

bool FullWrtParser::readFileZonePos | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read the file zones position

Referenced by createFileZones(), and FullWrtParserInternal::SubDocument.

## readGenericDocData()

bool FullWrtParser::readGenericDocData | ( | FullWrtStruct::EntryPtr | zone,
|  | FullWrtStruct::ZoneHeader & | doc )

protected

try to read the data of a zone which begins with a generic header

Referenced by FullWrtParserInternal::SubDocument, and readDocZoneData().

## readPrintInfo()

bool FullWrtParser::readPrintInfo | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try read the print info zone

Referenced by FullWrtParserInternal::SubDocument, and readDocInfo().

## readReferenceData()

bool FullWrtParser::readReferenceData | ( | FullWrtStruct::EntryPtr | zone | ) |

protected

try to read the reference data

Referenced by FullWrtParserInternal::SubDocument, and readDocZoneData().

## send()

bool FullWrtParser::send | ( | int | fileId,
|  | MWAWColor | fontColor = MWAWColor::black() )

protected

ask the text parser to send a zone

Referenced by FullWrtParserInternal::SubDocument.

## sendGraphic()

void FullWrtParser::sendGraphic | ( | int | docId | ) |

protected

try to send a graphic

Referenced by FullWrtParserInternal::SubDocument, and sendVariable().

## sendReference()

void FullWrtParser::sendReference | ( | int | docId | ) |

protected

try to send a reference, in pratice do nothing

Referenced by FullWrtParserInternal::SubDocument.

## sendText()

void FullWrtParser::sendText | ( | int | docId,
|  | libmwaw::SubDocumentType | type,
|  | MWAWNote::Type | which = MWAWNote::FootNote )

protected

try to send a footnote/endnote entry

Referenced by FullWrtParserInternal::SubDocument.

## sendVariable()

void FullWrtParser::sendVariable | ( | int | docId | ) |

protected

try to send a variable, in pratice do nothing

in this case, the content seems to be a textbox which contains the field display, but as in general this zone is not read correctly (ie. the field is not found ) and as sending textbox is not implemented, better to stop here...

Referenced by FullWrtParserInternal::SubDocument.

## Friends And Related Symbol Documentation

## FullWrtGraph

friend class FullWrtGraph

friend

Referenced by FullWrtGraph, and init().

## FullWrtParserInternal::SubDocument

friend class FullWrtParserInternal::SubDocument

friend

## FullWrtText

friend class FullWrtText

friend

Referenced by FullWrtText, and init().

## Member Data Documentation

## m_graphParser

std::shared_ptr<FullWrtGraph> FullWrtParser::m_graphParser

protected

the graph parser

Referenced by createDocument(), createZones(), FullWrtParser(), getBorder(), init(), parse(), readDocZoneData(), readEndDocInfo(), and sendGraphic().

## m_state

std::shared_ptr<FullWrtParserInternal::State> FullWrtParser::m_state

protected

the state

Referenced by checkHeader(), createDocument(), createFileZones(), createZones(), FullWrtParser(), getDocumentTypeName(), getNumDocZoneStruct(), getPageLeftTop(), init(), newPage(), parse(), readDocInfo(), readDocPosition(), readDocZoneData(), readDocZoneStruct(), readFileZoneFlags(), readFileZonePos(), readGenericDocData(), readPrintInfo(), readReferenceData(), sendGraphic(), sendReference(), sendText(), sendVariable(), and ~FullWrtParser().

## m_textParser

std::shared_ptr<FullWrtText> FullWrtParser::m_textParser

protected

the text parser

Referenced by createDocument(), createZones(), FullWrtParser(), init(), parse(), readDocZoneData(), readEndDocInfo(), and send().

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

- FullWrtParser.hxx
- FullWrtParser.cxx