[Libreoffice-commits] core.git: 3 commits - basctl/source chart2/source cui/source include/sot sc/source sd/source sfx2/source sot/Library_sot.mk sot/source sot/util starmath/source svx/source sw/inc sw/source vbahelper/inc vcl/source

Matúš Kukan matus.kukan at gmail.com
Tue Jan 5 11:41:49 PST 2016


 basctl/source/basicide/basdoc.cxx                         |    1 
 chart2/source/controller/drawinglayer/DrawViewWrapper.cxx |    1 
 cui/source/dialogs/pastedlg.cxx                           |    2 
 include/sot/factory.hxx                                   |   64 ---
 include/sot/object.hxx                                    |   15 
 include/sot/sotdata.hxx                                   |   52 --
 include/sot/storage.hxx                                   |   27 -
 sc/source/ui/unoobj/chartuno.cxx                          |    1 
 sd/source/ui/func/fudraw.cxx                              |    5 
 sfx2/source/appl/imagemgr.cxx                             |    1 
 sfx2/source/doc/docfac.cxx                                |    1 
 sfx2/source/doc/frmdescr.cxx                              |    2 
 sfx2/source/doc/objitem.cxx                               |    2 
 sfx2/source/doc/objxtor.cxx                               |    1 
 sfx2/source/doc/ownsubfilterservice.cxx                   |    1 
 sfx2/source/doc/printhelper.cxx                           |    1 
 sfx2/source/menu/virtmenu.cxx                             |    2 
 sfx2/source/statbar/stbitem.cxx                           |    1 
 sfx2/source/toolbox/tbxitem.cxx                           |    1 
 sfx2/source/view/frame.cxx                                |    1 
 sot/Library_sot.mk                                        |    2 
 sot/source/base/exchange.cxx                              |   34 +
 sot/source/base/factory.cxx                               |  202 -----------
 sot/source/base/object.cxx                                |   43 --
 sot/source/sdstor/storage.cxx                             |   72 ---
 sot/source/unoolestorage/register.cxx                     |   59 ---
 sot/source/unoolestorage/xolesimplestorage.cxx            |  253 +++++---------
 sot/source/unoolestorage/xolesimplestorage.hxx            |   45 --
 sot/util/sot.component                                    |    5 
 starmath/source/smdll.cxx                                 |    3 
 svx/source/dialog/_contdlg.cxx                            |    3 
 svx/source/unodraw/unopage.cxx                            |    1 
 svx/source/xoutdev/_xoutbmp.cxx                           |    3 
 sw/inc/pch/precompiled_msword.hxx                         |    1 
 sw/source/core/doc/DocumentContentOperationsManager.cxx   |    1 
 sw/source/core/doc/docdesc.cxx                            |    1 
 sw/source/core/doc/doctxm.cxx                             |    1 
 sw/source/core/draw/dview.cxx                             |    1 
 sw/source/core/frmedt/fefly1.cxx                          |    1 
 sw/source/core/frmedt/feshview.cxx                        |    1 
 sw/source/core/ole/ndole.cxx                              |    1 
 sw/source/core/txtnode/thints.cxx                         |    3 
 sw/source/core/unocore/unoframe.cxx                       |    1 
 sw/source/ui/frmdlg/frmpage.cxx                           |    2 
 sw/source/uibase/shells/basesh.cxx                        |    3 
 sw/source/uibase/wrtsh/wrtsh1.cxx                         |    3 
 vbahelper/inc/pch/precompiled_msforms.hxx                 |    1 
 vcl/source/control/longcurr.cxx                           |    2 
 vcl/source/filter/wmf/winmtf.hxx                          |    3 
 49 files changed, 190 insertions(+), 743 deletions(-)

New commits:
commit 7f36d2e25572978ee6ee79a4089db81c191df260
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Tue Jan 5 18:04:14 2016 +0100

    tdf#74608: Ctor function for css.embed.OLESimpleStorage
    
    Change-Id: I20b91ad65514e27094ff702d1d94a48ef9a82fe6

