[Libreoffice-commits] core.git: 4 commits - cppuhelper/source sc/source sw/AllLangResTarget_sw.mk sw/inc sw/qa sw/source sw/uiconfig sw/UIConfig_swriter.mk

Hannah Lyhne hdlyhne1 at gmail.com
Thu Apr 3 11:01:22 PDT 2014


 cppuhelper/source/weak.cxx                |   31 -
 sc/source/ui/view/output2.cxx             |    5 
 sw/AllLangResTarget_sw.mk                 |    1 
 sw/UIConfig_swriter.mk                    |    1 
 sw/inc/dbui.hrc                           |    8 
 sw/inc/helpid.h                           |    1 
 sw/qa/extras/ww8import/data/bnc821208.doc |binary
 sw/qa/extras/ww8import/ww8import.cxx      |    3 
 sw/source/core/txtnode/thints.cxx         |    2 
 sw/source/ui/dbui/dbui.src                |   35 +
 sw/source/ui/dbui/mmoutputpage.cxx        |  380 +++++++---------
 sw/source/ui/dbui/mmoutputpage.hrc        |   83 ---
 sw/source/ui/dbui/mmoutputpage.hxx        |   72 +--
 sw/source/ui/dbui/mmoutputpage.src        |  307 -------------
 sw/uiconfig/swriter/ui/mmoutputpage.ui    |  674 ++++++++++++++++++++++++++++++
 15 files changed, 934 insertions(+), 669 deletions(-)

New commits:
commit 036b1fccbfb87a1aab36632843deb29e0a70630f
Author: Hannah Lyhne <hdlyhne1 at gmail.com>
Date:   Tue Apr 1 07:55:39 2014 -0400

    fdo#73588: fix default alignment in RTL mode.
    
    Change-Id: Icb932ee51dbf32d8baf4382aa00e89a680f5a41d

