LibreOffice Module sw (master)  1
Public Member Functions | Private Member Functions | Static Private Member Functions | List of all members
SwHTMLWrtTable Class Reference
Inheritance diagram for SwHTMLWrtTable:
[legend]
Collaboration diagram for SwHTMLWrtTable:
[legend]

Public Member Functions

 SwHTMLWrtTable (const SwTableLines &rLines, long nWidth, sal_uInt32 nBWidth, bool bRel, sal_uInt16 nLeftSub, sal_uInt16 nRightSub, sal_uInt16 nNumOfRowsToRepeat)
 
 SwHTMLWrtTable (const SwHTMLTableLayout *pLayoutInfo)
 
void Write (SwHTMLWriter &rWrt, sal_Int16 eAlign=text::HoriOrientation::NONE, bool bTHead=false, const SwFrameFormat *pFrameFormat=nullptr, const OUString *pCaption=nullptr, bool bTopCaption=false, sal_uInt16 nHSpace=0, sal_uInt16 nVSpace=0) const
 
- Public Member Functions inherited from SwWriteTable
sal_uInt32 GetRawWidth (sal_uInt16 nCol, sal_uInt16 nColSpan) const
 
sal_uInt16 GetAbsWidth (sal_uInt16 nCol, sal_uInt16 nColSpan) const
 
sal_uInt16 GetRelWidth (sal_uInt16 nCol, sal_uInt16 nColSpan) const
 
sal_uInt16 GetPrcWidth (sal_uInt16 nCol, sal_uInt16 nColSpan) const
 
long GetAbsHeight (long nRawWidth, size_t nRow, sal_uInt16 nRowSpan) const
 
double GetAbsWidthRatio () const
 
 SwWriteTable (const SwTable *pTable, const SwTableLines &rLines, long nWidth, sal_uInt32 nBWidth, bool bRel, sal_uInt16 nMaxDepth=USHRT_MAX, sal_uInt16 nLeftSub=0, sal_uInt16 nRightSub=0, sal_uInt32 nNumOfRowsToRepeat=0)
 
 SwWriteTable (const SwTable *pTable, const SwHTMLTableLayout *pLayoutInfo)
 
virtual ~SwWriteTable ()
 
const SwWriteTableRowsGetRows () const
 
const SwTableGetTable () const
 

Private Member Functions

void PixelizeBorders ()
 
void OutTableCell (SwHTMLWriter &rWrt, const SwWriteTableCell *pCell, bool bOutVAlign) const
 
void OutTableCells (SwHTMLWriter &rWrt, const SwWriteTableCells &rCells, const SvxBrushItem *pBrushItem) const
 
virtual bool ShouldExpandSub (const SwTableBox *pBox, bool bExpandedBefore, sal_uInt16 nDepth) const override
 

Static Private Member Functions

static void Pixelize (sal_uInt16 &rValue)
 
static bool HasTabBackground (const SwTableLine &rLine, bool bTop, bool bBottom, bool bLeft, bool bRight)
 
static bool HasTabBackground (const SwTableBox &rBox, bool bTop, bool bBottom, bool bLeft, bool bRight)
 

Additional Inherited Members

- Static Public Member Functions inherited from SwWriteTable
static sal_uInt32 GetBoxWidth (const SwTableBox *pBox)
 
- Protected Member Functions inherited from SwWriteTable
void CollectTableRowsCols (long nStartRPos, sal_uInt32 nStartCPos, long nParentLineHeight, sal_uInt32 nParentLineWidth, const SwTableLines &rLines, sal_uInt16 nDepth)
 
void FillTableRowsCols (long nStartRPos, sal_uInt16 nStartRow, sal_uInt32 nStartCPos, sal_uInt16 nStartCol, long nParentLineHeight, sal_uInt32 nParentLineWidth, const SwTableLines &rLines, const SvxBrushItem *pLineBrush, sal_uInt16 nDepth, sal_uInt16 nNumOfHeaderRows)
 
void MergeBorders (const editeng::SvxBorderLine *pBorderLine, bool bTable)
 
