MWAWTable Class Reference

a class used to recreate the table structure using cell informations, .... More...

#include <MWAWTable.hxx>

Inheritance diagram for MWAWTable:
CWTableInternal::Table HMWJGraphInternal::Table HMWKGraphInternal::Table MSWTextInternal::Table MWProStructuresInternal::Table WNTextInternal::Table

List of all members.

Public Types

enum  DataSet {
  CellPositionBit = 1, BoxBit = 2, SizeBit = 4, TableDimBit = 8,
  TablePosToCellBit = 0x10
}
 an enum used to indicate what the list of entries which are filled More...
enum  Alignment { Paragraph, Left, Center, Right }
 an enum do define the table alignement. More...

Public Member Functions

 MWAWTable (uint32_t givenData=BoxBit)
 the constructor
virtual ~MWAWTable ()
 the destructor
void add (shared_ptr< MWAWCell > cell)
 add a new cells
bool mergeBorders () const
 returns true if we need to merge borders
bool setMergeBorders (bool val)
 sets the merge borders' value
void setAlignment (Alignment align, float leftMargin=0, float rightMargin=0)
 defines the current alignment
int numCells () const
 returns the number of cell
std::vector< float > const & getRowsSize () const
 returns the row size if defined (in point)
void setRowsSize (std::vector< float > const &rSize)
 define the row size (in point)
std::vector< float > const & getColsSize () const
 returns the columns size if defined (in point)
void setColsSize (std::vector< float > const &cSize)
 define the columns size (in point)
shared_ptr< MWAWCellget (int id)
 returns the i^th cell
bool updateTable ()
 try to build the table structures
bool hasExtraLines ()
 returns true if the table has extralines
bool sendTable (MWAWContentListenerPtr listener, bool inFrame=true)
 try to send the table
bool sendAsText (MWAWContentListenerPtr listener)
 try to send the table as basic text
void addTablePropertiesTo (WPXPropertyList &propList, WPXPropertyListVector &columns) const
 adds the table properties to propList

Protected Member Functions

int getCellIdPos (int col, int row) const
 convert a cell position in a posToCellId's position
bool buildStructures ()
 create the correspondance list, ...
bool buildDims ()
 compute the rows and the cells size
bool buildPosToCellId ()
 a function which fills to posToCellId vector using the cell position
void sendExtraLines (MWAWContentListenerPtr listener) const
 send extra line

Protected Attributes

uint32_t m_givenData
 a int to indicate what data are given in entries
uint32_t m_setData
 a int to indicate what data are been reconstruct
bool m_mergeBorders
 do we need to merge cell borders ( default yes)
std::vector< shared_ptr
< MWAWCell > > 
m_cellsList
 the list of cells
size_t m_numRows
 the number of rows ( set by buildPosToCellId )
size_t m_numCols
 the number of cols ( set by buildPosToCellId )
std::vector< float > m_rowsSize
 the final row size (in point)
std::vector< float > m_colsSize
 the final col size (in point)
Alignment m_alignment
 the table alignment
float m_leftMargin
 the left margin in point
float m_rightMargin
 the right margin in point
std::vector< int > m_posToCellId
 a vector used to store an id corresponding to each cell
bool m_hasExtraLines
 true if we need to send extra lines

Detailed Description

a class used to recreate the table structure using cell informations, ....


Member Enumeration Documentation

an enum do define the table alignement.

Note:
Paragraph means using the default alignment, left page alignment and use left margin
Enumerator:
Paragraph 
Left 
Center 
Right 

an enum used to indicate what the list of entries which are filled

Enumerator:
CellPositionBit 
BoxBit 
SizeBit 
TableDimBit 
TablePosToCellBit 

Constructor & Destructor Documentation

MWAWTable::MWAWTable ( uint32_t  givenData = BoxBit) [inline]

the constructor

MWAWTable::~MWAWTable ( ) [virtual]

the destructor


Member Function Documentation

void MWAWTable::add ( shared_ptr< MWAWCell cell) [inline]

add a new cells

Referenced by CWTable::readTableCells().

void MWAWTable::addTablePropertiesTo ( WPXPropertyList &  propList,
WPXPropertyListVector &  columns 
) const

