PowerPoint3Parser Class Referencefinal

the main class to read a Microsoft PowerPoint v3 or v4 files (MacOs and Windows) More...

`#include <PowerPoint3Parser.hxx>`

Inheritance diagram for PowerPoint3Parser:

## Public Member Functions
| PowerPoint3Parser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor
| ~PowerPoint3Parser () final
| destructor
bool | checkHeader (MWAWHeader *header, bool strict=false) final
| checks if the document header is correct (or not)
void | parse (librevenge::RVNGPresentationInterface *documentInterface) final
| virtual function used to parse the input
Public Member Functions inherited from MWAWPresentationParser
| ~MWAWPresentationParser () override
| destructor
Public Member Functions inherited from MWAWParser
virtual | ~MWAWParser ()
| virtual destructor
int | version () const
| returns the works version
MWAWParserStatePtr | getParserState ()
| returns the parser state
MWAWHeader * | getHeader ()
| returns the header
MWAWInputStreamPtr & | getInput ()
| returns the actual input
MWAWListenerPtr | getMainListener ()
| returns the main listener
MWAWGraphicListenerPtr & | getGraphicListener ()
| returns the graphic listener
MWAWPresentationListenerPtr & | getPresentationListener ()
| returns the presentation listener
MWAWSpreadsheetListenerPtr & | getSpreadsheetListener ()
| returns the spreadsheet listener
MWAWTextListenerPtr & | getTextListener ()
| returns the text listener
MWAWFontConverterPtr & | getFontConverter ()
| returns the font converter
MWAWFontManagerPtr & | getFontManager ()
| returns the font manager
MWAWPageSpan const & | getPageSpan () const
| returns the actual page dimension
MWAWPageSpan & | getPageSpan ()
| returns the actual page dimension
double | getFormLength () const
| returns the form length
double | getFormWidth () const
| returns the form width
double | getPageLength () const
| returns the page length (form length without margin )
double | getPageWidth () const
| returns the page width (form width without margin )
MWAWRSRCParserPtr & | getRSRCParser ()
| returns the rsrc parser
libmwaw::DebugFile & | ascii ()
| a DebugFile used to write what we recognize when we parse the document

