53 ShellMoveCursor(
SwWrtShell* pWrtSh,
bool bSel )
60 ~ShellMoveCursor() COVERITY_NOEXCEPT_FALSE
98 bRet = (this->*FnSimpleMove)();
103 bRet = (this->*FnSimpleMove)();
111 sal_uInt16 nCount,
bool bBasicCall,
bool bVisual )
122 ShellMoveCursor aTmp(
this, bSelect );
128 sal_uInt16 nCount,
bool bBasicCall,
bool bVisual )
140 ShellMoveCursor aTmp(
this, bSelect );
155 ShellMoveCursor aTmp(
this, bSelect );
170 ShellMoveCursor aTmp(
this, bSelect );
185 ShellMoveCursor aTmp(
this, bSelect );
203 ShellMoveCursor aTmp(
this, bSelect );
209 bool bSelect,
bool bDontMoveRegion )
239 < pCursor->GetPoint()->GetNode().GetIndex()
240 && pMoveTable !=
nullptr
245 assert(!*pMoveTable);
248 else if( bBoxSelection && pMoveTable )
279 else if ( bKeepArea )
285 (pMoveTable !=
nullptr
294 if (pMoveTable && *pMoveTable)
337 else if ( bKeepArea )
348 ShellMoveCursor aTmp(
this, bSelect );
349 return GoStart(
false,
nullptr, bSelect );
354 ShellMoveCursor aTmp(
this, bSelect );
360 ShellMoveCursor aTmp(
this, bSelect );
366 ShellMoveCursor aTmp(
this, bSelect );
372 ShellMoveCursor aTmp(
this, bSelect );
378 ShellMoveCursor aTmp(
this, bSelect );
384 ShellMoveCursor aTmp(
this, bSelect );
390 ShellMoveCursor aTmp(
this, bSelect );
396 ShellMoveCursor aTmp(
this, bSelect );
402 ShellMoveCursor aTmp(
this, bSelect );
412 ShellMoveCursor aTmp(
this,
false);
418 ShellMoveCursor aTmp(
this,
false);
424 ShellMoveCursor aTmp(
this,
false);
430 ShellMoveCursor aTmp(
this,
false);
436 ShellMoveCursor aTmp(
this,
false);
442 ShellMoveCursor aTmp(
this,
false);
455 Point aPt( aOldRect.Center() );
470 bool bIsFrameSel =
false;
476 aTmpArea.
Pos().AdjustY(lOffset );
488 if( bIsFrameSel || bIsObjSel )
509 aOldRect.SSize( 5, 5 );
529 if( bUpdate && bValidPos )
590 if(!lOffset)
return false;
606 const bool bRet =
PushCursor(lOffset, bSelect);
614 ShellMoveCursor aTmp(
this,
false);
629 ShellMoveCursor aTmp(
this, bSelect );
689 pDrawView->
MarkObj(pObj, pPageView);
virtual const SwDrawModel * GetDrawModel() const =0
Draw Model and id accessors.
constexpr tools::Long Y() const
void setX(tools::Long nX)
void setY(tools::Long nY)
tools::Long AdjustY(tools::Long nVertMove)
tools::Long AdjustX(tools::Long nHorzMove)
constexpr tools::Long X() const
bool MarkObj(const Point &rPnt, short nTol=-2, bool bToggle=false, bool bDeep=false)
const SdrPage * GetPage(sal_uInt16 nPgNum) const
virtual SdrEndTextEditKind SdrEndTextEdit(bool bDontDeleteReally=false)
SdrObject * GetObj(size_t nNum) const
size_t GetObjCount() const
virtual const OUString & GetName() const
SdrPageView * GetSdrPageView() const
void Invalidate(sal_uInt16 nId)
SfxBindings & GetBindings()
SfxViewFrame & GetViewFrame() const
bool GotoRefMark(const OUString &rRefMark, sal_uInt16 nSubType, sal_uInt16 nSeqNo)
jump to reference marker
const SwTableNode * IsCursorInTable() const
Check if Point of current cursor is placed within a table.
const SwRect & GetCharRect() const
bool IsCursorVisible() const
bool SttEndDoc(bool bStt)
bool MoveRegion(SwWhichRegion, SwMoveFnCollection const &)
void MoveColumn(SwWhichColumn, SwPosColumn)
bool GotoFootnoteAnchor()
jump from footnote to anchor
bool MovePara(SwWhichPara, SwMoveFnCollection const &)
bool GotoTable(const OUString &rName)
bool IsCursorReadonly() const
bool RightMargin(bool bAPI=false)
bool GotoPage(sal_uInt16 nPage)
bool MoveTable(SwWhichTable, SwMoveFnCollection const &)
SwCursor * GetCursor(bool bMakeTableCursor=true) const
Return pointer to the current shell cursor.
bool GotoMark(const ::sw::mark::IMark *const pMark)
bool SelectTextAttr(sal_uInt16 nWhich, bool bExpand, const SwTextAttr *pAttr=nullptr)
bool GotoNextTOXBase(const OUString *=nullptr)
jump to the next index
bool MovePage(SwWhichPage, SwPosPage)
bool Right(sal_uInt16 nCnt, SwCursorSkipMode nMode, bool bAllowVisual=false)
const SwRangeRedline * GotoRedline(SwRedlineTable::size_type nArrPos, bool bSelect)
bool Down(sal_uInt16 nCnt=1)
bool GotoOutline(const OUString &rName)
SwShellCursor * getShellCursor(bool bBlock)
Delivers the current shell cursor.
bool MoveSection(SwWhichSection, SwMoveFnCollection const &)
bool Left(sal_uInt16 nCnt, SwCursorSkipMode nMode, bool bAllowVisual=false)
bool GotoRegion(std::u16string_view rName)
bool GotoFormatField(const SwFormatField &rField)
bool GotoINetAttr(const SwTextINetFormat &rAttr)
bool Up(sal_uInt16 nCnt=1)
void EndCursorMove(const bool bIdleEnd=false)
void StartAllAction()
For all views of this document.
FrameTypeFlags GetFrameType(const Point *pPt, bool bStopAtFly) const
For return values see above FrameType.
bool HasBoxSelection() const
Is content of a table cell or at least a table cell completely selected?
bool IsFrameSelected() const
bool IsObjSelectable(const Point &rPt)
The following two methods return enum SdrHdlKind.
bool GotoFly(const OUString &rName, FlyCntType eType, bool bSelFrame)
Jump to named Fly (graphic/OLE).
size_t IsObjSelected() const
bool SelectObj(const Point &rSelPt, sal_uInt8 nFlag=0, SdrObject *pObj=nullptr)
If an object has been given, exactly this object is selected (instead of searching over position).
Point GetContentPos(const Point &rPoint, bool bNext) const
Provide information about content situated closes to given Point.
Class for automated call of Start- and EndCursorMove().
bool addEntry(const SwPosition &rPos)
SwNodeOffset GetIndex() const
SwNodes & GetNodes()
Node is in which nodes-array/doc?
SwNodeOffset EndOfSectionIndex() const
const SwPosition * GetPoint() const
Of course Writer needs its own rectangles.
void Height(tools::Long nNew)
void Top(const tools::Long nTop)
void Pos(const Point &rNew)
bool Contains(const Point &rPOINT) const
vector_type::size_type size_type
A wrapper around SfxPoolItem to store the start position of (usually) a text portion,...
SwTextAttr subclass that tracks the location of the wrapped SwFormatURL.
const SwViewOption * GetViewOptions() const
const IDocumentDrawModelAccess & getIDocumentDrawModelAccess() const
Provides access to the document draw model interface.
const SwRect & VisArea() const
tools::Long SetHScrollMax(tools::Long lMax)
tools::Long SetVScrollMax(tools::Long lMax)
void SetDrawFuncPtr(std::unique_ptr< SwDrawBase > pFuncPtr)
void SetVisArea(const tools::Rectangle &, bool bUpdateScrollbar=true)
Used by the UI to modify the document model.
bool IsSelFrameMode() const
bool Down(bool bSelect, sal_uInt16 nCount=1, bool bBasicCall=false)
bool EndPg(bool bSelect=false)
void EnterSelFrameMode(const Point *pStartDrag=nullptr)
void GotoFormatField(const SwFormatField &rField)
bool EndPrvPg(bool bSelect=false)
bool Right(SwCursorSkipMode nMode, bool bSelect, sal_uInt16 nCount, bool bBasicCall, bool bVisual=false)
bool GotoNextTOXBase(const OUString *pName=nullptr)
bool GotoDrawingObject(std::u16string_view rName)
const SwRangeRedline * GotoRedline(SwRedlineTable::size_type nArrPos, bool bSelect)
std::unique_ptr< CursorStack > m_pCursorStack
void addCurrentPosition()
SAL_DLLPRIVATE bool GoStart(bool KeepArea, bool *, bool bSelect, bool bDontMoveRegion=false)
bool GotoPage(sal_uInt16 nPage, bool bRecord)
void GotoMark(const ::sw::mark::IMark *const pMark)
bool Left(SwCursorSkipMode nMode, bool bSelect, sal_uInt16 nCount, bool bBasicCall, bool bVisual=false)
bool SttPara(bool bSelect=false)
bool GotoFly(const OUString &rName, FlyCntType eType=FLYCNTTYPE_ALL, bool bSelFrame=true)
bool GotoINetAttr(const SwTextINetFormat &rAttr)
bool GotoFootnoteAnchor()
jump from footnote to anchor
void EndPara(bool bSelect=false)
bool SttNxtPg(bool bSelect=false)
SAL_DLLPRIVATE bool GoEnd(bool KeepArea=false, const bool *=nullptr)
void EndNxtPg(bool bSelect=false)
bool SttPg(bool bSelect=false)
bool GotoTable(const OUString &rName)
bool RightMargin(bool bSelect, bool bBasicCall)
bool GotoRegion(std::u16string_view rName)
bool SimpleMove(FNSimpleMove, bool bSelect)
SAL_DLLPRIVATE bool PopCursor(bool bUpdate, bool bSelect=false)
bool Up(bool bSelect, sal_uInt16 nCount=1, bool bBasicCall=false)
bool PageCursor(SwTwips lOffset, bool bSelect)
if no stack exists --> cancel selection if stack && change of direction --> pop cursor and return els...
void SttPrvPg(bool bSelect=false)
SwNavigationMgr m_aNavigationMgr
void GotoOutline(SwOutlineNodes::size_type nIdx)
bool GotoRefMark(const OUString &rRefMark, sal_uInt16 nSubType=0, sal_uInt16 nSeqNo=0)
SAL_DLLPRIVATE void ResetCursorStack_()
bool EndOfSection(bool bSelect=false)
void MoveCursor(bool bWithSelect=false)
SAL_DLLPRIVATE bool PushCursor(SwTwips lOffset, bool bSelect)
enum SwWrtShell::PageMove m_ePageMove
bool SelectTextAttr(sal_uInt16 nWhich, const SwTextAttr *pAttr=nullptr)
bool StartOfSection(bool bSelect=false)
const SwView & GetView() const
std::vector< Value >::size_type size_type
FrameTypeFlags
values can be combined via logical or
const tools::Long nReadOnlyScrollOfst
Always:
bool GoCurrPara(SwPaM &rPam, SwMoveFnCollection const &aPosPara)
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.
bool GoCurrSection(SwPaM &rPam, SwMoveFnCollection const &fnMove)
SwMoveFnCollection const & fnParaStart
SwMoveFnCollection const & fnRegionEnd
SwMoveFnCollection const & fnTableEnd
SwMoveFnCollection const & fnSectionEnd
SwMoveFnCollection const & fnParaEnd
SwMoveFnCollection const & fnTableStart
SwMoveFnCollection const & fnRegionStart
SwMoveFnCollection const & fnSectionStart
Marks a position in the document model.
constexpr SwTwips DOCUMENTBORDER
SwContentFrame * GetColumnEnd(const SwLayoutFrame *pColFrame)
SwLayoutFrame * GetPrevColumn(const SwLayoutFrame *pLayFrame)
SwLayoutFrame * GetCurrColumn(const SwLayoutFrame *pLayFrame)
SwLayoutFrame * GetNextColumn(const SwLayoutFrame *pLayFrame)
SwContentFrame * GetColumnStt(const SwLayoutFrame *pColFrame)
SwContentFrame * GetLastSub(const SwLayoutFrame *pLayout)
SwContentFrame * GetFirstSub(const SwLayoutFrame *pLayout)
SwLayoutFrame * GetPrevFrame(const SwLayoutFrame *pFrame)
SwLayoutFrame * GetThisFrame(const SwLayoutFrame *pFrame)
SwLayoutFrame * GetNextFrame(const SwLayoutFrame *pFrame)
bool GotoCurrRegionAndSkip(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosRegion, bool bInReadOnly)
bool GotoCurrTable(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosTable, bool bInReadOnly)