adds the table properties to propList

Referenced by MWAWContentListener::openTable().

bool MWAWTable::buildDims ( ) [protected]

compute the rows and the cells size

Referenced by updateTable().

bool MWAWTable::buildPosToCellId ( ) [protected]

a function which fills to posToCellId vector using the cell position

Referenced by updateTable().

bool MWAWTable::buildStructures ( ) [protected]

create the correspondance list, ...

Referenced by updateTable().

shared_ptr< MWAWCell > MWAWTable::get ( int  id)
int MWAWTable::getCellIdPos ( int  col,
int  row 
) const [inline, protected]

convert a cell position in a posToCellId's position

Referenced by buildDims(), buildPosToCellId(), and sendTable().

std::vector<float> const& MWAWTable::getColsSize ( ) const [inline]

returns the columns size if defined (in point)

Referenced by MSWText::sendTable().

std::vector<float> const& MWAWTable::getRowsSize ( ) const [inline]

returns the row size if defined (in point)

bool MWAWTable::hasExtraLines ( ) [inline]

returns true if the table has extralines

Referenced by HMWJGraph::sendFrame(), and HMWKGraph::sendFrame().

bool MWAWTable::mergeBorders ( ) const [inline]

returns true if we need to merge borders

Referenced by addTablePropertiesTo().

void MWAWTable::sendExtraLines ( MWAWContentListenerPtr  listener) const [protected]

send extra line

Referenced by sendTable().

bool MWAWTable::sendTable ( MWAWContentListenerPtr  listener,
bool  inFrame = true 
)

try to send the table

Note: either send the table ( and returns true ) or do nothing.

Referenced by HMWJGraph::sendFrame(), and HMWKGraph::sendFrame().

void MWAWTable::setAlignment ( Alignment  align,
float  leftMargin = 0,
float  rightMargin = 0 
) [inline]

defines the current alignment

Note:
: leftMargin,rightMargin are given in Points

Referenced by WPParser::readTable().

void MWAWTable::setColsSize ( std::vector< float > const &  cSize) [inline]
bool MWAWTable::setMergeBorders ( bool  val) [inline]

sets the merge borders' value

Referenced by MRWText::sendTable().

void MWAWTable::setRowsSize ( std::vector< float > const &  rSize) [inline]

define the row size (in point)

try to build the table structures

Referenced by hasExtraLines(), HMWKGraph::sendFrame(), HMWJGraph::sendFrame(), and sendTable().


Member Data Documentation

the table alignment

Referenced by addTablePropertiesTo(), and setAlignment().

std::vector<float> MWAWTable::m_colsSize [protected]
uint32_t MWAWTable::m_givenData [protected]

a int to indicate what data are given in entries

Referenced by updateTable().

bool MWAWTable::m_hasExtraLines [protected]

true if we need to send extra lines

Referenced by buildPosToCellId(), hasExtraLines(), and sendTable().

float MWAWTable::m_leftMargin [protected]

the left margin in point

Referenced by addTablePropertiesTo(), and setAlignment().

bool MWAWTable::m_mergeBorders [protected]

do we need to merge cell borders ( default yes)

Referenced by mergeBorders(), and setMergeBorders().

size_t MWAWTable::m_numCols [protected]

the number of cols ( set by buildPosToCellId )

Referenced by buildDims(), buildPosToCellId(), getCellIdPos(), sendTable(), and updateTable().

size_t MWAWTable::m_numRows [protected]

the number of rows ( set by buildPosToCellId )

Referenced by buildDims(), buildPosToCellId(), getCellIdPos(), sendTable(), and updateTable().

std::vector<int> MWAWTable::m_posToCellId [protected]

a vector used to store an id corresponding to each cell

Referenced by buildDims(), buildPosToCellId(), and sendTable().

float MWAWTable::m_rightMargin [protected]

the right margin in point

Referenced by addTablePropertiesTo(), and setAlignment().

std::vector<float> MWAWTable::m_rowsSize [protected]
uint32_t MWAWTable::m_setData [protected]

a int to indicate what data are been reconstruct

Referenced by buildDims(), buildPosToCellId(), buildStructures(), and updateTable().


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