diff options
author | nobody <nobody@gnome.org> | 2006-10-19 19:49:31 +0000 |
---|---|---|
committer | nobody <nobody@gnome.org> | 2006-10-19 19:49:31 +0000 |
commit | 9d9cd70f216a910dd3f50337d91665ec2e6fff49 (patch) | |
tree | 78eb70d1a4219da7c8b04febc2199d6855ea7db3 | |
parent | 5c38b43468719b52ac3d680ecd794ecda111b452 (diff) |
This commit was manufactured by cvs2svn to create tagOOO_BUILD_2_0_4_1
'OOO_BUILD_2_0_4_1'.
-rw-r--r-- | NEWS | 53 | ||||
-rw-r--r-- | distro-configs/SUSE-PPC.conf.in | 10 | ||||
-rwxr-xr-x | download.in | 4 | ||||
-rw-r--r-- | patches/src680/apply | 58 | ||||
-rw-r--r-- | patches/src680/ppc-symbols-fix.diff | 49 | ||||
-rw-r--r-- | patches/src680/scp2-parallel-build-fix.diff | 11 | ||||
-rw-r--r-- | patches/vba/sc-source-ui-vba-vbarange-cxx.diff | 136 | ||||
-rw-r--r-- | patches/vba/vba-basic-globals.diff | 13 | ||||
-rw-r--r-- | patches/vba/vba-support-export-palette.diff | 5 |
9 files changed, 224 insertions, 115 deletions
@@ -1,3 +1,54 @@ +ooo-build-2.0.4.1 + + + features: + + common dir for language independent templates (Petr) + + new "Labels" template category (Petr) + + speed up: + + temporary disabled some more dangerous speedup fixes (Rene) + + bug fixes: + + lots VBA fixes (Noel) + + lots fixes from Fedora (Matthias) + + mozab driver path encoding problem on Win32 (Tor) + + build bits: + + build with system icu-3.4 and 3.6 (Rene, Hanno) + + build with recent wizard crash fix (Rene) + + configure check for missing dll on Win32 (Tor) + + parallel build fix (Juerg) + + install SDK only for en-US (Rene) + + enable directx by default on Win32 (Tor) + + updated Debian, Novell bits (Rene, Petr) + +ooo-build-2.0.4 + + + features: + + target OOO_2_0_4 (Petr) + + initial support for cairocanvas on Win32 (Tor) + + allow to build older bytecode with newer JDK (Petr) + + speed up: + + save more space/time/code (Michael) + + temporary disabled some dangerous speedup fixes (Rene) + + bug fixes: + + lots VBA fixes and improvements (Noel, Jiao) + + lots 64bit fixes (Caolan, Matthias, Jan) + + input field dialog improvement (Zhang) + + unopkg fails when Setup.xcu is missing (Rene) + + optional argument issues (Michael) + + use fontconfig for font fallback (Caolan, Matthias, Tor) + + mozilla certificates detection (Rene) + + some i18n support added (Robert) + + wizard crash (Rene) + + build bits: + + build with Xalan >= 2.7.x fix (Petr) + + bashism fixes (Matthias) + + prebuilt mono dlls update (Petr) + + better support for system icu-3.6 (Rene, Caolan, Matthias) + + mono stuff installation without root access (Petr) + + clean up (Petr, Hanno) + + updated Debian, Gentoo, Novell, Ubuntu bits (Rene, Andreas, Petr, + Matthias) + + pending + + enable using Windows Installer patch and upgrade functionality (Tor) + ooo-build-ood680-m4 + features: @@ -23,7 +74,7 @@ ooo-build-ood680-m4 + correct build and installation of the mono stuff (Petr) + updated Debian, Gentoo, Mandriva, Novell, Ubuntu (Rene, Andreas, Giuseppe, Petr, Matthias) -+ pending + + pending + enable using Windows Installer patch and upgrade functionality (Tor) ooo-build-ood680-m2 diff --git a/distro-configs/SUSE-PPC.conf.in b/distro-configs/SUSE-PPC.conf.in index 57a03b159..614f00659 100644 --- a/distro-configs/SUSE-PPC.conf.in +++ b/distro-configs/SUSE-PPC.conf.in @@ -1,13 +1,13 @@ --with-vendor=\"Novell, Inc.\" --disable-access --disable-odk ---enable-gnome-vfs +--disable-qadevooo --enable-libsn --enable-lockdown --enable-mono ---enable-quickstart +--with-ant-home=/usr --with-java=gij ---with-jdk-home=/usr +--with-system-boost --with-system-cairo --with-system-curl --with-system-db @@ -15,6 +15,10 @@ --with-system-libxslt --with-system-neon --with-system-odbc-headers +--with-system-sablot --with-system-sndfile +--with-system-xalan +--with-system-xerces +--with-system-xml-apis --with-xulrunner --without-myspell-dicts diff --git a/download.in b/download.in index 0f8f84ea2..25d092a1e 100755 --- a/download.in +++ b/download.in @@ -27,12 +27,14 @@ sub usage { 'ood680-m.*' => '@MIRROR@/OOD680', 'ooo680-m.*' => '@MIRROR@/OOO680', 'OOO_2_0_2.*' => '@MIRROR@/OOB680', + 'OOO_2_0_3.*' => '@MIRROR@/OOC680', + 'OOO_2_0_4.*' => '@MIRROR@/OOD680', 'images_gnome-.*' => '@MIRROR@/SRC680', 'images_kde-.*' => '@MIRROR@/SRC680', 'extras-.*' => '@MIRROR@/SRC680', 'ooo_custom_images.*' => '@MIRROR@/SRC680', 'ooo_crystal_images.*' => '@MIRROR@/SRC680', - 'cli_types.*' => '@MIRROR@/@MWS@', + 'cli_types.*' => '@MIRROR@/OOD680', 'mdbtools.*' => '@MIRROR@/SRC680', 'libpixman-.*' => '@MIRROR@/SRC680', 'cairo-.*' => '@MIRROR@/SRC680', diff --git a/patches/src680/apply b/patches/src680/apply index ce3d867c8..ac0168d92 100644 --- a/patches/src680/apply +++ b/patches/src680/apply @@ -6,14 +6,14 @@ PATCHPATH=.:../evo2:../vba:../mono:../64bit:../cairo:../scsolver:../gstreamer -OLDEST_SUPPORTED=ood680-m1 +OLDEST_SUPPORTED=ood680-m5 OOO_2_0_4 # -------- Functional sub-sets -------- Common : BuildBits, ParallelMake, TemporaryHacks, FixesNotForUpstream, \ - Fixes, Defaults, Features, VCL, Misc, \ + Fixes, FedoraFixes, Defaults, Features, VCL, Misc, \ Icons, Branding, VBABits, VBAObjects, CalcFixes, Leaks, Egg, \ - QuickStartTray, SpeedImageList, GStreamer, Shrink + QuickStartTray, SpeedImageList, GStreamer LinuxCommon : Common, BuildBitsLinuxOnly, LinuxOnly, SystemBits, CWSBackports, GCJ, \ QPro, Lwp, cairocanvas, msaccess, KDE, \ 64bitPatches, FPickers, Mono, AddressBooks, QuickStarter @@ -133,9 +133,6 @@ smoketest-noinstall.diff, martink # also guess office path from testtool.bin path i#FIXME? testtool-more-defaults.diff, martink -#Fix new file save error in ood-m1 and ood-m2 -#sfx2-docfile-newfilesave.diff, i#69232 jianhua - #Fix plus/minus in to each heading in Navigator plus-minus-sw-navigator.diff, i#64886, n#129410, jianhua @@ -177,10 +174,6 @@ fontconfig-substitute.diff, i#54603, mklose fontconfig-substitute2.diff, i#54603, mklose fontconfig-substitute3.diff, i#54603, mklose -[ TemporaryHacks < ood680-m2 ] -# Fix check for KDE version in configure.in -buildfix-configurein.diff, i#68299, jholesov - [ GCJ ] @@ -217,11 +210,12 @@ uses-vfs.diff, i#43504, michael # add mozilla certificate dir detection to soffice soffice-detect-mozilla-certificates.diff -[ Fixes < ood680-m5 ] -# Fix for unpkg working as root (system-wide extensions) -cws-jl47.diff, i#69642, rengelha [ Fixes ] +# backport revision 1.31.61.1 from cws impress107 to fix crash on +# the impress wizard +sd-slideshowimpl-check-for-viewframe.diff, i#69530 + # let sd accept uri-list drop, n#183719 sd-accept-uri-list-drop.diff, n#183719, rodo @@ -333,6 +327,9 @@ basic-dfltmethod-bug.diff, i#69718, noelpwer # remaining bits from cws sixtyfour08, fixes crash in base on amd64. cws-sixtyfour08.diff, mklose +# Mozilla/Thunderbird addressbook filename encoding issue +mozilla-ab-filename-encoding.diff, i#69327, rvojta + [ Leaks ] # silly leaks around the place @@ -476,7 +473,7 @@ vba-sc-handleautoshapemacro-import.diff, i#59082, noelpwer vba-sc-autoshapes-hyperlinks.diff, i#66550, noelpwer # Shrink CellInfo size -sc-size-fillinfo.diff, i#68672, michael +#sc-size-fillinfo.diff, i#68672, michael # Fix optional argument isses sc-optional.diff, i#70041, michael @@ -721,12 +718,8 @@ sc-standard-filter-options-i18n.diff, i#35579, michael # localization if they are not translated sc-standard-filter-options-i18n-fake.diff, i#66473, pmladek -[ SDFPatches > ood680-m1 ] recovery-disabled-crashreporter-localize.diff, i#65325, jholesov -[ SDFPatches <= ood680-m1 ] -recovery-disabled-crashreporter-localize-ood680-m1.diff, i#65325, jholesov - [ Features ] @@ -736,6 +729,14 @@ session-management.diff, i#63156, rodo # Implementation of the layered accelerators framework-layered-accelerators.diff, i#64717, jholesov +# search <ooo-home>/share/template/common for language independent templates +# will not push it upstream because it will be replaced by upcomming kendy's work +office-cfg-common-template-dir.diff, pmladek + +# add new category "Labels" for blank Labels, calling cards, CD labels, etc. +# will not push it upstream because it will be obsoleted by upcomming kendy's work +sfx2-template-category-labels.diff, pmladek + [ BuildBits ] # do an optimizing link build-optimized-link.diff, michael @@ -789,15 +790,6 @@ lfs.diff, i#26865, rengelha # strictly required on SL10.1/SLED10 where the xulrunner-nss.pc is broken, n#195272 libxmlsec-system-nss.diff, i#69368, pmladek -[ BuildBits < ood680-m2 ] -# forgotten location after the change SalData -> X11SalData -buildfix-vcl-with-libsn-GetX11SalData.diff, i#68668, pmladek - -# fix --enable-symbols build on ppc -ppc-symbols-fix.diff, rengelha - -# fix Xinerama check for X11R7 (regression in m178) -x11r7-fix-xinerama-check.diff, rengelha [ MandrivaOnly ] SectionOwner => gghibo @@ -1474,12 +1466,10 @@ vba_configure_set_soenv_in.diff vba-mscompat-wait.diff, i#64882 vba-support-export-palette.diff, i#68900 -[ VBAObjects > ood680-m6 ] -cws-npower3.diff, i#64377 - -[ VBAObjects <= ood680-m6 ] cws-npower3-m4.diff, i#64377 +vba-basic-array-erase.diff, i#70380 + [ VBAObjects ] vba-basic-default.diff, i#64884 @@ -1772,7 +1762,7 @@ gnome2.16-no-bonobo.diff, doko unxlngi6-notune.diff, doko ubuntu-no-stack-protector.diff, doko -[ DebianBase ] +[ FedoraFixes ] ooo67658.sfx2.reloadcrash.diff ooo67716.svx.overflow.diff ooo67781.sc.reloadhiddenrows.diff @@ -1780,7 +1770,6 @@ ooo67976.svx.macroscrash.diff ooo68048.vcl.imsurroundtext.diff ooo68919.sc.atk.diff ooo69236.slideshow.esccrash.diff -ooo69530.sd.crash.diff oooXXXXX.vcl.x86_64.impressatk.diff workspace.calc39.diff workspace.vcl65.diff @@ -1840,3 +1829,6 @@ size-configmgr-template.diff # kill >1Mb of bloat in sal, i#70166 #size-sal-textenc.diff + +[ ParallelMake ] +scp2-parallel-build-fix.diff diff --git a/patches/src680/ppc-symbols-fix.diff b/patches/src680/ppc-symbols-fix.diff deleted file mode 100644 index e55f763a3..000000000 --- a/patches/src680/ppc-symbols-fix.diff +++ /dev/null @@ -1,49 +0,0 @@ -Index: unxlngppc4.mk -=================================================================== -RCS file: /cvs/tools/solenv/inc/unxlngppc4.mk,v -retrieving revision 1.24 -diff -u -u -r1.24 unxlngppc4.mk ---- solenv/inc/unxlngppc4.mk 5 Jul 2006 22:03:12 -0000 1.24 -+++ solenv/inc/unxlngppc4.mk 3 Aug 2006 11:49:54 -0000 -@@ -103,6 +103,11 @@ - - # Compiler flags for debugging - CFLAGSDEBUG=-g -+.IF "$(ENABLE_SYMBOLS)" == "SMALL" -+CFLAGSENABLESYMBOLS=-g1 -+.ELSE -+CFLAGSENABLESYMBOLS=-g -+.ENDIF - CFLAGSDBGUTIL= - - # Compiler flags for enabling optimizations -Index: unxlngppc.mk -=================================================================== -RCS file: /cvs/tools/solenv/inc/unxlngppc.mk,v -retrieving revision 1.25 -diff -u -u -r1.25 unxlngppc.mk ---- solenv/inc/unxlngppc.mk 5 Jul 2006 22:03:00 -0000 1.25 -+++ solenv/inc/unxlngppc.mk 3 Aug 2006 11:49:54 -0000 -@@ -72,6 +72,12 @@ - # name of C Compiler - CC*=gcc - -+.IF "$(ENABLE_SYMBOLS)" == "SMALL" -+CFLAGSENABLESYMBOLS=-g1 -+.ELSE -+CFLAGSENABLESYMBOLS=-g -+.ENDIF -+ - # source code is still not signed versus unsigned char clean - CFLAGS=-fsigned-char -nostdinc -c - CFLAGSCC=-fsigned-char $(ARCH_FLAGS) ---- config_office/configure.in-old 2006-08-03 14:09:42.000000000 +0200 -+++ config_office/configure.in 2006-08-03 14:10:23.000000000 +0200 -@@ -950,6 +950,7 @@ - else - if test "$enable_symbols" = "SMALL" -o "$enable_symbols" = "small"; then - ENABLE_SYMBOLS="SMALL" -+ AC_MSG_RESULT([yes, small ones]) - else if test "$enable_symbols" != "no" ; then - echo enable symbols is: $enable_symbols - AC_MSG_ERROR([--enable-symbols only accepts yes, TRUE or SMALL as parameter.]) diff --git a/patches/src680/scp2-parallel-build-fix.diff b/patches/src680/scp2-parallel-build-fix.diff new file mode 100644 index 000000000..ffe86d426 --- /dev/null +++ b/patches/src680/scp2-parallel-build-fix.diff @@ -0,0 +1,11 @@ +diff -ur scp2.orig/prj/build.lst scp2/prj/build.lst +--- scp2.orig/prj/build.lst 2006-10-13 14:12:18.000000000 +0200 ++++ scp2/prj/build.lst 2006-10-13 15:48:08.000000000 +0200 +@@ -23,5 +23,5 @@ + cp scp2\source\xsltfilter nmake - all cp_xsltfilter cp_langmacros NULL + cp scp2\source\winexplorerext nmake - all cp_winexplorerext cp_langmacros NULL + cp scp2\source\ure nmake - all cp_ure cp_langmacros NULL +-cp scp2\source\onlineupdate nmake - all cp_update NULL ++cp scp2\source\onlineupdate nmake - all cp_update cp_langmacros NULL + cp scp2\util nmake - all cp_util cp_activex cp_calc cp_canvas cp_crashrep cp_draw cp_gnome cp_graphicfilter cp_impress cp_javafilter cp_kde cp_lingu cp_math cp_ooo cp_python cp_quickstart cp_testtool cp_writer cp_base cp_xsltfilter cp_winexplorerext cp_ure cp_sdkoo cp_update NULL +Only in scp2.orig/prj: .build.lst.swp diff --git a/patches/vba/sc-source-ui-vba-vbarange-cxx.diff b/patches/vba/sc-source-ui-vba-vbarange-cxx.diff index 7eed24954..694861b12 100644 --- a/patches/vba/sc-source-ui-vba-vbarange-cxx.diff +++ b/patches/vba/sc-source-ui-vba-vbarange-cxx.diff @@ -1,6 +1,6 @@ --- /dev/null +++ sc/source/ui/vba/vbarange.cxx -@@ -0,0 +1,2953 @@ +@@ -0,0 +1,3059 @@ +#include <comphelper/processfactory.hxx> +#include <sfx2/objsh.hxx> + @@ -14,6 +14,8 @@ +#include <com/sun/star/text/XTextRange.hpp> +#include <com/sun/star/sheet/XCellRangeAddressable.hpp> +#include <com/sun/star/table/CellRangeAddress.hpp> ++#include <com/sun/star/sheet/XSpreadsheetView.hpp> ++#include <com/sun/star/sheet/XCellRangeReferrer.hpp> +#include <com/sun/star/sheet/XSheetCellRange.hpp> +#include <com/sun/star/sheet/XSpreadsheet.hpp> +#include <com/sun/star/sheet/XSheetCellCursor.hpp> @@ -240,7 +242,8 @@ +ScDocShell* getDocShellFromRange( const uno::Reference< table::XCellRange >& xRange ) +{ + // need the ScCellRangeObj to get docshell -+ ScCellRangeObj* pUno = dynamic_cast< ScCellRangeObj* >( xRange.get() ); ++ ScCellRangeObj* pUno = static_cast< ScCellRangeObj* >( xRange.get() ); ++ + if ( !pUno ) + throw uno::RuntimeException( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Failed to access underlying uno range object" ) ), uno::Reference< uno::XInterface >() ); + return pUno->GetDocShell(); @@ -811,16 +814,18 @@ + USHORT nFlags = 0; + if ( !getCellRangesForAddress( nFlags, sAddress, pDocSh, aCellRanges, eConv ) ) + throw uno::RuntimeException(); ++ ++ bool bTabFromReferrer = !( nFlags & SCA_TAB_3D ); ++ + for ( ScRange* pRange = aCellRanges.First() ; pRange; pRange = aCellRanges.Next() ) + { -+ bool bTabFromReferrer = !( nFlags & SCA_TAB_3D ); -+ pRange->aStart.SetCol( refRange.aStart.Col() + pRange->aStart.Col() ); -+ pRange->aStart.SetRow( refRange.aStart.Row() + pRange->aStart.Row() ); ++ pRange->aStart.SetCol( refRange.aStart.Col() + pRange->aStart.Col() ); ++ pRange->aStart.SetRow( refRange.aStart.Row() + pRange->aStart.Row() ); + pRange->aStart.SetTab( bTabFromReferrer ? refRange.aStart.Tab() : pRange->aStart.Tab() ); -+ pRange->aEnd.SetCol( refRange.aStart.Col() + pRange->aEnd.Col() ); -+ pRange->aEnd.SetRow( refRange.aStart.Row() + pRange->aEnd.Row() ); ++ pRange->aEnd.SetCol( refRange.aStart.Col() + pRange->aEnd.Col() ); ++ pRange->aEnd.SetRow( refRange.aStart.Row() + pRange->aEnd.Row() ); + pRange->aEnd.SetTab( bTabFromReferrer ? refRange.aEnd.Tab() : pRange->aEnd.Tab() ); -+ } ++ } + + // Single range + if ( aCellRanges.First() == aCellRanges.Last() ) @@ -1911,6 +1916,12 @@ +uno::Reference< vba::XRange > +ScVbaRange::Range( const uno::Any &Cell1, const uno::Any &Cell2 ) throw (uno::RuntimeException) +{ ++ return Range( Cell1, Cell2, false ); ++} ++uno::Reference< vba::XRange > ++ScVbaRange::Range( const uno::Any &Cell1, const uno::Any &Cell2, bool bForceUseInpuRangeTab ) throw (uno::RuntimeException) ++ ++{ + RangeHelper thisRange( mxRange ); + uno::Reference< table::XCellRange > xRanges = thisRange.getCellRangeFromSheet(); + uno::Reference< sheet::XCellRangeAddressable > xAddressable( xRanges, uno::UNO_QUERY_THROW ); @@ -1919,6 +1930,8 @@ + xRanges->getCellRangeByPosition( getColumn()-1, getRow()-1, + xAddressable->getRangeAddress().EndColumn, + xAddressable->getRangeAddress().EndRow ); ++ // xAddressable now for this range ++ xAddressable.set( xReferrer, uno::UNO_QUERY_THROW ); + + + if( !Cell1.hasValue() ) @@ -1927,7 +1940,9 @@ + uno::Reference< XInterface >() ); + + table::CellRangeAddress resultAddress; ++ table::CellRangeAddress parentRangeAddress = xAddressable->getRangeAddress(); + ++ ScRange aRange; + // Cell1 defined only + if ( !Cell2.hasValue() ) + { @@ -1952,13 +1967,49 @@ + resultAddress.StartRow = ( cell1.StartRow < cell2.StartRow ) ? cell1.StartRow : cell2.StartRow; + resultAddress.EndColumn = ( cell1.EndColumn > cell2.EndColumn ) ? cell1.EndColumn : cell2.EndColumn; + resultAddress.EndRow = ( cell1.EndRow > cell2.EndRow ) ? cell1.EndRow : cell2.EndRow; ++ if ( bForceUseInpuRangeTab ) ++ { ++ // this is a call from Application.Range( x,y ) ++ // its possiblefor x or y to specify a different sheet from ++ // the current or active on ( but they must be the same ) ++ if ( cell1.Sheet != cell2.Sheet ) ++ throw uno::RuntimeException(); ++ parentRangeAddress.Sheet = cell1.Sheet; ++ } ++ else ++ { ++ // this is not a call from Application.Range( x,y ) ++ // if a different sheet from this range is specified it's ++ // an error ++ if ( parentRangeAddress.Sheet != cell1.Sheet ++ || parentRangeAddress.Sheet != cell2.Sheet ++ ) ++ throw uno::RuntimeException(); ++ ++ } ++ ScUnoConversion::FillScRange( aRange, resultAddress ); ++ } ++ ScRange parentAddress; ++ ScUnoConversion::FillScRange( parentAddress, parentRangeAddress); ++ uno::Reference< table::XCellRange > xCellRange; ++ if ( aRange.aStart.Col() >= 0 && aRange.aStart.Row() >= 0 && aRange.aEnd.Col() >= 0 && aRange.aEnd.Row() >= 0 ) ++ { ++ sal_Int32 nStartX = parentAddress.aStart.Col() + aRange.aStart.Col(); ++ sal_Int32 nStartY = parentAddress.aStart.Row() + aRange.aStart.Row(); ++ sal_Int32 nEndX = parentAddress.aStart.Col() + aRange.aEnd.Col(); ++ sal_Int32 nEndY = parentAddress.aStart.Row() + aRange.aEnd.Row(); ++ ++ if ( nStartX <= nEndX && nEndX <= parentAddress.aEnd.Col() && ++ nStartY <= nEndY && nEndY <= parentAddress.aEnd.Row() ) ++ { ++ ScRange aNew( (SCCOL)nStartX, (SCROW)nStartY, parentAddress.aStart.Tab(), ++ (SCCOL)nEndX, (SCROW)nEndY, parentAddress.aEnd.Tab() ); ++ xCellRange = new ScCellRangeObj( getDocShellFromRange( mxRange ), aNew ); ++ } + } -+ return uno::Reference< vba::XRange > ( new ScVbaRange( m_xContext, -+ xReferrer->getCellRangeByPosition( -+ resultAddress.StartColumn, -+ resultAddress.StartRow, -+ resultAddress.EndColumn, -+ resultAddress.EndRow ) ) ); ++ ++ return uno::Reference< vba::XRange > ( new ScVbaRange( m_xContext, xCellRange ) ); ++ +} + +// Allow access to underlying openoffice uno api ( useful for debugging @@ -2732,7 +2783,7 @@ +uno::Reference< beans::XPropertySetInfo > +ScVbaRange::getPropertySetInfo( ) throw (uno::RuntimeException) +{ -+ uno::Reference< beans::XPropertySetInfo > xInfo( createPropertySetInfo( getInfoHelper() ) ); ++ static uno::Reference< beans::XPropertySetInfo > xInfo( createPropertySetInfo( getInfoHelper() ) ); + return xInfo; +} + @@ -2954,3 +3005,58 @@ + throw uno::RuntimeException( rtl::OUString::createFromAscii("General Error creating range - Unknown" ), uno::Reference< uno::XInterface >() ); + return pUnoRangesBase; +} ++ ++// #TODO remove this ugly application processing ++// Process an application Range request e.g. 'Range("a1,b2,a4:b6") ++uno::Reference< vba::XRange > ++ScVbaRange::ApplicationRange( const uno::Reference< uno::XComponentContext >& xContext, const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException) ++{ ++ // Althought the documentation seems clear that Range without a ++ // qualifier then its a shortcut for ActiveSheet.Range ++ // however, similarly Application.Range is apparently also a ++ // shortcut for ActiveSheet.Range ++ // The is however a subtle behavioural difference I've come across ++ // wrt to named ranges. ++ // If a named range "test" exists { Sheet1!$A1 } and the active sheet ++ // is Sheet2 then the following will fail ++ // msgbox ActiveSheet.Range("test").Address ' failes ++ // msgbox WorkSheets("Sheet2").Range("test").Address ++ // but !!! ++ // msgbox Range("test").Address ' works ++ // msgbox Application.Range("test").Address ' works ++ ++ // Single param Range ++ rtl::OUString sRangeName; ++ Cell1 >>= sRangeName; ++ if ( Cell1.hasValue() && !Cell2.hasValue() && sRangeName.getLength() ) ++ { ++ const static rtl::OUString sNamedRanges( RTL_CONSTASCII_USTRINGPARAM("NamedRanges")); ++ uno::Reference< beans::XPropertySet > xPropSet( getCurrentDocument(), uno::UNO_QUERY_THROW ); ++ ++ uno::Reference< container::XNameAccess > xNamed( xPropSet->getPropertyValue( sNamedRanges ), uno::UNO_QUERY_THROW ); ++ uno::Reference< sheet::XCellRangeReferrer > xReferrer; ++ try ++ { ++ xReferrer.set ( xNamed->getByName( sRangeName ), uno::UNO_QUERY ); ++ } ++ catch( uno::Exception& e ) ++ { ++ // do nothing ++ } ++ if ( xReferrer.is() ) ++ { ++ uno::Reference< table::XCellRange > xRange = xReferrer->getReferredCells(); ++ if ( xRange.is() ) ++ { ++ uno::Reference< vba::XRange > xVbRange = new ScVbaRange( xContext, xRange ); ++ return xVbRange; ++ } ++ } ++ } ++ uno::Reference< sheet::XSpreadsheetView > xView( getCurrentDocument()->getCurrentController(), uno::UNO_QUERY ); ++ uno::Reference< table::XCellRange > xSheetRange( xView->getActiveSheet(), uno::UNO_QUERY_THROW ); ++ ScVbaRange* pRange = new ScVbaRange( xContext, xSheetRange ); ++ uno::Reference< vba::XRange > xVbSheetRange( pRange ); ++ return pRange->Range( Cell1, Cell2, true ); ++} ++ diff --git a/patches/vba/vba-basic-globals.diff b/patches/vba/vba-basic-globals.diff index 5d02b24d4..952c91195 100644 --- a/patches/vba/vba-basic-globals.diff +++ b/patches/vba/vba-basic-globals.diff @@ -24,7 +24,7 @@ diff -u -r1.23 sb.cxx +#ifdef ENABLE_VBA +SbxArray* getVBAGlobals(StarBASIC* pSBasic, const String &rForName ) +{ -+ if ( !SbiRuntime::isVBAEnabled() ) ++ if ( !SbiRuntime::isVBAEnabled() || !pSBasic->IsSet( SBX_GBLSEARCH ) ) + { + return NULL; + } @@ -145,16 +145,9 @@ retrieving revision 1.11 diff -u -r1.11 makefile.mk --- basic/source/classes/makefile.mk 25 Aug 2003 14:51:18 -0000 1.11 +++ basic/source/classes/makefile.mk 12 Aug 2005 09:51:08 -0000 -@@ -66,12 +66,17 @@ - TARGET=classes - LIBTARGET=NO - -+ - # --- Settings ----------------------------------------------------------- - - ENABLE_EXCEPTIONS=TRUE - +@@ -46,6 +46,10 @@ .INCLUDE : settings.mk + .INCLUDE : $(PRJ)$/util$/makefile.pmk +.IF "$(ENABLE_VBA)"=="YES" + CDEFS+=-DENABLE_VBA diff --git a/patches/vba/vba-support-export-palette.diff b/patches/vba/vba-support-export-palette.diff index 4feab0705..fafd2c264 100644 --- a/patches/vba/vba-support-export-palette.diff +++ b/patches/vba/vba-support-export-palette.diff @@ -23,7 +23,7 @@ retrieving revision 1.26 diff -u -p -r1.26 xistyle.cxx --- sc/source/filter/excel/xistyle.cxx 13 Jan 2006 16:58:37 -0000 1.26 +++ sc/source/filter/excel/xistyle.cxx 13 Mar 2006 12:58:17 -0000 -@@ -136,11 +136,72 @@ +@@ -136,11 +136,71 @@ #include "root.hxx" @@ -72,7 +72,7 @@ diff -u -p -r1.26 xistyle.cxx + if( SfxObjectShell* pDocShell = mrRoot.GetDocShell() ) + { + // copy values in color palette -+ sal_Int16 nColors = maColorTable.size() ? maColorTable.size() : GetColorCount(); ++ sal_Int16 nColors = maColorTable.size(); + ColorDataVec aColors; + aColors.resize( nColors ); + for( sal_uInt16 nIndex = 0; nIndex < nColors; ++nIndex ) @@ -93,7 +93,6 @@ diff -u -p -r1.26 xistyle.cxx - XclDefaultPalette( rRoot ) + XclDefaultPalette( rRoot ), mrRoot( rRoot ) { -+ ExportPalette(); } ColorData XclImpPalette::GetColorData( sal_uInt16 nXclIndex ) const |