## Protected Member Functions
void | createDocument (librevenge::RVNGPresentationInterface *documentInterface)
| creates the listener which will be associated to the document
bool | createZones ()
| finds the different zones
void | sendSlides ()
| try to send all slides
bool | readListZones (int &docInfoId)
| try to read the list of zones
bool | readStructList (MWAWEntry const &entry, PowerPoint3ParserInternal::FieldParser &parser)
| try to read a list of structure
bool | readColors (MWAWEntry const &entry)
| try to read a color list
bool | readColorZone (MWAWEntry const &entry)
| try to read a color zone, probably used to define the menu, ...: the 8th zone
bool | readDocInfo (MWAWEntry const &entry)
| try to read the document info zone
bool | readDocRoot (MWAWEntry const &entry)
| try to read the main child of doc info
bool | readFont (MWAWFont &font, int schemeId)
| try to read a font
bool | readFontNamesList (std::map< int, int > const &fIdtoZIdMap)
| try to read a font names list
bool | readFontName (MWAWEntry const &entry, int id)
| try to read a font name : 11th zone
bool | readFramesList (MWAWEntry const &entry, PowerPoint3ParserInternal::SlideContent &content)
| try to read a frame zone in a page
bool | readParagraph (MWAWParagraph &para, PowerPoint3ParserInternal::Ruler const &ruler, int schemeId)
| try to read a paragraph
bool | readPictureDefinition (MWAWEntry const &entry, int id)
| try to read the picture definition
bool | readPictureContent (MWAWEntry const &entry, MWAWEmbeddedObject &pict)
| try to read the first child of the picture
bool | readPictureMain (MWAWEntry const &entry)
| try to read the 5th zone
bool | readPicturesList (std::map< int, int > const &pIdtoZIdMap)
| try to read a picture list
bool | readPrintInfo (MWAWEntry const &entry)
| try to read a print info zone
bool | readRuler (MWAWEntry const &entry, int id)
| try to read some ruler
bool | readScheme (MWAWEntry const &entry, int id)
| try to read a scheme
bool | readSlide (MWAWEntry const &entry, PowerPoint3ParserInternal::Slide &slide, int zId)
| try to read a slide main zone
bool | readSlideContent (MWAWEntry const &entry, PowerPoint3ParserInternal::SlideContent &slide)
| try to read the second/third child of slideMain: main, master ?
bool | readSlideFormats (MWAWEntry const &entry, std::vector< PowerPoint3ParserInternal::SlideFormat > &formatList)
| try to read the second child of slide content which contains some shadow offset...
bool | readSlidePolygons (MWAWEntry const &entry, std::vector< PowerPoint3ParserInternal::Polygon > &polyList)
| try to read the third child of slide content
bool | readSlideTransition (MWAWEntry const &entry)
| try to read the first child of slideMain
bool | readSlidesList (MWAWEntry const &entry)
| try to read the first child of docRoot
bool | readTextZone (MWAWEntry const &entry, PowerPoint3ParserInternal::SlideContent &content)
| try to read a text zone
bool | sendSlide (PowerPoint3ParserInternal::SlideContent const &slide, bool master)
| try to send a slide
bool | sendFrame (PowerPoint3ParserInternal::Frame const &frame, PowerPoint3ParserInternal::SlideContent const &content, bool master, std::set< int > &seen)
| try to send a frame zone
bool | sendText (PowerPoint3ParserInternal::SlideContent const &slide, int tId, bool placeHolder, bool master)
| try to send a text zone
bool | readZone9 (MWAWEntry const &entry)
| try to read the 9th zone
bool | readZone10 (MWAWEntry const &entry)
| try to read the 10th zone
bool | getColor (int colorId, int schemeId, MWAWColor &color) const
| try to return a color corresponding to a scheme and color
void | checkForUnparsedZones ()
| check for unparsed zone
Protected Member Functions inherited from MWAWPresentationParser
| MWAWPresentationParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected)
| MWAWPresentationParser (MWAWParserStatePtr const &state)
| constructor using a state
Protected Member Functions inherited from MWAWParser
| MWAWParser (MWAWParserState::Type type, MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header)
| constructor (protected)
| MWAWParser (MWAWParserStatePtr const &state)
| constructor using a state
void | setVersion (int vers)
| sets the document's version
void | setGraphicListener (MWAWGraphicListenerPtr &listener)
| sets the graphic listener
void | resetGraphicListener ()
| resets the listener
void | setPresentationListener (MWAWPresentationListenerPtr &listener)
| sets the presentation listener
void | resetPresentationListener ()
| resets the listener
void | setSpreadsheetListener (MWAWSpreadsheetListenerPtr &listener)
| sets the spreadsheet listener
void | resetSpreadsheetListener ()
| resets the listener
void | setTextListener (MWAWTextListenerPtr &listener)
| sets the text listener
void | resetTextListener ()
| resets the listener
void | setAsciiName (char const *name)
| Debugging: change the default ascii file.
std::string const & | asciiName () const
| return the ascii file name

## Protected Attributes
std::shared_ptr< PowerPoint3ParserInternal::State > | m_state
| the state

## Friends
class | PowerPoint3ParserInternal::SubDocument

## Detailed Description

the main class to read a Microsoft PowerPoint v3 or v4 files (MacOs and Windows)

## Constructor & Destructor Documentation

## ◆ PowerPoint3Parser()

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

constructor

## ◆ ~PowerPoint3Parser()

PowerPoint3Parser::~PowerPoint3Parser | ( |  | ) |
| final

destructor

## Member Function Documentation

## ◆ checkForUnparsedZones()

void PowerPoint3Parser::checkForUnparsedZones | ( |  | ) |
| protected

check for unparsed zone

Referenced by parse(), and PowerPoint3ParserInternal::SubDocument.

## ◆ checkHeader()

bool PowerPoint3Parser::checkHeader | ( | MWAWHeader * | header,
|  | bool | strict = false )
| final virtual

checks if the document header is correct (or not)

Implements MWAWParser.

Referenced by createZones(), parse(), and PowerPoint3ParserInternal::SubDocument.

## ◆ createDocument()

void PowerPoint3Parser::createDocument | ( | librevenge::RVNGPresentationInterface * | documentInterface | ) |
| protected

creates the listener which will be associated to the document

Referenced by parse(), and PowerPoint3ParserInternal::SubDocument.

## ◆ createZones()

bool PowerPoint3Parser::createZones | ( |  | ) |
| protected

finds the different zones

Referenced by parse(), and PowerPoint3ParserInternal::SubDocument.

## ◆ getColor()

bool PowerPoint3Parser::getColor | ( | int | colorId,
|  | int | schemeId,
|  | MWAWColor & | color ) const
| protected

try to return a color corresponding to a scheme and color

Referenced by createDocument(), PowerPoint3ParserInternal::SubDocument, readFont(), readFramesList(), and readParagraph().