sal_uInt16 MergeBoxBorders (const SwTableBox *pBox, size_t nRow, size_t nCol, sal_uInt16 nRowSpan, sal_uInt16 nColSpan, sal_uInt16 &rTopBorder, sal_uInt16 &rBottomBorder)
 
sal_uInt32 GetBaseWidth () const
 
bool HasRelWidths () const
 
long GetLineHeight (const SwTableLine *pLine)
 
sal_uInt16 GetLeftSpace (sal_uInt16 nCol) const
 
sal_uInt16 GetRightSpace (size_t nCol, sal_uInt16 nColSpan) const
 
- Static Protected Member Functions inherited from SwWriteTable
static long GetLineHeight (const SwTableBox *pBox)
 
static const SvxBrushItemGetLineBrush (const SwTableBox *pBox, SwWriteTableRow *pRow)
 
- Protected Attributes inherited from SwWriteTable
SwWriteTableCols m_aCols
 
SwWriteTableRows m_aRows
 
Color m_nBorderColor
 
sal_uInt16 m_nCellSpacing
 
sal_uInt16 m_nCellPadding
 
sal_uInt16 m_nBorder
 
sal_uInt16 m_nInnerBorder
 
sal_uInt32 const m_nBaseWidth
 
sal_uInt16 m_nHeadEndRow
 
sal_uInt16 const m_nLeftSub
 
sal_uInt16 const m_nRightSub
 
sal_uInt32 m_nTabWidth
 
bool const m_bRelWidths: 1
 
bool m_bUseLayoutHeights: 1
 
bool m_bGetLineHeightCalled: 1
 
bool const m_bColTags: 1
 
bool const m_bLayoutExport: 1
 
bool const m_bCollectBorderWidth: 1
 

Detailed Description

Definition at line 60 of file htmltabw.cxx.

Constructor & Destructor Documentation

SwHTMLWrtTable::SwHTMLWrtTable ( const SwTableLines rLines,
long  nWidth,
sal_uInt32  nBWidth,
bool  bRel,
sal_uInt16  nLeftSub,
sal_uInt16  nRightSub,
sal_uInt16  nNumOfRowsToRepeat 
)

Definition at line 92 of file htmltabw.cxx.

References PixelizeBorders().

SwHTMLWrtTable::SwHTMLWrtTable ( const SwHTMLTableLayout pLayoutInfo)
explicit

Definition at line 101 of file htmltabw.cxx.

References SwWriteTable::m_bCollectBorderWidth, and PixelizeBorders().

Member Function Documentation

bool SwHTMLWrtTable::HasTabBackground ( const SwTableLine rLine,
bool  bTop,
bool  bBottom,
bool  bLeft,
bool  bRight 
)
staticprivate

The table line has a background, if its background color is not "no fill"/ "auto fill" or it has a background graphic.

Definition at line 163 of file htmltabw.cxx.

References COL_TRANSPARENT(), SwTableLine::GetFrameFormat(), SwTableLine::GetTabBoxes(), i, and SwFormat::makeBackgroundBrushItem().

Referenced by HasTabBackground(), and ShouldExpandSub().

bool SwHTMLWrtTable::HasTabBackground ( const SwTableBox rBox,
bool  bTop,
bool  bBottom,
bool  bLeft,
bool  bRight 
)
staticprivate

The table box has a background, if its background color is not "no fill"/ "auto fill" or it has a background graphic.

Definition at line 129 of file htmltabw.cxx.

References COL_TRANSPARENT(), SwTableBox::GetFrameFormat(), SwTableBox::GetSttNd(), SwTableBox::GetTabLines(), HasTabBackground(), i, SwFormat::makeBackgroundBrushItem(), and SwTableLines::size().

void SwHTMLWrtTable::OutTableCell ( SwHTMLWriter rWrt,
const SwWriteTableCell pCell,
bool  bOutVAlign 
) const
private

Definition at line 252 of file htmltabw.cxx.

