LibreOffice Module sw (master)  1
txtcrsr.cxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * This file incorporates work covered by the following license notice:
10  *
11  * Licensed to the Apache Software Foundation (ASF) under one or more
12  * contributor license agreements. See the NOTICE file distributed
13  * with this work for additional information regarding copyright
14  * ownership. The ASF licenses this file to you under the Apache
15  * License, Version 2.0 (the "License"); you may not use this file
16  * except in compliance with the License. You may obtain a copy of
17  * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18  */
19 
20 #include <sal/config.h>
21 
22 #include <memory>
23 
24 #include <sfx2/request.hxx>
25 #include <svl/eitem.hxx>
26 #include <sfx2/viewfrm.hxx>
27 #include <sfx2/bindings.hxx>
28 
29 #include <view.hxx>
30 #include <wrtsh.hxx>
31 #include <textsh.hxx>
32 #include <edtwin.hxx>
33 #include <doc.hxx>
34 #include <docsh.hxx>
35 
36 #include <cmdid.h>
37 #include <globals.hrc>
38 
39 #include <svx/svdouno.hxx>
40 #include <svx/fmshell.hxx>
41 #include <svx/sdrobjectfilter.hxx>
42 
43 using namespace ::com::sun::star;
44 
46 {
47  SwWrtShell &rSh = GetShell();
49  const SfxItemSet *pArgs = rReq.GetArgs();
50  bool bSelect = false;
51  sal_Int32 nCount = 1;
52  if(pArgs)
53  {
54  const SfxPoolItem *pItem;
55  if(SfxItemState::SET == pArgs->GetItemState(FN_PARAM_MOVE_COUNT, true, &pItem))
56  nCount = static_cast<const SfxInt32Item *>(pItem)->GetValue();
57  if(SfxItemState::SET == pArgs->GetItemState(FN_PARAM_MOVE_SELECTION, true, &pItem))
58  bSelect = static_cast<const SfxBoolItem *>(pItem)->GetValue();
59  }
60  switch(rReq.GetSlot())
61  {
62  case FN_CHAR_LEFT_SEL:
63  rReq.SetSlot( FN_CHAR_LEFT );
64  bSelect = true;
65  break;
66  case FN_CHAR_RIGHT_SEL:
67  rReq.SetSlot( FN_CHAR_RIGHT );
68  bSelect = true;
69  break;
70  case FN_LINE_UP_SEL:
71  rReq.SetSlot( FN_LINE_UP );
72  bSelect = true;
73  break;
74  case FN_LINE_DOWN_SEL:
75  rReq.SetSlot( FN_LINE_DOWN );
76  bSelect = true;
77  break;
78  }
79 
80  uno::Reference< frame::XDispatchRecorder > xRecorder =
82  if ( xRecorder.is() )
83  {
86  }
87  const sal_uInt16 nSlot = rReq.GetSlot();
88  rReq.Done();
89  // Get EditWin before calling the move functions (shell change may occur!)
90  SwEditWin& rTmpEditWin = GetView().GetEditWin();
91  for( sal_Int32 i = 0; i < nCount; i++ )
92  {
93  switch(nSlot)
94  {
95  case FN_CHAR_LEFT:
96  rSh.Left( CRSR_SKIP_CELLS, bSelect, 1, false, true );
97  break;
98  case FN_CHAR_RIGHT:
99  rSh.Right( CRSR_SKIP_CELLS, bSelect, 1, false, true );
100  break;
101  case FN_LINE_UP:
102  rSh.Up( bSelect );
103  break;
104  case FN_LINE_DOWN:
105  rSh.Down( bSelect );
106  break;
107  default:
108  OSL_FAIL("wrong Dispatcher");
109  return;
110  }
111  }
112 
113  //#i42732# - notify the edit window that from now on we do not use the input language
114  rTmpEditWin.SetUseInputLanguage( false );
115 }
116 
118 {
119  SwWrtShell &rSh = GetShell();
120  rSh.addCurrentPosition();
121  SwEditWin& rTmpEditWin = GetView().GetEditWin();
122  rTmpEditWin.FlushInBuffer();
123 
124  bool bRet = false;
125  switch ( rReq.GetSlot() )
126  {
127  case FN_START_OF_LINE_SEL:
128  bRet = rSh.LeftMargin( true, false );
129  break;
130  case FN_START_OF_LINE:
131  bRet = rSh.LeftMargin( false, false );
132  break;
133  case FN_END_OF_LINE_SEL:
134  bRet = rSh.RightMargin( true, false );
135  break;
136  case FN_END_OF_LINE:
137  bRet = rSh.RightMargin( false, false );
138  break;
139  case FN_START_OF_DOCUMENT_SEL:
140  bRet = rSh.StartOfSection( true );
141  break;
143  bRet = rSh.StartOfSection();
144  break;
145  case FN_END_OF_DOCUMENT_SEL:
146  bRet = rSh.EndOfSection( true );
147  break;
148  case FN_END_OF_DOCUMENT:
149  bRet = rSh.EndOfSection();
150  break;
151  case FN_SELECT_WORD:
152  bRet = rSh.SelNearestWrd();
153  break;
154  case FN_SELECT_SENTENCE:
155  rSh.SelSentence( nullptr );
156  bRet = true;
157  break;
158  case SID_SELECTALL:
159  rSh.SelAll();
160  bRet = true;
161  break;
162  default:
163  OSL_FAIL("wrong dispatcher");
164  return;
165  }
166 
167  if ( bRet )
168  rReq.Done();
169  else
170  rReq.Ignore();
171 
172  //#i42732# - notify the edit window that from now on we do not use the input language
173  rTmpEditWin.SetUseInputLanguage( false );
174 }
175 
177 {
178  SwWrtShell &rSh = GetShell();
179  rSh.addCurrentPosition();
181 
182  switch( rReq.GetSlot() )
183  {
184  case FN_START_OF_NEXT_PAGE_SEL :
185  rSh.SttNxtPg( true );
186  break;
188  rSh.SttNxtPg();
189  break;
190  case FN_END_OF_NEXT_PAGE_SEL:
191  rSh.EndNxtPg( true );
192  break;
193  case FN_END_OF_NEXT_PAGE:
194  rSh.EndNxtPg();
195  break;
196  case FN_START_OF_PREV_PAGE_SEL:
197  rSh.SttPrvPg( true );
198  break;
200  rSh.SttPrvPg();
201  break;
202  case FN_END_OF_PREV_PAGE_SEL:
203  rSh.EndPrvPg( true );
204  break;
205  case FN_END_OF_PREV_PAGE:
206  rSh.EndPrvPg();
207  break;
208  case FN_START_OF_PAGE_SEL:
209  rSh.SttPg( true );
210  break;
211  case FN_START_OF_PAGE:
212  rSh.SttPg();
213  break;
214  case FN_END_OF_PAGE_SEL:
215  rSh.EndPg( true );
216  break;
217  case FN_END_OF_PAGE:
218  rSh.EndPg();
219  break;
220  default:
221  OSL_FAIL("wrong dispatcher");
222  return;
223  }
224  rReq.Done();
225 }
226 
228 {
229  SwWrtShell &rSh = GetShell();
230  rSh.addCurrentPosition();
231  switch ( rReq.GetSlot() )
232  {
233  case FN_START_OF_COLUMN:
234  rSh.StartOfColumn();
235  break;
236  case FN_END_OF_COLUMN:
237  rSh.EndOfColumn();
238  break;
240  rSh.StartOfNextColumn() ;
241  break;
243  rSh.EndOfNextColumn();
244  break;
246  rSh.StartOfPrevColumn();
247  break;
249  rSh.EndOfPrevColumn();
250  break;
251  default:
252  OSL_FAIL("wrong dispatcher");
253  return;
254  }
255  rReq.Done();
256 }
257 
259 {
260  SwWrtShell &rSh = GetShell();
261  rSh.addCurrentPosition();
263 
264  switch ( rReq.GetSlot() )
265  {
266  case FN_NEXT_WORD_SEL:
267  rSh.NxtWrd( true );
268  break;
269  case FN_NEXT_WORD:
270  rSh.NxtWrd();
271  break;
272  case FN_START_OF_PARA_SEL:
273  rSh.SttPara( true );
274  break;
275  case FN_START_OF_PARA:
276  rSh.SttPara();
277  break;
278  case FN_END_OF_PARA_SEL:
279  rSh.EndPara( true );
280  break;
281  case FN_END_OF_PARA:
282  rSh.EndPara();
283  break;
284  case FN_PREV_WORD_SEL:
285  rSh.PrvWrd( true );
286  break;
287  case FN_PREV_WORD:
288  rSh.PrvWrd();
289  break;
290  case FN_NEXT_SENT_SEL:
291  rSh.FwdSentence( true );
292  break;
293  case FN_NEXT_SENT:
294  rSh.FwdSentence();
295  break;
296  case FN_PREV_SENT_SEL:
297  rSh.BwdSentence( true );
298  break;
299  case FN_PREV_SENT:
300  rSh.BwdSentence();
301  break;
302  case FN_NEXT_PARA:
303  rSh.FwdPara();
304  break;
305  case FN_PREV_PARA:
306  rSh.BwdPara();
307  break;
308  default:
309  OSL_FAIL("wrong dispatcher");
310  return;
311  }
312  rReq.Done();
313 }
314 
316 {
317  SwWrtShell &rSh = GetShell();
318  rSh.addCurrentPosition();
319  const sal_uInt16 nSlot = rReq.GetSlot();
320  bool bSetRetVal = true, bRet = true;
321  switch ( nSlot )
322  {
323  case SID_FM_TOGGLECONTROLFOCUS:
324  {
325  const SwDoc* pDoc = rSh.GetDoc();
326  const SwDocShell* pDocShell = pDoc ? pDoc->GetDocShell() : nullptr;
327  const SwView* pView = pDocShell ? pDocShell->GetView() : nullptr;
328  const FmFormShell* pFormShell = pView ? pView->GetFormShell() : nullptr;
329  SdrView* pDrawView = pView ? pView->GetDrawView() : nullptr;
330  vcl::Window* pWindow = pView ? pView->GetWrtShell().GetWin() : nullptr;
331 
332  OSL_ENSURE( pFormShell && pDrawView && pWindow, "SwXTextView::ExecMoveMisc: no chance!" );
333  if ( !pFormShell || !pDrawView || !pWindow )
334  break;
335 
336  std::unique_ptr< svx::ISdrObjectFilter > pFilter( FmFormShell::CreateFocusableControlFilter(
337  *pDrawView, *pWindow ) );
338  if (!pFilter)
339  break;
340 
341  const SdrObject* pNearestControl = rSh.GetBestObject( true, GotoObjFlags::DrawControl, false, pFilter.get() );
342  if ( !pNearestControl )
343  break;
344 
345  const SdrUnoObj* pUnoObject = dynamic_cast< const SdrUnoObj* >( pNearestControl );
346  OSL_ENSURE( pUnoObject, "SwTextShell::ExecMoveMisc: GetBestObject returned nonsense!" );
347  if ( !pUnoObject )
348  break;
349 
350  pFormShell->ToggleControlFocus( *pUnoObject, *pDrawView, *pWindow );
351  }
352  break;
354  bRet = rSh.GotoObj(true, GotoObjFlags::Any);
355  if(bRet)
356  {
357  rSh.HideCursor();
358  rSh.EnterSelFrameMode();
359  }
360  break;
361  case FN_NEXT_FOOTNOTE:
362  rSh.MoveCursor();
363  bRet = rSh.GotoNextFootnoteAnchor();
364  break;
365  case FN_PREV_FOOTNOTE:
366  rSh.MoveCursor();
367  bRet = rSh.GotoPrevFootnoteAnchor();
368  break;
369  case FN_TO_HEADER:
370  rSh.MoveCursor();
371  if ( FrameTypeFlags::HEADER & rSh.GetFrameType(nullptr,false) )
372  rSh.SttPg();
373  else
374  {
375  bool bMoved = rSh.GotoHeaderText();
376  if ( !bMoved )
377  rSh.SttPg();
378  }
379  bSetRetVal = false;
380  break;
381  case FN_TO_FOOTER:
382  rSh.MoveCursor();
383  if ( FrameTypeFlags::FOOTER & rSh.GetFrameType(nullptr,false) )
384  rSh.EndPg();
385  else
386  {
387  bool bMoved = rSh.GotoFooterText();
388  if ( !bMoved )
389  rSh.EndPg();
390  }
391  bSetRetVal = false;
392  break;
394  rSh.MoveCursor();
395  if ( FrameTypeFlags::FOOTNOTE & rSh.GetFrameType(nullptr,false) )
396  rSh.GotoFootnoteAnchor();
397  else
398  rSh.GotoFootnoteText();
399  bSetRetVal = false;
400  break;
401  case FN_TO_FOOTNOTE_AREA :
402  rSh.GotoFootnoteText();
403  break;
404  case FN_PREV_TABLE:
405  bRet = rSh.MoveTable( GotoPrevTable, fnTableStart);
406  break;
407  case FN_NEXT_TABLE:
408  bRet = rSh.MoveTable(GotoNextTable, fnTableStart);
409  break;
410  case FN_GOTO_NEXT_REGION :
412  break;
413  case FN_GOTO_PREV_REGION :
415  break;
416  case FN_NEXT_TOXMARK:
417  bRet = rSh.GotoNxtPrvTOXMark();
418  break;
419  case FN_PREV_TOXMARK:
420  bRet = rSh.GotoNxtPrvTOXMark( false );
421  break;
422  case FN_NEXT_TBLFML:
423  bRet = rSh.GotoNxtPrvTableFormula();
424  break;
425  case FN_PREV_TBLFML:
426  bRet = rSh.GotoNxtPrvTableFormula( false );
427  break;
428  case FN_NEXT_TBLFML_ERR:
429  bRet = rSh.GotoNxtPrvTableFormula( true, true );
430  break;
431  case FN_PREV_TBLFML_ERR:
432  bRet = rSh.GotoNxtPrvTableFormula( false, true );
433  break;
434  default:
435  OSL_FAIL("wrong dispatcher");
436  return;
437  }
438 
439  if( bSetRetVal )
440  rReq.SetReturnValue(SfxBoolItem( nSlot, bRet ));
441  rReq.Done();
442 
443  bool bInHeader = true;
444  if ( rSh.IsInHeaderFooter( &bInHeader ) )
445  {
446  if ( !bInHeader )
447  {
450  }
451  else
452  {
455  }
456 
457  // Force repaint
458  rSh.GetWin()->Invalidate();
459  }
460  if ( rSh.IsInHeaderFooter() != rSh.IsHeaderFooterEdit() )
462 }
463 
464 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
SfxViewFrame * GetViewFrame() const
#define FN_START_OF_PREV_COLUMN
Definition: cmdid.h:689
bool Right(sal_uInt16 nMode, bool bSelect, sal_uInt16 nCount, bool bBasicCall, bool bVisual=false)
Definition: move.cxx:127
void NxtWrd(bool bSelect=false)
Definition: wrtsh.hxx:211
bool SelNearestWrd()
Definition: select.cxx:62
#define FN_TO_FOOTNOTE_AREA
Definition: cmdid.h:704
bool SttPara(bool bSelect=false)
Definition: move.cxx:356
void ExecMoveCol(SfxRequest &)
Definition: txtcrsr.cxx:227
void ExecBasicMove(SfxRequest &)
Definition: txtcrsr.cxx:45
bool EndPg(bool bSelect=false)
Definition: move.cxx:350
void ToggleControlFocus(const SdrUnoObj &i_rNextCandidate, const SdrView &i_rView, OutputDevice &i_rDevice) const
void EndOfPrevColumn()
Definition: move.cxx:402
SwView & GetView()
Definition: basesh.hxx:59
#define FN_TO_FOOTER
Definition: cmdid.h:700
#define FN_END_OF_NEXT_COLUMN
Definition: cmdid.h:688
#define FN_PREV_FOOTNOTE
Definition: cmdid.h:694
bool GotoPrevTable(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosTable, bool bInReadOnly)
Definition: trvltbl.cxx:481
SwDocShell * GetDocShell()
Definition: doc.hxx:1354
#define FN_PREV_SENT
Definition: cmdid.h:659
bool GotoNextFootnoteAnchor()
Definition: trvlfnfl.cxx:333
void StartOfPrevColumn()
Definition: move.cxx:396
#define FN_START_OF_PREV_PAGE
Definition: cmdid.h:648
SwWrtShell & GetShell()
Definition: basesh.cxx:2700
bool SttNxtPg(bool bSelect=false)
Definition: move.cxx:320
bool LeftMargin(bool bSelect, bool bBasicCall)
Definition: move.cxx:174
virtual void SetShowHeaderFooterSeparator(FrameControlType eControl, bool bShow) override
Definition: wrtsh1.cxx:1884
bool EndPrvPg(bool bSelect=false)
Definition: move.cxx:338
Definition: doc.hxx:187
bool GotoFootnoteAnchor()
jump from footnote to anchor
Definition: trvlfnfl.cxx:162
SwEditWin & GetEditWin()
Definition: view.hxx:403
void Done(bool bRemove=false)
#define FN_GOTO_PREV_REGION
Definition: cmdid.h:437
#define FN_TO_HEADER
Definition: cmdid.h:699
#define FN_NEXT_TABLE
Definition: cmdid.h:684
const SfxItemSet * GetArgs() const
bool GotoNxtPrvTableFormula(bool bNext=true, bool bOnlyErrors=false)
Jump to next/previous table formula Optionally it is possible to also jump to broken formulas...
Definition: crstrvl.cxx:386
bool GotoHeaderText()
jump from the content to the header
Definition: crstrvl.cxx:128
void FlushInBuffer()
Character buffer is inserted into the document.
Definition: edtwin.cxx:873
void SetUseInputLanguage(bool bNew)
#i42732# display status of font size/name depending on either the input language or the selection pos...
Definition: edtwin.cxx:6445
void SttPrvPg(bool bSelect=false)
Definition: move.cxx:326
SwWrtShell & GetWrtShell() const
Definition: view.hxx:400
Used by the UI to modify the document model.
Definition: wrtsh.hxx:91
bool IsHeaderFooterEdit() const
Acts both for headers / footers, depending on the bShow(Header|Footer)Separator flags.
Definition: viewsh.hxx:562
void SetSlot(sal_uInt16 nNewSlot)
#define FN_SELECT_WORD
Definition: cmdid.h:677
bool GotoFootnoteText()
jump from content to footnote
Definition: trvlfnfl.cxx:83
int nCount
void BwdPara()
Definition: wrtsh.hxx:230
bool PrvWrd(bool bSelect=false)
Definition: wrtsh.hxx:212
SwDoc * GetDoc() const
Definition: viewsh.hxx:281
#define FN_NEXT_TBLFML
Definition: cmdid.h:716
#define FN_START_OF_LINE
Definition: cmdid.h:643
#define FN_LINE_UP
Definition: cmdid.h:641
void ExecMovePage(SfxRequest &)
Definition: txtcrsr.cxx:176
#define FN_CNTNT_TO_NEXT_FRAME
Definition: cmdid.h:696
void ExecMoveLingu(SfxRequest &)
Definition: txtcrsr.cxx:258
virtual FmFormShell * GetFormShell() override
Definition: view.hxx:565
bool Up(bool bSelect, sal_uInt16 nCount=1, bool bBasicCall=false)
Definition: move.cxx:145
#define FN_CHAR_LEFT
Definition: cmdid.h:639
#define FN_PREV_TOXMARK
Definition: cmdid.h:715
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
int i
#define FN_PREV_TABLE
Definition: cmdid.h:685
Window class for the Writer edit area, this is the one handling mouse and keyboard events and doing t...
Definition: edtwin.hxx:58
#define FN_START_OF_COLUMN
Definition: cmdid.h:652
void BwdSentence(bool bSelect=false)
Definition: wrtsh.hxx:234
void StartOfNextColumn()
Definition: move.cxx:384
const SdrObject * GetBestObject(bool bNext, GotoObjFlags eType, bool bFlat=true, const svx::ISdrObjectFilter *pFilter=nullptr)
Definition: feshview.cxx:1467
SfxBindings & GetBindings()
virtual void Invalidate(InvalidateFlags nFlags=InvalidateFlags::NONE)
void SelSentence(const Point *)
Definition: select.cxx:90
#define FN_GOTO_NEXT_REGION
Definition: cmdid.h:436
bool RightMargin(bool bSelect, bool bBasicCall)
Definition: move.cxx:190
#define FN_PREV_TBLFML_ERR
Definition: cmdid.h:719
#define FN_END_OF_PARA
Definition: cmdid.h:655
void ToggleHeaderFooterEdit()
Definition: fews.cxx:1318
#define FN_START_OF_PAGE
Definition: cmdid.h:650
void StartOfColumn()
Definition: move.cxx:372
#define FN_NEXT_PARA
Definition: cmdid.h:709
void SelAll()
Definition: select.cxx:122
bool StartOfSection(bool bSelect=false)
Definition: move.cxx:308
void FwdSentence(bool bSelect=false)
Definition: wrtsh.hxx:232
bool SttPg(bool bSelect=false)
Definition: move.cxx:344
bool GotoPrevFootnoteAnchor()
Definition: trvlfnfl.cxx:338
void SetReturnValue(const SfxPoolItem &)
bool GotoObj(bool bNext, GotoObjFlags eType=GotoObjFlags::DrawAny)
Definition: feshview.cxx:1649
const sal_uInt16 CRSR_SKIP_CELLS
Definition: swcrsr.hxx:66
bool GotoNextRegion(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosRegion, bool bInReadOnly)
Definition: trvlreg.cxx:106
void EndOfColumn()
Definition: move.cxx:378
sal_uInt16 GetSlot() const
bool MoveRegion(SwWhichRegion, SwMoveFnCollection const &)
Definition: trvlreg.cxx:236
void addCurrentPosition()
Definition: wrtsh1.cxx:1540
const css::uno::Reference< css::frame::XDispatchRecorder > & GetRecorder() const
#define FN_END_OF_LINE
Definition: cmdid.h:644
#define FN_START_OF_DOCUMENT
Definition: cmdid.h:645
#define FN_START_OF_NEXT_COLUMN
Definition: cmdid.h:687
bool Left(sal_uInt16 nMode, bool bSelect, sal_uInt16 nCount, bool bBasicCall, bool bVisual=false)
Definition: move.cxx:110
SwMoveFnCollection const & fnTableStart
Definition: paminit.cxx:52
#define FN_CHAR_RIGHT
Definition: cmdid.h:640
void MoveCursor(bool bWithSelect=false)
Definition: move.cxx:74
#define FN_PREV_TBLFML
Definition: cmdid.h:717
void EndPara(bool bSelect=false)
Definition: move.cxx:362
#define FN_NEXT_TBLFML_ERR
Definition: cmdid.h:718
bool MoveTable(SwWhichTable, SwMoveFnCollection const &)
Definition: trvltbl.cxx:682
vcl::Window * GetWin() const
Definition: viewsh.hxx:337
#define FN_START_OF_NEXT_PAGE
Definition: cmdid.h:646
#define FN_END_OF_PREV_PAGE
Definition: cmdid.h:649
#define FN_NEXT_WORD
Definition: cmdid.h:656
#define FN_START_OF_PARA
Definition: cmdid.h:654
void ExecMoveMisc(SfxRequest &)
Definition: txtcrsr.cxx:315
#define FN_SELECT_SENTENCE
Definition: cmdid.h:727
#define FN_END_OF_COLUMN
Definition: cmdid.h:653
#define FN_PREV_WORD
Definition: cmdid.h:657
#define FN_PARAM_MOVE_COUNT
Definition: cmdid.h:762
void EndOfNextColumn()
Definition: move.cxx:390
static::std::unique_ptr< svx::ISdrObjectFilter > CreateFocusableControlFilter(const SdrView &i_rView, const OutputDevice &i_rDevice)
#define FN_NEXT_FOOTNOTE
Definition: cmdid.h:693
bool Down(bool bSelect, sal_uInt16 nCount=1, bool bBasicCall=false)
Definition: move.cxx:159
bool GotoPrevRegion(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosRegion, bool bInReadOnly)
Definition: trvlreg.cxx:31
void EndNxtPg(bool bSelect=false)
Definition: move.cxx:332
void AppendItem(const SfxPoolItem &)
bool GotoNxtPrvTOXMark(bool bNext=true)
jump to next/previous index marker
Definition: crstrvl.cxx:505
bool EndOfSection(bool bSelect=false)
Definition: move.cxx:314
bool GotoNextTable(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosTable, bool bInReadOnly)
Definition: trvltbl.cxx:561
#define FN_END_OF_PREV_COLUMN
Definition: cmdid.h:690
const SwView * GetView() const
Definition: docsh.hxx:220
void EnterSelFrameMode(const Point *pStartDrag=nullptr)
Definition: select.cxx:701
#define FN_END_OF_PAGE
Definition: cmdid.h:651
virtual SdrView * GetDrawView() const override
Definition: viewdraw.cxx:617
#define FN_NEXT_TOXMARK
Definition: cmdid.h:714
#define FN_END_OF_NEXT_PAGE
Definition: cmdid.h:647
#define FN_NEXT_SENT
Definition: cmdid.h:658
#define FN_LINE_DOWN
Definition: cmdid.h:642
#define FN_FOOTNOTE_TO_ANCHOR
Definition: cmdid.h:692
bool IsInHeaderFooter(bool *pbInHeader=nullptr) const
Definition: crsrsh.cxx:755
void Ignore()
bool FwdPara()
Definition: wrtsh.hxx:228
FrameTypeFlags GetFrameType(const Point *pPt, bool bStopAtFly) const
For return values see above FrameType.
Definition: fews.cxx:236
void ExecMove(SfxRequest &)
Definition: txtcrsr.cxx:117
void HideCursor()
Definition: crsrsh.cxx:2409
#define FN_PREV_PARA
Definition: cmdid.h:708
Definition: view.hxx:144
#define FN_PARAM_MOVE_SELECTION
Definition: cmdid.h:763
bool GotoFooterText()
jump from the content to the footer
Definition: crstrvl.cxx:156
SwMoveFnCollection const & fnRegionStart
Definition: paminit.cxx:55