NisusWrtParser Class Reference documentation

Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
NisusWrtParser Class Referencefinal

the main class to read a Nisus Writer file More...

`#include <NisusWrtParser.hxx>`

Inheritance diagram for NisusWrtParser:

## Public Member Functions
| NisusWrtParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor More...
| ~NisusWrtParser () final
| destructor More...
bool | checkHeader (MWAWHeader *header, bool strict=false) final
| checks if the document header is correct (or not) More...
void | parse (librevenge::RVNGTextInterface *documentInterface) final
| virtual function used to parse the input More...
Public Member Functions inherited from MWAWTextParser
| ~MWAWTextParser () override
| destructor More...
Public Member Functions inherited from MWAWParser
virtual | ~MWAWParser ()
| virtual destructor More...
int | version () const
| returns the works version More...
MWAWParserStatePtr | getParserState ()
| returns the parser state More...
MWAWHeader * | getHeader ()
| returns the header More...
MWAWInputStreamPtr & | getInput ()
| returns the actual input More...
MWAWListenerPtr | getMainListener ()
| returns the main listener More...
MWAWGraphicListenerPtr & | getGraphicListener ()
| returns the graphic listener More...
MWAWPresentationListenerPtr & | getPresentationListener ()
| returns the presentation listener More...
MWAWSpreadsheetListenerPtr & | getSpreadsheetListener ()
| returns the spreadsheet listener More...
MWAWTextListenerPtr & | getTextListener ()
| returns the text listener More...
MWAWFontConverterPtr & | getFontConverter ()
| returns the font converter More...
MWAWFontManagerPtr & | getFontManager ()
| returns the font manager 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...
libmwaw::DebugFile & | ascii ()
| a DebugFile used to write what we recognize when we parse the document More...

## Protected Member Functions
void | init ()
| inits all internal variables More...
void | createDocument (librevenge::RVNGTextInterface *documentInterface)
| creates the listener which will be associated to the document More...
MWAWVec2f | getPageLeftTop () const
| returns the page left top point ( in inches) More...
void | getColumnInfo (int &numColumns, float &colSep) const
| returns the columns information More...
void | getFootnoteInfo (NisusWrtStruct::FootnoteInfo &fInfo) const
| returns the footnote information More...
void | newPage (int number)
| adds a new page More...
std::string | getDateFormat (NisusWrtStruct::ZoneType zoneId, int vId) const
| returns the date format corresponding to a variable id or "" More...
bool | getReferenceData (NisusWrtStruct::ZoneType zoneId, int vId, MWAWField::Type &fType, std::string &content, std::vector< int > &number) const
| returns the fieldtype or a string corresponding to a variable More...
bool | sendPicture (int pictId, MWAWPosition const &pictPos)
| try to send a picture More...
bool | createZones ()
| finds the different objects zones More...
bool | readPrintInfo (MWAWEntry const &entry)
| read the print info zone ( id=128 ) More...
bool | readCPRC (MWAWEntry const &entry)
| read the CPRC info zone ( id=128 ), an unknown zone More...
bool | readPageLimit (MWAWEntry const &entry)
| read the PGLY info zone ( id=128 ) More...
bool | readStringsList (MWAWEntry const &entry, std::vector< std::string > &list, bool simpleList)
| read a list of strings More...
bool | readINFO (MWAWEntry const &entry)
| read the INFO info zone, an unknown zone of size 0x23a: to doo More...
bool | readReference (NisusWrtStruct::RecursifData const &data)
| parse the MRK7 resource More...
bool | readVariable (NisusWrtStruct::RecursifData const &data)
| parse the DSPL/VARI/VRS resource: numbering definition, variable or variable ? More...
bool | readCNTR (MWAWEntry const &entry, int zoneId)
| read the CNTR resource: a list of version controler ? More...
bool | readNumberingReset (MWAWEntry const &entry, int zoneId)
| parse the DPND resource: numbering reset ( one by zone ) : related to CNTR and VRS ? More...
bool | readSGP1 (NisusWrtStruct::RecursifData const &data)
| parse the SGP1 resource: a unknown resource More...
bool | readABBR (MWAWEntry const &entry)
| parse the ABBR resource: a list of abreviation? More...
bool | readFTA2 (MWAWEntry const &entry)
| parse the FTA2 resource: a list of ? find in v6 document More...
bool | readFnSc (MWAWEntry const &entry)
| parse the FnSc resource: a unknown resource, find in v6 document More...
MWAWInputStreamPtr | rsrcInput ()
| return the input input More...
libmwaw::DebugFile & | rsrcAscii ()
| a DebugFile used to write what we recognize when we parse the document in rsrc More...
Protected Member Functions inherited from MWAWTextParser
| MWAWTextParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected) More...
| MWAWTextParser (MWAWParserStatePtr const &state)
| constructor using a state More...
Protected Member Functions inherited from MWAWParser
| MWAWParser (MWAWParserState::Type type, MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected) More...
| MWAWParser (MWAWParserStatePtr const &state)
| constructor using a state More...
void | setVersion (int vers)
| sets the document's version More...
void | setGraphicListener (MWAWGraphicListenerPtr &listener)
| sets the graphic listener More...
void | resetGraphicListener ()
| resets the listener More...
void | setPresentationListener (MWAWPresentationListenerPtr &listener)
| sets the presentation listener More...
void | resetPresentationListener ()
| resets the listener More...
void | setSpreadsheetListener (MWAWSpreadsheetListenerPtr &listener)
| sets the spreadsheet listener More...
void | resetSpreadsheetListener ()
| resets the listener More...
void | setTextListener (MWAWTextListenerPtr &listener)
| sets the text listener More...
void | resetTextListener ()
| resets the listener 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
std::shared_ptr< NisusWrtParserInternal::State > | m_state
| the state More...
std::shared_ptr< NisusWrtGraph > | m_graphParser
| the graph parser More...
std::shared_ptr< NisusWrtText > | m_textParser
| the text parser More...

