20#ifndef INCLUDED_SW_SOURCE_CORE_INC_DOCSORT_HXX
21#define INCLUDED_SW_SOURCE_CORE_INC_DOCSORT_HXX
42 std::vector<const SwTableBox*>
mBoxes;
80 virtual OUString
GetKey(sal_uInt16 nKey )
const = 0;
81 virtual double GetValue(sal_uInt16 nKey )
const;
85 static double StrToDouble(std::u16string_view rStr);
98 virtual OUString
GetKey( sal_uInt16 nKey )
const override;
108 virtual OUString
GetKey( sal_uInt16 nKey )
const override;
109 virtual double GetValue( sal_uInt16 nKey )
const override;
123 const FndBox_*
GetBox(sal_uInt16 nCol, sal_uInt16 nRow)
const;
136 std::unique_ptr<FndBox_ const *[]>
m_pArr;
FlatFndBox(SwDoc *pDocPtr, const FndBox_ &rBox)
Generate two-dimensional array of FndBoxes.
sal_uInt16 GetColCount(const FndBox_ &rBox)
Maximum count of Columns (Boxes)
std::unique_ptr< FndBox_ const *[]> m_pArr
bool CheckLineSymmetry(const FndBox_ &rBox)
All Lines of a Box need to have same number of Boxes.
const SfxItemSet * GetItemSet(sal_uInt16 nCol, sal_uInt16 nRow) const
sal_uInt16 GetRowCount(const FndBox_ &rBox)
Maximum count of Rows (Lines)
void FillFlat(const FndBox_ &, bool bLastBox=false)
Create a linear array of atomic FndBoxes.
sal_uInt16 GetCols() const
sal_uInt16 GetRows() const
const FndBox_ * GetBox(sal_uInt16 nCol, sal_uInt16 nRow) const
Access a specific Cell.
std::vector< std::optional< SfxItemSet > > m_vItemSets
using optional because SfxItemSet has no default constructor
bool CheckBoxSymmetry(const FndLine_ &rLn)
Check Box for symmetry (All Boxes of a Line need to have same number of Lines)
sal_uInt16 GetPos(const SwTableBox *pTableBox) const
std::vector< const SwTableBox * > mBoxes
void push_back(const SwTableBox *&rpTableBox)
Marks a node in the document model.
SwTableBox is one table cell in the document model.
void MoveCell(SwDoc *pDoc, const SwTableBox *pSource, const SwTableBox *pTar, bool bMovedBefore, SwUndoSort *pUD=nullptr)
Move a single Cell.
void MoveCol(SwDoc *pDoc, const FlatFndBox &rBox, sal_uInt16 nS, sal_uInt16 nT, SwMovedBoxes &rMovedList, SwUndoSort *pUD)
Move a column.
void MoveRow(SwDoc *pDoc, const FlatFndBox &rBox, sal_uInt16 nS, sal_uInt16 nT, SwMovedBoxes &rMovedList, SwUndoSort *pUD)
Move a row.
SwSortBoxElement(sal_uInt16 nRC)
SortingElement for Tables.
virtual double GetValue(sal_uInt16 nKey) const override
virtual OUString GetKey(sal_uInt16 nKey) const override
Get Key for a cell.
static double StrToDouble(std::u16string_view rStr)
SwSortElement(SwSortElement const &)=default
static std::optional< OUString > xLastAlgorithm
SwSortElement(SwSortElement &&)=default
bool operator<(const SwSortElement &) const
static SwSortOptions * pOptions
static css::lang::Locale * pLocale
static const FlatFndBox * pBox
int keycompare(const SwSortElement &rCmp, sal_uInt16 nKey) const
static void Init(SwDoc *, const SwSortOptions &rOpt, FlatFndBox const *=nullptr)
Construct a SortElement for the Sort.
virtual double GetValue(sal_uInt16 nKey) const
static CollatorWrapper * pSortCollator
SwSortElement & operator=(SwSortElement const &)=default
virtual OUString GetKey(sal_uInt16 nKey) const =0
static LocaleDataWrapper * pLclData
virtual OUString GetKey(sal_uInt16 nKey) const override
SwSortTextElement(const SwNodeIndex &rPos)
SortingElement for Text.