LibreOffice Module sw (master) 1
|
#include <memory>
#include <com/sun/star/text/HoriOrientation.hpp>
#include <osl/diagnose.h>
#include <svl/numformat.hxx>
#include <hintids.hxx>
#include <editeng/lrspitem.hxx>
#include <editeng/boxitem.hxx>
#include <tools/fract.hxx>
#include <fmtfsize.hxx>
#include <fmtornt.hxx>
#include <doc.hxx>
#include <IDocumentSettingAccess.hxx>
#include <IDocumentChartDataProviderAccess.hxx>
#include <DocumentContentOperationsManager.hxx>
#include <IDocumentRedlineAccess.hxx>
#include <IDocumentStylePoolAccess.hxx>
#include <IDocumentFieldsAccess.hxx>
#include <docsh.hxx>
#include <fesh.hxx>
#include <tabfrm.hxx>
#include <frmatr.hxx>
#include <frmtool.hxx>
#include <pam.hxx>
#include <swtable.hxx>
#include <tblsel.hxx>
#include <fldbas.hxx>
#include <rowfrm.hxx>
#include <ddefld.hxx>
#include <hints.hxx>
#include <UndoTable.hxx>
#include <cellatr.hxx>
#include <mvsave.hxx>
#include <swtblfmt.hxx>
#include <swddetbl.hxx>
#include <poolfmt.hxx>
#include <tblrwcl.hxx>
#include <unochart.hxx>
#include <o3tl/numeric.hxx>
#include <calbck.hxx>
#include <docary.hxx>
Go to the source code of this file.
Macros | |
#define | COLFUZZY 20 |
#define | ROWFUZZY 10 |
#define | CHECK_TABLE(t) (t).CheckConsistency(); |
#define | CHECKBOXWIDTH |
#define | CHECKTABLELAYOUT |
Typedefs | |
typedef bool(* | FN_lcl_SetBoxWidth) (SwTableLine *, CR_SetBoxWidth &, SwTwips, bool) |
typedef bool(* | FN_lcl_SetLineHeight) (SwTableLine *, CR_SetLineHeight &, SwTwips, bool) |
typedef o3tl::sorted_vector< CpyTabFrame > | CpyTabFrames |
Functions | |
static bool | lcl_SetSelBoxWidth (SwTableLine *pLine, CR_SetBoxWidth &rParam, SwTwips nDist, bool bCheck) |
static bool | lcl_SetOtherBoxWidth (SwTableLine *pLine, CR_SetBoxWidth &rParam, SwTwips nDist, bool bCheck) |
static bool | lcl_SetSelLineHeight (SwTableLine *pLine, const CR_SetLineHeight &rParam, SwTwips nDist, bool bCheck) |
static bool | lcl_SetOtherLineHeight (SwTableLine *pLine, const CR_SetLineHeight &rParam, SwTwips nDist, bool bCheck) |
static SwTableLine * | lcl_CopyRow (FndLine_ &rFndLine, CpyPara *const pCpyPara) |
static void | lcl_CopyCol (FndBox_ &rFndBox, CpyPara *const pCpyPara) |
static void | lcl_InsCol (FndLine_ *pFndLn, CpyPara &rCpyPara, sal_uInt16 nCpyCnt, bool bBehind) |
static SwRowFrame * | GetRowFrame (SwTableLine &rLine) |
static void | lcl_LastBoxSetWidth (SwTableBoxes &rBoxes, const tools::Long nOffset, bool bFirst, SwShareBoxFormats &rShareFormats) |
static void | lcl_LastBoxSetWidthLine (SwTableLines &rLines, const tools::Long nOffset, bool bFirst, SwShareBoxFormats &rShareFormats) |
void | DeleteBox_ (SwTable &rTable, SwTableBox *pBox, SwUndo *pUndo, bool bCalcNewSize, const bool bCorrBorder, SwShareBoxFormats *pShareFormats) |
static SwTableBox * | lcl_FndNxtPrvDelBox (const SwTableLines &rTableLns, SwTwips nBoxStt, SwTwips nBoxWidth, sal_uInt16 nLinePos, bool bNxt, SwSelBoxes *pAllDelBoxes, size_t *const pCurPos) |
static void | lcl_SaveUpperLowerBorder (SwTable &rTable, const SwTableBox &rBox, SwShareBoxFormats &rShareFormats, SwSelBoxes *pAllDelBoxes=nullptr, size_t *const pCurPos=nullptr) |
static void | lcl_CpyLines (sal_uInt16 nStt, sal_uInt16 nEnd, SwTableLines &rLines, SwTableBox *pInsBox, sal_uInt16 nPos=USHRT_MAX) |
static void | lcl_CpyBoxes (sal_uInt16 nStt, sal_uInt16 nEnd, SwTableBoxes &rBoxes, SwTableLine *pInsLine) |
static void | lcl_CalcWidth (SwTableBox *pBox) |
static void | lcl_Merge_MoveLine (FndLine_ &rFndLine, InsULPara *const pULPara) |
static void | lcl_Merge_MoveBox (FndBox_ &rFndBox, InsULPara *const pULPara) |
static void | lcl_BoxSetHeadCondColl (const SwTableBox *pBox) |
static void | lcl_CheckRowSpan (SwTable &rTable) |
static sal_uInt16 | lcl_GetBoxOffset (const FndBox_ &rBox) |
static sal_uInt16 | lcl_GetLineWidth (const FndLine_ &rLine) |
static void | lcl_CalcNewWidths (const FndLines_t &rFndLines, CpyPara &rPara) |
static void | lcl_CopyLineToDoc (FndLine_ const &rpFndLn, CpyPara *const pCpyPara) |
static void | lcl_CopyBoxToDoc (FndBox_ const &rFndBox, CpyPara *const pCpyPara) |
void | sw_LineSetHeadCondColl (const SwTableLine *pLine) |
static SwTwips | lcl_GetDistance (SwTableBox *pBox, bool bLeft) |
static void | lcl_AjustLines (SwTableLine *pLine, CR_SetBoxWidth &rParam) |
void | CheckBoxWidth (const SwTableLine &rLine, SwTwips nSize) |
static void | SetLineHeight (SwTableLine &rLine, SwTwips nOldHeight, SwTwips nNewHeight, bool bMinSize) |
Definition at line 69 of file tblrwcl.cxx.
#define CHECKBOXWIDTH |
Definition at line 136 of file tblrwcl.cxx.
#define CHECKTABLELAYOUT |
Definition at line 143 of file tblrwcl.cxx.
#define COLFUZZY 20 |
Definition at line 65 of file tblrwcl.cxx.
#define ROWFUZZY 10 |
Definition at line 66 of file tblrwcl.cxx.
typedef o3tl::sorted_vector<CpyTabFrame> CpyTabFrames |
Definition at line 200 of file tblrwcl.cxx.
typedef bool(* FN_lcl_SetBoxWidth) (SwTableLine *, CR_SetBoxWidth &, SwTwips, bool) |
Definition at line 132 of file tblrwcl.cxx.
typedef bool(* FN_lcl_SetLineHeight) (SwTableLine *, CR_SetLineHeight &, SwTwips, bool) |
Definition at line 198 of file tblrwcl.cxx.
void CheckBoxWidth | ( | const SwTableLine & | rLine, |
SwTwips | nSize | ||
) |
Definition at line 2576 of file tblrwcl.cxx.
References abs(), CheckBoxWidth(), COLFUZZY, SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), and SvxSizeItem::GetWidth().
Referenced by CheckBoxWidth(), and SwTable::SetTabCols().
void DeleteBox_ | ( | SwTable & | rTable, |
SwTableBox * | pBox, | ||
SwUndo * | pUndo, | ||
bool | bCalcNewSize, | ||
const bool | bCorrBorder, | ||
SwShareBoxFormats * | pShareFormats | ||
) |
Definition at line 671 of file tblrwcl.cxx.
References SwTableLines::begin(), SwTableBox::ClaimFrameFormat(), IDocumentContentOperations::DeleteSection(), SwExtraRedlineTable::DeleteTableCellRedline(), SwExtraRedlineTable::DeleteTableRowRedline(), SwTableLines::empty(), SwTableLines::erase(), SwFormat::GetBox(), SwTableLine::GetBoxPos(), SwNode::GetDoc(), SwFormat::GetDoc(), IDocumentRedlineAccess::GetExtraRedlineTable(), SwTable::GetFrameFormat(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwDoc::getIDocumentContentOperations(), SwDoc::getIDocumentRedlineAccess(), SvxBoxItem::GetLeft(), SwTableLines::GetPos(), SvxBoxItem::GetRight(), SwTableBox::GetSttNd(), SwTableLine::GetTabBoxes(), SwTable::GetTabLines(), SwTableBox::GetTabLines(), SwTableLine::GetUpper(), SwTableBox::GetUpper(), SvxSizeItem::GetWidth(), SwUndo::IsDelBox(), lcl_LastBoxSetWidthLine(), rBoxItem, SwShareBoxFormats::RemoveFormat(), SwUndoTableNdsChg::SaveSection(), SwShareBoxFormats::SetAttr(), SwFormat::SetFormatAttr(), SvxBoxItem::SetLine(), SwShareBoxFormats::SetSize(), and SvxSizeItem::SetWidth().
Referenced by SwTable::ConvertSubtableBox(), SwTable::DeleteSel(), SwTable::MakeCopy(), SwTable::OldMerge(), and SwUndoTextToTable::UndoImpl().
|
static |
Definition at line 446 of file tblrwcl.cxx.
References SwIterator< TElementType, TSource, eMode >::First(), SwTableLine::GetFrameFormat(), and SwIterator< TElementType, TSource, eMode >::Next().
Referenced by lcl_SetOtherLineHeight(), lcl_SetSelLineHeight(), SwTable::OldSplitRow(), SetLineHeight(), and SwTable::SetRowHeight().
|
static |
Definition at line 2558 of file tblrwcl.cxx.
References SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SvxSizeItem::GetWidth(), lcl_AjustLines(), and SvxSizeItem::SetWidth().
Referenced by lcl_AjustLines(), and SwTable::SetColWidth().
|
static |
Definition at line 2327 of file tblrwcl.cxx.
References SwStartNode::CheckSectionCondColl(), SwTableBox::GetSttNd(), SwTableBox::GetTabLines(), and sw_LineSetHeadCondColl().
Referenced by SwTable::OldMerge(), and sw_LineSetHeadCondColl().
|
static |
Definition at line 1715 of file tblrwcl.cxx.
References FndLine_::GetBoxes(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), FndLine_::GetLine(), SwTableLine::GetTabBoxes(), SvxSizeItem::GetWidth(), nCount, and nPos.
Referenced by SwTable::CopyHeadlineIntoTable(), and SwTable::MakeCopy().
|
static |
Definition at line 1317 of file tblrwcl.cxx.
References SwTableBox::ClaimFrameFormat(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), RES_BOXATR_BEGIN(), RES_BOXATR_END(), RES_FRMATR_END(), RES_LR_SPACE(), SwFormat::ResetFormatAttr(), SwFormat::SetFormatAttr(), SwTableLines::size(), and Variable.
Referenced by lcl_Merge_MoveBox(), lcl_Merge_MoveLine(), and SwTable::OldMerge().
|
static |
Definition at line 1658 of file tblrwcl.cxx.
References SwTableBox::getRowSpan(), SwTableLine::GetTabBoxes(), SwTable::GetTabLines(), SwTableBox::setRowSpan(), and SwTableLines::size().
Referenced by SwTable::MakeCopy().
|
static |
Definition at line 1801 of file tblrwcl.cxx.
References SwTableBox::ClaimFrameFormat(), sw::DocumentContentOperationsManager::CopyWithFlyInFly(), SfxItemSet::Count(), SwNode::EndOfSectionNode(), SwFormat::GetAttrSet(), FndBox_::GetBox(), SwFormat::GetDoc(), SwDoc::GetDocumentContentOperationsManager(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), FndBox_::GetLines(), SvNumberFormatter::GetMergeFormatIndex(), SwNodeIndex::GetNode(), SwTableBox::getRowSpan(), SwTableBox::GetSttNd(), CntUInt32Item::GetValue(), SvxSizeItem::GetWidth(), SvNumberFormatter::HasMergeFormatTable(), lcl_CopyLineToDoc(), SfxItemSet::Put(), RES_BOXATR_FORMAT(), RES_BOXATR_FORMULA(), RES_BOXATR_VALUE(), SwTableBox::setDummyFlag(), SwFormat::SetFormatAttr(), and SwTableBox::setRowSpan().
Referenced by lcl_CopyLineToDoc().
|
static |
Definition at line 249 of file tblrwcl.cxx.
References SwTableBox::ChgFrameFormat(), SwTableBox::ClaimFrameFormat(), SwTableLines::empty(), FndBox_::GetBox(), SwFormat::GetBox(), FndLine_::GetBoxes(), SwFormat::GetDoc(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), FndLine_::GetLine(), FndBox_::GetLines(), SvxBoxItem::GetRight(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SvxBoxItem::GetTop(), FndBox_::GetUpper(), SvxSizeItem::GetWidth(), InsTableBox(), lcl_CopyRow(), n, rBoxItem, SwFormat::SetFormatAttr(), SvxBoxItem::SetLine(), and SvxSizeItem::SetWidth().
Referenced by lcl_CopyRow(), and lcl_InsCol().
|
static |
Definition at line 1953 of file tblrwcl.cxx.
References SwTableLines::begin(), SwFormat::CopyAttrs(), FndLine_::GetBoxes(), SwTableLine::GetFrameFormat(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), FndLine_::GetLine(), SwTableLine::GetTabBoxes(), SwTableLine::GetUpper(), SvxSizeItem::GetWidth(), SwTableLines::insert(), and lcl_CopyBoxToDoc().
Referenced by SwTable::CopyHeadlineIntoTable(), lcl_CopyBoxToDoc(), and SwTable::MakeCopy().
|
static |
Definition at line 382 of file tblrwcl.cxx.
References SwTableLines::begin(), FndLine_::GetBoxes(), SwTableLine::GetFrameFormat(), FndLine_::GetLine(), SwTableLines::insert(), and lcl_CopyCol().
Referenced by SwTable::InsertRow_(), and lcl_CopyCol().
|
static |
Definition at line 1305 of file tblrwcl.cxx.
References SwTableLine::GetTabBoxes(), n, and nPos.
Referenced by lcl_Merge_MoveBox(), and lcl_Merge_MoveLine().
|
static |
Definition at line 1291 of file tblrwcl.cxx.
References SwTableLines::begin(), SwTableLines::erase(), SwTableBox::GetTabLines(), SwTableLines::insert(), n, nPos, and SwTableLines::size().
Referenced by lcl_Merge_MoveLine().
|
static |
Definition at line 818 of file tblrwcl.cxx.
References abs(), SwTableLines::back(), o3tl::sorted_vector< typename Value, typename Compare, template< typename, typename > class Find, bool >::begin(), COLFUZZY, o3tl::sorted_vector< typename Value, typename Compare, template< typename, typename > class Find, bool >::end(), o3tl::sorted_vector< typename Value, typename Compare, template< typename, typename > class Find, bool >::erase(), o3tl::sorted_vector< typename Value, typename Compare, template< typename, typename > class Find, bool >::find(), SwTableLines::front(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwTableBox::GetSttNd(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SvxSizeItem::GetWidth(), and SwTableLines::size().
Referenced by lcl_SaveUpperLowerBorder().
|
static |
Definition at line 1679 of file tblrwcl.cxx.
References FndBox_::GetBox(), FndBox_::GetLines(), SwTableLine::GetTabBoxes(), SwTableLine::GetUpper(), and SwTableBox::GetUpper().
Referenced by SwTable::MakeCopy().
|
static |
Definition at line 2344 of file tblrwcl.cxx.
References SwTableLine::GetBoxPos(), SwTableLine::GetTabBoxes(), SwTableLine::GetUpper(), SwTableBox::GetUpper(), and nPos.
Referenced by SwTable::SetColWidth().
|
static |
Definition at line 1704 of file tblrwcl.cxx.
References FndLine_::GetBoxes(), and n.
Referenced by SwTable::MakeCopy().
|
static |
Definition at line 409 of file tblrwcl.cxx.
References FndLine_::GetBoxes(), SwTableLine::GetBoxPos(), FndLine_::GetLine(), FndBox_::GetLines(), lcl_CopyCol(), lcl_InsCol(), and n.
Referenced by SwTable::InsertCol(), and lcl_InsCol().
|
static |
Definition at line 644 of file tblrwcl.cxx.
References SwShareBoxFormats::AddFormat(), SwTableBox::ChgFrameFormat(), SwTableBox::ClaimFrameFormat(), SwShareBoxFormats::GetFormat(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwTableBox::GetSttNd(), SwTableBox::GetTabLines(), SvxSizeItem::GetWidth(), lcl_LastBoxSetWidthLine(), SwFormat::SetFormatAttr(), and SvxSizeItem::SetWidth().
Referenced by lcl_LastBoxSetWidthLine().
|
static |
Definition at line 637 of file tblrwcl.cxx.
References lcl_LastBoxSetWidth().
Referenced by DeleteBox_(), and lcl_LastBoxSetWidth().
|
static |
Definition at line 1368 of file tblrwcl.cxx.
References SwTableLines::empty(), FndBox_::GetBox(), SwTableLine::GetBoxPos(), SwTableBox::GetFrameFormat(), FndBox_::GetLines(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SwTableBox::GetUpper(), lcl_CalcWidth(), lcl_CpyBoxes(), lcl_Merge_MoveLine(), and nPos.
Referenced by lcl_Merge_MoveLine(), and SwTable::OldMerge().
|
static |
Definition at line 1433 of file tblrwcl.cxx.
References SwTableLines::begin(), SwTableLine::ClaimFrameFormat(), FndLine_::GetBoxes(), SwTableLine::GetBoxPos(), SwTableLine::GetFrameFormat(), FndLine_::GetLine(), SwTableLines::GetPos(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SwTableLine::GetUpper(), SwTableLines::insert(), lcl_CalcWidth(), lcl_CpyBoxes(), lcl_CpyLines(), lcl_Merge_MoveBox(), nPos, RES_FRM_SIZE(), SwFormat::ResetFormatAttr(), and SwTableLines::size().
Referenced by lcl_Merge_MoveBox(), and SwTable::OldMerge().
|
static |
Definition at line 878 of file tblrwcl.cxx.
References SvxBoxItem::GetBottom(), SwFormat::GetBox(), SwTableLine::GetBoxPos(), SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwTableLines::GetPos(), SwTableBox::GetSttNd(), SwTableLine::GetTabBoxes(), SwTable::GetTabLines(), SwTableBox::GetTabLines(), SvxBoxItem::GetTop(), SwTableLine::GetUpper(), SwTableBox::GetUpper(), SvxSizeItem::GetWidth(), lcl_FndNxtPrvDelBox(), n, rBoxItem, SwShareBoxFormats::SetAttr(), SvxBoxItem::SetLine(), and SwTableLines::size().
Referenced by SwTable::DeleteSel().
|
static |
Definition at line 2468 of file tblrwcl.cxx.
References abs(), COLFUZZY, FixedWidthChangeAbs, FixedWidthChangeProp, SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SvxSizeItem::GetWidth(), lcl_SetOtherBoxWidth(), MINLAY, and SvxSizeItem::SetWidth().
Referenced by lcl_SetOtherBoxWidth(), and SwTable::SetColWidth().
|
static |
rParam.bBigger
Definition at line 2973 of file tblrwcl.cxx.
References CalcRowRstHeight(), FixedWidthChangeProp, SwFrameAreaDefinition::getFrameArea(), GetRowFrame(), SwRect::Height(), and SetLineHeight().
Referenced by SwTable::SetRowHeight().
|
static |
Definition at line 2368 of file tblrwcl.cxx.
References abs(), COLFUZZY, FixedWidthChangeAbs, FixedWidthChangeProp, SwTableBox::GetFrameFormat(), SwFormat::GetFrameSize(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SvxSizeItem::GetWidth(), lcl_SetSelBoxWidth(), MINLAY, and SvxSizeItem::SetWidth().
Referenced by lcl_SetSelBoxWidth(), and SwTable::SetColWidth().
|
static |
Definition at line 2951 of file tblrwcl.cxx.
References CalcRowRstHeight(), GetRowFrame(), ROWFUZZY, and SetLineHeight().
Referenced by SwTable::SetRowHeight().
|
static |
Definition at line 2916 of file tblrwcl.cxx.
References CalcRowRstHeight(), SwTableLine::ClaimFrameFormat(), Fixed, SwFrameAreaDefinition::getFrameArea(), GetRowFrame(), SwTableLine::GetTabBoxes(), SwTableBox::GetTabLines(), SwRect::Height(), Minimum, ROWFUZZY, SwFormat::SetFormatAttr(), and SetLineHeight().
Referenced by lcl_SetOtherLineHeight(), lcl_SetSelLineHeight(), and SetLineHeight().
void sw_LineSetHeadCondColl | ( | const SwTableLine * | pLine | ) |
Definition at line 2338 of file tblrwcl.cxx.
References SwTableLine::GetTabBoxes(), and lcl_BoxSetHeadCondColl().
Referenced by lcl_BoxSetHeadCondColl(), and SwNodes::MergeTable().