Quattro9Spreadsheet Class Reference

This class parses Quattro9 Pro spreadsheet file. More...

#include <Quattro9Spreadsheet.h>

Public Member Functions

 Quattro9Spreadsheet (Quattro9Parser &parser)
 constructor More...
 
 ~Quattro9Spreadsheet ()
 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...
 
QuattroFormulaManager::CellReferenceFunction getReadCellReferenceFunction ()
 returns the function to read a cell's reference 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)
 send the sheetId'th spreadsheet More...
 
Vec2f getPosition (int sheetId, Vec2i const &cell) const
 returns the beginning position of a cell 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...
 
void addDocumentStrings (std::shared_ptr< WPSStream > const &stream, std::vector< Quattro9ParserInternal::TextEntry > const &entries)
 set the document strings list More...
 
void sendCellContent (Quattro9SpreadsheetInternal::CellData const *cell, Vec2i pos, int sheetId, int numRepeated)
 send the cell data More...
 
bool readCellStyles (std::shared_ptr< WPSStream > const &stream)
 reads a cell attribute: zone a More...
 
bool readDocumentFormulas (std::shared_ptr< WPSStream > const &stream)
 reads the document formulas: zone 408 More...
 
bool readBeginSheet (std::shared_ptr< WPSStream > const &stream, int &sheetId)
 read the begin sheet zone: zone 601 More...
 
bool readEndSheet (std::shared_ptr< WPSStream > const &stream)
 read the end sheet zone: zone 602 More...
 
bool readPageBreak (std::shared_ptr< WPSStream > const &stream)
 read the page break zone: zone 617 More...
 
bool readMergedCells (std::shared_ptr< WPSStream > const &stream)
 read the merged cell: zone 61d More...
 
bool readColRowDefault (std::shared_ptr< WPSStream > const &stream)
 read a col/row default dimension: zone 631, 632 More...
 
bool readColRowDimension (std::shared_ptr< WPSStream > const &stream)
 read a col/row dimension: zone 633, 634 More...
 
bool readColRowDimensions (std::shared_ptr< WPSStream > const &stream)
 read a col/row dimensions: zone 635, 636 More...
 
bool readBeginColumn (std::shared_ptr< WPSStream > const &stream)
 read the begin column zone: zone a01 More...
 
bool readEndColumn (std::shared_ptr< WPSStream > const &stream)
 read the end column zone: zone a02 More...
 
bool readCellList (std::shared_ptr< WPSStream > const &stream)
 reads a cell list zone: zone c01 More...
 
bool readCellResult (std::shared_ptr< WPSStream > const &stream)
 reads a cell result zone: zone c02 More...
 
bool readCell (std::shared_ptr< WPSStream > const &stream, Vec2i actPos, WKSContentListener::FormulaInstruction &instr, int sheetId, librevenge::RVNGString const &fName) const
 
bool readCellReference (std::shared_ptr< WPSStream > const &stream, long endPos, QuattroFormulaInternal::CellReference &ref, Vec2i const &pos=Vec2i(0, 0), int sheetId=0) const
 try to read a cell reference More...
 

Private Member Functions

 Quattro9Spreadsheet (Quattro9Spreadsheet const &orig)=delete
 
Quattro9Spreadsheetoperator= (Quattro9Spreadsheet const &orig)=delete
 

Private Attributes

std::shared_ptr< WKSContentListenerm_listener
 
Quattro9Parserm_mainParser
 the listener (if set) More...
 
std::shared_ptr< Quattro9SpreadsheetInternal::Statem_state
 the internal state More...
 

Friends

class Quattro9Parser
 

Detailed Description

This class parses Quattro9 Pro spreadsheet file.

Constructor & Destructor Documentation

◆ Quattro9Spreadsheet() [1/2]

Quattro9Spreadsheet::Quattro9Spreadsheet ( Quattro9Parser parser)
explicit

constructor

◆ ~Quattro9Spreadsheet()

Quattro9Spreadsheet::~Quattro9Spreadsheet ( )

destructor

◆ Quattro9Spreadsheet() [2/2]

Quattro9Spreadsheet::Quattro9Spreadsheet ( Quattro9Spreadsheet const &  orig)
privatedelete

Member Function Documentation

◆ addDLLIdName()

void Quattro9Spreadsheet::addDLLIdName ( int  id,
librevenge::RVNGString const &  name,
bool  func1 
)
protected

add a dll's correspondance between an id and a name

◆ addDocumentStrings()

void Quattro9Spreadsheet::addDocumentStrings ( std::shared_ptr< WPSStream > const &  stream,
std::vector< Quattro9ParserInternal::TextEntry > const &  entries 
)
protected

set the document strings list

◆ addUserFormat()

void Quattro9Spreadsheet::addUserFormat ( int  id,
librevenge::RVNGString const &  name 
)
protected

add a user format's correspondance between an id and a name

◆ cleanState()

void Quattro9Spreadsheet::cleanState ( )

clean internal state

◆ getNumSpreadsheets()

int Quattro9Spreadsheet::getNumSpreadsheets ( ) const
protected

returns the number of spreadsheet

◆ getPosition()

