the main class to read a Microsoft Word 1 file More...
#include <MSW1Parser.hxx>
Public Member Functions | |
MSW1Parser (MWAWInputStreamPtr input, MWAWRSRCParserPtr rsrcParser, MWAWHeader *header) | |
constructor | |
virtual | ~MSW1Parser () |
destructor | |
bool | checkHeader (MWAWHeader *header, bool strict=false) |
checks if the document header is correct (or not) | |
void | parse (WPXDocumentInterface *documentInterface) |
virtual function used to parse the input | |
Protected Member Functions | |
void | init () |
inits all internal variables | |
void | createDocument (WPXDocumentInterface *documentInterface) |
creates the listener which will be associated to the document | |
void | sendMain () |
try to send the main zone | |
void | newPage (int number) |
adds a new page | |
bool | createZones () |
finds the different zones | |
bool | sendText (MWAWEntry const &entry, bool main=false) |
send the text structure to the listener | |
bool | readFont (long fPos, MSW1ParserInternal::Font &font) |
try to read a char property | |
bool | readParagraph (long fPos, MSW1ParserInternal::Paragraph ¶) |
try to read a paragraph property | |
bool | readFootnoteCorrespondance (Vec2i limit) |
try to read the footnote correspondance ( zone2 ) | |
bool | readDocInfo (Vec2i limit) |
try to read the document info (zone 3) | |
bool | readZones (Vec2i limit) |
try to read the list of zones: separator between text and footnote? (zone 4) | |
bool | readPageBreak (Vec2i limit) |
try to read the page break (zone 5) | |
bool | prepareTextZones () |
prepare the data: separate header/footer zones to the main stream... | |
void | removeLastCharIfEOL (MWAWEntry &entry) |
shorten an entry if the last character is EOL | |
bool | readPLC (Vec2i limits, int wh) |
read the two first zones (char and paragraph) | |
void | setProperty (MSW1ParserInternal::Paragraph const ¶) |
send the ruler properties | |
Protected Attributes | |
shared_ptr < MSW1ParserInternal::State > | m_state |
the state | |
Friends | |
class | MSW1ParserInternal::SubDocument |
the main class to read a Microsoft Word 1 file
MSW1Parser::MSW1Parser | ( | MWAWInputStreamPtr | input, |
MWAWRSRCParserPtr | rsrcParser, | ||
MWAWHeader * | header | ||
) |
constructor
MSW1Parser::~MSW1Parser | ( | ) | [virtual] |
destructor
bool MSW1Parser::checkHeader | ( | MWAWHeader * | header, |
bool | strict = false |
||
) | [virtual] |
void MSW1Parser::createDocument | ( | WPXDocumentInterface * | documentInterface | ) | [protected] |
creates the listener which will be associated to the document
Referenced by parse().
bool MSW1Parser::createZones | ( | ) | [protected] |
finds the different zones
Referenced by parse().
void MSW1Parser::init | ( | ) | [protected] |
inits all internal variables
Referenced by MSW1Parser().
void MSW1Parser::newPage | ( | int | number | ) | [protected] |
adds a new page
Referenced by sendText().
void MSW1Parser::parse | ( | WPXDocumentInterface * | documentInterface | ) | [virtual] |
virtual function used to parse the input
Implements MWAWParser.
bool MSW1Parser::prepareTextZones | ( | ) | [protected] |
prepare the data: separate header/footer zones to the main stream...
Referenced by createZones().
bool MSW1Parser::readDocInfo | ( | Vec2i | limit | ) | [protected] |
try to read the document info (zone 3)
Referenced by createZones().
bool MSW1Parser::readFont | ( | long | fPos, |
MSW1ParserInternal::Font & | font | ||
) | [protected] |
try to read a char property
Referenced by readPLC().
bool MSW1Parser::readFootnoteCorrespondance | ( | Vec2i | limit | ) | [protected] |
try to read the footnote correspondance ( zone2 )
Referenced by createZones().
bool MSW1Parser::readPageBreak | ( | Vec2i | limit | ) | [protected] |
try to read the page break (zone 5)
Referenced by createZones().
bool MSW1Parser::readParagraph | ( | long | fPos, |
MSW1ParserInternal::Paragraph & | para | ||
) | [protected] |
try to read a paragraph property
Referenced by readPLC().
bool MSW1Parser::readPLC | ( | Vec2i | limits, |
int | wh | ||
) | [protected] |
read the two first zones (char and paragraph)
Referenced by createZones().
bool MSW1Parser::readZones | ( | Vec2i | limit | ) | [protected] |
try to read the list of zones: separator between text and footnote? (zone 4)
Referenced by createZones().
void MSW1Parser::removeLastCharIfEOL | ( | MWAWEntry & | entry | ) | [protected] |
shorten an entry if the last character is EOL
Referenced by createDocument(), and sendText().
void MSW1Parser::sendMain | ( | ) | [protected] |
try to send the main zone
Referenced by parse().
bool MSW1Parser::sendText | ( | MWAWEntry const & | entry, |
bool | main = false |
||
) | [protected] |
send the text structure to the listener
Referenced by sendMain().
void MSW1Parser::setProperty | ( | MSW1ParserInternal::Paragraph const & | para | ) | [protected] |
send the ruler properties
Referenced by sendText().
friend class MSW1ParserInternal::SubDocument [friend] |
shared_ptr<MSW1ParserInternal::State> MSW1Parser::m_state [protected] |
the state
Referenced by checkHeader(), createDocument(), createZones(), init(), newPage(), prepareTextZones(), readDocInfo(), readFootnoteCorrespondance(), readPageBreak(), readPLC(), readZones(), sendMain(), and sendText().