diff options
author | Samuel Mehrbrodt <s.mehrbrodt@gmail.com> | 2013-12-09 11:12:13 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-01-17 15:16:25 +0000 |
commit | 0f86895fcd1001324974d644a728152b97b22ab0 (patch) | |
tree | b3ecf3510c2b31d6113f7996173dcbe690cf6d3c /sw | |
parent | 769778e489722f454fa3d81ffcf73f1934a0a88b (diff) |
Add the Navigation buttons to the Search toolbar
They were remove from below the scrollbar before and it was decided to put them on the Search toolbar: http://nabble.documentfoundation.org/Libreoffice-ux-advise-Remove-the-Navigator-button-below-the-scrollbar-in-Writer-tp4083097p4086370.html
Change-Id: I5f7dfc0aa522e97cf3821c494525c967dcd6a92c
Reviewed-on: https://gerrit.libreoffice.org/7006
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/inc/cmdid.h | 7 | ||||
-rw-r--r-- | sw/sdi/_viewsh.sdi | 10 | ||||
-rw-r--r-- | sw/sdi/swriter.sdi | 53 | ||||
-rw-r--r-- | sw/source/ui/inc/view.hxx | 2 | ||||
-rw-r--r-- | sw/source/ui/ribbar/workctrl.cxx | 13 | ||||
-rw-r--r-- | sw/source/ui/uiview/view2.cxx | 31 | ||||
-rw-r--r-- | sw/uiconfig/swriter/toolbar/findbar.xml | 4 |
7 files changed, 97 insertions, 23 deletions
diff --git a/sw/inc/cmdid.h b/sw/inc/cmdid.h index 2c7afacda34a..4ed35a4d1a8f 100644 --- a/sw/inc/cmdid.h +++ b/sw/inc/cmdid.h @@ -204,8 +204,7 @@ included in c-context files, so c++ style stuff will cause problems. #define FN_DROP_REGION_LINK (FN_VIEW + 38) /**/ #define FN_DROP_REGION_COPY (FN_VIEW + 39) /**/ -#define FN_SCROLL_NAVIGATION (FN_VIEW + 40) /* Navigation Controller in the scrollbar */ -#define FN_SCROLL_NEXT_PREV (FN_VIEW + 41) /* processes MoveType */ +#define FN_SCROLL_NAVIGATION (FN_VIEW + 40) /* Navigation Controller */ #define FN_VIEW_HIDDEN_PARA (FN_VIEW + 42) /* View hidden paragraphs */ #define FN_VIEW_SMOOTH_SCROLL (FN_VIEW + 43) @@ -223,6 +222,10 @@ included in c-context files, so c++ style stuff will cause problems. #define FN_VSCROLL_METRIC (FN_VIEW + 54) /* Metric vertical scrollbar */ #define FN_VIEW_NOTES (FN_VIEW + 55) +#define FN_NAVIGATION_POPUP (FN_VIEW + 56) /* Navigation Popup */ +#define FN_SCROLL_PREV (FN_VIEW + 57) /* uno:ScrollToPrevious */ +#define FN_SCROLL_NEXT (FN_VIEW + 58) /* uno:ScrollToNext */ + /*-------------------------------------------------------------------- Region: Insert --------------------------------------------------------------------*/ diff --git a/sw/sdi/_viewsh.sdi b/sw/sdi/_viewsh.sdi index 54152af3a5be..7513606c2a83 100644 --- a/sw/sdi/_viewsh.sdi +++ b/sw/sdi/_viewsh.sdi @@ -76,7 +76,15 @@ interface BaseTextEditView ExecMethod = NoExec ; StateMethod = NoState ; ] - FN_SCROLL_NEXT_PREV + FN_NAVIGATION_POPUP + [ + ExecMethod = Execute; + ] + FN_SCROLL_PREV + [ + ExecMethod = Execute; + ] + FN_SCROLL_NEXT [ ExecMethod = Execute; ] diff --git a/sw/sdi/swriter.sdi b/sw/sdi/swriter.sdi index 0c7cff7bbea0..675540b0e2ba 100644 --- a/sw/sdi/swriter.sdi +++ b/sw/sdi/swriter.sdi @@ -6803,9 +6803,56 @@ SfxBoolItem ScrollNavigation FN_SCROLL_NAVIGATION GroupId = GID_VIEW; ] -//-------------------------------------------------------------------------- -SfxVoidItem ScrollNextPrev FN_SCROLL_NEXT_PREV -( SfxBoolItem ScrollNextPrev FN_SCROLL_NEXT_PREV ) +SfxVoidItem NavigationPopup FN_NAVIGATION_POPUP +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +SfxVoidItem ScrollToPrevious FN_SCROLL_PREV +() +[ + /* flags: */ + AutoUpdate = FALSE, + Cachable = Cachable, + FastCall = FALSE, + HasCoreId = FALSE, + HasDialog = FALSE, + ReadOnlyDoc = TRUE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + Synchron; + + /* config: */ + AccelConfig = FALSE, + MenuConfig = FALSE, + StatusBarConfig = FALSE, + ToolBoxConfig = FALSE, + GroupId = GID_NAVIGATOR; +] + +SfxVoidItem ScrollToNext FN_SCROLL_NEXT +() [ /* flags: */ AutoUpdate = FALSE, diff --git a/sw/source/ui/inc/view.hxx b/sw/source/ui/inc/view.hxx index f86e1ed6d92d..fb8d0b6a68b2 100644 --- a/sw/source/ui/inc/view.hxx +++ b/sw/source/ui/inc/view.hxx @@ -525,7 +525,7 @@ public: void ChangeTabMetric(FieldUnit eUnit); void GetHRulerMetric(FieldUnit& rToFill) const; - // Handler + // Handler void Execute(SfxRequest&); void ExecPageMove(SfxRequest&); void ExecStyle(SfxRequest&); diff --git a/sw/source/ui/ribbar/workctrl.cxx b/sw/source/ui/ribbar/workctrl.cxx index fe7f1417af9a..31e0f66f2644 100644 --- a/sw/source/ui/ribbar/workctrl.cxx +++ b/sw/source/ui/ribbar/workctrl.cxx @@ -566,15 +566,12 @@ IMPL_LINK(SwScrollNaviPopup, SelectHdl, ToolBox*, pSet) } else { - SfxBoolItem aNext(FN_SCROLL_NEXT_PREV, NID_NEXT == nSet); - Any a; - Sequence< PropertyValue > aArgs( 1 ); - aArgs[0].Name = "ScrollNextPrev"; - aNext.QueryValue( a ); - aArgs[0].Value = a; + Sequence< PropertyValue > aArgs; + OUString cmd(".uno:ScrollToPrevious"); + if (NID_NEXT == nSet) + cmd = OUString(".uno:ScrollToNext"); SfxToolBoxControl::Dispatch( Reference< XDispatchProvider >( GetFrame()->getController(), UNO_QUERY ), - OUString( ".uno:ScrollNextPrev" ), - aArgs ); + cmd, aArgs ); } return 0; } diff --git a/sw/source/ui/uiview/view2.cxx b/sw/source/ui/uiview/view2.cxx index 37a178ac5799..7b10e68fc337 100644 --- a/sw/source/ui/uiview/view2.cxx +++ b/sw/source/ui/uiview/view2.cxx @@ -1006,19 +1006,34 @@ void SwView::Execute(SfxRequest &rReq) lcl_SetAllTextToDefaultLanguage( *m_pWrtShell, RES_CHRATR_CJK_LANGUAGE ); } break; - case FN_SCROLL_NEXT_PREV: - if(pArgs && pArgs->GetItemState(FN_SCROLL_NEXT_PREV, sal_False, &pItem)) + case FN_SCROLL_PREV: + case FN_SCROLL_NEXT: + { + // call the handlers of PageUp/DownButtons, only + bool *pbNext = new bool(true); // FN_SCROLL_NEXT + if (nSlot == FN_SCROLL_PREV) + *pbNext = false; + // #i75416# move the execution of the search to an asynchronously called static link + Application::PostUserEvent( STATIC_LINK(this, SwView, MoveNavigationHdl), pbNext ); + } + break; + case FN_NAVIGATION_POPUP: + { + SfxViewFrame* pVFrame = GetViewFrame(); + SfxChildWindow* pCh = pVFrame->GetChildWindow( SID_NAVIGATOR ); + if (!pCh) { - // call the handlers of PageUp/DownButtons, only - bool* pbNext = new bool ( ((const SfxBoolItem*)pItem)->GetValue() ); - // #i75416# move the execution of the search to an asynchronously called static link - Application::PostUserEvent( STATIC_LINK(this, SwView, MoveNavigationHdl), pbNext ); + pVFrame->ToggleChildWindow( SID_NAVIGATOR ); + pCh = pVFrame->GetChildWindow( SID_NAVIGATOR ); } - break; + ((SwNavigationPI*) pCh->GetContextWindow(SW_MOD()))->CreateNavigationTool( + GetVisArea(), true, &pVFrame->GetWindow()); + } + break; case SID_JUMPTOMARK: if( pArgs && SFX_ITEM_SET == pArgs->GetItemState(SID_JUMPTOMARK, sal_False, &pItem)) JumpToSwMark( (( const SfxStringItem*)pItem)->GetValue() ); - break; + break; case SID_GALLERY : GetViewFrame()->ChildWindowExecute(rReq); break; diff --git a/sw/uiconfig/swriter/toolbar/findbar.xml b/sw/uiconfig/swriter/toolbar/findbar.xml index 4e8ec6ba0743..13e84ad6b8e9 100644 --- a/sw/uiconfig/swriter/toolbar/findbar.xml +++ b/sw/uiconfig/swriter/toolbar/findbar.xml @@ -26,4 +26,8 @@ <toolbar:toolbaritem xlink:href=".uno:MatchCase"/> <toolbar:toolbarseparator/> <toolbar:toolbaritem xlink:href=".uno:SearchDialog"/> + <toolbar:toolbarseparator/> + <toolbar:toolbaritem xlink:href=".uno:ScrollToPrevious"/> + <toolbar:toolbaritem xlink:href=".uno:NavigationPopup"/> + <toolbar:toolbaritem xlink:href=".uno:ScrollToNext"/> </toolbar:toolbar> |