## ◆ parse()

void PowerPoint3Parser::parse | ( | librevenge::RVNGPresentationInterface * | documentInterface | ) |
| final virtual

virtual function used to parse the input

Implements MWAWPresentationParser.

Referenced by PowerPoint3ParserInternal::SubDocument.

## ◆ readColors()

bool PowerPoint3Parser::readColors | ( | MWAWEntry const & | entry | ) |
| protected

try to read a color list

Referenced by PowerPoint3ParserInternal::SubDocument, and readColorZone().

## ◆ readColorZone()

bool PowerPoint3Parser::readColorZone | ( | MWAWEntry const & | entry | ) |
| protected

try to read a color zone, probably used to define the menu, ...: the 8th zone

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readDocInfo()

bool PowerPoint3Parser::readDocInfo | ( | MWAWEntry const & | entry | ) |
| protected

try to read the document info zone

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readDocRoot()

bool PowerPoint3Parser::readDocRoot | ( | MWAWEntry const & | entry | ) |
| protected

try to read the main child of doc info

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readFont()

bool PowerPoint3Parser::readFont | ( | MWAWFont & | font,
|  | int | schemeId )
| protected

try to read a font

Referenced by PowerPoint3ParserInternal::SubDocument, readTextZone(), and sendText().

## ◆ readFontName()

bool PowerPoint3Parser::readFontName | ( | MWAWEntry const & | entry,
|  | int | id )
| protected

try to read a font name : 11th zone

Referenced by PowerPoint3ParserInternal::SubDocument, and readFontNamesList().

## ◆ readFontNamesList()

bool PowerPoint3Parser::readFontNamesList | ( | std::map< int, int > const & | fIdtoZIdMap | ) |
| protected

try to read a font names list

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readFramesList()

bool PowerPoint3Parser::readFramesList | ( | MWAWEntry const & | entry,
|  | PowerPoint3ParserInternal::SlideContent & | content )
| protected

try to read a frame zone in a page

Referenced by PowerPoint3ParserInternal::SubDocument, and readSlideContent().

## ◆ readListZones()

bool PowerPoint3Parser::readListZones | ( | int & | docInfoId | ) |
| protected

try to read the list of zones

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readParagraph()

bool PowerPoint3Parser::readParagraph | ( | MWAWParagraph & | para,
|  | PowerPoint3ParserInternal::Ruler const & | ruler,
|  | int | schemeId )
| protected

try to read a paragraph

Referenced by PowerPoint3ParserInternal::SubDocument, readTextZone(), and sendText().

## ◆ readPictureContent()

bool PowerPoint3Parser::readPictureContent | ( | MWAWEntry const & | entry,
|  | MWAWEmbeddedObject & | pict )
| protected

try to read the first child of the picture

Referenced by PowerPoint3ParserInternal::SubDocument, and readPictureDefinition().

## ◆ readPictureDefinition()

bool PowerPoint3Parser::readPictureDefinition | ( | MWAWEntry const & | entry,
|  | int | id )
| protected

try to read the picture definition

Referenced by PowerPoint3ParserInternal::SubDocument, and readPicturesList().

## ◆ readPictureMain()

bool PowerPoint3Parser::readPictureMain | ( | MWAWEntry const & | entry | ) |
| protected

try to read the 5th zone

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readPicturesList()

bool PowerPoint3Parser::readPicturesList | ( | std::map< int, int > const & | pIdtoZIdMap | ) |
| protected

try to read a picture list

Referenced by PowerPoint3ParserInternal::SubDocument, and readPictureMain().

## ◆ readPrintInfo()

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

try to read a print info zone

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readRuler()

bool PowerPoint3Parser::readRuler | ( | MWAWEntry const & | entry,
|  | int | id )
| protected

try to read some ruler

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readScheme()

bool PowerPoint3Parser::readScheme | ( | MWAWEntry const & | entry,
|  | int | id )
| protected

try to read a scheme

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readSlide()

bool PowerPoint3Parser::readSlide | ( | MWAWEntry const & | entry,
|  | PowerPoint3ParserInternal::Slide & | slide,
|  | int | zId )
| protected

try to read a slide main zone

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readSlideContent()

bool PowerPoint3Parser::readSlideContent | ( | MWAWEntry const & | entry,
|  | PowerPoint3ParserInternal::SlideContent & | slide )
| protected

try to read the second/third child of slideMain: main, master ?

Referenced by PowerPoint3ParserInternal::SubDocument, and readSlide().

