MsWksGraph Class Reference

the main class to read the graphic of a Microsoft Works file More...

#include <MsWksGraph.hxx>

Classes

struct  SendData
 small struct used which picture need to be send More...
 
struct  Style
 Internal: the graphic style of MsWksGraph. More...
 

Public Member Functions

 MsWksGraph (MsWksDocument &document)
 constructor More...
 
virtual ~MsWksGraph ()
 destructor More...
 
void setPageLeftTop (MWAWVec2f const &leftTop)
 define the page left top dimension in point More...
 
int version () const
 returns the file version More...
 
int numPages (int zoneId) const
 returns the number of pages More...
 
void send (int id, MWAWPosition const &pos)
 send a zone (textbox, ...). More...
 
void sendAll (int zoneId, bool mainZone)
 send all the picture corresponding to a zone More...
 
void sendObjects (SendData const &what)
 sends all the object of a page, frame, ... More...
 
void computePositions (int zoneId, std::vector< int > &linesHeight, std::vector< int > &pagesHeight)
 try to update positions knowing pages and lines height More...
 

Protected Member Functions

void flushExtra ()
 sends the data which have not yet been sent to the listener More...
 
bool readPictHeader (MsWksGraphInternal::Zone &pict)
 read the picture header More...
 
bool readGradient (Style &style)
 read the gradient structure ( v4) More...
 
int getEntryPictureV1 (int zoneId, MWAWEntry &zone, bool autoSend=true)
 checks if the next zone is a v1 picture and returns a zone id ( or -1). More...
 
int getEntryPicture (int zoneId, MWAWEntry &zone, bool autoSend=true, int order=-1000)
 checks if the next zone is a v2 picture and returns a zone id ( or -1) More...
 
bool readRB (MWAWInputStreamPtr input, MWAWEntry const &entry, int kind)
 reads the RBDR or a RBIL zone: a zone which seems to regroup all pages pictures in v3-v4 document More...
 
bool readPictureV4 (MWAWInputStreamPtr input, MWAWEntry const &entry)
 reads a Pict zone: a zone which seems to code in v4 : header/footer picture More...
 
bool readText (MsWksGraphInternal::TextBox &textBox)
 try to read a text zone More...
 
void sendTextBox (int zId, MWAWListenerPtr listener)
 try to send a text box zone v1-3 More...
 
void checkTextBoxLinks (MsWksGraphInternal::RBZone &rbZone)
 check the text box link v4 More...
 
bool getZoneGraphicStyle (int zoneId, MWAWGraphicStyle &style) const
 returns the graphic style of the zone defined by zoneId More...
 
bool getZonePosition (int zoneId, MWAWPosition::AnchorTo anchor, MWAWPosition &pos) const
 returns the position of the zone defined by zoneId More...
 
void sendFrameText (MWAWEntry const &entry, std::string const &frame)
 ask m_mainParser to send a frame text(v4) More...
 
void sendTable (int id)
 try to a table zone More...
 
void sendChart (int zoneId)
 try to send a chart More...
 
shared_ptr
< MsWksGraphInternal::GroupZone
readGroup (MsWksGraphInternal::Zone &group)
 try to read the group data More...
 
void sendGroup (int zoneId, MWAWPosition const &pos)
 try to send a group More...
 
void sendGroupChild (int zoneId, MWAWPosition const &pos)
 try to send a group elements by elemenys More...
 
bool canCreateGraphic (MsWksGraphInternal::GroupZone const &group) const
 returns true if we can create a graphic for the whole group More...
 
void sendGroup (MsWksGraphInternal::GroupZone const &group, MWAWGraphicListenerPtr &listener) const
 send the group as a graphic zone More...
 
bool readFont (MWAWFont &font)
 reads the textbox font More...
 

Protected Attributes

MWAWParserStatePtr m_parserState
 the parser state More...
 
shared_ptr
< MsWksGraphInternal::State
m_state
 the state More...
 
MWAWParserm_mainParser
 the main parser; More...
 
MsWksDocumentm_document
 the main document More...
 
shared_ptr< MsWksTablem_tableParser
 the table manager More...
 

Private Member Functions

 MsWksGraph (MsWksGraph const &orig)
 
MsWksGraphoperator= (MsWksGraph const &orig)
 

Friends

class MsWksDocument
 
class MsWksTable
 
class MsWksParser
 
class MsWks4Zone
 
class MsWksDBParser
 
class MsWksDRParser
 
class MsWksSSParser
 
class MsWksGraphInternal::SubDocument
 

Detailed Description

the main class to read the graphic of a Microsoft Works file

Constructor & Destructor Documentation

MsWksGraph::MsWksGraph ( MsWksDocument document)

constructor

MsWksGraph::~MsWksGraph ( )
virtual

destructor

MsWksGraph::MsWksGraph ( MsWksGraph const &  orig)
private

Member Function Documentation

bool MsWksGraph::canCreateGraphic ( MsWksGraphInternal::GroupZone const &  group) const
protected

returns true if we can create a graphic for the whole group

Referenced by sendGroup(), and sendGroupChild().

void MsWksGraph::checkTextBoxLinks ( MsWksGraphInternal::RBZone rbZone)
protected

check the text box link v4

Referenced by readRB().

void MsWksGraph::computePositions ( int  zoneId,
std::vector< int > &  linesHeight,
std::vector< int > &  pagesHeight 
)

try to update positions knowing pages and lines height

void MsWksGraph::flushExtra ( )
protected