References BOTTOM, HTMLOutFuncs::CreateTableDataOptionsValNum(), SwHTMLWriter::DecIndentLevel(), SwFormat::DerivedFrom(), SwNode::EndOfSectionIndex(), SwWriteTable::GetAbsHeight(), SwWriteTable::GetAbsWidth(), SwFormat::GetAttrSet(), SwWriteTableCell::GetBackground(), SwWriteTableCell::GetBox(), SwWriteTableCell::GetCol(), SwWriteTableCell::GetColSpan(), Application::GetDefaultDevice(), SwTableBox::GetFrameFormat(), SwWriteTableCell::GetHeight(), SwNode::GetIndex(), SfxItemSet::GetItemState(), SwWriteTable::GetLeftSpace(), SwHTMLWriter::GetNamespace(), SwDoc::GetNodes(), SwDoc::GetNumberFormatter(), SwFormat::GetPoolFormatId(), SwWriteTable::GetPrcWidth(), SwWriteTable::GetRawWidth(), SwWriteTable::GetRightSpace(), SwWriteTableCell::GetRow(), SwWriteTableCell::GetRowSpan(), SwTableBox::GetSttNd(), SwFormat::GetTableBoxNumFormat(), SwTableBox::GetTabLines(), GetValue, CntUInt32Item::GetValue(), SwWriteTableCell::GetVertOri(), SwWriteTableCell::GetWidthOpt(), SwWriteTableCell::HasPrcWidthOpt(), SwWriteTable::HasRelWidths(), Size::Height(), SwHTMLWriter::IncIndentLevel(), SwFormat::IsDefault(), SwNode::IsTextNode(), OutputDevice::LogicToPixel(), SwHTMLWriter::m_aNonConvertableCharacters, SwHTMLWriter::m_bCfgOutStyles, SwWriteTable::m_bLayoutExport, SwHTMLWriter::m_bLFPossible, SwHTMLWriter::m_bOutOpts, SwHTMLWriter::m_bTextAttr, SwHTMLWriter::m_eDestEnc, Writer::m_pCurrentPam, Writer::m_pDoc, SwHTMLWriter::mbReqIF, OOO_STRING_SVTOOLS_HTML_O_colspan, OOO_STRING_SVTOOLS_HTML_O_height, OOO_STRING_SVTOOLS_HTML_O_rowspan, OOO_STRING_SVTOOLS_HTML_O_valign, OOO_STRING_SVTOOLS_HTML_O_width, OOO_STRING_SVTOOLS_HTML_tabledata, OOO_STRING_SVTOOLS_HTML_tableheader, OOO_STRING_SVTOOLS_HTML_VA_bottom, OOO_STRING_SVTOOLS_HTML_VA_top, HTMLOutFuncs::Out_AsciiTag(), SwHTMLWriter::Out_SwDoc(), SwHTMLWriter::OutBackground(), OutCSS1_TableBGStyleOpt(), SwHTMLWriter::OutCSS1_TableCellBorderHack(), SwHTMLWriter::OutNewLine(), RES_BACKGROUND, RES_BOXATR_FORMAT, RES_BOXATR_VALUE, RES_POOLCOLL_TABLE, RES_POOLCOLL_TABLE_HDLN, SAL_MAX_UINT32, Writer::Strm(), TOP, Size::Width(), Write(), and SvStream::WriteCharPtr().

Referenced by OutTableCells().

void SwHTMLWrtTable::OutTableCells ( SwHTMLWriter rWrt,
const SwWriteTableCells rCells,
const SvxBrushItem pBrushItem 
) const
private
void SwHTMLWrtTable::Pixelize ( sal_uInt16 &  rValue)
staticprivate
void SwHTMLWrtTable::PixelizeBorders ( )
private
bool SwHTMLWrtTable::ShouldExpandSub ( const SwTableBox pBox,
bool  bExpandedBefore,
sal_uInt16  nDepth 
) const
overrideprivatevirtual

Reimplemented from SwWriteTable.

Definition at line 232 of file htmltabw.cxx.

References SwTableBox::GetSttNd(), HasTabBackground(), and lcl_TableBox_HasTabBorders().

