diff options
Diffstat (limited to 'patches/vba/vba-oox-olenameoverride.diff')
-rw-r--r-- | patches/vba/vba-oox-olenameoverride.diff | 446 |
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. */ |