ooo-build r15364 - in trunk: . patches/dev300 patches/gstreamer patches/postgresql patches/scsolver patches/test



Author: strba
Date: Wed Feb 18 11:09:16 2009
New Revision: 15364
URL: http://svn.gnome.org/viewvc/ooo-build?rev=15364&view=rev

Log:
general patch massaging, might break stuff, but we are hackers, so...

Modified:
   trunk/ChangeLog
   trunk/configure.in
   trunk/patches/dev300/2005-express-stl-remove.diff
   trunk/patches/dev300/ark-experimental-gcj-use-ecj.diff
   trunk/patches/dev300/buildfix-x86-64-visibility-workaround.diff
   trunk/patches/dev300/chart-odf-always-calc-a1.diff
   trunk/patches/dev300/config_office-XINC-XLIB-defaults.diff
   trunk/patches/dev300/config_office-liblayout-libfonts.diff
   trunk/patches/dev300/configures-explicit-arch.diff
   trunk/patches/dev300/cws-graphite01-20081226.diff
   trunk/patches/dev300/cws-mdbdriver02.diff
   trunk/patches/dev300/cws-npower11.diff
   trunk/patches/dev300/cygwin-make-ver.diff
   trunk/patches/dev300/default-no-registration-menu-sd.diff
   trunk/patches/dev300/extensions_configure.diff
   trunk/patches/dev300/gnome-vfs-locking-config_office.diff
   trunk/patches/dev300/hunspell-lib-use-_pic.diff
   trunk/patches/dev300/jemalloc.diff
   trunk/patches/dev300/kde4-configure.diff
   trunk/patches/dev300/kde4-fpicker.diff
   trunk/patches/dev300/layout-default-enable-config_office.diff
   trunk/patches/dev300/layout-disable-experimental.diff
   trunk/patches/dev300/layoutdialogs2-development.diff
   trunk/patches/dev300/mozilla-firefox.diff
   trunk/patches/dev300/pdfimport-system-poppler.diff
   trunk/patches/dev300/separate-helpcontent.diff
   trunk/patches/dev300/system-db-4.3-use-lpthread.diff
   trunk/patches/dev300/system-db-check.diff
   trunk/patches/dev300/system-libc.diff
   trunk/patches/dev300/win32-activex-disable.diff
   trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2-m0.diff
   trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2.diff
   trunk/patches/gstreamer/gstreamer-config-office.diff
   trunk/patches/postgresql/sdbc-postgresql-config_office.diff
   trunk/patches/scsolver/scsolver-config-option.diff
   trunk/patches/scsolver/scsolver-config-set-soenv.diff
   trunk/patches/test/speed-ld-flags.diff

Modified: trunk/configure.in
==============================================================================
--- trunk/configure.in	(original)
+++ trunk/configure.in	Wed Feb 18 11:09:16 2009
@@ -1240,7 +1240,7 @@
     SYSTEM_LIBWPD=YES
 else
     SYSTEM_LIBWPD=NO
-    if test -n "$UNSTABLE_WP" = "YES"; then
+    if test "$UNSTABLE_WP" = "YES"; then
 	LIBWPD_TARBALL=libwpd-0.9.0~CVS20081118.tar.gz
     else
 	LIBWPD_TARBALL=libwpd-0.8.14.tar.gz
@@ -1253,7 +1253,7 @@
     SYSTEM_LIBWPS=YES
 else
     SYSTEM_LIBWPS=NO
-    if test -n "$UNSTABLE_WP" = "YES"; then
+    if test "$UNSTABLE_WP" = "YES"; then
 	LIBWPS_TARBALL=libwps-0.2.0~CVS20081118.tar.gz
     else
 	LIBWPS_TARBALL=libwps-0.1.2.tar.gz
@@ -1266,7 +1266,7 @@
     SYSTEM_LIBWPG=YES
 else
     SYSTEM_LIBWPG=NO
-    if test -n "$UNSTABLE_WP" = "YES"; then
+    if test "$UNSTABLE_WP" = "YES"; then
 	LIBWPG_TARBALL=libwpg-0.2.0~CVS20081118.tar.gz
     else
 	LIBWPG_TARBALL=libwpg-0.1.3.tar.gz

Modified: trunk/patches/dev300/2005-express-stl-remove.diff
==============================================================================
--- trunk/patches/dev300/2005-express-stl-remove.diff	(original)
+++ trunk/patches/dev300/2005-express-stl-remove.diff	Wed Feb 18 11:09:16 2009
@@ -134,3 +134,17 @@
  			// now all types between begin and (the old) end which equal aThisRoundType
  			// are moved behind the new end
  		}
