MSWText Class Reference

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

#include <MSWText.hxx>

Classes

struct  PLC
 Internal: the plc. More...
 

Public Member Functions

 MSWText (MSWParser &parser)
 constructor More...
 
virtual ~MSWText ()
 destructor More...
 
int version () const
 returns the file version More...
 
int numPages () const
 returns the number of pages More...
 
MWAWEntry getHeader () const
 returns the header entry More...
 
MWAWEntry getFooter () const
 returns the footer entry More...
 

Protected Member Functions

shared_ptr< MWAWParserState > & getParserState ()
 returns the parser state More...
 
bool sendMainText ()
 send a main zone More...
 
bool sendText (MWAWEntry const &textEntry, bool mainZone, bool tableCell=false)
 send a text zone More...
 
bool sendSection (int sectionId)
 try to open a section More...
 
bool readHeaderTextLength ()
 reads the three different zone size More...
 
bool createZones (long bot)
 finds the different zones More...
 
bool readTextStruct (MSWEntry &entry)
 read the text structure(some paragraph style+some text position?) More...
 
bool readPageBreak (MSWEntry &entry)
 read the page limit ? More...
 
bool readParagraphInfo (MSWEntry entry)
 read the paragraph height info More...
 
bool readFields (MSWEntry &entry, std::vector< long > const &fieldPos)
 read the field data More...
 
bool sendFieldComment (int id)
 send a field note to a listener More...
 
bool readFootnotesPos (MSWEntry &entry, std::vector< long > const &noteDef)
 read the footnote pos in text + val More...
 
bool readFootnotesData (MSWEntry &entry)
 read the footnote data More...
 
bool sendFootnote (int id)
 send a note to a listener More...
 
bool readFontNames (MSWEntry &entry)
 read the font names More...
 
void flushExtra ()
 sends the data which have not yet been sent to the listener More...
 
bool sendTable (MSWTextInternal::Table const &table)
 try to send a table. More...
 
long getMainTextLength () const
 returns the main text length More...
 
std::multimap< long,
MSWText::PLC > & 
getTextPLCMap ()
 returns the text correspondance zone ( textpos, plc ) More...
 
std::multimap< long,
MSWText::PLC > & 
getFilePLCMap ()
 returns the file correspondance zone ( filepos, plc ) More...
 
void prepareData ()
 prepare the data to be send More...
 
void prepareLines ()
 cut the text in line/cell pos More...
 
void convertFilePLCPos ()
 convert the file position in character position and compute the paragraph limit More...
 
void prepareParagraphProperties ()
 retrieve the paragraph properties More...
 
void prepareFontProperties ()
 retrieve the font properties More...
 
void prepareTableLimits ()
 find the table end position knowing the end cell/pos delimiter More...
 
bool updateTableBeginnningAt (long cPos, long &nextCPos)
 try to find a table which begin at position cPos, if so, update its data... More...
 
bool readLongZone (MSWEntry &entry, int sz, std::vector< long > &list)
 read a zone which consists in a list of int More...
 

Protected Attributes

MWAWParserStatePtr m_parserState
 the parser state More...
 
shared_ptr
< MSWTextInternal::State
m_state
 the state More...
 
shared_ptr< MSWTextStylesm_stylesManager
 the style manager More...
 
MSWParserm_mainParser
 the main parser; More...
 

Private Member Functions

 MSWText (MSWText const &orig)
 
MSWTextoperator= (MSWText const &orig)
 

Friends

class MSWParser
 
class MSWTextStyles
 

Detailed Description

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

Constructor & Destructor Documentation

MSWText::MSWText ( MSWParser parser)

constructor

MSWText::~MSWText ( )
virtual

destructor

MSWText::MSWText ( MSWText const &  orig)
private

Member Function Documentation

void MSWText::convertFilePLCPos ( )
protected

convert the file position in character position and compute the paragraph limit

Referenced by prepareData().

bool MSWText::createZones ( long  bot)
protected

finds the different zones

the break position

read the header footer limit