sends the data which have not yet been sent to the listener

int MsWksGraph::getEntryPicture ( int  zoneId,
MWAWEntry zone,
bool  autoSend = true,
int  order = -1000 
)
protected

checks if the next zone is a v2 picture and returns a zone id ( or -1)

Referenced by MsWksTable::readChart(), readGroup(), and readRB().

int MsWksGraph::getEntryPictureV1 ( int  zoneId,
MWAWEntry zone,
bool  autoSend = true 
)
protected

checks if the next zone is a v1 picture and returns a zone id ( or -1).

bool MsWksGraph::getZoneGraphicStyle ( int  zoneId,
MWAWGraphicStyle style 
) const
protected

returns the graphic style of the zone defined by zoneId

bool MsWksGraph::getZonePosition ( int  zoneId,
MWAWPosition::AnchorTo  anchor,
MWAWPosition pos 
) const
protected

returns the position of the zone defined by zoneId

Referenced by MsWksTable::sendChart().

int MsWksGraph::numPages ( int  zoneId) const

returns the number of pages

MsWksGraph& MsWksGraph::operator= ( MsWksGraph const &  orig)
private
bool MsWksGraph::readFont ( MWAWFont font)
protected

reads the textbox font

Referenced by readText().

bool MsWksGraph::readGradient ( MsWksGraph::Style style)
protected

read the gradient structure ( v4)

Referenced by readPictHeader().

shared_ptr< MsWksGraphInternal::GroupZone > MsWksGraph::readGroup ( MsWksGraphInternal::Zone group)
protected

try to read the group data

Referenced by getEntryPicture().

bool MsWksGraph::readPictHeader ( MsWksGraphInternal::Zone pict)
protected

read the picture header

Referenced by getEntryPicture().

bool MsWksGraph::readPictureV4 ( MWAWInputStreamPtr  input,
MWAWEntry const &  entry 
)
protected

reads a Pict zone: a zone which seems to code in v4 : header/footer picture

bool MsWksGraph::readRB ( MWAWInputStreamPtr  input,
MWAWEntry const &  entry,
int  kind 
)
protected

reads the RBDR or a RBIL zone: a zone which seems to regroup all pages pictures in v3-v4 document

kind=0: uses entry to define the position kind=1: entry size then data kind=2: marker, entry size then data

bool MsWksGraph::readText ( MsWksGraphInternal::TextBox textBox)
protected

try to read a text zone

Referenced by getEntryPicture().

void MsWksGraph::send ( int  id,
MWAWPosition const &  pos 
)

send a zone (textbox, ...).

Note
if pos.size() is not defined, this function will retrieve the position, .. using the corresponding zone's data

Referenced by flushExtra(), sendAll(), MsWksTable::sendChart(), sendGroupChild(), and sendObjects().

void MsWksGraph::sendAll ( int  zoneId,
bool  mainZone 
)

send all the picture corresponding to a zone

void MsWksGraph::sendChart ( int  zoneId)
protected

try to send a chart

Referenced by MsWksGraphInternal::SubDocument::parse().

void MsWksGraph::sendFrameText ( MWAWEntry const &  entry,
std::string const &  frame 
)
protected

ask m_mainParser to send a frame text(v4)

Referenced by MsWksGraphInternal::SubDocument::parse().

void MsWksGraph::sendGroup ( int  zoneId,
MWAWPosition const &  pos 
)
protected

try to send a group

Referenced by send(), sendGroup(), and sendGroupChild().

void MsWksGraph::sendGroup ( MsWksGraphInternal::GroupZone const &  group,
MWAWGraphicListenerPtr listener 
) const
protected

send the group as a graphic zone

void MsWksGraph::sendGroupChild ( int  zoneId,
MWAWPosition const &  pos 
)
protected

try to send a group elements by elemenys

Referenced by MsWksGraphInternal::SubDocument::parse(), and sendGroup().

void MsWksGraph::sendObjects ( MsWksGraph::SendData const &  what)

sends all the object of a page, frame, ...

Referenced by MsWksGraphInternal::SubDocument::parse().

void MsWksGraph::sendTable ( int  id)
protected

try to a table zone

Referenced by MsWksGraphInternal::SubDocument::parse().

void MsWksGraph::sendTextBox ( int  zId,
MWAWListenerPtr  listener 
)
protected

try to send a text box zone v1-3

Referenced by MsWksGraphInternal::SubDocument::parse().

void MsWksGraph::setPageLeftTop ( MWAWVec2f const &  leftTop)

define the page left top dimension in point

int MsWksGraph::version ( ) const

returns the file version

Referenced by getEntryPicture(), readFont(), readGroup(), readPictHeader(), and readRB().

Friends And Related Function Documentation

friend class MsWks4Zone
friend
friend class MsWksDBParser
friend
friend class MsWksDocument
friend
friend class MsWksDRParser
friend
friend class MsWksGraphInternal::SubDocument
friend
friend class MsWksParser
friend
friend class MsWksSSParser
friend
friend class MsWksTable
friend

Referenced by MsWksGraph().

Member Data Documentation

MWAWParser* MsWksGraph::m_mainParser
protected

the main parser;

Referenced by MsWksGraph().

shared_ptr<MsWksTable> MsWksGraph::m_tableParser
protected

the table manager

Referenced by getEntryPicture(), MsWksGraph(), send(), sendChart(), and sendTable().


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

Generated on Thu Jul 9 2015 20:26:38 for libmwaw by doxygen 1.8.8