Vec2f Quattro9Spreadsheet::getPosition ( int  sheetId,
Vec2i const &  cell 
) const
protected

returns the beginning position of a cell

◆ getReadCellReferenceFunction()

QuattroFormulaManager::CellReferenceFunction Quattro9Spreadsheet::getReadCellReferenceFunction ( )
protected

returns the function to read a cell's reference

Referenced by cleanState(), and Quattro9Spreadsheet().

◆ getSheetName()

librevenge::RVNGString Quattro9Spreadsheet::getSheetName ( int  id) const
protected

returns the name of the id's spreadsheet

Referenced by sendCellContent().

◆ operator=()

Quattro9Spreadsheet& Quattro9Spreadsheet::operator= ( Quattro9Spreadsheet const &  orig)
privatedelete

◆ readBeginColumn()

bool Quattro9Spreadsheet::readBeginColumn ( std::shared_ptr< WPSStream > const &  stream)
protected

read the begin column zone: zone a01

◆ readBeginSheet()

bool Quattro9Spreadsheet::readBeginSheet ( std::shared_ptr< WPSStream > const &  stream,
int &  sheetId 
)
protected

read the begin sheet zone: zone 601

◆ readCell()

bool Quattro9Spreadsheet::readCell ( std::shared_ptr< WPSStream > const &  stream,
Vec2i  actPos,
WKSContentListener::FormulaInstruction instr,
int  sheetId,
librevenge::RVNGString const &  fName 
) const
protected

◆ readCellList()

bool Quattro9Spreadsheet::readCellList ( std::shared_ptr< WPSStream > const &  stream)
protected

reads a cell list zone: zone c01

◆ readCellReference()

bool Quattro9Spreadsheet::readCellReference ( std::shared_ptr< WPSStream > const &  stream,
long  endPos,
QuattroFormulaInternal::CellReference ref,
Vec2i const &  pos = Vec2i(0,0),
int  sheetId = 0 
) const
protected

try to read a cell reference

Referenced by getReadCellReferenceFunction().

◆ readCellResult()

bool Quattro9Spreadsheet::readCellResult ( std::shared_ptr< WPSStream > const &  stream)
protected

reads a cell result zone: zone c02

◆ readCellStyles()

bool Quattro9Spreadsheet::readCellStyles ( std::shared_ptr< WPSStream > const &  stream)
protected

reads a cell attribute: zone a

◆ readColRowDefault()

bool Quattro9Spreadsheet::readColRowDefault ( std::shared_ptr< WPSStream > const &  stream)
protected

read a col/row default dimension: zone 631, 632

◆ readColRowDimension()

bool Quattro9Spreadsheet::readColRowDimension ( std::shared_ptr< WPSStream > const &  stream)
protected

read a col/row dimension: zone 633, 634

◆ readColRowDimensions()

bool Quattro9Spreadsheet::readColRowDimensions ( std::shared_ptr< WPSStream > const &  stream)
protected

read a col/row dimensions: zone 635, 636

◆ readDocumentFormulas()

bool Quattro9Spreadsheet::readDocumentFormulas ( std::shared_ptr< WPSStream > const &  stream)
protected

reads the document formulas: zone 408

◆ readEndColumn()

bool Quattro9Spreadsheet::readEndColumn ( std::shared_ptr< WPSStream > const &  stream)
protected

read the end column zone: zone a02

◆ readEndSheet()

bool Quattro9Spreadsheet::readEndSheet ( std::shared_ptr< WPSStream > const &  stream)
protected

read the end sheet zone: zone 602

◆ readMergedCells()

bool Quattro9Spreadsheet::readMergedCells ( std::shared_ptr< WPSStream > const &  stream)
protected

read the merged cell: zone 61d

◆ readPageBreak()

bool Quattro9Spreadsheet::readPageBreak ( std::shared_ptr< WPSStream > const &  stream)
protected

read the page break zone: zone 617

◆ sendCellContent()

void Quattro9Spreadsheet::sendCellContent ( Quattro9SpreadsheetInternal::CellData const *  cell,
Vec2i  pos,
int  sheetId,
int  numRepeated 
)
protected

send the cell data

Referenced by sendSpreadsheet().

◆ sendSpreadsheet()

void Quattro9Spreadsheet::sendSpreadsheet ( int  sheetId)
protected

send the sheetId'th spreadsheet

◆ setListener()

void Quattro9Spreadsheet::setListener ( WKSContentListenerPtr listen)
inline

sets the listener

◆ updateState()

void Quattro9Spreadsheet::updateState ( )

update the state (need to be called before sending data)

◆ version()

int Quattro9Spreadsheet::version ( ) const
protected

return the file version

Referenced by readCellStyles().

Friends And Related Function Documentation

◆ Quattro9Parser

friend class Quattro9Parser
friend

Member Data Documentation

◆ m_listener

std::shared_ptr<WKSContentListener> Quattro9Spreadsheet::m_listener
private

Referenced by sendCellContent(), and sendSpreadsheet().

◆ m_mainParser

Quattro9Parser& Quattro9Spreadsheet::m_mainParser
private

◆ m_state


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

Generated on Wed Aug 8 2018 16:52:31 for libwps by doxygen 1.8.13