## Friends
struct | NisusWrtStruct::RecursifData
class | NisusWrtGraph
class | NisusWrtText

## Detailed Description

the main class to read a Nisus Writer file

## Constructor & Destructor Documentation

## ◆ NisusWrtParser()

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

constructor

## ◆ ~NisusWrtParser()

NisusWrtParser::~NisusWrtParser | ( |  | ) |
| final

destructor

## Member Function Documentation

## ◆ checkHeader()

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

checks if the document header is correct (or not)

no data fork, may be ok, but this means that the file contains no text and no picture, so...

Implements MWAWParser.

Referenced by parse().

## ◆ createDocument()

void NisusWrtParser::createDocument | ( | librevenge::RVNGTextInterface * | documentInterface | ) |
| protected

creates the listener which will be associated to the document

Referenced by parse().

## ◆ createZones()

bool NisusWrtParser::createZones | ( |  | ) |
| protected

finds the different objects zones

find also the resources :

- alis: seems to contains data and some strings
- OPEN: seems to contains one string: author? (size 0x20)
- INF2: seems to contain some colors and some data (size 0x222)
- sect: in two files: 010[1|a]0000acc0015f0000000[1|6]000... (size 0x24)

Referenced by parse().

## ◆ getColumnInfo()

void NisusWrtParser::getColumnInfo | ( | int & | numColumns,
|  | float & | colSep
| ) |  | const
| protected

returns the columns information

Referenced by NisusWrtText::sendText().

## ◆ getDateFormat()

std::string NisusWrtParser::getDateFormat | ( | NisusWrtStruct::ZoneType | zoneId,
|  | int | vId
| ) |  | const
| protected

returns the date format corresponding to a variable id or ""

Referenced by NisusWrtText::sendText().

## ◆ getFootnoteInfo()

void NisusWrtParser::getFootnoteInfo | ( | NisusWrtStruct::FootnoteInfo & | fInfo | ) | const
| protected

