[Libreoffice-commits] core.git: 2 commits - sd/source sfx2/source starmath/source svtools/source svx/source

Michael Meeks michael.meeks at collabora.com
Mon May 11 05:02:47 PDT 2015


 sd/source/ui/animations/CustomAnimationCreateDialog.cxx |    7 +-----
 sd/source/ui/animations/CustomAnimationDialog.cxx       |    6 +----
 sd/source/ui/animations/CustomAnimationList.cxx         |    6 +----
 sd/source/ui/dlg/RemoteDialogClientBox.cxx              |    3 +-
 sd/source/ui/dlg/dlgassim.cxx                           |    4 +--
 sd/source/ui/dlg/dlgctrls.cxx                           |    4 +--
 sd/source/ui/dlg/docprev.cxx                            |    3 +-
 sd/source/ui/dlg/headerfooterdlg.cxx                    |    6 +----
 sd/source/ui/dlg/sdtreelb.cxx                           |    3 +-
 sd/source/ui/table/TableDesignPane.cxx                  |    3 +-
 sfx2/source/appl/newhelp.cxx                            |   18 ++++++----------
 sfx2/source/control/recentdocsview.cxx                  |    7 +-----
 sfx2/source/control/templatedefaultview.cxx             |    7 +-----
 sfx2/source/control/templatelocalview.cxx               |    7 +-----
 sfx2/source/control/templateremoteview.cxx              |    5 ++--
 sfx2/source/control/templatesearchview.cxx              |    7 +-----
 sfx2/source/dialog/dinfdlg.cxx                          |    7 +-----
 sfx2/source/doc/new.cxx                                 |    5 ++--
 sfx2/source/sidebar/SidebarToolBox.cxx                  |    7 +-----
 starmath/source/dialog.cxx                              |   14 ++++--------
 starmath/source/utility.cxx                             |    6 +----
 svtools/source/contnr/DocumentInfoPreview.cxx           |    6 +----
 svtools/source/contnr/fileview.cxx                      |    4 +--
 svtools/source/contnr/simptabl.cxx                      |    9 ++------
 svtools/source/contnr/svtabbx.cxx                       |    5 +---
 svtools/source/contnr/treelistbox.cxx                   |    4 +--
 svtools/source/control/ctrlbox.cxx                      |   12 +++++-----
 svtools/source/control/fmtfield.cxx                     |    8 +------
 svtools/source/control/inettbc.cxx                      |    5 ++--
 svtools/source/control/urlcontrol.cxx                   |    6 ++---
 svtools/source/control/valueset.cxx                     |    4 +--
 svtools/source/edit/editsyntaxhighlighter.cxx           |    7 +-----
 svtools/source/uno/popupwindowcontroller.cxx            |   12 ----------
 svx/source/dialog/charmap.cxx                           |    8 +------
 svx/source/dialog/checklbx.cxx                          |    7 +-----
 svx/source/dialog/connctrl.cxx                          |    4 +--
 svx/source/dialog/dialcontrol.cxx                       |    7 +-----
 37 files changed, 90 insertions(+), 153 deletions(-)

New commits:
commit 19ea033f380aa196c9c868a3cdb43e967eb42abe
Author: Michael Meeks <michael.meeks at collabora.com>
Date:   Mon May 11 12:22:25 2015 +0100

    tdf#91138 - hold reference until idle dispose.
    
    Change-Id: Ibfa9a95d27796f8b44dc610db8daa71b968a7988

diff --git a/svtools/source/uno/popupwindowcontroller.cxx b/svtools/source/uno/popupwindowcontroller.cxx
index 9410bf6..87e64d4 100644
--- a/svtools/source/uno/popupwindowcontroller.cxx
+++ b/svtools/source/uno/popupwindowcontroller.cxx
@@ -42,9 +42,7 @@ public:
     ~PopupWindowControllerImpl();
 
     void SetPopupWindow( vcl::Window* pPopupWindow, ToolBox* pToolBox );
-
     DECL_LINK( WindowEventListener, VclSimpleEvent* );
-    DECL_STATIC_LINK( PopupWindowControllerImpl, AsyncDeleteWindowHdl, vcl::Window* );
 
 private:
     VclPtr<vcl::Window> mpPopupWindow;
