Go to the documentation of this file.
10 #ifndef IWORKTABLE_H_INCLUDED
11 #define IWORKTABLE_H_INCLUDED
16 #include <boost/optional.hpp>
25 class IWORKLanguageManager;
27 class IWORKTableRecorder;
63 void setRecorder(
const std::shared_ptr<IWORKTableRecorder> &recorder);
64 const std::shared_ptr<IWORKTableRecorder> &
getRecorder()
const;
67 void setHeaders(
unsigned headerColumns,
unsigned headerRows,
unsigned footerRows);
79 const std::shared_ptr<IWORKText> &
text = std::shared_ptr<IWORKText>(),
80 const boost::optional<IWORKDateTimeData> &dateTime =
boost::none,
81 unsigned columnSpan = 1,
unsigned rowSpan = 1,
83 const boost::optional<unsigned> &formulaHC =
boost::none,
88 void draw(
const librevenge::RVNGPropertyList &tableProps,
IWORKOutputElements &elements,
bool drawAsSimpleTable);
94 boost::optional<int>
getOrder()
const;
135 #endif // IWORKTABLE_H_INCLUDED
double double_cast(const char *value)
Definition: libetonyek_xml.cpp:79
void addCloseSpan()
Definition: IWORKOutputElements.cpp:953
boost::optional< double > try_double_cast(const char *value)
Definition: libetonyek_xml.cpp:84
@ IWORK_CELL_NUMBER_TYPE_SCIENTIFIC
Definition: IWORKEnum.h:92
@ name
Definition: IWORKToken.h:578
@ column
Definition: IWORKToken.h:152
IWORKGridLineMap_t m_verticalRightLines
Definition: IWORKTable.h:113
void setDefaultLayoutStyle(CellType type, const IWORKStylePtr_t &style)
Definition: IWORKTable.cpp:653
void addOpenTableCell(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1118
const unsigned m_rowSpan
Definition: IWORKTableRecorder.cpp:154
void writeBorder(const IWORKStroke &stroke, const char *const name, librevenge::RVNGPropertyList &props)
Definition: libetonyek_utils.cpp:286
IWORKStylePtr_t m_style
Definition: IWORKPropertyMapElement.cpp:172
Definition: IWORKBezierElement.cpp:21
unsigned m_columnSpan
Definition: IWORKTable.h:34
Definition: IWORKLanguageManager.h:24
unsigned m_columns
Definition: IWORKTable.h:118
std::shared_ptr< IWORKTableNameMap_t > IWORKTableNameMapPtr_t
Definition: IWORKTypes_fwd.h:34
IWORKStylePtr_t getDefaultCellStyle(unsigned column, unsigned row) const
Definition: IWORKTable.cpp:687
IWORKGridLineMap_t m_horizontalLines
Definition: IWORKTable.h:114
boost::optional< int > getOrder() const
Definition: IWORKTable.cpp:677
@ empty
Definition: IWORKToken.h:656
@ padding
Definition: IWORKToken.h:343
@ IWORK_CELL_TYPE_TEXT
Definition: IWORKEnum.h:82
void setDefaultCellStyle(CellType type, const IWORKStylePtr_t &style)
Definition: IWORKTable.cpp:641
void setRecorder(const std::shared_ptr< IWORKTableRecorder > &recorder)
Definition: IWORKTable.cpp:348
@ SFTStrokeProperty
Definition: IWORKToken.h:85
const unsigned ETONYEK_EPOCH_BEGIN(978307200)
IWORKStylePtr_t m_style
Definition: IWORKTable.h:108
const std::shared_ptr< IWORKTableRecorder > & getRecorder() const
Definition: IWORKTable.cpp:353
@ style
Definition: IWORKToken.h:414
unsigned m_rows
Definition: IWORKTable.h:117
Definition: IWORKTable.h:32
@ format
Definition: IWORKToken.h:530
@ SFTCellStylePropertyDurationFormat
Definition: IWORKToken.h:57
@ formula
Definition: IWORKToken.h:224
void setSizes(const IWORKColumnSizes_t &columnSizes, const IWORKRowSizes_t &rowSizes)
Definition: IWORKTable.cpp:428
std::deque< Row_t > Table_t
Definition: IWORKTable.h:48
@ columns
Definition: IWORKToken.h:154
const IWORKLanguageManager & m_langManager
Definition: IWORKTable.h:105
void setSize(unsigned columns, unsigned rows)
Definition: IWORKTable.cpp:358
IWORKStylePtr_t m_defaultLayoutStyles[5]
Definition: IWORKTable.h:127
void addCloseTable()
Definition: IWORKOutputElements.cpp:958
const unsigned m_columnSpan
Definition: IWORKTableRecorder.cpp:153
#define ETONYEK_DEBUG_MSG(M)
Definition: libetonyek_utils.h:54
IWORKVerticalAlignment
Definition: IWORKEnum.h:112
Representation of a dynamic inheritance of styles.
Definition: IWORKStyleStack.h:35
@ none
Definition: IWORKToken.h:666
IWORKStylePtr_t getDefaultStyle(unsigned column, unsigned row, const IWORKStylePtr_t *group) const
Definition: IWORKTable.cpp:702
@ CELL_TYPE_BODY
Definition: IWORKTable.h:53
const boost::optional< unsigned > m_formulaHC
Definition: IWORKOutputElements.cpp:333
@ IWORK_VERTICAL_ALIGNMENT_BOTTOM
Definition: IWORKEnum.h:115
void setBandedRows(bool banded=true)
Definition: IWORKTable.cpp:383
@ IWORK_VERTICAL_ALIGNMENT_MIDDLE
Definition: IWORKEnum.h:114
IWORKColumnSizes_t m_columnSizes
Definition: IWORKTable.h:110
void setStyle(const IWORKStylePtr_t &style)
Definition: IWORKTable.cpp:417
unsigned m_headerRows
Definition: IWORKTable.h:119
IWORKStylePtr_t m_defaultParaStyles[5]
Definition: IWORKTable.h:128
@ IWORK_VERTICAL_ALIGNMENT_TOP
Definition: IWORKEnum.h:113
unsigned m_footerRows
Definition: IWORKTable.h:120
bool has(const bool lookInParent=true) const
Definition: IWORKStyleStack.h:69
@ rows
Definition: IWORKToken.h:385
@ cell
Definition: PAG1Token.h:64
void setRepeated(bool columns, bool rows)
Definition: IWORKTable.cpp:394
double pt2in(const double d)
Convert a length from points to inches.
Definition: libetonyek_utils.cpp:225
@ CELL_TYPE_ROW_FOOTER
Definition: IWORKTable.h:57
boost::optional< IWORKDateTimeData > m_dateTime
Definition: IWORKTable.h:42
@ r
Definition: IWORKToken.h:373
@ SFTCellStylePropertyNumberFormat
Definition: IWORKToken.h:58
@ s
Definition: IWORKToken.h:387
IWORKStylePtr_t getDefaultLayoutStyle(unsigned column, unsigned row) const
Definition: IWORKTable.cpp:692
void insertCoveredCell(unsigned column, unsigned row)
Definition: IWORKTable.cpp:509
void addCloseTableRow()
Definition: IWORKOutputElements.cpp:968
void addCloseTableCell()
Definition: IWORKOutputElements.cpp:963
void addInsertCoveredTableCell(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1013
@ IWORK_CELL_NUMBER_TYPE_DOUBLE
Definition: IWORKEnum.h:93
CellType
Definition: IWORKTable.h:52
void addOpenParagraph(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1098
void setBorders(const IWORKGridLineMap_t &verticalLines, const IWORKGridLineMap_t &horizontalLines)
Definition: IWORKTable.cpp:443
boost::optional< unsigned > m_formulaHC
Definition: IWORKTable.h:38
const IWORKPropertyInfo< Property >::ValueType & get(const bool lookInParent=true) const
Definition: IWORKStyleStack.h:85
IWORKRowSizes_t m_rowSizes
Definition: IWORKTable.h:111
IWORKTable(const IWORKTableNameMapPtr_t &tableNameMap, const IWORKLanguageManager &langManager)
Definition: IWORKTable.cpp:324
std::shared_ptr< IWORKFormula > IWORKFormulaPtr_t
Definition: IWORKTypes.h:123
@ string
Definition: IWORKToken.h:411
@ val
Definition: IWORKToken.h:623
IWORKMediaContentPtr_t & m_content
Definition: IWORKFillElement.cpp:319
IWORKFormulaPtr_t m_formula
Definition: IWORKTable.h:37
const IWORKFormula m_formula
Definition: IWORKOutputElements.cpp:332
void addOpenTable(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1113
IWORKCellNumberType
Definition: IWORKEnum.h:89
boost::optional< IWORKGradient > & m_value
Definition: IWORKFillElement.cpp:131
@ IWORK_CELL_TYPE_DURATION
Definition: IWORKEnum.h:84
void setHeaders(unsigned headerColumns, unsigned headerRows, unsigned footerRows)
Definition: IWORKTable.cpp:370
IWORKStylePtr_t getStyle() const
Definition: IWORKTable.cpp:682
mdds::flat_segment_tree< unsigned, IWORKStylePtr_t > IWORKGridLine_t
Definition: IWORKTypes.h:121
@ c
Definition: IWORKToken.h:509
@ value
Definition: IWORKToken.h:624
IWORKGridLineMap_t m_verticalLines
Definition: IWORKTable.h:112
IWORKStylePtr_t getDefaultParagraphStyle(unsigned column, unsigned row) const
Definition: IWORKTable.cpp:697
@ IWORK_CELL_TYPE_NUMBER
Definition: IWORKEnum.h:81
void setDefaultParagraphStyle(CellType type, const IWORKStylePtr_t &style)
Definition: IWORKTable.cpp:665
@ group
Definition: IWORKToken.h:244
unsigned m_rowSpan
Definition: IWORKTable.h:35
bool m_headerColumnsRepeated
Definition: IWORKTable.h:124
void setOrder(int order)
Definition: IWORKTable.cpp:406
void addOpenTableRow(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1123
Definition: IWORKTable.h:30
@ type
Definition: IWORKToken.h:486
@ index
Definition: IWORKToken.h:564
void addInsertText(const librevenge::RVNGString &text)
Definition: IWORKOutputElements.cpp:1038
Table_t m_table
Definition: IWORKTable.h:107
const IWORKTableNameMapPtr_t m_tableNameMap
Definition: IWORKTable.h:104
@ IWORK_CELL_TYPE_DATE_TIME
Definition: IWORKEnum.h:83
IWORKOutputElements m_content
Definition: IWORKTable.h:33
@ text
Definition: IWORKToken.h:465
void append(const IWORKOutputElements &elements)
Definition: IWORKOutputElements.cpp:871
IWORKStylePtr_t m_defaultCellStyles[5]
Definition: IWORKTable.h:126
IWORKCellType
Definition: IWORKEnum.h:80
#define ETONYEK_NUM_ELEMENTS(array)
Definition: libetonyek_utils.h:29
@ t
Definition: IWORKToken.h:420
@ CELL_TYPE_ROW_HEADER
Definition: IWORKTable.h:56
IWORKGridLineMap_t m_horizontalBottomLines
Definition: IWORKTable.h:115
@ SFTCellStylePropertyLayoutStyle
Definition: IWORKToken.h:59
@ SFTCellStylePropertyParagraphStyle
Definition: IWORKToken.h:60
std::deque< IWORKColumnRowSize > IWORKColumnSizes_t
Definition: IWORKTypes_fwd.h:22
std::shared_ptr< IWORKTableRecorder > m_recorder
Definition: IWORKTable.h:130
@ opacity
Definition: IWORKToken.h:588
void insertCell(unsigned column, unsigned row, const boost::optional< std::string > &value=boost::none, const std::shared_ptr< IWORKText > &text=std::shared_ptr< IWORKText >(), const boost::optional< IWORKDateTimeData > &dateTime=boost::none, unsigned columnSpan=1, unsigned rowSpan=1, const IWORKFormulaPtr_t &formula=IWORKFormulaPtr_t(), const boost::optional< unsigned > &formulaHC=boost::none, const IWORKStylePtr_t &style=IWORKStylePtr_t(), IWORKCellType type=IWORK_CELL_TYPE_TEXT)
Definition: IWORKTable.cpp:470
std::shared_ptr< IWORKStyle > IWORKStylePtr_t
Definition: IWORKStyle_fwd.h:21
std::deque< Cell > Row_t
Definition: IWORKTable.h:47
@ line
Definition: IWORKToken.h:298
@ row
Definition: IWORKToken.h:383
void addCloseParagraph()
Definition: IWORKOutputElements.cpp:943
int int_cast(const char *value)
Definition: libetonyek_xml.cpp:94
@ IWORK_CELL_TYPE_BOOL
Definition: IWORKEnum.h:85
void addOpenSpan(const librevenge::RVNGPropertyList &propList)
Definition: IWORKOutputElements.cpp:1108
static void fillCharPropList(const IWORKStyleStack &style, const IWORKLanguageManager &langManager, librevenge::RVNGPropertyList &props)
Definition: IWORKText.cpp:79
@ gradient
Definition: KEY1Token.h:58
boost::optional< IWORKGradientType > m_type
Definition: IWORKFillElement.cpp:132
std::deque< IWORKColumnRowSize > IWORKRowSizes_t
Definition: IWORKTypes_fwd.h:26
@ IWORK_CELL_NUMBER_TYPE_PERCENTAGE
Definition: IWORKEnum.h:91
@ CELL_TYPE_COLUMN_HEADER
Definition: IWORKTable.h:55
const ValueT & get(const detail::IWAFieldImpl< TagV, ValueT, Reader > &field)
Definition: IWAField.h:190
boost::optional< std::string > m_value
Definition: IWORKTable.h:41
librevenge::RVNGString makeColor(const IWORKColor &color)
Definition: libetonyek_utils.cpp:251
IWORKStylePtr_t m_style
Definition: IWORKTable.h:39
Cell()
Definition: IWORKTable.cpp:310
void addOpenFormulaCell(const librevenge::RVNGPropertyList &propList, const IWORKFormula &formula, const boost::optional< unsigned > &formulaHC, const IWORKTableNameMapPtr_t &tableNameMap)
Definition: IWORKOutputElements.cpp:1053
unsigned m_headerColumns
Definition: IWORKTable.h:121
@ color
Definition: IWORKToken.h:151
@ IWORK_CELL_NUMBER_TYPE_CURRENCY
Definition: IWORKEnum.h:90
@ CELL_TYPE_ALTERNATE_BODY
Definition: IWORKTable.h:54
bool m_covered
Definition: IWORKTable.h:36
void draw(const librevenge::RVNGPropertyList &tableProps, IWORKOutputElements &elements, bool drawAsSimpleTable)
Definition: IWORKTable.cpp:525
IWORKCellType m_type
Definition: IWORKTable.h:40
const boost::optional< IWORKDateTimeData > m_dateTime
Definition: IWORKTableRecorder.cpp:152
@ order
Definition: PAG1Token.h:43
void push()
Push a style onto the active styles stack.
Definition: IWORKStyleStack.cpp:30
boost::optional< int > m_order
Definition: IWORKTable.h:109
bool m_headerRowsRepeated
Definition: IWORKTable.h:123
std::map< unsigned, IWORKGridLine_t > IWORKGridLineMap_t
Definition: IWORKTypes.h:122
Definition: IWORKOutputElements.h:33
bool m_bandedRows
Definition: IWORKTable.h:122
Generated for libetonyek by
doxygen 1.8.20