read the note

read the footenote

void MSWText::flushExtra ( )
protected

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

std::multimap< long, MSWText::PLC > & MSWText::getFilePLCMap ( )
protected

returns the file correspondance zone ( filepos, plc )

Referenced by MSWTextStyles::readPLC().

MWAWEntry MSWText::getFooter ( ) const

returns the footer entry

MWAWEntry MSWText::getHeader ( ) const

returns the header entry

long MSWText::getMainTextLength ( ) const
protected

returns the main text length

Referenced by MSWTextStyles::readSection().

shared_ptr<MWAWParserState>& MSWText::getParserState ( )
inlineprotected

returns the parser state

std::multimap< long, MSWText::PLC > & MSWText::getTextPLCMap ( )
protected

returns the text correspondance zone ( textpos, plc )

Referenced by MSWTextStyles::readSection().

int MSWText::numPages ( ) const

returns the number of pages

MSWText& MSWText::operator= ( MSWText const &  orig)
private
void MSWText::prepareData ( )
protected

prepare the data to be send

Referenced by createZones().

void MSWText::prepareFontProperties ( )
protected

retrieve the font properties

Referenced by prepareData().

void MSWText::prepareLines ( )
protected

cut the text in line/cell pos

Referenced by prepareData().

void MSWText::prepareParagraphProperties ( )
protected

retrieve the paragraph properties

Referenced by prepareData().

void MSWText::prepareTableLimits ( )
protected

find the table end position knowing the end cell/pos delimiter

Referenced by prepareData().

bool MSWText::readFields ( MSWEntry entry,
std::vector< long > const &  fieldPos 
)
protected

read the field data

Referenced by createZones().

bool MSWText::readFontNames ( MSWEntry entry)
protected

read the font names

Referenced by createZones().

bool MSWText::readFootnotesData ( MSWEntry entry)
protected

read the footnote data

Referenced by createZones().

bool MSWText::readFootnotesPos ( MSWEntry entry,
std::vector< long > const &  noteDef 
)
protected

read the footnote pos in text + val

Referenced by createZones().

bool MSWText::readHeaderTextLength ( )
protected

reads the three different zone size

bool MSWText::readLongZone ( MSWEntry entry,
int  sz,
std::vector< long > &  list 
)
protected

read a zone which consists in a list of int

Referenced by createZones().

bool MSWText::readPageBreak ( MSWEntry entry)
protected

read the page limit ?

Referenced by createZones().

bool MSWText::readParagraphInfo ( MSWEntry  entry)
protected

read the paragraph height info

Referenced by createZones().

bool MSWText::readTextStruct ( MSWEntry entry)
protected

read the text structure(some paragraph style+some text position?)

Referenced by createZones().

bool MSWText::sendFieldComment ( int  id)
protected

send a field note to a listener

bool MSWText::sendFootnote ( int  id)
protected

send a note to a listener

bool MSWText::sendMainText ( )
protected

send a main zone

bool MSWText::sendSection ( int  sectionId)
protected

try to open a section

Referenced by sendText().

bool MSWText::sendTable ( MSWTextInternal::Table const &  table)
protected

try to send a table.

Referenced by sendText().

bool MSWText::sendText ( MWAWEntry const &  textEntry,
bool  mainZone,
bool  tableCell = false 
)
protected

send a text zone

Referenced by flushExtra(), sendFootnote(), sendMainText(), and sendTable().

bool MSWText::updateTableBeginnningAt ( long  cPos,
long &  nextCPos 
)
protected

try to find a table which begin at position cPos, if so, update its data...

Referenced by prepareParagraphProperties().

int MSWText::version ( ) const

Friends And Related Function Documentation

friend class MSWParser
friend
friend class MSWTextStyles
friend

Referenced by MSWText().

Member Data Documentation

MSWParser* MSWText::m_mainParser
protected

the main parser;

Referenced by createZones(), and sendText().


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

Generated on Tue Mar 10 2015 17:32:09 for libmwaw by doxygen 1.8.5