FullWrtParser Class Reference documentation

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 )
| finalvirtual

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 | ) |
| finalvirtual

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