FullWrtParser Class Referencefinal

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

#include <FullWrtParser.hxx>

Inheritance diagram for FullWrtParser:
MWAWTextParser MWAWParser

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
MWAWHeadergetHeader ()
 returns the header
MWAWInputStreamPtrgetInput ()
 returns the actual input
MWAWListenerPtr getMainListener ()
 returns the main listener
MWAWGraphicListenerPtrgetGraphicListener ()
 returns the graphic listener
MWAWPresentationListenerPtrgetPresentationListener ()
 returns the presentation listener
MWAWSpreadsheetListenerPtrgetSpreadsheetListener ()
 returns the spreadsheet listener
MWAWTextListenerPtrgetTextListener ()
 returns the text listener
MWAWFontConverterPtrgetFontConverter ()
 returns the font converter
MWAWFontManagerPtrgetFontManager ()
 returns the font manager
MWAWPageSpan const & getPageSpan () const
 returns the actual page dimension
MWAWPageSpangetPageSpan ()
 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 )
MWAWRSRCParserPtrgetRSRCParser ()
 returns the rsrc parser
libmwaw::DebugFileascii ()
 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::Statem_state
 the state
std::shared_ptr< FullWrtGraphm_graphParser
 the graph parser
std::shared_ptr< FullWrtTextm_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.

◆ FullWrtGraph

friend class FullWrtGraph
friend

Referenced by FullWrtGraph, and init().

◆ FullWrtParserInternal::SubDocument

◆ FullWrtText

friend class FullWrtText
friend

Referenced by FullWrtText, and init().

Member Data Documentation

◆ m_graphParser

std::shared_ptr<FullWrtGraph> FullWrtParser::m_graphParser
protected

◆ m_state

◆ m_textParser

std::shared_ptr<FullWrtText> FullWrtParser::m_textParser
protected

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

Generated on Sun Jun 29 2025 04:36:27 for libmwaw by doxygen 1.14.0