WKS4Spreadsheet Class Reference

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
 
WKS4Spreadsheetoperator= (WKS4Spreadsheet const &orig)=delete
 
libwps::DebugFileascii ()
 returns the debug file
 

Private Attributes

RVNGInputStreamPtr m_input
 the input
 
std::shared_ptr< WKSContentListenerm_listener
 
WKS4Parserm_mainParser
 the listener (if set)
 
std::shared_ptr< WKS4SpreadsheetInternal::Statem_state
 the internal state
 
libwps::DebugFilem_asciiFile
 the ascii file
 

Friends

class WKS4Parser
 

Detailed Description

This class parses Microsoft Works spreadsheet file.

Constructor & Destructor Documentation

◆ WKS4Spreadsheet() [1/2]

WKS4Spreadsheet::WKS4Spreadsheet ( WKS4Parser parser)
explicit

constructor

◆ ~WKS4Spreadsheet()

WKS4Spreadsheet::~WKS4Spreadsheet ( )

destructor

◆ WKS4Spreadsheet() [2/2]

WKS4Spreadsheet::WKS4Spreadsheet ( WKS4Spreadsheet const orig)
privatedelete

Member Function Documentation

◆ ascii()

◆ checkFilePosition()

bool WKS4Spreadsheet::checkFilePosition ( long  pos)
protected

return true if the pos is in the file, update the file size if need

Referenced by readReportOpen().

◆ getNumSpreadsheets()

int WKS4Spreadsheet::getNumSpreadsheets ( ) const
protected

returns the number of spreadsheet

◆ getSheetName()

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

returns the name of the id's spreadsheet

◆ operator=()

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

◆ readCell() [1/2]

bool WKS4Spreadsheet::readCell ( )
protected

reads a cell content data

Referenced by readFormula().

◆ readCell() [2/2]

bool WKS4Spreadsheet::readCell ( Vec2i  actPos,
WKSContentListener::FormulaInstruction instr 
)
protected

◆ readCellFormulaResult()

bool WKS4Spreadsheet::readCellFormulaResult ( )
protected

reads the result of a text formula

◆ readColumnSize()

bool WKS4Spreadsheet::readColumnSize ( )
protected

reads the column size ( in ??? )

◆ readFilterClose()

bool WKS4Spreadsheet::readFilterClose ( )
protected

reads the filter's end zone 11:54

◆ readFilterOpen()

bool WKS4Spreadsheet::readFilterOpen ( )
protected

reads the filter's header zone 10:54

◆ readFormula()

bool WKS4Spreadsheet::readFormula ( long  endPos,
Vec2i const pos,
std::vector< WKSContentListener::FormulaInstruction > &  formula,
std::string error 
)
protected

Referenced by readCell().

◆ readHiddenColumns()

bool WKS4Spreadsheet::readHiddenColumns ( )
protected

reads the list of hidden columns zone ( unused )

◆ readMsWorksColumnSize()

bool WKS4Spreadsheet::readMsWorksColumnSize ( )
protected

reads the column size ( in ???)

◆ readMsWorksDOSCellExtraProperty()

bool WKS4Spreadsheet::readMsWorksDOSCellExtraProperty ( )
protected

reads the actual cell addendum properties ( contains at least the color)

◆ readMsWorksDOSCellProperty()

bool WKS4Spreadsheet::readMsWorksDOSCellProperty ( )
protected

reads actualCell properties

◆ readMsWorksDOSFieldProperty()

bool WKS4Spreadsheet::readMsWorksDOSFieldProperty ( )
protected

reads a field property

◆ readMsWorksDOSPageBreak()

bool WKS4Spreadsheet::readMsWorksDOSPageBreak ( )
protected

reads a page break (in a dos file)

◆ readMsWorksPageBreak()

bool WKS4Spreadsheet::readMsWorksPageBreak ( )
protected

reads a page break

◆ readMsWorksRowSize()

bool WKS4Spreadsheet::readMsWorksRowSize ( )
protected

reads the row size ( in ???)

◆ readMsWorksStyle()

bool WKS4Spreadsheet::readMsWorksStyle ( )
protected

reads a style

◆ readReportClose()

bool WKS4Spreadsheet::readReportClose ( )
protected

reads the report's end zone 18:54

◆ readReportOpen()

bool WKS4Spreadsheet::readReportOpen ( )
protected

reads the report's header zone 17:54

◆ readSheetSize()

bool WKS4Spreadsheet::readSheetSize ( )
protected

reads sheet size

◆ resetInput()

void WKS4Spreadsheet::resetInput ( RVNGInputStreamPtr const input)
protected

reset the main input

◆ sendCellContent()

void WKS4Spreadsheet::sendCellContent ( WKS4SpreadsheetInternal::Cell const cell)
protected

send the cell data

Referenced by sendSpreadsheet().

◆ sendSpreadsheet()

void WKS4Spreadsheet::sendSpreadsheet ( int  sId)
protected

send the sId'th spreadsheet

◆ setListener()

void WKS4Spreadsheet::setListener ( WKSContentListenerPtr listen)
inline

sets the listener

◆ version()

int WKS4Spreadsheet::version ( ) const
protected

return the file version

Referenced by readCell(), readCell(), readCellFormulaResult(), readFormula(), and sendCellContent().

Friends And Related Symbol Documentation

◆ WKS4Parser

Member Data Documentation

◆ m_asciiFile

libwps::DebugFile& WKS4Spreadsheet::m_asciiFile
private

the ascii file

Referenced by ascii().

◆ m_input

◆ m_listener

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

◆ m_mainParser

◆ m_state


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

Generated on Sat May 6 2023 13:09:45 for libwps by doxygen 1.9.8