This class parses XYWrite Dos and Win4 files. More...
#include <XYWrite.h>
 
  
| Public Member Functions | |
| XYWriteParser (RVNGInputStreamPtr &input, WPSHeaderPtr &header, libwps_tools_win::Font::Type encoding=libwps_tools_win::Font::UNKNOWN) | |
| constructor | |
| ~XYWriteParser () override | |
| destructor | |
| void | parse (librevenge::RVNGTextInterface *documentInterface) override | 
| called by WPSDocument to parse the file | |
| bool | checkHeader (WPSHeader *header, bool strict=false) | 
| checks if the document header is correct (or not) | |
|  Public Member Functions inherited from WPSParser | |
| WPSParser (RVNGInputStreamPtr &input, WPSHeaderPtr &header) | |
| virtual | ~WPSParser () | 
| virtual void | parse (librevenge::RVNGTextInterface *documentInterface)=0 | 
| Protected Member Functions | |
| bool | checkFilePosition (long pos) const | 
| check if the file position is correct or not | |
| bool | findAllZones () | 
| tries to find the end of main zone, the meta data zones (only Win4) | |
| bool | parseTextZone (WPSEntry const &entry, std::string const &styleName="") | 
| tries to parse the main text zone | |
| bool | parseFrameZone (XYWriteParserInternal::Format const &frameFormat) | 
| tries to parse a frame | |
| bool | parsePictureZone (XYWriteParserInternal::Format const &pictureFormat) | 
| tries to parse a picture | |
| bool | parseMetaData (WPSEntry const &entry) | 
| tries to parse the meta data zone | |
| bool | parseFormat (XYWriteParserInternal::Format &format) | 
| tries to parse a format: first character 0xae is read | |
| bool | createFormatChildren (XYWriteParserInternal::Format &format, size_t fPos=2) | 
| tries to parse again a format to create a list of child: SS, FA, FM1, ... | |
| bool | update (XYWriteParserInternal::Format const &format, libwps_tools_win::Font::Type &fontType) const | 
| try to update the listener data(font,paragraph style, ...) | |
| bool | createTable (XYWriteParserInternal::Format const &format, long endPos) | 
| tries to create a table | |
|  Protected Member Functions inherited from WPSParser | |
| RVNGInputStreamPtr & | getInput () | 
| RVNGInputStreamPtr | getFileInput () | 
| WPSHeaderPtr & | getHeader () | 
| int | version () const | 
| void | setVersion (int vers) | 
| libwps::DebugFile & | ascii () | 
| a DebugFile used to write what we recognize when we parse the document | |
| NameMultiMap & | getNameEntryMap () | 
| NameMultiMap const & | getNameEntryMap () const | 
| Protected Attributes | |
| std::shared_ptr< WPSContentListener > | m_listener | 
| the listener (if set) | |
| std::shared_ptr< XYWriteParserInternal::State > | m_state | 
| the main state | |
| Private Member Functions | |
| XYWriteParser (const XYWriteParser &)=delete | |
| XYWriteParser & | operator= (const XYWriteParser &)=delete | 
| std::shared_ptr< WPSContentListener > | createListener (librevenge::RVNGTextInterface *interface) | 
| creates the main listener | |
| Friends | |
| struct | XYWriteParserInternal::Cell | 
| class | XYWriteParserInternal::SubDocument | 
| Additional Inherited Members | |
|  Public Types inherited from WPSParser | |
| typedef std::multimap< std::string, WPSEntry > | NameMultiMap | 
| a map to retrieve a file entry by name | |
This class parses XYWrite Dos and Win4 files.
| XYWriteParser::XYWriteParser | ( | RVNGInputStreamPtr & | input, | 
| WPSHeaderPtr & | header, | ||
| libwps_tools_win::Font::Type | encoding = libwps_tools_win::Font::UNKNOWN | ||
| ) | 
constructor
| 
 | override | 
destructor
| 
 | privatedelete | 
| 
 | protected | 
check if the file position is correct or not
Referenced by checkHeader().
| bool XYWriteParser::checkHeader | ( | WPSHeader * | header, | 
| bool | strict = false | ||
| ) | 
checks if the document header is correct (or not)
Referenced by libwps::WPSDocument::isFileFormatSupported(), and parse().
| 
 | protected | 
tries to parse again a format to create a list of child: SS, FA, FM1, ...
Referenced by parseTextZone().
| 
 | private | 
creates the main listener
Referenced by parse().
| 
 | protected | 
tries to create a table
Referenced by parseTextZone().
| 
 | protected | 
tries to find the end of main zone, the meta data zones (only Win4)
Referenced by parse().
| 
 | privatedelete | 
| 
 | overridevirtual | 
called by WPSDocument to parse the file
Implements WPSParser.
| 
 | protected | 
tries to parse a format: first character 0xae is read
Referenced by createListener(), createTable(), parseMetaData(), and parseTextZone().
| 
 | protected | 
tries to parse a frame
Referenced by parseTextZone().
| 
 | protected | 
tries to parse the meta data zone
Referenced by findAllZones().
| 
 | protected | 
tries to parse a picture
Referenced by parseTextZone().
| 
 | protected | 
tries to parse the main text zone
Referenced by parse(), and XYWriteParserInternal::Cell::sendContent().
| 
 | protected | 
try to update the listener data(font,paragraph style, ...)
Referenced by parseTextZone().
| 
 | friend | 
| 
 | friend | 
| 
 | protected | 
the listener (if set)
Referenced by createTable(), parse(), parseFrameZone(), parsePictureZone(), parseTextZone(), and update().
| 
 | protected | 
the main state
Referenced by checkFilePosition(), checkHeader(), createFormatChildren(), createListener(), createTable(), findAllZones(), parse(), parseFormat(), parseFrameZone(), parseMetaData(), parsePictureZone(), parseTextZone(), update(), and XYWriteParser().