returns the footnote information

Referenced by NisusWrtText::sendText().

## ◆ getPageLeftTop()

MWAWVec2f NisusWrtParser::getPageLeftTop | ( |  | ) | const
| protected

returns the page left top point ( in inches)

Referenced by NisusWrtGraph::sendPageGraphics().

## ◆ getReferenceData()

bool NisusWrtParser::getReferenceData | ( | NisusWrtStruct::ZoneType | zoneId,
|  | int | vId,
|  | MWAWField::Type & | fType,
|  | std::string & | content,
|  | std::vector< int > & | number
| ) |  | const
| protected

returns the fieldtype or a string corresponding to a variable

Referenced by NisusWrtText::sendText().

## ◆ init()

void NisusWrtParser::init | ( |  | ) |
| protected

inits all internal variables

Referenced by NisusWrtParser().

## ◆ newPage()

void NisusWrtParser::newPage | ( | int | number | ) |
| protected

adds a new page

Referenced by NisusWrtText::sendText().

## ◆ parse()

void NisusWrtParser::parse | ( | librevenge::RVNGTextInterface * | documentInterface | ) |
| finalvirtual

virtual function used to parse the input

Implements MWAWTextParser.

## ◆ readABBR()

bool NisusWrtParser::readABBR | ( | MWAWEntry const & | entry | ) |
| protected

parse the ABBR resource: a list of abreviation?

read the ABBR resource: a list of abreviation ?

Referenced by createZones().

## ◆ readCNTR()

bool NisusWrtParser::readCNTR | ( | MWAWEntry const & | entry,
|  | int | zoneId
| ) |  |
| protected

read the CNTR resource: a list of version controler ?

Referenced by createZones().

## ◆ readCPRC()

bool NisusWrtParser::readCPRC | ( | MWAWEntry const & | entry | ) |
| protected

read the CPRC info zone ( id=128 ), an unknown zone

find only 0... except one time f0=1[id?], f4=1900 f6=206c [2pos?]

Referenced by createZones().

## ◆ readFnSc()

bool NisusWrtParser::readFnSc | ( | MWAWEntry const & | entry | ) |
| protected

parse the FnSc resource: a unknown resource, find in v6 document

read the FnSc resource: a list of ?

Referenced by createZones().

## ◆ readFTA2()

bool NisusWrtParser::readFTA2 | ( | MWAWEntry const & | entry | ) |
| protected

parse the FTA2 resource: a list of ? find in v6 document

read the FTA2 resource: a list of ?

Referenced by createZones().

## ◆ readINFO()

bool NisusWrtParser::readINFO | ( | MWAWEntry const & | entry | ) |
| protected

read the INFO info zone, an unknown zone of size 0x23a: to doo

read the INFO resource: a unknown zone

Referenced by createZones().

## ◆ readNumberingReset()

bool NisusWrtParser::readNumberingReset | ( | MWAWEntry const & | entry,
|  | int | zoneId
| ) |  |
| protected

parse the DPND resource: numbering reset ( one by zone ) : related to CNTR and VRS ?

Referenced by createZones().

## ◆ readPageLimit()

bool NisusWrtParser::readPageLimit | ( | MWAWEntry const & | entry | ) |
| protected

read the PGLY info zone ( id=128 )

Referenced by createZones().

## ◆ readPrintInfo()

bool NisusWrtParser::readPrintInfo | ( | MWAWEntry const & | entry | ) |
| protected

read the print info zone ( id=128 )

Referenced by createZones().

## ◆ readReference()

bool NisusWrtParser::readReference | ( | NisusWrtStruct::RecursifData const & | data | ) |
| protected

parse the MRK7 resource

Referenced by createZones().

## ◆ readSGP1()

bool NisusWrtParser::readSGP1 | ( | NisusWrtStruct::RecursifData const & | data | ) |
| protected

parse the SGP1 resource: a unknown resource

Referenced by createZones().

## ◆ readStringsList()

