the main class to read a RagTime v2-3 file More...
#include <RagTimeParser.hxx>
Public Member Functions | |
RagTimeParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header) | |
constructor | |
~RagTimeParser () final | |
destructor | |
bool | checkHeader (MWAWHeader *header, bool strict=false) final |
checks if the document header is correct (or not) | |
void | parse (librevenge::RVNGTextInterface *documentInterface) final |
virtual function used to parse the input | |
![]() | |
~MWAWTextParser () override | |
destructor | |
virtual void | parse (librevenge::RVNGTextInterface *documentInterface)=0 |
virtual function used to parse the input | |
![]() | |
virtual | ~MWAWParser () |
virtual destructor | |
virtual bool | checkHeader (MWAWHeader *header, bool strict=false)=0 |
virtual function used to check if the document header is correct (or not) | |
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 | init () |
inits all internal variables | |
bool | getColor (int colId, MWAWColor &color, int listId=-1) const |
returns the ith color ( if possible) | |
bool | getDateTimeFormat (int dtId, std::string &dtFormat) const |
returns the ith date format or "" | |
int | getZoneDataFieldSize (int zId) const |
returns the size of a zone data field | |
int | getNewZoneId () |
returns a new unique zone id | |
int | getFontId (int localId) const |
returns a mac font id corresponding to a local id | |
bool | getCharStyle (int charId, MWAWFont &font) const |
returns font style corresponding to a char style id | |
bool | readTextZone (MWAWEntry &entry, int width, MWAWColor const &fontColor=MWAWColor::black()) |
try to read a text zone (knowing the zone width in point and the font color) | |
void | createDocument (librevenge::RVNGTextInterface *documentInterface) |
creates the listener which will be associated to the document | |
bool | sendZones () |
try to send the different zones | |
void | newPage (int number) |
adds a new page | |
bool | createZones () |
finds the different objects zones | |
bool | findDataZones () |
try to create the main data zones list | |
bool | readDataZoneHeader (int id, long endPos) |
try to read a data zone header | |
bool | findPagesZones () |
try to sort the zone on each page | |
bool | findRsrcZones () |
try to create the resource zones list | |
bool | sendPageZone (int page) |
try to send the different zones of a page | |
bool | send (int zId) |
try to send a zone | |
bool | sendText (int zId, MWAWListenerPtr listener) |
try to send the text zone (interface of RagTimeText) | |
bool | sendPicture (int zId, MWAWPosition const &pos) |
sends the picture | |
bool | sendBitmap (RagTimeParserInternal::Picture const &pict, MWAWPosition const &pos) |
sends a bitmap | |
bool | sendBasicPicture (int zId, MWAWPosition const &pos) |
sends a basic shape | |
void | flushExtra () |
flush unsent zone (debugging function) | |
bool | readPageZone (MWAWEntry &entry) |
try to read page zone ( unknown content of size 40). | |
bool | readPictZone (MWAWEntry &entry) |
try to read pictZone ( a big zone) | |
bool | readPictZoneV2 (MWAWEntry &entry) |
try to read pictZone ( a big zone):v2 | |
bool | readColorMapV2 (MWAWEntry &entry) |
try to read the color map:v2 | |
bool | readColorsMap () |
try to read the color map:v3 | |
bool | readPrintInfo (MWAWEntry &entry, bool inRSRCFork=false) |
read a printInfo block (a PREC rsrc) | |
bool | readLinks (MWAWEntry &entry) |
try to read the File Link zone: FLink | |
bool | readFormatsMap () |
try to read the format map:v3 | |
bool | readMacroFormats (MWAWEntry &entry) |
try to read the macro format zone: RTml zones | |
bool | readColorTable (MWAWEntry &entry) |
try to read the color table zone: CHTa zones | |
bool | readZone6 (MWAWEntry &entry) |
try to read zone6 ( a big zone) | |
bool | readRsrcBeDc (MWAWEntry &entry) |
try to read the BeDc zone ( zone of size 52, one by file with id=0); | |
bool | readRsrcStructured (MWAWEntry &entry) |
try to read a structured zone | |
bool | readRsrcBtch (MWAWEntry &entry) |
try to read the Btch zone (zone with id=0) | |
bool | readRsrcCalc (MWAWEntry &entry) |
try to read the Calc zone (zone with id=0) | |
bool | readRsrcfppr (MWAWEntry &entry) |
try to read the fppr zone (zone with id=0) | |
bool | readRsrcSele (MWAWEntry &entry) |
try to read the Sele zone (zone with id=0), maybe related to selection | |
bool | readRsrcFHwl (MWAWEntry &entry) |
try to read the FHwl zone ( one by file with id=0), maybe width length? | |
![]() | |
MWAWTextParser (MWAWInputStreamPtr const &input, MWAWRSRCParserPtr const &rsrcParser, MWAWHeader *header) | |
constructor (protected) | |
MWAWTextParser (MWAWParserStatePtr const &state) | |
constructor using a state | |
![]() | |
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< RagTimeParserInternal::State > | m_state |
the state | |
std::shared_ptr< RagTimeSpreadsheet > | m_spreadsheetParser |
the spreadsheet parser | |
std::shared_ptr< RagTimeText > | m_textParser |
the text parser | |
Friends | |
class | RagTimeParserInternal::SubDocument |
class | RagTimeText |
class | RagTimeSpreadsheet |
the main class to read a RagTime v2-3 file
RagTimeParser::RagTimeParser | ( | MWAWInputStreamPtr const & | input, |
MWAWRSRCParserPtr const & | rsrcParser, | ||
MWAWHeader * | header | ||
) |
constructor
|
final |
destructor
|
finalvirtual |
|
protected |
creates the listener which will be associated to the document
Referenced by parse().
|
protected |
finds the different objects zones
Referenced by parse().
|
protected |
try to create the main data zones list
Referenced by createZones().
|
protected |
try to sort the zone on each page
Referenced by createZones().
|
protected |
try to create the resource zones list
Referenced by findDataZones().
|
protected |
flush unsent zone (debugging function)
Referenced by parse().
|
protected |
returns font style corresponding to a char style id
Referenced by RagTimeSpreadsheet::readResource().
|
protected |
returns the ith color ( if possible)
Referenced by readColorTable(), readDataZoneHeader(), RagTimeText::readFonts(), and RagTimeSpreadsheet::readResource().
|
protected |
returns the ith date format or ""
Referenced by RagTimeText::readTokens().
|
protected |
returns a mac font id corresponding to a local id
Referenced by RagTimeSpreadsheet::readSpreadsheetCellV2().
|
protected |
returns a new unique zone id
Referenced by RagTimeSpreadsheet::readSpreadsheetCellContent().
|
protected |
returns the size of a zone data field
Referenced by readPictZone(), RagTimeSpreadsheet::readSpreadsheet(), and RagTimeText::readTextZone().
|
protected |
inits all internal variables
Referenced by RagTimeParser().
|
protected |
adds a new page
|
finalvirtual |
virtual function used to parse the input
Implements MWAWTextParser.
|
protected |
try to read the color map:v2
Referenced by findDataZones().
|
protected |
try to read the color map:v3
Referenced by findDataZones().
|
protected |
try to read the color table zone: CHTa zones
Referenced by readColorsMap().
|
protected |
try to read a data zone header
Referenced by findDataZones().
|
protected |
try to read the format map:v3
Referenced by createZones().
|
protected |
try to read the File Link zone: FLink
Referenced by createZones().
|
protected |
try to read the macro format zone: RTml zones
Referenced by createZones().
|
protected |
try to read page zone ( unknown content of size 40).
A zone which seems to appear between each page data
Referenced by createZones().
|
protected |
try to read pictZone ( a big zone)
Referenced by createZones().
|
protected |
try to read pictZone ( a big zone):v2
Referenced by createZones().
|
protected |
read a printInfo block (a PREC rsrc)
Referenced by createZones().
|
protected |
try to read the BeDc zone ( zone of size 52, one by file with id=0);
Referenced by createZones().
|
protected |
try to read the Btch zone (zone with id=0)
Referenced by createZones().
|
protected |
try to read the Calc zone (zone with id=0)
Referenced by createZones().
|
protected |
try to read the FHwl zone ( one by file with id=0), maybe width length?
Referenced by createZones().
|
protected |
try to read the fppr zone (zone with id=0)
Referenced by createZones().
|
protected |
try to read the Sele zone (zone with id=0), maybe related to selection
|
protected |
try to read a structured zone
Referenced by createZones().
|
protected |
try to read a text zone (knowing the zone width in point and the font color)
Referenced by RagTimeSpreadsheet::send().
|
protected |
try to read zone6 ( a big zone)
Referenced by createZones().
|
protected |
try to send a zone
Referenced by sendPageZone().
|
protected |
sends a basic shape
Referenced by flushExtra(), and send().
|
protected |
sends a bitmap
Referenced by sendPicture().
|
protected |
try to send the different zones of a page
Referenced by sendZones().
|
protected |
sends the picture
Referenced by flushExtra(), and send().
|
protected |
try to send the text zone (interface of RagTimeText)
Referenced by RagTimeSpreadsheet::send().
|
protected |
try to send the different zones
Referenced by parse().
|
friend |
|
friend |
Referenced by init().
|
friend |
Referenced by init().
|
protected |
the spreadsheet parser
Referenced by createZones(), getDateTimeFormat(), init(), parse(), readFormatsMap(), and send().
|
protected |
the state
Referenced by checkHeader(), createDocument(), createZones(), findDataZones(), findPagesZones(), findRsrcZones(), flushExtra(), getColor(), getNewZoneId(), getZoneDataFieldSize(), init(), newPage(), readColorMapV2(), readColorsMap(), readColorTable(), readDataZoneHeader(), readFormatsMap(), readPictZone(), readPictZoneV2(), send(), sendBasicPicture(), sendPageZone(), sendPicture(), and sendZones().
|
protected |
the text parser
Referenced by createZones(), getCharStyle(), getFontId(), init(), parse(), readTextZone(), and sendText().