MsWks3Text Class Reference

the main class to read the text part of Microsoft Works file More...

#include <MsWks3Text.hxx>

Public Member Functions

 MsWks3Text (MsWksDocument &zone)
 constructor
 
virtual ~MsWks3Text ()
 destructor
 
int version () const
 returns the file version
 
int numPages (int zoneId) const
 returns the number of pages
 

Protected Member Functions

int createZones (int numLines=-1, bool mainZone=false)
 finds the different text zones. Returns the zoneId or -1.
 
std::string readHeaderFooterString (bool header)
 reads the header/footer string : version v1-2
 
void flushExtra ()
 sends the data which have not yet been sent to the listener
 
void sendZone (int zoneId)
 send a zone
 
void sendNote (int zoneId, int noteId)
 send a note
 
int getHeader () const
 returns a header zone id ( or -1 )
 
int getFooter () const
 returns a footer zone id ( or -1 )
 
bool getLinesPagesHeight (int zoneId, std::vector< int > &lines, std::vector< int > &pages)
 return the lines and pages height ( for v1, ...)
 
bool readZoneHeader (MsWks3TextInternal::LineZone &zone) const
 try to read a zone header
 
void update (MsWks3TextInternal::TextZone &zone)
 prepare a zone
 
void updateNotes (MsWks3TextInternal::TextZone &zone, int firstNote)
 prepare the note zones given a zone and the position of the first note
 
void send (MsWks3TextInternal::TextZone &zone, MWAWVec2i limit=MWAWVec2i(-1,-1))
 sends the zone data to the listener.
 
bool readFont (MsWks3TextInternal::Font &font, long endPos)
 tries to read a font
 
bool readParagraph (MsWks3TextInternal::LineZone &zone, MWAWParagraph &parag)
 tries to read a paragraph
 
bool sendText (MsWks3TextInternal::LineZone &zone, int zoneId)
 tries to send a text zone
 
bool sendString (std::string &str)
 tries to send a string (for v1-2, header/footer zone)
 

Protected Attributes

MWAWParserStatePtr m_parserState
 the parser state
 
std::shared_ptr< MsWks3TextInternal::Statem_state
 the state
 
MWAWParserm_mainParser
 the main parser;
 
MsWksDocumentm_document
 the input zone
 

Private Member Functions

 MsWks3Text (MsWks3Text const &orig)=delete
 
MsWks3Textoperator= (MsWks3Text const &orig)=delete
 

Friends

class MsWksDocument
 
class MsWksParser
 
class MsWksDRParser
 
class MsWksSSParser
 
class MsWks3TextInternal::SubDocument
 

Detailed Description

the main class to read the text part of Microsoft Works file

Constructor & Destructor Documentation

◆ MsWks3Text() [1/2]

MsWks3Text::MsWks3Text ( MsWksDocument zone)
explicit

constructor

◆ ~MsWks3Text()

MsWks3Text::~MsWks3Text ( )
virtual

destructor

◆ MsWks3Text() [2/2]

MsWks3Text::MsWks3Text ( MsWks3Text const &  orig)
privatedelete

Member Function Documentation

◆ createZones()

int MsWks3Text::createZones ( int  numLines = -1,
bool  mainZone = false 
)
protected

finds the different text zones. Returns the zoneId or -1.

◆ flushExtra()

void MsWks3Text::flushExtra ( )
protected

sends the data which have not yet been sent to the listener

◆ getFooter()

int MsWks3Text::getFooter ( ) const
protected

returns a footer zone id ( or -1 )

◆ getHeader()

int MsWks3Text::getHeader ( ) const
protected

returns a header zone id ( or -1 )

◆ getLinesPagesHeight()

bool MsWks3Text::getLinesPagesHeight ( int  zoneId,
std::vector< int > &  lines,
std::vector< int > &  pages 
)
protected

return the lines and pages height ( for v1, ...)

◆ numPages()

int MsWks3Text::numPages ( int  zoneId) const

returns the number of pages

◆ operator=()

MsWks3Text & MsWks3Text::operator= ( MsWks3Text const &  orig)
privatedelete

◆ readFont()

bool MsWks3Text::readFont ( MsWks3TextInternal::Font font,
long  endPos 
)
protected

tries to read a font

Referenced by sendText(), and updateNotes().

◆ readHeaderFooterString()

std::string MsWks3Text::readHeaderFooterString ( bool  header)
protected

reads the header/footer string : version v1-2

◆ readParagraph()

bool MsWks3Text::readParagraph ( MsWks3TextInternal::LineZone zone,
MWAWParagraph parag 
)
protected

tries to read a paragraph

Referenced by send().

◆ readZoneHeader()

bool MsWks3Text::readZoneHeader ( MsWks3TextInternal::LineZone zone) const
protected

try to read a zone header

Referenced by createZones().

◆ send()

void MsWks3Text::send ( MsWks3TextInternal::TextZone zone,
MWAWVec2i  limit = MWAWVec2i(-1,-1) 
)
protected

sends the zone data to the listener.

You can set limit to send a subzone data ( like note )

Referenced by flushExtra(), sendNote(), and sendZone().

◆ sendNote()

void MsWks3Text::sendNote ( int  zoneId,
int  noteId 
)
protected

send a note

Referenced by MsWks3TextInternal::SubDocument::parse().

◆ sendString()

bool MsWks3Text::sendString ( std::string &  str)
protected

tries to send a string (for v1-2, header/footer zone)

Referenced by send().

◆ sendText()

bool MsWks3Text::sendText ( MsWks3TextInternal::LineZone zone,
int  zoneId 
)
protected

tries to send a text zone

Referenced by send().

◆ sendZone()

void MsWks3Text::sendZone ( int  zoneId)
protected

send a zone

◆ update()

void MsWks3Text::update ( MsWks3TextInternal::TextZone zone)
protected

prepare a zone

Referenced by createZones().

◆ updateNotes()

void MsWks3Text::updateNotes ( MsWks3TextInternal::TextZone zone,
int  firstNote 
)
protected

prepare the note zones given a zone and the position of the first note

Referenced by createZones().

◆ version()

int MsWks3Text::version ( ) const

returns the file version

Referenced by readFont(), and sendText().

Friends And Related Function Documentation

◆ MsWks3TextInternal::SubDocument

friend class MsWks3TextInternal::SubDocument
friend

◆ MsWksDocument

friend class MsWksDocument
friend

◆ MsWksDRParser

friend class MsWksDRParser
friend

◆ MsWksParser

friend class MsWksParser
friend

◆ MsWksSSParser

friend class MsWksSSParser
friend

Member Data Documentation

◆ m_document

MsWksDocument& MsWks3Text::m_document
protected

◆ m_mainParser

MWAWParser* MsWks3Text::m_mainParser
protected

the main parser;

Referenced by MsWks3Text(), readParagraph(), and update().

◆ m_parserState

MWAWParserStatePtr MsWks3Text::m_parserState
protected

the parser state

Referenced by MsWks3Text(), send(), sendNote(), sendString(), sendText(), and version().

◆ m_state


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

Generated on Thu Jan 19 2023 00:00:00 for libmwaw by doxygen 1.9.6