## ◆ readSlideFormats()

bool PowerPoint3Parser::readSlideFormats | ( | MWAWEntry const & | entry,
|  | std::vector< PowerPoint3ParserInternal::SlideFormat > & | formatList )
| protected

try to read the second child of slide content which contains some shadow offset...

Referenced by PowerPoint3ParserInternal::SubDocument, and readSlideContent().

## ◆ readSlidePolygons()

bool PowerPoint3Parser::readSlidePolygons | ( | MWAWEntry const & | entry,
|  | std::vector< PowerPoint3ParserInternal::Polygon > & | polyList )
| protected

try to read the third child of slide content

Referenced by PowerPoint3ParserInternal::SubDocument, and readSlideContent().

## ◆ readSlidesList()

bool PowerPoint3Parser::readSlidesList | ( | MWAWEntry const & | entry | ) |
| protected

try to read the first child of docRoot

Referenced by PowerPoint3ParserInternal::SubDocument, and readDocRoot().

## ◆ readSlideTransition()

bool PowerPoint3Parser::readSlideTransition | ( | MWAWEntry const & | entry | ) |
| protected

try to read the first child of slideMain

Referenced by PowerPoint3ParserInternal::SubDocument, and readSlide().

## ◆ readStructList()

bool PowerPoint3Parser::readStructList | ( | MWAWEntry const & | entry,
|  | PowerPoint3ParserInternal::FieldParser & | parser )
| protected

try to read a list of structure

Referenced by createZones(), PowerPoint3ParserInternal::SubDocument, and readPictureMain().

## ◆ readTextZone()

bool PowerPoint3Parser::readTextZone | ( | MWAWEntry const & | entry,
|  | PowerPoint3ParserInternal::SlideContent & | content )
| protected

try to read a text zone

Referenced by PowerPoint3ParserInternal::SubDocument, and readSlideContent().

## ◆ readZone10()

bool PowerPoint3Parser::readZone10 | ( | MWAWEntry const & | entry | ) |
| protected

try to read the 10th zone

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ readZone9()

bool PowerPoint3Parser::readZone9 | ( | MWAWEntry const & | entry | ) |
| protected

try to read the 9th zone

Referenced by createZones(), and PowerPoint3ParserInternal::SubDocument.

## ◆ sendFrame()

bool PowerPoint3Parser::sendFrame | ( | PowerPoint3ParserInternal::Frame const & | frame,
|  | PowerPoint3ParserInternal::SlideContent const & | content,
|  | bool | master,
|  | std::set< int > & | seen )
| protected

try to send a frame zone

Referenced by PowerPoint3ParserInternal::SubDocument, sendFrame(), and sendSlide().

## ◆ sendSlide()

bool PowerPoint3Parser::sendSlide | ( | PowerPoint3ParserInternal::SlideContent const & | slide,
|  | bool | master )
| protected

try to send a slide

Referenced by PowerPoint3ParserInternal::SubDocument, and sendSlides().

## ◆ sendSlides()

void PowerPoint3Parser::sendSlides | ( |  | ) |
| protected

try to send all slides

Referenced by parse(), and PowerPoint3ParserInternal::SubDocument.

## ◆ sendText()

bool PowerPoint3Parser::sendText | ( | PowerPoint3ParserInternal::SlideContent const & | slide,
|  | int | tId,
|  | bool | placeHolder,
|  | bool | master )
| protected

try to send a text zone

Referenced by PowerPoint3ParserInternal::SubDocument.

## Friends And Related Symbol Documentation

## ◆ PowerPoint3ParserInternal::SubDocument

friend class PowerPoint3ParserInternal::SubDocument
| friend

## Member Data Documentation

## ◆ m_state

std::shared_ptr<PowerPoint3ParserInternal::State> PowerPoint3Parser::m_state
| protected

the state

Referenced by checkForUnparsedZones(), checkHeader(), createDocument(), createZones(), getColor(), parse(), PowerPoint3Parser(), readColors(), readColorZone(), readDocInfo(), readDocRoot(), readFont(), readFontName(), readFontNamesList(), readFramesList(), readListZones(), readParagraph(), readPictureContent(), readPictureDefinition(), readPictureMain(), readPicturesList(), readRuler(), readScheme(), readSlide(), readSlideContent(), readSlideFormats(), readSlidePolygons(), readSlidesList(), readSlideTransition(), readStructList(), readTextZone(), sendFrame(), sendSlides(), and sendText().

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

- PowerPoint3Parser.hxx
- PowerPoint3Parser.cxx