diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-02-03 11:50:49 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-02-03 11:50:49 +0000 |
commit | 492dafc56c2e1ed1b7918b4cb722dda55db2944a (patch) | |
tree | 7e866dbb508c9f057297212f180f4ed4185f9518 /sc/source/ui/view/cellsh4.cxx | |
parent | 433eb973eea474af26a2a57f9db10702e9c78f8f (diff) |
INTEGRATION: CWS calcrtl (1.4.82); FILE MERGED
2003/10/08 09:14:24 nn 1.4.82.2: RESYNC: (1.4-1.5); FILE MERGED
2003/06/30 17:21:38 nn 1.4.82.1: #106948# RTL layout, continued implementation
Diffstat (limited to 'sc/source/ui/view/cellsh4.cxx')
-rw-r--r-- | sc/source/ui/view/cellsh4.cxx | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/sc/source/ui/view/cellsh4.cxx b/sc/source/ui/view/cellsh4.cxx index 2a57c1f19..156d1384c 100644 --- a/sc/source/ui/view/cellsh4.cxx +++ b/sc/source/ui/view/cellsh4.cxx @@ -2,9 +2,9 @@ * * $RCSfile: cellsh4.cxx,v $ * - * $Revision: 1.5 $ + * $Revision: 1.6 $ * - * last change: $Author: obo $ $Date: 2003-09-04 08:04:00 $ + * last change: $Author: hr $ $Date: 2004-02-03 12:50:49 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -81,6 +81,7 @@ #include "scmod.hxx" #include "inputhdl.hxx" #include "inputwin.hxx" +#include "document.hxx" #include "sc.hrc" @@ -92,7 +93,8 @@ void ScCellShell::ExecuteCursor( SfxRequest& rReq ) { - ScTabViewShell* pTabViewShell = GetViewData()->GetViewShell(); + ScViewData* pData = GetViewData(); + ScTabViewShell* pTabViewShell = pData->GetViewShell(); const SfxItemSet* pReqArgs = rReq.GetArgs(); USHORT nSlotId = rReq.GetSlot(); short nRepeat = 1; @@ -122,6 +124,13 @@ void ScCellShell::ExecuteCursor( SfxRequest& rReq ) } } + short nRTLSign = 1; + if ( pData->GetDocument()->IsLayoutRTL( pData->GetTabNo() ) ) + { + //! evaluate cursor movement option? + nRTLSign = -1; + } + // einmal extra, damit der Cursor bei ExecuteInputDirect nicht zuoft gemalt wird: pTabViewShell->HideAllCursors(); @@ -146,19 +155,19 @@ void ScCellShell::ExecuteCursor( SfxRequest& rReq ) break; case SID_CURSORLEFT: - pTabViewShell->MoveCursorRel( -nRepeat, 0, SC_FOLLOW_LINE, bSel, bKeep ); + pTabViewShell->MoveCursorRel( -nRepeat * nRTLSign, 0, SC_FOLLOW_LINE, bSel, bKeep ); break; case SID_CURSORBLKLEFT: - pTabViewShell->MoveCursorArea( -nRepeat, 0, SC_FOLLOW_JUMP, bSel, bKeep ); + pTabViewShell->MoveCursorArea( -nRepeat * nRTLSign, 0, SC_FOLLOW_JUMP, bSel, bKeep ); break; case SID_CURSORRIGHT: - pTabViewShell->MoveCursorRel( nRepeat, 0, SC_FOLLOW_LINE, bSel, bKeep ); + pTabViewShell->MoveCursorRel( nRepeat * nRTLSign, 0, SC_FOLLOW_LINE, bSel, bKeep ); break; case SID_CURSORBLKRIGHT: - pTabViewShell->MoveCursorArea( nRepeat, 0, SC_FOLLOW_JUMP, bSel, bKeep ); + pTabViewShell->MoveCursorArea( nRepeat * nRTLSign, 0, SC_FOLLOW_JUMP, bSel, bKeep ); break; case SID_CURSORPAGEDOWN: |