@@ -68,7 +66,7 @@ void PopupWindowControllerImpl::SetPopupWindow( vcl::Window* pPopupWindow, ToolB
     if( mpPopupWindow )
     {
         mpPopupWindow->RemoveEventListener( LINK( this, PopupWindowControllerImpl, WindowEventListener ) );
-        Application::PostUserEvent( LINK( this, PopupWindowControllerImpl, AsyncDeleteWindowHdl ), mpPopupWindow );
+        mpPopupWindow.disposeAndClear();
     }
     mpPopupWindow = pPopupWindow;
     mpToolBox = pToolBox;
@@ -122,14 +120,6 @@ IMPL_LINK( PopupWindowControllerImpl, WindowEventListener, VclSimpleEvent*, pEve
 }
 
 
-
-IMPL_STATIC_LINK( PopupWindowControllerImpl, AsyncDeleteWindowHdl, vcl::Window*, pWindow )
-{
-    pWindow->disposeOnce();
-    return 0;
-}
-
-
 // class PopupWindowController
 
 
commit b01554bcdaca076f900c25b672fd691dbe76c9db
Author: Michael Meeks <michael.meeks at collabora.com>
Date:   Mon May 11 09:35:06 2015 +0100

    tdf#91052 - more macros for 'make' constructors.
    
    Change-Id: Ic7ff127e2793993f9dcf1018f8d5ed4f2858a2c4

diff --git a/sd/source/ui/animations/CustomAnimationCreateDialog.cxx b/sd/source/ui/animations/CustomAnimationCreateDialog.cxx
index d390643..7f73b5c 100644
--- a/sd/source/ui/animations/CustomAnimationCreateDialog.cxx
+++ b/sd/source/ui/animations/CustomAnimationCreateDialog.cxx
@@ -24,7 +24,7 @@
 #include <vcl/tabctrl.hxx>
 #include <vcl/tabpage.hxx>
 
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/button.hxx>
 #include <vcl/fixed.hxx>
 #include <vcl/lstbox.hxx>
@@ -90,10 +90,7 @@ CategoryListBox::CategoryListBox( vcl::Window* pParent )
     SetDoubleClickHdl( LINK( this, CategoryListBox, implDoubleClickHdl ) );
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeCategoryListBox(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new CategoryListBox( pParent );
-}
+VCL_BUILDER_FACTORY(CategoryListBox)
 
 CategoryListBox::~CategoryListBox()
 {
diff --git a/sd/source/ui/animations/CustomAnimationDialog.cxx b/sd/source/ui/animations/CustomAnimationDialog.cxx
index e9c8dad..461272e 100644
--- a/sd/source/ui/animations/CustomAnimationDialog.cxx
+++ b/sd/source/ui/animations/CustomAnimationDialog.cxx
@@ -50,6 +50,7 @@
 #include <vcl/combobox.hxx>
 #include <vcl/menu.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include <svtools/ctrlbox.hxx>
 #include <svtools/ctrltool.hxx>
@@ -2282,10 +2283,7 @@ PropertyControl::PropertyControl( vcl::Window* pParent )
 {
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makePropertyControl( vcl::Window *pParent )
-{
-    return new PropertyControl( pParent );
-}
+VCL_BUILDER_FACTORY(PropertyControl)
 
 PropertyControl::~PropertyControl()
 {
diff --git a/sd/source/ui/animations/CustomAnimationList.cxx b/sd/source/ui/animations/CustomAnimationList.cxx
index 27cabc9..d840f0a 100644
--- a/sd/source/ui/animations/CustomAnimationList.cxx
+++ b/sd/source/ui/animations/CustomAnimationList.cxx
@@ -34,6 +34,7 @@
 #include "CustomAnimationPreset.hxx"
 #include <vcl/svapp.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include "sdresid.hxx"
 
@@ -433,10 +434,7 @@ CustomAnimationList::CustomAnimationList( vcl::Window* pParent )
     SetNodeDefaultImages();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeCustomAnimationList( vcl::Window *pParent )
-{
-    return new CustomAnimationList( pParent );
-}
+VCL_BUILDER_FACTORY(CustomAnimationList)
 
 const Image&  CustomAnimationList::getImage( sal_uInt16 nId )
 {
diff --git a/sd/source/ui/dlg/RemoteDialogClientBox.cxx b/sd/source/ui/dlg/RemoteDialogClientBox.cxx
index f1796d1..8c74a76 100644
--- a/sd/source/ui/dlg/RemoteDialogClientBox.cxx
+++ b/sd/source/ui/dlg/RemoteDialogClientBox.cxx
@@ -29,6 +29,7 @@
 #include "com/sun/star/deployment/DependencyException.hpp"
 #include "com/sun/star/deployment/DeploymentException.hpp"
 #include <vcl/settings.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include "glob.hrc"
 
@@ -108,7 +109,7 @@ ClientBox::ClientBox( vcl::Window* pParent, WinBits nStyle ) :
     Show();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeClientBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(ClientBox)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/sd/source/ui/dlg/dlgassim.cxx b/sd/source/ui/dlg/dlgassim.cxx
index 652a2b2..2c308f7 100644
--- a/sd/source/ui/dlg/dlgassim.cxx
+++ b/sd/source/ui/dlg/dlgassim.cxx
@@ -25,7 +25,7 @@
 #include "res_bmp.hrc"
 
 #include <vcl/svapp.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include "svtools/svlbitm.hxx"
 #include "svtools/treelistentry.hxx"
 
@@ -49,7 +49,7 @@ SdPageListControl::SdPageListControl(
     SetCheckButtonHdl( LINK(this,SdPageListControl,CheckButtonClickHdl) );
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSdPageListControl(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SdPageListControl)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/sd/source/ui/dlg/dlgctrls.cxx b/sd/source/ui/dlg/dlgctrls.cxx
index cb9df95..3256321 100644
--- a/sd/source/ui/dlg/dlgctrls.cxx
+++ b/sd/source/ui/dlg/dlgctrls.cxx
@@ -17,7 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include "strings.hrc"
 #include "dlgctrls.hxx"
@@ -72,7 +72,7 @@ void FadeEffectLB::Fill()
     SelectEntryPos(0);
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeFadeEffectLB(vcl::Window* pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(FadeEffectLB)
 {
     WinBits nBits = WB_CLIPCHILDREN|WB_LEFT|WB_VCENTER|WB_3DLOOK;
 
diff --git a/sd/source/ui/dlg/docprev.cxx b/sd/source/ui/dlg/docprev.cxx
index 5c35ee7..e0cba08 100644
--- a/sd/source/ui/dlg/docprev.cxx
+++ b/sd/source/ui/dlg/docprev.cxx
@@ -41,6 +41,7 @@
 #include "sdpage.hxx"
 #include "sfx2/viewfrm.hxx"
 #include <vcl/svapp.hxx>
+#include <vcl/builderfactory.hxx>
 
 using ::com::sun::star::drawing::XDrawPage;
 using ::com::sun::star::animations::XAnimationNode;
@@ -61,7 +62,7 @@ void SdDocPreviewWin::SetObjectShell( SfxObjectShell* pObj, sal_uInt16 nShowPage
     updateViewSettings();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSdDocPreviewWin(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SdDocPreviewWin)
 {
     WinBits nWinStyle = 0;
 
diff --git a/sd/source/ui/dlg/headerfooterdlg.cxx b/sd/source/ui/dlg/headerfooterdlg.cxx
index 1fe443c..93246b8 100644
--- a/sd/source/ui/dlg/headerfooterdlg.cxx
+++ b/sd/source/ui/dlg/headerfooterdlg.cxx
@@ -51,6 +51,7 @@
 #include <svx/xlineit0.hxx>
 #include <svx/xlnclit.hxx>
 #include <vcl/decoview.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include "undoheaderfooter.hxx"
 #include "sdundogr.hxx"
@@ -711,10 +712,7 @@ PresLayoutPreview::PresLayoutPreview( vcl::Window* pParent )
 {
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makePresLayoutPreview( vcl::Window *pParent, VclBuilder::stringmap & )
-{
-    return new PresLayoutPreview( pParent );
-}
+VCL_BUILDER_FACTORY(PresLayoutPreview)
 
 PresLayoutPreview::~PresLayoutPreview()
 {
diff --git a/sd/source/ui/dlg/sdtreelb.cxx b/sd/source/ui/dlg/sdtreelb.cxx
index d6c2bd3a..0a3c3f4 100644
--- a/sd/source/ui/dlg/sdtreelb.cxx
+++ b/sd/source/ui/dlg/sdtreelb.cxx
@@ -26,6 +26,7 @@
 #include <sfx2/docfile.hxx>
 #include <svx/svdoole2.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/builderfactory.hxx>
 #include "cusshow.hxx"
 #include <sfx2/childwin.hxx>
 
@@ -97,7 +98,7 @@ SdPageObjsTLB::SdPageObjsTransferable::SdPageObjsTransferable(
 {
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSdPageObjsTLB(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SdPageObjsTLB)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/sd/source/ui/table/TableDesignPane.cxx b/sd/source/ui/table/TableDesignPane.cxx
index 54fa4f4..a4ecc26 100644
--- a/sd/source/ui/table/TableDesignPane.cxx
+++ b/sd/source/ui/table/TableDesignPane.cxx
@@ -30,6 +30,7 @@
 #include <vcl/bmpacc.hxx>
 #include <vcl/layout.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include <svl/style.hxx>
 #include <sfx2/bindings.hxx>
@@ -365,7 +366,7 @@ void TableValueSet::updateSettings()
     }
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeTableValueSet(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(TableValueSet)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/sfx2/source/appl/newhelp.cxx b/sfx2/source/appl/newhelp.cxx
index c892d43..7adaaf1 100644
--- a/sfx2/source/appl/newhelp.cxx
+++ b/sfx2/source/appl/newhelp.cxx
@@ -91,7 +91,7 @@
 #include <svtools/imagemgr.hxx>
 #include <svtools/miscopt.hxx>
 #include <svtools/imgdef.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/layout.hxx>
 #include <vcl/unohelp.hxx>
 #include <vcl/i18nhelp.hxx>
@@ -291,8 +291,7 @@ ContentListBox_Impl::ContentListBox_Impl(vcl::Window* pParent, WinBits nStyle)
     InitRoot();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeContentListBox(vcl::Window *pParent,
-    VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(ContentListBox)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
@@ -485,8 +484,7 @@ IndexBox_Impl::IndexBox_Impl(vcl::Window* pParent, WinBits nStyle)
     EnableUserDraw(true);
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeIndexBox(vcl::Window *pParent,
-    VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(IndexBox)
 {
     WinBits nWinBits = WB_CLIPCHILDREN|WB_LEFT|WB_VCENTER|WB_3DLOOK;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
@@ -873,9 +871,9 @@ void IndexTabPage_Impl::OpenKeyword()
 
 // class SearchBox_Impl --------------------------------------------------
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSearchBox(vcl::Window *pParent,
-    VclBuilder::stringmap &)
+VCL_BUILDER_DECL_FACTORY(SearchBox)
 {
+    (void)rMap;
     WinBits nWinBits = WB_CLIPCHILDREN|WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_SIMPLEMODE|WB_DROPDOWN;
     SearchBox_Impl* pComboBox = new SearchBox_Impl(pParent, nWinBits);
     pComboBox->EnableAutoSize(true);
@@ -906,8 +904,7 @@ void SearchBox_Impl::Select()
 
 // class SearchResultsBox_Impl -------------------------------------------
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSearchResultsBox(vcl::Window *pParent,
-    VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SearchResultsBox)
 {
     WinBits nWinBits = WB_CLIPCHILDREN|WB_LEFT|WB_VCENTER|WB_3DLOOK;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
@@ -1174,8 +1171,7 @@ BookmarksBox_Impl::BookmarksBox_Impl(vcl::Window* pParent, WinBits nStyle)
 {
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeBookmarksBox(vcl::Window *pParent,
-    VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(BookmarksBox)
 {
     WinBits nWinBits = WB_CLIPCHILDREN|WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_SIMPLEMODE;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/sfx2/source/control/recentdocsview.cxx b/sfx2/source/control/recentdocsview.cxx
index c3aabda..5437aff 100644
--- a/sfx2/source/control/recentdocsview.cxx
+++ b/sfx2/source/control/recentdocsview.cxx
@@ -24,7 +24,7 @@
 #include <sfx2/sfx.hrc>
 #include <sfx2/sfxresid.hxx>
 #include <unotools/historyoptions.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/pngread.hxx>
 #include <tools/urlobj.hxx>
 #include <com/sun/star/util/URLTransformer.hpp>
@@ -57,10 +57,7 @@ RecentDocsView::RecentDocsView( vcl::Window* pParent )
     setItemDimensions( mnItemMaxSize, mnItemMaxSize, mnTextHeight, mnItemPadding );
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeRecentDocsView(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new RecentDocsView(pParent);
-}
+VCL_BUILDER_FACTORY(RecentDocsView)
 
 bool RecentDocsView::typeMatchesExtension(ApplicationType type, const OUString &rExt)
 {
diff --git a/sfx2/source/control/templatedefaultview.cxx b/sfx2/source/control/templatedefaultview.cxx
index 3c42d29..61c3f2c 100644
--- a/sfx2/source/control/templatedefaultview.cxx
+++ b/sfx2/source/control/templatedefaultview.cxx
@@ -9,13 +9,10 @@
 
 #include <sfx2/templatedefaultview.hxx>
 #include <sfx2/thumbnailview.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <sfx2/app.hxx>
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeTemplateDefaultView(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new TemplateDefaultView(pParent);
-}
+VCL_BUILDER_FACTORY(TemplateDefaultView)
 
 TemplateDefaultView::TemplateDefaultView( Window* pParent)
     : TemplateLocalView(pParent)
diff --git a/sfx2/source/control/templatelocalview.cxx b/sfx2/source/control/templatelocalview.cxx
index c2e42d9..2dbbad5 100644
--- a/sfx2/source/control/templatelocalview.cxx
+++ b/sfx2/source/control/templatelocalview.cxx
@@ -16,7 +16,7 @@
 #include <svl/inettype.hxx>
 #include <tools/urlobj.hxx>
 #include <unotools/ucbstreamhelper.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/pngread.hxx>
 
 #include <com/sun/star/embed/ElementModes.hpp>
@@ -38,10 +38,7 @@ TemplateLocalView::TemplateLocalView ( vcl::Window* pParent)
 {
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeTemplateLocalView(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new TemplateLocalView(pParent);
-}
+VCL_BUILDER_FACTORY(TemplateLocalView)
 
 TemplateLocalView::~TemplateLocalView()
 {
diff --git a/sfx2/source/control/templateremoteview.cxx b/sfx2/source/control/templateremoteview.cxx
index f33407a..ffc0b7b 100644
--- a/sfx2/source/control/templateremoteview.cxx
+++ b/sfx2/source/control/templateremoteview.cxx
@@ -16,7 +16,7 @@
 #include <tools/urlobj.hxx>
 #include <ucbhelper/content.hxx>
 #include <ucbhelper/commandenvironment.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/task/InteractionHandler.hpp>
@@ -54,8 +54,9 @@ TemplateRemoteView::TemplateRemoteView (vcl::Window *pParent, WinBits nWinStyle,
     m_xCmdEnv = new ucbhelper::CommandEnvironment( xGlobalInteractionHandler, Reference< XProgressHandler >() );
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeTemplateRemoteView(vcl::Window *pParent, VclBuilder::stringmap &)
+VCL_BUILDER_DECL_FACTORY(TemplateRemoteView)
 {
+    (void)rMap;
     return new TemplateRemoteView(pParent, WB_VSCROLL, false);
 }
 
diff --git a/sfx2/source/control/templatesearchview.cxx b/sfx2/source/control/templatesearchview.cxx
index 7ba4e82..30cd035 100644
--- a/sfx2/source/control/templatesearchview.cxx
+++ b/sfx2/source/control/templatesearchview.cxx
@@ -10,17 +10,14 @@
 #include "templatesearchview.hxx"
 #include "templatesearchviewitem.hxx"
 
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 
 TemplateSearchView::TemplateSearchView (vcl::Window *pParent, WinBits nWinStyle)
     : ThumbnailView(pParent,nWinStyle)
 {
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeTemplateSearchView(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new TemplateSearchView(pParent);
-}
+VCL_BUILDER_FACTORY(TemplateSearchView)
 
 void TemplateSearchView::setOpenTemplateHdl(const Link<> &rLink)
 {
diff --git a/sfx2/source/dialog/dinfdlg.cxx b/sfx2/source/dialog/dinfdlg.cxx
index f6a2a05..daa9fab4 100644
--- a/sfx2/source/dialog/dinfdlg.cxx
+++ b/sfx2/source/dialog/dinfdlg.cxx
@@ -70,6 +70,7 @@
 #include "sfxlocal.hrc"
 #include <dialog.hrc>
 #include <vcl/help.hxx>
+#include <vcl/builderfactory.hxx>
 
 #include <algorithm>
 #include <boost/scoped_ptr.hpp>
@@ -2125,11 +2126,7 @@ void CustomPropertiesControl::Resize()
     }
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeCustomPropertiesControl(vcl::Window *pParent,
-    VclBuilder::stringmap &)
-{
-    return new CustomPropertiesControl(pParent);
-}
+VCL_BUILDER_FACTORY(CustomPropertiesControl)
 
 CustomPropertiesControl::~CustomPropertiesControl()
 {
diff --git a/sfx2/source/doc/new.cxx b/sfx2/source/doc/new.cxx
index 618602e..c9e8a2a 100644
--- a/sfx2/source/doc/new.cxx
+++ b/sfx2/source/doc/new.cxx
@@ -19,7 +19,7 @@
 
 #include <comphelper/string.hxx>
 #include <sfx2/new.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/layout.hxx>
 #include <vcl/msgbox.hxx>
 #include <vcl/idle.hxx>
@@ -116,8 +116,9 @@ void SfxPreviewWin_Impl::Paint( vcl::RenderContext& /*rRenderContext*/, const Re
     ImpPaint( rRect, xMetaFile.get(), this );
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSfxPreviewWin(vcl::Window *pParent, VclBuilder::stringmap &)
+VCL_BUILDER_DECL_FACTORY(SfxPreviewWin)
 {
+    (void)rMap;
     return new SfxPreviewWin_Impl(pParent, 0);
 }
 
diff --git a/sfx2/source/sidebar/SidebarToolBox.cxx b/sfx2/source/sidebar/SidebarToolBox.cxx
index a879299..bac4b85a 100644
--- a/sfx2/source/sidebar/SidebarToolBox.cxx
+++ b/sfx2/source/sidebar/SidebarToolBox.cxx
@@ -22,7 +22,7 @@
 #include <sfx2/sidebar/Theme.hxx>
 #include <sfx2/sidebar/Tools.hxx>
 
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/gradient.hxx>
 #include <toolkit/helper/vclunohelper.hxx>
 #include <svtools/miscopt.hxx>
@@ -50,10 +50,7 @@ SidebarToolBox::SidebarToolBox (vcl::Window* pParentWindow)
 #endif
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSidebarToolBox(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new SidebarToolBox(pParent);
-}
+VCL_BUILDER_FACTORY(SidebarToolBox)
 
 SidebarToolBox::~SidebarToolBox()
 {
diff --git a/starmath/source/dialog.cxx b/starmath/source/dialog.cxx
index d185333..24d2ee4 100644
--- a/starmath/source/dialog.cxx
+++ b/starmath/source/dialog.cxx
@@ -23,7 +23,7 @@
 #include <svl/intitem.hxx>
 #include <svl/stritem.hxx>
 #include <sfx2/app.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/layout.hxx>
 #include <vcl/msgbox.hxx>
 #include <svtools/ctrltool.hxx>
@@ -256,7 +256,7 @@ void SmShowFont::Paint(vcl::RenderContext& rRenderContext, const Rectangle& rRec
                    (GetOutputSize().Height() - TextSize.Height()) / 2), Text);
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSmShowFont(vcl::Window* pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SmShowFont)
 {
     WinBits nWinStyle = 0;
 
@@ -1311,10 +1311,7 @@ void SmShowSymbolSet::dispose()
     VclHBox::dispose();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSmShowSymbolSet(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new SmShowSymbolSet(pParent);
-}
+VCL_BUILDER_FACTORY(SmShowSymbolSet)
 
 void SmShowSymbolSetWindow::calccols()
 {
@@ -1400,7 +1397,7 @@ IMPL_LINK( SmShowSymbolSetWindow, ScrollHdl, ScrollBar*, /*pScrollBar*/)
     return 0;
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSmShowSymbol(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SmShowSymbol)
 {
     WinBits nWinStyle = 0;
 
@@ -1694,8 +1691,7 @@ const SmSym * SmSymbolDialog::GetSymbol() const
 }
 
 
-
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSmShowChar(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SmShowChar)
 {
     WinBits nWinStyle = 0;
 
diff --git a/starmath/source/utility.cxx b/starmath/source/utility.cxx
index 0e54d8e..00485da 100644
--- a/starmath/source/utility.cxx
+++ b/starmath/source/utility.cxx
@@ -19,6 +19,7 @@
 
 #include <sfx2/app.hxx>
 #include <vcl/virdev.hxx>
+#include <vcl/builderfactory.hxx>
 #include <tools/tenccvt.hxx>
 #include <osl/thread.h>
 
@@ -147,10 +148,7 @@ void SmFontPickList::WriteTo(SmFontDialog& rDialog) const
 
 /**************************************************************************/
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSmFontPickListBox(vcl::Window* pParent, VclBuilder::stringmap &)
-{
-    return new SmFontPickListBox(pParent, WB_DROPDOWN);
-}
+VCL_BUILDER_FACTORY_ARGS(SmFontPickListBox, WB_DROPDOWN)
 
 SmFontPickListBox::SmFontPickListBox (vcl::Window* pParent, WinBits nBits) :
     SmFontPickList(4),
diff --git a/svtools/source/contnr/DocumentInfoPreview.cxx b/svtools/source/contnr/DocumentInfoPreview.cxx
index 8efa8de..f94ee83 100644
--- a/svtools/source/contnr/DocumentInfoPreview.cxx
+++ b/svtools/source/contnr/DocumentInfoPreview.cxx
@@ -32,6 +32,7 @@
 #include <vcl/builder.hxx>
 #include <vcl/txtattr.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/builderfactory.hxx>
 #include <tools/datetime.hxx>
 #include <tools/urlobj.hxx>
 #include <unotools/pathoptions.hxx>
@@ -65,10 +66,7 @@ void ODocumentInfoPreview::dispose()
     Window::dispose();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeODocumentInfoPreview(vcl::Window *pParent, VclBuilder::stringmap&)
-{
-    return new ODocumentInfoPreview(pParent, WB_BORDER | WB_READONLY);
-}
+VCL_BUILDER_FACTORY_ARGS(ODocumentInfoPreview, WB_BORDER | WB_READONLY)
 
 void ODocumentInfoPreview::Resize() {
     m_pEditWin->SetPosSizePixel(Point(0, 0), GetOutputSize());
diff --git a/svtools/source/contnr/fileview.cxx b/svtools/source/contnr/fileview.cxx
index 0c13c54..60e5318 100644
--- a/svtools/source/contnr/fileview.cxx
+++ b/svtools/source/contnr/fileview.cxx
@@ -66,6 +66,7 @@
 #include <osl/conditn.hxx>
 #include <salhelper/timer.hxx>
 #include <vcl/svapp.hxx>
+#include <vcl/builderfactory.hxx>
 #include <unotools/ucbhelper.hxx>
 #include <unotools/intlwrapper.hxx>
 #include <unotools/syslocale.hxx>
@@ -1120,8 +1121,7 @@ void SvtFileView::dispose()
     Control::dispose();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvtFileView(vcl::Window *pParent,
-VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SvtFileView)
 {
     WinBits nBits = WB_CLIPCHILDREN|WB_LEFT|WB_VCENTER|WB_3DLOOK;
 
diff --git a/svtools/source/contnr/simptabl.cxx b/svtools/source/contnr/simptabl.cxx
index 6a42aa3..87d173f 100644
--- a/svtools/source/contnr/simptabl.cxx
+++ b/svtools/source/contnr/simptabl.cxx
@@ -21,7 +21,7 @@
 #include <svtools/simptabl.hxx>
 #include <svtools/svlbitm.hxx>
 #include <svtools/treelistentry.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/settings.hxx>
 
@@ -42,11 +42,8 @@ void SvSimpleTableContainer::dispose()
     Control::dispose();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvSimpleTableContainer(vcl::Window *pParent,
-    VclBuilder::stringmap &)
-{
-    return new SvSimpleTableContainer(pParent, WB_TABSTOP | WB_DIALOGCONTROL | WB_BORDER);
-}
+VCL_BUILDER_FACTORY_ARGS(SvSimpleTableContainer,
+                         WB_TABSTOP | WB_DIALOGCONTROL | WB_BORDER)
 
 void SvSimpleTableContainer::SetTable(SvSimpleTable* pTable)
 {
diff --git a/svtools/source/contnr/svtabbx.cxx b/svtools/source/contnr/svtabbx.cxx
index 931ca8a..0bcd09b 100644
--- a/svtools/source/contnr/svtabbx.cxx
+++ b/svtools/source/contnr/svtabbx.cxx
@@ -23,7 +23,7 @@
 #include <svtools/svlbitm.hxx>
 #include <svtools/svtools.hrc>
 #include <svtools/treelistentry.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <com/sun/star/accessibility/AccessibleStateType.hpp>
 #include <com/sun/star/accessibility/AccessibleEventId.hpp>
 #include "svtaccessiblefactory.hxx"
@@ -98,8 +98,7 @@ SvTabListBox::SvTabListBox( vcl::Window* pParent, WinBits nBits )
     SetHighlightRange();    // select full width
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvTabListBox(vcl::Window *pParent,
-    VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SvTabListBox)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/svtools/source/contnr/treelistbox.cxx b/svtools/source/contnr/treelistbox.cxx
index 9c2e992..097aded 100644
--- a/svtools/source/contnr/treelistbox.cxx
+++ b/svtools/source/contnr/treelistbox.cxx
@@ -28,7 +28,7 @@
 #include <vcl/svapp.hxx>
 #include <vcl/accel.hxx>
 #include <vcl/i18nhelp.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/settings.hxx>
 #include <sot/formats.hxx>
 #include <unotools/accessiblestatesethelper.hxx>
@@ -434,7 +434,7 @@ SvTreeListBox::SvTreeListBox(vcl::Window* pParent, const ResId& rResId) :
     SetSublistOpenWithLeftRight();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvTreeListBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SvTreeListBox)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/svtools/source/control/ctrlbox.cxx b/svtools/source/control/ctrlbox.cxx
index 8e397e4..2be6e63 100644
--- a/svtools/source/control/ctrlbox.cxx
+++ b/svtools/source/control/ctrlbox.cxx
@@ -21,7 +21,7 @@
 
 #include <i18nutil/unicode.hxx>
 #include <tools/stream.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/field.hxx>
 #include <vcl/helper.hxx>
@@ -104,7 +104,7 @@ ColorListBox::ColorListBox( vcl::Window* pParent, const ResId& rResId ) :
     SetEdgeBlending(true);
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeColorListBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(ColorListBox)
 {
     bool bDropdown = VclBuilder::extractDropdown(rMap);
     WinBits nWinBits = WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_TABSTOP;
@@ -736,7 +736,7 @@ LineListBox::LineListBox( vcl::Window* pParent, WinBits nWinStyle ) :
     ImplInit();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeLineListBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(LineListBox)
 {
     bool bDropdown = VclBuilder::extractDropdown(rMap);
     WinBits nWinBits = WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_TABSTOP;
@@ -939,7 +939,7 @@ FontNameBox::FontNameBox( vcl::Window* pParent, WinBits nWinStyle ) :
     InitFontMRUEntriesFile();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeFontNameBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(FontNameBox)
 {
     bool bDropdown = VclBuilder::extractDropdown(rMap);
     WinBits nWinBits = WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_TABSTOP;
@@ -1327,7 +1327,7 @@ Size FontStyleBox::GetOptimalSize() const
     return ComboBox::GetOptimalSize();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeFontStyleBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(FontStyleBox)
 {
     bool bDropdown = VclBuilder::extractDropdown(rMap);
     WinBits nWinBits = WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_TABSTOP;
@@ -1523,7 +1523,7 @@ FontSizeBox::FontSizeBox( vcl::Window* pParent, WinBits nWinSize ) :
     ImplInit();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeFontSizeBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(FontSizeBox)
 {
     bool bDropdown = VclBuilder::extractDropdown(rMap);
     WinBits nWinBits = WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_TABSTOP;
diff --git a/svtools/source/control/fmtfield.cxx b/svtools/source/control/fmtfield.cxx
index a620252..3ba6477 100644
--- a/svtools/source/control/fmtfield.cxx
+++ b/svtools/source/control/fmtfield.cxx
@@ -23,7 +23,7 @@
 #include <comphelper/string.hxx>
 #include <unotools/localedatawrapper.hxx>
 #include <vcl/svapp.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/settings.hxx>
 #include <svl/zformat.hxx>
 #include <svtools/fmtfield.hxx>
@@ -328,11 +328,7 @@ FormattedField::FormattedField(vcl::Window* pParent, WinBits nStyle, SvNumberFor
     }
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeFormattedField(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    WinBits nWinBits = WB_BORDER | WB_SPIN;
-    return new FormattedField(pParent, nWinBits);
-}
+VCL_BUILDER_FACTORY_ARGS(FormattedField, WB_BORDER | WB_SPIN)
 
 void FormattedField::SetText(const OUString& rStr)
 {
diff --git a/svtools/source/control/inettbc.cxx b/svtools/source/control/inettbc.cxx
index 38dd2ba..fe9a3ac 100644
--- a/svtools/source/control/inettbc.cxx
+++ b/svtools/source/control/inettbc.cxx
@@ -43,7 +43,7 @@
 #include <rtl/instance.hxx>
 #include <salhelper/thread.hxx>
 #include <osl/mutex.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/toolbox.hxx>
 #include <unotools/historyoptions.hxx>
@@ -863,8 +863,9 @@ SvtURLBox::SvtURLBox( vcl::Window* pParent, WinBits _nStyle, INetProtocol eSmart
     Init(bSetDefaultHelpID);
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvtURLBox(vcl::Window *pParent, VclBuilder::stringmap &)
+VCL_BUILDER_DECL_FACTORY(SvtURLBox)
 {
+    (void)rMap;
     WinBits nWinBits = WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_TABSTOP|
                        WB_DROPDOWN|WB_AUTOSIZE|WB_AUTOHSCROLL;
     SvtURLBox* pListBox = new SvtURLBox(pParent, nWinBits, INetProtocol::NotValid, false);
diff --git a/svtools/source/control/urlcontrol.cxx b/svtools/source/control/urlcontrol.cxx
index 8f74b9c..8a268d7 100644
--- a/svtools/source/control/urlcontrol.cxx
+++ b/svtools/source/control/urlcontrol.cxx
@@ -17,11 +17,10 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-
 #include <svl/filenotation.hxx>
 #include <svtools/urlcontrol.hxx>
 #include <vcl/layout.hxx>
-
+#include <vcl/builderfactory.hxx>
 
 namespace svt
 {
@@ -32,8 +31,9 @@ namespace svt
         DisableHistory();
     }
 
-    extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeOFileURLControl(vcl::Window *pParent, VclBuilder::stringmap &)
+    VCL_BUILDER_DECL_FACTORY(OFileURLControl)
     {
+        (void)rMap;
         WinBits nWinBits = WB_LEFT|WB_VCENTER|WB_3DLOOK|WB_TABSTOP|
                            WB_DROPDOWN|WB_AUTOSIZE|WB_AUTOHSCROLL;
         OFileURLControl* pListBox = new OFileURLControl(pParent, nWinBits);
diff --git a/svtools/source/control/valueset.cxx b/svtools/source/control/valueset.cxx
index 617fde9..8d36028 100644
--- a/svtools/source/control/valueset.cxx
+++ b/svtools/source/control/valueset.cxx
@@ -18,7 +18,7 @@
  */
 
 #include <tools/debug.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/decoview.hxx>
 #include <vcl/svapp.hxx>
 #include <vcl/scrbar.hxx>
@@ -103,7 +103,7 @@ ValueSet::ValueSet( vcl::Window* pParent, WinBits nWinStyle, bool bDisableTransi
     mbIsTransientChildrenDisabled = bDisableTransientChildren;
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeValueSet(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(ValueSet)
 {
     WinBits nWinBits = WB_TABSTOP;
 
diff --git a/svtools/source/edit/editsyntaxhighlighter.cxx b/svtools/source/edit/editsyntaxhighlighter.cxx
index 3d2c9770..6e69658 100644
--- a/svtools/source/edit/editsyntaxhighlighter.cxx
+++ b/svtools/source/edit/editsyntaxhighlighter.cxx
@@ -20,7 +20,7 @@
 
 #include <svtools/svmedit.hxx>
 #include <vcl/xtextedt.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <svtools/editsyntaxhighlighter.hxx>
 #include <vcl/txtattr.hxx>
 
@@ -31,10 +31,7 @@ MultiLineEditSyntaxHighlight::MultiLineEditSyntaxHighlight( vcl::Window* pParent
     EnableUpdateData(300);
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeMultiLineEditSyntaxHighlight(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new MultiLineEditSyntaxHighlight(pParent);
-}
+VCL_BUILDER_FACTORY(MultiLineEditSyntaxHighlight)
 
 void MultiLineEditSyntaxHighlight::SetText(const OUString& rNewText)
 {
diff --git a/svx/source/dialog/charmap.cxx b/svx/source/dialog/charmap.cxx
index 2eee3ec..ed5bcf9 100644
--- a/svx/source/dialog/charmap.cxx
+++ b/svx/source/dialog/charmap.cxx
@@ -21,6 +21,7 @@
 
 #include <vcl/svapp.hxx>
 #include <vcl/settings.hxx>
+#include <vcl/builderfactory.hxx>
 #include <svtools/colorcfg.hxx>
 
 #include <rtl/textenc.h>
@@ -82,12 +83,7 @@ void SvxShowCharSet::Resize()
     SetFont(GetFont()); //force recalculation of correct fontsize
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvxShowCharSet(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new SvxShowCharSet(pParent);
-}
-
-
+VCL_BUILDER_FACTORY(SvxShowCharSet)
 
 void SvxShowCharSet::GetFocus()
 {
diff --git a/svx/source/dialog/checklbx.cxx b/svx/source/dialog/checklbx.cxx
index d767d47..66527a7 100644
--- a/svx/source/dialog/checklbx.cxx
+++ b/svx/source/dialog/checklbx.cxx
@@ -18,13 +18,10 @@
  */
 
 #include <svtools/treelistentry.hxx>
-
 #include <svx/checklbx.hxx>
 #include <svx/dialmgr.hxx>
-
 #include <svx/dialogs.hrc>
-
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 
 SvxCheckListBox::SvxCheckListBox( vcl::Window* pParent, WinBits nWinStyle ) :
 
@@ -34,7 +31,7 @@ SvxCheckListBox::SvxCheckListBox( vcl::Window* pParent, WinBits nWinStyle ) :
     Init_Impl();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvxCheckListBox(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SvxCheckListBox)
 {
     WinBits nWinStyle = WB_TABSTOP;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/svx/source/dialog/connctrl.cxx b/svx/source/dialog/connctrl.cxx
index e7b8c41..a130f9f 100644
--- a/svx/source/dialog/connctrl.cxx
+++ b/svx/source/dialog/connctrl.cxx
@@ -32,7 +32,7 @@
 #include <svx/sxelditm.hxx>
 #include <sxmkitm.hxx>
 
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 #include <vcl/settings.hxx>
 #include <boost/scoped_ptr.hpp>
 
@@ -46,7 +46,7 @@ SvxXConnectionPreview::SvxXConnectionPreview( vcl::Window* pParent, WinBits nSty
     SetStyles();
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeSvxXConnectionPreview(vcl::Window *pParent, VclBuilder::stringmap &rMap)
+VCL_BUILDER_DECL_FACTORY(SvxXConnectionPreview)
 {
     WinBits nWinStyle = 0;
     OString sBorder = VclBuilder::extractCustomProperty(rMap);
diff --git a/svx/source/dialog/dialcontrol.cxx b/svx/source/dialog/dialcontrol.cxx
index d713e76..f07d9f1 100644
--- a/svx/source/dialog/dialcontrol.cxx
+++ b/svx/source/dialog/dialcontrol.cxx
@@ -28,7 +28,7 @@
 #include <vcl/field.hxx>
 #include <vcl/settings.hxx>
 #include <svtools/colorcfg.hxx>
-#include <vcl/builder.hxx>
+#include <vcl/builderfactory.hxx>
 
 namespace svx {
 
@@ -267,10 +267,7 @@ DialControl::DialControl( vcl::Window* pParent, WinBits nBits ) :
     Init( GetOutputSizePixel() );
 }
 
-extern "C" SAL_DLLPUBLIC_EXPORT vcl::Window* SAL_CALL makeDialControl(vcl::Window *pParent, VclBuilder::stringmap &)
-{
-    return new DialControl(pParent, WB_TABSTOP);
-}
+VCL_BUILDER_FACTORY_ARGS(DialControl, WB_TABSTOP)
 
 void DialControl::Resize()
 {


More information about the Libreoffice-commits mailing list