WPS8Table Class Reference

the main class to read/store table in a Pc MS Works document v5-8 More...

#include <WPS8Table.h>

Public Member Functions

 WPS8Table (WPS8Parser &parser)
 constructor
 ~WPS8Table ()
 destructor
void setListener (WPSContentListenerPtr &listen)
 sets the listener
void computePositions () const
 computes the final position of all table: does nothing as table anchors seem always a char
int numPages () const
 returns the number page where we find a picture. In practice, 0/1
void flushExtra ()
 sends the data which have not been send to the listener.

Protected Member Functions

bool readStructures (RVNGInputStreamPtr const &input)
 finds all structures which correspond to a table
bool sendTable (Vec2f const &siz, int tableId, int strsid, bool inTextBox=false)
 tries to send a table corresponding to strsid with actual size siz
void sendTextInCell (int strsId, int cellId)
bool readMCLD (RVNGInputStreamPtr input, WPSEntry const &entry)
 reads a MCLD zone: a zone which stores the tables structures
int version () const
 returns the file version
libwps::DebugFileascii ()
 returns the debug file

Protected Attributes

WPSContentListenerPtr m_listener
 the listener
WPS8Parserm_mainParser
 the main parser
std::shared_ptr< WPS8TableInternal::Statem_state
 the state
libwps::DebugFilem_asciiFile
 the ascii file

Private Member Functions

 WPS8Table (WPS8Table const &orig)=delete
WPS8Tableoperator= (WPS8Table const &orig)=delete

Friends

struct WPS8TableInternal::Cell
class WPS8Parser

Detailed Description

the main class to read/store table in a Pc MS Works document v5-8

This class must be associated with a WPS8Parser. It contains code to read the MCLD entries which seems to correspond to a table entry (potentially a table entry with only one cells).

Note
Actually, the relations between the MCLD entries and the FRAM entries (which seems to store all the object positions) are not fully understood ; so the result of this parsing is not used to create the document.

Constructor & Destructor Documentation

◆ WPS8Table() [1/2]

WPS8Table::WPS8Table ( WPS8Parser & parser)
explicit

constructor

Referenced by operator=(), and WPS8Table().

◆ ~WPS8Table()

WPS8Table::~WPS8Table ( )

destructor

◆ WPS8Table() [2/2]

WPS8Table::WPS8Table ( WPS8Table const & orig)
privatedelete

Member Function Documentation

◆ ascii()

libwps::DebugFile & WPS8Table::ascii ( )
inlineprotected

returns the debug file

Referenced by readMCLD(), and WPS8Table().

◆ computePositions()

void WPS8Table::computePositions ( ) const

computes the final position of all table: does nothing as table anchors seem always a char

◆ flushExtra()

void WPS8Table::flushExtra ( )

sends the data which have not been send to the listener.

◆ numPages()

int WPS8Table::numPages ( ) const

returns the number page where we find a picture. In practice, 0/1

◆ operator=()

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

◆ readMCLD()

bool WPS8Table::readMCLD ( RVNGInputStreamPtr input,
WPSEntry const & entry )
protected

reads a MCLD zone: a zone which stores the tables structures

Referenced by readStructures().

◆ readStructures()

bool WPS8Table::readStructures ( RVNGInputStreamPtr const & input)
protected

finds all structures which correspond to a table

◆ sendTable()

bool WPS8Table::sendTable ( Vec2f const & siz,
int tableId,
int strsid,
bool inTextBox = false )
protected

tries to send a table corresponding to strsid with actual size siz

Parameters
sizthe size of the table in the document
tableIdthe table identificator
strsidindicates the text entry (and its corresponding TCD )
inTextBoxindicates if we have already created a textbox to insert the table which contains the cells' text.

Referenced by flushExtra().

◆ sendTextInCell()

void WPS8Table::sendTextInCell ( int strsId,
int cellId )
protected

◆ setListener()

void WPS8Table::setListener ( WPSContentListenerPtr & listen)
inline

sets the listener

◆ version()

int WPS8Table::version ( ) const
protected

returns the file version

◆ WPS8Parser

friend class WPS8Parser
friend

Referenced by WPS8Parser, and WPS8Table().

◆ WPS8TableInternal::Cell

friend struct WPS8TableInternal::Cell
friend

Member Data Documentation

◆ m_asciiFile

libwps::DebugFile& WPS8Table::m_asciiFile
protected

the ascii file

Referenced by ascii(), and WPS8Table().

◆ m_listener

WPSContentListenerPtr WPS8Table::m_listener
protected

the listener

Referenced by flushExtra(), sendTable(), setListener(), and WPS8Table().

◆ m_mainParser

WPS8Parser& WPS8Table::m_mainParser
protected

◆ m_state

std::shared_ptr<WPS8TableInternal::State> WPS8Table::m_state
mutableprotected

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

Generated on Sat Jul 19 2025 05:24:40 for libwps by doxygen 1.14.0