summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorSamuel Mehrbrodt <s.mehrbrodt@gmail.com>2013-12-09 11:12:13 +0100
committerCaolán McNamara <caolanm@redhat.com>2014-01-17 15:16:25 +0000
commit0f86895fcd1001324974d644a728152b97b22ab0 (patch)
treeb3ecf3510c2b31d6113f7996173dcbe690cf6d3c /sw
parent769778e489722f454fa3d81ffcf73f1934a0a88b (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.h7
-rw-r--r--sw/sdi/_viewsh.sdi10
-rw-r--r--sw/sdi/swriter.sdi53
-rw-r--r--sw/source/ui/inc/view.hxx2
-rw-r--r--sw/source/ui/ribbar/workctrl.cxx13
-rw-r--r--sw/source/ui/uiview/view2.cxx31
-rw-r--r--sw/uiconfig/swriter/toolbar/findbar.xml4
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>