This class parses Microsoft Works spreadsheet file. More...
#include <WKS4Spreadsheet.h>
Public Member Functions | |
WKS4Spreadsheet (WKS4Parser &parser) | |
constructor | |
~WKS4Spreadsheet () | |
destructor | |
void | setListener (WKSContentListenerPtr &listen) |
sets the listener |
Protected Member Functions | |
bool | checkFilePosition (long pos) |
return true if the pos is in the file, update the file size if need | |
int | version () const |
return the file version | |
void | resetInput (RVNGInputStreamPtr const &input) |
reset the main input | |
int | getNumSpreadsheets () const |
returns the number of spreadsheet | |
void | sendSpreadsheet (int sId) |
send the sId'th spreadsheet | |
librevenge::RVNGString | getSheetName (int id) const |
returns the name of the id's spreadsheet | |
void | sendCellContent (WKS4SpreadsheetInternal::Cell const &cell) |
send the cell data | |
bool | readReportOpen () |
reads the report's header zone 17:54 | |
bool | readReportClose () |
reads the report's end zone 18:54 | |
bool | readFilterOpen () |
reads the filter's header zone 10:54 | |
bool | readFilterClose () |
reads the filter's end zone 11:54 | |
bool | readCell () |
reads a cell content data | |
bool | readCellFormulaResult () |
reads the result of a text formula | |
bool | readSheetSize () |
reads sheet size | |
bool | readColumnSize () |
reads the column size ( in ??? ) | |
bool | readHiddenColumns () |
reads the list of hidden columns zone ( unused ) | |
bool | readMsWorksDOSFieldProperty () |
reads a field property | |
bool | readMsWorksDOSCellProperty () |
reads actualCell properties | |
bool | readMsWorksDOSCellExtraProperty () |
reads the actual cell addendum properties ( contains at least the color) | |
bool | readMsWorksDOSPageBreak () |
reads a page break (in a dos file) | |
bool | readMsWorksColumnSize () |
reads the column size ( in ???) | |
bool | readMsWorksRowSize () |
reads the row size ( in ???) | |
bool | readMsWorksPageBreak () |
reads a page break | |
bool | readMsWorksStyle () |
reads a style | |
bool | readCell (Vec2i actPos, WKSContentListener::FormulaInstruction &instr) |
bool | readFormula (long endPos, Vec2i const &pos, std::vector< WKSContentListener::FormulaInstruction > &formula, std::string &error) |
Private Member Functions | |
WKS4Spreadsheet (WKS4Spreadsheet const &orig)=delete | |
WKS4Spreadsheet & | operator= (WKS4Spreadsheet const &orig)=delete |
libwps::DebugFile & | ascii () |
returns the debug file |
Private Attributes | |
RVNGInputStreamPtr | m_input |
the input | |
std::shared_ptr< WKSContentListener > | m_listener |
WKS4Parser & | m_mainParser |
the listener (if set) | |
std::shared_ptr< WKS4SpreadsheetInternal::State > | m_state |
the internal state | |
libwps::DebugFile & | m_asciiFile |
the ascii file |
Friends | |
class | WKS4Parser |
This class parses Microsoft Works spreadsheet file.
|
explicit |
constructor
Referenced by operator=(), and WKS4Spreadsheet().
WKS4Spreadsheet::~WKS4Spreadsheet | ( | ) |
destructor
|
privatedelete |
|
inlineprivate |
returns the debug file
Referenced by readCell(), readCellFormulaResult(), readColumnSize(), readFilterClose(), readFilterOpen(), readFormula(), readHiddenColumns(), readMsWorksColumnSize(), readMsWorksDOSCellExtraProperty(), readMsWorksDOSCellProperty(), readMsWorksDOSFieldProperty(), readMsWorksDOSPageBreak(), readMsWorksPageBreak(), readMsWorksRowSize(), readMsWorksStyle(), readReportClose(), readReportOpen(), readSheetSize(), and WKS4Spreadsheet().
|
protected |
return true if the pos is in the file, update the file size if need
Referenced by readReportOpen().
|
protected |
returns the number of spreadsheet
|
protected |
returns the name of the id's spreadsheet
|
privatedelete |
|
protected |
reads a cell content data
Referenced by readFormula().
|
protected |
|
protected |
reads the result of a text formula
|
protected |
reads the column size ( in ??? )
|
protected |
reads the filter's end zone 11:54
|
protected |
reads the filter's header zone 10:54
|
protected |
Referenced by readCell().
|
protected |
reads the list of hidden columns zone ( unused )
|
protected |
reads the column size ( in ???)
|
protected |
reads the actual cell addendum properties ( contains at least the color)
|
protected |
reads actualCell properties
|
protected |
reads a field property
|
protected |
reads a page break (in a dos file)
|
protected |
reads a page break
|
protected |
reads the row size ( in ???)
|
protected |
reads a style
|
protected |
reads the report's end zone 18:54
|
protected |
reads the report's header zone 17:54
|
protected |
reads sheet size
|
protected |
reset the main input
|
protected |
send the cell data
Referenced by sendSpreadsheet().
|
protected |
send the sId'th spreadsheet
|
inline |
sets the listener
|
protected |
return the file version
Referenced by readCell(), readCell(), readCellFormulaResult(), readFormula(), and sendCellContent().
|
friend |
Referenced by WKS4Parser, and WKS4Spreadsheet().
|
private |
the ascii file
Referenced by ascii(), and WKS4Spreadsheet().
|
private |
the input
Referenced by checkFilePosition(), readCell(), readCell(), readCellFormulaResult(), readColumnSize(), readFilterClose(), readFilterOpen(), readFormula(), readHiddenColumns(), readMsWorksColumnSize(), readMsWorksDOSCellExtraProperty(), readMsWorksDOSCellProperty(), readMsWorksDOSFieldProperty(), readMsWorksDOSPageBreak(), readMsWorksPageBreak(), readMsWorksRowSize(), readMsWorksStyle(), readReportClose(), readReportOpen(), readSheetSize(), resetInput(), sendCellContent(), and WKS4Spreadsheet().
|
private |
Referenced by sendCellContent(), sendSpreadsheet(), setListener(), and WKS4Spreadsheet().
|
private |
the listener (if set)
the main parser
Referenced by readCell(), readCell(), readCellFormulaResult(), readMsWorksDOSCellExtraProperty(), readMsWorksDOSCellProperty(), readMsWorksDOSFieldProperty(), readMsWorksStyle(), readReportOpen(), sendCellContent(), version(), and WKS4Spreadsheet().
|
private |
the internal state
Referenced by checkFilePosition(), getNumSpreadsheets(), getSheetName(), readCell(), readColumnSize(), readFilterClose(), readFilterOpen(), readMsWorksColumnSize(), readMsWorksDOSCellExtraProperty(), readMsWorksDOSCellProperty(), readMsWorksDOSPageBreak(), readMsWorksPageBreak(), readMsWorksRowSize(), readMsWorksStyle(), readReportClose(), readReportOpen(), readSheetSize(), sendCellContent(), sendSpreadsheet(), version(), and WKS4Spreadsheet().