diff --git a/sot/Library_sot.mk b/sot/Library_sot.mk
index 3c443e5..6c76555 100644
--- a/sot/Library_sot.mk
+++ b/sot/Library_sot.mk
@@ -51,7 +51,6 @@ $(eval $(call gb_Library_use_libraries,sot,\
 
 $(eval $(call gb_Library_add_exception_objects,sot,\
     sot/source/unoolestorage/xolesimplestorage \
-    sot/source/unoolestorage/register \
     sot/source/base/formats \
     sot/source/base/object \
     sot/source/base/exchange \
diff --git a/sot/source/unoolestorage/register.cxx b/sot/source/unoolestorage/register.cxx
deleted file mode 100644
index 1c65311..0000000
--- a/sot/source/unoolestorage/register.cxx
+++ /dev/null
@@ -1,59 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <com/sun/star/registry/XRegistryKey.hpp>
-#include <com/sun/star/registry/InvalidRegistryException.hpp>
-#include <cppuhelper/factory.hxx>
-
-#include "xolesimplestorage.hxx"
-
-using namespace ::com::sun::star;
-
-
-extern "C" {
-
-SAL_DLLPUBLIC_EXPORT void * SAL_CALL sot_component_getFactory(
-    const sal_Char * pImplName, void * pServiceManager,
-    SAL_UNUSED_PARAMETER void * /*pRegistryKey*/ )
-{
-    void * pRet = nullptr;
-
-    OUString aImplName( OUString::createFromAscii( pImplName ) );
-    uno::Reference< lang::XSingleServiceFactory > xFactory;
-
-    if ( pServiceManager && aImplName.equals( OLESimpleStorage::impl_staticGetImplementationName() ) )
-    {
-        xFactory= ::cppu::createSingleFactory( static_cast< lang::XMultiServiceFactory*>( pServiceManager ),
-                                            OLESimpleStorage::impl_staticGetImplementationName(),
-                                            OLESimpleStorage::impl_staticCreateSelfInstance,
-                                            OLESimpleStorage::impl_staticGetSupportedServiceNames() );
-    }
-
-    if ( xFactory.is() )
-    {
-        xFactory->acquire();
-        pRet = xFactory.get();
-    }
-
-    return pRet;
-}
-
-} // extern "C"
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sot/source/unoolestorage/xolesimplestorage.cxx b/sot/source/unoolestorage/xolesimplestorage.cxx
index 9bd8411..599e0f9 100644
--- a/sot/source/unoolestorage/xolesimplestorage.cxx
+++ b/sot/source/unoolestorage/xolesimplestorage.cxx
@@ -17,8 +17,10 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include "xolesimplestorage.hxx"
+
+#include <com/sun/star/embed/OLESimpleStorage.hpp>
 #include <com/sun/star/lang/DisposedException.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/io/XStream.hpp>
 #include <com/sun/star/io/XInputStream.hpp>
 #include <com/sun/star/io/XSeekable.hpp>
@@ -27,36 +29,113 @@
 
 #include <comphelper/processfactory.hxx>
 #include <comphelper/storagehelper.hxx>
-
 #include <unotools/ucbstreamhelper.hxx>
-
 #include <cppuhelper/exc_hlp.hxx>
 #include <cppuhelper/supportsservice.hxx>
-
 #include <sot/storinfo.hxx>
 
-#include "xolesimplestorage.hxx"
-
-
 using namespace ::com::sun::star;
 
 const sal_Int32 nBytesCount = 32000;
 
 
-
-OLESimpleStorage::OLESimpleStorage( uno::Reference< lang::XMultiServiceFactory > xFactory )
+OLESimpleStorage::OLESimpleStorage(
+        css::uno::Reference<css::uno::XComponentContext> xContext,
+        css::uno::Sequence<css::uno::Any> const &aArguments)
 : m_bDisposed( false )
 , m_pStream( nullptr )
 , m_pStorage( nullptr )
 , m_pListenersContainer( nullptr )
-, m_xFactory( xFactory )
+, m_xContext( xContext )
 , m_bNoTemporaryCopy( false )
 {
-    OSL_ENSURE( m_xFactory.is(), "No factory is provided on creation!\n" );
-    if ( !m_xFactory.is() )
-        throw uno::RuntimeException();
-}
+    sal_Int32 nArgNum = aArguments.getLength();
+    if ( nArgNum < 1 || nArgNum > 2 )
+        throw lang::IllegalArgumentException(); // TODO:
 
+    uno::Reference< io::XStream > xStream;
+    uno::Reference< io::XInputStream > xInputStream;
+    if ( !( aArguments[0] >>= xStream ) && !( aArguments[0] >>= xInputStream ) )
+        throw lang::IllegalArgumentException(); // TODO:
+
+    if ( nArgNum == 2 )
+    {
+        if ( !( aArguments[1] >>= m_bNoTemporaryCopy ) )
+            throw lang::IllegalArgumentException(); // TODO:
+    }
+
+    if ( m_bNoTemporaryCopy )
+    {
+        // TODO: ???
+        // If the temporary stream is not created, the original stream must be wrapped
+        // since SvStream wrapper closes the stream is owns
+        if ( xInputStream.is() )
+        {
+            // the stream must be seekable for direct access
+            uno::Reference< io::XSeekable > xSeek( xInputStream, uno::UNO_QUERY_THROW );
+            m_pStream = ::utl::UcbStreamHelper::CreateStream( xInputStream, false );
+        }
+        else if ( xStream.is() )
+        {
+            // the stream must be seekable for direct access
+            uno::Reference< io::XSeekable > xSeek( xStream, uno::UNO_QUERY_THROW );
+            m_pStream = ::utl::UcbStreamHelper::CreateStream( xStream, false );
+        }
+        else
+            throw lang::IllegalArgumentException(); // TODO:
+    }
+    else
+    {
+        uno::Reference < io::XStream > xTempFile( io::TempFile::create(m_xContext),
+                uno::UNO_QUERY_THROW );
+        uno::Reference < io::XSeekable > xTempSeek( xTempFile, uno::UNO_QUERY_THROW );
+        uno::Reference< io::XOutputStream > xTempOut = xTempFile->getOutputStream();
+        if ( !xTempOut.is() )
+            throw uno::RuntimeException();
+
+        if ( xInputStream.is() )
+        {
+            try
+            {
+                uno::Reference< io::XSeekable > xSeek( xInputStream, uno::UNO_QUERY_THROW );
+                xSeek->seek( 0 );
+            }
+            catch( uno::Exception& )
+            {}
+
+            ::comphelper::OStorageHelper::CopyInputToOutput( xInputStream, xTempOut );
+            xTempOut->closeOutput();
+            xTempSeek->seek( 0 );
+            uno::Reference< io::XInputStream > xTempInput = xTempFile->getInputStream();
+            m_pStream = ::utl::UcbStreamHelper::CreateStream( xTempInput, false );
+        }
+        else if ( xStream.is() )
+        {
+            // not sure that the storage flashes the stream on commit
+            m_xStream = xStream;
+            m_xTempStream = xTempFile;
+
+            uno::Reference< io::XSeekable > xSeek( xStream, uno::UNO_QUERY_THROW );
+            xSeek->seek( 0 );
+            uno::Reference< io::XInputStream > xInpStream = xStream->getInputStream();
+            if ( !xInpStream.is() || !xStream->getOutputStream().is() )
+                throw uno::RuntimeException();
+
+            ::comphelper::OStorageHelper::CopyInputToOutput( xInpStream, xTempOut );
+            xTempOut->flush();
+            xTempSeek->seek( 0 );
+
+            m_pStream = ::utl::UcbStreamHelper::CreateStream( xTempFile, false );
+        }
+        else
+            throw lang::IllegalArgumentException(); // TODO:
+    }
+
+    if ( !m_pStream || m_pStream->GetError() )
+        throw io::IOException(); // TODO
+
+    m_pStorage = new Storage( *m_pStream, false );
+}
 
 OLESimpleStorage::~OLESimpleStorage()
 {
@@ -73,27 +152,6 @@ OLESimpleStorage::~OLESimpleStorage()
     }
 }
 
-
-uno::Sequence< OUString > SAL_CALL OLESimpleStorage::impl_staticGetSupportedServiceNames()
-{
-    uno::Sequence< OUString > aRet { "com.sun.star.embed.OLESimpleStorage" };
-    return aRet;
-}
-
-
-OUString SAL_CALL OLESimpleStorage::impl_staticGetImplementationName()
-{
-    return OUString("com.sun.star.comp.embed.OLESimpleStorage");
-}
-
-
-uno::Reference< uno::XInterface > SAL_CALL OLESimpleStorage::impl_staticCreateSelfInstance(
-            const uno::Reference< lang::XMultiServiceFactory >& xServiceManager )
-{
-    return uno::Reference< uno::XInterface >( *new OLESimpleStorage( xServiceManager ) );
-}
-
-
 void OLESimpleStorage::UpdateOriginal_Impl()
 {
     if ( !m_bNoTemporaryCopy )
@@ -209,109 +267,6 @@ void OLESimpleStorage::InsertNameAccessToStorage_Impl( BaseStorage* pStorage, co
 }
 
 
-//  XInitialization
-
-
-void SAL_CALL OLESimpleStorage::initialize( const uno::Sequence< uno::Any >& aArguments )
-        throw ( uno::Exception,
-                uno::RuntimeException, std::exception)
-{
-    if ( m_pStream || m_pStorage )
-        throw io::IOException(); // TODO: already initilized
-
-    sal_Int32 nArgNum = aArguments.getLength();
-    OSL_ENSURE( nArgNum >= 1 && nArgNum <= 2, "Wrong parameter number" );
-
-    if ( nArgNum < 1 || nArgNum > 2 )
-        throw lang::IllegalArgumentException(); // TODO:
-
-    uno::Reference< io::XStream > xStream;
-    uno::Reference< io::XInputStream > xInputStream;
-    if ( !( aArguments[0] >>= xStream ) && !( aArguments[0] >>= xInputStream ) )
-        throw lang::IllegalArgumentException(); // TODO:
-
-    if ( nArgNum == 2 )
-    {
-        if ( !( aArguments[1] >>= m_bNoTemporaryCopy ) )
-            throw lang::IllegalArgumentException(); // TODO:
-    }
-
-    if ( m_bNoTemporaryCopy )
-    {
-        // TODO: ???
-        // If the temporary stream is not created, the original stream must be wrapped
-        // since SvStream wrapper closes the stream is owns
-        if ( xInputStream.is() )
-        {
-            // the stream must be seekable for direct access
-            uno::Reference< io::XSeekable > xSeek( xInputStream, uno::UNO_QUERY_THROW );
-            m_pStream = ::utl::UcbStreamHelper::CreateStream( xInputStream, false );
-        }
-        else if ( xStream.is() )
-        {
-            // the stream must be seekable for direct access
-            uno::Reference< io::XSeekable > xSeek( xStream, uno::UNO_QUERY_THROW );
-            m_pStream = ::utl::UcbStreamHelper::CreateStream( xStream, false );
-        }
-        else
-            throw lang::IllegalArgumentException(); // TODO:
-    }
-    else
-    {
-        uno::Reference < io::XStream > xTempFile(
-                io::TempFile::create(comphelper::getComponentContext(m_xFactory)),
-                uno::UNO_QUERY_THROW );
-        uno::Reference < io::XSeekable > xTempSeek( xTempFile, uno::UNO_QUERY_THROW );
-        uno::Reference< io::XOutputStream > xTempOut = xTempFile->getOutputStream();
-        if ( !xTempOut.is() )
-            throw uno::RuntimeException();
-
-        if ( xInputStream.is() )
-        {
-            try
-            {
-                uno::Reference< io::XSeekable > xSeek( xInputStream, uno::UNO_QUERY_THROW );
-                xSeek->seek( 0 );
-            }
-            catch( uno::Exception& )
-            {}
-
-            ::comphelper::OStorageHelper::CopyInputToOutput( xInputStream, xTempOut );
-            xTempOut->closeOutput();
-            xTempSeek->seek( 0 );
-            uno::Reference< io::XInputStream > xTempInput = xTempFile->getInputStream();
-            m_pStream = ::utl::UcbStreamHelper::CreateStream( xTempInput, false );
-        }
-        else if ( xStream.is() )
-        {
-            // not sure that the storage flashes the stream on commit
-            m_xStream = xStream;
-            m_xTempStream = xTempFile;
-
-            uno::Reference< io::XSeekable > xSeek( xStream, uno::UNO_QUERY_THROW );
-            xSeek->seek( 0 );
-            uno::Reference< io::XInputStream > xInpStream = xStream->getInputStream();
-            if ( !xInpStream.is() || !xStream->getOutputStream().is() )
-                throw uno::RuntimeException();
-
-            ::comphelper::OStorageHelper::CopyInputToOutput( xInpStream, xTempOut );
-            xTempOut->flush();
-            xTempSeek->seek( 0 );
-
-            m_pStream = ::utl::UcbStreamHelper::CreateStream( xTempFile, false );
-        }
-        else
-            throw lang::IllegalArgumentException(); // TODO:
-    }
-
-    if ( !m_pStream || m_pStream->GetError() )
-        throw io::IOException(); // TODO
-
-    m_pStorage = new Storage( *m_pStream, false );
-}
-
-
-
 //  XNameContainer
 
 
@@ -444,8 +399,7 @@ uno::Any SAL_CALL OLESimpleStorage::getByName( const OUString& aName )
     uno::Any aResult;
 
     uno::Reference< io::XStream > xTempFile(
-        io::TempFile::create(comphelper::getComponentContext(m_xFactory)),
-        uno::UNO_QUERY );
+        io::TempFile::create(m_xContext), uno::UNO_QUERY );
     uno::Reference< io::XSeekable > xSeekable( xTempFile, uno::UNO_QUERY_THROW );
     uno::Reference< io::XOutputStream > xOutputStream = xTempFile->getOutputStream();
     uno::Reference< io::XInputStream > xInputStream = xTempFile->getInputStream();
@@ -474,14 +428,8 @@ uno::Any SAL_CALL OLESimpleStorage::getByName( const OUString& aName )
         if ( !bSuccess )
             throw uno::RuntimeException();
 
-        uno::Sequence< uno::Any > aArgs( 2 );
-        aArgs[0] <<= xInputStream; // allow readonly access only
-        aArgs[1] <<= true; // do not create copy
-
         uno::Reference< container::XNameContainer > xResultNameContainer(
-            m_xFactory->createInstanceWithArguments(
-                    "com.sun.star.embed.OLESimpleStorage",
-                    aArgs ),
+            css::embed::OLESimpleStorage::createFromInputStream(m_xContext, xInputStream, true),
             uno::UNO_QUERY_THROW );
 
         aResult <<= xResultNameContainer;
@@ -774,7 +722,7 @@ void SAL_CALL OLESimpleStorage::setClassInfo( const uno::Sequence< sal_Int8 >& /
 OUString SAL_CALL OLESimpleStorage::getImplementationName()
     throw ( uno::RuntimeException, std::exception )
 {
-    return impl_staticGetImplementationName();
+    return OUString("com.sun.star.comp.embed.OLESimpleStorage");
 }
 
 sal_Bool SAL_CALL OLESimpleStorage::supportsService( const OUString& ServiceName )
@@ -786,8 +734,15 @@ sal_Bool SAL_CALL OLESimpleStorage::supportsService( const OUString& ServiceName
 uno::Sequence< OUString > SAL_CALL OLESimpleStorage::getSupportedServiceNames()
         throw ( uno::RuntimeException, std::exception )
 {
-    return impl_staticGetSupportedServiceNames();
+    return { "com.sun.star.embed.OLESimpleStorage" };
 }
 
+extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
+com_sun_star_comp_embed_OLESimpleStorage(
+    css::uno::XComponentContext *context,
+    css::uno::Sequence<css::uno::Any> const &arguments)
+{
+    return cppu::acquire(new OLESimpleStorage(context, arguments));
+}
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sot/source/unoolestorage/xolesimplestorage.hxx b/sot/source/unoolestorage/xolesimplestorage.hxx
index 7c58c19..bac3a4b 100644
--- a/sot/source/unoolestorage/xolesimplestorage.hxx
+++ b/sot/source/unoolestorage/xolesimplestorage.hxx
@@ -20,6 +20,8 @@
 #ifndef INCLUDED_SOT_SOURCE_UNOOLESTORAGE_XOLESIMPLESTORAGE_HXX
 #define INCLUDED_SOT_SOURCE_UNOOLESTORAGE_XOLESIMPLESTORAGE_HXX
 
+#include <sal/config.h>
+
 #include <com/sun/star/embed/XOLESimpleStorage.hpp>
 #include <com/sun/star/container/XNameContainer.hpp>
 #include <com/sun/star/lang/XComponent.hpp>
@@ -27,21 +29,13 @@
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/embed/XTransactedObject.hpp>
 #include <com/sun/star/embed/XClassifiedObject.hpp>
-
-
-#include <com/sun/star/io/XOutputStream.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <cppuhelper/interfacecontainer.h>
-
 #include <osl/mutex.hxx>
-
 #include <sot/stg.hxx>
 
-
-class OLESimpleStorage  : public ::cppu::WeakImplHelper
-    < css::embed::XOLESimpleStorage
-    , css::lang::XInitialization
-    , css::lang::XServiceInfo >
+class OLESimpleStorage : public cppu::WeakImplHelper<css::embed::XOLESimpleStorage, css::lang::XServiceInfo>
 {
     ::osl::Mutex m_aMutex;
 
@@ -53,7 +47,7 @@ class OLESimpleStorage  : public ::cppu::WeakImplHelper
     BaseStorage* m_pStorage;
 
     ::cppu::OInterfaceContainerHelper* m_pListenersContainer; // list of listeners
-    css::uno::Reference< css::lang::XMultiServiceFactory > m_xFactory;
+    css::uno::Reference<css::uno::XComponentContext> m_xContext;
 
     bool m_bNoTemporaryCopy;
 
@@ -67,29 +61,13 @@ class OLESimpleStorage  : public ::cppu::WeakImplHelper
 
 public:
 
-    explicit OLESimpleStorage( css::uno::Reference< css::lang::XMultiServiceFactory > xFactory );
+    OLESimpleStorage(css::uno::Reference<css::uno::XComponentContext> xContext,
+            css::uno::Sequence<css::uno::Any> const &arguments);
 
     virtual ~OLESimpleStorage();
 
-    static css::uno::Sequence< OUString > SAL_CALL impl_staticGetSupportedServiceNames();
-    static OUString SAL_CALL impl_staticGetImplementationName();
-    static css::uno::Reference< css::uno::XInterface > SAL_CALL
-        impl_staticCreateSelfInstance(
-            const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager );
-
-
-
-    //  XInitialization
-
-
-    virtual void SAL_CALL initialize( const css::uno::Sequence< css::uno::Any >& aArguments )
-        throw ( css::uno::Exception,
-                css::uno::RuntimeException, std::exception) override;
-
-
     //  XNameContainer
 
-
     virtual void SAL_CALL insertByName( const OUString& aName, const css::uno::Any& aElement )
         throw ( css::lang::IllegalArgumentException,
                 css::container::ElementExistException,
@@ -124,10 +102,8 @@ public:
     virtual sal_Bool SAL_CALL hasElements()
         throw ( css::uno::RuntimeException, std::exception ) override;
 
-
     //  XComponent
 
-
     virtual void SAL_CALL dispose()
         throw ( css::uno::RuntimeException, std::exception ) override;
 
@@ -139,10 +115,8 @@ public:
             const css::uno::Reference< css::lang::XEventListener >& xListener )
         throw ( css::uno::RuntimeException, std::exception ) override;
 
-
     //  XTransactedObject
 
-
     virtual void SAL_CALL commit()
         throw ( css::io::IOException,
                 css::lang::WrappedTargetException,
@@ -153,10 +127,8 @@ public:
                 css::lang::WrappedTargetException,
                 css::uno::RuntimeException, std::exception ) override;
 
-
     //  XClassifiedObject
 
-
     virtual css::uno::Sequence< ::sal_Int8 > SAL_CALL getClassID()
         throw ( css::uno::RuntimeException, std::exception ) override;
 
@@ -168,10 +140,8 @@ public:
         throw ( css::lang::NoSupportException,
                 css::uno::RuntimeException, std::exception ) override;
 
-
     //  XServiceInfo
 
-
     virtual OUString SAL_CALL getImplementationName()
         throw ( css::uno::RuntimeException, std::exception ) override;
 
@@ -180,7 +150,6 @@ public:
 
     virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames()
         throw ( css::uno::RuntimeException, std::exception ) override;
-
 };
 
 #endif
diff --git a/sot/util/sot.component b/sot/util/sot.component
index 7fc9cc3..84b9887 100644
--- a/sot/util/sot.component
+++ b/sot/util/sot.component
@@ -18,8 +18,9 @@
  -->
 
 <component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@"
-    prefix="sot" xmlns="http://openoffice.org/2010/uno-components">
-  <implementation name="com.sun.star.comp.embed.OLESimpleStorage">
+    xmlns="http://openoffice.org/2010/uno-components">
+  <implementation name="com.sun.star.comp.embed.OLESimpleStorage"
+      constructor="com_sun_star_comp_embed_OLESimpleStorage">
     <service name="com.sun.star.embed.OLESimpleStorage"/>
   </implementation>
 </component>
commit 3b7150c0ab5ca40f88ab8c3b914d601501cbf4e7
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Mon Jan 4 22:27:23 2016 +0100

    SotFactory is in fact not used: remove + cleanup
    
    Also SotData_Impl is used only in exchange.cxx now. Move there.
    
    Change-Id: I548095c2226d92aea4193bb1a3671e2381996435

diff --git a/include/sot/object.hxx b/include/sot/object.hxx
index b6328ef..277f715 100644
--- a/include/sot/object.hxx
+++ b/include/sot/object.hxx
@@ -25,11 +25,8 @@
 #include <tools/ref.hxx>
 #include <sot/sotdllapi.h>
 
-class SotFactory;
-
 class SOT_DLLPUBLIC SotObject : virtual public SvRefBase
 {
-friend class SotFactory;
     sal_uInt16  nOwnerLockCount;
     bool        bOwner;
     bool        bInClose;         // TRUE, in DoClose
@@ -41,9 +38,6 @@ protected:
 public:
                         SotObject();
 
-    static SotFactory *        ClassFactory();
-    virtual void *             Cast( const SotFactory * );
-
     bool                Owner() const { return bOwner; }
 
     sal_uInt16          GetOwnerLockCount() const { return nOwnerLockCount; }
diff --git a/include/sot/storage.hxx b/include/sot/storage.hxx
index de6e0c7..3e431a3 100644
--- a/include/sot/storage.hxx
+++ b/include/sot/storage.hxx
@@ -22,8 +22,6 @@
 
 #include <com/sun/star/uno/Any.hxx>
 #include <com/sun/star/uno/Reference.h>
-
-#include <com/sun/star/io/XInputStream.hpp>
 #include <com/sun/star/embed/XStorage.hpp>
 #include <sot/object.hxx>
 #include <tools/stream.hxx>
@@ -31,13 +29,8 @@
 #include <sot/storinfo.hxx>
 #include <sot/sotdllapi.h>
 
-class SotFactory;
-class SotStorage;
-
 enum class SotClipboardFormatId : sal_uLong;
 
-/*************************************************************************
-*************************************************************************/
 class SotStorage;
 class BaseStorageStream;
 class SOT_DLLPUBLIC SotStorageStream : virtual public SotObject, public SvStream
@@ -56,9 +49,6 @@ public:
                         SotStorageStream( BaseStorageStream *pStm );
                         SotStorageStream();
 
-    static SotFactory *        ClassFactory();
-    virtual void *             Cast( const SotFactory * ) override;
-
     virtual void        ResetError() override;
 
     virtual void        SetSize( sal_uInt64 nNewSize ) override;
@@ -69,13 +59,7 @@ public:
     virtual sal_uInt64 remainingSize() override;
 };
 
-namespace ucbhelper
-{
-    class Content;
-}
-
 class  BaseStorage;
-class  UNOStorageHolder;
 class SOT_DLLPUBLIC SotStorage : virtual public SotObject
 {
 friend class SotStorageStream;
@@ -104,9 +88,6 @@ public:
                         SotStorage( SvStream * pStm, bool bDelete );
                         SotStorage();
 
-    static SotFactory *        ClassFactory();
-    virtual void *             Cast( const SotFactory * ) override;
-
     SvMemoryStream *    CreateMemoryStream();
 
     static bool         IsStorageFile( const OUString & rFileName );
diff --git a/sot/Library_sot.mk b/sot/Library_sot.mk
index a17ce38..3c443e5 100644
--- a/sot/Library_sot.mk
+++ b/sot/Library_sot.mk
@@ -56,7 +56,6 @@ $(eval $(call gb_Library_add_exception_objects,sot,\
     sot/source/base/object \
     sot/source/base/exchange \
     sot/source/base/filelist \
-    sot/source/base/factory \
     sot/source/sdstor/stg \
     sot/source/sdstor/stgavl \
     sot/source/sdstor/stgcache \
diff --git a/sot/inc/factory.hxx b/sot/inc/factory.hxx
deleted file mode 100644
index ab22cc0..0000000
--- a/sot/inc/factory.hxx
+++ /dev/null
@@ -1,57 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#ifndef INCLUDED_SOT_FACTORY_HXX
-#define INCLUDED_SOT_FACTORY_HXX
-
-#include <sal/config.h>
-
-#include <tools/globname.hxx>
-
-class SotObject;
-
-class SotFactory : public SvGlobalName
-{
-    sal_uInt16          nSuperCount;    // Anzahl der Superklassen
-    const SotFactory ** pSuperClasses;  // Superklassen
-
-protected:
-    virtual             ~SotFactory();
-public:
-    static  void        IncSvObjectCount( SotObject * = nullptr );
-    static  void        DecSvObjectCount( SotObject * = nullptr );
-
-#ifdef DBG_UTIL
-    static  const SotFactory *      Find( const SvGlobalName & );
-#endif
-
-            SotFactory( const SvGlobalName & );
-
-    void                PutSuperClass( const SotFactory * );
-
-    bool                Is( const SotFactory * pSuperClass ) const;
-
-private:
-                        SotFactory( const SotFactory & ) = delete;
-    SotFactory &        operator = ( const SotFactory & ) = delete;
-};
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sot/inc/sotdata.hxx b/sot/inc/sotdata.hxx
deleted file mode 100644
index f2d3c26..0000000
--- a/sot/inc/sotdata.hxx
+++ /dev/null
@@ -1,53 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#ifndef INCLUDED_SOT_SOTDATA_HXX
-#define INCLUDED_SOT_SOTDATA_HXX
-
-#include <sal/config.h>
-
-#include <com/sun/star/datatransfer/DataFlavor.hpp>
-#include <vector>
-#include <list>
-
-
-class SotFactory;
-class SotObject;
-
-typedef ::std::vector< SotFactory* > SotFactoryList;
-typedef ::std::vector< css::datatransfer::DataFlavor* > tDataFlavorList;
-
-struct SotData_Impl
-{
-    sal_uInt32          nSvObjCount;
-    std::list<SotObject*> aObjectList;
-    SotFactoryList *    pFactoryList;
-    SotFactory *        pSotObjectFactory;
-    SotFactory *        pSotStorageStreamFactory;
-    SotFactory *        pSotStorageFactory;
-    tDataFlavorList*    pDataFlavorList;
-    SotData_Impl();
-    ~SotData_Impl();
-};
-
-SotData_Impl* SOTDATA();
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sot/source/base/exchange.cxx b/sot/source/base/exchange.cxx
index c50a6b7..88de2a6 100644
--- a/sot/source/base/exchange.cxx
+++ b/sot/source/base/exchange.cxx
@@ -22,15 +22,17 @@
 #include <tools/debug.hxx>
 #include <tools/solar.h>
 #include <tools/globname.hxx>
-#include <sotdata.hxx>
 #include <sot/exchange.hxx>
 #include <sot/formats.hxx>
 #include <sysformats.hxx>
 #include <comphelper/classids.hxx>
 #include <rtl/instance.hxx>
+#include <com/sun/star/datatransfer/DataFlavor.hpp>
 #include <com/sun/star/uno/Sequence.hxx>
 #include <comphelper/documentconstants.hxx>
 
+#include <vector>
+
 using namespace::com::sun::star::uno;
 using namespace::com::sun::star::datatransfer;
 
@@ -208,11 +210,35 @@ namespace
     struct FormatArray_Impl
         : public rtl::StaticAggregate<
             const DataFlavorRepresentation, ImplFormatArray_Impl > {};
+
+
+    typedef std::vector<css::datatransfer::DataFlavor*> tDataFlavorList;
+
+    struct SotData_Impl
+    {
+        tDataFlavorList* pDataFlavorList;
+
+        SotData_Impl(): pDataFlavorList(nullptr) {}
+        ~SotData_Impl()
+        {
+            if (pDataFlavorList)
+            {
+                for( tDataFlavorList::iterator aI = pDataFlavorList->begin(),
+                     aEnd = pDataFlavorList->end(); aI != aEnd; ++aI)
+                {
+                    delete *aI;
+                }
+                delete pDataFlavorList;
+            }
+        }
+    };
+
+    struct ImplData : public rtl::Static<SotData_Impl, ImplData> {};
 }
 
 static tDataFlavorList& InitFormats_Impl()
 {
-    SotData_Impl * pSotData = SOTDATA();
+    SotData_Impl *pSotData = &ImplData::get();
     if( !pSotData->pDataFlavorList )
         pSotData->pDataFlavorList = new tDataFlavorList();
     return *pSotData->pDataFlavorList;
diff --git a/sot/source/base/factory.cxx b/sot/source/base/factory.cxx
deleted file mode 100644
index 74946ad..0000000
--- a/sot/source/base/factory.cxx
+++ /dev/null
@@ -1,203 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#include <factory.hxx>
-
-#include <tools/debug.hxx>
-#include <sot/object.hxx>
-#include <sotdata.hxx>
-#include <comphelper/classids.hxx>
-#include <osl/diagnose.h>
-#include <rtl/instance.hxx>
-#include <rtl/strbuf.hxx>
-
-/************** class SotData_Impl *********************************************/
-/*************************************************************************
-|*    SotData_Impl::SotData_Impl
-|*
-|*    Beschreibung
-*************************************************************************/
-SotData_Impl::SotData_Impl()
-    : nSvObjCount( 0 )
-    , pFactoryList( nullptr )
-    , pSotObjectFactory( nullptr )
-    , pSotStorageStreamFactory( nullptr )
-    , pSotStorageFactory( nullptr )
-    , pDataFlavorList( nullptr )
-{
-}
-
-SotData_Impl::~SotData_Impl()
-{
-    if (pDataFlavorList)
-    {
-        for( tDataFlavorList::iterator aI = pDataFlavorList->begin(),
-             aEnd = pDataFlavorList->end(); aI != aEnd; ++aI)
-        {
-            delete *aI;
-        }
-        delete pDataFlavorList;
-    }
-    delete pFactoryList;
-}
-
-/*************************************************************************
-|*    SOTDATA()
-|*
-|*    Beschreibung
-*************************************************************************/
-namespace { struct ImplData : public rtl::Static<SotData_Impl, ImplData> {}; }
-SotData_Impl * SOTDATA()
-{
-    return &ImplData::get();
-}
-
-/************** class SotFactory *****************************************/
-/*************************************************************************
-|*    SotFactory::SotFactory()
-|*
-|*    Beschreibung
-*************************************************************************/
-
-SotFactory::SotFactory( const SvGlobalName & rName )
-    : SvGlobalName  ( rName )
-    , nSuperCount   ( 0 )
-    , pSuperClasses ( nullptr )
-{
-#ifdef DBG_UTIL
-    SvGlobalName aEmptyName;
-    if( aEmptyName != *this )
-    { // wegen Sfx-BasicFactories
-    DBG_ASSERT( aEmptyName != *this, "create factory without SvGlobalName" );
-    if( Find( *this ) )
-    {
-        OSL_FAIL( "create factories with the same unique name" );
-    }
-    }
-#endif
-    SotData_Impl * pSotData = SOTDATA();
-    if( !pSotData->pFactoryList )
-        pSotData->pFactoryList = new SotFactoryList();
-    // muss nach hinten, wegen Reihenfolge beim zerstoeren
-    pSotData->pFactoryList->push_back( this );
-}
-
-
-
-SotFactory::~SotFactory()
-{
-    delete [] pSuperClasses;
-}
-
-/*************************************************************************
-|*    SotFactory::Find()
-|*
-|*    Beschreibung
-*************************************************************************/
-#ifdef DBG_UTIL
-const SotFactory* SotFactory::Find( const SvGlobalName & rFactName )
-{
-    SvGlobalName aEmpty;
-    SotData_Impl * pSotData = SOTDATA();
-    if( rFactName != aEmpty && pSotData->pFactoryList )
-    {
-        for ( size_t i = 0, n = pSotData->pFactoryList->size(); i < n; ++i ) {
-            SotFactory* pFact = (*pSotData->pFactoryList)[ i ];
-            if( *pFact == rFactName )
-                return pFact;
-        }
-    }
-
-    return nullptr;
-}
-#endif
-
-/*************************************************************************
-|*    SotFactory::PutSuperClass()
-|*
-|*    Beschreibung
-*************************************************************************/
-void SotFactory::PutSuperClass( const SotFactory * pFact )
-{
-    nSuperCount++;
-    if( !pSuperClasses )
-        pSuperClasses = new const SotFactory * [ nSuperCount ];
-    else
-    {
-        const SotFactory ** pTmp = new const SotFactory * [ nSuperCount ];
-        memcpy( static_cast<void *>(pTmp), static_cast<void *>(pSuperClasses),
-                sizeof( void * ) * (nSuperCount -1) );
-        delete [] pSuperClasses;
-        pSuperClasses = pTmp;
-    }
-    pSuperClasses[ nSuperCount -1 ] = pFact;
-}
-
-
-/*************************************************************************
-|*    SotFactory::IncSvObjectCount()
-|*
-|*    Beschreibung
-*************************************************************************/
-void SotFactory::IncSvObjectCount( SotObject * pObj )
-{
-    SotData_Impl * pSotData = SOTDATA();
-    pSotData->nSvObjCount++;
-
-    if( pObj )
-        pSotData->aObjectList.push_back( pObj );
-}
-
-
-/*************************************************************************
-|*    SotFactory::DecSvObjectCount()
-|*
-|*    Beschreibung
-*************************************************************************/
-void SotFactory::DecSvObjectCount( SotObject * pObj )
-{
-    SotData_Impl * pSotData = SOTDATA();
-    pSotData->nSvObjCount--;
-    if( pObj )
-        pSotData->aObjectList.remove( pObj );
-    if( !pSotData->nSvObjCount )
-    {
-        //keine internen und externen Referenzen mehr
-    }
-}
-
-/*************************************************************************
-|*    SotFactory::Is()
-|*
-|*    Beschreibung
-*************************************************************************/
-bool SotFactory::Is( const SotFactory * pSuperCl ) const
-{
-    if( this == pSuperCl )
-        return true;
-
-    for( sal_uInt16 i = 0; i < nSuperCount; i++ )
-    {
-        if( pSuperClasses[ i ]->Is( pSuperCl ) )
-            return true;
-    }
-    return false;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sot/source/base/object.cxx b/sot/source/base/object.cxx
index 25b198d..79a139a 100644
--- a/sot/source/base/object.cxx
+++ b/sot/source/base/object.cxx
@@ -18,60 +18,16 @@
  */
 
 #include <sot/object.hxx>
-#include <factory.hxx>
-#include <sotdata.hxx>
 
-/************** class SotObject ******************************************/
-class SotObjectFactory : public SotFactory
-{
-public:
-    explicit SotObjectFactory(const SvGlobalName& rName)
-        : SotFactory( rName )
-    {
-    }
-};
-
-SotFactory * SotObject::ClassFactory()
-{
-    SotFactory **ppFactory = &(SOTDATA()->pSotObjectFactory);
-    if( !*ppFactory )
-    {
-        *ppFactory = new SotObjectFactory(
-                           SvGlobalName( 0xf44b7830, 0xf83c, 0x11d0,
-                               0xaa, 0xa1, 0x0, 0xa0, 0x24, 0x9d, 0x55, 0x90 ) );
-    }
-    return *ppFactory;
-}
-
-void * SotObject::Cast( const SotFactory * pFact )
-{
-    void * pRet = nullptr;
-    if( !pFact || pFact == ClassFactory() )
-        pRet = this;
-    return pRet;
-}
-
-/*************************************************************************
-|*    SotObject::SotObject()
-|*
-|*    Beschreibung
-*************************************************************************/
 SotObject::SotObject()
     : nOwnerLockCount( 0 )
     , bOwner      ( true )
     , bInClose    ( false )
 {
-    SotFactory::IncSvObjectCount( this );
 }
 
-/*************************************************************************
-|*
-|*    SotObject::~SotObject()
-|*
-*************************************************************************/
 SotObject::~SotObject()
 {
-    SotFactory::DecSvObjectCount( this );
 }
 
 void SotObject::OwnerLock
diff --git a/sot/source/sdstor/storage.cxx b/sot/source/sdstor/storage.cxx
index 63c8cbd..9cdc66e 100644
--- a/sot/source/sdstor/storage.cxx
+++ b/sot/source/sdstor/storage.cxx
@@ -36,46 +36,10 @@
 #include <unotools/ucbhelper.hxx>
 #include <comphelper/processfactory.hxx>
 
-#include <factory.hxx>
-#include <sotdata.hxx>
-
 #include <memory>
 
 using namespace ::com::sun::star;
 
-/************** class SotStorageStream ***********************************/
-class SotStorageStreamFactory : public SotFactory
-{
-public:
-    explicit SotStorageStreamFactory(const SvGlobalName& rName)
-        : SotFactory(rName)
-    {
-    }
-};
-
-SotFactory * SotStorageStream::ClassFactory()
-{
-    SotFactory **ppFactory = &(SOTDATA()->pSotStorageStreamFactory);
-    if( !*ppFactory )
-    {
-        *ppFactory = new SotStorageStreamFactory(
-                            SvGlobalName( 0xd7deb420, 0xf902, 0x11d0,
-                                0xaa, 0xa1, 0x0, 0xa0, 0x24, 0x9d, 0x55, 0x90 ) );
-        (*ppFactory)->PutSuperClass( SotObject::ClassFactory() );
-    }
-    return *ppFactory;
-}
-
-void * SotStorageStream::Cast( const SotFactory * pFact )
-{
-    void * pRet = nullptr;
-    if( !pFact || pFact == ClassFactory() )
-        pRet = this;
-    if( !pRet )
-        pRet = SotObject::Cast( pFact );
-    return pRet;
-}
-
 SvLockBytesRef MakeLockBytes_Impl( const OUString & rName, StreamMode nMode )
 {
     SvLockBytesRef xLB;
@@ -291,40 +255,6 @@ bool SotStorageStream::SetProperty( const OUString& rName, const css::uno::Any&
     }
 }
 
-/************** class SotStorage ******************************************
-*************************************************************************/
-class SotStorageFactory : public SotFactory
-{
-public:
-    explicit SotStorageFactory(const SvGlobalName & rName)
-        : SotFactory(rName)
-    {
-    }
-};
-
-SotFactory * SotStorage::ClassFactory()
-{
-    SotFactory **ppFactory = &(SOTDATA()->pSotStorageFactory);
-    if( !*ppFactory )
-    {
-        *ppFactory = new SotStorageFactory(
-                               SvGlobalName( 0x980ce7e0, 0xf905, 0x11d0,
-                                        0xaa, 0xa1, 0x0, 0xa0, 0x24, 0x9d, 0x55, 0x90 ) );
-        (*ppFactory)->PutSuperClass( SotObject::ClassFactory() );
-    }
-    return *ppFactory;
-}
-
-void * SotStorage::Cast( const SotFactory * pFact )
-{
-    void * pRet = nullptr;
-    if( !pFact || pFact == ClassFactory() )
-        pRet = this;
-    if( !pRet )
-        pRet = SotObject::Cast( pFact );
-    return pRet;
-}
-
 /************************************************************************
 |*
 |*    SotStorage::SotStorage()
commit 5b22663e373f2137c93adcdd2c31c54da2fba663
Author: Matúš Kukan <matus.kukan at gmail.com>
Date:   Sun Jan 3 20:00:21 2016 +0100

    Make SotFactory private to sot/ and clean a bit
    
    Change-Id: Ia683280a3e95eee995e036db6bde5d28852f92ff

diff --git a/basctl/source/basicide/basdoc.cxx b/basctl/source/basicide/basdoc.cxx
index 69d6de8..d985697 100644
--- a/basctl/source/basicide/basdoc.cxx
+++ b/basctl/source/basicide/basdoc.cxx
@@ -28,6 +28,7 @@
 #include <basslots.hxx>
 #include <sfx2/sfxmodelfactory.hxx>
 #include <svx/svxids.hrc>
+#include <tools/globname.hxx>
 
 namespace basctl
 {
diff --git a/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx b/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx
index 1166959..1cac581 100644
--- a/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx
+++ b/chart2/source/controller/drawinglayer/DrawViewWrapper.cxx
@@ -32,6 +32,7 @@
 #include <svx/svdoutl.hxx>
 #include <svx/svxids.hrc>
 #include <svx/unoshape.hxx>
+#include <tools/globname.hxx>
 #include <editeng/fhgtitem.hxx>
 
 #include <com/sun/star/container/XChild.hpp>
diff --git a/cui/source/dialogs/pastedlg.cxx b/cui/source/dialogs/pastedlg.cxx
index eccd83c..4fc2e21 100644
--- a/cui/source/dialogs/pastedlg.cxx
+++ b/cui/source/dialogs/pastedlg.cxx
@@ -28,8 +28,8 @@
 #include <vcl/group.hxx>
 #include <vcl/lstbox.hxx>
 #include <vcl/msgbox.hxx>
+#include <sot/exchange.hxx>
 #include <sot/formats.hxx>
-#include <sot/stg.hxx>
 #include <svtools/sores.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/settings.hxx>
diff --git a/include/sot/object.hxx b/include/sot/object.hxx
index f2c3b24..b6328ef 100644
--- a/include/sot/object.hxx
+++ b/include/sot/object.hxx
@@ -20,11 +20,13 @@
 #ifndef INCLUDED_SOT_OBJECT_HXX
 #define INCLUDED_SOT_OBJECT_HXX
 
-#include <sot/sotdata.hxx>
-#include <tools/globname.hxx>
+#include <sal/config.h>
+
 #include <tools/ref.hxx>
 #include <sot/sotdllapi.h>
 
+class SotFactory;
+
 class SOT_DLLPUBLIC SotObject : virtual public SvRefBase
 {
 friend class SotFactory;
@@ -35,13 +37,10 @@ friend class SotFactory;
 protected:
     virtual             ~SotObject();
     virtual bool        Close();
+
 public:
                         SotObject();
 
-private:
-    static SotFactory **       GetFactoryAdress()
-                              { return &(SOTDATA()->pSotObjectFactory); }
-public:
     static SotFactory *        ClassFactory();
     virtual void *             Cast( const SotFactory * );
 
@@ -58,6 +57,6 @@ private:
     SotObject( const SotObject & ) = delete;
 };
 
-#endif // _IFACE_HXX
+#endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/sot/storage.hxx b/include/sot/storage.hxx
index b51afe4..de6e0c7 100644
--- a/include/sot/storage.hxx
+++ b/include/sot/storage.hxx
@@ -26,12 +26,12 @@
 #include <com/sun/star/io/XInputStream.hpp>
 #include <com/sun/star/embed/XStorage.hpp>
 #include <sot/object.hxx>
-#include <sot/factory.hxx>
 #include <tools/stream.hxx>
 #include <tools/errcode.hxx>
 #include <sot/storinfo.hxx>
 #include <sot/sotdllapi.h>
 
+class SotFactory;
 class SotStorage;
 
 enum class SotClipboardFormatId : sal_uLong;
@@ -56,10 +56,6 @@ public:
                         SotStorageStream( BaseStorageStream *pStm );
                         SotStorageStream();
 
-private:
-    static SotFactory **       GetFactoryAdress()
-                              { return &(SOTDATA()->pSotStorageStreamFactory); }
-public:
     static SotFactory *        ClassFactory();
     virtual void *             Cast( const SotFactory * ) override;
 
@@ -108,10 +104,6 @@ public:
                         SotStorage( SvStream * pStm, bool bDelete );
                         SotStorage();
 
-private:
-    static SotFactory **       GetFactoryAdress()
-                              { return &(SOTDATA()->pSotStorageFactory); }
-public:
     static SotFactory *        ClassFactory();
     virtual void *             Cast( const SotFactory * ) override;
 
diff --git a/sc/source/ui/unoobj/chartuno.cxx b/sc/source/ui/unoobj/chartuno.cxx
index f5a09a4..c6baa5c 100644
--- a/sc/source/ui/unoobj/chartuno.cxx
+++ b/sc/source/ui/unoobj/chartuno.cxx
@@ -33,6 +33,7 @@
 #include <unotools/moduleoptions.hxx>
 #include <comphelper/classids.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
+#include <tools/globname.hxx>
 #include <svx/charthelper.hxx>
 #include <svtools/embedhlp.hxx>
 
diff --git a/sd/source/ui/func/fudraw.cxx b/sd/source/ui/func/fudraw.cxx
index e467a2f..9d735c4 100644
--- a/sd/source/ui/func/fudraw.cxx
+++ b/sd/source/ui/func/fudraw.cxx
@@ -17,10 +17,10 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <sot/object.hxx>
+#include <sal/config.h>
+
 #include <editeng/eeitem.hxx>
 #include <vcl/waitobj.hxx>
-
 #include <editeng/flditem.hxx>
 #include <svx/svdogrp.hxx>
 #include <svx/svdoole2.hxx>
@@ -36,7 +36,6 @@
 #include <svx/svxids.hrc>
 #include <svx/obj3d.hxx>
 #include <svx/polysc3d.hxx>
-
 #include <sfx2/viewfrm.hxx>
 
 #include "anminfo.hxx"
diff --git a/sfx2/source/appl/imagemgr.cxx b/sfx2/source/appl/imagemgr.cxx
index b7819f3..dadab28 100644
--- a/sfx2/source/appl/imagemgr.cxx
+++ b/sfx2/source/appl/imagemgr.cxx
@@ -25,6 +25,7 @@
 #include <com/sun/star/ui/ImageType.hpp>
 #include <com/sun/star/ui/XUIConfigurationManagerSupplier.hpp>
 
+#include <tools/globname.hxx>
 #include <tools/urlobj.hxx>
 #include <svtools/imagemgr.hxx>
 #include <comphelper/processfactory.hxx>
diff --git a/sfx2/source/doc/docfac.cxx b/sfx2/source/doc/docfac.cxx
index 953369d..db7bd7f 100644
--- a/sfx2/source/doc/docfac.cxx
+++ b/sfx2/source/doc/docfac.cxx
@@ -49,6 +49,7 @@
 #include "doc.hrc"
 
 #include <rtl/strbuf.hxx>
+#include <tools/globname.hxx>
 
 #include <assert.h>
 
diff --git a/sfx2/source/doc/frmdescr.cxx b/sfx2/source/doc/frmdescr.cxx
index f6ad2b4..e40fd89 100644
--- a/sfx2/source/doc/frmdescr.cxx
+++ b/sfx2/source/doc/frmdescr.cxx
@@ -17,8 +17,6 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-
-#include <sot/object.hxx>
 #include <tools/stream.hxx>
 #include <vcl/splitwin.hxx>
 #include <svl/itemset.hxx>
diff --git a/sfx2/source/doc/objitem.cxx b/sfx2/source/doc/objitem.cxx
index 1e5a4f5..88760ea 100644
--- a/sfx2/source/doc/objitem.cxx
+++ b/sfx2/source/doc/objitem.cxx
@@ -22,6 +22,8 @@
 #include <sfx2/objitem.hxx>
 #include <com/sun/star/lang/XUnoTunnel.hpp>
 
+#include <tools/globname.hxx>
+
 
 SfxPoolItem* SfxObjectShellItem::CreateDefault() { return new SfxObjectShellItem; }
 
diff --git a/sfx2/source/doc/objxtor.cxx b/sfx2/source/doc/objxtor.cxx
index 5d1bf3e..3bdb6f7 100644
--- a/sfx2/source/doc/objxtor.cxx
+++ b/sfx2/source/doc/objxtor.cxx
@@ -70,6 +70,7 @@
 #include <unotools/ucbhelper.hxx>
 #include <svtools/asynclink.hxx>
 #include <tools/diagnose_ex.h>
+#include <tools/globname.hxx>
 #include <comphelper/classids.hxx>
 
 #include <sfx2/app.hxx>
diff --git a/sfx2/source/doc/ownsubfilterservice.cxx b/sfx2/source/doc/ownsubfilterservice.cxx
index fbff13d..8cb5fff 100644
--- a/sfx2/source/doc/ownsubfilterservice.cxx
+++ b/sfx2/source/doc/ownsubfilterservice.cxx
@@ -28,6 +28,7 @@
 #include <cppuhelper/supportsservice.hxx>
 #include <rtl/ref.hxx>
 #include <sfx2/objsh.hxx>
+#include <tools/globname.hxx>
 
 using namespace css;
 
diff --git a/sfx2/source/doc/printhelper.cxx b/sfx2/source/doc/printhelper.cxx
index 3959339..d1768dd 100644
--- a/sfx2/source/doc/printhelper.cxx
+++ b/sfx2/source/doc/printhelper.cxx
@@ -38,6 +38,7 @@
 #include <unotools/tempfile.hxx>
 #include <osl/file.hxx>
 #include <osl/thread.hxx>
+#include <tools/globname.hxx>
 #include <tools/urlobj.hxx>
 #include <ucbhelper/content.hxx>
 #include <cppuhelper/interfacecontainer.hxx>
diff --git a/sfx2/source/menu/virtmenu.cxx b/sfx2/source/menu/virtmenu.cxx
index dc3b36f..e1452ec 100644
--- a/sfx2/source/menu/virtmenu.cxx
+++ b/sfx2/source/menu/virtmenu.cxx
@@ -17,8 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <sal/config.h>
 
-#include <sot/factory.hxx>
 #include <svtools/menuoptions.hxx>
 #include <svtools/imagemgr.hxx>
 #include <svl/imageitm.hxx>
diff --git a/sfx2/source/statbar/stbitem.cxx b/sfx2/source/statbar/stbitem.cxx
index 4b3b9c0..d8816c4 100644
--- a/sfx2/source/statbar/stbitem.cxx
+++ b/sfx2/source/statbar/stbitem.cxx
@@ -46,6 +46,7 @@
 #include <svl/intitem.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
 #include <toolkit/helper/convert.hxx>
+#include <tools/globname.hxx>
 #include <ctrlfactoryimpl.hxx>
 
 using namespace ::com::sun::star;
diff --git a/sfx2/source/toolbox/tbxitem.cxx b/sfx2/source/toolbox/tbxitem.cxx
index 3a80627..35daecf 100644
--- a/sfx2/source/toolbox/tbxitem.cxx
+++ b/sfx2/source/toolbox/tbxitem.cxx
@@ -66,6 +66,7 @@
 #include <framework/sfxhelperfunctions.hxx>
 #include <vcl/taskpanelist.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
+#include <tools/globname.hxx>
 #include <svtools/menuoptions.hxx>
 #include <svtools/miscopt.hxx>
 
diff --git a/sfx2/source/view/frame.cxx b/sfx2/source/view/frame.cxx
index ee08b52..ffebf56 100644
--- a/sfx2/source/view/frame.cxx
+++ b/sfx2/source/view/frame.cxx
@@ -33,6 +33,7 @@
 #include <svl/eitem.hxx>
 #include <svl/stritem.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
+#include <tools/globname.hxx>
 #include <com/sun/star/awt/PosSize.hpp>
 #include <comphelper/processfactory.hxx>
 #include <vcl/msgbox.hxx>
diff --git a/include/sot/factory.hxx b/sot/inc/factory.hxx
similarity index 79%
rename from include/sot/factory.hxx
rename to sot/inc/factory.hxx
index 3fe2fca..ab22cc0 100644
--- a/include/sot/factory.hxx
+++ b/sot/inc/factory.hxx
@@ -20,20 +20,13 @@
 #ifndef INCLUDED_SOT_FACTORY_HXX
 #define INCLUDED_SOT_FACTORY_HXX
 
+#include <sal/config.h>
+
 #include <tools/globname.hxx>
-#include <sot/sotdllapi.h>
-#include <vector>
 
-/*************************************************************************
-*************************************************************************/
 class SotObject;
-class SotFactory;
-
-typedef ::std::vector< SotFactory* > SotFactoryList;
-typedef void * (*CreateInstanceType)( SotObject ** );
 
-//==================class SotFactory=======================================
-class SOT_DLLPUBLIC SotFactory : public SvGlobalName
+class SotFactory : public SvGlobalName
 {
     sal_uInt16          nSuperCount;    // Anzahl der Superklassen
     const SotFactory ** pSuperClasses;  // Superklassen
@@ -59,6 +52,6 @@ private:
     SotFactory &        operator = ( const SotFactory & ) = delete;
 };
 
-#endif // _FACTORY_HXX
+#endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/sot/sotdata.hxx b/sot/inc/sotdata.hxx
similarity index 96%
rename from include/sot/sotdata.hxx
rename to sot/inc/sotdata.hxx
index 58867b0..f2d3c26 100644
--- a/include/sot/sotdata.hxx
+++ b/sot/inc/sotdata.hxx
@@ -20,7 +20,8 @@
 #ifndef INCLUDED_SOT_SOTDATA_HXX
 #define INCLUDED_SOT_SOTDATA_HXX
 
-#include <sot/sotdllapi.h>
+#include <sal/config.h>
+
 #include <com/sun/star/datatransfer/DataFlavor.hpp>
 #include <vector>
 #include <list>
@@ -45,7 +46,7 @@ struct SotData_Impl
     ~SotData_Impl();
 };
 
-SOT_DLLPUBLIC SotData_Impl* SOTDATA();
+SotData_Impl* SOTDATA();
 
 #endif
 
diff --git a/sot/source/base/exchange.cxx b/sot/source/base/exchange.cxx
index 13ca02f..c50a6b7 100644
--- a/sot/source/base/exchange.cxx
+++ b/sot/source/base/exchange.cxx
@@ -17,10 +17,12 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <sal/config.h>
+
 #include <tools/debug.hxx>
 #include <tools/solar.h>
 #include <tools/globname.hxx>
-#include <sot/sotdata.hxx>
+#include <sotdata.hxx>
 #include <sot/exchange.hxx>
 #include <sot/formats.hxx>
 #include <sysformats.hxx>
@@ -29,10 +31,6 @@
 #include <com/sun/star/uno/Sequence.hxx>
 #include <comphelper/documentconstants.hxx>
 
-#ifdef GetObject
-#undef GetObject
-#endif
-
 using namespace::com::sun::star::uno;
 using namespace::com::sun::star::datatransfer;
 
diff --git a/sot/source/base/factory.cxx b/sot/source/base/factory.cxx
index 8111c2b..74946ad 100644
--- a/sot/source/base/factory.cxx
+++ b/sot/source/base/factory.cxx
@@ -17,10 +17,11 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <sot/factory.hxx>
+#include <factory.hxx>
+
 #include <tools/debug.hxx>
 #include <sot/object.hxx>
-#include <sot/sotdata.hxx>
+#include <sotdata.hxx>
 #include <comphelper/classids.hxx>
 #include <osl/diagnose.h>
 #include <rtl/instance.hxx>
diff --git a/sot/source/base/object.cxx b/sot/source/base/object.cxx
index 1180252..25b198d 100644
--- a/sot/source/base/object.cxx
+++ b/sot/source/base/object.cxx
@@ -18,7 +18,8 @@
  */
 
 #include <sot/object.hxx>
-#include <sot/factory.hxx>
+#include <factory.hxx>
+#include <sotdata.hxx>
 
 /************** class SotObject ******************************************/
 class SotObjectFactory : public SotFactory
@@ -32,7 +33,7 @@ public:
 
 SotFactory * SotObject::ClassFactory()
 {
-    SotFactory **ppFactory = GetFactoryAdress();
+    SotFactory **ppFactory = &(SOTDATA()->pSotObjectFactory);
     if( !*ppFactory )
     {
         *ppFactory = new SotObjectFactory(
diff --git a/sot/source/sdstor/storage.cxx b/sot/source/sdstor/storage.cxx
index df13786..63c8cbd 100644
--- a/sot/source/sdstor/storage.cxx
+++ b/sot/source/sdstor/storage.cxx
@@ -17,8 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/lang/XSingleServiceFactory.hpp>
+#include <sal/config.h>
+
 #include <com/sun/star/embed/XStorage.hpp>
 #include <com/sun/star/embed/ElementModes.hpp>
 #include <com/sun/star/beans/XPropertySet.hpp>
@@ -35,6 +35,10 @@
 #include <tools/urlobj.hxx>
 #include <unotools/ucbhelper.hxx>
 #include <comphelper/processfactory.hxx>
+
+#include <factory.hxx>
+#include <sotdata.hxx>
+
 #include <memory>
 
 using namespace ::com::sun::star;
@@ -51,7 +55,7 @@ public:
 
 SotFactory * SotStorageStream::ClassFactory()
 {
-    SotFactory **ppFactory = GetFactoryAdress();
+    SotFactory **ppFactory = &(SOTDATA()->pSotStorageStreamFactory);
     if( !*ppFactory )
     {
         *ppFactory = new SotStorageStreamFactory(
@@ -300,7 +304,7 @@ public:
 
 SotFactory * SotStorage::ClassFactory()
 {
-    SotFactory **ppFactory = GetFactoryAdress();
+    SotFactory **ppFactory = &(SOTDATA()->pSotStorageFactory);
     if( !*ppFactory )
     {
         *ppFactory = new SotStorageFactory(
diff --git a/starmath/source/smdll.cxx b/starmath/source/smdll.cxx
index baa974d..738a6c5 100644
--- a/starmath/source/smdll.cxx
+++ b/starmath/source/smdll.cxx
@@ -17,7 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <sot/factory.hxx>
+#include <sal/config.h>
+
 #include <svx/svxids.hrc>
 #include <svx/modctrl.hxx>
 #include <svx/zoomctrl.hxx>
diff --git a/svx/source/dialog/_contdlg.cxx b/svx/source/dialog/_contdlg.cxx
index 33cb2cc..26099ab 100644
--- a/svx/source/dialog/_contdlg.cxx
+++ b/svx/source/dialog/_contdlg.cxx
@@ -17,8 +17,9 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <sal/config.h>
+
 #include <vcl/wrkwin.hxx>
-#include <sot/factory.hxx>
 #include <tools/helpers.hxx>
 #include <vcl/msgbox.hxx>
 #include <svl/eitem.hxx>
diff --git a/svx/source/unodraw/unopage.cxx b/svx/source/unodraw/unopage.cxx
index 7376b8e..6fbab3e 100644
--- a/svx/source/unodraw/unopage.cxx
+++ b/svx/source/unodraw/unopage.cxx
@@ -49,6 +49,7 @@
 #include <svx/lathe3d.hxx>
 #include <vcl/svapp.hxx>
 #include <tools/diagnose_ex.h>
+#include <tools/globname.hxx>
 
 using namespace ::cppu;
 using namespace ::com::sun::star;
diff --git a/svx/source/xoutdev/_xoutbmp.cxx b/svx/source/xoutdev/_xoutbmp.cxx
index e445b09..1c4c012 100644
--- a/svx/source/xoutdev/_xoutbmp.cxx
+++ b/svx/source/xoutdev/_xoutbmp.cxx
@@ -17,7 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <sot/factory.hxx>
+#include <sal/config.h>
+
 #include <tools/poly.hxx>
 #include <vcl/bmpacc.hxx>
 #include <vcl/virdev.hxx>
diff --git a/sw/inc/pch/precompiled_msword.hxx b/sw/inc/pch/precompiled_msword.hxx
index 46b41de..a8fd3bd 100644
--- a/sw/inc/pch/precompiled_msword.hxx
+++ b/sw/inc/pch/precompiled_msword.hxx
@@ -507,7 +507,6 @@
 #include <sot/exchange.hxx>
 #include <sot/formats.hxx>
 #include <sot/object.hxx>
-#include <sot/sotdata.hxx>
 #include <sot/sotdllapi.h>
 #include <svl/SfxBroadcaster.hxx>
 #include <svl/cenumitm.hxx>
diff --git a/sw/source/core/doc/DocumentContentOperationsManager.cxx b/sw/source/core/doc/DocumentContentOperationsManager.cxx
index 962c692..58d28b2 100644
--- a/sw/source/core/doc/DocumentContentOperationsManager.cxx
+++ b/sw/source/core/doc/DocumentContentOperationsManager.cxx
@@ -71,6 +71,7 @@
 #include <svl/itemiter.hxx>
 #include <svx/svdobj.hxx>
 #include <svx/svdouno.hxx>
+#include <tools/globname.hxx>
 #include <editeng/formatbreakitem.hxx>
 #include <com/sun/star/i18n/Boundary.hpp>
 #include <memory>
diff --git a/sw/source/core/doc/docdesc.cxx b/sw/source/core/doc/docdesc.cxx
index 98e34c3..ebd8cc3 100644
--- a/sw/source/core/doc/docdesc.cxx
+++ b/sw/source/core/doc/docdesc.cxx
@@ -25,6 +25,7 @@
 #include <sfx2/bindings.hxx>
 #include <sfx2/dispatch.hxx>
 #include <sfx2/printer.hxx>
+#include <tools/globname.hxx>
 #include <fmtfsize.hxx>
 #include <fmthdft.hxx>
 #include <fmtcntnt.hxx>
diff --git a/sw/source/core/doc/doctxm.cxx b/sw/source/core/doc/doctxm.cxx
index 1ddc0ca..afc95d7 100644
--- a/sw/source/core/doc/doctxm.cxx
+++ b/sw/source/core/doc/doctxm.cxx
@@ -72,6 +72,7 @@
 #include <ToxTextGenerator.hxx>
 #include <ToxTabStopTokenHandler.hxx>
 #include <tools/datetimeutils.hxx>
+#include <tools/globname.hxx>
 
 #include <memory>
 
diff --git a/sw/source/core/draw/dview.cxx b/sw/source/core/draw/dview.cxx
index ad6f7df..eb05f95 100644
--- a/sw/source/core/draw/dview.cxx
+++ b/sw/source/core/draw/dview.cxx
@@ -23,6 +23,7 @@
 #include <svx/fmmodel.hxx>
 #include <sot/exchange.hxx>
 #include <svx/sdrundomanager.hxx>
+#include <tools/globname.hxx>
 #include <editeng/outliner.hxx>
 #include <com/sun/star/embed/EmbedMisc.hpp>
 
diff --git a/sw/source/core/frmedt/fefly1.cxx b/sw/source/core/frmedt/fefly1.cxx
index d06b788..f9db811 100644
--- a/sw/source/core/frmedt/fefly1.cxx
+++ b/sw/source/core/frmedt/fefly1.cxx
@@ -25,6 +25,7 @@
 #include <svx/svdogrp.hxx>
 #include <svx/svdouno.hxx>
 #include <svx/fmglob.hxx>
+#include <tools/globname.hxx>
 #include <com/sun/star/form/FormButtonType.hpp>
 #include <com/sun/star/beans/XPropertySet.hpp>
 #include <fmtanchr.hxx>
diff --git a/sw/source/core/frmedt/feshview.cxx b/sw/source/core/frmedt/feshview.cxx
index 4526f4e..e55d8cd 100644
--- a/sw/source/core/frmedt/feshview.cxx
+++ b/sw/source/core/frmedt/feshview.cxx
@@ -36,6 +36,7 @@
 #include <editeng/protitem.hxx>
 #include <svx/svdpage.hxx>
 #include <svx/svdpagv.hxx>
+#include <tools/globname.hxx>
 #include <IDocumentSettingAccess.hxx>
 #include <DocumentSettingManager.hxx>
 #include <IDocumentState.hxx>
diff --git a/sw/source/core/ole/ndole.cxx b/sw/source/core/ole/ndole.cxx
index 5db900b..f17714c 100644
--- a/sw/source/core/ole/ndole.cxx
+++ b/sw/source/core/ole/ndole.cxx
@@ -31,6 +31,7 @@
 #include <cppuhelper/implbase.hxx>
 
 #include <toolkit/helper/vclunohelper.hxx>
+#include <tools/globname.hxx>
 #include <hintids.hxx>
 #include <sfx2/docfile.hxx>
 #include <sfx2/app.hxx>
diff --git a/sw/source/core/txtnode/thints.cxx b/sw/source/core/txtnode/thints.cxx
index 19a0f77..e42b6dc 100644
--- a/sw/source/core/txtnode/thints.cxx
+++ b/sw/source/core/txtnode/thints.cxx
@@ -17,8 +17,9 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <sal/config.h>
+
 #include <hintids.hxx>
-#include <sot/factory.hxx>
 #include <editeng/xmlcnitm.hxx>
 #include <svl/whiter.hxx>
 #include <svl/itemiter.hxx>
diff --git a/sw/source/core/unocore/unoframe.cxx b/sw/source/core/unocore/unoframe.cxx
index b7b6cc0..98bd0ae 100644
--- a/sw/source/core/unocore/unoframe.cxx
+++ b/sw/source/core/unocore/unoframe.cxx
@@ -34,6 +34,7 @@
 #include <svx/xflgrit.hxx>
 #include <svx/sdtaitm.hxx>
 #include <svx/xflclit.hxx>
+#include <tools/globname.hxx>
 #include <editeng/memberids.hrc>
 #include <swtypes.hxx>
 #include <cmdid.h>
diff --git a/sw/source/ui/frmdlg/frmpage.cxx b/sw/source/ui/frmdlg/frmpage.cxx
index 93ede70..fd92482 100644
--- a/sw/source/ui/frmdlg/frmpage.cxx
+++ b/sw/source/ui/frmdlg/frmpage.cxx
@@ -37,8 +37,8 @@
 #include <editeng/frmdiritem.hxx>
 #include <svx/swframevalidation.hxx>
 #include <comphelper/classids.hxx>
-
 #include <sfx2/viewfrm.hxx>
+#include <tools/globname.hxx>
 #include <fmturl.hxx>
 #include <fmteiro.hxx>
 #include <fmtcnct.hxx>
diff --git a/sw/source/uibase/shells/basesh.cxx b/sw/source/uibase/shells/basesh.cxx
index 2c609e1..6578515 100644
--- a/sw/source/uibase/shells/basesh.cxx
+++ b/sw/source/uibase/shells/basesh.cxx
@@ -17,7 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <sot/factory.hxx>
+#include <sal/config.h>
+
 #include <hintids.hxx>
 #include <svl/urihelper.hxx>
 #include <svl/languageoptions.hxx>
diff --git a/sw/source/uibase/wrtsh/wrtsh1.cxx b/sw/source/uibase/wrtsh/wrtsh1.cxx
index f47ffbc..b44a2c0 100644
--- a/sw/source/uibase/wrtsh/wrtsh1.cxx
+++ b/sw/source/uibase/wrtsh/wrtsh1.cxx
@@ -30,12 +30,11 @@
 
 #include <math.h>
 #include <hintids.hxx>
+#include <sot/exchange.hxx>
 #include <svx/hdft.hxx>
 #include <svx/svdview.hxx>
-#include <sot/factory.hxx>
 #include <svl/itemiter.hxx>
 #include <tools/bigint.hxx>
-#include <sot/storage.hxx>
 #include <svtools/insdlg.hxx>
 #include <sfx2/frmdescr.hxx>
 #include <sfx2/ipclient.hxx>
diff --git a/vbahelper/inc/pch/precompiled_msforms.hxx b/vbahelper/inc/pch/precompiled_msforms.hxx
index 633d06d..341e1ee 100644
--- a/vbahelper/inc/pch/precompiled_msforms.hxx
+++ b/vbahelper/inc/pch/precompiled_msforms.hxx
@@ -300,7 +300,6 @@
 #include <sfx2/viewfrm.hxx>
 #include <sot/formats.hxx>
 #include <sot/object.hxx>
-#include <sot/sotdata.hxx>
 #include <sot/sotdllapi.h>
 #include <svl/SfxBroadcaster.hxx>
 #include <svl/hint.hxx>
diff --git a/vcl/source/control/longcurr.cxx b/vcl/source/control/longcurr.cxx
index adc4626..3e7c1f0 100644
--- a/vcl/source/control/longcurr.cxx
+++ b/vcl/source/control/longcurr.cxx
@@ -18,8 +18,6 @@
  */
 
 #include <comphelper/string.hxx>
-#include <sot/object.hxx>
-#include <sot/factory.hxx>
 #include <tools/debug.hxx>
 #include <tools/bigint.hxx>
 
diff --git a/vcl/source/filter/wmf/winmtf.hxx b/vcl/source/filter/wmf/winmtf.hxx
index f8ae32e..dc8074f 100644
--- a/vcl/source/filter/wmf/winmtf.hxx
+++ b/vcl/source/filter/wmf/winmtf.hxx
@@ -20,7 +20,8 @@
 #ifndef INCLUDED_VCL_SOURCE_FILTER_WMF_WINMTF_HXX
 #define INCLUDED_VCL_SOURCE_FILTER_WMF_WINMTF_HXX
 
-#include <sot/object.hxx>
+#include <sal/config.h>
+
 #include <vcl/graph.hxx>
 #include <basegfx/tools/b2dclipstate.hxx>
 #include <vcl/font.hxx>


More information about the Libreoffice-commits mailing list