summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2015-07-10 19:25:24 +0200
committerMichael Stahl <mstahl@redhat.com>2015-07-10 23:27:42 +0200
commitad94eaf540260296e8aee0b5bff91d22a5fe6b78 (patch)
tree9d3fe465d4dbbf0ef26b6f9285a1592f2d4b248c
parent72c11ce76abebdbe88a7be793dbf690c54b30500 (diff)
vcl: avoid a boost::ptr_map in VclBuilder
This eliminates 638MB of preprocessor input. Change-Id: Ife434310ec08e408e1f8aaf52d6298f8caa209af
-rw-r--r--include/vcl/builder.hxx5
-rw-r--r--vcl/source/window/builder.cxx2
2 files changed, 4 insertions, 3 deletions
diff --git a/include/vcl/builder.hxx b/include/vcl/builder.hxx
index b0d8ace17354..baf523d5d301 100644
--- a/include/vcl/builder.hxx
+++ b/include/vcl/builder.hxx
@@ -18,6 +18,8 @@
#include <vcl/dllapi.h>
#include <vcl/window.hxx>
#include <vcl/vclptr.hxx>
+
+#include <memory>
#include <map>
#include <set>
#include <stack>
@@ -26,7 +28,6 @@
# //some problem with MacOSX and a check define
# undef check
#endif
-#include <boost/ptr_container/ptr_map.hpp>
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/uno/XComponentContext.hpp>
@@ -124,7 +125,7 @@ private:
VclBuilder(const VclBuilder&) SAL_DELETED_FUNCTION;
VclBuilder& operator=(const VclBuilder&) SAL_DELETED_FUNCTION;
- typedef boost::ptr_map<OUString, osl::Module> ModuleMap;
+ typedef std::map<OUString, std::unique_ptr<osl::Module>> ModuleMap;
//We store these until the builder is deleted, that way we can use the
//ui-previewer on custom widgets and guarantee the modules they are from
diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx
index dba80c0d5bad..9a5a5b50d071 100644
--- a/vcl/source/window/builder.cxx
+++ b/vcl/source/window/builder.cxx
@@ -1751,7 +1751,7 @@ VclPtr<vcl::Window> VclBuilder::makeObject(vcl::Window *pParent, const OString &
#else
pModule->loadRelative(&thisModule, sModule);
#endif
- aI = m_aModuleMap.insert(sModule, pModule).first;
+ aI = m_aModuleMap.insert(std::make_pair(sModule, std::unique_ptr<osl::Module>(pModule))).first;
}
customMakeWidget pFunction = reinterpret_cast<customMakeWidget>(aI->second->getFunctionSymbol(sFunction));
#else