QuattroGraph Class Reference

This class parses QuattroPro graph file. More...

#include <QuattroGraph.h>

Public Member Functions

 QuattroGraph (QuattroParser &parser)
 constructor More...
 
 ~QuattroGraph ()
 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...
 
void storeObjects (std::map< librevenge::RVNGString, WPSEmbeddedObject > const &nameToObjectMap)
 stores the OLE objets More...
 
std::vector< Vec2igetGraphicCellsInSheet (int sheetId) const
 return the list of cells containing some graphics in a sheet More...
 
bool sendGraphics (int sheetId, Vec2i const &cell) const
 send the graphic corresponding to a cell More...
 
bool sendPageGraphics (int sheetId) const
 send the page graphic corresponding to a sheet More...
 
bool sendGraphic (QuattroGraphInternal::Graph const &graph) const
 send a graphic More...
 
bool sendShape (QuattroGraphInternal::Graph const &graph, int sheetId) const
 send a shape More...
 
bool sendTextbox (QuattroGraphInternal::Graph const &graph, int sheetId) const
 send a textbox More...
 
bool send (QuattroGraphInternal::Textbox const &textbox, std::shared_ptr< WPSStream > stream) const
 send the textbox content More...
 
bool readBeginEnd (std::shared_ptr< WPSStream > stream, int sheetId)
 read the begin/end graph zone: 321/322 More...
 
bool readFrameOLE (std::shared_ptr< WPSStream > stream)
 read a new OLE frame zone: zone 381(wb2) More...
 
bool readImage (std::shared_ptr< WPSStream > stream)
 read a image zone: zone 382(wb2) More...
 
bool readBitmap (std::shared_ptr< WPSStream > stream)
 read a bitmap zone: zone 383(wb2) More...
 
bool readChart (std::shared_ptr< WPSStream > stream)
 read a chart zone: zone 384 More...
 
bool readFrame (std::shared_ptr< WPSStream > stream)
 read an frame: zone 385 More...
 
bool readButton (std::shared_ptr< WPSStream > stream)
 read a button: zone 386 More...
 
bool readOLEData (std::shared_ptr< WPSStream > stream)
 read a OLE data: zone 38b More...
 
bool readShape (std::shared_ptr< WPSStream > stream)
 read a shape header: zone 4d3 More...
 
bool readShapeHeader (QuattroGraphInternal::ShapeHeader &shape, std::shared_ptr< WPSStream > stream, long endPos)
 read a shape header More...
 
bool readLine (std::shared_ptr< WPSStream > stream)
 read a line/arrow data: zone 35a/37b More...
 
bool readRect (std::shared_ptr< WPSStream > stream)
 read a oval/rect/round rect data: zone 33e/364/379 More...
 
bool readPolygon (std::shared_ptr< WPSStream > stream)
 read a polygon/polyline data: zone 35c/37c/35b/388 More...
 
bool readTextBox (std::shared_ptr< WPSStream > stream)
 read a textbox data: zone 36f More...
 
bool readDialog (std::shared_ptr< WPSStream > stream)
 read a dialog zone: 35e More...
 
bool readFillData (WPSGraphicStyle &style, int fillType, std::shared_ptr< WPSStream > stream, long endPos)
 

Static Protected Member Functions

static bool readHeader (QuattroGraphInternal::Graph &header, std::shared_ptr< WPSStream > stream, long endPos)
 try to read a graph header More...
 
static bool readHeader (QuattroGraphInternal::Dialog &header, std::shared_ptr< WPSStream > stream, long endPos)
 try to read a dialog header More...
 
static bool readDialogUnknown (std::shared_ptr< WPSStream > stream)
 read a unknown dialog zone: 335,343,345 More...
 

Private Member Functions

 QuattroGraph (QuattroGraph const &orig)=delete
 
QuattroGraphoperator= (QuattroGraph const &orig)=delete
 

Private Attributes

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

Friends

class QuattroParser
 
class QuattroGraphInternal::SubDocument
 

Detailed Description

This class parses QuattroPro graph file.

Constructor & Destructor Documentation

QuattroGraph::QuattroGraph ( QuattroParser parser)
explicit

constructor

QuattroGraph::~QuattroGraph ( )

destructor

QuattroGraph::QuattroGraph ( QuattroGraph const &  orig)
privatedelete

Member Function Documentation

void QuattroGraph::cleanState ( )

clean internal state

std::vector< Vec2i > QuattroGraph::getGraphicCellsInSheet ( int  sheetId) const
protected

return the list of cells containing some graphics in a sheet

QuattroGraph& QuattroGraph::operator= ( QuattroGraph const &  orig)
privatedelete
bool QuattroGraph::readBeginEnd ( std::shared_ptr< WPSStream stream,
int  sheetId 
)
protected

read the begin/end graph zone: 321/322

bool QuattroGraph::readBitmap ( std::shared_ptr< WPSStream stream)
protected

read a bitmap zone: zone 383(wb2)

bool QuattroGraph::readButton ( std::shared_ptr< WPSStream stream)
protected

read a button: zone 386

bool QuattroGraph::readChart ( std::shared_ptr< WPSStream stream)
protected

read a chart zone: zone 384

bool QuattroGraph::readDialog ( std::shared_ptr< WPSStream stream)
protected

read a dialog zone: 35e

bool QuattroGraph::readDialogUnknown ( std::shared_ptr< WPSStream stream)
staticprotected

read a unknown dialog zone: 335,343,345

bool QuattroGraph::readFillData ( WPSGraphicStyle style,
int  fillType,
std::shared_ptr< WPSStream stream,
long  endPos 
)
protected

Referenced by readShapeHeader(), and readTextBox().

bool QuattroGraph::readFrame ( std::shared_ptr< WPSStream stream)
protected

read an frame: zone 385

bool QuattroGraph::readFrameOLE ( std::shared_ptr< WPSStream stream)
protected

read a new OLE frame zone: zone 381(wb2)

bool QuattroGraph::readHeader ( QuattroGraphInternal::Graph header,
std::shared_ptr< WPSStream stream,
long  endPos 
)
staticprotected
bool QuattroGraph::readHeader ( QuattroGraphInternal::Dialog header,
std::shared_ptr< WPSStream stream,
long  endPos 
)
staticprotected

try to read a dialog header

bool QuattroGraph::readImage ( std::shared_ptr< WPSStream stream)
protected

read a image zone: zone 382(wb2)

bool QuattroGraph::readLine ( std::shared_ptr< WPSStream stream)
protected

read a line/arrow data: zone 35a/37b

bool QuattroGraph::readOLEData ( std::shared_ptr< WPSStream stream)
protected

read a OLE data: zone 38b

bool QuattroGraph::readPolygon ( std::shared_ptr< WPSStream stream)
protected

read a polygon/polyline data: zone 35c/37c/35b/388

bool QuattroGraph::readRect ( std::shared_ptr< WPSStream stream)
protected

read a oval/rect/round rect data: zone 33e/364/379

bool QuattroGraph::readShape ( std::shared_ptr< WPSStream stream)
protected

read a shape header: zone 4d3

bool QuattroGraph::readShapeHeader ( QuattroGraphInternal::ShapeHeader shape,
std::shared_ptr< WPSStream stream,
long  endPos 
)
protected

read a shape header

Note
the serie header is pretty similar

Referenced by readLine(), readPolygon(), readRect(), and readTextBox().

bool QuattroGraph::readTextBox ( std::shared_ptr< WPSStream stream)
protected

read a textbox data: zone 36f

bool QuattroGraph::send ( QuattroGraphInternal::Textbox const &  textbox,
std::shared_ptr< WPSStream stream 
) const
protected

send the textbox content

bool QuattroGraph::sendGraphic ( QuattroGraphInternal::Graph const &  graph) const
protected

send a graphic

Referenced by sendGraphics().

bool QuattroGraph::sendGraphics ( int  sheetId,
Vec2i const &  cell 
) const
protected

send the graphic corresponding to a cell

bool QuattroGraph::sendPageGraphics ( int  sheetId) const
protected

send the page graphic corresponding to a sheet

bool QuattroGraph::sendShape ( QuattroGraphInternal::Graph const &  graph,
int  sheetId 
) const
protected

send a shape

Referenced by sendPageGraphics().

bool QuattroGraph::sendTextbox ( QuattroGraphInternal::Graph const &  graph,
int  sheetId 
) const
protected

send a textbox

Referenced by sendPageGraphics().

void QuattroGraph::setListener ( WKSContentListenerPtr listen)
inline

sets the listener

void QuattroGraph::storeObjects ( std::map< librevenge::RVNGString, WPSEmbeddedObject > const &  nameToObjectMap)
protected

stores the OLE objets

void QuattroGraph::updateState ( )

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

int QuattroGraph::version ( ) const
protected

return the file version

Referenced by readShapeHeader().

Friends And Related Function Documentation

friend class QuattroGraphInternal::SubDocument
friend
friend class QuattroParser
friend

Member Data Documentation

std::shared_ptr<WKSContentListener> QuattroGraph::m_listener
private
QuattroParser& QuattroGraph::m_mainParser
private

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

Generated on Sun Oct 18 2020 20:49:31 for libwps by doxygen 1.8.9.1