diff --git a/sc/source/ui/view/output2.cxx b/sc/source/ui/view/output2.cxx
index 5d1ae19..18e3e81 100644
--- a/sc/source/ui/view/output2.cxx
+++ b/sc/source/ui/view/output2.cxx
@@ -1434,7 +1434,10 @@ static SvxCellHorJustify getAlignmentFromContext( SvxCellHorJustify eInHorJust,
         else if (nDirection == FRMDIR_ENVIRONMENT)
         {
             SAL_WARN_IF( !pDoc, "sc.ui", "getAlignmentFromContext - pDoc==NULL");
-            eHorJustContext = (pDoc && pDoc->IsLayoutRTL(nTab)) ? SVX_HOR_JUSTIFY_RIGHT : SVX_HOR_JUSTIFY_LEFT;
+            // fdo#73588: The content of the cell must also
+            // begin with a RTL character to be right
+            // aligned; otherwise, it should be left aligned.
+            eHorJustContext = (pDoc && pDoc->IsLayoutRTL(nTab) && (beginsWithRTLCharacter( rText))) ? SVX_HOR_JUSTIFY_RIGHT : SVX_HOR_JUSTIFY_LEFT;
         }
         else
             eHorJustContext = SVX_HOR_JUSTIFY_RIGHT;
commit 364c989e2e4f1f1897408882b2887a2bfb09a306
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Thu Apr 3 16:46:20 2014 +0100

    convert mailmerge output page to .ui
    
    Change-Id: Icafdd4780eebd6356bf2070ff99dbba9d6956c16

diff --git a/sw/AllLangResTarget_sw.mk b/sw/AllLangResTarget_sw.mk
index 2842cf1..51114bd 100644
--- a/sw/AllLangResTarget_sw.mk
+++ b/sw/AllLangResTarget_sw.mk
@@ -95,7 +95,6 @@ $(eval $(call gb_SrsTarget_add_files,sw/res,\
     sw/source/ui/dbui/mailmergewizard.src \
     sw/source/ui/dbui/mmaddressblockpage.src \
     sw/source/ui/dbui/mmgreetingspage.src \
-    sw/source/ui/dbui/mmoutputpage.src \
     sw/source/ui/dbui/selectdbtabledialog.src \
     sw/source/ui/dialog/dialog.src \
     sw/source/ui/dochdl/dochdl.src \
diff --git a/sw/UIConfig_swriter.mk b/sw/UIConfig_swriter.mk
index 00bbcdb..e494bc3 100644
--- a/sw/UIConfig_swriter.mk
+++ b/sw/UIConfig_swriter.mk
@@ -167,6 +167,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/swriter,\
 	sw/uiconfig/swriter/ui/mmcreatingdialog \
 	sw/uiconfig/swriter/ui/mmlayoutpage \
 	sw/uiconfig/swriter/ui/mmmergepage \
+	sw/uiconfig/swriter/ui/mmoutputpage \
 	sw/uiconfig/swriter/ui/mmoutputtypepage \
 	sw/uiconfig/swriter/ui/mmpreparepage \
 	sw/uiconfig/swriter/ui/mmselectpage \
diff --git a/sw/inc/dbui.hrc b/sw/inc/dbui.hrc
index 5760a68..fbf51dd 100644
--- a/sw/inc/dbui.hrc
+++ b/sw/inc/dbui.hrc
@@ -27,7 +27,6 @@
 #define DLG_MAILMERGEWIZARD         (RC_DBUI_BEGIN + 3)
 #define DLG_MM_DOCSELECT_PAGE       (RC_DBUI_BEGIN + 4)
 #define DLG_MM_OUTPUTTYPE_PAGE      (RC_DBUI_BEGIN + 5)
-#define DLG_MM_OUTPUT_PAGE          (RC_DBUI_BEGIN + 10)
 #define DLG_MM_ADDRESSLISTDIALOG    (RC_DBUI_BEGIN + 11)
 #define DLG_MM_SELECTDBTABLEDDIALOG (RC_DBUI_BEGIN + 12)
 #define DLG_MM_DBTABLEPREVIEWDIALOG (RC_DBUI_BEGIN + 13)
@@ -66,6 +65,13 @@
 #define ST_REMOVESALUTATIONFIELD (RC_DBUI_BEGIN + 23)
 #define ST_DRAGSALUTATION       (RC_DBUI_BEGIN + 24)
 #define ST_TITLE_EDIT           (RC_DBUI_BEGIN + 25)
+#define ST_SAVESTART            (RC_DBUI_BEGIN + 26)
+#define ST_SAVEMERGED           (RC_DBUI_BEGIN + 27)
+#define ST_PRINT                (RC_DBUI_BEGIN + 28)
+#define ST_SENDMAIL             (RC_DBUI_BEGIN + 29)
+#define ST_DEFAULTATTACHMENT    (RC_DBUI_BEGIN + 30)
+#define ST_NOSUBJECT            (RC_DBUI_BEGIN + 31)
+#define ST_CONFIGUREMAIL        (RC_DBUI_BEGIN + 32)
 
 // Elements -----------------------------------------------------------------
 
diff --git a/sw/inc/helpid.h b/sw/inc/helpid.h
index 8ad928d..3aa3b22 100644
--- a/sw/inc/helpid.h
+++ b/sw/inc/helpid.h
@@ -364,7 +364,6 @@
 #define HID_PRINT_AS_MERGE                                      "SW_HID_PRINT_AS_MERGE"
 #define HID_MODULE_TOOLBOX                                      "SW_HID_MODULE_TOOLBOX"
 
-#define HID_MM_OUTPUTPAGE                                       "SW_HID_MM_OUTPUTPAGE"
 #define HID_MM_SELECTDBTABLEDDIALOG                             "SW_HID_MM_SELECTDBTABLEDDIALOG"
 #define HID_MM_SELECTDBTABLEDDIALOG_LISTBOX                     "SW_HID_MM_SELECTDBTABLEDDIALOG_LISTBOX"
 #define HID_MM_DBTABLEPREVIEWDIALOG                             "SW_HID_MM_DBTABLEPREVIEWDIALOG"
diff --git a/sw/source/ui/dbui/dbui.src b/sw/source/ui/dbui/dbui.src
index 5ff7097..d673c88 100644
--- a/sw/source/ui/dbui/dbui.src
+++ b/sw/source/ui/dbui/dbui.src
@@ -85,4 +85,39 @@ String STR_FILTER_ACCDB
     Text [ en-US ] = "Microsoft Access 2007 (*.accdb)" ;
 };
 
+String      ST_SAVESTART
+{
+    Text[ en-US ] = "Save ~starting document";
+};
+
+String      ST_SAVEMERGED
+{
+    Text[ en-US ] = "Save merged document";
+};
+
+String      ST_PRINT
+{
+    Text[ en-US ] = "Print settings";
+};
+
+String      ST_SENDMAIL
+{
+    Text[ en-US ] = "E-Mail settings";
+};
+
+String ST_DEFAULTATTACHMENT
+{
+    Text[ en-US ] = "Untitled";
+};
+
+String ST_NOSUBJECT
+{
+    Text[ en-US ] = "No subject";
+};
+
+String ST_CONFIGUREMAIL
+{
+    Text[ en-US ] = "In order to be able to send mail merge documents by e-mail, %PRODUCTNAME requires information about the e-mail account to be used.\n\nDo you want to enter e-mail account information now?";
+};
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/ui/dbui/mmoutputpage.cxx b/sw/source/ui/dbui/mmoutputpage.cxx
index 438df84..7568c2a 100644
--- a/sw/source/ui/dbui/mmoutputpage.cxx
+++ b/sw/source/ui/dbui/mmoutputpage.cxx
@@ -63,7 +63,6 @@
 #include <svtools/htmlcfg.hxx>
 #include <sfx2/event.hxx>
 #include <swevent.hxx>
-#include <mmoutputpage.hrc>
 #include <dbui.hxx>
 #include <dbui.hrc>
 #include <helpid.h>
@@ -76,6 +75,12 @@ using namespace svt;
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::uno;
 
+#define MM_DOCTYPE_OOO              1
+#define MM_DOCTYPE_PDF              2
+#define MM_DOCTYPE_WORD             3
+#define MM_DOCTYPE_HTML             4
+#define MM_DOCTYPE_TEXT             5
+
 static OUString lcl_GetExtensionForDocType(sal_uLong nDocType)
 {
     OUString sExtension;
@@ -205,105 +210,89 @@ public:
     void SetBCC(const OUString& rSet) {m_pBCCED->SetText(rSet);}
 };
 
-SwMailMergeOutputPage::SwMailMergeOutputPage( SwMailMergeWizard* _pParent) :
-    svt::OWizardPage( _pParent, SW_RES(DLG_MM_OUTPUT_PAGE)),
-    m_aHeaderFI(this,           SW_RES(  FI_HEADER           ) ),
-    m_aOptionsFI(this,          SW_RES(  FI_OPTIONS          ) ),
-    m_aSaveStartDocRB(this,     SW_RES(  RB_SAVESTARTDOC     ) ),
-    m_aSaveMergedDocRB(this,    SW_RES(  RB_SAVEMERGEDDOC    ) ),
-    m_aPrintRB(this,            SW_RES(  RB_PRINT            ) ),
-    m_aSendMailRB(this,         SW_RES(  RB_SENDMAIL         ) ),
-
-    m_aSeparatorFL(this,        SW_RES(  FL_SEPARATOR        ) ),
-
-    m_aSaveStartDocPB(this,     SW_RES(  PB_SAVESTARTDOC     ) ),
-
-    m_aSaveAsOneRB(this,        SW_RES(  RB_SAVEASONE        ) ),
-    m_aSaveIndividualRB(this,   SW_RES(  RB_SAVEINDIVIDUAL   ) ),
-    m_aPrintAllRB(this,         SW_RES(  RB_PRINTALL         ) ),
-    m_aSendAllRB( this, SW_RES(       RB_SENDALL             ) ),
-
-    m_aFromRB(this,             SW_RES(  RB_FROM             ) ),
-    m_aFromNF(this,             SW_RES(  NF_FROM             ) ),
-    m_aToFT(this,               SW_RES(  FT_TO               ) ),
-    m_aToNF(this,               SW_RES(  NF_TO               ) ),
-    m_aSaveNowPB(this,          SW_RES(  PB_SAVENOW          ) ),
-
-    m_aPrinterFT(this,          SW_RES(  FT_PRINT            ) ),
-    m_aPrinterLB(this,          SW_RES(  LB_PRINT            ) ),
-    m_aPrinterSettingsPB(this,  SW_RES(  PB_PRINTERSETTINGS  ) ),
-    m_aPrintNowPB(this,         SW_RES(  PB_PRINTNOW         ) ),
-
-    m_aMailToFT( this, SW_RES(        FT_MAILTO              ) ),
-    m_aMailToLB( this, SW_RES(        LB_MAILTO              ) ),
-    m_aCopyToPB( this, SW_RES(        PB_COPYTO              ) ),
-    m_aSubjectFT( this, SW_RES(       FT_SUBJECT             ) ),
-    m_aSubjectED( this, SW_RES(       ED_SUBJECT             ) ),
-    m_aSendAsFT( this, SW_RES(        FT_SENDAS              ) ),
-    m_aSendAsLB( this, SW_RES(        LB_SENDAS              ) ),
-    m_aAttachmentFT( this, SW_RES(    FT_ATTACHMENT              ) ),
-    m_aAttachmentED( this, SW_RES(    ED_ATTACHMENT              ) ),
-    m_aSendAsPB( this, SW_RES(        PB_SENDAS              ) ),
-    m_aSendDocumentsPB( this, SW_RES( PB_SENDDOCUMENTS       ) ),
-
-    m_sSaveStartST(SW_RES(           ST_SAVESTART  ) ),
-    m_sSaveMergedST(SW_RES(          ST_SAVEMERGED ) ),
-    m_sPrintST(SW_RES(               ST_PRINT      ) ),
-    m_sSendMailST(SW_RES(            ST_SENDMAIL   ) ),
-
-    m_sDefaultAttachmentST(SW_RES(   ST_DEFAULTATTACHMENT )),
-    m_sNoSubjectST(SW_RES(           ST_NOSUBJECT )),
-    m_sConfigureMail(SW_RES(         ST_CONFIGUREMAIL)),
-
-    m_bCancelSaving( false ),
-    m_pWizard(_pParent),
-    m_pTempPrinter( 0 )
+SwMailMergeOutputPage::SwMailMergeOutputPage(SwMailMergeWizard* _pParent)
+    : svt::OWizardPage(_pParent, "MMOutputPage",
+        "modules/swriter/ui/mmoutputpage.ui")
+    , m_sSaveStartST(SW_RES(ST_SAVESTART))
+    , m_sSaveMergedST(SW_RES(ST_SAVEMERGED))
+    , m_sPrintST(SW_RES(ST_PRINT))
+    , m_sSendMailST(SW_RES(ST_SENDMAIL))
+    , m_sDefaultAttachmentST(SW_RES(ST_DEFAULTATTACHMENT))
+    , m_sNoSubjectST(SW_RES(ST_NOSUBJECT))
+    , m_sConfigureMail(SW_RES(ST_CONFIGUREMAIL))
+    , m_bCancelSaving(false)
+    , m_pWizard(_pParent)
+    , m_pTempPrinter(0)
 {
-    FreeResource();
+    get(m_pSaveStartDocRB, "savestarting");
+    get(m_pSaveMergedDocRB, "savemerged");
+    get(m_pPrintRB, "printmerged");
+    get(m_pSendMailRB, "sendmerged");
+    get(m_pSeparator, "frame");
+    get(m_pSaveStartDocPB, "savestartingdoc");
+    get(m_pSaveAsOneRB, "singlerb");
+    get(m_pSaveIndividualRB, "individualrb");
+    get(m_pPrintAllRB, "printallrb");
+    get(m_pSendAllRB, "sendallrb");
+    get(m_pFromRB, "fromrb");
+    get(m_pFromNF, "from-nospin");
+    get(m_pToFT, "toft");
+    get(m_pToNF, "to-nospin");
+    get(m_pSaveNowPB, "savenow");
+    get(m_pPrinterFT, "printerft");
+    get(m_pPrinterLB, "printers");
+    m_pPrinterLB->SetStyle(m_pPrinterLB->GetStyle() | WB_SORT);
+    get(m_pPrinterSettingsPB, "printersettings");
+    get(m_pPrintNowPB, "printnow");
+    get(m_pMailToFT, "mailtoft");
+    get(m_pMailToLB, "mailto");
+    get(m_pCopyToPB, "copyto");
+    get(m_pSubjectFT, "subjectft");
+    get(m_pSubjectED, "subject");
+    get(m_pSendAsFT, "sendasft");
+    get(m_pSendAsLB, "sendas");
+    get(m_pAttachmentGroup, "attachgroup");
+    get(m_pAttachmentED, "attach");
+    get(m_pSendAsPB, "sendassettings");
+    get(m_pSendDocumentsPB, "sendnow");
 
     SwMailMergeConfigItem& rConfigItem = m_pWizard->GetConfigItem();
     // #i51949# hide e-Mail option if e-Mail is not supported
     if(!rConfigItem.IsMailAvailable())
-        m_aSendMailRB.Hide();
+        m_pSendMailRB->Hide();
 
     Link aLink = LINK(this, SwMailMergeOutputPage, OutputTypeHdl_Impl);
-    m_aSaveStartDocRB.SetClickHdl(aLink);
-    m_aSaveMergedDocRB.SetClickHdl(aLink);
-    m_aPrintRB.SetClickHdl(aLink);
-    m_aSendMailRB.SetClickHdl(aLink);
-    m_aSaveStartDocRB.Check();
-    m_aPrintAllRB.Check();
-    m_aSaveAsOneRB.Check();
-    m_aSendAllRB.Check();
-
-    m_aSaveStartDocPB.SetClickHdl(LINK(this, SwMailMergeOutputPage, SaveStartHdl_Impl));
-    m_aSaveNowPB.SetClickHdl(LINK(this, SwMailMergeOutputPage, SaveOutputHdl_Impl));
-    m_aPrinterLB.SetSelectHdl(LINK(this, SwMailMergeOutputPage, PrinterChangeHdl_Impl));
-    m_aPrintNowPB.SetClickHdl(LINK(this, SwMailMergeOutputPage, PrintHdl_Impl));
-    m_aPrinterSettingsPB.SetClickHdl(LINK(this, SwMailMergeOutputPage, PrinterSetupHdl_Impl));
-
-    m_aSendAsPB.SetClickHdl(LINK(this, SwMailMergeOutputPage, SendAsHdl_Impl)),
-    m_aSendDocumentsPB.SetClickHdl(LINK(this, SwMailMergeOutputPage, SendDocumentsHdl_Impl)),
-    m_aSendAsLB.SetSelectHdl(LINK(this, SwMailMergeOutputPage, SendTypeHdl_Impl));
-
-    m_nFromToRBPos = m_aFromRB.GetPosPixel().Y();
-    m_nFromToFTPos = m_aToFT.GetPosPixel().Y();
-    m_nFromToNFPos = m_aFromNF.GetPosPixel().Y();
-
-    m_nRBOffset = m_nFromToRBPos - m_aSaveIndividualRB.GetPosPixel().Y();
-
-    OutputTypeHdl_Impl(&m_aSaveStartDocRB);
-
-    m_aCopyToPB.SetClickHdl(LINK(this, SwMailMergeOutputPage, CopyToHdl_Impl));
-
-    m_aSaveAsOneRB.SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
-    m_aSaveIndividualRB.SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
-    m_aPrintAllRB.SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
-    m_aSendAllRB.SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
-
-    m_aFromRB.SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
+    m_pSaveStartDocRB->SetClickHdl(aLink);
+    m_pSaveMergedDocRB->SetClickHdl(aLink);
+    m_pPrintRB->SetClickHdl(aLink);
+    m_pSendMailRB->SetClickHdl(aLink);
+    m_pSaveStartDocRB->Check();
+    m_pPrintAllRB->Check();
+    m_pSaveAsOneRB->Check();
+    m_pSendAllRB->Check();
+
+    m_pSaveStartDocPB->SetClickHdl(LINK(this, SwMailMergeOutputPage, SaveStartHdl_Impl));
+    m_pSaveNowPB->SetClickHdl(LINK(this, SwMailMergeOutputPage, SaveOutputHdl_Impl));
+    m_pPrinterLB->SetSelectHdl(LINK(this, SwMailMergeOutputPage, PrinterChangeHdl_Impl));
+    m_pPrintNowPB->SetClickHdl(LINK(this, SwMailMergeOutputPage, PrintHdl_Impl));
+    m_pPrinterSettingsPB->SetClickHdl(LINK(this, SwMailMergeOutputPage, PrinterSetupHdl_Impl));
+
+    m_pSendAsPB->SetClickHdl(LINK(this, SwMailMergeOutputPage, SendAsHdl_Impl)),
+    m_pSendDocumentsPB->SetClickHdl(LINK(this, SwMailMergeOutputPage, SendDocumentsHdl_Impl)),
+    m_pSendAsLB->SetSelectHdl(LINK(this, SwMailMergeOutputPage, SendTypeHdl_Impl));
+
+    OutputTypeHdl_Impl(m_pSaveStartDocRB);
+
+    m_pCopyToPB->SetClickHdl(LINK(this, SwMailMergeOutputPage, CopyToHdl_Impl));
+
+    m_pSaveAsOneRB->SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
+    m_pSaveIndividualRB->SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
+    m_pPrintAllRB->SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
+    m_pSendAllRB->SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
+
+    m_pFromRB->SetClickHdl(LINK(this, SwMailMergeOutputPage, DocumentSelectionHdl_Impl));
     //#i63267# printing might be disabled
-    m_aPrintRB.Enable(!Application::GetSettings().GetMiscSettings().GetDisablePrinting());
+    m_pPrintRB->Enable(!Application::GetSettings().GetMiscSettings().GetDisablePrinting());
 }
 
 SwMailMergeOutputPage::~SwMailMergeOutputPage()
@@ -320,7 +309,7 @@ void SwMailMergeOutputPage::ActivatePage()
     {
         for( unsigned int i = 0; i < nCount; i++ )
         {
-            m_aPrinterLB.InsertEntry( rPrinters[i] );
+            m_pPrinterLB->InsertEntry( rPrinters[i] );
         }
 
     }
@@ -331,11 +320,11 @@ void SwMailMergeOutputPage::ActivatePage()
     if(pTargetView)
     {
         SfxPrinter* pPrinter = pTargetView->GetWrtShell().getIDocumentDeviceAccess()->getPrinter( true );
-        m_aPrinterLB.SelectEntry( pPrinter->GetName() );
-        m_aToNF.SetValue( rConfigItem.GetMergedDocumentCount() );
-        m_aToNF.SetMax( rConfigItem.GetMergedDocumentCount() );
+        m_pPrinterLB->SelectEntry( pPrinter->GetName() );
+        m_pToNF->SetValue( rConfigItem.GetMergedDocumentCount() );
+        m_pToNF->SetMax( rConfigItem.GetMergedDocumentCount() );
     }
-    m_aPrinterLB.SelectEntry( rConfigItem.GetSelectedPrinter() );
+    m_pPrinterLB->SelectEntry( rConfigItem.GetSelectedPrinter() );
 
     SwView* pSourceView = rConfigItem.GetSourceView();
     OSL_ENSURE(pSourceView, "no source view exists");
@@ -345,7 +334,7 @@ void SwMailMergeOutputPage::ActivatePage()
         if ( pDocShell->HasName() )
         {
             INetURLObject aTmp( pDocShell->GetMedium()->GetName() );
-            m_aAttachmentED.SetText(aTmp.getName(
+            m_pAttachmentED->SetText(aTmp.getName(
                     INetURLObject::LAST_SEGMENT, true, INetURLObject::DECODE_WITH_CHARSET ));
         }
     }
@@ -358,42 +347,42 @@ bool SwMailMergeOutputPage::canAdvance() const
 
 IMPL_LINK(SwMailMergeOutputPage, OutputTypeHdl_Impl, RadioButton*, pButton)
 {
-    Control* aControls[] =
+    Window* aControls[] =
     {
-        &m_aSaveStartDocPB,
-        &m_aSaveAsOneRB, &m_aSaveIndividualRB,
-        &m_aFromRB, &m_aFromNF, &m_aToFT, &m_aToNF,
-        &m_aSaveNowPB,
-        &m_aPrinterFT, &m_aPrinterLB, &m_aPrinterSettingsPB, &m_aPrintAllRB,
-        &m_aPrintNowPB,
-        &m_aMailToFT, &m_aMailToLB, &m_aCopyToPB,
-        &m_aSubjectFT, &m_aSubjectED,
-        &m_aSendAsFT, &m_aSendAsLB, &m_aSendAsPB,
-        &m_aAttachmentFT, &m_aAttachmentED,
-        &m_aSendAllRB, &m_aSendDocumentsPB,
+        m_pSaveStartDocPB,
+        m_pSaveAsOneRB, m_pSaveIndividualRB,
+        m_pFromRB, m_pFromNF, m_pToFT, m_pToNF,
+        m_pSaveNowPB,
+        m_pPrinterFT, m_pPrinterLB, m_pPrinterSettingsPB, m_pPrintAllRB,
+        m_pPrintNowPB,
+        m_pMailToFT, m_pMailToLB, m_pCopyToPB,
+        m_pSubjectFT, m_pSubjectED,
+        m_pSendAsFT, m_pSendAsLB, m_pSendAsPB,
+        m_pAttachmentGroup,
+        m_pSendAllRB, m_pSendDocumentsPB,
         0
     };
     SetUpdateMode(true);
-    Control** pControl = aControls;
+    Window** pControl = aControls;
     do
     {
         (*pControl)->Show(false);
 
     } while(*(++pControl));
 
-    if(&m_aSaveStartDocRB == pButton)
+    if (m_pSaveStartDocRB == pButton)
     {
-        m_aSaveStartDocPB.Show();
-        m_aSeparatorFL.SetText(m_sSaveStartST);
+        m_pSaveStartDocPB->Show();
+        m_pSeparator->set_label(m_sSaveStartST);
 
     }
-    else if(&m_aSaveMergedDocRB == pButton)
+    else if (m_pSaveMergedDocRB == pButton)
     {
         Control* aSaveMergedControls[] =
         {
-            &m_aSaveAsOneRB, &m_aSaveIndividualRB,
-            &m_aFromRB, &m_aFromNF, &m_aToFT, &m_aToNF,
-            &m_aSaveNowPB,
+            m_pSaveAsOneRB, m_pSaveIndividualRB,
+            m_pFromRB, m_pFromNF, m_pToFT, m_pToNF,
+            m_pSaveNowPB,
             0
         };
         Control** pSaveMergeControl = aSaveMergedControls;
@@ -402,27 +391,19 @@ IMPL_LINK(SwMailMergeOutputPage, OutputTypeHdl_Impl, RadioButton*, pButton)
             (*pSaveMergeControl)->Show(true);
 
         } while(*(++pSaveMergeControl));
-        if(!m_aFromRB.IsChecked() && !m_aSaveAsOneRB.IsChecked())
-        {
-            m_aSaveIndividualRB.Check();
-        }
-        m_aSeparatorFL.SetText(m_sSaveMergedST);
-        //reposition the from/to line
-        if(m_aFromRB.GetPosPixel().Y() != m_nFromToRBPos)
+        if(!m_pFromRB->IsChecked() && !m_pSaveAsOneRB->IsChecked())
         {
-            Point aPos(m_aFromRB.GetPosPixel()); aPos.Y() = m_nFromToRBPos; m_aFromRB.SetPosPixel(aPos);
-            aPos =   m_aToFT.GetPosPixel();      aPos.Y() = m_nFromToFTPos; m_aToFT.SetPosPixel(aPos);
-            aPos =   m_aFromNF.GetPosPixel();    aPos.Y() = m_nFromToNFPos; m_aFromNF.SetPosPixel(aPos);
-            aPos =   m_aToNF.GetPosPixel();      aPos.Y() = m_nFromToNFPos; m_aToNF.SetPosPixel(aPos);
+            m_pSaveIndividualRB->Check();
         }
+        m_pSeparator->set_label(m_sSaveMergedST);
     }
-    else if(&m_aPrintRB == pButton)
+    else if (m_pPrintRB == pButton)
     {
         Control* aPrintControls[] =
         {
-            &m_aFromRB, &m_aFromNF, &m_aToFT, &m_aToNF,
-            &m_aPrinterFT, &m_aPrinterLB, &m_aPrinterSettingsPB, &m_aPrintAllRB,
-            &m_aPrintNowPB,
+            m_pFromRB, m_pFromNF, m_pToFT, m_pToNF,
+            m_pPrinterFT, m_pPrinterLB, m_pPrinterSettingsPB, m_pPrintAllRB,
+            m_pPrintNowPB,
             0
         };
         Control** pPrinterControl = aPrintControls;
@@ -431,51 +412,43 @@ IMPL_LINK(SwMailMergeOutputPage, OutputTypeHdl_Impl, RadioButton*, pButton)
             (*pPrinterControl)->Show(true);
 
         } while(*(++pPrinterControl));
-        if(!m_aFromRB.IsChecked())
-            m_aPrintAllRB.Check();
-
-        m_aSeparatorFL.SetText(m_sPrintST);
-        //reposition the from/to line
-        long nRB_FT_Offset = m_nFromToRBPos - m_nFromToFTPos;
-        long nNewRBXPos = m_aPrintAllRB.GetPosPixel().Y() + m_nRBOffset;
-
-        Point aPos(m_aFromRB.GetPosPixel());aPos.Y() = nNewRBXPos;                 m_aFromRB.SetPosPixel(aPos);
-        aPos = m_aToFT.GetPosPixel();       aPos.Y() = nNewRBXPos + nRB_FT_Offset; m_aToFT.SetPosPixel(aPos);
-        aPos = m_aFromNF.GetPosPixel();     aPos.Y() = nNewRBXPos + nRB_FT_Offset; m_aFromNF.SetPosPixel(aPos);
-        aPos = m_aToNF.GetPosPixel();       aPos.Y() = nNewRBXPos + nRB_FT_Offset; m_aToNF.SetPosPixel(aPos);
+        if(!m_pFromRB->IsChecked())
+            m_pPrintAllRB->Check();
+
+        m_pSeparator->set_label(m_sPrintST);
     }
     else
     {
-        Control* aMailControls[] =
+        Window* aMailControls[] =
         {
-            &m_aFromRB, &m_aFromNF, &m_aToFT, &m_aToNF,
-            &m_aMailToFT, &m_aMailToLB, &m_aCopyToPB,
-            &m_aSubjectFT, &m_aSubjectED,
-            &m_aSendAsFT, &m_aSendAsLB, &m_aSendAsPB,
-            &m_aAttachmentFT, &m_aAttachmentED,
-            &m_aSendAllRB, &m_aSendDocumentsPB, 0
+            m_pFromRB, m_pFromNF, m_pToFT, m_pToNF,
+            m_pMailToFT, m_pMailToLB, m_pCopyToPB,
+            m_pSubjectFT, m_pSubjectED,
+            m_pSendAsFT, m_pSendAsLB, m_pSendAsPB,
+            m_pAttachmentGroup,
+            m_pSendAllRB, m_pSendDocumentsPB, 0
         };
-        Control** pMailControl = aMailControls;
+        Window** pMailControl = aMailControls;
         do
         {
             (*pMailControl)->Show(true);
 
         } while(*(++pMailControl));
 
-        if(!m_aFromRB.IsChecked())
-            m_aSendAllRB.Check();
-        if(m_aAttachmentED.GetText().isEmpty())
+        if(!m_pFromRB->IsChecked())
+            m_pSendAllRB->Check();
+        if(m_pAttachmentED->GetText().isEmpty())
         {
             OUString sAttach( m_sDefaultAttachmentST );
             sAttach += ".";
             sAttach += lcl_GetExtensionForDocType(
-                        (sal_uLong)m_aSendAsLB.GetEntryData(m_aSendAsLB.GetSelectEntryPos()));
-            m_aAttachmentED.SetText( sAttach );
+                        (sal_uLong)m_pSendAsLB->GetEntryData(m_pSendAsLB->GetSelectEntryPos()));
+            m_pAttachmentED->SetText( sAttach );
 
         }
-        m_aSeparatorFL.SetText(m_sSendMailST);
+        m_pSeparator->set_label(m_sSendMailST);
         //fill mail address ListBox
-        if(!m_aMailToLB.GetEntryCount())
+        if(!m_pMailToLB->GetEntryCount())
         {
             SwMailMergeConfigItem& rConfigItem = m_pWizard->GetConfigItem();
             //select first column
@@ -487,9 +460,9 @@ IMPL_LINK(SwMailMergeOutputPage, OutputTypeHdl_Impl, RadioButton*, pButton)
                 aFields = xColAccess->getElementNames();
             const OUString* pFields = aFields.getConstArray();
             for(sal_Int32 nField = 0; nField < aFields.getLength(); ++nField)
-                m_aMailToLB.InsertEntry(pFields[nField]);
+                m_pMailToLB->InsertEntry(pFields[nField]);
 
-            m_aMailToLB.SelectEntryPos(0);
+            m_pMailToLB->SelectEntryPos(0);
             // then select the right one - may not be available
             const ResStringArray& rHeaders = rConfigItem.GetDefaultAddressHeaders();
             OUString sEMailColumn = rHeaders.GetString( MM_PART_E_MAIL );
@@ -497,23 +470,13 @@ IMPL_LINK(SwMailMergeOutputPage, OutputTypeHdl_Impl, RadioButton*, pButton)
                             rConfigItem.GetColumnAssignment( rConfigItem.GetCurrentDBData() );
             if(aAssignment.getLength() > MM_PART_E_MAIL && !aAssignment[MM_PART_E_MAIL].isEmpty())
                 sEMailColumn = aAssignment[MM_PART_E_MAIL];
-            m_aMailToLB.SelectEntry(sEMailColumn);
+            m_pMailToLB->SelectEntry(sEMailColumn);
             // HTML format pre-selected
-            m_aSendAsLB.SelectEntryPos(3);
-            SendTypeHdl_Impl(&m_aSendAsLB);
-        }
-        if(m_aSendAllRB.GetPosPixel().Y() + m_nRBOffset != m_aFromRB.GetPosPixel().Y())
-        {
-            long nRB_FT_Offset = m_nFromToRBPos - m_nFromToFTPos;
-            long nNewRBXPos = m_aSendAllRB.GetPosPixel().Y() + m_nRBOffset;
-
-            Point aPos(m_aFromRB.GetPosPixel());aPos.Y() = nNewRBXPos;                 m_aFromRB.SetPosPixel(aPos);
-            aPos = m_aToFT.GetPosPixel();       aPos.Y() = nNewRBXPos + nRB_FT_Offset; m_aToFT.SetPosPixel(aPos);
-            aPos = m_aFromNF.GetPosPixel();     aPos.Y() = nNewRBXPos + nRB_FT_Offset; m_aFromNF.SetPosPixel(aPos);
-            aPos = m_aToNF.GetPosPixel();       aPos.Y() = nNewRBXPos + nRB_FT_Offset; m_aToNF.SetPosPixel(aPos);
+            m_pSendAsLB->SelectEntryPos(3);
+            SendTypeHdl_Impl(m_pSendAsLB);
         }
     }
-    m_aFromRB.GetClickHdl().Call(m_aFromRB.IsChecked() ? &m_aFromRB : 0);
+    m_pFromRB->GetClickHdl().Call(m_pFromRB->IsChecked() ? m_pFromRB : 0);
 
     SetUpdateMode(false);
     return 0;
@@ -521,10 +484,10 @@ IMPL_LINK(SwMailMergeOutputPage, OutputTypeHdl_Impl, RadioButton*, pButton)
 
 IMPL_LINK(SwMailMergeOutputPage, DocumentSelectionHdl_Impl, RadioButton*, pButton)
 {
-    sal_Bool bEnableFromTo = pButton == &m_aFromRB;
-    m_aFromNF.Enable(bEnableFromTo);
-    m_aToFT.Enable(bEnableFromTo);
-    m_aToNF.Enable(bEnableFromTo);
+    sal_Bool bEnableFromTo = pButton == m_pFromRB;
+    m_pFromNF->Enable(bEnableFromTo);
+    m_pToFT->Enable(bEnableFromTo);
+    m_pToNF->Enable(bEnableFromTo);
     return 0;
 }
 
@@ -562,11 +525,11 @@ IMPL_LINK(SwMailMergeOutputPage, SaveStartHdl_Impl, PushButton*, pButton)
         {
             INetURLObject aURL = pDocShell->GetMedium()->GetURLObject();
             //update the attachment name
-            if(m_aAttachmentED.GetText().isEmpty())
+            if(m_pAttachmentED->GetText().isEmpty())
             {
                 if ( pDocShell->HasName() )
                 {
-                    m_aAttachmentED.SetText(aURL.getName(
+                    m_pAttachmentED->SetText(aURL.getName(
                             INetURLObject::LAST_SEGMENT, true, INetURLObject::DECODE_WITH_CHARSET ));
                 }
             }
@@ -596,7 +559,7 @@ IMPL_LINK(SwMailMergeOutputPage, SaveOutputHdl_Impl, PushButton*, pButton)
     if(!pTargetView)
         return 0;
 
-    if(m_aSaveAsOneRB.IsChecked())
+    if(m_pSaveAsOneRB->IsChecked())
     {
         OUString sFilter;
         const OUString sPath = SwMailMergeHelper::CallSaveAsDialog(sFilter);
@@ -631,15 +594,15 @@ IMPL_LINK(SwMailMergeOutputPage, SaveOutputHdl_Impl, PushButton*, pButton)
     {
         sal_uInt32 nBegin = 0;
         sal_uInt32 nEnd = 0;
-        if(m_aSaveIndividualRB.IsChecked())
+        if(m_pSaveIndividualRB->IsChecked())
         {
             nBegin = 0;
             nEnd = rConfigItem.GetMergedDocumentCount();
         }
         else
         {
-            nBegin  = static_cast< sal_Int32 >(m_aFromNF.GetValue() - 1);
-            nEnd    = static_cast< sal_Int32 >(m_aToNF.GetValue());
+            nBegin  = static_cast< sal_Int32 >(m_pFromNF->GetValue() - 1);
+            nEnd    = static_cast< sal_Int32 >(m_pToNF->GetValue());
             if(nEnd > rConfigItem.GetMergedDocumentCount())
                 nEnd = rConfigItem.GetMergedDocumentCount();
         }
@@ -801,10 +764,10 @@ IMPL_LINK(SwMailMergeOutputPage, PrinterChangeHdl_Impl, ListBox*, pBox)
         else if( ! m_pTempPrinter )
             m_pTempPrinter = new Printer();
 
-        m_aPrinterSettingsPB.Enable( m_pTempPrinter->HasSupport( SUPPORT_SETUPDIALOG ) );
+        m_pPrinterSettingsPB->Enable( m_pTempPrinter->HasSupport( SUPPORT_SETUPDIALOG ) );
     }
     else
-        m_aPrinterSettingsPB.Disable();
+        m_pPrinterSettingsPB->Disable();
     m_pWizard->GetConfigItem().SetSelectedPrinter( pBox->GetSelectEntry() );
 
     return 0;
@@ -820,15 +783,15 @@ IMPL_LINK_NOARG(SwMailMergeOutputPage, PrintHdl_Impl)
     sal_uInt32 nBegin = 0;
     sal_uInt32 nEnd = 0;
     SwMailMergeConfigItem& rConfigItem = m_pWizard->GetConfigItem();
-    if(m_aPrintAllRB.IsChecked())
+    if(m_pPrintAllRB->IsChecked())
     {
         nBegin = 0;
         nEnd = rConfigItem.GetMergedDocumentCount();
     }
     else
     {
-        nBegin  = static_cast< sal_Int32 >(m_aFromNF.GetValue() - 1);
-        nEnd    = static_cast< sal_Int32 >(m_aToNF.GetValue());
+        nBegin  = static_cast< sal_Int32 >(m_pFromNF->GetValue() - 1);
+        nEnd    = static_cast< sal_Int32 >(m_pToNF->GetValue());
         if(nEnd > rConfigItem.GetMergedDocumentCount())
             nEnd = rConfigItem.GetMergedDocumentCount();
     }
@@ -873,7 +836,7 @@ IMPL_LINK_NOARG(SwMailMergeOutputPage, PrintHdl_Impl)
 IMPL_LINK(SwMailMergeOutputPage, PrinterSetupHdl_Impl, PushButton*, pButton)
 {
     if( !m_pTempPrinter )
-        PrinterChangeHdl_Impl(&m_aPrinterLB);
+        PrinterChangeHdl_Impl(m_pPrinterLB);
     if(m_pTempPrinter)
         m_pTempPrinter->Setup(pButton);
     return 0;
@@ -883,13 +846,12 @@ IMPL_LINK(SwMailMergeOutputPage, SendTypeHdl_Impl, ListBox*, pBox)
 {
     sal_uLong nDocType = (sal_uLong)pBox->GetEntryData(pBox->GetSelectEntryPos());
     sal_Bool bEnable = MM_DOCTYPE_HTML != nDocType && MM_DOCTYPE_TEXT != nDocType;
-    m_aSendAsPB.Enable( bEnable );
-    m_aAttachmentFT.Enable( bEnable );
-    m_aAttachmentED.Enable( bEnable );
+    m_pSendAsPB->Enable( bEnable );
+    m_pAttachmentGroup->Enable( bEnable );
     if(bEnable)
     {
         //add the correct extension
-        OUString sAttach(m_aAttachmentED.GetText());
+        OUString sAttach(m_pAttachmentED->GetText());
         //do nothing if the user has removed the name - the warning will come early enough
         if (!sAttach.isEmpty())
         {
@@ -900,7 +862,7 @@ IMPL_LINK(SwMailMergeOutputPage, SendTypeHdl_Impl, ListBox*, pBox)
                 ++nTokenCount;
             }
             sAttach = comphelper::string::setToken(sAttach, nTokenCount - 1, '.', lcl_GetExtensionForDocType( nDocType ));
-            m_aAttachmentED.SetText(sAttach);
+            m_pAttachmentED->SetText(sAttach);
         }
     }
     return 0;
@@ -949,15 +911,15 @@ IMPL_LINK(SwMailMergeOutputPage, SendDocumentsHdl_Impl, PushButton*, pButton)
     //add the documents
     sal_uInt32 nBegin = 0;
     sal_uInt32 nEnd = 0;
-    if(m_aSendAllRB.IsChecked())
+    if(m_pSendAllRB->IsChecked())
     {
         nBegin = 0;
         nEnd = rConfigItem.GetMergedDocumentCount();
     }
     else
     {
-        nBegin  = static_cast< sal_Int32 >(m_aFromNF.GetValue() - 1);
-        nEnd    = static_cast< sal_Int32 >(m_aToNF.GetValue());
+        nBegin  = static_cast< sal_Int32 >(m_pFromNF->GetValue() - 1);
+        nEnd    = static_cast< sal_Int32 >(m_pToNF->GetValue());
         if(nEnd > rConfigItem.GetMergedDocumentCount())
             nEnd = rConfigItem.GetMergedDocumentCount();
     }
@@ -965,7 +927,7 @@ IMPL_LINK(SwMailMergeOutputPage, SendDocumentsHdl_Impl, PushButton*, pButton)
     rtl_TextEncoding eEncoding = ::osl_getThreadTextEncoding();
     SfxFilterContainer* pFilterContainer = SwDocShell::Factory().GetFilterContainer();
     const SfxFilter *pSfxFlt = 0;
-    sal_uLong nDocType = (sal_uLong)m_aSendAsLB.GetEntryData(m_aSendAsLB.GetSelectEntryPos());
+    sal_uLong nDocType = (sal_uLong)m_pSendAsLB->GetEntryData(m_pSendAsLB->GetSelectEntryPos());
     OUString sExtension = lcl_GetExtensionForDocType(nDocType);
     switch( nDocType )
     {
@@ -1026,7 +988,7 @@ IMPL_LINK(SwMailMergeOutputPage, SendDocumentsHdl_Impl, PushButton*, pButton)
         return 0;
     OUString sMimeType = pSfxFlt->GetMimeType();
 
-    if(m_aSubjectED.GetText().isEmpty())
+    if(m_pSubjectED->GetText().isEmpty())
     {
         SwSendQueryBox_Impl aQuery(pButton, "SubjectDialog",
          "modules/swriter/ui/subjectdialog.ui");
@@ -1035,12 +997,12 @@ IMPL_LINK(SwMailMergeOutputPage, SendDocumentsHdl_Impl, PushButton*, pButton)
         if(RET_OK == aQuery.Execute())
         {
             if(aQuery.GetValue() != m_sNoSubjectST)
-                m_aSubjectED.SetText(aQuery.GetValue());
+                m_pSubjectED->SetText(aQuery.GetValue());
         }
         else
             return 0;
     }
-    if(!bAsBody && m_aAttachmentED.GetText().isEmpty())
+    if(!bAsBody && m_pAttachmentED->GetText().isEmpty())
     {
         SwSendQueryBox_Impl aQuery(pButton, "AttachNameDialog",
          "modules/swriter/ui/attachnamedialog.ui");
@@ -1055,14 +1017,14 @@ IMPL_LINK(SwMailMergeOutputPage, SendDocumentsHdl_Impl, PushButton*, pButton)
                 ++nTokenCount;
             }
             sAttach = comphelper::string::setToken(sAttach, nTokenCount - 1, '.', lcl_GetExtensionForDocType(
-                     (sal_uLong)m_aSendAsLB.GetEntryData(m_aSendAsLB.GetSelectEntryPos())));
-            m_aAttachmentED.SetText(sAttach);
+                     (sal_uLong)m_pSendAsLB->GetEntryData(m_pSendAsLB->GetSelectEntryPos())));
+            m_pAttachmentED->SetText(sAttach);
         }
         else
             return 0;
     }
     SfxStringItem aFilterName( SID_FILTER_NAME, pSfxFlt->GetFilterName() );
-    OUString sEMailColumn = m_aMailToLB.GetSelectEntry();
+    OUString sEMailColumn = m_pMailToLB->GetSelectEntry();
     OSL_ENSURE( !sEMailColumn.isEmpty(), "No email column selected");
     Reference< sdbcx::XColumnsSupplier > xColsSupp( rConfigItem.GetResultSet(), UNO_QUERY);
     Reference < container::XNameAccess> xColAccess = xColsSupp.is() ? xColsSupp->getColumns() : 0;
@@ -1187,7 +1149,7 @@ IMPL_LINK(SwMailMergeOutputPage, SendDocumentsHdl_Impl, PushButton*, pButton)
         {
             sBody = m_sBody;
             aDesc.sAttachmentURL = aName.GetValue();
-            OUString sAttachment(m_aAttachmentED.GetText());
+            OUString sAttachment(m_pAttachmentED->GetText());
             sal_Int32 nTokenCount = comphelper::string::getTokenCount(sAttachment, '.');
             if (2 > nTokenCount)
             {
@@ -1239,7 +1201,7 @@ IMPL_LINK(SwMailMergeOutputPage, SendDocumentsHdl_Impl, PushButton*, pButton)
             aDesc.sBodyMimeType =
                 OUString("text/plain; charset=UTF-8; format=flowed");
 
-        aDesc.sSubject = m_aSubjectED.GetText();
+        aDesc.sSubject = m_pSubjectED->GetText();
         aDesc.sCC = m_sCC;
         aDesc.sBCC = m_sBCC;
         pDlg->AddDocument( aDesc );
diff --git a/sw/source/ui/dbui/mmoutputpage.hrc b/sw/source/ui/dbui/mmoutputpage.hrc
deleted file mode 100644
index 694e694..0000000
--- a/sw/source/ui/dbui/mmoutputpage.hrc
+++ /dev/null
@@ -1,83 +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 _MAILMERGEOUTPUTTYPEPAGE_HRC
-#define _MAILMERGEOUTPUTTYPEPAGE_HRC
-
-#define FI_HEADER                1
-#define FI_OPTIONS               2
-#define RB_SAVESTARTDOC          3
-#define RB_SAVEMERGEDDOC         4
-#define RB_PRINT                 5
-#define RB_SENDMAIL              6
-#define FL_SEPARATOR             7
-#define PB_SAVESTARTDOC          8
-#define RB_SAVEASONE             12
-#define RB_SAVEINDIVIDUAL        13
-
-#define RB_FROM                  15
-#define NF_FROM                  16
-#define FT_TO                    17
-#define NF_TO                    18
-#define PB_SAVENOW               19
-
-#define FT_PRINT                 21
-#define LB_PRINT                 22
-#define PB_PRINTERSETTINGS       23
-#define RB_PRINTALL              24
-#define PB_PRINTNOW              26
-#define ST_SAVESTART             27
-#define ST_SAVEMERGED            28
-#define ST_PRINT                 29
-#define ST_SENDMAIL              30
-
-#define FT_MAILTO                   31
-#define LB_MAILTO                   32
-#define PB_COPYTO                   33
-#define FT_SUBJECT                  34
-#define ED_SUBJECT                  35
-#define FT_SENDAS                   36
-#define LB_SENDAS                   37
-#define PB_SENDAS                   38
-#define RB_SENDALL                  39
-#define PB_SENDDOCUMENTS            40
-
-#define FI_DESCRIPTION              41
-#define PB_OK                       47
-#define PB_CANCEL                   48
-#define PB_HELP                     49
-#define FI_NOTE                     50
-#define FT_ATTACHMENT               51
-#define ED_ATTACHMENT               52
-#define ST_DEFAULTATTACHMENT        53
-#define ST_NOSUBJECT                55
-#define ST_CONFIGUREMAIL            57
-
-#define IM_QUERY                    58
-#define FI_QUERY                    59
-#define ED_TEXT                     60
-
-#define MM_DOCTYPE_OOO              1
-#define MM_DOCTYPE_PDF              2
-#define MM_DOCTYPE_WORD             3
-#define MM_DOCTYPE_HTML             4
-#define MM_DOCTYPE_TEXT             5
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/ui/dbui/mmoutputpage.hxx b/sw/source/ui/dbui/mmoutputpage.hxx
index 185ede7..838e5f0 100644
--- a/sw/source/ui/dbui/mmoutputpage.hxx
+++ b/sw/source/ui/dbui/mmoutputpage.hxx
@@ -20,6 +20,7 @@
 #define INCLUDED_SW_SOURCE_UI_DBUI_MMOUTPUTPAGE_HXX
 #include <svtools/wizardmachine.hxx>
 #include <vcl/button.hxx>
+#include <vcl/layout.hxx>
 #include <svtools/stdctrl.hxx>
 #include <vcl/combobox.hxx>
 #include <vcl/field.hxx>
@@ -44,44 +45,42 @@ namespace com{ namespace sun{ namespace star{
 
 class SwMailMergeOutputPage : public svt::OWizardPage
 {
-    SwBoldFixedInfo m_aHeaderFI;
-    FixedInfo       m_aOptionsFI;
-    RadioButton     m_aSaveStartDocRB;
-    RadioButton     m_aSaveMergedDocRB;
-    RadioButton     m_aPrintRB;
-    RadioButton     m_aSendMailRB;
+    RadioButton*    m_pSaveStartDocRB;
+    RadioButton*    m_pSaveMergedDocRB;
+    RadioButton*    m_pPrintRB;
+    RadioButton*    m_pSendMailRB;
 
-    FixedLine       m_aSeparatorFL;
+    VclFrame*       m_pSeparator;
 
-    PushButton      m_aSaveStartDocPB;
+    PushButton*     m_pSaveStartDocPB;
 
-    RadioButton     m_aSaveAsOneRB;
-    RadioButton     m_aSaveIndividualRB;
-    RadioButton     m_aPrintAllRB; //has to be here for tab control reasons
-    RadioButton     m_aSendAllRB;  //has to be here for tab control reasons
+    RadioButton*    m_pSaveAsOneRB;
+    RadioButton*    m_pSaveIndividualRB;
+    RadioButton*    m_pPrintAllRB; //has to be here for tab control reasons
+    RadioButton*    m_pSendAllRB;  //has to be here for tab control reasons
     //this group is used in save and print
-    RadioButton     m_aFromRB;
-    NumericField    m_aFromNF;
-    FixedText       m_aToFT;
-    NumericField    m_aToNF;
-    PushButton      m_aSaveNowPB;
-
-    FixedText       m_aPrinterFT;
-    ListBox         m_aPrinterLB;
-    PushButton      m_aPrinterSettingsPB;
-    PushButton      m_aPrintNowPB;
-
-    FixedText       m_aMailToFT;
-    ListBox         m_aMailToLB;
-    PushButton      m_aCopyToPB;
-    FixedText       m_aSubjectFT;
-    Edit            m_aSubjectED;
-    FixedText       m_aSendAsFT;
-    ListBox         m_aSendAsLB;
-    FixedText       m_aAttachmentFT;
-    Edit            m_aAttachmentED;
-    PushButton      m_aSendAsPB;
-    PushButton      m_aSendDocumentsPB;
+    RadioButton*    m_pFromRB;
+    NumericField*   m_pFromNF;
+    FixedText*      m_pToFT;
+    NumericField*   m_pToNF;
+    PushButton*     m_pSaveNowPB;
+
+    FixedText*      m_pPrinterFT;
+    ListBox*        m_pPrinterLB;
+    PushButton*     m_pPrinterSettingsPB;
+    PushButton*     m_pPrintNowPB;
+
+    FixedText*      m_pMailToFT;
+    ListBox*        m_pMailToLB;
+    PushButton*     m_pCopyToPB;
+    FixedText*      m_pSubjectFT;
+    Edit*           m_pSubjectED;
+    FixedText*      m_pSendAsFT;
+    ListBox*        m_pSendAsLB;
+    VclContainer*   m_pAttachmentGroup;
+    Edit*           m_pAttachmentED;
+    PushButton*     m_pSendAsPB;
+    PushButton*     m_pSendDocumentsPB;
 
     //some FixedLine labels
     OUString        m_sSaveStartST;
@@ -96,11 +95,6 @@ class SwMailMergeOutputPage : public svt::OWizardPage
 
     OUString        m_sBody;
 
-    long            m_nFromToRBPos;
-    long            m_nFromToFTPos;
-    long            m_nFromToNFPos;
-    long            m_nRBOffset;
-
     bool            m_bCancelSaving;
 
     SwMailMergeWizard*  m_pWizard;
diff --git a/sw/source/ui/dbui/mmoutputpage.src b/sw/source/ui/dbui/mmoutputpage.src
deleted file mode 100644
index 4409b43..0000000
--- a/sw/source/ui/dbui/mmoutputpage.src
+++ /dev/null
@@ -1,307 +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 <mmoutputpage.hrc>
-#include <dbui.hrc>
-#include <helpid.h>
-
-TabPage DLG_MM_OUTPUT_PAGE
-{
-    HelpID = HID_MM_OUTPUTPAGE ;
-    Size = MAP_APPFONT ( 260 , 250 ) ;
-    Hide = TRUE ;
-
-    FixedText FI_HEADER
-    {
-        Pos = MAP_APPFONT ( 6 , 8 ) ;
-        Size = MAP_APPFONT ( 248 , 8 ) ;
-        Text[ en-US ] = "Save, print or send the document";
-    };
-    FixedText FI_OPTIONS
-    {
-        Pos = MAP_APPFONT ( 6 , 27 ) ;
-        Size = MAP_APPFONT ( 248 , 8 ) ;
-        Text[ en-US ] = "Select one of the options below:";
-    };
-    RadioButton RB_SAVESTARTDOC
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_SAVESTARTDOC";
-        Pos = MAP_APPFONT ( 45 , 40 ) ;
-        Size = MAP_APPFONT ( 209 , 10 ) ;
-        Text[ en-US ] = "~Save starting document";
-    };
-    RadioButton RB_SAVEMERGEDDOC
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_SAVEMERGEDDOC";
-        Pos = MAP_APPFONT ( 45 , 53 ) ;
-        Size = MAP_APPFONT ( 209 , 10 ) ;
-        Text[ en-US ] = "Save ~merged document" ;
-    };
-    RadioButton RB_PRINT
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_PRINT";
-        Pos = MAP_APPFONT ( 45 , 66 ) ;
-        Size = MAP_APPFONT ( 209 , 10 ) ;
-        Text[ en-US ] = "~Print merged document";
-    };
-    RadioButton RB_SENDMAIL
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_SENDMAIL";
-        Pos = MAP_APPFONT ( 45 , 79 ) ;
-        Size = MAP_APPFONT ( 209 , 10 ) ;
-        Text[ en-US ] = "Send merged document as ~E-Mail";
-    };
-    FixedLine   FL_SEPARATOR
-    {
-        Pos = MAP_APPFONT ( 6 , 95 ) ;
-        Size = MAP_APPFONT ( 248 , 8 ) ;
-    };
-    PushButton  PB_SAVESTARTDOC
-    {
-        HelpID = "sw:PushButton:DLG_MM_OUTPUT_PAGE:PB_SAVESTARTDOC";
-        Pos = MAP_APPFONT ( 55 , 108 ) ;
-        Size = MAP_APPFONT ( 100 , 14 ) ;
-        Text[ en-US ] = "Save starting ~document";
-    };
-    RadioButton RB_SAVEASONE
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_SAVEASONE";
-        Pos = MAP_APPFONT ( 45 , 109 ) ;
-        Size = MAP_APPFONT ( 150 , 10 ) ;
-        Text[ en-US ] = "S~ave as single document";
-    };
-    RadioButton RB_SAVEINDIVIDUAL
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_SAVEINDIVIDUAL";
-        Pos = MAP_APPFONT (  45, 123 ) ;
-        Size = MAP_APPFONT ( 150 , 10 ) ;
-        Text[ en-US ] = "Sa~ve as individual documents";
-    };
-    RadioButton RB_FROM
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_FROM";
-        Pos = MAP_APPFONT ( 45 , 137 ) ;
-        Size = MAP_APPFONT ( 30 , 10 ) ;
-        Text[ en-US ] = "~From";
-    };
-    NumericField NF_FROM
-    {
-        HelpID = "sw:NumericField:DLG_MM_OUTPUT_PAGE:NF_FROM";
-        Pos = MAP_APPFONT ( 78 , 136 ) ;
-        Size = MAP_APPFONT ( 20 , 10 ) ;
-        Border = TRUE;
-        Left = TRUE ;
-        First = 1 ;
-        Minimum = 1 ;
-        Repeat = TRUE ;
-        Spin = FALSE ;
-        TabStop = TRUE ;
-    };
-    FixedText   FT_TO
-    {
-        Pos = MAP_APPFONT ( 101 , 138 ) ;
-        Size = MAP_APPFONT ( 20 , 8 ) ;
-        Right = TRUE;
-        Text[ en-US ] = "~To";
-    };
-    NumericField NF_TO
-    {
-        HelpID = "sw:NumericField:DLG_MM_OUTPUT_PAGE:NF_TO";
-        Pos = MAP_APPFONT ( 124 , 136 ) ;
-        Size = MAP_APPFONT ( 20 , 10 ) ;
-        Border = TRUE;
-        Left = TRUE ;
-        First = 1 ;
-        Minimum = 1 ;
-        Repeat = TRUE ;
-        Spin = FALSE ;
-        TabStop = TRUE ;
-    };
-    PushButton  PB_SAVENOW
-    {
-        HelpID = "sw:PushButton:DLG_MM_OUTPUT_PAGE:PB_SAVENOW";
-        Pos = MAP_APPFONT ( 45 , 150 ) ;
-        Size = MAP_APPFONT ( 80 , 14 ) ;
-        Text[ en-US ] = "Save Do~cuments";
-    };
-    FixedText   FT_PRINT
-    {
-        Pos = MAP_APPFONT ( 12 , 111 ) ;
-        Size = MAP_APPFONT ( 30 , 8 ) ;
-        Text[ en-US ] = "~Printer";
-    };
-    ListBox     LB_PRINT
-    {
-        HelpID = "sw:ListBox:DLG_MM_OUTPUT_PAGE:LB_PRINT";
-        Pos = MAP_APPFONT ( 45 , 109 ) ;
-        Size = MAP_APPFONT ( 147 , 50 ) ;
-        Border = TRUE;
-        DropDown = TRUE;
-        Sort = TRUE;
-    };
-    PushButton  PB_PRINTERSETTINGS
-    {
-        HelpID = "sw:PushButton:DLG_MM_OUTPUT_PAGE:PB_PRINTERSETTINGS";
-        Pos = MAP_APPFONT ( 198 , 108 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        Text[ en-US ] = "P~roperties...";
-    };
-    RadioButton RB_PRINTALL
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_PRINTALL";
-        Pos = MAP_APPFONT ( 45 , 126 ) ;
-        Size = MAP_APPFONT ( 150 , 10 ) ;
-        Text[ en-US ] = "Print ~all documents";
-    };
-    PushButton  PB_PRINTNOW
-    {
-        HelpID = "sw:PushButton:DLG_MM_OUTPUT_PAGE:PB_PRINTNOW";
-        Pos = MAP_APPFONT ( 45 , 155 ) ;
-        Size = MAP_APPFONT ( 80 , 14 ) ;
-        Text[ en-US ] = "Prin~t Documents";
-    };
-
-    FixedText        FT_MAILTO
-    {
-        Pos = MAP_APPFONT ( 12 , 111 ) ;
-        Size = MAP_APPFONT ( 30 , 8 ) ;
-        Text[ en-US ] = "T~o";
-    };
-    ListBox          LB_MAILTO
-    {
-        HelpID = "sw:ListBox:DLG_MM_OUTPUT_PAGE:LB_MAILTO";
-        Pos = MAP_APPFONT ( 45 , 109 ) ;
-        Size = MAP_APPFONT ( 147 , 50 ) ;
-        DropDown = TRUE;
-        Border = TRUE;
-    };
-    PushButton       PB_COPYTO
-    {
-        HelpID = "sw:PushButton:DLG_MM_OUTPUT_PAGE:PB_COPYTO";
-        Pos = MAP_APPFONT ( 198 , 108 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        Text[ en-US ] = "~Copy to...";
-    };
-    FixedText        FT_SUBJECT
-    {
-        Pos = MAP_APPFONT ( 12 , 127 ) ;
-        Size = MAP_APPFONT ( 30 , 8 ) ;
-        Text[ en-US ] = "S~ubject";
-    };
-    Edit             ED_SUBJECT
-    {
-        HelpID = "sw:Edit:DLG_MM_OUTPUT_PAGE:ED_SUBJECT";
-        Pos = MAP_APPFONT ( 45 , 125 ) ;
-        Size = MAP_APPFONT ( 147 , 12 ) ;
-        Border = TRUE;
-    };
-    FixedText        FT_SENDAS
-    {
-        Pos = MAP_APPFONT ( 12 , 143 ) ;
-        Size = MAP_APPFONT ( 30 , 8 ) ;
-        Text[ en-US ] = "Sen~d as";
-    };
-    ListBox          LB_SENDAS
-    {
-        HelpID = "sw:ListBox:DLG_MM_OUTPUT_PAGE:LB_SENDAS";
-        Pos = MAP_APPFONT ( 45 , 141 ) ;
-        Size = MAP_APPFONT (147  , 70 ) ;
-        DropDown = TRUE;
-        Border = TRUE;
-        StringList =
-        {
-            < "OpenDocument Text" ;                 MM_DOCTYPE_OOO ;> ;
-            < "Adobe PDF-Dokument" ;                MM_DOCTYPE_PDF ;> ;
-            < "Microsoft Word Dokument" ;           MM_DOCTYPE_WORD;> ;
-            < "HTML-Nachricht" ;                    MM_DOCTYPE_HTML;> ;
-            < "Nur Text" ;                          MM_DOCTYPE_TEXT;> ;
-        };
-        StringList [en-US]=
-        {
-            < "OpenDocument Text" ;                 MM_DOCTYPE_OOO ;> ;
-            < "Adobe PDF-Document" ;                MM_DOCTYPE_PDF ;> ;
-            < "Microsoft Word Document" ;           MM_DOCTYPE_WORD;> ;
-            < "HTML Message" ;                      MM_DOCTYPE_HTML;> ;
-            < "Plain Text" ;                        MM_DOCTYPE_TEXT;> ;
-        };
-    };
-    PushButton       PB_SENDAS
-    {
-        HelpID = "sw:PushButton:DLG_MM_OUTPUT_PAGE:PB_SENDAS";
-        Pos = MAP_APPFONT ( 198 , 140 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-        Text[ en-US ] = "Pr~operties...";
-    };
-    FixedText        FT_ATTACHMENT
-    {
-        Pos = MAP_APPFONT ( 45 , 157 ) ;
-        Size = MAP_APPFONT ( 147 , 8 ) ;
-        Text[ en-US ] = "Name of the a~ttachment";
-    };
-    Edit ED_ATTACHMENT
-    {
-        HelpID = "sw:Edit:DLG_MM_OUTPUT_PAGE:ED_ATTACHMENT";
-        Pos = MAP_APPFONT ( 45 , 168 ) ;
-        Size = MAP_APPFONT ( 147 , 12 ) ;
-        Border = TRUE;
-    };
-    RadioButton      RB_SENDALL
-    {
-        HelpID = "sw:RadioButton:DLG_MM_OUTPUT_PAGE:RB_SENDALL";
-        Pos = MAP_APPFONT ( 45 , 184 ) ;
-        Size = MAP_APPFONT ( 153 , 10 ) ;
-        Text[ en-US ] = "S~end all documents";
-    };
-    PushButton       PB_SENDDOCUMENTS
-    {
-        HelpID = "sw:PushButton:DLG_MM_OUTPUT_PAGE:PB_SENDDOCUMENTS";
-        Pos = MAP_APPFONT ( 45 , 212 ) ;
-        Size = MAP_APPFONT ( 80 , 14 ) ;
-        Text[ en-US ] = "Se~nd documents";
-    };
-    String      ST_SAVESTART
-    {
-        Text[ en-US ] = "Save ~starting document";
-    };
-    String      ST_SAVEMERGED
-    {
-        Text[ en-US ] = "Save merged document";
-    };
-    String      ST_PRINT
-    {
-        Text[ en-US ] = "Print settings";
-    };
-    String      ST_SENDMAIL
-    {
-        Text[ en-US ] = "E-Mail settings";
-    };
-    String ST_DEFAULTATTACHMENT
-    {
-        Text[ en-US ] = "Untitled";
-    };
-    String ST_NOSUBJECT
-    {
-        Text[ en-US ] = "No subject";
-    };
-    String ST_CONFIGUREMAIL
-    {
-        Text[ en-US ] = "In order to be able to send mail merge documents by e-mail, %PRODUCTNAME requires information about the e-mail account to be used.\n\nDo you want to enter e-mail account information now?";
-    };
-};
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/uiconfig/swriter/ui/mmoutputpage.ui b/sw/uiconfig/swriter/ui/mmoutputpage.ui
new file mode 100644
index 0000000..cbd7d1d
--- /dev/null
+++ b/sw/uiconfig/swriter/ui/mmoutputpage.ui
@@ -0,0 +1,674 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.16.1 -->
+<interface>
+  <requires lib="gtk+" version="3.0"/>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="lower">1</property>
+    <property name="value">1</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkListStore" id="liststore1">
+    <columns>
+      <!-- column-name gchararray1 -->
+      <column type="gchararray"/>
+      <!-- column-name gint1 -->
+      <column type="gint"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">OpenDocument Text</col>
+        <col id="1">1</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Adobe PDF-Document</col>
+        <col id="1">2</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Microsoft Word Document</col>
+        <col id="1">3</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">HTML Message</col>
+        <col id="1">4</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">Plain Text</col>
+        <col id="1">5</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkBox" id="MMOutputPage">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="hexpand">True</property>
+    <property name="vexpand">True</property>
+    <property name="border_width">6</property>
+    <property name="orientation">vertical</property>
+    <property name="spacing">12</property>
+    <child>
+      <object class="GtkFrame" id="frame1">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="hexpand">True</property>
+        <property name="label_xalign">0</property>
+        <property name="shadow_type">none</property>
+        <child>
+          <object class="GtkAlignment" id="alignment1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="top_padding">6</property>
+            <property name="left_padding">12</property>
+            <child>
+              <object class="GtkFrame" id="frame3">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment3">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="top_padding">6</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkGrid" id="grid1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="row_spacing">6</property>
+                        <child>
+                          <object class="GtkRadioButton" id="savestarting">
+                            <property name="label" translatable="yes">_Save starting document</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">savemerged</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">0</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkRadioButton" id="savemerged">
+                            <property name="label" translatable="yes">Save _merged document</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">printmerged</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">1</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkRadioButton" id="printmerged">
+                            <property name="label" translatable="yes">_Print merged document</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">sendmerged</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">2</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkRadioButton" id="sendmerged">
+                            <property name="label" translatable="yes">Send merged document as _E-Mail</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="xalign">0</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">savestarting</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">3</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label3">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="label" translatable="yes">Select one of the options below:</property>
+                  </object>
+                </child>
+              </object>
+            </child>
+          </object>
+        </child>
+        <child type="label">
+          <object class="GtkLabel" id="label1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="label" translatable="yes">Save, print or send the document</property>
+            <attributes>
+              <attribute name="weight" value="bold"/>
+            </attributes>
+          </object>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">0</property>
+      </packing>
+    </child>
+    <child>
+      <object class="GtkFrame" id="frame">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="hexpand">True</property>
+        <property name="vexpand">True</property>
+        <property name="label_xalign">0</property>
+        <property name="shadow_type">none</property>
+        <child>
+          <object class="GtkAlignment" id="alignment2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="vexpand">True</property>
+            <property name="top_padding">6</property>
+            <property name="left_padding">12</property>
+            <child>
+              <object class="GtkGrid" id="grid2">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="hexpand">True</property>
+                <property name="row_spacing">6</property>
+                <child>
+                  <object class="GtkButton" id="savestartingdoc">
+                    <property name="label" translatable="yes">Save starting _document</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="halign">start</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">0</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="singlerb">
+                    <property name="label" translatable="yes">S_ave as single document</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">individualrb</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">3</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="individualrb">
+                    <property name="label" translatable="yes">Sa_ve as individual documents</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">printallrb</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">4</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkGrid" id="grid3">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="column_spacing">12</property>
+                    <child>
+                      <object class="GtkRadioButton" id="fromrb">
+                        <property name="label" translatable="yes">_From</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="xalign">0</property>
+                        <property name="draw_indicator">True</property>
+                        <property name="group">singlerb</property>
+                        <accessibility>
+                          <relation type="label-for" target="from-nospin"/>
+                        </accessibility>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="toft">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes">_To</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">to-nospin</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkSpinButton" id="from-nospin">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="adjustment">adjustment1</property>
+                        <accessibility>
+                          <relation type="labelled-by" target="fromrb"/>
+                        </accessibility>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkSpinButton" id="to-nospin">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="text" translatable="yes">1</property>
+                        <property name="adjustment">adjustment1</property>
+                        <property name="value">1</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">3</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">7</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkButton" id="savenow">
+                    <property name="label" translatable="yes">Save Do_cuments</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="halign">start</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">8</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="printallrb">
+                    <property name="label" translatable="yes">Print _all documents</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">sendallrb</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">5</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkButton" id="printnow">
+                    <property name="label" translatable="yes">Prin_t Documents</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="halign">start</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">9</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="sendallrb">
+                    <property name="label" translatable="yes">S_end all documents</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">singlerb</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">6</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkButton" id="sendnow">
+                    <property name="label" translatable="yes">Se_nd documents</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">True</property>
+                    <property name="halign">start</property>
+                    <property name="use_underline">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">10</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkGrid" id="grid5">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="row_spacing">6</property>
+                    <property name="column_spacing">12</property>
+                    <child>
+                      <object class="GtkLabel" id="mailtoft">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">T_o</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">mailto</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">1</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="subjectft">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">S_ubject</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">subject</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">2</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="sendasft">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Sen_d as</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">sendas</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">3</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkEntry" id="subject">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="hexpand">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">2</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBoxText" id="mailto">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">1</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="copyto">
+                        <property name="label" translatable="yes">_Copy to...</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="use_underline">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="sendassettings">
+                        <property name="label" translatable="yes">Pr_operties...</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="use_underline">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="top_attach">3</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBox" id="sendas">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="model">liststore1</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">3</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="printerft">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">_Printer</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">printers</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBoxText" id="printers">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="printersettings">
+                        <property name="label" translatable="yes">P_roperties...</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="use_underline">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="top_attach">0</property>
+                        <property name="width">1</property>
+                        <property name="height">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">1</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkAlignment" id="attachgroup">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkGrid" id="grid6">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="hexpand">True</property>
+                        <property name="row_spacing">6</property>
+                        <child>
+                          <object class="GtkLabel" id="attachft">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">Name of the a_ttachment</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">attach</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">0</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkEntry" id="attach">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="hexpand">True</property>
+                          </object>
+                          <packing>
+                            <property name="left_attach">0</property>
+                            <property name="top_attach">1</property>
+                            <property name="width">1</property>
+                            <property name="height">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+              </object>
+            </child>
+          </object>
+        </child>
+        <child type="label">
+          <object class="GtkLabel" id="label2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <attributes>
+              <attribute name="weight" value="bold"/>
+            </attributes>
+          </object>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">1</property>
+      </packing>
+    </child>
+  </object>
+</interface>
commit 5a5d948e230dfea61108452579b68da75706cad4
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Thu Apr 3 17:40:05 2014 +0200

    bnc#821208 DOC import: fix unwanted char background in numbering char style
    
    Word supports formatting the paragraph parker itself, and we import that
    as a formatting at a position after the last character (e.g. "foo" will
    have that formatting at char pos 3, which is ignored by the layout).
    
    In addition to this hack, commit
    1c22545edf9085b9f2656ca92781158b6b123db3 (Fix issue #i119405: Numbering
    text style changed after importing the *.doc, 2012-08-24) added a
    SwTxtNode::TryCharSetExpandToNum() hack to Writer core, where in case
    such a paragraph marker attribute is set, and the SwTxtNode has a
    numbering, then also modify the associated character style as well.
    
    As that commit already noticed, there are attributes which should not be
    propagated to that character style. Extend this blacklist to ignore
    RES_CHRATR_BACKGROUND as well, as Word does.
    
    Change-Id: Idcb40d37d8688c76fbd61f28428f6e3bc995f799

diff --git a/sw/qa/extras/ww8import/data/bnc821208.doc b/sw/qa/extras/ww8import/data/bnc821208.doc
index d89d711..cfe7680 100755
Binary files a/sw/qa/extras/ww8import/data/bnc821208.doc and b/sw/qa/extras/ww8import/data/bnc821208.doc differ
diff --git a/sw/qa/extras/ww8import/ww8import.cxx b/sw/qa/extras/ww8import/ww8import.cxx
index 861a960..9c9b5d8 100644
--- a/sw/qa/extras/ww8import/ww8import.cxx
+++ b/sw/qa/extras/ww8import/ww8import.cxx
@@ -242,6 +242,9 @@ DECLARE_WW8IMPORT_TEST(testBnc821208, "bnc821208.doc")
     beans::PropertyState ePropertyState = xPropertyState->getPropertyState("CharFontName");
     // This was beans::PropertyState_DIRECT_VALUE.
     CPPUNIT_ASSERT_EQUAL(beans::PropertyState_DEFAULT_VALUE, ePropertyState);
+
+    // Background of the numbering itself should have been the default, was yellow (0xffff00).
+    CPPUNIT_ASSERT_EQUAL(sal_Int32(-1), getProperty<sal_Int32>(xPropertyState, "CharBackColor"));
 }
 
 DECLARE_WW8IMPORT_TEST(testCp1000044, "cp1000044.doc")
diff --git a/sw/source/core/txtnode/thints.cxx b/sw/source/core/txtnode/thints.cxx
index e9dbd89..0e4c6f6 100644
--- a/sw/source/core/txtnode/thints.cxx
+++ b/sw/source/core/txtnode/thints.cxx
@@ -1784,7 +1784,7 @@ void SwTxtNode::DelSoftHyph( const sal_Int32 nStt, const sal_Int32 nEnd )
 //In MS Word, the font underline setting of the paragraph end position wont affect the formatting of numbering, so we ignore it
 bool lcl_IsIgnoredCharFmtForNumbering(const sal_uInt16 nWhich)
 {
-    return (nWhich ==  RES_CHRATR_UNDERLINE);
+    return (nWhich ==  RES_CHRATR_UNDERLINE || nWhich == RES_CHRATR_BACKGROUND);
 }
 
 //In MS Word, following properties of the paragraph end position wont affect the formatting of bullets, so we ignore them:
commit 8f5df0dbbeca681907e0abbc5efee23ab0cddbc3
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Thu Apr 3 17:41:38 2014 +0200

    Remove unused copy ctor (and use boost::noncopyable)
    
    Change-Id: Ib797c84e64a114df0e80067a97b714d4f97ff20a

diff --git a/cppuhelper/source/weak.cxx b/cppuhelper/source/weak.cxx
index 52c920f..d75e16c 100644
--- a/cppuhelper/source/weak.cxx
+++ b/cppuhelper/source/weak.cxx
@@ -17,6 +17,9 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <sal/config.h>
+
+#include <boost/noncopyable.hpp>
 #include <osl/mutex.hxx>
 #include <cppuhelper/weakagg.hxx>
 #include <cppuhelper/interfacecontainer.hxx>
@@ -41,7 +44,7 @@ inline static Mutex & getWeakMutex() SAL_THROW(())
 
 //-- OWeakConnectionPoint ----------------------------------------------------
 
-class OWeakConnectionPoint : public XAdapter
+class OWeakConnectionPoint: public XAdapter, private boost::noncopyable
 {
 public:
     /**
@@ -67,9 +70,6 @@ public:
     void SAL_CALL dispose() throw(::com::sun::star::uno::RuntimeException);
 
 private:
-    OWeakConnectionPoint(OWeakConnectionPoint &); // not defined
-    void operator =(OWeakConnectionPoint &); // not defined
-
     virtual ~OWeakConnectionPoint() {}
 
     /// The reference counter.
@@ -316,10 +316,9 @@ namespace uno
 
 //-- OWeakRefListener -----------------------------------------------------
 
-class OWeakRefListener : public XReference
+class OWeakRefListener: public XReference, private boost::noncopyable
 {
 public:
-    OWeakRefListener(const OWeakRefListener& rRef) SAL_THROW(());
     OWeakRefListener(const Reference< XInterface >& xInt) SAL_THROW(());
     virtual ~OWeakRefListener() SAL_THROW(());
 
@@ -335,28 +334,8 @@ public:
     oslInterlockedCount         m_aRefCount;
     /// The connection point of the weak object
     Reference< XAdapter >       m_XWeakConnectionPoint;
-
-private:
-    OWeakRefListener& SAL_CALL operator=(const OWeakRefListener& rRef) SAL_THROW(());
 };
 
-OWeakRefListener::OWeakRefListener(const OWeakRefListener& rRef) SAL_THROW(())
-    : com::sun::star::uno::XReference()
-    , m_aRefCount( 1 )
-{
-    try
-    {
-    m_XWeakConnectionPoint = rRef.m_XWeakConnectionPoint;
-
-    if (m_XWeakConnectionPoint.is())
-    {
-        m_XWeakConnectionPoint->addReference((XReference*)this);
-    }
-    }
-    catch (RuntimeException &) { OSL_ASSERT( false ); } // assert here, but no unexpected()
-    osl_atomic_decrement( &m_aRefCount );
-}
-
 OWeakRefListener::OWeakRefListener(const Reference< XInterface >& xInt) SAL_THROW(())
     : m_aRefCount( 1 )
 {


More information about the Libreoffice-commits mailing list