void SwHTMLWrtTable::Write ( SwHTMLWriter rWrt,
sal_Int16  eAlign = text::HoriOrientation::NONE,
bool  bTHead = false,
const SwFrameFormat pFrameFormat = nullptr,
const OUString *  pCaption = nullptr,
bool  bTopCaption = false,
sal_uInt16  nHSpace = 0,
sal_uInt16  nVSpace = 0 
) const

Definition at line 559 of file htmltabw.cxx.

References SwWriteTableRow::bBottomBorder, SwWriteTableCol::bLeftBorder, SwWriteTableCol::bRightBorder, SwWriteTableRow::bTopBorder, SwHTMLWriter::ChangeParaToken(), SwHTMLWriter::DecIndentLevel(), DEF_LINE_WIDTH_1, SwWriteTable::GetAbsWidth(), SwFormat::GetAttrSet(), SwWriteTableRow::GetBackground(), SwWriteTableRow::GetCells(), Application::GetDefaultDevice(), SwHTMLWriter::GetHTMLDirection(), SwHTMLWriter::GetNamespace(), SwWriteTable::GetRelWidth(), SwWriteTableCol::GetWidthOpt(), SwWriteTableCol::HasRelWidthOpt(), SwWriteTable::HasRelWidths(), Size::Height(), SwHTMLWriter::IncIndentLevel(), LEFT, OutputDevice::LogicToPixel(), SwWriteTable::m_aCols, SwHTMLWriter::m_aNonConvertableCharacters, SwWriteTable::m_aRows, SwHTMLWriter::m_bCfgOutStyles, SwWriteTable::m_bColTags, SwWriteTable::m_bLayoutExport, SwHTMLWriter::m_bLFPossible, SwHTMLWriter::m_bOutFlyFrame, SwHTMLWriter::m_eDestEnc, SwWriteTable::m_nCellPadding, SwWriteTable::m_nCellSpacing, SwHTMLWriter::m_nDirection, SwWriteTable::m_nHeadEndRow, SwWriteTable::m_nTabWidth, SwHTMLWriter::maNamespace, SwWriteTableRow::nBottomBorder, SwWriteTableRow::nTopBorder, OOO_STRING_SVTOOLS_HTML_AL_center, OOO_STRING_SVTOOLS_HTML_AL_left, OOO_STRING_SVTOOLS_HTML_AL_right, OOO_STRING_SVTOOLS_HTML_caption, OOO_STRING_SVTOOLS_HTML_col, OOO_STRING_SVTOOLS_HTML_colgroup, OOO_STRING_SVTOOLS_HTML_O_align, OOO_STRING_SVTOOLS_HTML_O_cellpadding, OOO_STRING_SVTOOLS_HTML_O_cellspacing, OOO_STRING_SVTOOLS_HTML_O_hspace, OOO_STRING_SVTOOLS_HTML_O_vspace, OOO_STRING_SVTOOLS_HTML_O_width, OOO_STRING_SVTOOLS_HTML_table, OOO_STRING_SVTOOLS_HTML_tablerow, OOO_STRING_SVTOOLS_HTML_tbody, OOO_STRING_SVTOOLS_HTML_thead, OOO_STRING_SVTOOLS_HTML_VA_bottom, OOO_STRING_SVTOOLS_HTML_VA_top, HTMLOutFuncs::Out_AsciiTag(), HTMLOutFuncs::Out_String(), SwHTMLWriter::OutBackground(), SwHTMLWriter::OutCSS1_TableFrameFormatOptions(), SwHTMLWriter::OutDirection(), SwHTMLWriter::OutNewLine(), OutTableCells(), RIGHT, Size::setHeight(), Size::setWidth(), o3tl::sorted_vector< Value, Compare, Find, class >::size(), HtmlWriter::start(), Writer::Strm(), SwHTMLWriter::ToPixel(), USHRT_MAX, Size::Width(), and SvStream::WriteCharPtr().

Referenced by OutHTML_SwTableNode(), and OutTableCell().


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