bool NisusWrtParser::readStringsList | ( | MWAWEntry const & | entry,
|  | std::vector< std::string > & | list,
|  | bool | simpleList
| ) |  |
| protected

read a list of strings

Referenced by NisusWrtText::createZones(), and createZones().

## ◆ readVariable()

bool NisusWrtParser::readVariable | ( | NisusWrtStruct::RecursifData const & | data | ) |
| protected

parse the DSPL/VARI/VRS resource: numbering definition, variable or variable ?

Referenced by createZones().

## ◆ rsrcAscii()

libmwaw::DebugFile & NisusWrtParser::rsrcAscii | ( |  | ) |
| protected

a DebugFile used to write what we recognize when we parse the document in rsrc

Referenced by NisusWrtStruct::RecursifData::read(), readABBR(), readCNTR(), readCPRC(), readFnSc(), NisusWrtText::readFonts(), NisusWrtText::readFontsList(), NisusWrtText::readFootnotes(), readFTA2(), NisusWrtText::readHeaderFooter(), readINFO(), readNumberingReset(), readPageLimit(), NisusWrtText::readParagraphs(), NisusWrtGraph::readPGRA(), NisusWrtText::readPICD(), NisusWrtGraph::readPLAC(), NisusWrtGraph::readPLDT(), NisusWrtText::readPosToFont(), readPrintInfo(), readReference(), readSGP1(), readStringsList(), readVariable(), and NisusWrtText::sendText().

## ◆ rsrcInput()

MWAWInputStreamPtr NisusWrtParser::rsrcInput | ( |  | ) |
| protected

return the input input

Referenced by NisusWrtText::findFilePos(), NisusWrtText::getFooter(), NisusWrtText::getHeader(), NisusWrtStruct::RecursifData::read(), readABBR(), readCNTR(), readCPRC(), readFnSc(), NisusWrtText::readFonts(), NisusWrtText::readFontsList(), NisusWrtText::readFootnotes(), readFTA2(), NisusWrtText::readHeaderFooter(), readINFO(), readNumberingReset(), readPageLimit(), NisusWrtText::readParagraphs(), NisusWrtGraph::readPGRA(), NisusWrtText::readPICD(), NisusWrtGraph::readPLAC(), NisusWrtGraph::readPLDT(), NisusWrtText::readPosToFont(), readPrintInfo(), readReference(), readSGP1(), readStringsList(), readVariable(), NisusWrtGraph::sendPicture(), sendPicture(), and NisusWrtText::sendText().

## ◆ sendPicture()

bool NisusWrtParser::sendPicture | ( | int | pictId,
|  | MWAWPosition const & | pictPos
| ) |  |
| protected

try to send a picture

Referenced by NisusWrtText::sendText().

## Friends And Related Function Documentation

## ◆ NisusWrtGraph

friend class NisusWrtGraph
| friend

Referenced by init().

## ◆ NisusWrtStruct::RecursifData

friend struct NisusWrtStruct::RecursifData
| friend

## ◆ NisusWrtText

friend class NisusWrtText
| friend

Referenced by init().

## Member Data Documentation

## ◆ m_graphParser

std::shared_ptr<NisusWrtGraph> NisusWrtParser::m_graphParser
| protected

the graph parser

Referenced by createDocument(), createZones(), init(), parse(), and sendPicture().

## ◆ m_state

std::shared_ptr<NisusWrtParserInternal::State> NisusWrtParser::m_state
| protected

the state

Referenced by checkHeader(), createDocument(), createZones(), getColumnInfo(), getDateFormat(), getFootnoteInfo(), init(), newPage(), readINFO(), readNumberingReset(), readPageLimit(), readReference(), and readVariable().

## ◆ m_textParser

std::shared_ptr<NisusWrtText> NisusWrtParser::m_textParser
| protected

the text parser

Referenced by createDocument(), createZones(), init(), and parse().

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

- NisusWrtParser.hxx
- NisusWrtParser.cxx