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
 
virtual ~MWAWTable ()
 the destructor
 
void add (std::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)
 
std::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 (MWAWListenerPtr listener, bool inFrame=true)
 try to send the table
 
bool sendAsText (MWAWListenerPtr listener)
 try to send the table as basic text
 
void addTablePropertiesTo (librevenge::RVNGPropertyList &propList) 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 (MWAWListenerPtr 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< std::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

◆ 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 MWAWGraphicListener::insertTable(), MWAWPresentationListener::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 on Thu Jan 19 2023 00:00:00 for libmwaw by doxygen 1.9.6