MsWrdText Class Reference

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

#include <MsWrdText.hxx>

List of all members.

Classes

struct  PLC
 Internal: the plc. More...

Public Member Functions

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

Protected Member Functions

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

Protected Attributes

MWAWParserStatePtr m_parserState
 the parser state
shared_ptr
< MsWrdTextInternal::State
m_state
 the state
shared_ptr< MsWrdTextStylesm_stylesManager
 the style manager
MsWrdParserm_mainParser
 the main parser;

Private Member Functions

 MsWrdText (MsWrdText const &orig)
MsWrdTextoperator= (MsWrdText const &orig)

Friends

class MsWrdParser
class MsWrdTextStyles

Detailed Description

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


Constructor & Destructor Documentation

constructor

MsWrdText::~MsWrdText ( ) [virtual]

destructor

MsWrdText::MsWrdText ( MsWrdText const &  orig) [private]

Member Function Documentation

void MsWrdText::convertFilePLCPos ( ) [protected]

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

Referenced by prepareData().

bool MsWrdText::createZones ( long  bot) [protected]

finds the different zones

the break position

read the header footer limit

read the note

read the footenote

void MsWrdText::flushExtra ( ) [protected]

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

std::multimap< long, MsWrdText::PLC > & MsWrdText::getFilePLCMap ( ) [protected]

returns the file correspondance zone ( filepos, plc )

Referenced by MsWrdTextStyles::readPLC().

returns the footer entry

returns the header entry

long MsWrdText::getMainTextLength ( ) const [protected]

returns the main text length

Referenced by MsWrdTextStyles::readSection().

shared_ptr<MWAWParserState>& MsWrdText::getParserState ( ) [inline, protected]

returns the parser state

std::multimap< long, MsWrdText::PLC > & MsWrdText::getTextPLCMap ( ) [protected]

returns the text correspondance zone ( textpos, plc )

Referenced by MsWrdTextStyles::readSection().

int MsWrdText::numPages ( ) const

returns the number of pages

MsWrdText& MsWrdText::operator= ( MsWrdText const &  orig) [private]
void MsWrdText::prepareData ( ) [protected]

prepare the data to be send

Referenced by createZones().

void MsWrdText::prepareFontProperties ( ) [protected]

retrieve the font properties

Referenced by prepareData().

void MsWrdText::prepareLines ( ) [protected]

cut the text in line/cell pos

Referenced by prepareData().

retrieve the paragraph properties

Referenced by prepareData().

void MsWrdText::prepareTableLimits ( ) [protected]

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

Referenced by prepareData().

bool MsWrdText::readFields ( MsWrdEntry entry,
std::vector< long > const &  fieldPos 
) [protected]

read the field data

Referenced by createZones().

bool MsWrdText::readFontNames ( MsWrdEntry entry) [protected]

read the font names

Referenced by createZones().

bool MsWrdText::readFootnotesData ( MsWrdEntry entry) [protected]

read the footnote data

Referenced by createZones().

bool MsWrdText::readFootnotesPos ( MsWrdEntry entry,
std::vector< long > const &  noteDef 
) [protected]

read the footnote pos in text + val

Referenced by createZones().

bool MsWrdText::readHeaderTextLength ( ) [protected]

reads the three different zone size

bool MsWrdText::readLongZone ( MsWrdEntry entry,
int  sz,
std::vector< long > &  list 
) [protected]

read a zone which consists in a list of int

Referenced by createZones().

bool MsWrdText::readPageBreak ( MsWrdEntry entry) [protected]

read the page limit ?

Referenced by createZones().

bool MsWrdText::readParagraphInfo ( MsWrdEntry  entry) [protected]

read the paragraph height info

Referenced by createZones().

bool MsWrdText::readTextStruct ( MsWrdEntry entry) [protected]

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

Referenced by createZones().

bool MsWrdText::sendFieldComment ( int  id) [protected]

send a field note to a listener

bool MsWrdText::sendFootnote ( int  id) [protected]

send a note to a listener

bool MsWrdText::sendMainText ( ) [protected]

send a main zone

bool MsWrdText::sendSection ( int  sectionId) [protected]

try to open a section

Referenced by sendText().

bool MsWrdText::sendTable ( MsWrdTextInternal::Table const &  table) [protected]

try to send a table.

Referenced by sendText().

bool MsWrdText::sendText ( MWAWEntry const &  textEntry,
bool  mainZone,
bool  tableCell = false 
) [protected]

send a text zone

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

bool MsWrdText::updateTableBeginnningAt ( long  cPos,
long &  nextCPos 
) [protected]

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

Referenced by prepareParagraphProperties().


Friends And Related Function Documentation

friend class MsWrdParser [friend]
friend class MsWrdTextStyles [friend]

Referenced by MsWrdText().


Member Data Documentation

the main parser;

Referenced by createZones(), and sendText().


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