summaryrefslogtreecommitdiff
path: root/patches/vba/vba-oox-olenameoverride.diff
diff options
context:
space:
mode:
Diffstat (limited to 'patches/vba/vba-oox-olenameoverride.diff')
-rw-r--r--patches/vba/vba-oox-olenameoverride.diff446
1 files changed, 0 insertions, 446 deletions
diff --git a/patches/vba/vba-oox-olenameoverride.diff b/patches/vba/vba-oox-olenameoverride.diff
deleted file mode 100644
index 038d6338e..000000000
--- a/patches/vba/vba-oox-olenameoverride.diff
+++ /dev/null
@@ -1,446 +0,0 @@
-diff --git oox/inc/oox/helper/containerhelper.hxx oox/inc/oox/helper/containerhelper.hxx
-index 25065f9..89445c4 100644
---- oox/inc/oox/helper/containerhelper.hxx
-+++ oox/inc/oox/helper/containerhelper.hxx
-@@ -124,6 +124,13 @@ public:
- forEach( ::boost::bind( pFunc, _1, aParam1, aParam2, aParam3 ) );
- }
-
-+ /** Calls the passed member function of ObjType on every contained object,
-+ automatically skips all elements that are empty references. */
-+ template< typename FuncType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4 >
-+ inline void forEachMem( FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2, ParamType3 aParam3, ParamType4 aParam4 ) const
-+ {
-+ forEach( ::boost::bind( pFunc, _1, aParam1, aParam2, aParam3, aParam4 ) );
-+ }
- /** Calls the passed functor for every contained object. Passes the index as
- first argument and the object reference as second argument to rFunctor. */
- template< typename FunctorType >
-@@ -281,6 +288,13 @@ public:
- {
- forEach( ::boost::bind( pFunc, _1, aParam1, aParam2, aParam3 ) );
- }
-+ /** Calls the passed member function of ObjType on every contained object,
-+ automatically skips all elements that are empty references. */
-+ template< typename FuncType, typename ParamType1, typename ParamType2, typename ParamType3, typename ParamType4 >
-+ inline void forEachMem( FuncType pFunc, ParamType1 aParam1, ParamType2 aParam2, ParamType3 aParam3, ParamType4 aParam4 ) const
-+ {
-+ forEach( ::boost::bind( pFunc, _1, aParam1, aParam2, aParam3, aParam4 ) );
-+ }
- /** Calls the passed functor for every contained object. Passes the key as
- first argument and the object reference as second argument to rFunctor. */
- template< typename FunctorType >
-diff --git oox/inc/oox/ole/vbamodule.hxx oox/inc/oox/ole/vbamodule.hxx
-index cef676d..c93a54f 100755
---- oox/inc/oox/ole/vbamodule.hxx
-+++ oox/inc/oox/ole/vbamodule.hxx
-@@ -30,6 +30,7 @@
-
- #include <rtl/ustring.hxx>
- #include <com/sun/star/uno/Reference.hxx>
-+#include <tools/string.hxx>
-
- namespace com { namespace sun { namespace star {
- namespace container { class XNameAccess; }
-@@ -72,13 +73,15 @@ public:
- void importSourceCode(
- StorageBase& rVbaStrg,
- const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& rxBasicLib,
-- const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >& rxDocObjectNA ) const;
-+ const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >& rxDocObjectNA, const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& rxOleNameOverrides ) const;
-
- /** Creates empty document module for the passed Basic library/project. */
- void createEmptyDocModule(
- const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& rxBasicLib,
- const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >& rxDocObjectNA ) const;
- private:
-+ void extractOleOverrideFromAttr( const String& rAttribute,
-+ const ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& rxOleNameOverrides ) const;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel >
- mxDocModel; /// Document model used to import/export the VBA project.
- ::rtl::OUString maName;
-diff --git oox/inc/oox/ole/vbaproject.hxx oox/inc/oox/ole/vbaproject.hxx
-index 07e94ef..6968ce0 100755
---- oox/inc/oox/ole/vbaproject.hxx
-+++ oox/inc/oox/ole/vbaproject.hxx
-@@ -98,6 +98,7 @@ public:
- /** Returns true, if the document contains the specified dialog. */
- bool hasDialog( const ::rtl::OUString& rDialogName ) const;
-
-+ void setOleOverridesSink( ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >& rxOleOverridesSink ){ mxOleOverridesSink = rxOleOverridesSink; }
- private:
- VbaProject( const VbaProject& );
- VbaProject& operator=( const VbaProject& );
-@@ -128,6 +129,8 @@ private:
- mxBasicLib; /// The Basic library of the document used for import.
- ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >
- mxDialogLib; /// The dialog library of the document used for import.
-+ ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameContainer >
-+ mxOleOverridesSink;
- ::rtl::OUString maPrjName; /// Name of VBA project being imported
- };
-
-diff --git oox/source/ole/vbamodule.cxx oox/source/ole/vbamodule.cxx
-index 635991a..e60f6f6 100755
---- oox/source/ole/vbamodule.cxx
-+++ oox/source/ole/vbamodule.cxx
-@@ -27,6 +27,7 @@
-
- #include "oox/ole/vbamodule.hxx"
- #include <com/sun/star/container/XNameContainer.hpp>
-+#include <com/sun/star/container/XIndexContainer.hpp>
- #include <com/sun/star/script/ModuleInfo.hpp>
- #include <com/sun/star/script/ModuleType.hpp>
- #include <com/sun/star/script/vba/XVBAModuleInfo.hpp>
-@@ -35,6 +36,9 @@
- #include "oox/helper/textinputstream.hxx"
- #include "oox/ole/vbahelper.hxx"
- #include "oox/ole/vbainputstream.hxx"
-+#include <hash_map>
-+#include <cppuhelper/implbase1.hxx>
-+using namespace ::com::sun::star::lang;
-
- using ::rtl::OUString;
- using ::rtl::OUStringBuffer;
-@@ -49,6 +52,70 @@ namespace oox {
- namespace ole {
-
- // ============================================================================
-+typedef ::cppu::WeakImplHelper1< XIndexContainer > OleIdToNameContainer_BASE;
-+typedef std::hash_map< sal_Int32, rtl::OUString > ObjIdToName;
-+class OleIdToNameContainer : public OleIdToNameContainer_BASE
-+{
-+ ObjIdToName ObjIdToNameHash;
-+ ::osl::Mutex m_aMutex;
-+ bool hasByIndex( ::sal_Int32 Index )
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ return ( ObjIdToNameHash.find( Index ) != ObjIdToNameHash.end() );
-+ }
-+public:
-+ OleIdToNameContainer() {}
-+ // XIndexContainer Methods
-+ virtual void SAL_CALL insertByIndex( ::sal_Int32 Index, const Any& Element ) throw (IllegalArgumentException, IndexOutOfBoundsException, WrappedTargetException, RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ rtl::OUString sOleName;
-+ if ( !( Element >>= sOleName ) )
-+ throw IllegalArgumentException();
-+ ObjIdToNameHash[ Index ] = sOleName;
-+ }
-+ virtual void SAL_CALL removeByIndex( ::sal_Int32 Index ) throw (IndexOutOfBoundsException, WrappedTargetException, RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ if ( !hasByIndex( Index ) )
-+ throw IndexOutOfBoundsException();
-+ ObjIdToNameHash.erase( ObjIdToNameHash.find( Index ) );
-+ }
-+ // XIndexReplace Methods
-+ virtual void SAL_CALL replaceByIndex( ::sal_Int32 Index, const Any& Element ) throw (IllegalArgumentException, IndexOutOfBoundsException, WrappedTargetException, RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ if ( !hasByIndex( Index ) )
-+ throw IndexOutOfBoundsException();
-+ rtl::OUString sOleName;
-+ if ( !( Element >>= sOleName ) )
-+ throw IllegalArgumentException();
-+ ObjIdToNameHash[ Index ] = sOleName;
-+ }
-+ // XIndexAccess Methods
-+ virtual ::sal_Int32 SAL_CALL getCount( ) throw (RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ return ObjIdToNameHash.size();
-+ }
-+ virtual Any SAL_CALL getByIndex( ::sal_Int32 Index ) throw (IndexOutOfBoundsException, WrappedTargetException, RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ if ( !hasByIndex( Index ) )
-+ throw IndexOutOfBoundsException();
-+ return makeAny( ObjIdToNameHash[ Index ] );
-+ }
-+ // XElementAccess Methods
-+ virtual Type SAL_CALL getElementType( ) throw (RuntimeException)
-+ {
-+ return ::getCppuType((const ::rtl::OUString*)(NULL) );
-+ }
-+ virtual ::sal_Bool SAL_CALL hasElements( ) throw (RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ return ( getCount() > 0 );
-+ }
-+};
-
- VbaModule::VbaModule( const Reference< XModel >& rxDocModel, const OUString& rName, rtl_TextEncoding eTextEnc, bool bExecutable ) :
- mxDocModel( rxDocModel ),
-@@ -128,8 +195,35 @@ void VbaModule::importDirRecords( BinaryInputStream& rDirStrm )
- OSL_ENSURE( mnOffset < SAL_MAX_UINT32, "VbaModule::importDirRecords - missing module stream offset" );
- }
-
-+void VbaModule::extractOleOverrideFromAttr( const String& rAttributeLine,
-+ const Reference< XNameContainer >& rxOleNameOverrides ) const
-+{
-+ String rAttribute = rAttributeLine;
-+ // format of the attribute we are interested in is
-+ // Attribute VB_Control = "ControlName", intString, MSForms, ControlTypeAsString
-+ // e.g.
-+ // Attribute VB_Control = "CommandButton1, 201, 19, MSForms, CommandButton"
-+ String sControlAttribute( RTL_CONSTASCII_USTRINGPARAM("Attribute VB_Control = \"") );
-+ if ( rxOleNameOverrides.is() && rAttribute.Search( sControlAttribute ) != STRING_NOTFOUND )
-+ {
-+ String sRest = rAttribute.Copy( sControlAttribute.Len() );
-+ xub_StrLen nPos = 0;
-+ String sCntrlName = sRest.GetToken( 0, ',', nPos );
-+
-+ sal_Int32 nCntrlId = sRest.GetToken( 0, ',', nPos).ToInt32();
-+ OSL_TRACE("In module %s, assiging %d controlname %s",
-+ rtl::OUStringToOString( maName, RTL_TEXTENCODING_UTF8 ).getStr(), nCntrlId,
-+ rtl::OUStringToOString( sCntrlName, RTL_TEXTENCODING_UTF8 ).getStr() );
-+ if ( !rxOleNameOverrides->hasByName( maName ) )
-+ rxOleNameOverrides->insertByName( maName, makeAny( Reference< XIndexContainer> ( new OleIdToNameContainer() ) ) );
-+ Reference< XIndexContainer > xIdToOleName;
-+ if ( rxOleNameOverrides->getByName( maName ) >>= xIdToOleName )
-+ xIdToOleName->insertByIndex( nCntrlId, makeAny( rtl::OUString( sCntrlName ) ) );
-+ }
-+}
-+
- void VbaModule::importSourceCode( StorageBase& rVbaStrg,
-- const Reference< XNameContainer >& rxBasicLib, const Reference< XNameAccess >& rxDocObjectNA ) const
-+ const Reference< XNameContainer >& rxBasicLib, const Reference< XNameAccess >& rxDocObjectNA, const Reference< XNameContainer >& rxOleNameOverrides ) const
- {
- if( (maName.getLength() == 0) || (maStreamName.getLength() == 0) || (mnOffset == SAL_MAX_UINT32) )
- return;
-@@ -202,6 +296,8 @@ void VbaModule::importSourceCode( StorageBase& rVbaStrg,
- aSourceCode.appendAscii( RTL_CONSTASCII_STRINGPARAM( "Rem " ) );
- aSourceCode.append( aCodeLine ).append( sal_Unicode( '\n' ) );
- }
-+ else
-+ extractOleOverrideFromAttr( aCodeLine, rxOleNameOverrides );
- }
-
- // close the subroutine named after the module
-diff --git oox/source/ole/vbaproject.cxx oox/source/ole/vbaproject.cxx
-index af90e41..017790f 100755
---- oox/source/ole/vbaproject.cxx
-+++ oox/source/ole/vbaproject.cxx
-@@ -405,7 +405,7 @@ void VbaProject::importVba( StorageBase& rVbaPrjStrg, const GraphicHelper& rGrap
- aGeneratedModules.forEachMem( &VbaModule::createEmptyDocModule,
- ::boost::cref( xBasicLib ), ::boost::cref( xDocObjectNA ) );
- aModules.forEachMem( &VbaModule::importSourceCode,
-- ::boost::ref( *xVbaStrg ), ::boost::cref( xBasicLib ), ::boost::cref( xDocObjectNA ) );
-+ ::boost::ref( *xVbaStrg ), ::boost::cref( xBasicLib ), ::boost::cref( xDocObjectNA ), ::boost::cref( mxOleOverridesSink ) );
- }
- }
- catch( Exception& )
-diff --git oox/source/xls/excelfilter.cxx oox/source/xls/excelfilter.cxx
-index 3947221..548245e 100644
---- oox/source/xls/excelfilter.cxx
-+++ oox/source/xls/excelfilter.cxx
-@@ -35,6 +35,7 @@
- #include "oox/xls/workbookfragment.hxx"
- #include "oox/dump/biffdumper.hxx"
- #include "oox/dump/xlsbdumper.hxx"
-+#include <com/sun/star/container/XNameContainer.hpp>
-
- using ::rtl::OUString;
- using ::com::sun::star::uno::Any;
-@@ -42,6 +43,7 @@ using ::com::sun::star::uno::Reference;
- using ::com::sun::star::uno::Exception;
- using ::com::sun::star::uno::UNO_QUERY;
- using ::com::sun::star::uno::XInterface;
-+using ::com::sun::star::container::XNameContainer;
- using ::com::sun::star::lang::XComponent;
- using ::com::sun::star::lang::XMultiServiceFactory;
- using ::com::sun::star::xml::sax::XFastDocumentHandler;
-@@ -276,12 +278,15 @@ bool SimpleExcelVBAProjFilter::importDocument() throw()
- {
- Sequence< rtl::OUString > sGeneratedCNames;
- getArgument( CREATE_OUSTRING( "GeneratedCodeNames" ) ) >>= sGeneratedCNames;
-+ Reference< XNameContainer > xOleNameOverrideSink;
-+ getArgument( CREATE_OUSTRING( "OleNameOverrideInfo" ) ) >>= xOleNameOverrideSink;
- WorkbookHelperRoot aHelper( *this, eBiff );
- StorageRef xVbaPrjStrg = openSubStorage( CREATE_OUSTRING( "_VBA_PROJECT_CUR" ), false ) ;
- if( xVbaPrjStrg.get() && xVbaPrjStrg->isStorage() )
- {
- //VbaProject aVbaProject( getGlobalFactory(), aHelper.getDocument() );
- ole::VbaProject aVbaProject( getGlobalFactory(), Reference< com::sun::star::frame::XModel >( aHelper.getDocument(), UNO_QUERY ), CREATE_OUSTRING( "Calc" ) );
-+ aVbaProject.setOleOverridesSink( xOleNameOverrideSink );
- aVbaProject.importVbaProject( *xVbaPrjStrg, getGraphicHelper(), sGeneratedCNames );
- bRet = true;
- }
-diff --git sc/source/filter/excel/excimp8.cxx sc/source/filter/excel/excimp8.cxx
-index e300103..f4d69b5 100644
---- sc/source/filter/excel/excimp8.cxx
-+++ sc/source/filter/excel/excimp8.cxx
-@@ -116,6 +116,86 @@ using namespace com::sun::star;
- using namespace ::comphelper;
- using ::rtl::OUString;
-
-+//OleNameOverrideContainer
-+
-+typedef ::cppu::WeakImplHelper1< container::XNameContainer > OleNameOverrideContainer_BASE;
-+
-+class OleNameOverrideContainer : public OleNameOverrideContainer_BASE
-+{
-+private:
-+ typedef std::hash_map< rtl::OUString, uno::Reference< container::XIndexContainer >, ::rtl::OUStringHash,
-+ ::std::equal_to< ::rtl::OUString > > NamedIndexToOleName;
-+ NamedIndexToOleName IdToOleNameHash;
-+ ::osl::Mutex m_aMutex;
-+public:
-+ // XElementAccess
-+ virtual uno::Type SAL_CALL getElementType( ) throw (uno::RuntimeException) { return container::XIndexContainer::static_type(0); }
-+ virtual ::sal_Bool SAL_CALL hasElements( ) throw (uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ return ( IdToOleNameHash.size() > 0 );
-+ }
-+ // XNameAcess
-+ virtual uno::Any SAL_CALL getByName( const ::rtl::OUString& aName ) throw (container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ if ( !hasByName(aName) )
-+ throw container::NoSuchElementException();
-+ return uno::makeAny( IdToOleNameHash[ aName ] );
-+ }
-+ virtual uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames( ) throw (uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ uno::Sequence< ::rtl::OUString > aResult( IdToOleNameHash.size() );
-+ NamedIndexToOleName::iterator it = IdToOleNameHash.begin();
-+ NamedIndexToOleName::iterator it_end = IdToOleNameHash.end();
-+ rtl::OUString* pName = aResult.getArray();
-+ for (; it != it_end; ++it, ++pName )
-+ *pName = it->first;
-+ return aResult;
-+ }
-+ virtual ::sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName ) throw (uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ return ( IdToOleNameHash.find( aName ) != IdToOleNameHash.end() );
-+ }
-+
-+ // XElementAccess
-+ virtual ::sal_Int32 SAL_CALL getCount( ) throw (uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ return IdToOleNameHash.size();
-+ }
-+ // XNameContainer
-+ virtual void SAL_CALL insertByName( const ::rtl::OUString& aName, const uno::Any& aElement ) throw(lang::IllegalArgumentException, container::ElementExistException, lang::WrappedTargetException, uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ if ( hasByName( aName ) )
-+ throw container::ElementExistException();
-+ uno::Reference< container::XIndexContainer > xElement;
-+ if ( ! ( aElement >>= xElement ) )
-+ throw lang::IllegalArgumentException();
-+ IdToOleNameHash[ aName ] = xElement;
-+ }
-+ virtual void SAL_CALL removeByName( const ::rtl::OUString& aName ) throw(container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ if ( !hasByName( aName ) )
-+ throw container::NoSuchElementException();
-+ IdToOleNameHash.erase( IdToOleNameHash.find( aName ) );
-+ }
-+ virtual void SAL_CALL replaceByName( const ::rtl::OUString& aName, const uno::Any& aElement ) throw(lang::IllegalArgumentException, container::NoSuchElementException, lang::WrappedTargetException, uno::RuntimeException)
-+ {
-+ ::osl::MutexGuard aGuard( m_aMutex );
-+ if ( !hasByName( aName ) )
-+ throw container::NoSuchElementException();
-+ uno::Reference< container::XIndexContainer > xElement;
-+ if ( ! ( aElement >>= xElement ) )
-+ throw lang::IllegalArgumentException();
-+ IdToOleNameHash[ aName ] = xElement;
-+ }
-+};
-+
- // defined in docfunc.cxx ( really this needs a new name )
- script::ModuleInfo lcl_InitModuleInfo( SfxObjectShell& rDocSh, String& sModule );
-
-@@ -259,7 +339,7 @@ void ImportExcel8::ReadBasic( void )
- try
- {
- uno::Reference< lang::XComponent > xComponent( pShell->GetModel(), uno::UNO_QUERY_THROW );
-- uno::Sequence< beans::NamedValue > aArgSeq(1);
-+ uno::Sequence< beans::NamedValue > aArgSeq(2);
- // I guess we could actually handle the GeneratedCodeNames here
- // ( e.g. after import create the required modules ) but...
- // better to reuse the code in the filter right?
-@@ -275,6 +355,10 @@ void ImportExcel8::ReadBasic( void )
- }
- aArgSeq[ 0 ].Value <<= sGeneratedCNames;
-
-+ aArgSeq[ 1 ].Name = CREATE_OUSTRING( "OleNameOverrideInfo");
-+ uno::Reference< container::XNameContainer > xOleNameOverrideSink( new OleNameOverrideContainer() );
-+ aArgSeq[ 1 ].Value <<= xOleNameOverrideSink;
-+
- uno::Sequence< uno::Any > aArgs( 2 );
- aArgs[ 0 ] <<= getProcessServiceFactory();
- aArgs[ 1 ] <<= aArgSeq;
-@@ -299,6 +383,7 @@ void ImportExcel8::ReadBasic( void )
- // call the filter
- uno::Reference< document::XFilter > xFilter( xImporter, uno::UNO_QUERY_THROW );
- xFilter->filter( aMediaDesc.getAsConstPropertyValueList() );
-+ GetObjectManager().SetOleNameOverrideInfo( xOleNameOverrideSink );
- }
- catch( uno::Exception& )
- {
-@@ -320,11 +405,6 @@ void ImportExcel8::ReadBasic( void )
- #endif
-
- }
-- // #FIXME how to get this info from oox
-- #if FIXME
-- if ( !bAsComment )
-- GetObjectManager().SetOleNameOverrideInfo( aBasicImport.ControlNameForObjectId() );
-- #endif
- }
- }
- }
-diff --git sc/source/filter/excel/xiescher.cxx sc/source/filter/excel/xiescher.cxx
-index 5ba8fe4..d31d5ad 100644
---- sc/source/filter/excel/xiescher.cxx
-+++ sc/source/filter/excel/xiescher.cxx
-@@ -3185,17 +3185,14 @@ XclImpDffConverter::~XclImpDffConverter()
-
- String XclImpObjectManager::GetOleNameOverride( SCTAB nTab, sal_uInt16 nObjId )
- {
-- String sOleName;
-+ rtl::OUString sOleName;
- String sCodeName = GetExtDocOptions().GetCodeName( nTab );
-
-- CodeNameToCntrlObjIdInfo::iterator it = maOleCtrlNameOverride.find( sCodeName );
-- if ( it != maOleCtrlNameOverride.end() )
-+ if ( mxOleCtrlNameOverride->hasByName( sCodeName ) )
- {
-- CntrlObjIdToName::iterator it_id = it->second.find( nObjId );
-- if ( it_id != it->second.end() )
-- {
-- sOleName = it_id->second;
-- }
-+ Reference< XIndexContainer > xIdToOleName;
-+ mxOleCtrlNameOverride->getByName( sCodeName ) >>= xIdToOleName;
-+ xIdToOleName->getByIndex( nObjId ) >>= sOleName;
- }
- OSL_TRACE("XclImpObjectManager::GetOleNameOverride tab %d, ( module %s ) object id ( %d ) is %s", nTab,
- rtl::OUStringToOString( sCodeName, RTL_TEXTENCODING_UTF8 ).getStr(), nObjId,
-diff --git sc/source/filter/inc/xiescher.hxx sc/source/filter/inc/xiescher.hxx
-index a5998ed..38464fa 100644
---- sc/source/filter/inc/xiescher.hxx
-+++ sc/source/filter/inc/xiescher.hxx
-@@ -1232,11 +1232,12 @@ public:
- String GetDefaultObjName( const XclImpDrawObjBase& rDrawObj ) const;
- /** Returns the used area in the sheet with the passed index. */
- ScRange GetUsedArea( SCTAB nScTab ) const;
-- void SetOleNameOverrideInfo( const CodeNameToCntrlObjIdInfo& rOverrideInfo ) { maOleCtrlNameOverride = rOverrideInfo; }
-+ void SetOleNameOverrideInfo( const com::sun::star::uno::Reference< com::sun::star::container::XNameContainer >& rxOverrideInfo ) { mxOleCtrlNameOverride = rxOverrideInfo; }
- String GetOleNameOverride( SCTAB nTab, sal_uInt16 nObjId );
- // ------------------------------------------------------------------------
- private:
-
-+ com::sun::star::uno::Reference< com::sun::star::container::XNameContainer > mxOleCtrlNameOverride;
- CodeNameToCntrlObjIdInfo maOleCtrlNameOverride;
-
- /** Reads and returns a bitmap from WMF/PICT format. */