38 pWrtSh->addCurrentPosition();
41 bool bRet = (this->*fnCursor)();
51 pWrtSh->addCurrentPosition();
55 bool bRet = (pCursor->*fnCursor)();
98 std::pair<Point, bool>
const tmp(
GetCursor_()->GetSttPos(),
true);
116 (pFrame)->ContainsContent();
131 pFrame = pFootnoteBoss->
GetNext();
148 for(
size_t n = 0;
n < rFootnoteArr.
size(); ++
n )
170 pWrtSh->addCurrentPosition();
188 return nTNd < nNd || ( nTNd == nNd && rFootnote.
GetStart() <= nCnt );
194 return nTNd < nNd || ( nTNd == nNd && rFootnote.
GetStart() < nCnt );
203 if( rFootnoteArr.
empty() )
217 pTextFootnote = rFootnoteArr[
nPos ];
219 if(
CmpLE( *pTextFootnote, nNdPos, nCntPos ) )
221 pTextFootnote =
nullptr;
224 pTextFootnote = rFootnoteArr[
nPos ];
225 if( !
CmpLE( *pTextFootnote, nNdPos, nCntPos ) )
227 pTextFootnote =
nullptr;
233 pTextFootnote =
nullptr;
236 pTextFootnote = rFootnoteArr[ --
nPos ];
237 if(
CmpLE( *pTextFootnote, nNdPos, nCntPos ) )
239 pTextFootnote = rFootnoteArr[ ++
nPos ];
246 else if(
nPos < rFootnoteArr.
size() )
247 pTextFootnote = rFootnoteArr[
nPos ];
249 if (pTextFootnote ==
nullptr)
251 pTextFootnote = rFootnoteArr[ 0 ];
257 bool bRet =
nullptr != pTextFootnote;
275 if( rFootnoteArr.
empty() )
287 pTextFootnote = rFootnoteArr[
nPos ];
289 if(
CmpL( *pTextFootnote, nNdPos, nCntPos ))
293 pTextFootnote = rFootnoteArr[
nPos ];
294 if( !
CmpL( *pTextFootnote, nNdPos, nCntPos ) )
296 pTextFootnote = rFootnoteArr[
nPos-1 ];
304 pTextFootnote =
nullptr;
307 pTextFootnote = rFootnoteArr[ --
nPos ];
308 if(
CmpL( *pTextFootnote, nNdPos, nCntPos ))
310 pTextFootnote =
nullptr;
314 pTextFootnote =
nullptr;
317 pTextFootnote = rFootnoteArr[
nPos-1 ];
319 if( pTextFootnote ==
nullptr )
321 pTextFootnote = rFootnoteArr[ rFootnoteArr.
size() - 1 ];
327 bool bRet =
nullptr != pTextFootnote;
369 ( aTmpRect.
Bottom() - aTmpRect.
Top() ) / 2 );
void setX(tools::Long nX)
constexpr tools::Long getX() const
static void SetSearchLabel(const SearchLabel &rSL)
SwContentFrame is the layout for content nodes: a common base class for text (paragraph) and non-text...
SwContentFrame * getLayoutFrame(const SwRootFrame *, const SwPosition *pPos=nullptr, std::pair< Point, bool > const *pViewPosAndCalcFrame=nullptr) const
A helper class to save cursor state (position).
SAL_DLLPRIVATE void UpdateCursor(sal_uInt16 eFlags=SwCursorShell::SCROLLWIN|SwCursorShell::CHKRANGE, bool bIdleEnd=false)
bool GotoNextFootnoteAnchor()
SwShellCursor * GetCursor_()
SAL_DLLPRIVATE bool CallCursorFN(FNCursor)
bool GotoFootnoteAnchor()
jump from footnote to anchor
void GotoFlyAnchor()
jump from the frame to the anchor
bool GotoFootnoteText()
jump from content to footnote
SwContentFrame * GetCurrFrame(const bool bCalcFrame=true) const
Get current frame in which the cursor is positioned.
bool GotoPrevFootnoteAnchor()
SwShellCursor * getShellCursor(bool bBlock)
Delivers the current shell cursor.
SwRect m_aCharRect
Char-SRectangle on which the cursor is located.
@ READONLY
make visible in spite of Readonly
@ CHKRANGE
check overlapping PaMs
SAL_DLLPRIVATE bool CallCursorShellFN(FNCursorShell)
SwShellCursor * m_pCurrentCursor
current cursor
virtual bool IsSelOvr(SwCursorSelOverFlags eFlags=SwCursorSelOverFlags::CheckNodeSection|SwCursorSelOverFlags::Toggle|SwCursorSelOverFlags::ChangePos)
bool GotoPrevFootnoteAnchor()
bool IsInProtectTable(bool bMove=false, bool bChgCursor=true)
bool GotoFootnoteAnchor()
virtual bool IsReadOnlyAvailable() const
bool GotoNextFootnoteAnchor()
SwFootnoteIdxs & GetFootnoteIdxs()
const SwRect & getFrameArea() const
Base class of the Writer layout elements.
bool IsInFootnote() const
virtual bool GetModelPositionForViewPoint(SwPosition *, Point &, SwCursorMoveState *=nullptr, bool bTestBackground=false) const
SwLayoutFrame * GetUpper()
SwPageFrame * FindPageFrame()
SwFootnoteBossFrame * FindFootnoteBossFrame(bool bFootnotes=false)
A layout frame is a frame that contains other frames (m_pLower), e.g. SwPageFrame or SwTabFrame.
const SwContentFrame * GetContentPos(Point &rPoint, const bool bDontLeave, const bool bBodyOnly=false, SwCursorMoveState *pCMS=nullptr, const bool bDefaultExpand=true) const
Finds the closest Content for the SPoint Is used for Pages, Flys and Cells if GetModelPositionForView...
Base class of the Writer document model elements.
SwTextNode * GetTextNode()
Inline methods from Node.hxx.
SwNodeOffset GetIndex() const
const SwStartNode * FindFootnoteStartNode() const
SwContentNode * GoNextSection(SwNodeIndex *, bool bSkipHidden=true, bool bSkipProtect=true) const
Go to next content-node that is not protected or hidden (Both set FALSE ==> GoNext/GoPrevious!...
SwNode & GetPointNode() const
const SwPosition * GetPoint() const
A page of the document layout.
Of course Writer needs its own rectangles.
void Top(const tools::Long nTop)
void Right(const tools::Long nRight)
void Bottom(const tools::Long nBottom)
void SSize(const Size &rNew)
bool Contains(const Point &rPOINT) const
void Left(const tools::Long nLeft)
const Point & GetPtPos() const
A wrapper around SfxPoolItem to store the start position of (usually) a text portion,...
sal_Int32 GetStart() const
Represents the visualization of a paragraph.
SwPosition MapViewToModelPos(TextFrameIndex nIndex) const
TextFrameIndex GetOffset() const
SwTextNode is a paragraph in the document model.
SwTextAttr * GetTextAttrForCharAt(const sal_Int32 nIndex, const sal_uInt16 nWhich=RES_TXTATR_END) const
get the text attribute at position nIndex which owns the dummy character CH_TXTATR_* at that position...
SwRootFrame * GetLayout() const
Used by the UI to modify the document model.
static SwNode * GetStartNode(SwOutlineNodes const *pOutlNds, int nOutlineLevel, SwOutlineNodes::size_type *nOutl)
constexpr TypedWhichId< SwFormatFootnote > RES_TXTATR_FTN(59)
SwContentNode * GetNode(SwPaM &rPam, bool &rbFirst, SwMoveFnCollection const &fnMove, bool const bInReadOnly, SwRootFrame const *const i_pLayout)
This function returns the next node in direction of search.
void Assign(const SwNode &rNd, SwNodeOffset nDelta, sal_Int32 nContentOffset=0)
These all set both nNode and nContent.
SwNodeOffset GetNodeIndex() const
sal_Int32 GetContentIndex() const
static bool CmpLE(const SwTextFootnote &rFootnote, SwNodeOffset nNd, sal_Int32 nCnt)
static bool CmpL(const SwTextFootnote &rFootnote, SwNodeOffset nNd, sal_Int32 nCnt)