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 | |
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>
-rw-r--r-- | icon-themes/README | 2 | ||||
-rw-r--r-- | icon-themes/tango/links.txt | 4 | ||||
-rw-r--r-- | officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu | 21 | ||||
-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 |
10 files changed, 123 insertions, 24 deletions
diff --git a/icon-themes/README b/icon-themes/README index 00d9fbcbddc6..b18813a5e55d 100644 --- a/icon-themes/README +++ b/icon-themes/README @@ -78,7 +78,7 @@ How to add a new icon for a new command: </node> Here, you need to define a property named "Properties", with its value set - to 1. (TODO: Check if this step is still necessary.) + to 1 so that the icons show up. - Now, you need to add 2 new icon images under icon-themes/galaxy/cmd/, one for the large size and one for the smaller size. The name of each image diff --git a/icon-themes/tango/links.txt b/icon-themes/tango/links.txt index 3bf1ba3b2789..b615f5e83a3a 100644 --- a/icon-themes/tango/links.txt +++ b/icon-themes/tango/links.txt @@ -94,6 +94,10 @@ sd/imglst/sc27095.png cmd/sc_toggleobjectrotatemode.png cmd/lc_browseforward.png cmd/lc_pagedown.png cmd/lc_navigateforward.png cmd/lc_pagedown.png cmd/lc_nextpage.png cmd/lc_pagedown.png +cmd/lc_scrolltoprevious.png cmd/lc_pageup.png +cmd/sc_scrolltoprevious.png cmd/sc_pageup.png +cmd/lc_scrolltonext.png cmd/lc_pagedown.png +cmd/sc_scrolltonext.png cmd/sc_pagedown.png res/lc06300.png cmd/lc_pagedown.png cmd/lc_insertavmedia.png cmd/lc_avmediaplayer.png cmd/sc_closewin.png cmd/sc_closedoc.png diff --git a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu index 88ec469beb7c..4ed20add73aa 100644 --- a/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu +++ b/officecfg/registry/data/org/openoffice/Office/UI/WriterCommands.xcu @@ -2319,6 +2319,27 @@ <value xml:lang="en-US">Continue previous numbering</value> </prop> </node> + <node oor:name=".uno:NavigationPopup" oor:op="replace"> + <prop oor:name="Label" oor:type="xs:string"> + <value xml:lang="en-US">Navigate by</value> + </prop> + </node> + <node oor:name=".uno:ScrollToPrevious" oor:op="replace"> + <prop oor:name="Label" oor:type="xs:string"> + <value xml:lang="en-US">Previous Element</value> + </prop> + <prop oor:name="Properties" oor:type="xs:int"> + <value>1</value> + </prop> + </node> + <node oor:name=".uno:ScrollToNext" oor:op="replace"> + <prop oor:name="Label" oor:type="xs:string"> + <value xml:lang="en-US">Next Element</value> + </prop> + <prop oor:name="Properties" oor:type="xs:int"> + <value>1</value> + </prop> + </node> <node oor:name=".uno:NavigateBack" oor:op="replace"> <prop oor:name="Label" oor:type="xs:string"> <value xml:lang="en-US">Back</value> 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> |