LotusGraph Class Reference

This class parses Microsoft Works graph file. More...

#include <LotusGraph.h>

Public Member Functions

 LotusGraph (LotusParser &parser)
 constructor
 ~LotusGraph ()
 destructor
void cleanState ()
 clean internal state
void setListener (WKSContentListenerPtr &listen)
 sets the listener
void updateState (std::map< int, int > const &zIdToSheetIdMap)
 update the state (need to be called before sending data)

Protected Member Functions

int version () const
 return the file version
bool hasGraphics (int sheetId) const
 return true if the sheet sheetId has some graphic
void sendGraphics (int sheetId)
 send the graphics corresponding to a sheetId
void sendZone (LotusGraphInternal::ZonePcList const &zoneList, size_t id, WPSTransformation &transf)
 try to send a shape: 123 pc
void sendPicture (LotusGraphInternal::ZoneMac const &zone)
 try to send a picture: 123 mac
void sendTextBox (shared_ptr< WPSStream > stream, WPSEntry const &entry)
 try to send a textbox content's
void sendTextBoxWK4 (shared_ptr< WPSStream > stream, WPSEntry const &entry, bool isButton)
 try to send a textbox content's
bool readZoneBegin (shared_ptr< WPSStream > stream, long endPos)
 reads a begin graphic zone: 2328 (wk3mac)
bool readZoneData (shared_ptr< WPSStream > stream, long endPos, int type)
 reads a graphic zone: 2332, 2346, 2350, 2352, 23f0 (wk3mac)
bool readTextBoxData (shared_ptr< WPSStream > stream, long endPos)
 reads a graphic textbox data: 23f0 (wk3mac)
bool readPictureDefinition (shared_ptr< WPSStream > stream, long endPos)
 reads a picture definition: 240e (wk3mac)
bool readPictureData (shared_ptr< WPSStream > stream, long endPos)
 reads a picture data: 2410 (wk3mac)
bool readZoneBeginC9 (shared_ptr< WPSStream > stream)
 try to read the sheet id: 0xc9 (wk4)
bool readGraphic (shared_ptr< WPSStream > stream)
 try to read a graphic: 0xca (wk4)
bool readFrame (shared_ptr< WPSStream > stream)
 try to read a graph's frame: 0xcc (wk4)
bool readTextBoxDataD1 (shared_ptr< WPSStream > stream)
 reads a graphic textbox data: 0xd1 (wk4)
bool readGraphZone (shared_ptr< WPSStream > stream, int zId)
 try to read the graphic zone: 1XXX
bool readGraphDataZone (shared_ptr< WPSStream > stream, long endPos)
 try to read the graphic data zone: 010d

Private Member Functions

 LotusGraph (LotusGraph const &orig)
LotusGraphoperator= (LotusGraph const &orig)

Private Attributes

shared_ptr< WKSContentListenerm_listener
LotusParserm_mainParser
 the listener (if set)
shared_ptr< LotusStyleManagerm_styleManager
 the style manager
shared_ptr< LotusGraphInternal::Statem_state
 the internal state

Friends

class LotusParser
class LotusGraphInternal::SubDocument

Detailed Description

This class parses Microsoft Works graph file.

Constructor & Destructor Documentation

◆ LotusGraph() [1/2]

LotusGraph::LotusGraph ( LotusParser & parser)
explicit

constructor

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

◆ ~LotusGraph()

LotusGraph::~LotusGraph ( )

destructor

◆ LotusGraph() [2/2]

LotusGraph::LotusGraph ( LotusGraph const & orig)
private

Member Function Documentation

◆ cleanState()

void LotusGraph::cleanState ( )

clean internal state

◆ hasGraphics()

bool LotusGraph::hasGraphics ( int sheetId) const
protected

return true if the sheet sheetId has some graphic

◆ operator=()

LotusGraph & LotusGraph::operator= ( LotusGraph const & orig)
private

◆ readFrame()

bool LotusGraph::readFrame ( shared_ptr< WPSStream > stream)
protected

