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 <basic/sbxvar.hxx>
27 #include <sfx2/viewfrm.hxx>
28 #include <sfx2/bindings.hxx>
29 
30 #include <view.hxx>
31 #include <wrtsh.hxx>
32 #include <textsh.hxx>
33 #include <num.hxx>
34 #include <edtwin.hxx>
35 #include <doc.hxx>
36 #include <docsh.hxx>
37 
38 #include <cmdid.h>
39 #include <globals.h>
40 #include <globals.hrc>
41 
42 #include <svx/svdouno.hxx>
43 #include <svx/fmshell.hxx>
44 #include <svx/sdrobjectfilter.hxx>
45 #include <svx/svxids.hrc>
46 #include <outline.hxx>
47 
48 using namespace ::com::sun::star;
49 
51 {
52  SwWrtShell &rSh = GetShell();
54  const SfxItemSet *pArgs = rReq.GetArgs();
55  bool bSelect = false;
56  sal_Int32 nCount = 1;
57  if(pArgs)
58  {
59  const SfxPoolItem *pItem;
60  if(SfxItemState::SET == pArgs->GetItemState(FN_PARAM_MOVE_COUNT, true, &pItem))
61  nCount = static_cast<const SfxInt32Item *>(pItem)->GetValue();
62  if(SfxItemState::SET == pArgs->GetItemState(FN_PARAM_MOVE_SELECTION, true, &pItem))
63  bSelect = static_cast<const SfxBoolItem *>(pItem)->GetValue();
64  }
65  switch(rReq.GetSlot())
66  {
67  case FN_CHAR_LEFT_SEL:
68  rReq.SetSlot( FN_CHAR_LEFT );
69  bSelect = true;
70  break;
71  case FN_CHAR_RIGHT_SEL:
72  rReq.SetSlot( FN_CHAR_RIGHT );
73  bSelect = true;
74  break;
75  case FN_LINE_UP_SEL:
76  rReq.SetSlot( FN_LINE_UP );
77  bSelect = true;
78  break;
79  case FN_LINE_DOWN_SEL:
80  rReq.SetSlot( FN_LINE_DOWN );
81  bSelect = true;
82  break;
83  }
84 
85  uno::Reference< frame::XDispatchRecorder > xRecorder =
87  if ( xRecorder.is() )
88  {
91  }
92  const sal_uInt16 nSlot = rReq.GetSlot();
93  rReq.Done();
94  // Get EditWin before calling the move functions (shell change may occur!)
95  SwEditWin& rTmpEditWin = GetView().GetEditWin();
96  for( sal_Int32 i = 0; i < nCount; i++ )
97  {
98  switch(nSlot)
99  {
100  case FN_CHAR_LEFT:
101  rSh.Left( CRSR_SKIP_CELLS, bSelect, 1, false, true );
102  break;
103  case FN_CHAR_RIGHT:
104  rSh.Right( CRSR_SKIP_CELLS, bSelect, 1, false, true );
105  break;
106  case FN_LINE_UP:
107  rSh.Up( bSelect );
108  break;
109  case FN_LINE_DOWN:
110  rSh.Down( bSelect );
111  break;
112  default:
113  OSL_FAIL("wrong Dispatcher");
114  return;
115  }
116  }
117 
118  //#i42732# - notify the edit window that from now on we do not use the input language
119  rTmpEditWin.SetUseInputLanguage( false );
120 }
121 
123 {
124  SwWrtShell &rSh = GetShell();
125  SwEditWin& rTmpEditWin = GetView().GetEditWin();
126  rTmpEditWin.FlushInBuffer();
127 
128  bool bRet = false;
129  switch ( rReq.GetSlot() )
130  {
131  case FN_START_OF_LINE_SEL:
132  bRet = rSh.LeftMargin( true, false );
133  break;
134  case FN_START_OF_LINE:
135  bRet = rSh.LeftMargin( false, false );
136  break;
137  case FN_END_OF_LINE_SEL:
138  bRet = rSh.RightMargin( true, false );
139  break;
140  case FN_END_OF_LINE:
141  bRet = rSh.RightMargin( false, false );
142  break;
143  case FN_START_OF_DOCUMENT_SEL:
144  bRet = rSh.StartOfSection( true );
145  break;
147  bRet = rSh.StartOfSection();
148  break;
149  case FN_END_OF_DOCUMENT_SEL:
150  bRet = rSh.EndOfSection( true );
151  break;
152  case FN_END_OF_DOCUMENT:
153  bRet = rSh.EndOfSection();
154  break;
155  case FN_SELECT_WORD:
156  bRet = rSh.SelNearestWrd();
157  break;
158  case FN_SELECT_SENTENCE:
159  rSh.SelSentence( nullptr );
160  bRet = true;
161  break;
162  case SID_SELECTALL:
163  rSh.SelAll();
164  bRet = true;
165  break;
166  default:
167  OSL_FAIL("wrong dispatcher");
168  return;
169  }
170 
171  if ( bRet )
172  rReq.Done();
173  else
174  rReq.Ignore();
175 
176  //#i42732# - notify the edit window that from now on we do not use the input language
177  rTmpEditWin.SetUseInputLanguage( false );
178 }
179 
181 {
182  SwWrtShell &rSh = GetShell();
184 
185  switch( rReq.GetSlot() )
186  {
187  case FN_START_OF_NEXT_PAGE_SEL :
188  rSh.SttNxtPg( true );
189  break;
191  rSh.SttNxtPg();
192  break;
193  case FN_END_OF_NEXT_PAGE_SEL:
194  rSh.EndNxtPg( true );
195  break;
196  case FN_END_OF_NEXT_PAGE:
197  rSh.EndNxtPg();
198  break;
199  case FN_START_OF_PREV_PAGE_SEL:
200  rSh.SttPrvPg( true );
201  break;
203  rSh.SttPrvPg();
204  break;
205  case FN_END_OF_PREV_PAGE_SEL:
206  rSh.EndPrvPg( true );
207  break;
208  case FN_END_OF_PREV_PAGE:
209  rSh.EndPrvPg();
210  break;
211  case FN_START_OF_PAGE_SEL:
212  rSh.SttPg( true );
213  break;
214  case FN_START_OF_PAGE:
215  rSh.SttPg();
216  break;
217  case FN_END_OF_PAGE_SEL:
218  rSh.EndPg( true );
219  break;
220  case FN_END_OF_PAGE:
221  rSh.EndPg();
222  break;
223  default:
224  OSL_FAIL("wrong dispatcher");
225  return;
226  }
227  rReq.Done();
228 }
229 
231 {
232  SwWrtShell &rSh = GetShell();
233  switch ( rReq.GetSlot() )
234  {
235  case FN_START_OF_COLUMN:
236  rSh.StartOfColumn();
237  break;
238  case FN_END_OF_COLUMN:
239  rSh.EndOfColumn();
240  break;
242  rSh.StartOfNextColumn() ;
243  break;
245  rSh.EndOfNextColumn();
246  break;
248  rSh.StartOfPrevColumn();
249  break;
251  rSh.EndOfPrevColumn();
252  break;
253  default:
254  OSL_FAIL("wrong dispatcher");
255  return;
256  }
257  rReq.Done();
258 }
259 
261 {
262  SwWrtShell &rSh = GetShell();
264 
265  switch ( rReq.GetSlot() )
266  {
267  case FN_NEXT_WORD_SEL:
268  rSh.NxtWrd( true );
269  break;
270  case FN_NEXT_WORD:
271  rSh.NxtWrd();
272  break;
273  case FN_START_OF_PARA_SEL:
274  rSh.SttPara( true );
275  break;
276  case FN_START_OF_PARA:
277  rSh.SttPara();
278  break;
279  case FN_END_OF_PARA_SEL:
280  rSh.EndPara( true );
281  break;
282  case FN_END_OF_PARA:
283  rSh.EndPara();
284  break;
285  case FN_PREV_WORD_SEL:
286  rSh.PrvWrd( true );
287  break;
288  case FN_PREV_WORD:
289  rSh.PrvWrd();
290  break;
291  case FN_NEXT_SENT_SEL:
292  rSh.FwdSentence( true );
293  break;
294  case FN_NEXT_SENT:
295  rSh.FwdSentence();
296  break;
297  case FN_PREV_SENT_SEL:
298  rSh.BwdSentence( true );
299  break;
300  case FN_PREV_SENT:
301  rSh.BwdSentence();
302  break;
303  case FN_NEXT_PARA:
304  rSh.FwdPara();
305  break;
306  case FN_PREV_PARA:
307  rSh.BwdPara();
308  break;
309  default:
310  OSL_FAIL("wrong dispatcher");
311  return;
312  }
313  rReq.Done();
314 }
315 
317 {
318  SwWrtShell &rSh = GetShell();
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  {
449  rSh.SetShowHeaderFooterSeparator( Header, false );
450  }
451  else
452  {
454  rSh.SetShowHeaderFooterSeparator( Footer, false );
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:671
bool Right(sal_uInt16 nMode, bool bSelect, sal_uInt16 nCount, bool bBasicCall, bool bVisual=false)
Definition: move.cxx:119
void NxtWrd(bool bSelect=false)
Definition: wrtsh.hxx:210
bool SelNearestWrd()
Definition: select.cxx:67
#define FN_TO_FOOTNOTE_AREA
Definition: cmdid.h:686
bool SttPara(bool bSelect=false)
Definition: move.cxx:348
void ExecMoveCol(SfxRequest &)
Definition: txtcrsr.cxx:230
void ExecBasicMove(SfxRequest &)
Definition: txtcrsr.cxx:50
bool EndPg(bool bSelect=false)
Definition: move.cxx:342
void ToggleControlFocus(const SdrUnoObj &i_rNextCandidate, const SdrView &i_rView, OutputDevice &i_rDevice) const
void EndOfPrevColumn()
Definition: move.cxx:394
SwView & GetView()
Definition: basesh.hxx:57
#define FN_TO_FOOTER
Definition: cmdid.h:682
#define FN_END_OF_NEXT_COLUMN
Definition: cmdid.h:670
#define FN_PREV_FOOTNOTE
Definition: cmdid.h:676
bool GotoPrevTable(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosTable, bool bInReadOnly)
Definition: trvltbl.cxx:480
SwDocShell * GetDocShell()
Definition: doc.hxx:1342
#define FN_PREV_SENT
Definition: cmdid.h:641
bool GotoNextFootnoteAnchor()
Definition: trvlfnfl.cxx:327
void StartOfPrevColumn()
Definition: move.cxx:388
#define FN_START_OF_PREV_PAGE
Definition: cmdid.h:630
SwWrtShell & GetShell()
Definition: basesh.cxx:2651
bool SttNxtPg(bool bSelect=false)
Definition: move.cxx:312
bool LeftMargin(bool bSelect, bool bBasicCall)
Definition: move.cxx:166
virtual void SetShowHeaderFooterSeparator(FrameControlType eControl, bool bShow) override
Definition: wrtsh1.cxx:1896
bool EndPrvPg(bool bSelect=false)
Definition: move.cxx:330
Definition: doc.hxx:185
bool GotoFootnoteAnchor()
jump from footnote to anchor
Definition: trvlfnfl.cxx:156
SwEditWin & GetEditWin()
Definition: view.hxx:403
void Done(bool bRemove=false)
#define FN_GOTO_PREV_REGION
Definition: cmdid.h:419
#define FN_TO_HEADER
Definition: cmdid.h:681
#define FN_NEXT_TABLE
Definition: cmdid.h:666
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:416
bool GotoHeaderText()
jump from the content to the header
Definition: crstrvl.cxx:127
void FlushInBuffer()
Character buffer is inserted into the document.
Definition: edtwin.cxx:861
void SetUseInputLanguage(bool bNew)
#i42732# display status of font size/name depending on either the input language or the selection pos...
Definition: edtwin.cxx:6260
void SttPrvPg(bool bSelect=false)
Definition: move.cxx:318
SwWrtShell & GetWrtShell() const
Definition: view.hxx:400
Used by the UI to modify the document model.
Definition: wrtsh.hxx:90
bool IsHeaderFooterEdit() const
Acts both for headers / footers, depending on the bShow(Header|Footer)Separator flags.
Definition: viewsh.hxx:565
void SetSlot(sal_uInt16 nNewSlot)
#define FN_SELECT_WORD
Definition: cmdid.h:659
bool GotoFootnoteText()
jump from content to footnote
Definition: trvlfnfl.cxx:83
void BwdPara()
Definition: wrtsh.hxx:229
bool PrvWrd(bool bSelect=false)
Definition: wrtsh.hxx:211
SwDoc * GetDoc() const
Definition: viewsh.hxx:284
#define FN_NEXT_TBLFML
Definition: cmdid.h:698
#define FN_START_OF_LINE
Definition: cmdid.h:625
#define FN_LINE_UP
Definition: cmdid.h:623
void ExecMovePage(SfxRequest &)
Definition: txtcrsr.cxx:180
#define FN_CNTNT_TO_NEXT_FRAME
Definition: cmdid.h:678
void ExecMoveLingu(SfxRequest &)
Definition: txtcrsr.cxx:260
virtual FmFormShell * GetFormShell() override
Definition: view.hxx:565
bool Up(bool bSelect, sal_uInt16 nCount=1, bool bBasicCall=false)
Definition: move.cxx:137
#define FN_CHAR_LEFT
Definition: cmdid.h:621
#define FN_PREV_TOXMARK
Definition: cmdid.h:697
SfxItemState GetItemState(sal_uInt16 nWhich, bool bSrchInParent=true, const SfxPoolItem **ppItem=nullptr) const
#define FN_PREV_TABLE
Definition: cmdid.h:667
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:634
void BwdSentence(bool bSelect=false)
Definition: wrtsh.hxx:233
void StartOfNextColumn()
Definition: move.cxx:376
const SdrObject * GetBestObject(bool bNext, GotoObjFlags eType, bool bFlat=true, const svx::ISdrObjectFilter *pFilter=nullptr)
Definition: feshview.cxx:1476
SfxBindings & GetBindings()
int i
virtual void Invalidate(InvalidateFlags nFlags=InvalidateFlags::NONE)
void SelSentence(const Point *)
Definition: select.cxx:95
#define FN_GOTO_NEXT_REGION
Definition: cmdid.h:418
bool RightMargin(bool bSelect, bool bBasicCall)
Definition: move.cxx:182
#define FN_PREV_TBLFML_ERR
Definition: cmdid.h:701
#define FN_END_OF_PARA
Definition: cmdid.h:637
void ToggleHeaderFooterEdit()
Definition: fews.cxx:1344
#define FN_START_OF_PAGE
Definition: cmdid.h:632
void StartOfColumn()
Definition: move.cxx:364
#define FN_NEXT_PARA
Definition: cmdid.h:691
void SelAll()
Definition: select.cxx:127
bool StartOfSection(bool bSelect=false)
Definition: move.cxx:300
void FwdSentence(bool bSelect=false)
Definition: wrtsh.hxx:231
bool SttPg(bool bSelect=false)
Definition: move.cxx:336
bool GotoPrevFootnoteAnchor()
Definition: trvlfnfl.cxx:332
void SetReturnValue(const SfxPoolItem &)
bool GotoObj(bool bNext, GotoObjFlags eType=GotoObjFlags::DrawAny)
Definition: feshview.cxx:1658
const sal_uInt16 CRSR_SKIP_CELLS
Definition: swcrsr.hxx:64
bool GotoNextRegion(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosRegion, bool bInReadOnly)
Definition: trvlreg.cxx:104
void EndOfColumn()
Definition: move.cxx:370
sal_uInt16 GetSlot() const
bool MoveRegion(SwWhichRegion, SwMoveFnCollection const &)
Definition: trvlreg.cxx:232
const css::uno::Reference< css::frame::XDispatchRecorder > & GetRecorder() const
#define FN_END_OF_LINE
Definition: cmdid.h:626
#define FN_START_OF_DOCUMENT
Definition: cmdid.h:627
#define FN_START_OF_NEXT_COLUMN
Definition: cmdid.h:669
bool Left(sal_uInt16 nMode, bool bSelect, sal_uInt16 nCount, bool bBasicCall, bool bVisual=false)
Definition: move.cxx:102
SwMoveFnCollection const & fnTableStart
Definition: paminit.cxx:52
#define FN_CHAR_RIGHT
Definition: cmdid.h:622
void MoveCursor(bool bWithSelect=false)
Definition: move.cxx:66
#define FN_PREV_TBLFML
Definition: cmdid.h:699
void EndPara(bool bSelect=false)
Definition: move.cxx:354
#define FN_NEXT_TBLFML_ERR
Definition: cmdid.h:700
bool MoveTable(SwWhichTable, SwMoveFnCollection const &)
Definition: trvltbl.cxx:681
vcl::Window * GetWin() const
Definition: viewsh.hxx:340
#define FN_START_OF_NEXT_PAGE
Definition: cmdid.h:628
#define FN_END_OF_PREV_PAGE
Definition: cmdid.h:631
Header
#define FN_NEXT_WORD
Definition: cmdid.h:638
#define FN_START_OF_PARA
Definition: cmdid.h:636
void ExecMoveMisc(SfxRequest &)
Definition: txtcrsr.cxx:316
#define FN_SELECT_SENTENCE
Definition: cmdid.h:709
#define FN_END_OF_COLUMN
Definition: cmdid.h:635
#define FN_PREV_WORD
Definition: cmdid.h:639
#define FN_PARAM_MOVE_COUNT
Definition: cmdid.h:739
void EndOfNextColumn()
Definition: move.cxx:382
static::std::unique_ptr< svx::ISdrObjectFilter > CreateFocusableControlFilter(const SdrView &i_rView, const OutputDevice &i_rDevice)
#define FN_NEXT_FOOTNOTE
Definition: cmdid.h:675
bool Down(bool bSelect, sal_uInt16 nCount=1, bool bBasicCall=false)
Definition: move.cxx:151
bool GotoPrevRegion(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosRegion, bool bInReadOnly)
Definition: trvlreg.cxx:31
void EndNxtPg(bool bSelect=false)
Definition: move.cxx:324
void AppendItem(const SfxPoolItem &)
bool GotoNxtPrvTOXMark(bool bNext=true)
jump to next/previous index marker
Definition: crstrvl.cxx:531
bool EndOfSection(bool bSelect=false)
Definition: move.cxx:306
bool GotoNextTable(SwPaM &rCurrentCursor, SwMoveFnCollection const &fnPosTable, bool bInReadOnly)
Definition: trvltbl.cxx:560
#define FN_END_OF_PREV_COLUMN
Definition: cmdid.h:672
const SwView * GetView() const
Definition: docsh.hxx:220
void EnterSelFrameMode(const Point *pStartDrag=nullptr)
Definition: select.cxx:706
#define FN_END_OF_PAGE
Definition: cmdid.h:633
virtual SdrView * GetDrawView() const override
Definition: viewdraw.cxx:622
#define FN_NEXT_TOXMARK
Definition: cmdid.h:696
#define FN_END_OF_NEXT_PAGE
Definition: cmdid.h:629
#define FN_NEXT_SENT
Definition: cmdid.h:640
#define FN_LINE_DOWN
Definition: cmdid.h:624
#define FN_FOOTNOTE_TO_ANCHOR
Definition: cmdid.h:674
bool IsInHeaderFooter(bool *pbInHeader=nullptr) const
Definition: crsrsh.cxx:739
void Ignore()
bool FwdPara()
Definition: wrtsh.hxx:227
FrameTypeFlags GetFrameType(const Point *pPt, bool bStopAtFly) const
For return values see above FrameType.
Definition: fews.cxx:236
void ExecMove(SfxRequest &)
Definition: txtcrsr.cxx:122
void HideCursor()
Definition: crsrsh.cxx:2389
#define FN_PREV_PARA
Definition: cmdid.h:690
Definition: view.hxx:146
#define FN_PARAM_MOVE_SELECTION
Definition: cmdid.h:740
bool GotoFooterText()
jump from the content to the footer
Definition: crstrvl.cxx:155
SwMoveFnCollection const & fnRegionStart
Definition: paminit.cxx:55