+--- connectivity/source/drivers/odbcbase/OStatement.cxx	2006-09-17 04:07:43.000000000 +0100
++++ connectivity/source/drivers/odbcbase/OStatement.cxx	2006-11-09 21:44:59.703125000 +0000
+@@ -199,7 +199,11 @@ Sequence< Type > SAL_CALL OStatement_Bas
+ 	Sequence< Type > aOldTypes = OStatement_BASE::getTypes();
+ 	if ( m_pConnection && !m_pConnection->isAutoRetrievingEnabled() )
+ 	{
++#if defined(_MSC_VER) && (_MSC_VER > 1310) && (_MSC_VER < 1500)
++		remove(aOldTypes.getArray(),aOldTypes.getArray() + aOldTypes.getLength(),
++#else
+ 		::std::remove(aOldTypes.getArray(),aOldTypes.getArray() + aOldTypes.getLength(),
++#endif
+ 						::getCppuType( (const Reference< XGeneratedResultSet > *)0 ));
+ 		aOldTypes.realloc(aOldTypes.getLength() - 1);
+ 	}

Modified: trunk/patches/dev300/ark-experimental-gcj-use-ecj.diff
==============================================================================
--- trunk/patches/dev300/ark-experimental-gcj-use-ecj.diff	(original)
+++ trunk/patches/dev300/ark-experimental-gcj-use-ecj.diff	Wed Feb 18 11:09:16 2009
@@ -21,8 +21,8 @@
  JAVAI+=-Dgnu.gcj.precompiled.db.path=$(GCJ_DATABASE)
  .ENDIF
  
---- config_office/configure.in.ark	2006-04-30 15:34:43.000000000 +0200
-+++ config_office/configure.in	2006-04-30 15:46:00.000000000 +0200
+--- configure.in.ark	2006-04-30 15:34:43.000000000 +0200
++++ configure.in	2006-04-30 15:46:00.000000000 +0200
 @@ -2170,8 +2170,19 @@ dnl ====================================
  dnl Checks for javac
  dnl ===================================================================
@@ -75,8 +75,8 @@
    AC_TRY_EVAL(ant_cmd)
    if test $? = 0 && test -f ./conftest.class ; then
      AC_MSG_RESULT([Ant works]) 
---- config_office/set_soenv.in.ark	2006-04-30 15:34:43.000000000 +0200
-+++ config_office/set_soenv.in	2006-04-30 15:46:00.000000000 +0200
+--- set_soenv.in.ark	2006-04-30 15:34:43.000000000 +0200
++++ set_soenv.in	2006-04-30 15:46:00.000000000 +0200
 @@ -1673,6 +1673,7 @@ if ( '@JDK@' ne '' )
     ToFile( "JDK",             "@JDK@",           "e" );
     ToFile( "JAVAINTERPRETER", "@JAVAINTERPRETER@","e" );

Modified: trunk/patches/dev300/buildfix-x86-64-visibility-workaround.diff
==============================================================================
--- trunk/patches/dev300/buildfix-x86-64-visibility-workaround.diff	(original)
+++ trunk/patches/dev300/buildfix-x86-64-visibility-workaround.diff	Wed Feb 18 11:09:16 2009
@@ -1,4 +1,4 @@
-diff --git a/config_office/configure.in b/config_office/configure.in
+diff --git a/configure.in b/configure.in
 index b2faf3a..68e4904 100644
 --- configure.in.old
 +++ configure.in
@@ -31,7 +31,7 @@
  
  dnl ===================================================================
  dnl allocator
-diff --git a/config_office/set_soenv.in b/config_office/set_soenv.in
+diff --git a/set_soenv.in b/set_soenv.in
 index f1538b9..488597a 100644
 --- set_soenv.in.old
 +++ set_soenv.in

Modified: trunk/patches/dev300/chart-odf-always-calc-a1.diff
==============================================================================
--- trunk/patches/dev300/chart-odf-always-calc-a1.diff	(original)
+++ trunk/patches/dev300/chart-odf-always-calc-a1.diff	Wed Feb 18 11:09:16 2009
@@ -582,15 +582,15 @@
 index deb1e33..7c23cd4 100644
 --- sc/source/filter/xml/XMLStylesExportHelper.cxx
 +++ sc/source/filter/xml/XMLStylesExportHelper.cxx
-@@ -306,7 +306,7 @@ rtl::OUString ScMyValidationsContainer::GetCondition(ScXMLExport& rExport, const
- rtl::OUString ScMyValidationsContainer::GetBaseCellAddress(ScDocument* pDoc, const table::CellAddress& aCell)
- {
- 	rtl::OUString sAddress;
--	ScRangeStringConverter::GetStringFromAddress( sAddress, aCell, pDoc );
-+	ScRangeStringConverter::GetStringFromAddress( sAddress, aCell, pDoc, ::formula::FormulaGrammar::CONV_OOO );
- 	return sAddress;
- }
- 
+@@ -306,7 +306,7 @@
+ rtl::OUString ScMyValidationsContainer::GetBaseCellAddress(ScDocument* pDoc, const table::CellAddress& aCell)
+ {
+ 	rtl::OUString sAddress;
+-	ScRangeStringConverter::GetStringFromAddress( sAddress, aCell, pDoc );
++	ScRangeStringConverter::GetStringFromAddress( sAddress, aCell, pDoc, ::formula::FormulaGrammar::CONV_OOO );
+ 	return sAddress;
+ }
+ 
 diff --git sc/source/filter/xml/XMLTableShapeImportHelper.cxx sc/source/filter/xml/XMLTableShapeImportHelper.cxx
 index 7f9fb3f..ddb902b 100644
 --- sc/source/filter/xml/XMLTableShapeImportHelper.cxx

Modified: trunk/patches/dev300/config_office-XINC-XLIB-defaults.diff
==============================================================================
--- trunk/patches/dev300/config_office-XINC-XLIB-defaults.diff	(original)
+++ trunk/patches/dev300/config_office-XINC-XLIB-defaults.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.orig	2007-07-24 20:03:51.000000000 +0200
-+++ config_office/configure.in	2007-07-24 21:18:11.000000000 +0200
+--- configure.in.orig	2007-07-24 20:03:51.000000000 +0200
++++ configure.in	2007-07-24 21:18:11.000000000 +0200
 @@ -4143,17 +4143,9 @@
  if test -z "$x_libraries"; then
     x_libraries="no_x_libraries"

Modified: trunk/patches/dev300/config_office-liblayout-libfonts.diff
==============================================================================
--- trunk/patches/dev300/config_office-liblayout-libfonts.diff	(original)
+++ trunk/patches/dev300/config_office-liblayout-libfonts.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in-old	2008-02-05 09:22:27.000000000 +0100
-+++ config_office/configure.in	2008-02-05 09:23:17.000000000 +0100
+--- configure.in-old	2008-02-05 09:22:27.000000000 +0100
++++ configure.in	2008-02-05 09:23:17.000000000 +0100
 @@ -391,7 +395,7 @@
  [  --with-librepository-jar=JARFILE   Specify path to jarfile manually ],
  [ LIBREPOSITORY_JAR="$withval"

Modified: trunk/patches/dev300/configures-explicit-arch.diff
==============================================================================
--- trunk/patches/dev300/configures-explicit-arch.diff	(original)
+++ trunk/patches/dev300/configures-explicit-arch.diff	Wed Feb 18 11:09:16 2009
@@ -1,16 +1,16 @@
-? config_office/config.log
-? config_office/config.parms
-? config_office/config.status
-? config_office/findhome.class
-? config_office/findhome.java
-? config_office/set_soenv
-? config_office/warn
+? config.log
+? config.parms
+? config.status
+? findhome.class
+? findhome.java
+? set_soenv
+? warn
 ? libtextcat/unxlngx6.pro
 ? libxmlsec/unxlngx6.pro
 ? libxslt/unxlngx6.pro
-Index: config_office/bootstrap.1
+Index: bootstrap.1
 ===================================================================
-RCS file: /cvs/tools/config_office/bootstrap.1,v
+RCS file: /cvs/tools/bootstrap.1,v
 retrieving revision 1.21
 diff -u -u -r1.21 bootstrap.1
 --- bootstrap.1	26 Jun 2007 17:48:08 -0000	1.21
@@ -29,9 +29,9 @@
  
          ## invoke the gnu make command set by configure.
          $GNUMAKE || exit
-Index: config_office/set_soenv.in
+Index: set_soenv.in
 ===================================================================
-RCS file: /cvs/tools/config_office/set_soenv.in,v
+RCS file: /cvs/tools/set_soenv.in,v
 retrieving revision 1.168.4.1
 diff -u -u -r1.168.4.1 set_soenv.in
 --- set_soenv.in	23 Jan 2008 17:07:28 -0000	1.168.4.1

Modified: trunk/patches/dev300/cws-graphite01-20081226.diff
==============================================================================
--- trunk/patches/dev300/cws-graphite01-20081226.diff	(original)
+++ trunk/patches/dev300/cws-graphite01-20081226.diff	Wed Feb 18 11:09:16 2009
@@ -4336,10 +4336,10 @@
 
  
 
-Index: config_office/configure.in
+Index: configure.in
 ===================================================================
---- config_office/configure.in	(.../tags/DEV300_m35)	(Revision 265804)
-+++ config_office/configure.in	(.../cws/graphite01)	(Revision 265804)
+--- configure.in	(.../tags/DEV300_m35)	(Revision 265804)
++++ configure.in	(.../cws/graphite01)	(Revision 265804)
 @@ -29,6 +29,12 @@
  [  --without-gpc           Use the internal polygon clipping code instead of
                            the external GPC polygon clipping library.
@@ -4393,10 +4393,10 @@
  dnl Checks for libraries.
  dnl ===================================================================
  dnl Check for Mac OS X native GUI, which may be used instead of X11.
-Index: config_office/set_soenv.in
+Index: set_soenv.in
 ===================================================================
---- config_office/set_soenv.in	(.../tags/DEV300_m35)	(Revision 265804)
-+++ config_office/set_soenv.in	(.../cws/graphite01)	(Revision 265804)
+--- set_soenv.in	(.../tags/DEV300_m35)	(Revision 265804)
++++ set_soenv.in	(.../cws/graphite01)	(Revision 265804)
 @@ -1887,6 +1887,10 @@
  ToFile( "ENABLE_DIRECTX",    "@ENABLE_DIRECTX@",    "e" );
  ToFile( "ENABLE_LAYOUT",     "@ENABLE_LAYOUT@",     "e" );

Modified: trunk/patches/dev300/cws-mdbdriver02.diff
==============================================================================
--- trunk/patches/dev300/cws-mdbdriver02.diff	(original)
+++ trunk/patches/dev300/cws-mdbdriver02.diff	Wed Feb 18 11:09:16 2009
@@ -7715,14 +7715,14 @@
  .ENDIF          # "$(TAR_EXCLUDES)"!=""
  
  # Clean PWD to let a build_action=dmake set it with new value. (See iz61212)
-Index: config_office/aclocal.m4
+Index: aclocal.m4
 ===================================================================
-RCS file: /cvs/tools/config_office/aclocal.m4,v
+RCS file: /cvs/tools/aclocal.m4,v
 retrieving revision 1.5
 retrieving revision 1.5.150.2
 diff -u -p -u -p -r1.5 -r1.5.150.2
---- config_office/aclocal.m4	11 Oct 2004 13:47:39 -0000	1.5
-+++ config_office/aclocal.m4	31 Oct 2005 11:42:49 -0000	1.5.150.2
+--- aclocal.m4	11 Oct 2004 13:47:39 -0000	1.5
++++ aclocal.m4	31 Oct 2005 11:42:49 -0000	1.5.150.2
 @@ -1,7 +1,7 @@
 -# generated automatically by aclocal 1.9.1 -*- Autoconf -*-
 +# generated automatically by aclocal 1.9.5 -*- Autoconf -*-
@@ -8777,14 +8777,14 @@
  
  # AM_RUN_LOG(COMMAND)
  # -------------------
-Index: config_office/configure.in
+Index: configure.in
 ===================================================================
-RCS file: /cvs/tools/config_office/configure.in,v
+RCS file: /cvs/tools/configure.in,v
 retrieving revision 1.168
 retrieving revision 1.129.4.15
 diff -u -p -u -p -r1.168 -r1.129.4.15
---- config_office/configure.in	5 Jul 2006 22:32:27 -0000	1.168
-+++ config_office/configure.in	10 Jul 2006 10:46:21 -0000	1.129.4.15
+--- configure.in	5 Jul 2006 22:32:27 -0000	1.168
++++ configure.in	10 Jul 2006 10:46:21 -0000	1.129.4.15
 @@ -122,6 +122,12 @@ AC_ARG_ENABLE(directx,
  AC_ARG_ENABLE(atlmfc,
  [  --disable-atlmfc        Disable the use of ATL/MFC for windows build.
@@ -8844,14 +8844,14 @@
  
  dnl ===================================================================
  dnl Check for system icu
-Index: config_office/set_soenv.in
+Index: set_soenv.in
 ===================================================================
-RCS file: /cvs/tools/config_office/set_soenv.in,v
+RCS file: /cvs/tools/set_soenv.in,v
 retrieving revision 1.107
 retrieving revision 1.71.6.13
 diff -u -p -u -p -r1.107 -r1.71.6.13
---- config_office/set_soenv.in.ark	2006-11-02 13:08:52.000000000 +0100
-+++ config_office/set_soenv.in	2006-11-02 13:09:24.000000000 +0100
+--- set_soenv.in.ark	2006-11-02 13:08:52.000000000 +0100
++++ set_soenv.in	2006-11-02 13:09:24.000000000 +0100
 @@ -1775,6 +1775,10 @@ ToFile( "ENABLE_CUPS",       "@ENABLE_CU
  ToFile( "ENABLE_FONTCONFIG", "@ENABLE_FONTCONFIG@", "e" );
  ToFile( "ENABLE_DIRECTX",    "@ENABLE_DIRECTX@",    "e" );

Modified: trunk/patches/dev300/cws-npower11.diff
==============================================================================
--- trunk/patches/dev300/cws-npower11.diff	(original)
+++ trunk/patches/dev300/cws-npower11.diff	Wed Feb 18 11:09:16 2009
@@ -10548,564 +10548,233 @@
 ===================================================================
 --- sc/source/ui/vba/vbarange.hxx	(.../tags/DEV300_m39)	(revision 266650)
 +++ sc/source/ui/vba/vbarange.hxx	(.../cws/npower11)	(revision 266650)
-@@ -1,275 +1,282 @@
--/*************************************************************************
-- *
-- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-- * 
-- * Copyright 2008 by Sun Microsystems, Inc.
-- *
-- * OpenOffice.org - a multi-platform office productivity suite
-- *
-- * $RCSfile: vbarange.hxx,v $
-- * $Revision: 1.6 $
-- *
-- * This file is part of OpenOffice.org.
-- *
-- * OpenOffice.org is free software: you can redistribute it and/or modify
-- * it under the terms of the GNU Lesser General Public License version 3
-- * only, as published by the Free Software Foundation.
-- *
-- * OpenOffice.org is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- * GNU Lesser General Public License version 3 for more details
-- * (a copy is included in the LICENSE file that accompanied this code).
-- *
-- * You should have received a copy of the GNU Lesser General Public License
-- * version 3 along with OpenOffice.org.  If not, see
-- * <http://www.openoffice.org/license.html>
-- * for a copy of the LGPLv3 License.
-- *
-- ************************************************************************/
--#ifndef SC_VBA_RANGE_HXX
--#define SC_VBA_RANGE_HXX
--
--#include <cppuhelper/implbase4.hxx>
--#include <com/sun/star/container/XEnumerationAccess.hpp>
--
--#include <org/openoffice/excel/XRange.hpp>
--#include <com/sun/star/table/XCellRange.hpp>
--#include <org/openoffice/excel/XFont.hpp>
--#include <org/openoffice/excel/XComment.hpp>
--#include <org/openoffice/vba/XCollection.hpp>
--#include <org/openoffice/excel/XlPasteType.hdl>
--#include <org/openoffice/excel/XlPasteSpecialOperation.hdl>
--
--#include <comphelper/proparrhlp.hxx>
--#include <comphelper/propertycontainer.hxx>
--#include <com/sun/star/beans/XPropertySet.hpp>
--#include <com/sun/star/beans/PropertyAttribute.hpp>
--#include <com/sun/star/script/XDefaultMethod.hpp>
--#include <com/sun/star/script/XDefaultProperty.hpp>
--#include <com/sun/star/sheet/FillDateMode.hpp>
--#include <com/sun/star/sheet/FillMode.hpp>
--#include <com/sun/star/sheet/FillDirection.hpp>
--#include <com/sun/star/sheet/XSpreadsheet.hpp>
--#include <com/sun/star/sheet/XSheetCellRangeContainer.hpp>
--
--//#include "vbahelperinterface.hxx"
--#include "vbaformat.hxx"
--
--class ScTableSheetsObj;
--class ScCellRangesBase;
--
--//typedef InheritedHelperInterfaceImpl1< oo::excel::XRange >  ScVbaRange_BASE;
--typedef ScVbaFormat< oo::excel::XRange > ScVbaRange_BASE;
--
--class ArrayVisitor
--{
--public:
--	virtual void visitNode( sal_Int32 x, sal_Int32 y, const css::uno::Reference< css::table::XCell >& xCell ) = 0;
--	virtual	~ArrayVisitor(){}
--};
--
--class ValueSetter : public ArrayVisitor
--{
--public:
--	virtual bool processValue( const css::uno::Any& aValue, const css::uno::Reference< css::table::XCell >& xCell ) = 0;
--
--
--};
--
--class ValueGetter : public ArrayVisitor
--{
--	
--public:
--	virtual void processValue( sal_Int32 x, sal_Int32 y, const css::uno::Any& aValue ) = 0;
--	virtual const css::uno::Any& getValue() const = 0;
--};
--
--
--
--class ScVbaRange : public ScVbaRange_BASE
--{
--	css::uno::Reference< oo::vba::XCollection > m_Areas;
--	css::uno::Reference< oo::vba::XCollection > m_Borders;
--	css::uno::Reference< css::table::XCellRange > mxRange;
--	css::uno::Reference< css::sheet::XSheetCellRangeContainer > mxRanges;
--	sal_Bool mbIsRows;
--	sal_Bool mbIsColumns;
--	css::uno::Reference< oo::excel::XValidation > m_xValidation;
--	double getCalcColWidth( const css::table::CellRangeAddress& ) throw (css::uno::RuntimeException);
--	double getCalcRowHeight( const css::table::CellRangeAddress& ) throw (css::uno::RuntimeException);
--	void visitArray( ArrayVisitor& vistor );
--
--	css::uno::Reference< oo::excel::XRange > getEntireColumnOrRow( bool bColumn = true ) throw( css::uno::RuntimeException );
--
--	void fillSeries(  css::sheet::FillDirection nFillDirection, css::sheet::FillMode nFillMode, css::sheet::FillDateMode nFillDateMode, double fStep, double fEndValue ) throw( css::uno::RuntimeException );	 
--
--	void ClearContents( sal_Int32 nFlags ) throw (css::uno::RuntimeException);
--	virtual void   setValue( const css::uno::Any& aValue, ValueSetter& setter) throw ( css::uno::RuntimeException);
--	virtual css::uno::Any getValue( ValueGetter& rValueGetter ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any getFormulaValue( formula::FormulaGrammar::Grammar ) throw (css::uno::RuntimeException);
--	virtual void   setFormulaValue( const css::uno::Any& aValue, formula::FormulaGrammar::Grammar ) throw ( css::uno::RuntimeException);
--	css::uno::Reference< oo::excel::XRange > getArea( sal_Int32 nIndex  ) throw( css::uno::RuntimeException );
--	ScCellRangesBase* getCellRangesBase() throw ( css::uno::RuntimeException );
--	SfxItemSet* getCurrentDataSet( )  throw ( css::uno::RuntimeException );
--	css::uno::Reference< oo::vba::XCollection >& getBorders();
--	void groupUnGroup( bool bUnGroup = false ) throw ( css::script::BasicErrorException, css::uno::RuntimeException );
--	css::uno::Reference< oo::excel::XRange > PreviousNext( bool bIsPrevious );
--	css::uno::Reference< oo::excel::XRange > SpecialCellsImpl( sal_Int32 nType, const css::uno::Any& _oValue) throw ( css::script::BasicErrorException );
--	css::awt::Point getPosition() throw ( css::uno::RuntimeException );
--public:
--	ScVbaRange( const css::uno::Reference< oo::vba::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::table::XCellRange >& xRange, sal_Bool bIsRows = false, sal_Bool bIsColumns = false ) throw ( css::lang::IllegalArgumentException );
--	ScVbaRange( const css::uno::Reference< oo::vba::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::sheet::XSheetCellRangeContainer >& xRanges, sal_Bool bIsRows = false, sal_Bool bIsColumns = false ) throw ( css::lang::IllegalArgumentException );
--	ScVbaRange( css::uno::Sequence< css::uno::Any > const& aArgs, css::uno::Reference< css::uno::XComponentContext >const& xContext ) throw ( css::lang::IllegalArgumentException );
--
--	ScDocument* getScDocument();
--	ScDocShell* getScDocShell();
--
--	virtual ~ScVbaRange();
--	virtual css::uno::Reference< oo::vba::XHelperInterface > thisHelperIface() { return this; }
--	bool isSingleCellRange(); 
--	css::uno::Reference< oo::excel::XRange > intersect( const css::uno::Reference< oo::excel::XRange >& xRange ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--        static css::uno::Reference< oo::excel::XRange > getRangeObjectForName( const css::uno::Reference< css::uno::XComponentContext >& xContext, const rtl::OUString& sRangeName, ScDocShell* pDocSh, formula::FormulaGrammar::AddressConvention eConv = formula::FormulaGrammar::CONV_XL_A1  ) throw ( css::uno::RuntimeException );
--
--    // Attributes
--	virtual css::uno::Any SAL_CALL getValue() throw (css::uno::RuntimeException);
--	virtual void   SAL_CALL setValue( const css::uno::Any& aValue ) throw ( css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getFormula() throw (css::uno::RuntimeException);
--	virtual void   SAL_CALL setFormula( const css::uno::Any& rFormula ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getFormulaArray() throw (css::uno::RuntimeException);
--	virtual void   SAL_CALL setFormulaArray(const css::uno::Any& rFormula) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getFormulaR1C1() throw (css::uno::RuntimeException);
--	virtual void   SAL_CALL setFormulaR1C1( const css::uno::Any &rFormula ) throw (css::uno::RuntimeException);
--	virtual ::sal_Int32 SAL_CALL getCount() throw (css::uno::RuntimeException);
--	virtual ::sal_Int32 SAL_CALL getRow() throw (css::uno::RuntimeException);
--	virtual ::sal_Int32 SAL_CALL getColumn() throw (css::uno::RuntimeException);
--	virtual ::rtl::OUString SAL_CALL getText() throw (css::uno::RuntimeException);
--    using ScVbaRange_BASE::setNumberFormat;
--	virtual void SAL_CALL setNumberFormat( const css::uno::Any& rNumberFormat ) throw ( css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getNumberFormat() throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL setMergeCells( const css::uno::Any& bMerge ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getMergeCells() throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL setWrapText( const css::uno::Any& bIsWrapped ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getWrapText() throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL getEntireRow() throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL getEntireColumn() throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XComment > SAL_CALL getComment() throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getHidden() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL setHidden( const css::uno::Any& _hidden ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getColumnWidth() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL setColumnWidth( const css::uno::Any& _columnwidth ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getRowHeight() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL setRowHeight( const css::uno::Any& _rowheight ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getWidth() throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getHeight() throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getTop() throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getLeft() throw (css::uno::RuntimeException);
--	
--	virtual css::uno::Reference< oo::excel::XWorksheet > SAL_CALL getWorksheet() throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getPageBreak() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL setPageBreak( const css::uno::Any& _pagebreak ) throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XValidation > SAL_CALL getValidation() throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getFormulaHidden() throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL setFormulaHidden(const css::uno::Any& aHidden) throw (css::script::BasicErrorException, css::uno::RuntimeException);	
--	// Methods
--	sal_Bool IsRows() { return mbIsRows; }
--	sal_Bool IsColumns() { return mbIsColumns; }
--	virtual css::uno::Reference< oo::excel::XComment > SAL_CALL AddComment( const css::uno::Any& Text ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Clear() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL ClearComments() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL ClearContents() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL ClearFormats() throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL HasFormula() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL FillLeft() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL FillRight() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL FillUp() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL FillDown() throw (css::uno::RuntimeException);
--	virtual	css::uno::Reference< oo::excel::XRange > SAL_CALL Offset( const css::uno::Any &nRowOffset, const css::uno::Any &nColOffset )
--														   throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL CurrentRegion() throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL CurrentArray() throw (css::uno::RuntimeException);
--	virtual ::rtl::OUString SAL_CALL Characters( const css::uno::Any& nIndex, const css::uno::Any& nCount ) 
--												 throw (css::uno::RuntimeException);
--
--	virtual ::rtl::OUString SAL_CALL Address( const css::uno::Any& RowAbsolute, const css::uno::Any& ColumnAbsolute, const css::uno::Any& ReferenceStyle, const css::uno::Any& External, const css::uno::Any& RelativeTo ) throw (css::uno::RuntimeException);
--
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Cells( const css::uno::Any &nRow, const css::uno::Any &nCol ) 
--														  throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Select() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Activate() throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange >  SAL_CALL Rows( const css::uno::Any& nIndex ) throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange >  SAL_CALL Columns( const css::uno::Any &nIndex ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Copy( const css::uno::Any& Destination ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Cut( const css::uno::Any& Destination ) throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Resize( const css::uno::Any& RowSize, const css::uno::Any& ColumnSize ) 
--														   throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XFont > SAL_CALL Font() throw ( css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XInterior > SAL_CALL Interior(  ) throw ( css::script::BasicErrorException, css::uno::RuntimeException) ;
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Range( const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > Range( const css::uno::Any &Cell1, const css::uno::Any &Cell2, bool bForceUseInpuRangeTab ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getCellRange(  ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL PasteSpecial( const css::uno::Any& Paste, const css::uno::Any& Operation, const css::uno::Any& SkipBlanks, const css::uno::Any& Transpose ) throw (css::uno::RuntimeException);
--	virtual ::sal_Bool SAL_CALL Replace( const ::rtl::OUString& What, const ::rtl::OUString& Replacement, const css::uno::Any& LookAt, const css::uno::Any& SearchOrder, const css::uno::Any& MatchCase, const css::uno::Any& MatchByte, const css::uno::Any& SearchFormat, const css::uno::Any& ReplaceFormat ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Sort( const css::uno::Any& Key1, const css::uno::Any& Order1, const css::uno::Any& Key2, const css::uno::Any& Type, const css::uno::Any& Order2, const css::uno::Any& Key3, const css::uno::Any& Order3, const css::uno::Any& Header, const css::uno::Any& OrderCustom, const css::uno::Any& MatchCase, const css::uno::Any& Orientation, const css::uno::Any& SortMethod,  const css::uno::Any& DataOption1, const css::uno::Any& DataOption2, const css::uno::Any& DataOption3 ) throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL End( ::sal_Int32 Direction )  throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XCharacters > SAL_CALL characters( const css::uno::Any& Start, const css::uno::Any& Length ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Delete( const css::uno::Any& Shift ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL Areas( const css::uno::Any& ) throw (css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL Borders( const css::uno::Any& ) throw ( css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL BorderAround( const css::uno::Any& LineStyle, 
--                const css::uno::Any& Weight, const css::uno::Any& ColorIndex, const css::uno::Any& Color ) throw (css::uno::RuntimeException);
--    virtual void SAL_CALL TextToColumns( const css::uno::Any& Destination, const css::uno::Any& DataType, const css::uno::Any& TextQualifier,
--                const css::uno::Any& ConsecutinveDelimiter, const css::uno::Any& Tab, const css::uno::Any& Semicolon, const css::uno::Any& Comma, 
--                const css::uno::Any& Space, const css::uno::Any& Other, const css::uno::Any& OtherChar, const css::uno::Any& FieldInfo,
--                const css::uno::Any& DecimalSeparator, const css::uno::Any& ThousandsSeparator, const css::uno::Any& TrailingMinusNumbers ) throw (css::uno::RuntimeException);
--
--	virtual void SAL_CALL AutoFilter( const css::uno::Any& Field, const css::uno::Any& Criteria1, const css::uno::Any& Operator, const css::uno::Any& Criteria2, const css::uno::Any& VisibleDropDown ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Insert( const css::uno::Any& Shift, const css::uno::Any& CopyOrigin ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL Autofit() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL PrintOut( const css::uno::Any& From, const css::uno::Any& To, const css::uno::Any& Copies, const css::uno::Any& Preview, const css::uno::Any& ActivePrinter, const css::uno::Any& PrintToFile, const css::uno::Any& Collate, const css::uno::Any& PrToFileName ) throw (css::uno::RuntimeException);
--	virtual void SAL_CALL AutoFill( const css::uno::Reference< oo::excel::XRange >& Destination, const css::uno::Any& Type ) throw (css::uno::RuntimeException) ;
--	 void SAL_CALL Calculate(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 
--	virtual void SAL_CALL AutoOutline(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Item( const ::css::uno::Any& row, const css::uno::Any& column ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL ClearOutline(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL Ungroup(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL Group(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL Merge( const css::uno::Any& Across ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL UnMerge(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Any SAL_CALL getStyle() throw (css::uno::RuntimeException);
--	virtual void SAL_CALL setStyle( const css::uno::Any& _style ) throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Next() throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Previous() throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL RemoveSubtotal(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	virtual void SAL_CALL Subtotal( ::sal_Int32 GroupBy, ::sal_Int32 Function, const css::uno::Sequence< ::sal_Int32 >& TotalList, const css::uno::Any& Replace, const css::uno::Any& PageBreaks, const css::uno::Any& SummaryBelowData ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
--	// XEnumerationAccess
--	virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createEnumeration() throw (css::uno::RuntimeException);
--	// XElementAccess
--	virtual css::uno::Type SAL_CALL getElementType() throw (css::uno::RuntimeException)
--	{
--		return oo::excel::XRange::static_type(0);
--
--	}
--	virtual sal_Bool SAL_CALL hasElements() throw (css::uno::RuntimeException);
--	// XDefaultMethod
--	::rtl::OUString SAL_CALL getDefaultMethodName(  ) throw (css::uno::RuntimeException);
--        // XDefaultProperty
--        ::rtl::OUString SAL_CALL getDefaultPropertyName(  ) throw (css::uno::RuntimeException) { return ::rtl::OUString::createFromAscii("Value"); }
--
--
--// #TODO completely rewrite ScVbaRange, its become a hackfest
--// it needs to be closer to ScCellRangeBase in that the underlying
--// object model should probably be a ScRangelst. 
--//     * would be nice to be able to construct a range from an addres only
--//     * or a list of address ( multi-area )
--//     * object should be a lightweight as possible
--//     * we shouldn't need hacks like this below
--	static css::uno::Reference< oo::excel::XRange > ApplicationRange( const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException);
--	virtual sal_Bool SAL_CALL GoalSeek( const css::uno::Any& Goal, const css::uno::Reference< oo::excel::XRange >& ChangingCell ) throw (css::uno::RuntimeException);
--	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL SpecialCells( const css::uno::Any& _oType, const css::uno::Any& _oValue) throw ( css::script::BasicErrorException );  
--	// XHelperInterface
--	virtual rtl::OUString& getServiceImplName();
--	virtual css::uno::Sequence<rtl::OUString> getServiceNames();
--};
--#endif /* SC_VBA_RANGE_HXX */
--
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: vbarange.hxx,v $
-+ * $Revision: 1.6 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+#ifndef SC_VBA_RANGE_HXX
-+#define SC_VBA_RANGE_HXX
-+
-+#include <cppuhelper/implbase4.hxx>
-+#include <com/sun/star/container/XEnumerationAccess.hpp>
-+
+@@ -33,13 +33,13 @@
+ #include <cppuhelper/implbase4.hxx>
+ #include <com/sun/star/container/XEnumerationAccess.hpp>
+ 
+-#include <org/openoffice/excel/XRange.hpp>
 +#include <ooo/vba/excel/XRange.hpp>
-+#include <com/sun/star/table/XCellRange.hpp>
+ #include <com/sun/star/table/XCellRange.hpp>
+-#include <org/openoffice/excel/XFont.hpp>
+-#include <org/openoffice/excel/XComment.hpp>
+-#include <org/openoffice/vba/XCollection.hpp>
+-#include <org/openoffice/excel/XlPasteType.hdl>
+-#include <org/openoffice/excel/XlPasteSpecialOperation.hdl>
 +#include <ooo/vba/excel/XFont.hpp>
 +#include <ooo/vba/excel/XComment.hpp>
 +#include <ooo/vba/XCollection.hpp>
 +#include <ooo/vba/excel/XlPasteType.hdl>
 +#include <ooo/vba/excel/XlPasteSpecialOperation.hdl>
-+
-+#include <comphelper/proparrhlp.hxx>
-+#include <comphelper/propertycontainer.hxx>
-+#include <com/sun/star/beans/XPropertySet.hpp>
-+#include <com/sun/star/beans/PropertyAttribute.hpp>
-+#include <com/sun/star/script/XDefaultMethod.hpp>
-+#include <com/sun/star/script/XDefaultProperty.hpp>
-+#include <com/sun/star/sheet/FillDateMode.hpp>
-+#include <com/sun/star/sheet/FillMode.hpp>
-+#include <com/sun/star/sheet/FillDirection.hpp>
-+#include <com/sun/star/sheet/XSpreadsheet.hpp>
-+#include <com/sun/star/sheet/XSheetCellRangeContainer.hpp>
-+
-+//#include "vbahelperinterface.hxx"
-+#include "vbaformat.hxx"
-+
-+class ScTableSheetsObj;
-+class ScCellRangesBase;
+ 
+ #include <comphelper/proparrhlp.hxx>
+ #include <comphelper/propertycontainer.hxx>
+@@ -58,9 +58,10 @@
+ 
+ class ScTableSheetsObj;
+ class ScCellRangesBase;
 +class ScCellRangeObj;
-+
+ 
+-//typedef InheritedHelperInterfaceImpl1< oo::excel::XRange >  ScVbaRange_BASE;
+-typedef ScVbaFormat< oo::excel::XRange > ScVbaRange_BASE;
 +//typedef InheritedHelperInterfaceImpl1< ov::excel::XRange >  ScVbaRange_BASE;
 +typedef ScVbaFormat< ov::excel::XRange > ScVbaRange_BASE;
-+
-+class ArrayVisitor
-+{
-+public:
-+	virtual void visitNode( sal_Int32 x, sal_Int32 y, const css::uno::Reference< css::table::XCell >& xCell ) = 0;
-+	virtual	~ArrayVisitor(){}
-+};
-+
-+class ValueSetter : public ArrayVisitor
-+{
-+public:
-+	virtual bool processValue( const css::uno::Any& aValue, const css::uno::Reference< css::table::XCell >& xCell ) = 0;
-+
-+
-+};
-+
-+class ValueGetter : public ArrayVisitor
-+{
-+	
-+public:
-+	virtual void processValue( sal_Int32 x, sal_Int32 y, const css::uno::Any& aValue ) = 0;
-+	virtual const css::uno::Any& getValue() const = 0;
-+};
-+
-+
-+
-+class ScVbaRange : public ScVbaRange_BASE
-+{
+ 
+ class ArrayVisitor
+ {
+@@ -89,18 +90,18 @@
+ 
+ class ScVbaRange : public ScVbaRange_BASE
+ {
+-	css::uno::Reference< oo::vba::XCollection > m_Areas;
+-	css::uno::Reference< oo::vba::XCollection > m_Borders;
 +	css::uno::Reference< ov::XCollection > m_Areas;
 +	css::uno::Reference< ov::XCollection > m_Borders;
-+	css::uno::Reference< css::table::XCellRange > mxRange;
-+	css::uno::Reference< css::sheet::XSheetCellRangeContainer > mxRanges;
-+	sal_Bool mbIsRows;
-+	sal_Bool mbIsColumns;
+ 	css::uno::Reference< css::table::XCellRange > mxRange;
+ 	css::uno::Reference< css::sheet::XSheetCellRangeContainer > mxRanges;
+ 	sal_Bool mbIsRows;
+ 	sal_Bool mbIsColumns;
+-	css::uno::Reference< oo::excel::XValidation > m_xValidation;
 +	css::uno::Reference< ov::excel::XValidation > m_xValidation;
-+	double getCalcColWidth( const css::table::CellRangeAddress& ) throw (css::uno::RuntimeException);
-+	double getCalcRowHeight( const css::table::CellRangeAddress& ) throw (css::uno::RuntimeException);
-+	void visitArray( ArrayVisitor& vistor );
-+
+ 	double getCalcColWidth( const css::table::CellRangeAddress& ) throw (css::uno::RuntimeException);
+ 	double getCalcRowHeight( const css::table::CellRangeAddress& ) throw (css::uno::RuntimeException);
+ 	void visitArray( ArrayVisitor& vistor );
+ 
+-	css::uno::Reference< oo::excel::XRange > getEntireColumnOrRow( bool bColumn = true ) throw( css::uno::RuntimeException );
 +	css::uno::Reference< ov::excel::XRange > getEntireColumnOrRow( bool bColumn = true ) throw( css::uno::RuntimeException );
-+
-+	void fillSeries(  css::sheet::FillDirection nFillDirection, css::sheet::FillMode nFillMode, css::sheet::FillDateMode nFillDateMode, double fStep, double fEndValue ) throw( css::uno::RuntimeException );	 
-+
-+	void ClearContents( sal_Int32 nFlags ) throw (css::uno::RuntimeException);
-+	virtual void   setValue( const css::uno::Any& aValue, ValueSetter& setter) throw ( css::uno::RuntimeException);
-+	virtual css::uno::Any getValue( ValueGetter& rValueGetter ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any getFormulaValue( formula::FormulaGrammar::Grammar ) throw (css::uno::RuntimeException);
-+	virtual void   setFormulaValue( const css::uno::Any& aValue, formula::FormulaGrammar::Grammar ) throw ( css::uno::RuntimeException);
+ 
+ 	void fillSeries(  css::sheet::FillDirection nFillDirection, css::sheet::FillMode nFillMode, css::sheet::FillDateMode nFillDateMode, double fStep, double fEndValue ) throw( css::uno::RuntimeException );	 
+ 
+@@ -109,27 +110,27 @@
+ 	virtual css::uno::Any getValue( ValueGetter& rValueGetter ) throw (css::uno::RuntimeException);
+ 	virtual css::uno::Any getFormulaValue( formula::FormulaGrammar::Grammar ) throw (css::uno::RuntimeException);
+ 	virtual void   setFormulaValue( const css::uno::Any& aValue, formula::FormulaGrammar::Grammar ) throw ( css::uno::RuntimeException);
+-	css::uno::Reference< oo::excel::XRange > getArea( sal_Int32 nIndex  ) throw( css::uno::RuntimeException );
 +	css::uno::Reference< ov::excel::XRange > getArea( sal_Int32 nIndex  ) throw( css::uno::RuntimeException );
-+	ScCellRangesBase* getCellRangesBase() throw ( css::uno::RuntimeException );
+ 	ScCellRangesBase* getCellRangesBase() throw ( css::uno::RuntimeException );
 +	ScCellRangeObj* getCellRangeObj( )  throw ( css::uno::RuntimeException );
-+	SfxItemSet* getCurrentDataSet( )  throw ( css::uno::RuntimeException );
+ 	SfxItemSet* getCurrentDataSet( )  throw ( css::uno::RuntimeException );
+-	css::uno::Reference< oo::vba::XCollection >& getBorders();
 +	css::uno::Reference< ov::XCollection >& getBorders();
-+	void groupUnGroup( bool bUnGroup = false ) throw ( css::script::BasicErrorException, css::uno::RuntimeException );
+ 	void groupUnGroup( bool bUnGroup = false ) throw ( css::script::BasicErrorException, css::uno::RuntimeException );
+-	css::uno::Reference< oo::excel::XRange > PreviousNext( bool bIsPrevious );
+-	css::uno::Reference< oo::excel::XRange > SpecialCellsImpl( sal_Int32 nType, const css::uno::Any& _oValue) throw ( css::script::BasicErrorException );
 + 	css::uno::Reference< ov::excel::XRange > PreviousNext( bool bIsPrevious );
 + 	css::uno::Reference< ov::excel::XRange > SpecialCellsImpl( sal_Int32 nType, const css::uno::Any& _oValue) throw ( css::script::BasicErrorException );
-+	css::awt::Point getPosition() throw ( css::uno::RuntimeException );
-+public:
+ 	css::awt::Point getPosition() throw ( css::uno::RuntimeException );
+ public:
+-	ScVbaRange( const css::uno::Reference< oo::vba::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::table::XCellRange >& xRange, sal_Bool bIsRows = false, sal_Bool bIsColumns = false ) throw ( css::lang::IllegalArgumentException );
+-	ScVbaRange( const css::uno::Reference< oo::vba::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::sheet::XSheetCellRangeContainer >& xRanges, sal_Bool bIsRows = false, sal_Bool bIsColumns = false ) throw ( css::lang::IllegalArgumentException );
 +	ScVbaRange( const css::uno::Reference< ov::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::table::XCellRange >& xRange, sal_Bool bIsRows = false, sal_Bool bIsColumns = false ) throw ( css::lang::IllegalArgumentException );
 +	ScVbaRange( const css::uno::Reference< ov::XHelperInterface >& xParent, const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Reference< css::sheet::XSheetCellRangeContainer >& xRanges, sal_Bool bIsRows = false, sal_Bool bIsColumns = false ) throw ( css::lang::IllegalArgumentException );
-+	ScVbaRange( css::uno::Sequence< css::uno::Any > const& aArgs, css::uno::Reference< css::uno::XComponentContext >const& xContext ) throw ( css::lang::IllegalArgumentException );
-+
-+	ScDocument* getScDocument();
-+	ScDocShell* getScDocShell();
-+
-+	virtual ~ScVbaRange();
+ 	ScVbaRange( css::uno::Sequence< css::uno::Any > const& aArgs, css::uno::Reference< css::uno::XComponentContext >const& xContext ) throw ( css::lang::IllegalArgumentException );
+ 
+ 	ScDocument* getScDocument();
+ 	ScDocShell* getScDocShell();
+ 
+ 	virtual ~ScVbaRange();
+-	virtual css::uno::Reference< oo::vba::XHelperInterface > thisHelperIface() { return this; }
 + 	virtual css::uno::Reference< ov::XHelperInterface > thisHelperIface() { return this; }
-+	bool isSingleCellRange(); 
+ 	bool isSingleCellRange(); 
+-	css::uno::Reference< oo::excel::XRange > intersect( const css::uno::Reference< oo::excel::XRange >& xRange ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+-        static css::uno::Reference< oo::excel::XRange > getRangeObjectForName( const css::uno::Reference< css::uno::XComponentContext >& xContext, const rtl::OUString& sRangeName, ScDocShell* pDocSh, formula::FormulaGrammar::AddressConvention eConv = formula::FormulaGrammar::CONV_XL_A1  ) throw ( css::uno::RuntimeException );
 +        static css::uno::Reference< ov::excel::XRange > getRangeObjectForName( const css::uno::Reference< css::uno::XComponentContext >& xContext, const rtl::OUString& sRangeName, ScDocShell* pDocSh, formula::FormulaGrammar::AddressConvention eConv = formula::FormulaGrammar::CONV_XL_A1  ) throw ( css::uno::RuntimeException );
-+
-+    // Attributes
-+	virtual css::uno::Any SAL_CALL getValue() throw (css::uno::RuntimeException);
-+	virtual void   SAL_CALL setValue( const css::uno::Any& aValue ) throw ( css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getFormula() throw (css::uno::RuntimeException);
-+	virtual void   SAL_CALL setFormula( const css::uno::Any& rFormula ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getFormulaArray() throw (css::uno::RuntimeException);
-+	virtual void   SAL_CALL setFormulaArray(const css::uno::Any& rFormula) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getFormulaR1C1() throw (css::uno::RuntimeException);
-+	virtual void   SAL_CALL setFormulaR1C1( const css::uno::Any &rFormula ) throw (css::uno::RuntimeException);
-+	virtual ::sal_Int32 SAL_CALL getCount() throw (css::uno::RuntimeException);
-+	virtual ::sal_Int32 SAL_CALL getRow() throw (css::uno::RuntimeException);
-+	virtual ::sal_Int32 SAL_CALL getColumn() throw (css::uno::RuntimeException);
-+	virtual ::rtl::OUString SAL_CALL getText() throw (css::uno::RuntimeException);
-+    using ScVbaRange_BASE::setNumberFormat;
-+	virtual void SAL_CALL setNumberFormat( const css::uno::Any& rNumberFormat ) throw ( css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getNumberFormat() throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL setMergeCells( const css::uno::Any& bMerge ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getMergeCells() throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL setWrapText( const css::uno::Any& bIsWrapped ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getWrapText() throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 
+     // Attributes
+ 	virtual css::uno::Any SAL_CALL getValue() throw (css::uno::RuntimeException);
+@@ -151,9 +152,9 @@
+ 	virtual css::uno::Any SAL_CALL getMergeCells() throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	virtual void SAL_CALL setWrapText( const css::uno::Any& bIsWrapped ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL getWrapText() throw (css::script::BasicErrorException, css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL getEntireRow() throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL getEntireColumn() throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XComment > SAL_CALL getComment() throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL getEntireRow() throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL getEntireColumn() throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XComment > SAL_CALL getComment() throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getHidden() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL setHidden( const css::uno::Any& _hidden ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getColumnWidth() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL setColumnWidth( const css::uno::Any& _columnwidth ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getRowHeight() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL setRowHeight( const css::uno::Any& _rowheight ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getWidth() throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getHeight() throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getTop() throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getLeft() throw (css::uno::RuntimeException);
-+	
+ 	virtual css::uno::Any SAL_CALL getHidden() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL setHidden( const css::uno::Any& _hidden ) throw (css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL getColumnWidth() throw (css::uno::RuntimeException);
+@@ -165,16 +166,20 @@
+ 	virtual css::uno::Any SAL_CALL getTop() throw (css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL getLeft() throw (css::uno::RuntimeException);
+ 	
+-	virtual css::uno::Reference< oo::excel::XWorksheet > SAL_CALL getWorksheet() throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XWorksheet > SAL_CALL getWorksheet() throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getPageBreak() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL setPageBreak( const css::uno::Any& _pagebreak ) throw (css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL getPageBreak() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL setPageBreak( const css::uno::Any& _pagebreak ) throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XValidation > SAL_CALL getValidation() throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XValidation > SAL_CALL getValidation() throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getFormulaHidden() throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL setFormulaHidden(const css::uno::Any& aHidden) throw (css::script::BasicErrorException, css::uno::RuntimeException);	
+ 	virtual css::uno::Any SAL_CALL getFormulaHidden() throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	virtual void SAL_CALL setFormulaHidden(const css::uno::Any& aHidden) throw (css::script::BasicErrorException, css::uno::RuntimeException);	
 +	//virtual css::uno::Any SAL_CALL getLocked() throw (css::script::BasicErrorException, css::uno::RuntimeException);
 +	//virtual void SAL_CALL setLocked(const css::uno::Any& aLocked) throw (css::script::BasicErrorException, css::uno::RuntimeException);	
 +	virtual css::uno::Any SAL_CALL getShowDetail() throw (css::uno::RuntimeException);
 +	virtual void SAL_CALL setShowDetail(const css::uno::Any& aShowDetail) throw (css::uno::RuntimeException);	
-+	// Methods
-+	sal_Bool IsRows() { return mbIsRows; }
-+	sal_Bool IsColumns() { return mbIsColumns; }
+ 	// Methods
+ 	sal_Bool IsRows() { return mbIsRows; }
+ 	sal_Bool IsColumns() { return mbIsColumns; }
+-	virtual css::uno::Reference< oo::excel::XComment > SAL_CALL AddComment( const css::uno::Any& Text ) throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XComment > SAL_CALL AddComment( const css::uno::Any& Text ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Clear() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL ClearComments() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL ClearContents() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL ClearFormats() throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL HasFormula() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL FillLeft() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL FillRight() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL FillUp() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL FillDown() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Clear() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL ClearComments() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL ClearContents() throw (css::uno::RuntimeException);
+@@ -184,35 +189,36 @@
+ 	virtual void SAL_CALL FillRight() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL FillUp() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL FillDown() throw (css::uno::RuntimeException);
+-	virtual	css::uno::Reference< oo::excel::XRange > SAL_CALL Offset( const css::uno::Any &nRowOffset, const css::uno::Any &nColOffset )
 +	virtual	css::uno::Reference< ov::excel::XRange > SAL_CALL Offset( const css::uno::Any &nRowOffset, const css::uno::Any &nColOffset )
-+														   throw (css::uno::RuntimeException);
+ 														   throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL CurrentRegion() throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL CurrentArray() throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL CurrentRegion() throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL CurrentArray() throw (css::uno::RuntimeException);
-+	virtual ::rtl::OUString SAL_CALL Characters( const css::uno::Any& nIndex, const css::uno::Any& nCount ) 
-+												 throw (css::uno::RuntimeException);
-+
-+	virtual ::rtl::OUString SAL_CALL Address( const css::uno::Any& RowAbsolute, const css::uno::Any& ColumnAbsolute, const css::uno::Any& ReferenceStyle, const css::uno::Any& External, const css::uno::Any& RelativeTo ) throw (css::uno::RuntimeException);
-+
+ 	virtual ::rtl::OUString SAL_CALL Characters( const css::uno::Any& nIndex, const css::uno::Any& nCount ) 
+ 												 throw (css::uno::RuntimeException);
+ 
+ 	virtual ::rtl::OUString SAL_CALL Address( const css::uno::Any& RowAbsolute, const css::uno::Any& ColumnAbsolute, const css::uno::Any& ReferenceStyle, const css::uno::Any& External, const css::uno::Any& RelativeTo ) throw (css::uno::RuntimeException);
+ 
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Cells( const css::uno::Any &nRow, const css::uno::Any &nCol ) 
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL Cells( const css::uno::Any &nRow, const css::uno::Any &nCol ) 
-+														  throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Select() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Activate() throw (css::uno::RuntimeException);
+ 														  throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Select() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Activate() throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange >  SAL_CALL Rows( const css::uno::Any& nIndex ) throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange >  SAL_CALL Columns( const css::uno::Any &nIndex ) throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange >  SAL_CALL Rows( const css::uno::Any& nIndex ) throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange >  SAL_CALL Columns( const css::uno::Any &nIndex ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Copy( const css::uno::Any& Destination ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Cut( const css::uno::Any& Destination ) throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Copy( const css::uno::Any& Destination ) throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Cut( const css::uno::Any& Destination ) throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Resize( const css::uno::Any& RowSize, const css::uno::Any& ColumnSize ) 
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL Resize( const css::uno::Any& RowSize, const css::uno::Any& ColumnSize ) 
-+														   throw (css::uno::RuntimeException);
+ 														   throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XFont > SAL_CALL Font() throw ( css::script::BasicErrorException, css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XInterior > SAL_CALL Interior(  ) throw ( css::script::BasicErrorException, css::uno::RuntimeException) ;
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Range( const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > Range( const css::uno::Any &Cell1, const css::uno::Any &Cell2, bool bForceUseInpuRangeTab ) throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XFont > SAL_CALL Font() throw ( css::script::BasicErrorException, css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XInterior > SAL_CALL Interior(  ) throw ( css::script::BasicErrorException, css::uno::RuntimeException) ;
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL Range( const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > Range( const css::uno::Any &Cell1, const css::uno::Any &Cell2, bool bForceUseInpuRangeTab ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getCellRange(  ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL PasteSpecial( const css::uno::Any& Paste, const css::uno::Any& Operation, const css::uno::Any& SkipBlanks, const css::uno::Any& Transpose ) throw (css::uno::RuntimeException);
-+	virtual ::sal_Bool SAL_CALL Replace( const ::rtl::OUString& What, const ::rtl::OUString& Replacement, const css::uno::Any& LookAt, const css::uno::Any& SearchOrder, const css::uno::Any& MatchCase, const css::uno::Any& MatchByte, const css::uno::Any& SearchFormat, const css::uno::Any& ReplaceFormat ) throw (css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL getCellRange(  ) throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL PasteSpecial( const css::uno::Any& Paste, const css::uno::Any& Operation, const css::uno::Any& SkipBlanks, const css::uno::Any& Transpose ) throw (css::uno::RuntimeException);
+ 	virtual ::sal_Bool SAL_CALL Replace( const ::rtl::OUString& What, const ::rtl::OUString& Replacement, const css::uno::Any& LookAt, const css::uno::Any& SearchOrder, const css::uno::Any& MatchCase, const css::uno::Any& MatchByte, const css::uno::Any& SearchFormat, const css::uno::Any& ReplaceFormat ) throw (css::uno::RuntimeException);
 +    virtual css::uno::Reference< ov::excel::XRange > SAL_CALL Find( const css::uno::Any& What, const css::uno::Any& After, const css::uno::Any& LookIn, const css::uno::Any& LookAt, const css::uno::Any& SearchOrder, const css::uno::Any& SearchDirection, const css::uno::Any& MatchCase, const css::uno::Any& MatchByte, const css::uno::Any& SearchFormat ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Sort( const css::uno::Any& Key1, const css::uno::Any& Order1, const css::uno::Any& Key2, const css::uno::Any& Type, const css::uno::Any& Order2, const css::uno::Any& Key3, const css::uno::Any& Order3, const css::uno::Any& Header, const css::uno::Any& OrderCustom, const css::uno::Any& MatchCase, const css::uno::Any& Orientation, const css::uno::Any& SortMethod,  const css::uno::Any& DataOption1, const css::uno::Any& DataOption2, const css::uno::Any& DataOption3 ) throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Sort( const css::uno::Any& Key1, const css::uno::Any& Order1, const css::uno::Any& Key2, const css::uno::Any& Type, const css::uno::Any& Order2, const css::uno::Any& Key3, const css::uno::Any& Order3, const css::uno::Any& Header, const css::uno::Any& OrderCustom, const css::uno::Any& MatchCase, const css::uno::Any& Orientation, const css::uno::Any& SortMethod,  const css::uno::Any& DataOption1, const css::uno::Any& DataOption2, const css::uno::Any& DataOption3 ) throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL End( ::sal_Int32 Direction )  throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XCharacters > SAL_CALL characters( const css::uno::Any& Start, const css::uno::Any& Length ) throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL End( ::sal_Int32 Direction )  throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XCharacters > SAL_CALL characters( const css::uno::Any& Start, const css::uno::Any& Length ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Delete( const css::uno::Any& Shift ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL Areas( const css::uno::Any& ) throw (css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL Borders( const css::uno::Any& ) throw ( css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL BorderAround( const css::uno::Any& LineStyle, 
-+                const css::uno::Any& Weight, const css::uno::Any& ColorIndex, const css::uno::Any& Color ) throw (css::uno::RuntimeException);
-+    virtual void SAL_CALL TextToColumns( const css::uno::Any& Destination, const css::uno::Any& DataType, const css::uno::Any& TextQualifier,
-+                const css::uno::Any& ConsecutinveDelimiter, const css::uno::Any& Tab, const css::uno::Any& Semicolon, const css::uno::Any& Comma, 
-+                const css::uno::Any& Space, const css::uno::Any& Other, const css::uno::Any& OtherChar, const css::uno::Any& FieldInfo,
-+                const css::uno::Any& DecimalSeparator, const css::uno::Any& ThousandsSeparator, const css::uno::Any& TrailingMinusNumbers ) throw (css::uno::RuntimeException);
-+
-+	virtual void SAL_CALL AutoFilter( const css::uno::Any& Field, const css::uno::Any& Criteria1, const css::uno::Any& Operator, const css::uno::Any& Criteria2, const css::uno::Any& VisibleDropDown ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Insert( const css::uno::Any& Shift, const css::uno::Any& CopyOrigin ) throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL Autofit() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL PrintOut( const css::uno::Any& From, const css::uno::Any& To, const css::uno::Any& Copies, const css::uno::Any& Preview, const css::uno::Any& ActivePrinter, const css::uno::Any& PrintToFile, const css::uno::Any& Collate, const css::uno::Any& PrToFileName ) throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Delete( const css::uno::Any& Shift ) throw (css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL Areas( const css::uno::Any& ) throw (css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL Borders( const css::uno::Any& ) throw ( css::script::BasicErrorException, css::uno::RuntimeException);
+@@ -227,10 +233,10 @@
+ 	virtual void SAL_CALL Insert( const css::uno::Any& Shift, const css::uno::Any& CopyOrigin ) throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL Autofit() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL PrintOut( const css::uno::Any& From, const css::uno::Any& To, const css::uno::Any& Copies, const css::uno::Any& Preview, const css::uno::Any& ActivePrinter, const css::uno::Any& PrintToFile, const css::uno::Any& Collate, const css::uno::Any& PrToFileName ) throw (css::uno::RuntimeException);
+-	virtual void SAL_CALL AutoFill( const css::uno::Reference< oo::excel::XRange >& Destination, const css::uno::Any& Type ) throw (css::uno::RuntimeException) ;
 +	virtual void SAL_CALL AutoFill( const css::uno::Reference< ov::excel::XRange >& Destination, const css::uno::Any& Type ) throw (css::uno::RuntimeException) ;
-+	 void SAL_CALL Calculate(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 
-+	virtual void SAL_CALL AutoOutline(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	 void SAL_CALL Calculate(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException); 
+ 	virtual void SAL_CALL AutoOutline(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Item( const ::css::uno::Any& row, const css::uno::Any& column ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL Item( const ::css::uno::Any& row, const css::uno::Any& column ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL ClearOutline(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL Ungroup(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL Group(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL Merge( const css::uno::Any& Across ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL UnMerge(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual css::uno::Any SAL_CALL getStyle() throw (css::uno::RuntimeException);
-+	virtual void SAL_CALL setStyle( const css::uno::Any& _style ) throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL ClearOutline(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	virtual void SAL_CALL Ungroup(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	virtual void SAL_CALL Group(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+@@ -238,16 +244,17 @@
+ 	virtual void SAL_CALL UnMerge(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	virtual css::uno::Any SAL_CALL getStyle() throw (css::uno::RuntimeException);
+ 	virtual void SAL_CALL setStyle( const css::uno::Any& _style ) throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Next() throw (css::script::BasicErrorException, css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL Previous() throw (css::script::BasicErrorException, css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL Next() throw (css::script::BasicErrorException, css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL Previous() throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL RemoveSubtotal(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	virtual void SAL_CALL RemoveSubtotal(  ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL MergeArea() throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	virtual void SAL_CALL Subtotal( ::sal_Int32 GroupBy, ::sal_Int32 Function, const css::uno::Sequence< ::sal_Int32 >& TotalList, const css::uno::Any& Replace, const css::uno::Any& PageBreaks, const css::uno::Any& SummaryBelowData ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
-+	// XEnumerationAccess
-+	virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createEnumeration() throw (css::uno::RuntimeException);
-+	// XElementAccess
-+	virtual css::uno::Type SAL_CALL getElementType() throw (css::uno::RuntimeException)
-+	{
+ 	virtual void SAL_CALL Subtotal( ::sal_Int32 GroupBy, ::sal_Int32 Function, const css::uno::Sequence< ::sal_Int32 >& TotalList, const css::uno::Any& Replace, const css::uno::Any& PageBreaks, const css::uno::Any& SummaryBelowData ) throw (css::script::BasicErrorException, css::uno::RuntimeException);
+ 	// XEnumerationAccess
+ 	virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createEnumeration() throw (css::uno::RuntimeException);
+ 	// XElementAccess
+ 	virtual css::uno::Type SAL_CALL getElementType() throw (css::uno::RuntimeException)
+ 	{
+-		return oo::excel::XRange::static_type(0);
 +		return ov::excel::XRange::static_type(0);
-+
-+	}
-+	virtual sal_Bool SAL_CALL hasElements() throw (css::uno::RuntimeException);
-+	// XDefaultMethod
-+	::rtl::OUString SAL_CALL getDefaultMethodName(  ) throw (css::uno::RuntimeException);
-+        // XDefaultProperty
-+        ::rtl::OUString SAL_CALL getDefaultPropertyName(  ) throw (css::uno::RuntimeException) { return ::rtl::OUString::createFromAscii("Value"); }
-+
-+
-+// #TODO completely rewrite ScVbaRange, its become a hackfest
-+// it needs to be closer to ScCellRangeBase in that the underlying
-+// object model should probably be a ScRangelst. 
-+//     * would be nice to be able to construct a range from an addres only
-+//     * or a list of address ( multi-area )
-+//     * object should be a lightweight as possible
-+//     * we shouldn't need hacks like this below
+ 
+ 	}
+ 	virtual sal_Bool SAL_CALL hasElements() throw (css::uno::RuntimeException);
+@@ -264,9 +271,9 @@
+ //     * or a list of address ( multi-area )
+ //     * object should be a lightweight as possible
+ //     * we shouldn't need hacks like this below
+-	static css::uno::Reference< oo::excel::XRange > ApplicationRange( const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException);
+-	virtual sal_Bool SAL_CALL GoalSeek( const css::uno::Any& Goal, const css::uno::Reference< oo::excel::XRange >& ChangingCell ) throw (css::uno::RuntimeException);
+-	virtual css::uno::Reference< oo::excel::XRange > SAL_CALL SpecialCells( const css::uno::Any& _oType, const css::uno::Any& _oValue) throw ( css::script::BasicErrorException );  
 +	static css::uno::Reference< ov::excel::XRange > ApplicationRange( const css::uno::Reference< css::uno::XComponentContext >& xContext, const css::uno::Any &Cell1, const css::uno::Any &Cell2 ) throw (css::uno::RuntimeException);
 +	virtual sal_Bool SAL_CALL GoalSeek( const css::uno::Any& Goal, const css::uno::Reference< ov::excel::XRange >& ChangingCell ) throw (css::uno::RuntimeException);
 +	virtual css::uno::Reference< ov::excel::XRange > SAL_CALL SpecialCells( const css::uno::Any& _oType, const css::uno::Any& _oValue) throw ( css::script::BasicErrorException );  
-+	// XHelperInterface
-+	virtual rtl::OUString& getServiceImplName();
-+	virtual css::uno::Sequence<rtl::OUString> getServiceNames();
-+};
-+#endif /* SC_VBA_RANGE_HXX */
-+
+ 	// XHelperInterface
+ 	virtual rtl::OUString& getServiceImplName();
+ 	virtual css::uno::Sequence<rtl::OUString> getServiceNames();
 Index: sc/source/ui/vba/vbaworkbook.hxx
 ===================================================================
 --- sc/source/ui/vba/vbaworkbook.hxx	(.../tags/DEV300_m39)	(revision 266650)
@@ -14287,1104 +13956,72 @@
 ===================================================================
 --- sc/source/ui/vba/vbaapplication.cxx	(.../tags/DEV300_m39)	(revision 266650)
 +++ sc/source/ui/vba/vbaapplication.cxx	(.../cws/npower11)	(revision 266650)
-@@ -1,959 +1,1298 @@
--/*************************************************************************
-- *
-- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-- * 
-- * Copyright 2008 by Sun Microsystems, Inc.
-- *
-- * OpenOffice.org - a multi-platform office productivity suite
-- *
-- * $RCSfile: vbaapplication.cxx,v $
-- * $Revision: 1.7 $
-- *
-- * This file is part of OpenOffice.org.
-- *
-- * OpenOffice.org is free software: you can redistribute it and/or modify
-- * it under the terms of the GNU Lesser General Public License version 3
-- * only, as published by the Free Software Foundation.
-- *
-- * OpenOffice.org is distributed in the hope that it will be useful,
-- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- * GNU Lesser General Public License version 3 for more details
-- * (a copy is included in the LICENSE file that accompanied this code).
-- *
-- * You should have received a copy of the GNU Lesser General Public License
-- * version 3 along with OpenOffice.org.  If not, see
-- * <http://www.openoffice.org/license.html>
-- * for a copy of the LGPLv3 License.
-- *
-- ************************************************************************/
--#include <stdio.h>
--
--
--#include<com/sun/star/sheet/XSpreadsheetView.hpp>
--#include <com/sun/star/sheet/XSpreadsheets.hpp>
--#include<com/sun/star/view/XSelectionSupplier.hpp>
--#include <com/sun/star/lang/XServiceInfo.hpp>
--#include<org/openoffice/excel/XlCalculation.hpp>
--#include <com/sun/star/sheet/XCellRangeReferrer.hpp>
--#include <com/sun/star/sheet/XCalculatable.hpp>
--#include <com/sun/star/frame/XLayoutManager.hpp>
--#include <com/sun/star/task/XStatusIndicatorSupplier.hpp>
--#include <com/sun/star/task/XStatusIndicator.hpp>
--#include <org/openoffice/excel/XlMousePointer.hpp>
--#include <com/sun/star/sheet/XNamedRanges.hpp>
--
--#include "vbaapplication.hxx"
--#include "vbaworkbooks.hxx"
--#include "vbaworkbook.hxx"
--#include "vbaworksheets.hxx"
--#include "vbarange.hxx"
--#include "vbawsfunction.hxx"
--#include "vbadialogs.hxx"
--#include "vbawindow.hxx"
--#include "vbawindows.hxx"
--#include "vbaglobals.hxx"
--#include "tabvwsh.hxx"
--#include "gridwin.hxx"
--#include "vbanames.hxx"
--#include "vbashape.hxx"
--#include "sc.hrc"
--
--#include <osl/file.hxx>
--
--#include <sfx2/request.hxx>
--#include <sfx2/objsh.hxx>
--#include <sfx2/viewfrm.hxx>
--#include <sfx2/app.hxx>
--
--#include <toolkit/awt/vclxwindow.hxx>
--#include <toolkit/helper/vclunohelper.hxx>
--
--#include <tools/diagnose_ex.h>
--
--#include <docuno.hxx>
--
--#include <basic/sbx.hxx>
--#include <basic/sbstar.hxx>
--#include <basic/sbuno.hxx>
--#include <basic/sbmeth.hxx>
--
--using namespace ::org::openoffice;
--using namespace ::com::sun::star;
--
--// #TODO is this defined somewhere else?
--#if ( defined UNX ) || ( defined OS2 ) //unix
--#define FILE_PATH_SEPERATOR "/"
--#else // windows
--#define FILE_PATH_SEPERATOR "\\"
--#endif 
--
--#define EXCELVERSION "11.0"
--
--class ActiveWorkbook : public ScVbaWorkbook
--{
--protected:
--	virtual uno::Reference< frame::XModel > getModel()
--	{ 	
--		return getCurrentDocument(); 
--	}
--public:
--	ActiveWorkbook( const uno::Reference< vba::XHelperInterface >& xParent, const uno::Reference< uno::XComponentContext >& xContext) : ScVbaWorkbook(  xParent, xContext ){}
--};
--
--ScVbaApplication::ScVbaApplication( uno::Reference<uno::XComponentContext >& xContext ): ScVbaApplication_BASE( uno::Reference< vba::XHelperInterface >(), xContext ), m_xCalculation( excel::XlCalculation::xlCalculationAutomatic )
--{
--}
--
--ScVbaApplication::~ScVbaApplication()
--{
--}
--	
--
--
--uno::Reference< excel::XWorkbook >
--ScVbaApplication::getActiveWorkbook() throw (uno::RuntimeException)
--{
--	return new ActiveWorkbook( this, mxContext ); 
--}
--uno::Reference< excel::XWorkbook > SAL_CALL 
--ScVbaApplication::getThisWorkbook() throw (uno::RuntimeException)
--{
--	return getActiveWorkbook();
--}
--
--uno::Any SAL_CALL
--ScVbaApplication::getSelection() throw (uno::RuntimeException)
--{
--    uno::Reference< lang::XServiceInfo > xServiceInfo( getCurrentDocument()->getCurrentSelection(), uno::UNO_QUERY_THROW );
--    rtl::OUString sImpementaionName = xServiceInfo->getImplementationName();
--    if( sImpementaionName.equalsIgnoreAsciiCaseAscii("com.sun.star.drawing.SvxShapeCollection") )
--    {
--        uno::Reference< drawing::XShapes > xShapes( getCurrentDocument()->getCurrentSelection(), uno::UNO_QUERY_THROW );
--        uno::Reference< container::XIndexAccess > xIndexAccess( xShapes, uno::UNO_QUERY_THROW );
--        uno::Reference< drawing::XShape > xShape( xIndexAccess->getByIndex(0), uno::UNO_QUERY_THROW );
--        return uno::makeAny( uno::Reference< msforms::XShape >(new ScVbaShape( this, mxContext, xShape, xShapes, ScVbaShape::getType( xShape ) ) ) );
--    }
--    else if( xServiceInfo->supportsService( rtl::OUString::createFromAscii("com.sun.star.sheet.SheetCellRange")) ||
--             xServiceInfo->supportsService( rtl::OUString::createFromAscii("com.sun.star.sheet.SheetCellRanges")))
--    {
--	    uno::Reference< table::XCellRange > xRange( getCurrentDocument()->getCurrentSelection(), ::uno::UNO_QUERY);
--	    if ( !xRange.is() )
--	    {
--		    uno::Reference< sheet::XSheetCellRangeContainer > xRanges( getCurrentDocument()->getCurrentSelection(), ::uno::UNO_QUERY);
--		    if ( xRanges.is() )
--			    return uno::makeAny( uno::Reference< excel::XRange >( new ScVbaRange( this, mxContext, xRanges ) ) );
--
--	    }
--	    return uno::makeAny( uno::Reference< excel::XRange >(new ScVbaRange( this, mxContext, xRange ) ) );
--    }
--    else
--    {
--        throw uno::RuntimeException( sImpementaionName + rtl::OUString::createFromAscii(" donot be surpported"), uno::Reference< uno::XInterface >() );
--    }
--}
--
--uno::Reference< excel::XRange >
--ScVbaApplication::getActiveCell() throw (uno::RuntimeException )
--{
--	uno::Reference< sheet::XSpreadsheetView > xView( getCurrentDocument()->getCurrentController(), uno::UNO_QUERY_THROW );
--	uno::Reference< table::XCellRange > xRange( xView->getActiveSheet(), ::uno::UNO_QUERY_THROW);
--	ScTabViewShell* pViewShell = getCurrentBestViewShell();
--	if ( !pViewShell )
--		throw uno::RuntimeException( rtl::OUString::createFromAscii("No ViewShell available"), uno::Reference< uno::XInterface >() );
--	ScViewData* pTabView = pViewShell->GetViewData();
--	if ( !pTabView )
--		throw uno::RuntimeException( rtl::OUString::createFromAscii("No ViewData available"), uno::Reference< uno::XInterface >() );
--
--	sal_Int32 nCursorX = pTabView->GetCurX();
--	sal_Int32 nCursorY = pTabView->GetCurY();
--
--	return  new ScVbaRange( this, mxContext, xRange->getCellRangeByPosition( nCursorX, nCursorY, nCursorX, nCursorY ) );
--}
--
--sal_Bool
--ScVbaApplication::getScreenUpdating() throw (uno::RuntimeException)
--{
--	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--	return !xModel->hasControllersLocked();
--}
--
--void
--ScVbaApplication::setScreenUpdating(sal_Bool bUpdate) throw (uno::RuntimeException)
--{
--	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--	if (bUpdate)
--		xModel->unlockControllers();
--	else
--		xModel->lockControllers();
--}
--
--sal_Bool
--ScVbaApplication::getDisplayStatusBar() throw (uno::RuntimeException)
--{
--	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--    uno::Reference< frame::XFrame > xFrame( xModel->getCurrentController()->getFrame(), uno::UNO_QUERY_THROW );
--    uno::Reference< beans::XPropertySet > xProps( xFrame, uno::UNO_QUERY_THROW );
--
--    if( xProps.is() ){
--        uno::Reference< frame::XLayoutManager > xLayoutManager( xProps->getPropertyValue( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("LayoutManager")) ), uno::UNO_QUERY_THROW );
--        rtl::OUString url(RTL_CONSTASCII_USTRINGPARAM( "private:resource/statusbar/statusbar" ));
--        if( xLayoutManager.is() && xLayoutManager->isElementVisible( url ) ){
--            return sal_True;
--        }
--    }
--    return sal_False;
--}
--
--void
--ScVbaApplication::setDisplayStatusBar(sal_Bool bDisplayStatusBar) throw (uno::RuntimeException)
--{
--	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--    uno::Reference< frame::XFrame > xFrame( xModel->getCurrentController()->getFrame(), uno::UNO_QUERY_THROW );
--    uno::Reference< beans::XPropertySet > xProps( xFrame, uno::UNO_QUERY_THROW );
--
--    if( xProps.is() ){
--        uno::Reference< frame::XLayoutManager > xLayoutManager( xProps->getPropertyValue( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("LayoutManager")) ), uno::UNO_QUERY_THROW );
--        rtl::OUString url(RTL_CONSTASCII_USTRINGPARAM( "private:resource/statusbar/statusbar" ));
--        if( xLayoutManager.is() ){
--            if( bDisplayStatusBar && !xLayoutManager->isElementVisible( url ) ){
--                if( !xLayoutManager->showElement( url ) )
--                    xLayoutManager->createElement( url );
--                return;
--            }
--            else if( !bDisplayStatusBar && xLayoutManager->isElementVisible( url ) ){
--                xLayoutManager->hideElement( url ); 
--                return;
--            }
--        }
--    }
--    return;
--}
--
--uno::Any SAL_CALL
--ScVbaApplication::Workbooks( const uno::Any& aIndex ) throw (uno::RuntimeException)
--{
--	uno::Reference< vba::XCollection > xWorkBooks( new ScVbaWorkbooks( this, mxContext ) );
--	if (  aIndex.getValueTypeClass() == uno::TypeClass_VOID )
--	{
--		// void then somebody did Workbooks.something in vba
--	    return uno::Any( xWorkBooks );
--	}
--
--	return uno::Any ( xWorkBooks->Item( aIndex, uno::Any() ) );
--}
--
--uno::Any SAL_CALL
--ScVbaApplication::Worksheets( const uno::Any& aIndex ) throw (uno::RuntimeException)
--{
--    uno::Reference< excel::XWorkbook > xWorkbook( getActiveWorkbook(), uno::UNO_QUERY );
--        uno::Any result;
--    if ( xWorkbook.is() )
--        result  = xWorkbook->Worksheets( aIndex );
--
--    else
--        // Fixme - check if this is reasonable/desired behavior
--        throw uno::RuntimeException( rtl::OUString::createFromAscii(
--            "No ActiveWorkBook available" ), uno::Reference< uno::XInterface >() );
--
--	return result;
--}
--
--uno::Any SAL_CALL
--ScVbaApplication::WorksheetFunction( ) throw (::com::sun::star::uno::RuntimeException)
--{
--        return uno::makeAny( uno::Reference< script::XInvocation >( new ScVbaWSFunction( this, mxContext) ) );
--}
--
--uno::Any SAL_CALL 
--ScVbaApplication::Evaluate( const ::rtl::OUString& Name ) throw (uno::RuntimeException)
--{
--	// #TODO Evaluate allows other things to be evaluated, e.g. functions
--	// I think ( like SIN(3) etc. ) need to investigate that
--	// named Ranges also? e.g. [MyRange] if so need a list of named ranges
--	uno::Any aVoid;
--	return uno::Any( getActiveWorkbook()->getActiveSheet()->Range( uno::Any( Name ), aVoid ) );	
--}
--
--uno::Any 
--ScVbaApplication::Dialogs( const uno::Any &aIndex ) throw (uno::RuntimeException)
--{
--	uno::Reference< excel::XDialogs > xDialogs( new ScVbaDialogs( uno::Reference< vba::XHelperInterface >( ScVbaGlobals::getGlobalsImpl( mxContext )->getApplication(), uno::UNO_QUERY_THROW ), mxContext ) );
--	if( !aIndex.hasValue() )
--		return uno::Any( xDialogs );
--	return uno::Any( xDialogs->Item( aIndex ) );
--}
--
--uno::Reference< excel::XWindow > SAL_CALL 
--ScVbaApplication::getActiveWindow() throw (uno::RuntimeException)
--{
--	// #FIXME sofar can't determine Parent
--	return new ScVbaWindow( uno::Reference< vba::XHelperInterface >(), mxContext, getCurrentDocument() );
--}
--
--uno::Any SAL_CALL 
--ScVbaApplication::getCutCopyMode() throw (uno::RuntimeException)
--{
--	//# FIXME TODO, implementation
--	uno::Any result;
--	result <<= sal_False;
--	return result;
--}
--
--::rtl::OUString
--ScVbaApplication::getVersion() throw (uno::RuntimeException)
--{
--	return rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(EXCELVERSION));
--}
--
--void SAL_CALL 
--ScVbaApplication::setCutCopyMode( const uno::Any& /*_cutcopymode*/ ) throw (uno::RuntimeException)
--{
--	//# FIXME TODO, implementation
--}
--
--uno::Any SAL_CALL
--ScVbaApplication::getStatusBar() throw (uno::RuntimeException)
--{
--	return uno::makeAny( !getDisplayStatusBar() );
--}
--
--void SAL_CALL 
--ScVbaApplication::setStatusBar( const uno::Any& _statusbar ) throw (uno::RuntimeException)
--{
--    rtl::OUString sText;
--    sal_Bool bDefault = sal_False;
--	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--    uno::Reference< task::XStatusIndicatorSupplier > xStatusIndicatorSupplier( xModel->getCurrentController(), uno::UNO_QUERY_THROW );
--    uno::Reference< task::XStatusIndicator > xStatusIndicator( xStatusIndicatorSupplier->getStatusIndicator(), uno::UNO_QUERY_THROW );
--    if( _statusbar >>= sText )
--    {
--        setDisplayStatusBar( sal_True );
--        xStatusIndicator->start( sText, 100 );
--        //xStatusIndicator->setText( sText );
--    }
--    else if( _statusbar >>= bDefault )
--    {
--        if( bDefault == sal_False )
--        {
--            xStatusIndicator->end();
--            setDisplayStatusBar( sal_True );
--        }
--    }
--    else
--        throw uno::RuntimeException( rtl::OUString::createFromAscii( "Invalid prarameter. It should be a string or False" ),
--            uno::Reference< uno::XInterface >() );
--}
--
--double SAL_CALL 
--ScVbaApplication::CountA( const uno::Any& arg1 ) throw (uno::RuntimeException)
--{
--	double result = 0;
--	uno::Reference< script::XInvocation > xInvoc( WorksheetFunction(), uno::UNO_QUERY_THROW );
--	if  ( xInvoc.is() )
--	{
--		static rtl::OUString FunctionName( RTL_CONSTASCII_USTRINGPARAM("CountA" ) );
--		uno::Sequence< uno::Any > Params(1);
--		Params[0] = arg1;
--		uno::Sequence< sal_Int16 > OutParamIndex;
--		uno::Sequence< uno::Any > OutParam;
--		xInvoc->invoke( FunctionName, Params, OutParamIndex, OutParam ) >>= result;
--	}
--	return result;
--}
--
--::sal_Int32 SAL_CALL 
--ScVbaApplication::getCalculation() throw (uno::RuntimeException)
--{
--	uno::Reference<sheet::XCalculatable> xCalc(getCurrentDocument(), uno::UNO_QUERY_THROW);
--	if(xCalc->isAutomaticCalculationEnabled())
--		return excel::XlCalculation::xlCalculationAutomatic;
--	else
--		return excel::XlCalculation::xlCalculationManual;
--}
--
--void SAL_CALL 
--ScVbaApplication::setCalculation( ::sal_Int32 _calculation ) throw (uno::RuntimeException)
--{
--	uno::Reference< sheet::XCalculatable > xCalc(getCurrentDocument(), uno::UNO_QUERY_THROW);
--	switch(_calculation)
--	{
--		case excel::XlCalculation::xlCalculationManual:
--			xCalc->enableAutomaticCalculation(sal_False);
--			break;
--		case excel::XlCalculation::xlCalculationAutomatic:
--		case excel::XlCalculation::xlCalculationSemiautomatic:
--			xCalc->enableAutomaticCalculation(sal_True);
--			break;
--	}
--}
--
--uno::Any SAL_CALL 
--ScVbaApplication::Windows( const uno::Any& aIndex  ) throw (uno::RuntimeException)
--{
--	uno::Reference< vba::XCollection >  xWindows = ScVbaWindows::Windows( mxContext );
--	if ( aIndex.getValueTypeClass() == uno::TypeClass_VOID )
--		return uno::Any( xWindows );
--	return uno::Any( xWindows->Item( aIndex, uno::Any() ) );	
--}
--void SAL_CALL 
--ScVbaApplication::wait( double time ) throw (uno::RuntimeException)
--{
--	StarBASIC* pBasic = SFX_APP()->GetBasic();
--	SFX_APP()->EnterBasicCall();
--	SbxArrayRef aArgs = new SbxArray;
--	SbxVariableRef aRef = new SbxVariable;
--	aRef->PutDouble( time );
--	aArgs->Put(  aRef, 1 );
--	SbMethod* pMeth = (SbMethod*)pBasic->GetRtl()->Find( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("WaitUntil") ), SbxCLASS_METHOD );
--	
--	if ( pMeth )
--	{
--		pMeth->SetParameters( aArgs );
--		SbxVariableRef refTemp = pMeth;
--		// forces a broadcast
--		SbxVariableRef pNew = new  SbxMethod( *((SbxMethod*)pMeth));
--	}
--	SFX_APP()->LeaveBasicCall();
--
--}
--
--uno::Any SAL_CALL 
--ScVbaApplication::Range( const uno::Any& Cell1, const uno::Any& Cell2 ) throw (uno::RuntimeException)
--{
--	uno::Reference< excel::XRange > xVbRange = ScVbaRange::ApplicationRange( mxContext, Cell1, Cell2 ); 
--	return uno::makeAny( xVbRange ); 
--}
--
--uno::Any SAL_CALL
--ScVbaApplication::Names( ) throw ( uno::RuntimeException )
--{
--    uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--    uno::Reference< sheet::XNamedRanges > xNamedRanges( getActiveSheet() , uno::UNO_QUERY_THROW );
--    css::uno::Reference< excel::XNames > xNames ( new ScVbaNames( this , mxContext , xNamedRanges , xModel ) );
--        return uno::makeAny( xNames );
--}
--
--
--uno::Reference< excel::XWorksheet > SAL_CALL 
--ScVbaApplication::getActiveSheet() throw (uno::RuntimeException)
--{
--    uno::Reference< excel::XWorksheet > result;
--    uno::Reference< excel::XWorkbook > xWorkbook( getActiveWorkbook(), uno::UNO_QUERY );
--    if ( xWorkbook.is() )
--    {
--        uno::Reference< excel::XWorksheet > xWorksheet( 
--            xWorkbook->getActiveSheet(), uno::UNO_QUERY );
--        if ( xWorksheet.is() )
--        {
--            result = xWorksheet;
--        }	
--    }
--
--    if ( !result.is() )
--    {
--        // Fixme - check if this is reasonable/desired behavior
--        throw uno::RuntimeException( rtl::OUString::createFromAscii(
--            "No activeSheet available" ), uno::Reference< uno::XInterface >() );
--    }
--    return result;
--	
--}
--
--/*******************************************************************************
-- *  In msdn: 
-- *  Reference   Optional Variant. The destination. Can be a Range 
-- *  object, a string that contains a cell reference in R1C1-style notation,
-- *  or a string that contains a Visual Basic procedure name.
-- *  Scroll   Optional Variant. True to scrol, False to not scroll through 
-- *  the window. The default is False.
-- *  Parser is split to three parts, Range, R1C1 string and procedure name.
-- *  by test excel, it seems Scroll no effect. ??? 
--*******************************************************************************/
--void SAL_CALL 
--ScVbaApplication::GoTo( const uno::Any& Reference, const uno::Any& Scroll ) throw (uno::RuntimeException)
--{
--    //test Scroll is a boolean
--    sal_Bool bScroll = sal_False;
--    //R1C1-style string or a string of procedure name.
--    
--    if( Scroll.hasValue() )
--    {
--        sal_Bool aScroll = sal_False;
--        if( Scroll >>= aScroll )
--        {
--            bScroll = aScroll;
--        }
--        else
--            throw uno::RuntimeException( rtl::OUString::createFromAscii( "sencond parameter should be boolean" ),
--                    uno::Reference< uno::XInterface >() );
--    }
--
--    rtl::OUString sRangeName;
--    if( Reference >>= sRangeName )
--    {
--        uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--        uno::Reference< sheet::XSpreadsheetView > xSpreadsheet(
--                xModel->getCurrentController(), uno::UNO_QUERY_THROW );
--        uno::Reference< sheet::XSpreadsheet > xDoc = xSpreadsheet->getActiveSheet();
--
--        ScTabViewShell* pShell = getCurrentBestViewShell();
--        ScGridWindow* gridWindow = (ScGridWindow*)pShell->GetWindow(); 
--        try
--        {
--            uno::Reference< excel::XRange > xVbaSheetRange = ScVbaRange::getRangeObjectForName( mxContext, sRangeName, getDocShell( xModel ), formula::FormulaGrammar::CONV_XL_R1C1 );
--;
--            if( bScroll )
--            {
--                xVbaSheetRange->Select();
--                uno::Reference< excel::XWindow >  xWindow = getActiveWindow();
--                ScSplitPos eWhich = pShell->GetViewData()->GetActivePart();
--                sal_Int32 nValueX = pShell->GetViewData()->GetPosX(WhichH(eWhich));
--                sal_Int32 nValueY = pShell->GetViewData()->GetPosY(WhichV(eWhich));
--                xWindow->SmallScroll( uno::makeAny( (sal_Int16)(xVbaSheetRange->getRow() - 1) ), 
--                         uno::makeAny( (sal_Int16)nValueY ),
--                         uno::makeAny( (sal_Int16)(xVbaSheetRange->getColumn() - 1)  ), 
--                         uno::makeAny( (sal_Int16)nValueX ) );
--                gridWindow->GrabFocus();
--            }
--            else
--            {
--                xVbaSheetRange->Select();
--                gridWindow->GrabFocus();
--            }
--        }
--        catch( uno::RuntimeException )
--        {
--            //maybe this should be a procedure name
--            //TODO for procedure name
--            //browse::XBrowseNodeFactory is a singlton. OUString::createFromAscii( "/singletons/com.sun.star.script.browse.theBrowseNodeFactory")
--            //and the createView( browse::BrowseNodeFactoryViewTypes::MACROSELECTOR ) to get a root browse::XBrowseNode.
--            //for query XInvocation interface.
--            //but how to directly get the XInvocation?
--            throw uno::RuntimeException( rtl::OUString::createFromAscii( "invalid reference for range name, it should be procedure name" ),
--                    uno::Reference< uno::XInterface >() );
--        }
--        return;
--    }
--    uno::Reference< excel::XRange > xRange;
--    if( Reference >>= xRange )
--    {
--        uno::Reference< excel::XRange > xVbaRange( Reference, uno::UNO_QUERY );
--        ScTabViewShell* pShell = getCurrentBestViewShell();
--        ScGridWindow* gridWindow = (ScGridWindow*)pShell->GetWindow(); 
--        if ( xVbaRange.is() )
--        {
--            //TODO bScroll should be using, In this time, it doesenot have effection
--            if( bScroll )
--            {
--                xVbaRange->Select();
--                uno::Reference< excel::XWindow >  xWindow = getActiveWindow();
--                ScSplitPos eWhich = pShell->GetViewData()->GetActivePart();
--                sal_Int32 nValueX = pShell->GetViewData()->GetPosX(WhichH(eWhich));
--                sal_Int32 nValueY = pShell->GetViewData()->GetPosY(WhichV(eWhich));
--                xWindow->SmallScroll( uno::makeAny( (sal_Int16)(xVbaRange->getRow() - 1) ), 
--                         uno::makeAny( (sal_Int16)nValueY ),
--                         uno::makeAny( (sal_Int16)(xVbaRange->getColumn() - 1)  ), 
--                         uno::makeAny( (sal_Int16)nValueX ) );
--                gridWindow->GrabFocus();
--            }
--            else
--            {
--                xVbaRange->Select();
--                gridWindow->GrabFocus();
--            }
--        }
--        return;
--    }
--    throw uno::RuntimeException( rtl::OUString::createFromAscii( "invalid reference or name" ),
--            uno::Reference< uno::XInterface >() );
--}
--
--namespace
--{
--    static uno::Reference< frame::XController > lcl_getCurrentController()
--    {
--        const uno::Reference< frame::XModel > xWorkingDoc( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY );
--        uno::Reference< frame::XController > xController;
--        if ( xWorkingDoc.is() )
--            xController.set( xWorkingDoc->getCurrentController(), uno::UNO_SET_THROW );
--        else
--            xController.set( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY_THROW );
--        return xController;
--    }
--}
--
--sal_Int32 SAL_CALL
--ScVbaApplication::getCursor() throw (uno::RuntimeException)
--{
--    sal_Int32 nPointerStyle( POINTER_ARROW );
--    try
--    {
--        const uno::Reference< frame::XController > xController( lcl_getCurrentController(),     uno::UNO_SET_THROW );
--        const uno::Reference< frame::XFrame >      xFrame     ( xController->getFrame(),        uno::UNO_SET_THROW );
--        const uno::Reference< awt::XWindow >       xWindow    ( xFrame->getContainerWindow(),   uno::UNO_SET_THROW );
--        // why the heck isn't there an XWindowPeer::getPointer, but a setPointer only?
--        const Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
--        if ( pWindow )
--            nPointerStyle = pWindow->GetSystemWindow()->GetPointer().GetStyle();
--    }
--    catch( const uno::Exception& )
--    {
--    	DBG_UNHANDLED_EXCEPTION();
--    }
--
--    switch( nPointerStyle )
--    {
--        case POINTER_ARROW:
--            return excel::XlMousePointer::xlNorthwestArrow;
--        case POINTER_NULL:
--            return excel::XlMousePointer::xlDefault;
--        case POINTER_WAIT:
--            return excel::XlMousePointer::xlWait;
--        case POINTER_TEXT:
--            return excel::XlMousePointer::xlIBeam;
--        default:
--            return excel::XlMousePointer::xlDefault;
--    }
--}
--
--void SAL_CALL 
--ScVbaApplication::setCursor( sal_Int32 _cursor ) throw (uno::RuntimeException)
--{
--    try
--    {
--        ::std::vector< uno::Reference< frame::XController > > aControllers;
--
--        const uno::Reference< frame::XModel2 > xModel2( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY );
--        if ( xModel2.is() )
--        {
--            const uno::Reference< container::XEnumeration > xEnumControllers( xModel2->getControllers(), uno::UNO_SET_THROW );
--            while ( xEnumControllers->hasMoreElements() )
--            {
--                const uno::Reference< frame::XController > xController( xEnumControllers->nextElement(), uno::UNO_QUERY_THROW );
--                aControllers.push_back( xController );
--            }
--        }
--        else
--        {
--            const uno::Reference< frame::XModel > xModel( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY );
--            if ( xModel.is() )
--            {
--                const uno::Reference< frame::XController > xController( xModel->getCurrentController(), uno::UNO_SET_THROW );
--                aControllers.push_back( xController );
--            }
--            else
--            {
--                const uno::Reference< frame::XController > xController( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY_THROW );
--                aControllers.push_back( xController );
--            }
--        }
--
--        for (   ::std::vector< uno::Reference< frame::XController > >::const_iterator controller = aControllers.begin();
--                controller != aControllers.end();
--                ++controller
--            )
--        {
--            const uno::Reference< frame::XFrame >      xFrame     ( (*controller)->getFrame(),       uno::UNO_SET_THROW   );
--            const uno::Reference< awt::XWindow >       xWindow    ( xFrame->getContainerWindow(),    uno::UNO_SET_THROW   );
--
--            Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
--            OSL_ENSURE( pWindow, "ScVbaApplication::setCursor: no window!" );
--            if ( !pWindow )
--                continue;
--
--            switch( _cursor )
--            {
--                case excel::XlMousePointer::xlNorthwestArrow:
--                {
--                    const Pointer& rPointer( POINTER_ARROW );
--                    pWindow->GetSystemWindow()->SetPointer( rPointer );
--                    pWindow->GetSystemWindow()->EnableChildPointerOverwrite( sal_False );
--                    break;
--                }
--                case excel::XlMousePointer::xlWait:
--                case excel::XlMousePointer::xlIBeam:
--                {
--                    const Pointer& rPointer( static_cast< PointerStyle >( _cursor ) );
--                    //It will set the edit window, toobar and statusbar's mouse pointer.
--                    pWindow->GetSystemWindow()->SetPointer( rPointer );
--                    pWindow->GetSystemWindow()->EnableChildPointerOverwrite( sal_True );
--                    //It only set the edit window's mouse pointer
--                    //pWindow->.SetPointer( rPointer );
--                    //pWindow->.EnableChildPointerOverwrite( sal_True );
--                    //printf("\nset Cursor...%d\n", pWindow->.GetType());
--                    break;
--                }
--                case excel::XlMousePointer::xlDefault:
--                {
--                    const Pointer& rPointer( POINTER_NULL );
--                    pWindow->GetSystemWindow()->SetPointer( rPointer );
--                    pWindow->GetSystemWindow()->EnableChildPointerOverwrite( sal_False );
--                    break;
--                }
--                default:
--                    throw uno::RuntimeException( rtl::OUString( 
--                            RTL_CONSTASCII_USTRINGPARAM("Unknown value for Cursor pointer")), uno::Reference< uno::XInterface >() );
--                    // TODO: isn't this a flaw in the API? It should be allowed to throw an
--                    // IllegalArgumentException, or so
--            }
--        }
--    }
--    catch( const uno::Exception& )
--    {
--    	DBG_UNHANDLED_EXCEPTION();
--    }
--}
--
--// #TODO perhaps we should switch the return type depending of the filter 
--// type, e.g. return Calc for Calc and Excel if its an imported doc
--rtl::OUString SAL_CALL
--ScVbaApplication::getName() throw (uno::RuntimeException)
--{
--	static rtl::OUString appName( RTL_CONSTASCII_USTRINGPARAM("Microsoft Excel" ) );
--	return appName;
--}
--
--// #TODO #FIXME get/setDisplayAlerts are just stub impl 
--void SAL_CALL
--ScVbaApplication::setDisplayAlerts(sal_Bool /*displayAlerts*/) throw (uno::RuntimeException)
--{
--}
--
--sal_Bool SAL_CALL
--ScVbaApplication::getDisplayAlerts() throw (uno::RuntimeException)
--{
--	return sal_True;
--}
--void SAL_CALL
--ScVbaApplication::Calculate() throw(  script::BasicErrorException , uno::RuntimeException )
--{
--	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
--	uno::Reference< sheet::XCalculatable > xCalculatable( getCurrentDocument(), uno::UNO_QUERY_THROW );
--	xCalculatable->calculateAll();
--}
--
--uno::Reference< beans::XPropertySet > lcl_getPathSettingsService( const uno::Reference< uno::XComponentContext >& xContext ) throw ( uno::RuntimeException )
--{
--	static uno::Reference< beans::XPropertySet >  xPathSettings;
--	if ( !xPathSettings.is() )
--	{
--		uno::Reference< lang::XMultiComponentFactory > xSMgr( xContext->getServiceManager(), uno::UNO_QUERY_THROW );
--		xPathSettings.set( xSMgr->createInstanceWithContext(::rtl::OUString::createFromAscii("com.sun.star.util.PathSettings"), xContext), uno::UNO_QUERY_THROW );
--	}
--	return xPathSettings;
--}
--rtl::OUString ScVbaApplication::getOfficePath( const rtl::OUString& _sPathType ) throw ( uno::RuntimeException )
--{
--	rtl::OUString sRetPath;
--	uno::Reference< beans::XPropertySet > xProps = lcl_getPathSettingsService( mxContext );
--	try
--	{
--		rtl::OUString sUrl;
--	 	xProps->getPropertyValue( _sPathType ) >>= sUrl;
--
--		// if its a list of paths then use the last one
--		sal_Int32 nIndex =  sUrl.lastIndexOf( ';' ) ;
--		if ( nIndex > 0 )
--			sUrl = sUrl.copy( nIndex + 1 ); 	
--		::osl::File::getSystemPathFromFileURL( sUrl, sRetPath );
--	}
--	catch (uno::Exception&)
--	{
--		DebugHelper::exception(SbERR_METHOD_FAILED, rtl::OUString());    
--	}		
--	return sRetPath;
--}
--void SAL_CALL 
--ScVbaApplication::setDefaultFilePath( const ::rtl::OUString& DefaultFilePath ) throw (script::BasicErrorException, uno::RuntimeException)
--{
--	uno::Reference< beans::XPropertySet > xProps = lcl_getPathSettingsService( mxContext );
--	rtl::OUString aURL;
--	osl::FileBase::getFileURLFromSystemPath( DefaultFilePath, aURL );
--	xProps->setPropertyValue(  rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Work")), uno::makeAny( aURL ) );
--
--	
--}
--
--::rtl::OUString SAL_CALL 
--ScVbaApplication::getDefaultFilePath(  ) throw (script::BasicErrorException, uno::RuntimeException)
--{
--	return getOfficePath( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Work")));
--}
--
--::rtl::OUString SAL_CALL 
--ScVbaApplication::LibraryPath(  ) throw (script::BasicErrorException, uno::RuntimeException)
--{
--	return getOfficePath( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Basic")));
--}
--
--::rtl::OUString SAL_CALL 
--ScVbaApplication::TemplatesPath(  ) throw (script::BasicErrorException, uno::RuntimeException)
--{
--	return getOfficePath( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Template")));
--}
--
--::rtl::OUString SAL_CALL 
--ScVbaApplication::PathSeparator(  ) throw (script::BasicErrorException, uno::RuntimeException)
--{
--	static rtl::OUString sPathSep( RTL_CONSTASCII_USTRINGPARAM( FILE_PATH_SEPERATOR ) );
--	return sPathSep;
--}
--
--uno::Reference< excel::XRange > SAL_CALL 
--ScVbaApplication::Intersect( const uno::Reference< excel::XRange >& Arg1, const uno::Reference< excel::XRange >& Arg2, const uno::Any& Arg3, const uno::Any& Arg4, const uno::Any& Arg5, const uno::Any& Arg6, const uno::Any& Arg7, const uno::Any& Arg8, const uno::Any& Arg9, const uno::Any& Arg10, const uno::Any& Arg11, const uno::Any& Arg12, const uno::Any& Arg13, const uno::Any& Arg14, const uno::Any& Arg15, const uno::Any& Arg16, const uno::Any& Arg17, const uno::Any& Arg18, const uno::Any& Arg19, const uno::Any& Arg20, const uno::Any& Arg21, const uno::Any& Arg22, const uno::Any& Arg23, const uno::Any& Arg24, const uno::Any& Arg25, const uno::Any& Arg26, const uno::Any& Arg27, const uno::Any& Arg28, const uno::Any& Arg29, const uno::Any& Arg30 ) throw (script::BasicErrorException, uno::RuntimeException)
--{
--	std::vector< uno::Reference< excel::XRange > > vRanges;
--	if ( !Arg1.is() || !Arg2.is() )
--		DebugHelper::exception(SbERR_BAD_PARAMETER, rtl::OUString() );
--
--	vRanges.push_back( Arg1 );
--	vRanges.push_back( Arg2 );
--
--	if ( Arg3.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg3, uno::UNO_QUERY_THROW ) );
--	if ( Arg4.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg4, uno::UNO_QUERY_THROW ) );
--	if ( Arg5.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg5, uno::UNO_QUERY_THROW ) );
--	if ( Arg6.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg6, uno::UNO_QUERY_THROW ) );
--	if ( Arg7.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg7, uno::UNO_QUERY_THROW ) );
--	if ( Arg8.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg8, uno::UNO_QUERY_THROW ) );
--	if ( Arg9.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg9, uno::UNO_QUERY_THROW ) );
--	if ( Arg10.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg10, uno::UNO_QUERY_THROW ) );
--	if ( Arg11.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg11, uno::UNO_QUERY_THROW ) );
--	if ( Arg12.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg12, uno::UNO_QUERY_THROW ) );
--	if ( Arg13.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg13, uno::UNO_QUERY_THROW ) );
--	if ( Arg14.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg14, uno::UNO_QUERY_THROW ) );
--	if ( Arg15.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg15, uno::UNO_QUERY_THROW ) );
--	if ( Arg16.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg16, uno::UNO_QUERY_THROW ) );
--	if ( Arg17.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg17, uno::UNO_QUERY_THROW ) );
--	if ( Arg18.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg18, uno::UNO_QUERY_THROW ) );
--	if ( Arg19.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg19, uno::UNO_QUERY_THROW ) );
--	if ( Arg20.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg20, uno::UNO_QUERY_THROW ) );
--	if ( Arg21.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg21, uno::UNO_QUERY_THROW ) );
--	if ( Arg22.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg22, uno::UNO_QUERY_THROW ) );
--	if ( Arg23.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg23, uno::UNO_QUERY_THROW ) );
--	if ( Arg24.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg24, uno::UNO_QUERY_THROW ) );
--	if ( Arg25.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg25, uno::UNO_QUERY_THROW ) );
--	if ( Arg26.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg26, uno::UNO_QUERY_THROW ) );
--	if ( Arg27.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg27, uno::UNO_QUERY_THROW ) );
--	if ( Arg28.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg28, uno::UNO_QUERY_THROW ) );
--	if ( Arg29.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg29, uno::UNO_QUERY_THROW ) );
--	if ( Arg30.hasValue() )
--		vRanges.push_back( uno::Reference< excel::XRange >( Arg30, uno::UNO_QUERY_THROW ) );
--
--	std::vector< uno::Reference< excel::XRange > >::iterator it = vRanges.begin();
--	std::vector< uno::Reference< excel::XRange > >::iterator it_end = vRanges.end();
--
--	uno::Reference< excel::XRange > xRefRange( *it );
--	++it;
--	for ( ; it != it_end; ++it )
--	{
--		ScVbaRange* pRange = dynamic_cast< ScVbaRange * >( xRefRange.get());
--		if ( pRange )
--			xRefRange = pRange->intersect( *it );
--		if ( !xRefRange.is() )
--			return uno::Reference< excel::XRange >();
--	}
--	return xRefRange;
--}
--
--void
--ScVbaApplication::Volatile( const uno::Any& aVolatile )  throw ( uno::RuntimeException )
--{
--	sal_Bool bVolatile = sal_True;
--	aVolatile >>= bVolatile;
--	return; 
--/*
--	if ( bVolatile )
--		throw uno::RuntimeException( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Volatile - not supported" ) ), uno::Reference< uno::XInterface >() );
--	// bVoloatile is false - currently this only would make sense if 
--	// the autocalculate mode is set to be true.
--
--	// so really this is crap, #TODO try and understand how ( or if ) 
--	// the calculation mode and volatile interoperate
--	if ( ! getCalculation() == excel::XlCalculation::xlCalculationAutomatic )
--		setCalculation(  excel::XlCalculation::xlCalculationAutomatic );
--*/
--}
--
--void SAL_CALL
--ScVbaApplication::DoEvents() throw ( uno::RuntimeException )
--{
--}
--
--::sal_Bool SAL_CALL 
--ScVbaApplication::getDisplayFormulaBar() throw ( css::uno::RuntimeException )
--{
--	sal_Bool bRes = sal_False;
--	ScTabViewShell* pViewShell = getCurrentBestViewShell();
--	if ( pViewShell )
--	{
--		SfxBoolItem sfxFormBar( FID_TOGGLEINPUTLINE);
--		SfxAllItemSet reqList(  SFX_APP()->GetPool() );
--		reqList.Put( sfxFormBar );
--
--		pViewShell->GetState( reqList );
--		const SfxPoolItem *pItem=0;
--		if ( reqList.GetItemState( FID_TOGGLEINPUTLINE, sal_False, &pItem ) == SFX_ITEM_SET )
--			bRes =   ((SfxBoolItem*)pItem)->GetValue();
--	}
--	return bRes;
--}
--
--void SAL_CALL 
--ScVbaApplication::setDisplayFormulaBar( ::sal_Bool _displayformulabar ) throw ( css::uno::RuntimeException )
--{
--	ScTabViewShell* pViewShell = getCurrentBestViewShell();
--	if ( pViewShell && ( _displayformulabar !=  getDisplayFormulaBar() ) )
--	{
--		SfxBoolItem sfxFormBar( FID_TOGGLEINPUTLINE, _displayformulabar);
--		SfxAllItemSet reqList(  SFX_APP()->GetPool() );
--		SfxRequest aReq( FID_TOGGLEINPUTLINE, 0, reqList );
--		pViewShell->Execute( aReq );
--	}	
--}
--
--rtl::OUString& 
--ScVbaApplication::getServiceImplName()
--{
--	static rtl::OUString sImplName( RTL_CONSTASCII_USTRINGPARAM("ScVbaApplication") );
--	return sImplName;
--}
--
--uno::Sequence< rtl::OUString > 
--ScVbaApplication::getServiceNames()
--{
--	static uno::Sequence< rtl::OUString > aServiceNames;
--	if ( aServiceNames.getLength() == 0 )
--	{
--		aServiceNames.realloc( 1 );
--		aServiceNames[ 0 ] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("org.openoffice.excel.Application" ) );
--	}
--	return aServiceNames;
--}
-+/*************************************************************************
-+ *
-+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-+ * 
-+ * Copyright 2008 by Sun Microsystems, Inc.
-+ *
-+ * OpenOffice.org - a multi-platform office productivity suite
-+ *
-+ * $RCSfile: vbaapplication.cxx,v $
-+ * $Revision: 1.7 $
-+ *
-+ * This file is part of OpenOffice.org.
-+ *
-+ * OpenOffice.org is free software: you can redistribute it and/or modify
-+ * it under the terms of the GNU Lesser General Public License version 3
-+ * only, as published by the Free Software Foundation.
-+ *
-+ * OpenOffice.org is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU Lesser General Public License version 3 for more details
-+ * (a copy is included in the LICENSE file that accompanied this code).
-+ *
-+ * You should have received a copy of the GNU Lesser General Public License
-+ * version 3 along with OpenOffice.org.  If not, see
-+ * <http://www.openoffice.org/license.html>
-+ * for a copy of the LGPLv3 License.
-+ *
-+ ************************************************************************/
-+#include <stdio.h>
-+
-+
-+#include<com/sun/star/sheet/XSpreadsheetView.hpp>
-+#include <com/sun/star/sheet/XSpreadsheets.hpp>
-+#include<com/sun/star/view/XSelectionSupplier.hpp>
-+#include <com/sun/star/lang/XServiceInfo.hpp>
+@@ -34,14 +34,15 @@
+ #include <com/sun/star/sheet/XSpreadsheets.hpp>
+ #include<com/sun/star/view/XSelectionSupplier.hpp>
+ #include <com/sun/star/lang/XServiceInfo.hpp>
+-#include<org/openoffice/excel/XlCalculation.hpp>
 +#include<ooo/vba/excel/XlCalculation.hpp>
-+#include <com/sun/star/sheet/XCellRangeReferrer.hpp>
-+#include <com/sun/star/sheet/XCalculatable.hpp>
-+#include <com/sun/star/frame/XLayoutManager.hpp>
-+#include <com/sun/star/task/XStatusIndicatorSupplier.hpp>
-+#include <com/sun/star/task/XStatusIndicator.hpp>
+ #include <com/sun/star/sheet/XCellRangeReferrer.hpp>
+ #include <com/sun/star/sheet/XCalculatable.hpp>
+ #include <com/sun/star/frame/XLayoutManager.hpp>
+ #include <com/sun/star/task/XStatusIndicatorSupplier.hpp>
+ #include <com/sun/star/task/XStatusIndicator.hpp>
+-#include <org/openoffice/excel/XlMousePointer.hpp>
 +#include <ooo/vba/excel/XlMousePointer.hpp>
-+#include <com/sun/star/sheet/XNamedRanges.hpp>
+ #include <com/sun/star/sheet/XNamedRanges.hpp>
 +#include <com/sun/star/sheet/XCellRangeAddressable.hpp>
-+
-+#include "vbaapplication.hxx"
-+#include "vbaworkbooks.hxx"
-+#include "vbaworkbook.hxx"
-+#include "vbaworksheets.hxx"
-+#include "vbarange.hxx"
-+#include "vbawsfunction.hxx"
-+#include "vbadialogs.hxx"
-+#include "vbawindow.hxx"
-+#include "vbawindows.hxx"
-+#include "vbaglobals.hxx"
-+#include "tabvwsh.hxx"
-+#include "gridwin.hxx"
-+#include "vbanames.hxx"
-+#include "vbashape.hxx"
+ 
+ #include "vbaapplication.hxx"
+ #include "vbaworkbooks.hxx"
+@@ -57,6 +58,9 @@
+ #include "gridwin.hxx"
+ #include "vbanames.hxx"
+ #include "vbashape.hxx"
 +#include "vbatextboxshape.hxx"
 +#include "vbaassistant.hxx"
 +#include "vbacommandbars.hxx"
-+#include "sc.hrc"
-+
-+#include <osl/file.hxx>
-+
-+#include <sfx2/request.hxx>
-+#include <sfx2/objsh.hxx>
-+#include <sfx2/viewfrm.hxx>
-+#include <sfx2/app.hxx>
-+
-+#include <toolkit/awt/vclxwindow.hxx>
-+#include <toolkit/helper/vclunohelper.hxx>
-+
-+#include <tools/diagnose_ex.h>
-+
-+#include <docuno.hxx>
-+
-+#include <basic/sbx.hxx>
-+#include <basic/sbstar.hxx>
-+#include <basic/sbuno.hxx>
-+#include <basic/sbmeth.hxx>
-+
+ #include "sc.hrc"
+ 
+ #include <osl/file.hxx>
+@@ -78,9 +82,19 @@
+ #include <basic/sbuno.hxx>
+ #include <basic/sbmeth.hxx>
+ 
+-using namespace ::org::openoffice;
 +#include "convuno.hxx"
 +#include "cellsuno.hxx"
 +#include "docsh.hxx"
 +
 +using namespace ::ooo::vba;
-+using namespace ::com::sun::star;
-+
+ using namespace ::com::sun::star;
+ 
 +// Enable our own join detection for Intersection and Union
 +// should be more efficient than using ScRangeList::Join ( because
 +// we already are testing the same things )
 +
 +#define OWN_JOIN 1
 +
-+// #TODO is this defined somewhere else?
-+#if ( defined UNX ) || ( defined OS2 ) //unix
-+#define FILE_PATH_SEPERATOR "/"
-+#else // windows
-+#define FILE_PATH_SEPERATOR "\\"
-+#endif 
-+
-+#define EXCELVERSION "11.0"
-+
-+class ActiveWorkbook : public ScVbaWorkbook
-+{
-+protected:
-+	virtual uno::Reference< frame::XModel > getModel()
-+	{ 	
-+		return getCurrentDocument(); 
-+	}
-+public:
+ // #TODO is this defined somewhere else?
+ #if ( defined UNX ) || ( defined OS2 ) //unix
+ #define FILE_PATH_SEPERATOR "/"
+@@ -98,10 +112,10 @@
+ 		return getCurrentDocument(); 
+ 	}
+ public:
+-	ActiveWorkbook( const uno::Reference< vba::XHelperInterface >& xParent, const uno::Reference< uno::XComponentContext >& xContext) : ScVbaWorkbook(  xParent, xContext ){}
 +	ActiveWorkbook( const uno::Reference< XHelperInterface >& xParent, const uno::Reference< uno::XComponentContext >& xContext) : ScVbaWorkbook(  xParent, xContext ){}
-+};
-+
+ };
+ 
+-ScVbaApplication::ScVbaApplication( uno::Reference<uno::XComponentContext >& xContext ): ScVbaApplication_BASE( uno::Reference< vba::XHelperInterface >(), xContext ), m_xCalculation( excel::XlCalculation::xlCalculationAutomatic )
 +ScVbaApplication::ScVbaApplication( uno::Reference<uno::XComponentContext >& xContext ): ScVbaApplication_BASE( uno::Reference< XHelperInterface >(), xContext ), m_xCalculation( excel::XlCalculation::xlCalculationAutomatic )
-+{
-+}
-+
-+ScVbaApplication::~ScVbaApplication()
-+{
-+}
-+	
-+
-+
-+uno::Reference< excel::XWorkbook >
-+ScVbaApplication::getActiveWorkbook() throw (uno::RuntimeException)
-+{
-+	return new ActiveWorkbook( this, mxContext ); 
-+}
-+uno::Reference< excel::XWorkbook > SAL_CALL 
-+ScVbaApplication::getThisWorkbook() throw (uno::RuntimeException)
-+{
-+	return getActiveWorkbook();
-+}
-+
+ {
+ }
+ 
+@@ -122,9 +136,25 @@
+ 	return getActiveWorkbook();
+ }
+ 
 +uno::Reference< XAssistant > SAL_CALL
 +ScVbaApplication::getAssistant() throw (uno::RuntimeException)
 +{
@@ -15400,17 +14037,17 @@
 +    return uno::makeAny( xCommandBars );
 +}
 +
-+uno::Any SAL_CALL
-+ScVbaApplication::getSelection() throw (uno::RuntimeException)
-+{
+ uno::Any SAL_CALL
+ ScVbaApplication::getSelection() throw (uno::RuntimeException)
+ {
 +    OSL_TRACE("** ScVbaApplication::getSelection() ** ");
-+    uno::Reference< lang::XServiceInfo > xServiceInfo( getCurrentDocument()->getCurrentSelection(), uno::UNO_QUERY_THROW );
-+    rtl::OUString sImpementaionName = xServiceInfo->getImplementationName();
-+    if( sImpementaionName.equalsIgnoreAsciiCaseAscii("com.sun.star.drawing.SvxShapeCollection") )
-+    {
-+        uno::Reference< drawing::XShapes > xShapes( getCurrentDocument()->getCurrentSelection(), uno::UNO_QUERY_THROW );
-+        uno::Reference< container::XIndexAccess > xIndexAccess( xShapes, uno::UNO_QUERY_THROW );
-+        uno::Reference< drawing::XShape > xShape( xIndexAccess->getByIndex(0), uno::UNO_QUERY_THROW );
+     uno::Reference< lang::XServiceInfo > xServiceInfo( getCurrentDocument()->getCurrentSelection(), uno::UNO_QUERY_THROW );
+     rtl::OUString sImpementaionName = xServiceInfo->getImplementationName();
+     if( sImpementaionName.equalsIgnoreAsciiCaseAscii("com.sun.star.drawing.SvxShapeCollection") )
+@@ -132,6 +162,17 @@
+         uno::Reference< drawing::XShapes > xShapes( getCurrentDocument()->getCurrentSelection(), uno::UNO_QUERY_THROW );
+         uno::Reference< container::XIndexAccess > xIndexAccess( xShapes, uno::UNO_QUERY_THROW );
+         uno::Reference< drawing::XShape > xShape( xIndexAccess->getByIndex(0), uno::UNO_QUERY_THROW );
 +	// if ScVbaShape::getType( xShape ) == office::MsoShapeType::msoAutoShape
 +	// and the uno object implements the com.sun.star.drawing.Text service
 +	// return a textboxshape object
@@ -15422,681 +14059,72 @@
 +        		return uno::makeAny( uno::Reference< msforms::XTextBoxShape >(new ScVbaTextBoxShape( mxContext, xShape, xShapes, getCurrentDocument() ) ) );
 +		}
 +	}
-+        return uno::makeAny( uno::Reference< msforms::XShape >(new ScVbaShape( this, mxContext, xShape, xShapes, ScVbaShape::getType( xShape ) ) ) );
-+    }
-+    else if( xServiceInfo->supportsService( rtl::OUString::createFromAscii("com.sun.star.sheet.SheetCellRange")) ||
-+             xServiceInfo->supportsService( rtl::OUString::createFromAscii("com.sun.star.sheet.SheetCellRanges")))
-+    {
-+	    uno::Reference< table::XCellRange > xRange( getCurrentDocument()->getCurrentSelection(), ::uno::UNO_QUERY);
-+	    if ( !xRange.is() )
-+	    {
-+		    uno::Reference< sheet::XSheetCellRangeContainer > xRanges( getCurrentDocument()->getCurrentSelection(), ::uno::UNO_QUERY);
-+		    if ( xRanges.is() )
-+			    return uno::makeAny( uno::Reference< excel::XRange >( new ScVbaRange( this, mxContext, xRanges ) ) );
-+
-+	    }
-+	    return uno::makeAny( uno::Reference< excel::XRange >(new ScVbaRange( this, mxContext, xRange ) ) );
-+    }
-+    else
+         return uno::makeAny( uno::Reference< msforms::XShape >(new ScVbaShape( this, mxContext, xShape, xShapes, ScVbaShape::getType( xShape ) ) ) );
+     }
+     else if( xServiceInfo->supportsService( rtl::OUString::createFromAscii("com.sun.star.sheet.SheetCellRange")) ||
+@@ -233,7 +274,7 @@
+ uno::Any SAL_CALL
+ ScVbaApplication::Workbooks( const uno::Any& aIndex ) throw (uno::RuntimeException)
+ {
+-	uno::Reference< vba::XCollection > xWorkBooks( new ScVbaWorkbooks( this, mxContext ) );
++	uno::Reference< XCollection > xWorkBooks( new ScVbaWorkbooks( this, mxContext ) );
+ 	if (  aIndex.getValueTypeClass() == uno::TypeClass_VOID )
+ 	{
+ 		// void then somebody did Workbooks.something in vba
+@@ -278,7 +319,7 @@
+ uno::Any 
+ ScVbaApplication::Dialogs( const uno::Any &aIndex ) throw (uno::RuntimeException)
+ {
+-	uno::Reference< excel::XDialogs > xDialogs( new ScVbaDialogs( uno::Reference< vba::XHelperInterface >( ScVbaGlobals::getGlobalsImpl( mxContext )->getApplication(), uno::UNO_QUERY_THROW ), mxContext ) );
++	uno::Reference< excel::XDialogs > xDialogs( new ScVbaDialogs( uno::Reference< XHelperInterface >( ScVbaGlobals::getGlobalsImpl( mxContext )->getApplication(), uno::UNO_QUERY_THROW ), mxContext ) );
+ 	if( !aIndex.hasValue() )
+ 		return uno::Any( xDialogs );
+ 	return uno::Any( xDialogs->Item( aIndex ) );
+@@ -288,7 +329,7 @@
+ ScVbaApplication::getActiveWindow() throw (uno::RuntimeException)
+ {
+ 	// #FIXME sofar can't determine Parent
+-	return new ScVbaWindow( uno::Reference< vba::XHelperInterface >(), mxContext, getCurrentDocument() );
++	return new ScVbaWindow( uno::Reference< XHelperInterface >(), mxContext, getCurrentDocument() );
+ }
+ 
+ uno::Any SAL_CALL 
+@@ -391,7 +432,7 @@
+ uno::Any SAL_CALL 
+ ScVbaApplication::Windows( const uno::Any& aIndex  ) throw (uno::RuntimeException)
+ {
+-	uno::Reference< vba::XCollection >  xWindows = ScVbaWindows::Windows( mxContext );
++	uno::Reference< XCollection >  xWindows = ScVbaWindows::Windows( mxContext );
+ 	if ( aIndex.getValueTypeClass() == uno::TypeClass_VOID )
+ 		return uno::Any( xWindows );
+ 	return uno::Any( xWindows->Item( aIndex, uno::Any() ) );	
+@@ -426,12 +467,17 @@
+ }
+ 
+ uno::Any SAL_CALL
+-ScVbaApplication::Names( ) throw ( uno::RuntimeException )
++ScVbaApplication::Names( const css::uno::Any& aIndex ) throw ( uno::RuntimeException )
+ {
+     uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
+-    uno::Reference< sheet::XNamedRanges > xNamedRanges( getActiveSheet() , uno::UNO_QUERY_THROW );
++    uno::Reference< beans::XPropertySet > xPropertySet( xModel, uno::UNO_QUERY_THROW );
++    uno::Reference< sheet::XNamedRanges > xNamedRanges( xPropertySet->getPropertyValue( rtl::OUString::createFromAscii("NamedRanges")) , uno::UNO_QUERY_THROW );
+     css::uno::Reference< excel::XNames > xNames ( new ScVbaNames( this , mxContext , xNamedRanges , xModel ) );
+-        return uno::makeAny( xNames );
++    if (  aIndex.getValueTypeClass() == uno::TypeClass_VOID )
 +    {
-+        throw uno::RuntimeException( sImpementaionName + rtl::OUString::createFromAscii(" donot be surpported"), uno::Reference< uno::XInterface >() );
-+    }
++        return uno::Any( xNames );
 +}
-+
-+uno::Reference< excel::XRange >
-+ScVbaApplication::getActiveCell() throw (uno::RuntimeException )
-+{
-+	uno::Reference< sheet::XSpreadsheetView > xView( getCurrentDocument()->getCurrentController(), uno::UNO_QUERY_THROW );
-+	uno::Reference< table::XCellRange > xRange( xView->getActiveSheet(), ::uno::UNO_QUERY_THROW);
-+	ScTabViewShell* pViewShell = getCurrentBestViewShell();
-+	if ( !pViewShell )
-+		throw uno::RuntimeException( rtl::OUString::createFromAscii("No ViewShell available"), uno::Reference< uno::XInterface >() );
-+	ScViewData* pTabView = pViewShell->GetViewData();
-+	if ( !pTabView )
-+		throw uno::RuntimeException( rtl::OUString::createFromAscii("No ViewData available"), uno::Reference< uno::XInterface >() );
-+
-+	sal_Int32 nCursorX = pTabView->GetCurX();
-+	sal_Int32 nCursorY = pTabView->GetCurY();
-+
-+	return  new ScVbaRange( this, mxContext, xRange->getCellRangeByPosition( nCursorX, nCursorY, nCursorX, nCursorY ) );
-+}
-+
-+sal_Bool
-+ScVbaApplication::getScreenUpdating() throw (uno::RuntimeException)
-+{
-+	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+	return !xModel->hasControllersLocked();
-+}
-+
-+void
-+ScVbaApplication::setScreenUpdating(sal_Bool bUpdate) throw (uno::RuntimeException)
-+{
-+	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+	if (bUpdate)
-+		xModel->unlockControllers();
-+	else
-+		xModel->lockControllers();
-+}
-+
-+sal_Bool
-+ScVbaApplication::getDisplayStatusBar() throw (uno::RuntimeException)
-+{
-+	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+    uno::Reference< frame::XFrame > xFrame( xModel->getCurrentController()->getFrame(), uno::UNO_QUERY_THROW );
-+    uno::Reference< beans::XPropertySet > xProps( xFrame, uno::UNO_QUERY_THROW );
-+
-+    if( xProps.is() ){
-+        uno::Reference< frame::XLayoutManager > xLayoutManager( xProps->getPropertyValue( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("LayoutManager")) ), uno::UNO_QUERY_THROW );
-+        rtl::OUString url(RTL_CONSTASCII_USTRINGPARAM( "private:resource/statusbar/statusbar" ));
-+        if( xLayoutManager.is() && xLayoutManager->isElementVisible( url ) ){
-+            return sal_True;
-+        }
-+    }
-+    return sal_False;
-+}
-+
-+void
-+ScVbaApplication::setDisplayStatusBar(sal_Bool bDisplayStatusBar) throw (uno::RuntimeException)
-+{
-+	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+    uno::Reference< frame::XFrame > xFrame( xModel->getCurrentController()->getFrame(), uno::UNO_QUERY_THROW );
-+    uno::Reference< beans::XPropertySet > xProps( xFrame, uno::UNO_QUERY_THROW );
-+
-+    if( xProps.is() ){
-+        uno::Reference< frame::XLayoutManager > xLayoutManager( xProps->getPropertyValue( rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("LayoutManager")) ), uno::UNO_QUERY_THROW );
-+        rtl::OUString url(RTL_CONSTASCII_USTRINGPARAM( "private:resource/statusbar/statusbar" ));
-+        if( xLayoutManager.is() ){
-+            if( bDisplayStatusBar && !xLayoutManager->isElementVisible( url ) ){
-+                if( !xLayoutManager->showElement( url ) )
-+                    xLayoutManager->createElement( url );
-+                return;
-+            }
-+            else if( !bDisplayStatusBar && xLayoutManager->isElementVisible( url ) ){
-+                xLayoutManager->hideElement( url ); 
-+                return;
-+            }
-+        }
-+    }
-+    return;
-+}
-+
-+uno::Any SAL_CALL
-+ScVbaApplication::Workbooks( const uno::Any& aIndex ) throw (uno::RuntimeException)
-+{
-+	uno::Reference< XCollection > xWorkBooks( new ScVbaWorkbooks( this, mxContext ) );
-+	if (  aIndex.getValueTypeClass() == uno::TypeClass_VOID )
-+	{
-+		// void then somebody did Workbooks.something in vba
-+	    return uno::Any( xWorkBooks );
-+	}
-+
-+	return uno::Any ( xWorkBooks->Item( aIndex, uno::Any() ) );
-+}
-+
-+uno::Any SAL_CALL
-+ScVbaApplication::Worksheets( const uno::Any& aIndex ) throw (uno::RuntimeException)
-+{
-+    uno::Reference< excel::XWorkbook > xWorkbook( getActiveWorkbook(), uno::UNO_QUERY );
-+        uno::Any result;
-+    if ( xWorkbook.is() )
-+        result  = xWorkbook->Worksheets( aIndex );
-+
-+    else
-+        // Fixme - check if this is reasonable/desired behavior
-+        throw uno::RuntimeException( rtl::OUString::createFromAscii(
-+            "No ActiveWorkBook available" ), uno::Reference< uno::XInterface >() );
-+
-+	return result;
-+}
-+
-+uno::Any SAL_CALL
-+ScVbaApplication::WorksheetFunction( ) throw (::com::sun::star::uno::RuntimeException)
-+{
-+        return uno::makeAny( uno::Reference< script::XInvocation >( new ScVbaWSFunction( this, mxContext) ) );
-+}
-+
-+uno::Any SAL_CALL 
-+ScVbaApplication::Evaluate( const ::rtl::OUString& Name ) throw (uno::RuntimeException)
-+{
-+	// #TODO Evaluate allows other things to be evaluated, e.g. functions
-+	// I think ( like SIN(3) etc. ) need to investigate that
-+	// named Ranges also? e.g. [MyRange] if so need a list of named ranges
-+	uno::Any aVoid;
-+	return uno::Any( getActiveWorkbook()->getActiveSheet()->Range( uno::Any( Name ), aVoid ) );	
-+}
-+
-+uno::Any 
-+ScVbaApplication::Dialogs( const uno::Any &aIndex ) throw (uno::RuntimeException)
-+{
-+	uno::Reference< excel::XDialogs > xDialogs( new ScVbaDialogs( uno::Reference< XHelperInterface >( ScVbaGlobals::getGlobalsImpl( mxContext )->getApplication(), uno::UNO_QUERY_THROW ), mxContext ) );
-+	if( !aIndex.hasValue() )
-+		return uno::Any( xDialogs );
-+	return uno::Any( xDialogs->Item( aIndex ) );
-+}
-+
-+uno::Reference< excel::XWindow > SAL_CALL 
-+ScVbaApplication::getActiveWindow() throw (uno::RuntimeException)
-+{
-+	// #FIXME sofar can't determine Parent
-+	return new ScVbaWindow( uno::Reference< XHelperInterface >(), mxContext, getCurrentDocument() );
-+}
-+
-+uno::Any SAL_CALL 
-+ScVbaApplication::getCutCopyMode() throw (uno::RuntimeException)
-+{
-+	//# FIXME TODO, implementation
-+	uno::Any result;
-+	result <<= sal_False;
-+	return result;
-+}
-+
-+::rtl::OUString
-+ScVbaApplication::getVersion() throw (uno::RuntimeException)
-+{
-+	return rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(EXCELVERSION));
-+}
-+
-+void SAL_CALL 
-+ScVbaApplication::setCutCopyMode( const uno::Any& /*_cutcopymode*/ ) throw (uno::RuntimeException)
-+{
-+	//# FIXME TODO, implementation
-+}
-+
-+uno::Any SAL_CALL
-+ScVbaApplication::getStatusBar() throw (uno::RuntimeException)
-+{
-+	return uno::makeAny( !getDisplayStatusBar() );
-+}
-+
-+void SAL_CALL 
-+ScVbaApplication::setStatusBar( const uno::Any& _statusbar ) throw (uno::RuntimeException)
-+{
-+    rtl::OUString sText;
-+    sal_Bool bDefault = sal_False;
-+	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+    uno::Reference< task::XStatusIndicatorSupplier > xStatusIndicatorSupplier( xModel->getCurrentController(), uno::UNO_QUERY_THROW );
-+    uno::Reference< task::XStatusIndicator > xStatusIndicator( xStatusIndicatorSupplier->getStatusIndicator(), uno::UNO_QUERY_THROW );
-+    if( _statusbar >>= sText )
-+    {
-+        setDisplayStatusBar( sal_True );
-+        xStatusIndicator->start( sText, 100 );
-+        //xStatusIndicator->setText( sText );
-+    }
-+    else if( _statusbar >>= bDefault )
-+    {
-+        if( bDefault == sal_False )
-+        {
-+            xStatusIndicator->end();
-+            setDisplayStatusBar( sal_True );
-+        }
-+    }
-+    else
-+        throw uno::RuntimeException( rtl::OUString::createFromAscii( "Invalid prarameter. It should be a string or False" ),
-+            uno::Reference< uno::XInterface >() );
-+}
-+
-+double SAL_CALL 
-+ScVbaApplication::CountA( const uno::Any& arg1 ) throw (uno::RuntimeException)
-+{
-+	double result = 0;
-+	uno::Reference< script::XInvocation > xInvoc( WorksheetFunction(), uno::UNO_QUERY_THROW );
-+	if  ( xInvoc.is() )
-+	{
-+		static rtl::OUString FunctionName( RTL_CONSTASCII_USTRINGPARAM("CountA" ) );
-+		uno::Sequence< uno::Any > Params(1);
-+		Params[0] = arg1;
-+		uno::Sequence< sal_Int16 > OutParamIndex;
-+		uno::Sequence< uno::Any > OutParam;
-+		xInvoc->invoke( FunctionName, Params, OutParamIndex, OutParam ) >>= result;
-+	}
-+	return result;
-+}
-+
-+::sal_Int32 SAL_CALL 
-+ScVbaApplication::getCalculation() throw (uno::RuntimeException)
-+{
-+	uno::Reference<sheet::XCalculatable> xCalc(getCurrentDocument(), uno::UNO_QUERY_THROW);
-+	if(xCalc->isAutomaticCalculationEnabled())
-+		return excel::XlCalculation::xlCalculationAutomatic;
-+	else
-+		return excel::XlCalculation::xlCalculationManual;
-+}
-+
-+void SAL_CALL 
-+ScVbaApplication::setCalculation( ::sal_Int32 _calculation ) throw (uno::RuntimeException)
-+{
-+	uno::Reference< sheet::XCalculatable > xCalc(getCurrentDocument(), uno::UNO_QUERY_THROW);
-+	switch(_calculation)
-+	{
-+		case excel::XlCalculation::xlCalculationManual:
-+			xCalc->enableAutomaticCalculation(sal_False);
-+			break;
-+		case excel::XlCalculation::xlCalculationAutomatic:
-+		case excel::XlCalculation::xlCalculationSemiautomatic:
-+			xCalc->enableAutomaticCalculation(sal_True);
-+			break;
-+	}
-+}
-+
-+uno::Any SAL_CALL 
-+ScVbaApplication::Windows( const uno::Any& aIndex  ) throw (uno::RuntimeException)
-+{
-+	uno::Reference< XCollection >  xWindows = ScVbaWindows::Windows( mxContext );
-+	if ( aIndex.getValueTypeClass() == uno::TypeClass_VOID )
-+		return uno::Any( xWindows );
-+	return uno::Any( xWindows->Item( aIndex, uno::Any() ) );	
-+}
-+void SAL_CALL 
-+ScVbaApplication::wait( double time ) throw (uno::RuntimeException)
-+{
-+	StarBASIC* pBasic = SFX_APP()->GetBasic();
-+	SFX_APP()->EnterBasicCall();
-+	SbxArrayRef aArgs = new SbxArray;
-+	SbxVariableRef aRef = new SbxVariable;
-+	aRef->PutDouble( time );
-+	aArgs->Put(  aRef, 1 );
-+	SbMethod* pMeth = (SbMethod*)pBasic->GetRtl()->Find( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("WaitUntil") ), SbxCLASS_METHOD );
-+	
-+	if ( pMeth )
-+	{
-+		pMeth->SetParameters( aArgs );
-+		SbxVariableRef refTemp = pMeth;
-+		// forces a broadcast
-+		SbxVariableRef pNew = new  SbxMethod( *((SbxMethod*)pMeth));
-+	}
-+	SFX_APP()->LeaveBasicCall();
-+
-+}
-+
-+uno::Any SAL_CALL 
-+ScVbaApplication::Range( const uno::Any& Cell1, const uno::Any& Cell2 ) throw (uno::RuntimeException)
-+{
-+	uno::Reference< excel::XRange > xVbRange = ScVbaRange::ApplicationRange( mxContext, Cell1, Cell2 ); 
-+	return uno::makeAny( xVbRange ); 
-+}
-+
-+uno::Any SAL_CALL
-+ScVbaApplication::Names( const css::uno::Any& aIndex ) throw ( uno::RuntimeException )
-+{
-+    uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+    uno::Reference< beans::XPropertySet > xPropertySet( xModel, uno::UNO_QUERY_THROW );
-+    uno::Reference< sheet::XNamedRanges > xNamedRanges( xPropertySet->getPropertyValue( rtl::OUString::createFromAscii("NamedRanges")) , uno::UNO_QUERY_THROW );
-+    css::uno::Reference< excel::XNames > xNames ( new ScVbaNames( this , mxContext , xNamedRanges , xModel ) );
-+    if (  aIndex.getValueTypeClass() == uno::TypeClass_VOID )
-+    {
-+        return uno::Any( xNames );
-+}
-+    return uno::Any( xNames->Item( aIndex, uno::Any() ) );
-+}
-+
-+
-+uno::Reference< excel::XWorksheet > SAL_CALL 
-+ScVbaApplication::getActiveSheet() throw (uno::RuntimeException)
-+{
-+    uno::Reference< excel::XWorksheet > result;
-+    uno::Reference< excel::XWorkbook > xWorkbook( getActiveWorkbook(), uno::UNO_QUERY );
-+    if ( xWorkbook.is() )
-+    {
-+        uno::Reference< excel::XWorksheet > xWorksheet( 
-+            xWorkbook->getActiveSheet(), uno::UNO_QUERY );
-+        if ( xWorksheet.is() )
-+        {
-+            result = xWorksheet;
-+        }	
-+    }
-+
-+    if ( !result.is() )
-+    {
-+        // Fixme - check if this is reasonable/desired behavior
-+        throw uno::RuntimeException( rtl::OUString::createFromAscii(
-+            "No activeSheet available" ), uno::Reference< uno::XInterface >() );
-+    }
-+    return result;
-+	
-+}
-+
-+/*******************************************************************************
-+ *  In msdn: 
-+ *  Reference   Optional Variant. The destination. Can be a Range 
-+ *  object, a string that contains a cell reference in R1C1-style notation,
-+ *  or a string that contains a Visual Basic procedure name.
-+ *  Scroll   Optional Variant. True to scrol, False to not scroll through 
-+ *  the window. The default is False.
-+ *  Parser is split to three parts, Range, R1C1 string and procedure name.
-+ *  by test excel, it seems Scroll no effect. ??? 
-+*******************************************************************************/
-+void SAL_CALL 
-+ScVbaApplication::GoTo( const uno::Any& Reference, const uno::Any& Scroll ) throw (uno::RuntimeException)
-+{
-+    //test Scroll is a boolean
-+    sal_Bool bScroll = sal_False;
-+    //R1C1-style string or a string of procedure name.
-+    
-+    if( Scroll.hasValue() )
-+    {
-+        sal_Bool aScroll = sal_False;
-+        if( Scroll >>= aScroll )
-+        {
-+            bScroll = aScroll;
-+        }
-+        else
-+            throw uno::RuntimeException( rtl::OUString::createFromAscii( "sencond parameter should be boolean" ),
-+                    uno::Reference< uno::XInterface >() );
-+    }
-+
-+    rtl::OUString sRangeName;
-+    if( Reference >>= sRangeName )
-+    {
-+        uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+        uno::Reference< sheet::XSpreadsheetView > xSpreadsheet(
-+                xModel->getCurrentController(), uno::UNO_QUERY_THROW );
-+        uno::Reference< sheet::XSpreadsheet > xDoc = xSpreadsheet->getActiveSheet();
-+
-+        ScTabViewShell* pShell = getCurrentBestViewShell();
-+        ScGridWindow* gridWindow = (ScGridWindow*)pShell->GetWindow(); 
-+        try
-+        {
-+            uno::Reference< excel::XRange > xVbaSheetRange = ScVbaRange::getRangeObjectForName( mxContext, sRangeName, getDocShell( xModel ), formula::FormulaGrammar::CONV_XL_R1C1 );
-+;
-+            if( bScroll )
-+            {
-+                xVbaSheetRange->Select();
-+                uno::Reference< excel::XWindow >  xWindow = getActiveWindow();
-+                ScSplitPos eWhich = pShell->GetViewData()->GetActivePart();
-+                sal_Int32 nValueX = pShell->GetViewData()->GetPosX(WhichH(eWhich));
-+                sal_Int32 nValueY = pShell->GetViewData()->GetPosY(WhichV(eWhich));
-+                xWindow->SmallScroll( uno::makeAny( (sal_Int16)(xVbaSheetRange->getRow() - 1) ), 
-+                         uno::makeAny( (sal_Int16)nValueY ),
-+                         uno::makeAny( (sal_Int16)(xVbaSheetRange->getColumn() - 1)  ), 
-+                         uno::makeAny( (sal_Int16)nValueX ) );
-+                gridWindow->GrabFocus();
-+            }
-+            else
-+            {
-+                xVbaSheetRange->Select();
-+                gridWindow->GrabFocus();
-+            }
-+        }
-+        catch( uno::RuntimeException )
-+        {
-+            //maybe this should be a procedure name
-+            //TODO for procedure name
-+            //browse::XBrowseNodeFactory is a singlton. OUString::createFromAscii( "/singletons/com.sun.star.script.browse.theBrowseNodeFactory")
-+            //and the createView( browse::BrowseNodeFactoryViewTypes::MACROSELECTOR ) to get a root browse::XBrowseNode.
-+            //for query XInvocation interface.
-+            //but how to directly get the XInvocation?
-+            throw uno::RuntimeException( rtl::OUString::createFromAscii( "invalid reference for range name, it should be procedure name" ),
-+                    uno::Reference< uno::XInterface >() );
-+        }
-+        return;
-+    }
-+    uno::Reference< excel::XRange > xRange;
-+    if( Reference >>= xRange )
-+    {
-+        uno::Reference< excel::XRange > xVbaRange( Reference, uno::UNO_QUERY );
-+        ScTabViewShell* pShell = getCurrentBestViewShell();
-+        ScGridWindow* gridWindow = (ScGridWindow*)pShell->GetWindow(); 
-+        if ( xVbaRange.is() )
-+        {
-+            //TODO bScroll should be using, In this time, it doesenot have effection
-+            if( bScroll )
-+            {
-+                xVbaRange->Select();
-+                uno::Reference< excel::XWindow >  xWindow = getActiveWindow();
-+                ScSplitPos eWhich = pShell->GetViewData()->GetActivePart();
-+                sal_Int32 nValueX = pShell->GetViewData()->GetPosX(WhichH(eWhich));
-+                sal_Int32 nValueY = pShell->GetViewData()->GetPosY(WhichV(eWhich));
-+                xWindow->SmallScroll( uno::makeAny( (sal_Int16)(xVbaRange->getRow() - 1) ), 
-+                         uno::makeAny( (sal_Int16)nValueY ),
-+                         uno::makeAny( (sal_Int16)(xVbaRange->getColumn() - 1)  ), 
-+                         uno::makeAny( (sal_Int16)nValueX ) );
-+                gridWindow->GrabFocus();
-+            }
-+            else
-+            {
-+                xVbaRange->Select();
-+                gridWindow->GrabFocus();
-+            }
-+        }
-+        return;
-+    }
-+    throw uno::RuntimeException( rtl::OUString::createFromAscii( "invalid reference or name" ),
-+            uno::Reference< uno::XInterface >() );
-+}
-+
-+namespace
-+{
-+    static uno::Reference< frame::XController > lcl_getCurrentController()
-+    {
-+        const uno::Reference< frame::XModel > xWorkingDoc( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY );
-+        uno::Reference< frame::XController > xController;
-+        if ( xWorkingDoc.is() )
-+            xController.set( xWorkingDoc->getCurrentController(), uno::UNO_SET_THROW );
-+        else
-+            xController.set( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY_THROW );
-+        return xController;
-+    }
-+}
-+
-+sal_Int32 SAL_CALL
-+ScVbaApplication::getCursor() throw (uno::RuntimeException)
-+{
-+    sal_Int32 nPointerStyle( POINTER_ARROW );
-+    try
-+    {
-+        const uno::Reference< frame::XController > xController( lcl_getCurrentController(),     uno::UNO_SET_THROW );
-+        const uno::Reference< frame::XFrame >      xFrame     ( xController->getFrame(),        uno::UNO_SET_THROW );
-+        const uno::Reference< awt::XWindow >       xWindow    ( xFrame->getContainerWindow(),   uno::UNO_SET_THROW );
-+        // why the heck isn't there an XWindowPeer::getPointer, but a setPointer only?
-+        const Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
-+        if ( pWindow )
-+            nPointerStyle = pWindow->GetSystemWindow()->GetPointer().GetStyle();
-+    }
-+    catch( const uno::Exception& )
-+    {
-+    	DBG_UNHANDLED_EXCEPTION();
-+    }
-+
-+    switch( nPointerStyle )
-+    {
-+        case POINTER_ARROW:
-+            return excel::XlMousePointer::xlNorthwestArrow;
-+        case POINTER_NULL:
-+            return excel::XlMousePointer::xlDefault;
-+        case POINTER_WAIT:
-+            return excel::XlMousePointer::xlWait;
-+        case POINTER_TEXT:
-+            return excel::XlMousePointer::xlIBeam;
-+        default:
-+            return excel::XlMousePointer::xlDefault;
-+    }
-+}
-+
-+void SAL_CALL 
-+ScVbaApplication::setCursor( sal_Int32 _cursor ) throw (uno::RuntimeException)
-+{
-+    try
-+    {
-+        ::std::vector< uno::Reference< frame::XController > > aControllers;
-+
-+        const uno::Reference< frame::XModel2 > xModel2( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY );
-+        if ( xModel2.is() )
-+        {
-+            const uno::Reference< container::XEnumeration > xEnumControllers( xModel2->getControllers(), uno::UNO_SET_THROW );
-+            while ( xEnumControllers->hasMoreElements() )
-+            {
-+                const uno::Reference< frame::XController > xController( xEnumControllers->nextElement(), uno::UNO_QUERY_THROW );
-+                aControllers.push_back( xController );
-+            }
-+        }
-+        else
-+        {
-+            const uno::Reference< frame::XModel > xModel( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY );
-+            if ( xModel.is() )
-+            {
-+                const uno::Reference< frame::XController > xController( xModel->getCurrentController(), uno::UNO_SET_THROW );
-+                aControllers.push_back( xController );
-+            }
-+            else
-+            {
-+                const uno::Reference< frame::XController > xController( SfxObjectShell::GetCurrentComponent(), uno::UNO_QUERY_THROW );
-+                aControllers.push_back( xController );
-+            }
-+        }
-+
-+        for (   ::std::vector< uno::Reference< frame::XController > >::const_iterator controller = aControllers.begin();
-+                controller != aControllers.end();
-+                ++controller
-+            )
-+        {
-+            const uno::Reference< frame::XFrame >      xFrame     ( (*controller)->getFrame(),       uno::UNO_SET_THROW   );
-+            const uno::Reference< awt::XWindow >       xWindow    ( xFrame->getContainerWindow(),    uno::UNO_SET_THROW   );
-+
-+            Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
-+            OSL_ENSURE( pWindow, "ScVbaApplication::setCursor: no window!" );
-+            if ( !pWindow )
-+                continue;
-+
-+            switch( _cursor )
-+            {
-+                case excel::XlMousePointer::xlNorthwestArrow:
-+                {
-+                    const Pointer& rPointer( POINTER_ARROW );
-+                    pWindow->GetSystemWindow()->SetPointer( rPointer );
-+                    pWindow->GetSystemWindow()->EnableChildPointerOverwrite( sal_False );
-+                    break;
-+                }
-+                case excel::XlMousePointer::xlWait:
-+                case excel::XlMousePointer::xlIBeam:
-+                {
-+                    const Pointer& rPointer( static_cast< PointerStyle >( _cursor ) );
-+                    //It will set the edit window, toobar and statusbar's mouse pointer.
-+                    pWindow->GetSystemWindow()->SetPointer( rPointer );
-+                    pWindow->GetSystemWindow()->EnableChildPointerOverwrite( sal_True );
-+                    //It only set the edit window's mouse pointer
-+                    //pWindow->.SetPointer( rPointer );
-+                    //pWindow->.EnableChildPointerOverwrite( sal_True );
-+                    //printf("\nset Cursor...%d\n", pWindow->.GetType());
-+                    break;
-+                }
-+                case excel::XlMousePointer::xlDefault:
-+                {
-+                    const Pointer& rPointer( POINTER_NULL );
-+                    pWindow->GetSystemWindow()->SetPointer( rPointer );
-+                    pWindow->GetSystemWindow()->EnableChildPointerOverwrite( sal_False );
-+                    break;
-+                }
-+                default:
-+                    throw uno::RuntimeException( rtl::OUString( 
-+                            RTL_CONSTASCII_USTRINGPARAM("Unknown value for Cursor pointer")), uno::Reference< uno::XInterface >() );
-+                    // TODO: isn't this a flaw in the API? It should be allowed to throw an
-+                    // IllegalArgumentException, or so
-+            }
-+        }
-+    }
-+    catch( const uno::Exception& )
-+    {
-+    	DBG_UNHANDLED_EXCEPTION();
-+    }
-+}
-+
-+// #TODO perhaps we should switch the return type depending of the filter 
-+// type, e.g. return Calc for Calc and Excel if its an imported doc
-+rtl::OUString SAL_CALL
-+ScVbaApplication::getName() throw (uno::RuntimeException)
-+{
-+	static rtl::OUString appName( RTL_CONSTASCII_USTRINGPARAM("Microsoft Excel" ) );
-+	return appName;
-+}
-+
-+// #TODO #FIXME get/setDisplayAlerts are just stub impl 
-+void SAL_CALL
-+ScVbaApplication::setDisplayAlerts(sal_Bool /*displayAlerts*/) throw (uno::RuntimeException)
-+{
-+}
-+
-+sal_Bool SAL_CALL
-+ScVbaApplication::getDisplayAlerts() throw (uno::RuntimeException)
-+{
-+	return sal_True;
-+}
-+void SAL_CALL
-+ScVbaApplication::Calculate() throw(  script::BasicErrorException , uno::RuntimeException )
-+{
-+	uno::Reference< frame::XModel > xModel( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+	uno::Reference< sheet::XCalculatable > xCalculatable( getCurrentDocument(), uno::UNO_QUERY_THROW );
-+	xCalculatable->calculateAll();
-+}
-+
-+uno::Reference< beans::XPropertySet > lcl_getPathSettingsService( const uno::Reference< uno::XComponentContext >& xContext ) throw ( uno::RuntimeException )
-+{
-+	static uno::Reference< beans::XPropertySet >  xPathSettings;
-+	if ( !xPathSettings.is() )
-+	{
-+		uno::Reference< lang::XMultiComponentFactory > xSMgr( xContext->getServiceManager(), uno::UNO_QUERY_THROW );
-+		xPathSettings.set( xSMgr->createInstanceWithContext(::rtl::OUString::createFromAscii("com.sun.star.util.PathSettings"), xContext), uno::UNO_QUERY_THROW );
-+	}
-+	return xPathSettings;
-+}
-+rtl::OUString ScVbaApplication::getOfficePath( const rtl::OUString& _sPathType ) throw ( uno::RuntimeException )
-+{
-+	rtl::OUString sRetPath;
-+	uno::Reference< beans::XPropertySet > xProps = lcl_getPathSettingsService( mxContext );
-+	try
-+	{
-+		rtl::OUString sUrl;
-+	 	xProps->getPropertyValue( _sPathType ) >>= sUrl;
-+
-+		// if its a list of paths then use the last one
-+		sal_Int32 nIndex =  sUrl.lastIndexOf( ';' ) ;
-+		if ( nIndex > 0 )
-+			sUrl = sUrl.copy( nIndex + 1 ); 	
-+		::osl::File::getSystemPathFromFileURL( sUrl, sRetPath );
-+	}
-+	catch (uno::Exception&)
-+	{
-+		DebugHelper::exception(SbERR_METHOD_FAILED, rtl::OUString());    
-+	}		
-+	return sRetPath;
-+}
-+void SAL_CALL 
-+ScVbaApplication::setDefaultFilePath( const ::rtl::OUString& DefaultFilePath ) throw (script::BasicErrorException, uno::RuntimeException)
-+{
-+	uno::Reference< beans::XPropertySet > xProps = lcl_getPathSettingsService( mxContext );
-+	rtl::OUString aURL;
-+	osl::FileBase::getFileURLFromSystemPath( DefaultFilePath, aURL );
-+	xProps->setPropertyValue(  rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Work")), uno::makeAny( aURL ) );
-+
-+	
-+}
-+
-+::rtl::OUString SAL_CALL 
-+ScVbaApplication::getDefaultFilePath(  ) throw (script::BasicErrorException, uno::RuntimeException)
-+{
-+	return getOfficePath( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Work")));
-+}
-+
-+::rtl::OUString SAL_CALL 
-+ScVbaApplication::LibraryPath(  ) throw (script::BasicErrorException, uno::RuntimeException)
-+{
-+	return getOfficePath( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Basic")));
-+}
-+
-+::rtl::OUString SAL_CALL 
-+ScVbaApplication::TemplatesPath(  ) throw (script::BasicErrorException, uno::RuntimeException)
-+{
-+	return getOfficePath( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Template")));
-+}
-+
-+::rtl::OUString SAL_CALL 
-+ScVbaApplication::PathSeparator(  ) throw (script::BasicErrorException, uno::RuntimeException)
-+{
-+	static rtl::OUString sPathSep( RTL_CONSTASCII_USTRINGPARAM( FILE_PATH_SEPERATOR ) );
-+	return sPathSep;
-+}
-+
-+typedef std::list< ScRange > Ranges;
-+typedef std::list< ScRangeList > RangesList;
++    return uno::Any( xNames->Item( aIndex, uno::Any() ) );
+ }
+ 
+ 
+@@ -800,89 +846,382 @@
+ 	return sPathSep;
+ }
+ 
++typedef std::list< ScRange > Ranges;
++typedef std::list< ScRangeList > RangesList;
 +
 +void lcl_addRangesToVec( RangesList& vRanges, const uno::Any& aArg ) throw ( script::BasicErrorException, uno::RuntimeException )
 +{
@@ -16279,75 +14307,111 @@
 +	return intersections;
 +}
 +
-+uno::Reference< excel::XRange > SAL_CALL 
-+ScVbaApplication::Intersect( const uno::Reference< excel::XRange >& Arg1, const uno::Reference< excel::XRange >& Arg2, const uno::Any& Arg3, const uno::Any& Arg4, const uno::Any& Arg5, const uno::Any& Arg6, const uno::Any& Arg7, const uno::Any& Arg8, const uno::Any& Arg9, const uno::Any& Arg10, const uno::Any& Arg11, const uno::Any& Arg12, const uno::Any& Arg13, const uno::Any& Arg14, const uno::Any& Arg15, const uno::Any& Arg16, const uno::Any& Arg17, const uno::Any& Arg18, const uno::Any& Arg19, const uno::Any& Arg20, const uno::Any& Arg21, const uno::Any& Arg22, const uno::Any& Arg23, const uno::Any& Arg24, const uno::Any& Arg25, const uno::Any& Arg26, const uno::Any& Arg27, const uno::Any& Arg28, const uno::Any& Arg29, const uno::Any& Arg30 ) throw (script::BasicErrorException, uno::RuntimeException)
-+{
-+	if ( !Arg1.is() || !Arg2.is() )
-+		DebugHelper::exception(SbERR_BAD_PARAMETER, rtl::OUString() );
-+
+ uno::Reference< excel::XRange > SAL_CALL 
+ ScVbaApplication::Intersect( const uno::Reference< excel::XRange >& Arg1, const uno::Reference< excel::XRange >& Arg2, const uno::Any& Arg3, const uno::Any& Arg4, const uno::Any& Arg5, const uno::Any& Arg6, const uno::Any& Arg7, const uno::Any& Arg8, const uno::Any& Arg9, const uno::Any& Arg10, const uno::Any& Arg11, const uno::Any& Arg12, const uno::Any& Arg13, const uno::Any& Arg14, const uno::Any& Arg15, const uno::Any& Arg16, const uno::Any& Arg17, const uno::Any& Arg18, const uno::Any& Arg19, const uno::Any& Arg20, const uno::Any& Arg21, const uno::Any& Arg22, const uno::Any& Arg23, const uno::Any& Arg24, const uno::Any& Arg25, const uno::Any& Arg26, const uno::Any& Arg27, const uno::Any& Arg28, const uno::Any& Arg29, const uno::Any& Arg30 ) throw (script::BasicErrorException, uno::RuntimeException)
+ {
+-	std::vector< uno::Reference< excel::XRange > > vRanges;
+ 	if ( !Arg1.is() || !Arg2.is() )
+ 		DebugHelper::exception(SbERR_BAD_PARAMETER, rtl::OUString() );
+ 
+-	vRanges.push_back( Arg1 );
+-	vRanges.push_back( Arg2 );
 +	RangesList vRanges;
 +	lcl_addRangesToVec( vRanges, uno::makeAny( Arg1 ) );
 +	lcl_addRangesToVec( vRanges, uno::makeAny( Arg2 ) );
-+
-+	if ( Arg3.hasValue() )
+ 
+ 	if ( Arg3.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg3, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg3 );
-+	if ( Arg4.hasValue() )
+ 	if ( Arg4.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg4, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg4 );
-+	if ( Arg5.hasValue() )
+ 	if ( Arg5.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg5, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg5 );
-+	if ( Arg6.hasValue() )
+ 	if ( Arg6.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg6, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg6 );
-+	if ( Arg7.hasValue() )
+ 	if ( Arg7.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg7, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg7 );
-+	if ( Arg8.hasValue() )
+ 	if ( Arg8.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg8, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg8 );
-+	if ( Arg9.hasValue() )
+ 	if ( Arg9.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg9, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg9 );
-+	if ( Arg10.hasValue() )
+ 	if ( Arg10.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg10, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg10 );
-+	if ( Arg11.hasValue() )
+ 	if ( Arg11.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg11, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg11 );
-+	if ( Arg12.hasValue() )
+ 	if ( Arg12.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg12, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg12 );
-+	if ( Arg13.hasValue() )
+ 	if ( Arg13.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg13, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg13 );
-+	if ( Arg14.hasValue() )
+ 	if ( Arg14.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg14, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg14 );
-+	if ( Arg15.hasValue() )
+ 	if ( Arg15.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg15, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg15 );
-+	if ( Arg16.hasValue() )
+ 	if ( Arg16.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg16, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg16 );
-+	if ( Arg17.hasValue() )
+ 	if ( Arg17.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg17, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg17 );
-+	if ( Arg18.hasValue() )
+ 	if ( Arg18.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg18, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg18 );
-+	if ( Arg19.hasValue() )
+ 	if ( Arg19.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg19, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg19 );
-+	if ( Arg20.hasValue() )
+ 	if ( Arg20.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg20, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg20 );
-+	if ( Arg21.hasValue() )
+ 	if ( Arg21.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg21, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg21 );
-+	if ( Arg22.hasValue() )
+ 	if ( Arg22.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg22, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg22 );
-+	if ( Arg23.hasValue() )
+ 	if ( Arg23.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg23, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg23 );
-+	if ( Arg24.hasValue() )
+ 	if ( Arg24.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg24, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg24 );
-+	if ( Arg25.hasValue() )
+ 	if ( Arg25.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg25, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg25 );
-+	if ( Arg26.hasValue() )
+ 	if ( Arg26.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg26, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg26 );
-+	if ( Arg27.hasValue() )
+ 	if ( Arg27.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg27, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg27 );
-+	if ( Arg28.hasValue() )
+ 	if ( Arg28.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg28, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg28 );
-+	if ( Arg29.hasValue() )
+ 	if ( Arg29.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg29, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg29 );
-+	if ( Arg30.hasValue() )
+ 	if ( Arg30.hasValue() )
+-		vRanges.push_back( uno::Reference< excel::XRange >( Arg30, uno::UNO_QUERY_THROW ) );
 +		lcl_addRangesToVec( vRanges, Arg30 );
-+
+ 
+-	std::vector< uno::Reference< excel::XRange > >::iterator it = vRanges.begin();
+-	std::vector< uno::Reference< excel::XRange > >::iterator it_end = vRanges.end();
 +	uno::Reference< excel::XRange > xRefRange; 
-+
+ 
+-	uno::Reference< excel::XRange > xRefRange( *it );
+-	++it;
+-	for ( ; it != it_end; ++it )
 +	ScRangeList aCellRanges;
 +	// first pass - gets the set of all possible interections of Arg1..ArgN
 +	RangesList intersections = lcl_intersections( vRanges );
@@ -16356,7 +14420,12 @@
 +	if ( intersections.size() > 1)
 +		intersections = lcl_intersections( intersections );
 +	for( RangesList::iterator it = intersections.begin(); it != intersections.end(); ++it )
-+	{
+ 	{
+-		ScVbaRange* pRange = dynamic_cast< ScVbaRange * >( xRefRange.get());
+-		if ( pRange )
+-			xRefRange = pRange->intersect( *it );
+-		if ( !xRefRange.is() )
+-			return uno::Reference< excel::XRange >();
 +		for ( USHORT x = 0 ; x < it->Count(); ++x )
 +#ifndef OWN_JOIN
 +			aCellRanges.Join( *it->GetObject(x) );
@@ -16376,10 +14445,10 @@
 +		uno::Reference< sheet::XSheetCellRangeContainer > xRanges( new ScCellRangesObj( pDocShell, aCellRanges ) );
 +		xRefRange = new ScVbaRange( uno::Reference< XHelperInterface >(), mxContext, xRanges );
 +
-+	}
-+	return xRefRange;
-+}
-+
+ 	}
+ 	return xRefRange;
+ }
+ 
 +uno::Reference< excel::XRange > SAL_CALL 
 +ScVbaApplication::Union( const uno::Reference< excel::XRange >& Arg1, const uno::Reference< excel::XRange >& Arg2, const uno::Any& Arg3, const uno::Any& Arg4, const uno::Any& Arg5, const uno::Any& Arg6, const uno::Any& Arg7, const uno::Any& Arg8, const uno::Any& Arg9, const uno::Any& Arg10, const uno::Any& Arg11, const uno::Any& Arg12, const uno::Any& Arg13, const uno::Any& Arg14, const uno::Any& Arg15, const uno::Any& Arg16, const uno::Any& Arg17, const uno::Any& Arg18, const uno::Any& Arg19, const uno::Any& Arg20, const uno::Any& Arg21, const uno::Any& Arg22, const uno::Any& Arg23, const uno::Any& Arg24, const uno::Any& Arg25, const uno::Any& Arg26, const uno::Any& Arg27, const uno::Any& Arg28, const uno::Any& Arg29, const uno::Any& Arg30 ) throw (script::BasicErrorException, uno::RuntimeException)
 +{
@@ -16471,80 +14540,18 @@
 +	return xRange;
 +}
 +
-+void
-+ScVbaApplication::Volatile( const uno::Any& aVolatile )  throw ( uno::RuntimeException )
-+{
-+	sal_Bool bVolatile = sal_True;
-+	aVolatile >>= bVolatile;
-+	return; 
-+/*
-+	if ( bVolatile )
-+		throw uno::RuntimeException( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("Volatile - not supported" ) ), uno::Reference< uno::XInterface >() );
-+	// bVoloatile is false - currently this only would make sense if 
-+	// the autocalculate mode is set to be true.
-+
-+	// so really this is crap, #TODO try and understand how ( or if ) 
-+	// the calculation mode and volatile interoperate
-+	if ( ! getCalculation() == excel::XlCalculation::xlCalculationAutomatic )
-+		setCalculation(  excel::XlCalculation::xlCalculationAutomatic );
-+*/
-+}
-+
-+void SAL_CALL
-+ScVbaApplication::DoEvents() throw ( uno::RuntimeException )
-+{
-+}
-+
-+::sal_Bool SAL_CALL 
-+ScVbaApplication::getDisplayFormulaBar() throw ( css::uno::RuntimeException )
-+{
-+	sal_Bool bRes = sal_False;
-+	ScTabViewShell* pViewShell = getCurrentBestViewShell();
-+	if ( pViewShell )
-+	{
-+		SfxBoolItem sfxFormBar( FID_TOGGLEINPUTLINE);
-+		SfxAllItemSet reqList(  SFX_APP()->GetPool() );
-+		reqList.Put( sfxFormBar );
-+
-+		pViewShell->GetState( reqList );
-+		const SfxPoolItem *pItem=0;
-+		if ( reqList.GetItemState( FID_TOGGLEINPUTLINE, sal_False, &pItem ) == SFX_ITEM_SET )
-+			bRes =   ((SfxBoolItem*)pItem)->GetValue();
-+	}
-+	return bRes;
-+}
-+
-+void SAL_CALL 
-+ScVbaApplication::setDisplayFormulaBar( ::sal_Bool _displayformulabar ) throw ( css::uno::RuntimeException )
-+{
-+	ScTabViewShell* pViewShell = getCurrentBestViewShell();
-+	if ( pViewShell && ( _displayformulabar !=  getDisplayFormulaBar() ) )
-+	{
-+		SfxBoolItem sfxFormBar( FID_TOGGLEINPUTLINE, _displayformulabar);
-+		SfxAllItemSet reqList(  SFX_APP()->GetPool() );
-+		SfxRequest aReq( FID_TOGGLEINPUTLINE, 0, reqList );
-+		pViewShell->Execute( aReq );
-+	}	
-+}
-+
-+rtl::OUString& 
-+ScVbaApplication::getServiceImplName()
-+{
-+	static rtl::OUString sImplName( RTL_CONSTASCII_USTRINGPARAM("ScVbaApplication") );
-+	return sImplName;
-+}
-+
-+uno::Sequence< rtl::OUString > 
-+ScVbaApplication::getServiceNames()
-+{
-+	static uno::Sequence< rtl::OUString > aServiceNames;
-+	if ( aServiceNames.getLength() == 0 )
-+	{
-+		aServiceNames.realloc( 1 );
+ void
+ ScVbaApplication::Volatile( const uno::Any& aVolatile )  throw ( uno::RuntimeException )
+ {
+@@ -953,7 +1292,7 @@
+ 	if ( aServiceNames.getLength() == 0 )
+ 	{
+ 		aServiceNames.realloc( 1 );
+-		aServiceNames[ 0 ] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("org.openoffice.excel.Application" ) );
 +		aServiceNames[ 0 ] = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("ooo.vba.excel.Application" ) );
-+	}
-+	return aServiceNames;
-+}
+ 	}
+ 	return aServiceNames;
+ }
 Index: sc/source/ui/vba/vbapagebreaks.cxx
 ===================================================================
 --- sc/source/ui/vba/vbapagebreaks.cxx	(.../tags/DEV300_m39)	(revision 0)

Modified: trunk/patches/dev300/cygwin-make-ver.diff
==============================================================================
--- trunk/patches/dev300/cygwin-make-ver.diff	(original)
+++ trunk/patches/dev300/cygwin-make-ver.diff	Wed Feb 18 11:09:16 2009
@@ -5,8 +5,8 @@
        fi
  done
 +$GNUMAKE --version 2> /dev/null | grep ' 3.81'  2>&1 > /dev/null
-+if test $? -eq 0;  then
-+  AC_MSG_ERROR("gmake 3.81 cannot build mozilla - please use 3.80")
++if test $? -ne 0;  then
++  AC_MSG_WARN("gmake 3.81 cannot build mozilla - please use 3.80")
 +fi
  AC_MSG_RESULT($GNUMAKE)
  

Modified: trunk/patches/dev300/default-no-registration-menu-sd.diff
==============================================================================
--- trunk/patches/dev300/default-no-registration-menu-sd.diff	(original)
+++ trunk/patches/dev300/default-no-registration-menu-sd.diff	Wed Feb 18 11:09:16 2009
@@ -3,22 +3,22 @@
 --- sd/uiconfig/sdraw/menubar/menubar.xml
 +++ sd/uiconfig/sdraw/menubar/menubar.xml
 @@ -319,7 +319,6 @@
- 			<menu:menuitem menu:id=".uno:ExtendedHelp"/>
- 			<menu:menuseparator/>
- 			<menu:menuitem menu:id=".uno:HelpSupport"/>
--			<menu:menuitem menu:id=".uno:OnlineRegistrationDlg"/>
- 			<menu:menuseparator/>
- 			<menu:menuitem menu:id=".uno:About"/>
- 		</menu:menupopup>
+ 			<menu:menuitem menu:id=".uno:ExtendedHelp"/>
+ 			<menu:menuseparator/>
+ 			<menu:menuitem menu:id=".uno:HelpSupport"/>
+-			<menu:menuitem menu:id=".uno:OnlineRegistrationDlg"/>
+ 			<menu:menuseparator/>
+ 			<menu:menuitem menu:id=".uno:About"/>
+ 		</menu:menupopup>
 diff --git sd/uiconfig/simpress/menubar/menubar.xml sd/uiconfig/simpress/menubar/menubar.xml
 index b01d431..8e6fd46 100644
 --- sd/uiconfig/simpress/menubar/menubar.xml
 +++ sd/uiconfig/simpress/menubar/menubar.xml
 @@ -294,7 +294,6 @@
- 			<menu:menuitem menu:id=".uno:ExtendedHelp"/>
- 			<menu:menuseparator/>
- 			<menu:menuitem menu:id=".uno:HelpSupport"/>
--			<menu:menuitem menu:id=".uno:OnlineRegistrationDlg"/>
- 			<menu:menuseparator/>
- 			<menu:menuitem menu:id=".uno:About"/>
- 		</menu:menupopup>
+ 			<menu:menuitem menu:id=".uno:ExtendedHelp"/>
+ 			<menu:menuseparator/>
+ 			<menu:menuitem menu:id=".uno:HelpSupport"/>
+-			<menu:menuitem menu:id=".uno:OnlineRegistrationDlg"/>
+ 			<menu:menuseparator/>
+ 			<menu:menuitem menu:id=".uno:About"/>
+ 		</menu:menupopup>

Modified: trunk/patches/dev300/extensions_configure.diff
==============================================================================
--- trunk/patches/dev300/extensions_configure.diff	(original)
+++ trunk/patches/dev300/extensions_configure.diff	Wed Feb 18 11:09:16 2009
@@ -51,7 +51,7 @@
  fi
  AC_SUBST(ENABLE_MEDIAWIKI)
  AC_SUBST(SYSTEM_APACHE_COMMONS)
-@@ -5663,6 +5663,7 @@
+@@ -5876,6 +5876,7 @@
  else
    AC_MSG_RESULT([no])
    ENABLE_REPORTBUILDER=NO

Modified: trunk/patches/dev300/gnome-vfs-locking-config_office.diff
==============================================================================
--- trunk/patches/dev300/gnome-vfs-locking-config_office.diff	(original)
+++ trunk/patches/dev300/gnome-vfs-locking-config_office.diff	Wed Feb 18 11:09:16 2009
@@ -1,6 +1,6 @@
-Index: config_office/configure.in
+Index: configure.in
 ===================================================================
-RCS file: /cvs/tools/config_office/configure.in,v
+RCS file: /cvs/tools/configure.in,v
 retrieving revision 1.269
 retrieving revision 1.254.6.2
 diff -u -p -u -p -B -r1.269 -r1.254.6.2
@@ -37,9 +37,9 @@
  
  dnl ===================================================================
  dnl Check whether the gtk 2.0 libraries are available.
-Index: config_office/set_soenv.in
+Index: set_soenv.in
 ===================================================================
-RCS file: /cvs/tools/config_office/set_soenv.in,v
+RCS file: /cvs/tools/set_soenv.in,v
 retrieving revision 1.187
 retrieving revision 1.179.6.2
 diff -u -p -u -p -B -r1.187 -r1.179.6.2

Modified: trunk/patches/dev300/hunspell-lib-use-_pic.diff
==============================================================================
--- trunk/patches/dev300/hunspell-lib-use-_pic.diff	(original)
+++ trunk/patches/dev300/hunspell-lib-use-_pic.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in-old    2007-08-07 16:43:16.000000000 +0200
-+++ config_office/configure.in        2007-08-07 16:43:31.000000000 +0200
+--- configure.in-old    2007-08-07 16:43:16.000000000 +0200
++++ configure.in        2007-08-07 16:43:31.000000000 +0200
 @@ -4363,7 +4363,7 @@
           ], [])
 -      AC_CHECK_LIB(hunspell, main, [],

Modified: trunk/patches/dev300/jemalloc.diff
==============================================================================
--- trunk/patches/dev300/jemalloc.diff	(original)
+++ trunk/patches/dev300/jemalloc.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.orig	2008-03-18 19:27:49.000000000 +0100
-+++ config_office/configure.in	2008-03-18 19:29:49.000000000 +0100
+--- configure.in.orig	2008-03-18 19:27:49.000000000 +0100
++++ configure.in	2008-03-18 19:29:49.000000000 +0100
 @@ -745,7 +745,7 @@
  ],,)
  AC_ARG_WITH(alloc,

Modified: trunk/patches/dev300/kde4-configure.diff
==============================================================================
--- trunk/patches/dev300/kde4-configure.diff	(original)
+++ trunk/patches/dev300/kde4-configure.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.kde4~	2008-06-13 12:38:16.341775201 +0200
-+++ config_office/configure.in	2008-06-13 13:56:00.377150979 +0200
+--- configure.in.kde4~	2008-06-13 12:38:16.341775201 +0200
++++ configure.in	2008-06-13 13:56:00.377150979 +0200
 @@ -5552,11 +5552,11 @@ MOC="moc"
  if test "$test_kde" = "yes" -a "$ENABLE_KDE" = "TRUE" ; then
      dnl Search paths for Qt and KDE

Modified: trunk/patches/dev300/kde4-fpicker.diff
==============================================================================
--- trunk/patches/dev300/kde4-fpicker.diff	(original)
+++ trunk/patches/dev300/kde4-fpicker.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.kde4fpicker~	2008-07-10 00:12:02.046715223 +0200
-+++ config_office/configure.in	2008-07-10 00:23:50.984694910 +0200
+--- configure.in.kde4fpicker~	2008-07-10 00:12:02.046715223 +0200
++++ configure.in	2008-07-10 00:23:50.984694910 +0200
 @@ -5801,7 +5801,7 @@ your KDE installation by exporting KDEDI
      fi
  

Modified: trunk/patches/dev300/layout-default-enable-config_office.diff
==============================================================================
--- trunk/patches/dev300/layout-default-enable-config_office.diff	(original)
+++ trunk/patches/dev300/layout-default-enable-config_office.diff	Wed Feb 18 11:09:16 2009
@@ -1,4 +1,4 @@
-diff --git a/config_office/configure.in b/config_office/configure.in
+diff --git a/configure.in b/configure.in
 index 39f9cbe..c6bf26f 100644
 --- configure.in.old
 +++ configure.in

Modified: trunk/patches/dev300/layout-disable-experimental.diff
==============================================================================
--- trunk/patches/dev300/layout-disable-experimental.diff	(original)
+++ trunk/patches/dev300/layout-disable-experimental.diff	Wed Feb 18 11:09:16 2009
@@ -3,7 +3,7 @@
 c7bb736... Add --enable-layout-experimental configure switch.  Part II.  Typo in configure.in, add set_soenv entry.
 fea9cd2... Add --enable-layout-experimental configure switch.  Default off.
 
-diff --git config_office/configure.in config_office/configure.in
+diff --git configure.in configure.in
 index 531db1e..00b7ab3 100644
 --- configure.in.old
 +++ configure.in
@@ -35,7 +35,7 @@
  # ===================================================================
  # De- or increase default verbosity of build process
  # ===================================================================
-diff --git a/config_office/set_soenv.in b/config_office/set_soenv.in
+diff --git a/set_soenv.in b/set_soenv.in
 index c6bd1de..bf515bc 100644
 --- set_soenv.in.old
 +++ set_soenv.in

Modified: trunk/patches/dev300/layoutdialogs2-development.diff
==============================================================================
--- trunk/patches/dev300/layoutdialogs2-development.diff	(original)
+++ trunk/patches/dev300/layoutdialogs2-development.diff	Wed Feb 18 11:09:16 2009
@@ -1,4 +1,4 @@
-b7cd118... config_office/configure: Regenerate.  Fixes naive builds.
+b7cd118... configure: Regenerate.  Fixes naive builds.
 d130ba7... Wordcount: minor HIG tweaks.
 01a6fce... Zoom: minor HIG spacing tweaks.
 67f2b82... Zoom: fix align-test and update zoom.xml.

Modified: trunk/patches/dev300/mozilla-firefox.diff
==============================================================================
--- trunk/patches/dev300/mozilla-firefox.diff	(original)
+++ trunk/patches/dev300/mozilla-firefox.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.mozff	2007-01-30 19:59:21.000000000 +0100
-+++ config_office/configure.in	2007-02-01 12:43:06.000000000 +0100
+--- configure.in.mozff	2007-01-30 19:59:21.000000000 +0100
++++ configure.in	2007-02-01 12:43:06.000000000 +0100
 @@ -3615,7 +3615,7 @@
      SYSTEM_MOZILLA=YES
      AC_MSG_CHECKING([which Mozilla flavour to use])

Modified: trunk/patches/dev300/pdfimport-system-poppler.diff
==============================================================================
--- trunk/patches/dev300/pdfimport-system-poppler.diff	(original)
+++ trunk/patches/dev300/pdfimport-system-poppler.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in	31 Jul 2008 13:49:05 -0000	1.282
-+++ config_office/configure.in	19 Aug 2008 13:33:04 -0000
+--- configure.in	31 Jul 2008 13:49:05 -0000	1.282
++++ configure.in	19 Aug 2008 13:33:04 -0000
 @@ -345,6 +345,9 @@
  AC_ARG_WITH(system-icu,
  [  --with-system-icu       Use icu already on system
@@ -54,8 +54,8 @@
  
  if test "$ENABLE_PRESENTER_SCREEN" = "YES" -o "$ENABLE_MINIMIZER" = "YES" -o "$ENABLE_PDFIMPORT" = "YES"; then
     AC_MSG_CHECKING([for sdext module])
---- config_office/set_soenv.in	31 Jul 2008 13:53:05 -0000	1.196
-+++ config_office/set_soenv.in	19 Aug 2008 13:33:05 -0000
+--- set_soenv.in	31 Jul 2008 13:53:05 -0000	1.196
++++ set_soenv.in	19 Aug 2008 13:33:05 -0000
 @@ -1998,6 +1998,9 @@
  ToFile( "SYSTEM_FREETYPE",   "@SYSTEM_FREETYPE@",  "e" );
  ToFile( "FREETYPE_CFLAGS",   "@FREETYPE_CFLAGS@",  "e" );

Modified: trunk/patches/dev300/separate-helpcontent.diff
==============================================================================
--- trunk/patches/dev300/separate-helpcontent.diff	(original)
+++ trunk/patches/dev300/separate-helpcontent.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in	2007-05-28 13:35:49.000000000 +0200
-+++ config_office/configure.in	2007-05-28 18:01:00.000000000 +0200
+--- configure.in	2007-05-28 13:35:49.000000000 +0200
++++ configure.in	2007-05-28 18:01:00.000000000 +0200
 @@ -43,6 +43,11 @@ AC_ARG_WITH(openldap,
  AC_ARG_ENABLE(lockdown,
  [  --enable-lockdown       Enables the gconf integration work in OOo
@@ -33,8 +33,8 @@
  dnl Test for the presence of libstartup-notification
  dnl ===================================================================
  AC_MSG_CHECKING([whether to use libstartup-notification])
---- config_office/set_soenv.in	2007-05-28 11:19:16.000000000 +0200
-+++ config_office/set_soenv.in	2007-05-28 18:02:53.000000000 +0200
+--- set_soenv.in	2007-05-28 11:19:16.000000000 +0200
++++ set_soenv.in	2007-05-28 18:02:53.000000000 +0200
 @@ -1795,6 +1795,7 @@ ToFile( "VC_STANDARD",       "@VC_STANDA
  ToFile( "WITH_GPC",          "@WITH_GPC@",         "e" );
  ToFile( "WITH_MYSPELL_DICTS","@WITH_MYSPELL_DICTS@","e");

Modified: trunk/patches/dev300/system-db-4.3-use-lpthread.diff
==============================================================================
--- trunk/patches/dev300/system-db-4.3-use-lpthread.diff	(original)
+++ trunk/patches/dev300/system-db-4.3-use-lpthread.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.ark	2007-10-19 11:27:12.000000000 +0200
-+++ config_office/configure.in	2007-10-19 11:28:12.000000000 +0200
+--- configure.in.ark	2007-10-19 11:27:12.000000000 +0200
++++ configure.in	2007-10-19 11:28:12.000000000 +0200
 @@ -3311,11 +3311,11 @@
      else
         AC_MSG_RESULT([no. you need at least db 4.1])

Modified: trunk/patches/dev300/system-db-check.diff
==============================================================================
--- trunk/patches/dev300/system-db-check.diff	(original)
+++ trunk/patches/dev300/system-db-check.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.orig	2007-07-15 16:45:32.000000000 +0200
-+++ config_office/configure.in	2007-07-15 16:48:19.000000000 +0200
+--- configure.in.orig	2007-07-15 16:45:32.000000000 +0200
++++ configure.in	2007-07-15 16:48:19.000000000 +0200
 @@ -3277,14 +3277,12 @@
  	test "$with_system_db" != "no"; then
      SYSTEM_DB=YES
@@ -50,8 +50,8 @@
  AC_SUBST(DB_INCLUDES)
  AC_SUBST(DB_JAR)
  
---- config_office/set_soenv.in.orig	2007-07-15 16:45:39.000000000 +0200
-+++ config_office/set_soenv.in	2007-07-15 16:48:37.000000000 +0200
+--- set_soenv.in.orig	2007-07-15 16:45:39.000000000 +0200
++++ set_soenv.in	2007-07-15 16:48:37.000000000 +0200
 @@ -1832,6 +1832,8 @@
  ToFile( "SYSTEM_EXPAT",      "@SYSTEM_EXPAT@",     "e" );
  ToFile( "SYSTEM_DB",         "@SYSTEM_DB@",        "e" );

Modified: trunk/patches/dev300/system-libc.diff
==============================================================================
--- trunk/patches/dev300/system-libc.diff	(original)
+++ trunk/patches/dev300/system-libc.diff	Wed Feb 18 11:09:16 2009
@@ -1,10 +1,10 @@
-Index: config_office/configure.in
+Index: configure.in
 ===================================================================
-RCS file: /cvs/tools/config_office/configure.in,v
+RCS file: /cvs/tools/configure.in,v
 retrieving revision 1.169
 diff -u -u -r1.169 configure.in
---- config_office/configure.in	10 Jul 2006 19:00:12 -0000	1.169
-+++ config_office/configure.in	19 Jul 2006 10:35:14 -0000
+--- configure.in	10 Jul 2006 19:00:12 -0000	1.169
++++ configure.in	19 Jul 2006 10:35:14 -0000
 @@ -3727,6 +3727,10 @@
        AC_MSG_ERROR([no, upgrade libc])
     fi
@@ -16,13 +16,13 @@
  
  dnl =========================================
  dnl Check for the Microsoft Platform SDK.
-Index: config_office/set_soenv.in
+Index: set_soenv.in
 ===================================================================
-RCS file: /cvs/tools/config_office/set_soenv.in,v
+RCS file: /cvs/tools/set_soenv.in,v
 retrieving revision 1.107
 diff -u -u -r1.107 set_soenv.in
---- config_office/set_soenv.in	5 Jul 2006 22:32:39 -0000	1.107
-+++ config_office/set_soenv.in	19 Jul 2006 10:35:14 -0000
+--- set_soenv.in	5 Jul 2006 22:32:39 -0000	1.107
++++ set_soenv.in	19 Jul 2006 10:35:14 -0000
 @@ -1577,6 +1577,8 @@
  ToFile( "CVER",              $CVER,              "e" );
  ToFile( "GUI",               $GUI,               "e" );

Modified: trunk/patches/dev300/win32-activex-disable.diff
==============================================================================
--- trunk/patches/dev300/win32-activex-disable.diff	(original)
+++ trunk/patches/dev300/win32-activex-disable.diff	Wed Feb 18 11:09:16 2009
@@ -32,7 +32,7 @@
  AC_MSG_CHECKING([whether and how to use Xinerama])
  if test "$_os" = "Darwin"; then
 --- scp2/source/activex/file_activex.scp	Thu Oct 27 17:08:13 2005
-+++ /mnt/pippi/src/2.0.2/build/OOO_2_0_2/scp2/source/activex/file_activex.scp	Wed May  3 14:24:12 2006
++++ scp2/source/activex/file_activex.scp	Wed May  3 14:24:12 2006
 @@ -36,4 +36,6 @@
  #include "macros.inc"
  
@@ -45,7 +45,7 @@
  
 +#endif // WITH_ACTIVEX_COMPONENT
 --- scp2/source/activex/module_activex.scp	Fri Sep  9 04:17:32 2005
-+++ /mnt/pippi/src/2.0.2/build/OOO_2_0_2/scp2/source/activex/module_activex.scp	Wed May  3 14:24:29 2006
++++ scp2/source/activex/module_activex.scp	Wed May  3 14:24:29 2006
 @@ -36,6 +36,8 @@
  
  #include "macros.inc"
@@ -62,7 +62,7 @@
 +
 +#endif // WITH_ACTIVEX_COMPONENT
 --- scp2/source/calc/registryitem_calc.scp	Thu Nov 10 18:18:08 2005
-+++ /mnt/pippi/src/2.0.2/build/OOO_2_0_2/scp2/source/calc/registryitem_calc.scp	Wed May  3 14:25:20 2006
++++ scp2/source/calc/registryitem_calc.scp	Wed May  3 14:25:20 2006
 @@ -36,6 +36,8 @@
  
  #include "macros.inc"
@@ -118,7 +118,7 @@
  RegistryItem gid_Regitem_Openoffice_Calcdocument_1_Defaulticon
      ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
 --- scp2/source/draw/registryitem_draw.scp	Thu Nov 10 18:18:21 2005
-+++ /mnt/pippi/src/2.0.2/build/OOO_2_0_2/scp2/source/draw/registryitem_draw.scp	Wed May  3 14:25:46 2006
++++ scp2/source/draw/registryitem_draw.scp	Wed May  3 14:25:46 2006
 @@ -36,6 +36,8 @@
  
  #include "macros.inc"
@@ -174,7 +174,7 @@
  RegistryItem gid_Regitem_Openoffice_Drawdocument_1_Defaulticon
      ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
 --- scp2/source/impress/registryitem_impress.scp	Thu Nov 10 18:18:33 2005
-+++ /mnt/pippi/src/2.0.2/build/OOO_2_0_2/scp2/source/impress/registryitem_impress.scp	Wed May  3 14:26:13 2006
++++ scp2/source/impress/registryitem_impress.scp	Wed May  3 14:26:13 2006
 @@ -36,6 +36,8 @@
  
  #include "macros.inc"
@@ -230,7 +230,7 @@
  RegistryItem gid_Regitem_Openoffice_Impressdocument_1_Defaulticon
      ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
 --- scp2/source/math/registryitem_math.scp	Thu Nov 10 18:18:46 2005
-+++ /mnt/pippi/src/2.0.2/build/OOO_2_0_2/scp2/source/math/registryitem_math.scp	Wed May  3 14:26:36 2006
++++ scp2/source/math/registryitem_math.scp	Wed May  3 14:26:36 2006
 @@ -35,6 +35,8 @@
   ************************************************************************/
  #include "macros.inc"
@@ -286,7 +286,7 @@
  RegistryItem gid_Regitem_Openoffice_Mathdocument_1_Defaulticon
      ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
 --- scp2/source/writer/registryitem_writer.scp	Thu Nov 10 18:19:00 2005
-+++ /mnt/pippi/src/2.0.2/build/OOO_2_0_2/scp2/source/writer/registryitem_writer.scp	Wed May  3 14:27:50 2006
++++ scp2/source/writer/registryitem_writer.scp	Wed May  3 14:27:50 2006
 @@ -36,6 +36,8 @@
  
  #include "macros.inc"

Modified: trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2-m0.diff
==============================================================================
--- trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2-m0.diff	(original)
+++ trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2-m0.diff	Wed Feb 18 11:09:16 2009
@@ -1,229 +1,12 @@
 --- scp2/source/ooo/file_ooo.scp.org	2008-07-17 08:37:09.000000000 +0200
 +++ scp2/source/ooo/file_ooo.scp	2008-07-18 07:23:31.000000000 +0200
-@@ -2968,220 +2968,14 @@
-     Name = "/registry/data/org/openoffice/Office/Linguistic-lingucomponent-thesaurus.xcu";
- End
+@@ -2920,6 +2920,19 @@
+ 
+ // Dictionary extensions
  
--// Dictionary extensions
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Af
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-af.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Cs
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-cs.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Da
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-da.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_De
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-de.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_En
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-en.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Es
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-es.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Et
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-et.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Fr
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-fr.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Gl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-gl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Hu
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-hu.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_It
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-it.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Lt
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-lt.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Ne
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-ne.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Nl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-nl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Pl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-pl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Pt
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-pt.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Ru
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-ru.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sk
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sk.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sv
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sv.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sw
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sw.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Th
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-th.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Vi
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-vi.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Zu
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-zu.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
++#ifdef WNT
 +
 +#ifndef WITHOUT_MYSPELL_DICTS
-+#ifdef WNT
 +File gid_File_Extension_Dictionary_Bundle
 +	Dir = gid_Brand_Dir_Share_Extension_Install;
 +	Name = "dict-bundle.oxt";
@@ -231,4 +14,18 @@
 +	UnixRights = 444;
 +End
 +#endif
++
++#else
++
+ #ifndef WITHOUT_MYSPELL_DICTS
+ File gid_File_Extension_Dictionary_Af
+ 	Dir = gid_Brand_Dir_Share_Extension_Install;
+@@ -3136,6 +3149,8 @@
+ End
+ #endif
+ 
 +#endif
++
+ // #ifdef BUILD_SPECIAL
+ // File gid_File_Extension_Oxt_Oooimprovement
+ //    Name = "OOoImprovement.oxt";

Modified: trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2.diff
==============================================================================
--- trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2.diff	(original)
+++ trunk/patches/dev300/win32-prebuilt-writingaids-zip-scp2.diff	Wed Feb 18 11:09:16 2009
@@ -1,229 +1,12 @@
 --- scp2/source/ooo/file_ooo.scp.org	2008-07-17 08:37:09.000000000 +0200
 +++ scp2/source/ooo/file_ooo.scp	2008-07-18 07:23:31.000000000 +0200
-@@ -2968,223 +2968,17 @@
-     Name = "/registry/data/org/openoffice/Office/Linguistic-lingucomponent-thesaurus.xcu";
- End
+@@ -2920,6 +2920,19 @@
+ 
+ // Dictionary extensions
  
--// Dictionary extensions
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Af
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-af.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Cs
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-cs.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Da
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-da.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_De
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-de.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_En
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-en.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Es
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-es.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Et
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-et.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Fr
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-fr.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Gl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-gl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Hu
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-hu.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_It
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-it.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Lt
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-lt.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Ne
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-ne.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Nl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-nl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Pl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-pl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Pt
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-pt.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Ru
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-ru.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sk
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sk.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sl
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sl.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sv
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sv.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Sw
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-sw.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Th
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-th.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Vi
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-vi.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
--
--#ifndef WITHOUT_MYSPELL_DICTS
--File gid_File_Extension_Dictionary_Zu
--	Dir = gid_Brand_Dir_Share_Extension_Install;
--	Name = "dict-zu.oxt";
--	Styles = (PACKED);
--	UnixRights = 444;
--End
--#endif
++#ifdef WNT
 +
 +#ifndef WITHOUT_MYSPELL_DICTS
-+#ifdef WNT
 +File gid_File_Extension_Dictionary_Bundle
 +	Dir = gid_Brand_Dir_Share_Extension_Install;
 +	Name = "dict-bundle.oxt";
@@ -231,8 +14,18 @@
 +	UnixRights = 444;
 +End
 +#endif
-+#endif
++
++#else
++
+ #ifndef WITHOUT_MYSPELL_DICTS
+ File gid_File_Extension_Dictionary_Af
+ 	Dir = gid_Brand_Dir_Share_Extension_Install;
+@@ -3136,6 +3149,8 @@
+ End
+ #endif
  
++#endif
++
  // #ifdef BUILD_SPECIAL
  // File gid_File_Extension_Oxt_Oooimprovement
- //    Name = "OOoImprovement.oxt";
\ No newline at end of file
+ //    Name = "OOoImprovement.oxt";

Modified: trunk/patches/gstreamer/gstreamer-config-office.diff
==============================================================================
--- trunk/patches/gstreamer/gstreamer-config-office.diff	(original)
+++ trunk/patches/gstreamer/gstreamer-config-office.diff	Wed Feb 18 11:09:16 2009
@@ -1,4 +1,4 @@
-diff --git config_office/configure.in config_office/configure.in
+diff --git configure.in configure.in
 index 4ff07ea..bfe9198 100644
 --- configure.in
 +++ configure.in
@@ -69,7 +69,7 @@
  dnl Check whether the OpenGL libraries are available
  dnl ===================================================================
  
-diff --git config_office/set_soenv.in config_office/set_soenv.in
+diff --git set_soenv.in set_soenv.in
 index 7f49931..7320345 100644
 --- set_soenv.in
 +++ set_soenv.in

Modified: trunk/patches/postgresql/sdbc-postgresql-config_office.diff
==============================================================================
--- trunk/patches/postgresql/sdbc-postgresql-config_office.diff	(original)
+++ trunk/patches/postgresql/sdbc-postgresql-config_office.diff	Wed Feb 18 11:09:16 2009
@@ -1,6 +1,6 @@
 Index: configure.in
 ===================================================================
-RCS file: /cvs/tools/config_office/configure.in,v
+RCS file: /cvs/tools/configure.in,v
 retrieving revision 1.209
 diff -u -u -r1.209 configure.in
 --- configure.in	18 Jun 2007 16:36:20 -0000	1.209
@@ -31,7 +31,7 @@
  AC_MSG_CHECKING([which beanshell to use])
 Index: set_soenv.in
 ===================================================================
-RCS file: /cvs/tools/config_office/set_soenv.in,v
+RCS file: /cvs/tools/set_soenv.in,v
 retrieving revision 1.149
 diff -u -u -r1.149 set_soenv.in
 --- set_soenv.in        18 Jun 2007 16:36:33 -0000      1.149

Modified: trunk/patches/scsolver/scsolver-config-option.diff
==============================================================================
--- trunk/patches/scsolver/scsolver-config-option.diff	(original)
+++ trunk/patches/scsolver/scsolver-config-option.diff	Wed Feb 18 11:09:16 2009
@@ -1,4 +1,4 @@
-diff --git config_office/configure.in config_office/configure.in
+diff --git configure.in configure.in
 index 3ba1058..3a63fef 100644
 --- configure.in.old
 +++ configure.in

Modified: trunk/patches/scsolver/scsolver-config-set-soenv.diff
==============================================================================
--- trunk/patches/scsolver/scsolver-config-set-soenv.diff	(original)
+++ trunk/patches/scsolver/scsolver-config-set-soenv.diff	Wed Feb 18 11:09:16 2009
@@ -1,4 +1,4 @@
-diff --git config_office/set_soenv.in config_office/set_soenv.in
+diff --git set_soenv.in set_soenv.in
 index 912e320..b0ecdf7 100644
 --- set_soenv.in.old
 +++ set_soenv.in

Modified: trunk/patches/test/speed-ld-flags.diff
==============================================================================
--- trunk/patches/test/speed-ld-flags.diff	(original)
+++ trunk/patches/test/speed-ld-flags.diff	Wed Feb 18 11:09:16 2009
@@ -1,5 +1,5 @@
---- config_office/configure.in.old	2006-11-01 21:17:44.000000000 +0100
-+++ config_office/configure.in	2006-11-03 15:02:44.000000000 +0100
+--- configure.in.old	2006-11-01 21:17:44.000000000 +0100
++++ configure.in	2006-11-03 15:02:44.000000000 +0100
 @@ -1299,6 +1299,24 @@
  fi
  AC_SUBST(HAVE_LD_BDIRECT)
@@ -25,8 +25,8 @@
  dnl ===================================================================
  dnl Search all the common names for GNU make
  dnl ===================================================================
---- config_office/set_soenv.in.old	2006-11-01 21:17:44.000000000 +0100
-+++ config_office/set_soenv.in	2006-11-03 14:59:48.000000000 +0100
+--- set_soenv.in.old	2006-11-01 21:17:44.000000000 +0100
++++ set_soenv.in	2006-11-03 14:59:48.000000000 +0100
 @@ -1735,6 +1735,8 @@
  ToFile( "HAVE_GCC_VISIBILITY_FEATURE",
  		"@HAVE_GCC_VISIBILITY_FEATURE@", "e" );



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]