summaryrefslogtreecommitdiff
path: root/sc/source/ui/view/cellsh4.cxx
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2004-02-03 11:50:49 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2004-02-03 11:50:49 +0000
commit492dafc56c2e1ed1b7918b4cb722dda55db2944a (patch)
tree7e866dbb508c9f057297212f180f4ed4185f9518 /sc/source/ui/view/cellsh4.cxx
parent433eb973eea474af26a2a57f9db10702e9c78f8f (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.cxx23
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: