ooo-build r12182 - in trunk: . patches/src680 patches/vba
- From: noelpwer svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r12182 - in trunk: . patches/src680 patches/vba
- Date: Wed, 16 Apr 2008 11:31:40 +0100 (BST)
Author: noelpwer
Date: Wed Apr 16 11:31:40 2008
New Revision: 12182
URL: http://svn.gnome.org/viewvc/ooo-build?rev=12182&view=rev
Log:
2008-04-16 Noel Power <noel power novell com>
* patches/src680/apply: enable vba-fixup-singlerange-sheetref.diff
a fix for n#309981
* patches/vba/vba-fixup-singlerange-sheetref.diff: fix for n#309981
Added:
trunk/patches/vba/vba-fixup-singlerange-sheetref.diff
Modified:
trunk/ChangeLog
trunk/patches/src680/apply
Modified: trunk/patches/src680/apply
==============================================================================
--- trunk/patches/src680/apply (original)
+++ trunk/patches/src680/apply Wed Apr 16 11:31:40 2008
@@ -1465,7 +1465,8 @@
# fix for n#365557. missing APIs of XInterior
vba-interior.diff, n#365557, Jianhua
vba-stringtodouble.diff, n#359943, noelpwer
-
+#fix for n#309981
+vba-fixup-singlerange-sheetref.diff, n#309981, noelpwer
[ VBAUntested ]
SectionOwner => noelpwer
basic-source-classes-eventatt-cxx.diff, #no-upstream
Added: trunk/patches/vba/vba-fixup-singlerange-sheetref.diff
==============================================================================
--- (empty file)
+++ trunk/patches/vba/vba-fixup-singlerange-sheetref.diff Wed Apr 16 11:31:40 2008
@@ -0,0 +1,62 @@
+Index: sc/inc/address.hxx
+===================================================================
+RCS file: /cvs/sc/sc/inc/address.hxx,v
+retrieving revision 1.14
+diff -u -p -u -p -r1.14 address.hxx
+--- sc/inc/address.hxx 27 Sep 2007 13:51:08 -0000 1.14
++++ sc/inc/address.hxx 15 Apr 2008 11:48:23 -0000
+@@ -221,6 +221,9 @@ inline bool ValidColRowTab( SCCOL nCol,
+ #define SCA_VALID_ROW 0x0100
+ #define SCA_VALID_COL 0x0200
+ #define SCA_VALID_TAB 0x0400
++// SCA_BITS is a convience for
++// (SCA_VALID_TAB | SCA_VALID_COL | SCA_VALID_ROW | SCA_TAB_3D | SCA_TAB_ABSOLUTE | SCA_ROW_ABSOLUTE | SCA_COL_ABSOLUTE)
++#define SCA_BITS 0x070F
+ // somewhat cheesy kludge to force the display of the document name even for
+ // local references. Requires TAB_3D to be valid
+ #define SCA_FORCE_DOC 0x0800
+Index: sc/source/core/tool/rangelst.cxx
+===================================================================
+RCS file: /cvs/sc/sc/source/core/tool/rangelst.cxx,v
+retrieving revision 1.10
+diff -u -p -u -p -r1.10 rangelst.cxx
+--- sc/source/core/tool/rangelst.cxx 27 Feb 2007 12:18:02 -0000 1.10
++++ sc/source/core/tool/rangelst.cxx 15 Apr 2008 11:48:41 -0000
+@@ -109,15 +109,18 @@ USHORT ScRangeList::Parse( const String&
+ for ( USHORT i=0; i<nTCount; i++ )
+ {
+ aOne = rStr.GetToken( i, cDelimiter );
+- // FIXME : broken for Lotus
+- if ( aOne.Search( ':' ) == STRING_NOTFOUND )
+- { // Range muss es sein
+- String aStrTmp( aOne );
+- aOne += ':';
+- aOne += aStrTmp;
+- }
+ aRange.aStart.SetTab( nTab ); // Default Tab wenn nicht angegeben
+- USHORT nRes = aRange.Parse( aOne, pDoc, eConv );
++ USHORT nRes = aRange.ParseAny( aOne, pDoc, eConv );
++ USHORT nEndRangeBits = SCA_VALID_COL2 | SCA_VALID_ROW2 |
++SCA_VALID_TAB2;
++ USHORT nTmp1 = ( nRes & SCA_BITS );
++ USHORT nTmp2 = ( nRes & nEndRangeBits );
++ // If we have a valid single range with
++ // any of the address bits we are interested in
++ // set - set the equiv end range bits
++ if ( (nRes & SCA_VALID ) && nTmp1 && ( nTmp2 != nEndRangeBits ) )
++ nRes |= ( nTmp1 << 4 );
++
+ if ( (nRes & nMask) == nMask )
+ Append( aRange );
+ nResult &= nRes; // alle gemeinsamen Bits bleiben erhalten
+--- sc/source/core/tool/address.cxx 18 Jan 2008 14:33:24 -0000 1.9.248.1
++++ sc/source/core/tool/address.cxx 15 Apr 2008 11:49:25 -0000
+@@ -1027,7 +1098,7 @@ lcl_ScRange_Parse_OOo( ScRange &aRange,
+ }
+ nRes1 = ( ( nRes1 | nRes2 ) & SCA_VALID )
+ | nRes1
+- | ( ( nRes2 & 0x070F ) << 4 );
++ | ( ( nRes2 & SCA_BITS ) << 4 );
+ return nRes1;
+ }
+
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]