Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
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< Vec2i > | getGraphicCellsInSheet (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 | readHeader (QuattroGraphInternal::Graph &header, std::shared_ptr< WPSStream > stream, long endPos)
| try to read a graph header 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 | readHeader (QuattroGraphInternal::Dialog &header, std::shared_ptr< WPSStream > stream, long endPos)
| try to read a dialog header More...
bool | readDialog (std::shared_ptr< WPSStream > stream)
| read a dialog zone: 35e More...
bool | readDialogUnknown (std::shared_ptr< WPSStream > stream)
| read a unknown dialog zone: 335,343,345 More...
bool | readFillData (WPSGraphicStyle &style, int fillType, std::shared_ptr< WPSStream > stream, long endPos)

## Private Member Functions
| QuattroGraph (QuattroGraph const &orig)=delete
QuattroGraph & | operator= (QuattroGraph const &orig)=delete

## Private Attributes
std::shared_ptr< WKSContentListener > | m_listener
QuattroParser & | m_mainParser
| the listener (if set) More...
std::shared_ptr< QuattroGraphInternal::State > | m_state
| the internal state More...

## Friends
class | QuattroParser
class | QuattroGraphInternal::SubDocument

## Detailed Description

This class parses QuattroPro graph file.

## Constructor & Destructor Documentation

## ◆ QuattroGraph() [1/2]

QuattroGraph::QuattroGraph | ( | QuattroParser & | parser | ) |
| explicit

constructor

## ◆ ~QuattroGraph()

QuattroGraph::~QuattroGraph | ( |  | ) |

destructor

## ◆ QuattroGraph() [2/2]

QuattroGraph::QuattroGraph | ( | QuattroGraph const & | orig | ) |
| private delete

## Member Function Documentation

## ◆ cleanState()

void QuattroGraph::cleanState | ( |  | ) |

clean internal state

## ◆ getGraphicCellsInSheet()

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

return the list of cells containing some graphics in a sheet

## ◆ operator=()

QuattroGraph& QuattroGraph::operator= | ( | QuattroGraph const & | orig | ) |
| private delete

## ◆ readBeginEnd()

bool QuattroGraph::readBeginEnd | ( | std::shared_ptr< WPSStream > | stream,
|  | int | sheetId
| ) |  |
| protected

read the begin/end graph zone: 321/322

## ◆ readBitmap()

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

read a bitmap zone: zone 383(wb2)

## ◆ readButton()

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

read a button: zone 386

## ◆ readChart()

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

read a chart zone: zone 384

## ◆ readDialog()

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

read a dialog zone: 35e

## ◆ readDialogUnknown()

bool QuattroGraph::readDialogUnknown | ( | std::shared_ptr< WPSStream > | stream | ) |
| protected

read a unknown dialog zone: 335,343,345

## ◆ readFillData()

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

Referenced by readShapeHeader(), and readTextBox().

## ◆ readFrame()

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

read an frame: zone 385

## ◆ readFrameOLE()

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

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

## ◆ readHeader() [1/2]

bool QuattroGraph::readHeader | ( | QuattroGraphInternal::Graph & | header,
|  | std::shared_ptr< WPSStream > | stream,
|  | long | endPos
| ) |  |
| protected

try to read a graph header

Referenced by readBitmap(), readButton(), readChart(), readDialog(), readDialogUnknown(), readFrame(), readFrameOLE(), readImage(), and readShape().

## ◆ readHeader() [2/2]

bool QuattroGraph::readHeader | ( | QuattroGraphInternal::Dialog & | header,
|  | std::shared_ptr< WPSStream > | stream,
|  | long | endPos
| ) |  |
| protected

try to read a dialog header

## ◆ readImage()

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

read a image zone: zone 382(wb2)

## ◆ readLine()

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

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

## ◆ readOLEData()

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

read a OLE data: zone 38b

## ◆ readPolygon()

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

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

## ◆ readRect()

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

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

## ◆ readShape()

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

read a shape header: zone 4d3

## ◆ readShapeHeader()

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().

## ◆ readTextBox()

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

read a textbox data: zone 36f

## ◆ send()

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

send the textbox content

## ◆ sendGraphic()

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

send a graphic

Referenced by sendGraphics().

## ◆ sendGraphics()

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

send the graphic corresponding to a cell

## ◆ sendPageGraphics()

bool QuattroGraph::sendPageGraphics | ( | int | sheetId | ) | const
| protected

send the page graphic corresponding to a sheet

## ◆ sendShape()

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

send a shape

Referenced by sendPageGraphics().

## ◆ sendTextbox()

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

send a textbox

Referenced by sendPageGraphics().

## ◆ setListener()

void QuattroGraph::setListener | ( | WKSContentListenerPtr & | listen | ) |
| inline

sets the listener

## ◆ storeObjects()

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

stores the OLE objets

## ◆ updateState()

void QuattroGraph::updateState | ( |  | ) |

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

## ◆ version()

int QuattroGraph::version | ( |  | ) | const
| protected

return the file version

Referenced by readShapeHeader().

## Friends And Related Function Documentation

## ◆ QuattroGraphInternal::SubDocument

friend class QuattroGraphInternal::SubDocument
| friend

## ◆ QuattroParser

friend class QuattroParser
| friend

## Member Data Documentation

## ◆ m_listener

std::shared_ptr<WKSContentListener> QuattroGraph::m_listener
| private

Referenced by send(), sendGraphic(), sendGraphics(), sendShape(), sendTextbox(), and setListener().

## ◆ m_mainParser

QuattroParser& QuattroGraph::m_mainParser
| private

the listener (if set)

the main parser

Referenced by readBitmap(), readButton(), readChart(), readDialog(), readFillData(), readFrame(), readFrameOLE(), readImage(), readOLEData(), readShape(), readTextBox(), send(), sendShape(), sendTextbox(), and version().

## ◆ m_state

std::shared_ptr<QuattroGraphInternal::State> QuattroGraph::m_state
| private

the internal state

Referenced by cleanState(), getGraphicCellsInSheet(), readBeginEnd(), readBitmap(), readButton(), readChart(), readFrame(), readFrameOLE(), readImage(), readLine(), readOLEData(), readPolygon(), readRect(), readShape(), readShapeHeader(), readTextBox(), sendGraphic(), sendGraphics(), sendPageGraphics(), storeObjects(), and version().

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

- QuattroGraph.h
- QuattroGraph.cpp