This class parses Quattro Pro spreadsheet file. More...
#include <QuattroSpreadsheet.h>
Public Member Functions | |
QuattroSpreadsheet (QuattroParser &parser) | |
constructor More... | |
~QuattroSpreadsheet () | |
destructor More... | |
void | setListener (WKSContentListenerPtr &listen) |
sets the listener More... | |
void | cleanState () |
clean internal state More... | |
void | updateState () |
update the state (need to be called before sending data) More... | |
Protected Member Functions | |
int | version () const |
return the file version More... | |
int | getNumSpreadsheets () const |
returns the number of spreadsheet More... | |
librevenge::RVNGString | getSheetName (int id) const |
returns the name of the id's spreadsheet More... | |
void | sendSpreadsheet (int sheetId, std::vector< Vec2i > const &listGraphicCells) |
send the sId'th spreadsheet More... | |
Vec2f | getPosition (int sheetId, Vec2i const &cell) const |
returns the beginning position of a cell More... | |
void | sendCellContent (QuattroSpreadsheetInternal::Cell const &cell, int sheetId) |
send the cell data More... | |
void | addDLLIdName (int id, librevenge::RVNGString const &name, bool func1) |
add a dll's correspondance between an id and a name More... | |
void | addUserFormat (int id, librevenge::RVNGString const &name) |
add a user format's correspondance between an id and a name More... | |
bool | readCell (std::shared_ptr< WPSStream > stream) |
reads a cell content data: zone 0xc-0x10 or 33 More... | |
bool | readSheetSize (std::shared_ptr< WPSStream > stream) |
reads sheet size: zone 06 More... | |
bool | readColumnRowDefaultSize (std::shared_ptr< WPSStream > stream) |
reads the sheet column/row default size: zone d2-d5 More... | |
bool | readColumnSize (std::shared_ptr< WPSStream > stream) |
reads the column size: zone d8,d9 More... | |
bool | readRowSize (std::shared_ptr< WPSStream > stream) |
reads the row size: zone d6,d7 More... | |
bool | readRowRangeSize (std::shared_ptr< WPSStream > stream) |
reads the row size: zone 105,106 More... | |
bool | readBeginEndSheet (std::shared_ptr< WPSStream > stream, int &sheetId) |
read the begin/end of a sheet zone: zone ca and cb More... | |
bool | readSheetName (std::shared_ptr< WPSStream > stream) |
reads sheet name: zone cc More... | |
bool | readCellStyle (std::shared_ptr< WPSStream > stream) |
reads a cell attribute: zone 0xce More... | |
bool | readViewInfo (std::shared_ptr< WPSStream > stream) |
reads a view info: zone 197/198 More... | |
bool | readCell (std::shared_ptr< WPSStream > stream, Vec2i actPos, WKSContentListener::FormulaInstruction &instr, int sheetId, librevenge::RVNGString const &fName) const |
bool | readFormula (std::shared_ptr< WPSStream > stream, long endPos, Vec2i const &pos, int sheetId, std::vector< WKSContentListener::FormulaInstruction > &formula, std::string &error) |
void | updateCellWithUserFormat (QuattroSpreadsheetInternal::Cell &cell, librevenge::RVNGString const &format) |
try to update the cell's format using the user format More... | |
bool | readCellReference (std::shared_ptr< WPSStream > stream, long endPos, QuattroSpreadsheetInternal::CellReference &ref, Vec2i const &pos=Vec2i(0, 0), int sheetId=0) const |
try to read a cell reference More... | |
Private Member Functions | |
QuattroSpreadsheet (QuattroSpreadsheet const &orig)=delete | |
QuattroSpreadsheet & | operator= (QuattroSpreadsheet const &orig)=delete |
Private Attributes | |
std::shared_ptr< WKSContentListener > | m_listener |
QuattroParser & | m_mainParser |
the listener (if set) More... | |
std::shared_ptr< QuattroSpreadsheetInternal::State > | m_state |
the internal state More... | |
Friends | |
class | QuattroParser |
This class parses Quattro Pro spreadsheet file.
|
explicit |
constructor
QuattroSpreadsheet::~QuattroSpreadsheet | ( | ) |
destructor
|
privatedelete |
|
protected |
add a dll's correspondance between an id and a name
|
protected |
add a user format's correspondance between an id and a name
void QuattroSpreadsheet::cleanState | ( | ) |
clean internal state
|
protected |
returns the number of spreadsheet
returns the beginning position of a cell
|
protected |
returns the name of the id's spreadsheet
Referenced by sendCellContent().
|
privatedelete |
|
protected |
read the begin/end of a sheet zone: zone ca and cb
|
protected |
reads a cell content data: zone 0xc-0x10 or 33
Referenced by readCellReference().
|
protected |
|
protected |
try to read a cell reference
Referenced by readFormula().
|
protected |
reads a cell attribute: zone 0xce
|
protected |
reads the sheet column/row default size: zone d2-d5
|
protected |
reads the column size: zone d8,d9
|
protected |
Referenced by readCell().
|
protected |
reads the row size: zone 105,106
|
protected |
reads the row size: zone d6,d7
|
protected |
reads sheet name: zone cc
|
protected |
reads sheet size: zone 06
|
protected |
reads a view info: zone 197/198
|
protected |
send the cell data
Referenced by sendSpreadsheet().
|
protected |
send the sId'th spreadsheet
|
inline |
sets the listener
|
protected |
try to update the cell's format using the user format
Referenced by sendCellContent().
void QuattroSpreadsheet::updateState | ( | ) |
update the state (need to be called before sending data)
|
protected |
return the file version
|
friend |
|
private |
Referenced by sendCellContent(), sendSpreadsheet(), and setListener().
|
private |
the listener (if set)
the main parser
Referenced by readCell(), readCellReference(), readCellStyle(), readColumnRowDefaultSize(), readColumnSize(), readRowRangeSize(), readRowSize(), readSheetName(), sendCellContent(), sendSpreadsheet(), and version().
|
private |
the internal state
Referenced by addDLLIdName(), addUserFormat(), cleanState(), getNumSpreadsheets(), getPosition(), getSheetName(), readBeginEndSheet(), readCell(), readCellStyle(), readColumnRowDefaultSize(), readColumnSize(), readFormula(), readRowRangeSize(), readRowSize(), readSheetName(), readSheetSize(), sendCellContent(), sendSpreadsheet(), and version().