try to read a graph's frame: 0xcc (wk4)

◆ readGraphDataZone()

bool LotusGraph::readGraphDataZone ( shared_ptr< WPSStream > stream,
long endPos )
protected

try to read the graphic data zone: 010d

◆ readGraphic()

bool LotusGraph::readGraphic ( shared_ptr< WPSStream > stream)
protected

try to read a graphic: 0xca (wk4)

◆ readGraphZone()

bool LotusGraph::readGraphZone ( shared_ptr< WPSStream > stream,
int zId )
protected

try to read the graphic zone: 1XXX

◆ readPictureData()

bool LotusGraph::readPictureData ( shared_ptr< WPSStream > stream,
long endPos )
protected

reads a picture data: 2410 (wk3mac)

◆ readPictureDefinition()

bool LotusGraph::readPictureDefinition ( shared_ptr< WPSStream > stream,
long endPos )
protected

reads a picture definition: 240e (wk3mac)

◆ readTextBoxData()

bool LotusGraph::readTextBoxData ( shared_ptr< WPSStream > stream,
long endPos )
protected

reads a graphic textbox data: 23f0 (wk3mac)

◆ readTextBoxDataD1()

bool LotusGraph::readTextBoxDataD1 ( shared_ptr< WPSStream > stream)
protected

reads a graphic textbox data: 0xd1 (wk4)

◆ readZoneBegin()

bool LotusGraph::readZoneBegin ( shared_ptr< WPSStream > stream,
long endPos )
protected

reads a begin graphic zone: 2328 (wk3mac)

◆ readZoneBeginC9()

bool LotusGraph::readZoneBeginC9 ( shared_ptr< WPSStream > stream)
protected

try to read the sheet id: 0xc9 (wk4)

◆ readZoneData()

bool LotusGraph::readZoneData ( shared_ptr< WPSStream > stream,
long endPos,
int type )
protected

reads a graphic zone: 2332, 2346, 2350, 2352, 23f0 (wk3mac)

◆ sendGraphics()

void LotusGraph::sendGraphics ( int sheetId)
protected

send the graphics corresponding to a sheetId

◆ sendPicture()

void LotusGraph::sendPicture ( LotusGraphInternal::ZoneMac const & zone)
protected

try to send a picture: 123 mac

Referenced by sendGraphics().

◆ sendTextBox()

void LotusGraph::sendTextBox ( shared_ptr< WPSStream > stream,
WPSEntry const & entry )
protected

try to send a textbox content's

◆ sendTextBoxWK4()

void LotusGraph::sendTextBoxWK4 ( shared_ptr< WPSStream > stream,
WPSEntry const & entry,
bool isButton )
protected

try to send a textbox content's

◆ sendZone()

void LotusGraph::sendZone ( LotusGraphInternal::ZonePcList const & zoneList,
size_t id,
WPSTransformation & transf )
protected

try to send a shape: 123 pc

Referenced by sendGraphics(), and sendZone().

◆ setListener()

void LotusGraph::setListener ( WKSContentListenerPtr & listen)
inline

sets the listener

◆ updateState()

void LotusGraph::updateState ( std::map< int, int > const & zIdToSheetIdMap)

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

◆ version()

int LotusGraph::version ( ) const
protected

return the file version

Referenced by readGraphDataZone(), and readGraphZone().

◆ LotusGraphInternal::SubDocument

friend class LotusGraphInternal::SubDocument
friend

◆ LotusParser

friend class LotusParser
friend

Member Data Documentation

◆ m_listener

shared_ptr<WKSContentListener> LotusGraph::m_listener
private

◆ m_mainParser

LotusParser& LotusGraph::m_mainParser
private

the listener (if set)

the main parser

Referenced by LotusGraph(), sendGraphics(), sendTextBox(), sendTextBoxWK4(), and version().

◆ m_state

◆ m_styleManager

shared_ptr<LotusStyleManager> LotusGraph::m_styleManager
private

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

Generated on Mon Aug 11 2025 01:14:10 for libwps by doxygen 1.14.0