MWAWTable Class Reference

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

#include <MWAWTable.hxx>

Inheritance diagram for MWAWTable:
ClarisWksTableInternal::Table HanMacWrdJGraphInternal::Table HanMacWrdKGraphInternal::Table MacWrtProStructuresInternal::Table MsWrdTextInternal::Table WriteNowTextInternal::Table

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 alignment. More...
 

Public Member Functions

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

Protected Member Functions

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

Protected Attributes

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

Detailed Description

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

Member Enumeration Documentation

◆ Alignment

an enum do define the table alignment.

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

◆ DataSet

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

Enumerator
CellPositionBit 
BoxBit 
SizeBit 
TableDimBit 
TablePosToCellBit 

Constructor & Destructor Documentation

◆ MWAWTable()

MWAWTable::MWAWTable ( uint32_t  givenData = BoxBit)
inlineexplicit

the constructor

◆ ~MWAWTable()

MWAWTable::~MWAWTable ( )
virtual

the destructor

Member Function Documentation

◆ add()

void MWAWTable::add ( std::shared_ptr< MWAWCell cell)
inline

add a new cells

Referenced by ClarisWksTable::readTableCells().

◆ addTablePropertiesTo()

void MWAWTable::addTablePropertiesTo ( librevenge::RVNGPropertyList &  propList) const

◆ buildDims()

bool MWAWTable::buildDims ( )
protected

compute the rows and the cells size

Referenced by updateTable().

◆ buildPosToCellId()

bool MWAWTable::buildPosToCellId ( )
protected

a function which fills to posToCellId vector using the cell position

Referenced by updateTable().

◆ buildStructures()

bool MWAWTable::buildStructures ( )
protected

create the correspondance list, ...

Referenced by updateTable().

◆ get()

◆ getCellIdPos()

int MWAWTable::getCellIdPos ( int  col,
int  row 
) const
inlineprotected

convert a cell position in a posToCellId's position

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

◆ getColsSize()

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

returns the columns size if defined (in point)

Referenced by MsWrdText::sendTable().

◆ getRowsSize()

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

returns the row size if defined (in point)

◆ hasExtraLines()

bool MWAWTable::hasExtraLines ( )
inline

returns true if the table has extralines

◆ mergeBorders()

bool MWAWTable::mergeBorders ( ) const
inline

returns true if we need to merge borders

Referenced by addTablePropertiesTo().

◆ numCells()

◆ sendAsText()

bool MWAWTable::sendAsText ( MWAWListenerPtr  listener)

try to send the table as basic text

Referenced by HanMacWrdKGraph::sendTableUnformatted().

◆ sendExtraLines()

void MWAWTable::sendExtraLines ( MWAWListenerPtr  listener) const
protected

send extra line

Referenced by sendTable().

◆ sendTable()

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

try to send the table

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

Referenced by MWAWPresentationListener::insertTable(), MWAWGraphicListener::insertTable(), and MWAWSpreadsheetListener::insertTable().

◆ setAlignment()

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 WriterPlsParser::readTable().

◆ setColsSize()

void MWAWTable::setColsSize ( std::vector< float > const &  cSize)
inline

◆ setMergeBorders()

bool MWAWTable::setMergeBorders ( bool  val)
inline

sets the merge borders' value

Referenced by MarinerWrtText::sendTable().

◆ setRowsSize()

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

define the row size (in point)

◆ updateTable()

bool MWAWTable::updateTable ( )

try to build the table structures

Referenced by hasExtraLines(), and sendTable().

Member Data Documentation

◆ m_alignment

Alignment MWAWTable::m_alignment
protected

the table alignment

Referenced by addTablePropertiesTo(), and setAlignment().

◆ m_cellsList

std::vector<std::shared_ptr<MWAWCell> > MWAWTable::m_cellsList
protected

◆ m_colsSize

std::vector<float> MWAWTable::m_colsSize
protected

◆ m_givenData

uint32_t MWAWTable::m_givenData
protected

a int to indicate what data are given in entries

Referenced by updateTable().

◆ m_hasExtraLines

bool MWAWTable::m_hasExtraLines
protected

true if we need to send extra lines

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

◆ m_leftMargin

float MWAWTable::m_leftMargin
protected

the left margin in point

Referenced by addTablePropertiesTo(), and setAlignment().

◆ m_mergeBorders

bool MWAWTable::m_mergeBorders
protected

do we need to merge cell borders ( default yes)

Referenced by mergeBorders(), and setMergeBorders().

◆ m_numCols

size_t MWAWTable::m_numCols
protected

the number of cols ( set by buildPosToCellId )

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

◆ m_numRows

size_t MWAWTable::m_numRows
protected

the number of rows ( set by buildPosToCellId )

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

◆ m_posToCellId

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

a vector used to store an id corresponding to each cell

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

◆ m_rightMargin

float MWAWTable::m_rightMargin
protected

the right margin in point

Referenced by addTablePropertiesTo(), and setAlignment().

◆ m_rowsSize

std::vector<float> MWAWTable::m_rowsSize
protected

◆ m_setData

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:

Generated for libmwaw by doxygen 1.8.14