19#ifndef INCLUDED_SW_INC_SWCRSR_HXX
20#define INCLUDED_SW_INC_SWCRSR_HXX
30 struct SearchOptions2;
90 bool & io_rbLeft,
bool bVisualAllowed,
bool bInsertCursor);
91 virtual void DoSetBidiLevelUpDown();
109 virtual short MaxReplaceArived();
110 virtual void SaveTableBoxContent(
const SwPosition* pPos );
122 bool bReplace =
false,
130 sal_Int32 FindAttrs(
const SfxItemSet& rSet,
bool bNoCollections,
139 bool IsStartEndSentence(
bool bEnd,
SwRootFrame const* pLayout)
const;
144 bool IsStartWordWT(sal_Int16 nWordType,
SwRootFrame const* pLayout =
nullptr)
const;
145 bool IsEndWordWT(sal_Int16 nWordType,
SwRootFrame const* pLayout =
nullptr)
const;
146 bool IsInWordWT(sal_Int16 nWordType,
SwRootFrame const* pLayout =
nullptr)
const;
147 bool GoStartWordWT(sal_Int16 nWordType,
SwRootFrame const* pLayout =
nullptr);
148 bool GoEndWordWT(sal_Int16 nWordType,
SwRootFrame const* pLayout =
nullptr);
149 bool GoNextWordWT(sal_Int16 nWordType,
SwRootFrame const* pLayout =
nullptr);
150 bool GoPrevWordWT(sal_Int16 nWordType,
SwRootFrame const* pLayout =
nullptr);
151 bool SelectWordWT(
SwViewShell const * pViewShell, sal_Int16 nWordType,
const Point* pPt );
160 bool GoSentence(SentenceMoveType eMoveType,
SwRootFrame const*pLayout =
nullptr);
161 void ExpandToSentenceBorders(
SwRootFrame const* pLayout);
163 virtual bool LeftRight(
bool bLeft, sal_uInt16 nCnt,
SwCursorSkipMode nMode,
164 bool bAllowVisual,
bool bSkipHidden,
bool bInsertCursor,
167 bool LeftRightMargin(
SwRootFrame const& rLayout,
bool bLeftMargin,
bool bAPI);
168 bool IsAtLeftRightMargin(
SwRootFrame const& rLayout,
bool bLeftMargin,
bool bAPI)
const;
169 bool SttEndDoc(
bool bSttDoc );
170 bool GoPrevNextCell(
bool bNext, sal_uInt16 nCnt );
174 bool GoNextCell( sal_uInt16 nCnt = 1 ) {
return GoPrevNextCell(
true, nCnt ); }
175 bool GoPrevCell( sal_uInt16 nCnt = 1 ) {
return GoPrevNextCell(
false, nCnt ); }
176 virtual bool GotoTable(
const OUString& rName );
177 bool GotoTableBox(
const OUString& rName );
178 bool GotoRegion( std::u16string_view rName );
179 bool GotoFootnoteAnchor();
180 bool GotoFootnoteText();
181 bool GotoNextFootnoteAnchor();
182 bool GotoPrevFootnoteAnchor();
195 bool IsInProtectTable(
bool bMove =
false,
196 bool bChgCursor =
true );
197 bool IsNoContent()
const;
200 void RestoreSavePos();
203 virtual bool IsAtValidPos(
bool bPoint =
true )
const;
206 virtual bool IsReadOnlyAvailable()
const;
208 virtual bool IsSkipOverProtectSections()
const;
209 virtual bool IsSkipOverHiddenSections()
const;
248 :
nNode( rCursor.GetPoint()->GetNodeIndex() ),
249 nContent( rCursor.GetPoint()->GetContentIndex() )
273 bool bAllowVisual,
bool bSkipHidden,
bool bInsertCursor,
275 virtual bool GotoTable(
const OUString& rName )
override;
SwContentFrame is the layout for content nodes: a common base class for text (paragraph) and non-text...
A helper class to save cursor state (position).
SwCursorSaveState(SwCursor &rC)
sal_Int32 GetCursorRowSpanOffset() const
bool Left(sal_uInt16 nCnt)
sal_uInt8 GetCursorBidiLevel() const
std::vector< SwCursor_SavePos > m_vSavePos
bool GoNextCell(sal_uInt16 nCnt=1)
SwCursor & operator=(SwCursor const &)
SwCursor(SwCursor const &rPaM)=delete
bool IsColumnSelection() const
bool Right(sal_uInt16 nCnt)
const SwCursor * GetNext() const
bool GoPrevCell(sal_uInt16 nCnt=1)
void SetCursorBidiLevel(sal_uInt8 nNewLevel)
sal_Int32 m_nRowSpanOffset
sal_uInt8 m_nCursorBidiLevel
const SwCursor * GetPrev() const
void SetColumnSelection(bool bNew)
const SwCursor_SavePos * GetSavePos() const
PaM is Point and Mark: a selection of the document model.
const SwPosition * GetMark() const
SwPaM & operator=(const SwPaM &)
@@ semantic: no copy assignment for super class Ring.
const SwPosition * GetPoint() const
The root element of a Writer document layout.
SwTableBox is one table cell in the document model.
bool HasReadOnlyBoxSel() const
bool HasHiddenBoxSel() const
const SwTableCursor * GetNext() const
bool IsCursorMovedUpdate()
void DeleteBox(size_t nPos)
virtual bool LeftRight(bool bLeft, sal_uInt16 nCnt, SwCursorSkipMode nMode, bool bAllowVisual, bool bSkipHidden, bool bInsertCursor, SwRootFrame const *, bool) override
SwTableCursor * GetNext()
SwTableCursor * GetPrev()
SwSelBoxes m_SelectedBoxes
SwCursor * MakeBoxSels(SwCursor *pCurrentCursor)
virtual bool IsSelOvrCheck(SwCursorSelOverFlags eFlags) override
SwNodeOffset m_nTableMkNd
SwTableCursor(const SwPosition &rPos)
void ActualizeSelection(const SwSelBoxes &rBoxes)
bool IsCursorMoved() const
const SwSelBoxes & GetSelectedBoxes() const
size_t GetSelectedBoxesCount() const
SwNodeOffset m_nTablePtNd
void InsertBox(const SwTableBox &rTableBox)
virtual bool GotoTable(const OUString &rName) override
const SwTableCursor * GetPrev() const
SwTableCursor(SwTableCursor &)
void ParkCursor()
park table cursor on the boxes' start node
virtual ~SwTableCursor() override
Represents the style of a paragraph.
bool(* SwWhichTable)(SwPaM &, SwMoveFnCollection const &, bool bInReadOnly)
bool(* SwWhichPara)(SwPaM &, SwMoveFnCollection const &)
bool(* SwWhichRegion)(SwPaM &, SwMoveFnCollection const &, bool bInReadOnly)
bool(* SwWhichSection)(SwPaM &, SwMoveFnCollection const &)
void Create(SvxOrientationItem &rItem, SvStream &rStrm, sal_uInt16)
SwCursor_SavePos(const SwCursor &rCursor)
virtual bool IsReplaceMode() const =0
virtual int DoFind(SwPaM &, SwMoveFnCollection const &, const SwPaM &, bool, std::unique_ptr< SvxSearchItem > &xSearchItem)=0
Marks a position in the document model.
SwNodeOffset GetNodeIndex() const
sal_Int32 GetContentIndex() const