[Libreoffice-commits] core.git: sw/source sw/uiconfig sw/UIConfig_swriter.mk

Csikós Tamás csks.tomi at gmail.com
Wed Jul 10 07:27:54 PDT 2013


 sw/UIConfig_swriter.mk                                 |    2 
 sw/source/ui/config/mailconfigpage.cxx                 |  319 +++++------
 sw/source/ui/config/mailconfigpage.hrc                 |   35 -
 sw/source/ui/config/mailconfigpage.src                 |  299 ----------
 sw/source/ui/inc/mailconfigpage.hxx                    |   30 -
 sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui |  474 +++++++++++++++++
 sw/uiconfig/swriter/ui/mailconfigpage.ui               |  366 +++++++++++++
 7 files changed, 1001 insertions(+), 524 deletions(-)

New commits:
commit 43f2c887a0ed365c2f06d29bb5fa5512cbcaf542
Author: Csikós Tamás <csks.tomi at gmail.com>
Date:   Tue Jul 9 14:53:49 2013 +0200

    modern .ui widgetlayout for mailconfigpage
    
    Change-Id: I1e7dae74e20f9133f3c4f6319bc294ea5bec22f6
    Reviewed-on: https://gerrit.libreoffice.org/4783
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sw/UIConfig_swriter.mk b/sw/UIConfig_swriter.mk
index f09c26b..2bc1905 100644
--- a/sw/UIConfig_swriter.mk
+++ b/sw/UIConfig_swriter.mk
@@ -61,6 +61,7 @@ $(eval $(call gb_UIConfig_add_toolbarfiles,modules/swriter,\
 $(eval $(call gb_UIConfig_add_uifiles,modules/swriter,\
 	sw/uiconfig/swriter/ui/abstractdialog \
 	sw/uiconfig/swriter/ui/asciifilterdialog \
+    sw/uiconfig/swriter/ui/authenticationsettingsdialog \
 	sw/uiconfig/swriter/ui/autoformattable \
 	sw/uiconfig/swriter/ui/autotext \
 	sw/uiconfig/swriter/ui/bibliographyentry \
@@ -95,6 +96,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/swriter,\
 	sw/uiconfig/swriter/ui/insertscript \
 	sw/uiconfig/swriter/ui/inserttable \
 	sw/uiconfig/swriter/ui/linenumbering \
+	sw/uiconfig/swriter/ui/mailconfigpage \
 	sw/uiconfig/swriter/ui/mailmergedialog \
 	sw/uiconfig/swriter/ui/mergetabledialog \
 	sw/uiconfig/swriter/ui/newuserindexdialog \
diff --git a/sw/source/ui/config/mailconfigpage.cxx b/sw/source/ui/config/mailconfigpage.cxx
index cdd999c..95bc42c 100644
--- a/sw/source/ui/config/mailconfigpage.cxx
+++ b/sw/source/ui/config/mailconfigpage.cxx
@@ -82,35 +82,31 @@ public:
 
 class SwAuthenticationSettingsDialog : public SfxModalDialog
 {
-    CheckBox        m_aAuthenticationCB;
-
-    RadioButton     m_aSeparateAuthenticationRB;
-    RadioButton     m_aSMTPAfterPOPRB;
-
-    FixedInfo       m_aOutgoingServerFT;
-    FixedText       m_aUserNameFT;
-    Edit            m_aUserNameED;
-    FixedText       m_aOutPasswordFT;
-    Edit            m_aOutPasswordED;
-
-    FixedInfo       m_aIncomingServerFT;
-    FixedText       m_aServerFT;
-    Edit            m_aServerED;
-    FixedText       m_aPortFT;
-    NumericField    m_aPortNF;
-    FixedText       m_aProtocolFT;
-    RadioButton     m_aPOP3RB;
-    RadioButton     m_aIMAPRB;
-    FixedText       m_aInUsernameFT;
-    Edit            m_aInUsernameED;
-    FixedText       m_aInPasswordFT;
-    Edit            m_aInPasswordED;
-
-    FixedLine       m_aSeparatorFL;
-
-    OKButton        m_aOKPB;
-    CancelButton    m_aCancelPB;
-    HelpButton      m_aHelpPB;
+    CheckBox*        m_pAuthenticationCB;
+
+    RadioButton*     m_pSeparateAuthenticationRB;
+    RadioButton*     m_pSMTPAfterPOPRB;
+
+    FixedInfo*       m_pOutgoingServerFT;
+    FixedText*       m_pUserNameFT;
+    Edit*            m_pUserNameED;
+    FixedText*       m_pOutPasswordFT;
+    Edit*            m_pOutPasswordED;
+
+    FixedInfo*       m_pIncomingServerFT;
+    FixedText*       m_pServerFT;
+    Edit*            m_pServerED;
+    FixedText*       m_pPortFT;
+    NumericField*    m_pPortNF;
+    FixedText*       m_pProtocolFT;
+    RadioButton*     m_pPOP3RB;
+    RadioButton*     m_pIMAPRB;
+    FixedText*       m_pInUsernameFT;
+    Edit*            m_pInUsernameED;
+    FixedText*       m_pInPasswordFT;
+    Edit*            m_pInPasswordED;
+
+    OKButton*        m_pOKPB;
 
     SwMailMergeConfigItem& rConfigItem;
 
@@ -125,36 +121,25 @@ public:
 };
 
 SwMailConfigPage::SwMailConfigPage( Window* pParent, const SfxItemSet& rSet ) :
-    SfxTabPage(pParent, SW_RES(TP_MAILCONFIG), rSet),
-#ifdef _MSC_VER
-#pragma warning (disable : 4355)
-#endif
-    m_aIdentityFL( this, SW_RES(       FL_IDENTITY)),
-    m_aDisplayNameFT( this, SW_RES(    FT_DISPLAYNAME)),
-    m_aDisplayNameED( this, SW_RES(    ED_DISPLAYNAME)),
-    m_aAddressFT( this, SW_RES(        FT_ADDRESS)),
-    m_aAddressED( this, SW_RES(        ED_ADDRESS)),
-    m_aReplyToCB( this, SW_RES(        CB_REPLYTO)),
-    m_aReplyToFT( this, SW_RES(        FT_REPLYTO)),
-    m_aReplyToED( this, SW_RES(        ED_REPLYTO)),
-    m_aSMTPFL( this, SW_RES(           FL_SMTP)),
-    m_aServerFT( this, SW_RES(         FT_SERVER)),
-    m_aServerED( this, SW_RES(         ED_SERVER)),
-    m_aPortFT( this, SW_RES(           FT_PORT)),
-    m_aPortNF( this, SW_RES(           NF_PORT)),
-    m_aSecureCB( this, SW_RES(         CB_SECURE)),
-    m_aServerAuthenticationPB( this, SW_RES( PB_AUTHENTICATION )),
-    m_aSeparatorFL( this,            SW_RES( FL_SEPARATOR      )),
-    m_aTestPB( this, SW_RES(           PB_TEST)),
-#ifdef _MSC_VER
-#pragma warning (default : 4355)
-#endif
+    SfxTabPage(pParent, "MailConfigPage" , "modules/swriter/ui/mailconfigpage.ui", rSet),
+
     m_pConfigItem( new SwMailMergeConfigItem )
 {
-    FreeResource();
-    m_aReplyToCB.SetClickHdl(LINK(this, SwMailConfigPage, ReplyToHdl));
-    m_aServerAuthenticationPB.SetClickHdl(LINK(this, SwMailConfigPage, AuthenticationHdl));
-    m_aTestPB.SetClickHdl(LINK(this, SwMailConfigPage, TestHdl));
+    get(m_pDisplayNameED,"displayname");
+    get(m_pAddressED,"address");
+    get(m_pReplyToCB,"replytocb");
+    get(m_pReplyToFT,"replyto_label");
+    get(m_pReplyToED,"replyto");
+    get(m_pServerED,"server");
+    get(m_pPortNF,"port");
+    get(m_pSecureCB,"secure");
+    get(m_pServerAuthenticationPB,"serverauthentication");
+    get(m_pTestPB,"test");
+
+    //FreeResource();
+    m_pReplyToCB->SetClickHdl(LINK(this, SwMailConfigPage, ReplyToHdl));
+    m_pServerAuthenticationPB->SetClickHdl(LINK(this, SwMailConfigPage, AuthenticationHdl));
+    m_pTestPB->SetClickHdl(LINK(this, SwMailConfigPage, TestHdl));
 }
 
 SwMailConfigPage::~SwMailConfigPage()
@@ -169,21 +154,21 @@ SfxTabPage*  SwMailConfigPage::Create( Window* pParent, const SfxItemSet& rAttrS
 
 sal_Bool SwMailConfigPage::FillItemSet( SfxItemSet& /*rSet*/ )
 {
-    if(m_aDisplayNameED.GetText() != m_aDisplayNameED.GetSavedValue())
-        m_pConfigItem->SetMailDisplayName(m_aDisplayNameED.GetText());
-    if(m_aAddressED.GetText() != m_aAddressED.GetSavedValue())
-        m_pConfigItem->SetMailAddress(m_aAddressED.GetText());
-    if( m_aReplyToCB.GetSavedValue() != m_aReplyToCB.IsChecked())
-        m_pConfigItem->SetMailReplyTo(m_aReplyToCB.IsChecked());
-    if(m_aReplyToED.GetText() != m_aReplyToED.GetSavedValue())
-        m_pConfigItem->SetMailReplyTo(m_aReplyToED.GetText());
-    if(m_aServerED.GetText() != m_aServerED.GetSavedValue())
-        m_pConfigItem->SetMailServer(m_aServerED.GetText());
-
-    if(m_aPortNF.IsModified())
-        m_pConfigItem->SetMailPort((sal_Int16)m_aPortNF.GetValue());
-
-    m_pConfigItem->SetSecureConnection(m_aSecureCB.IsChecked());
+    if(m_pDisplayNameED->GetText() != m_pDisplayNameED->GetSavedValue())
+        m_pConfigItem->SetMailDisplayName(m_pDisplayNameED->GetText());
+    if(m_pAddressED->GetText() != m_pAddressED->GetSavedValue())
+        m_pConfigItem->SetMailAddress(m_pAddressED->GetText());
+    if( m_pReplyToCB->GetSavedValue() != m_pReplyToCB->IsChecked())
+        m_pConfigItem->SetMailReplyTo(m_pReplyToCB->IsChecked());
+    if(m_pReplyToED->GetText() != m_pReplyToED->GetSavedValue())
+        m_pConfigItem->SetMailReplyTo(m_pReplyToED->GetText());
+    if(m_pServerED->GetText() != m_pServerED->GetSavedValue())
+        m_pConfigItem->SetMailServer(m_pServerED->GetText());
+
+    if(m_pPortNF->IsModified())
+        m_pConfigItem->SetMailPort((sal_Int16)m_pPortNF->GetValue());
+
+    m_pConfigItem->SetSecureConnection(m_pSecureCB->IsChecked());
 
     m_pConfigItem->Commit();
     return sal_True;
@@ -191,32 +176,32 @@ sal_Bool SwMailConfigPage::FillItemSet( SfxItemSet& /*rSet*/ )
 
 void SwMailConfigPage::Reset( const SfxItemSet& /*rSet*/ )
 {
-    m_aDisplayNameED.SetText(m_pConfigItem->GetMailDisplayName());
-    m_aAddressED.SetText(m_pConfigItem->GetMailAddress());
+    m_pDisplayNameED->SetText(m_pConfigItem->GetMailDisplayName());
+    m_pAddressED->SetText(m_pConfigItem->GetMailAddress());
 
-    m_aReplyToED.SetText(m_pConfigItem->GetMailReplyTo()) ;
-    m_aReplyToCB.Check(m_pConfigItem->IsMailReplyTo());
-    m_aReplyToCB.GetClickHdl().Call(&m_aReplyToCB);
+    m_pReplyToED->SetText(m_pConfigItem->GetMailReplyTo()) ;
+    m_pReplyToCB->Check(m_pConfigItem->IsMailReplyTo());
+    m_pReplyToCB->GetClickHdl().Call(&m_pReplyToCB);
 
-    m_aServerED.SetText(m_pConfigItem->GetMailServer());
-    m_aPortNF.SetValue(m_pConfigItem->GetMailPort());
+    m_pServerED->SetText(m_pConfigItem->GetMailServer());
+    m_pPortNF->SetValue(m_pConfigItem->GetMailPort());
 
-    m_aSecureCB.Check(m_pConfigItem->IsSecureConnection());
+    m_pSecureCB->Check(m_pConfigItem->IsSecureConnection());
 
-    m_aDisplayNameED.SaveValue();
-    m_aAddressED    .SaveValue();
-    m_aReplyToCB    .SaveValue();
-    m_aReplyToED    .SaveValue();
-    m_aServerED     .SaveValue();
-    m_aPortNF       .SaveValue();
-    m_aSecureCB     .SaveValue();
+    m_pDisplayNameED->SaveValue();
+    m_pAddressED    ->SaveValue();
+    m_pReplyToCB    ->SaveValue();
+    m_pReplyToED    ->SaveValue();
+    m_pServerED     ->SaveValue();
+    m_pPortNF       ->SaveValue();
+    m_pSecureCB     ->SaveValue();
 }
 
 IMPL_LINK(SwMailConfigPage, ReplyToHdl, CheckBox*, pBox)
 {
     sal_Bool bEnable = pBox->IsChecked();
-    m_aReplyToFT.Enable(bEnable);
-    m_aReplyToED.Enable(bEnable);
+    m_pReplyToFT->Enable(bEnable);
+    m_pReplyToED->Enable(bEnable);
     return 0;
 }
 
@@ -384,9 +369,9 @@ void SwTestAccountSettingsDialog::Test()
         //check connection
         uno::Reference< uno::XCurrentContext> xConnectionContext =
                 new SwConnectionContext(
-                    m_pParent->m_aServerED.GetText(),
-                    sal::static_int_cast< sal_Int16, sal_Int64 >(m_pParent->m_aPortNF.GetValue()),
-                    m_pParent->m_aSecureCB.IsChecked() ? OUString("Ssl") : OUString("Insecure"));
+                    m_pParent->m_pServerED->GetText(),
+                    sal::static_int_cast< sal_Int16, sal_Int64 >(m_pParent->m_pPortNF->GetValue()),
+                    m_pParent->m_pSecureCB->IsChecked() ? OUString("Ssl") : OUString("Insecure"));
         xMailService->connect(xConnectionContext, xAuthenticator);
         bIsLoggedIn = xMailService->isConnected();
         if( xInMailService.is() )
@@ -438,65 +423,59 @@ SwMailConfigDlg::~SwMailConfigDlg()
 
 SwAuthenticationSettingsDialog::SwAuthenticationSettingsDialog(
         SwMailConfigPage* pParent, SwMailMergeConfigItem& rItem) :
-    SfxModalDialog(pParent, SW_RES(DLG_MM_SERVERAUTHENTICATION)),
-#ifdef _MSC_VER
-#pragma warning (disable : 4355)
-#endif
-        m_aAuthenticationCB( this,          SW_RES( CB_AUTHENTICATION        )),
-        m_aSeparateAuthenticationRB( this,  SW_RES( RB_SEP_AUTHENTICATION   )),
-        m_aSMTPAfterPOPRB( this,            SW_RES( RB_SMPTAFTERPOP         )),
-        m_aOutgoingServerFT( this,          SW_RES( FT_OUTGOINGSERVER        )),
-        m_aUserNameFT( this,                SW_RES( FT_USERNAME             )),
-        m_aUserNameED( this,                SW_RES( ED_USERNAME             )),
-        m_aOutPasswordFT( this,             SW_RES( FT_OUTPASSWORD          )),
-        m_aOutPasswordED( this,             SW_RES( ED_OUTPASSWORD          )),
-        m_aIncomingServerFT( this,          SW_RES( FT_INCOMINGSERVER       )),
-        m_aServerFT( this,                  SW_RES( FT_SERVER               )),
-        m_aServerED( this,                  SW_RES( ED_SERVER               )),
-        m_aPortFT( this,                    SW_RES( FT_PORT                 )),
-        m_aPortNF( this,                    SW_RES( NF_PORT                 )),
-        m_aProtocolFT( this,                SW_RES( FT_PROTOCOL      )),
-        m_aPOP3RB( this,                    SW_RES( RB_POP3          )),
-        m_aIMAPRB( this,                    SW_RES( RB_IMAP          )),
-        m_aInUsernameFT( this,              SW_RES( FT_INUSERNAME            )),
-        m_aInUsernameED( this,              SW_RES( ED_INUSERNAME           )),
-        m_aInPasswordFT( this,              SW_RES( FT_INPASSWORD           )),
-        m_aInPasswordED( this,              SW_RES( ED_INPASSWORD           )),
-        m_aSeparatorFL( this,               SW_RES( FL_SEPARATOR            )),
-        m_aOKPB( this,                      SW_RES( PB_OK                   )),
-        m_aCancelPB( this,                  SW_RES( PB_CANCEL               )),
-        m_aHelpPB( this,                    SW_RES( PB_HELP                 )),
+    SfxModalDialog(pParent, "AuthenticationSettingsDialog", "modules/swriter/ui/authenticationsettingsdialog.ui"),
 #ifdef _MSC_VER
 #pragma warning (default : 4355)
 #endif
         rConfigItem( rItem )
 {
-    FreeResource();
-
-    m_aAuthenticationCB.SetClickHdl( LINK( this, SwAuthenticationSettingsDialog, CheckBoxHdl_Impl));
+    get(m_pAuthenticationCB,"authentication");
+    get(m_pSeparateAuthenticationRB,"seperateauthentication");
+    get(m_pSMTPAfterPOPRB,"smtpafterpop");
+    get(m_pOutgoingServerFT,"label1");
+    get(m_pUserNameFT,"username_label");
+    get(m_pUserNameED,"username");
+    get(m_pOutPasswordFT,"outpassword_label");
+    get(m_pOutPasswordED,"outpassword");
+    get(m_pIncomingServerFT,"label2");
+    get(m_pServerFT,"server_label");
+    get(m_pServerED,"server");
+    get(m_pPortFT,"port_label");
+    get(m_pPortNF,"port");
+    get(m_pProtocolFT,"label3");
+    get(m_pPOP3RB,"pop3");
+    get(m_pIMAPRB,"imap");
+    get(m_pInUsernameFT,"inusername_label");
+    get(m_pInUsernameED,"inusername");
+    get(m_pInPasswordFT,"inpassword_label");
+    get(m_pInPasswordED,"inpassword");
+
+    get(m_pOKPB,"ok");
+
+    m_pAuthenticationCB->SetClickHdl( LINK( this, SwAuthenticationSettingsDialog, CheckBoxHdl_Impl));
     Link aRBLink = LINK( this, SwAuthenticationSettingsDialog, RadioButtonHdl_Impl );
-    m_aSeparateAuthenticationRB.SetClickHdl( aRBLink );
-    m_aSMTPAfterPOPRB.SetClickHdl( aRBLink );
-    m_aOKPB.SetClickHdl( LINK( this, SwAuthenticationSettingsDialog, OKHdl_Impl));
+    m_pSeparateAuthenticationRB->SetClickHdl( aRBLink );
+    m_pSMTPAfterPOPRB->SetClickHdl( aRBLink );
+    m_pOKPB->SetClickHdl( LINK( this, SwAuthenticationSettingsDialog, OKHdl_Impl));
 
-    m_aAuthenticationCB.Check( rConfigItem.IsAuthentication() );
+    m_pAuthenticationCB->Check( rConfigItem.IsAuthentication() );
     if(rConfigItem.IsSMTPAfterPOP())
-        m_aSMTPAfterPOPRB.Check();
+        m_pSMTPAfterPOPRB->Check();
     else
-        m_aSeparateAuthenticationRB.Check();
-    m_aUserNameED.SetText( rConfigItem.GetMailUserName() );
-    m_aOutPasswordED.SetText( rConfigItem.GetMailPassword() );
+        m_pSeparateAuthenticationRB->Check();
+    m_pUserNameED->SetText( rConfigItem.GetMailUserName() );
+    m_pOutPasswordED->SetText( rConfigItem.GetMailPassword() );
 
-    m_aServerED.SetText( rConfigItem.GetInServerName() );
-    m_aPortNF.SetValue( rConfigItem.GetInServerPort() );
+    m_pServerED->SetText( rConfigItem.GetInServerName() );
+    m_pPortNF->SetValue( rConfigItem.GetInServerPort() );
     if(rConfigItem.IsInServerPOP())
-        m_aPOP3RB.Check();
+        m_pPOP3RB->Check();
     else
-        m_aIMAPRB.Check();
-    m_aInUsernameED.SetText( rConfigItem.GetInServerUserName());
-    m_aInPasswordED.SetText( rConfigItem.GetInServerPassword() );
+        m_pIMAPRB->Check();
+    m_pInUsernameED->SetText( rConfigItem.GetInServerUserName());
+    m_pInPasswordED->SetText( rConfigItem.GetInServerPassword() );
 
-    CheckBoxHdl_Impl( &m_aAuthenticationCB );
+    CheckBoxHdl_Impl( m_pAuthenticationCB );
 }
 
 SwAuthenticationSettingsDialog::~SwAuthenticationSettingsDialog()
@@ -505,16 +484,16 @@ SwAuthenticationSettingsDialog::~SwAuthenticationSettingsDialog()
 
 IMPL_LINK_NOARG(SwAuthenticationSettingsDialog, OKHdl_Impl)
 {
-    rConfigItem.SetAuthentication( m_aAuthenticationCB.IsChecked() );
-    rConfigItem.SetSMTPAfterPOP(m_aSMTPAfterPOPRB.IsChecked());
-    rConfigItem.SetMailUserName(m_aUserNameED.GetText());
-    rConfigItem.SetMailPassword(m_aOutPasswordED.GetText());
-    rConfigItem.SetInServerName(m_aServerED.GetText());
-    rConfigItem.SetInServerPort(sal::static_int_cast< sal_Int16, sal_Int64 >(m_aPortNF.GetValue( ) ));
-    rConfigItem.SetInServerPOP(m_aPOP3RB.IsChecked());
-    rConfigItem.SetInServerUserName(m_aInUsernameED.GetText());
-
-    rConfigItem.SetInServerPassword(m_aInPasswordED.GetText());
+    rConfigItem.SetAuthentication( m_pAuthenticationCB->IsChecked() );
+    rConfigItem.SetSMTPAfterPOP(m_pSMTPAfterPOPRB->IsChecked());
+    rConfigItem.SetMailUserName(m_pUserNameED->GetText());
+    rConfigItem.SetMailPassword(m_pOutPasswordED->GetText());
+    rConfigItem.SetInServerName(m_pServerED->GetText());
+    rConfigItem.SetInServerPort(sal::static_int_cast< sal_Int16, sal_Int64 >(m_pPortNF->GetValue( ) ));
+    rConfigItem.SetInServerPOP(m_pPOP3RB->IsChecked());
+    rConfigItem.SetInServerUserName(m_pInUsernameED->GetText());
+
+    rConfigItem.SetInServerPassword(m_pInPasswordED->GetText());
     EndDialog(RET_OK);
     return 0;
 }
@@ -522,8 +501,8 @@ IMPL_LINK_NOARG(SwAuthenticationSettingsDialog, OKHdl_Impl)
 IMPL_LINK( SwAuthenticationSettingsDialog, CheckBoxHdl_Impl, CheckBox*, pBox)
 {
     sal_Bool bChecked = pBox->IsChecked();
-    m_aSeparateAuthenticationRB.Enable(bChecked);
-    m_aSMTPAfterPOPRB.Enable(bChecked);
+    m_pSeparateAuthenticationRB->Enable(bChecked);
+    m_pSMTPAfterPOPRB->Enable(bChecked);
     RadioButtonHdl_Impl( 0 );
 
     return 0;
@@ -531,29 +510,29 @@ IMPL_LINK( SwAuthenticationSettingsDialog, CheckBoxHdl_Impl, CheckBox*, pBox)
 
 IMPL_LINK_NOARG(SwAuthenticationSettingsDialog, RadioButtonHdl_Impl)
 {
-    sal_Bool bSeparate = m_aSeparateAuthenticationRB.IsChecked();
-    sal_Bool bIsEnabled = m_aSeparateAuthenticationRB.IsEnabled();
+    sal_Bool bSeparate = m_pSeparateAuthenticationRB->IsChecked();
+    sal_Bool bIsEnabled = m_pSeparateAuthenticationRB->IsEnabled();
     sal_Bool bNotSeparate = !bSeparate && bIsEnabled;
     bSeparate &= bIsEnabled;
 
-    m_aOutgoingServerFT.Enable(bSeparate);
-    m_aUserNameFT.Enable(bSeparate);
-    m_aUserNameED.Enable(bSeparate);
-    m_aOutPasswordFT.Enable(bSeparate);
-    m_aOutPasswordED.Enable(bSeparate);
-
-    m_aIncomingServerFT.Enable(bNotSeparate);
-    m_aServerFT.Enable(bNotSeparate);
-    m_aServerED.Enable(bNotSeparate);
-    m_aPortFT.Enable(bNotSeparate);
-    m_aPortNF.Enable(bNotSeparate);
-    m_aInUsernameFT.Enable(bNotSeparate);
-    m_aInUsernameED.Enable(bNotSeparate);
-    m_aProtocolFT.Enable(bNotSeparate);
-    m_aPOP3RB.Enable(bNotSeparate);
-    m_aIMAPRB.Enable(bNotSeparate);
-    m_aInPasswordFT.Enable(bNotSeparate);
-    m_aInPasswordED.Enable(bNotSeparate);
+    m_pOutgoingServerFT->Enable(bSeparate);
+    m_pUserNameFT->Enable(bSeparate);
+    m_pUserNameED->Enable(bSeparate);
+    m_pOutPasswordFT->Enable(bSeparate);
+    m_pOutPasswordED->Enable(bSeparate);
+
+    m_pIncomingServerFT->Enable(bNotSeparate);
+    m_pServerFT->Enable(bNotSeparate);
+    m_pServerED->Enable(bNotSeparate);
+    m_pPortFT->Enable(bNotSeparate);
+    m_pPortNF->Enable(bNotSeparate);
+    m_pInUsernameFT->Enable(bNotSeparate);
+    m_pInUsernameED->Enable(bNotSeparate);
+    m_pProtocolFT->Enable(bNotSeparate);
+    m_pPOP3RB->Enable(bNotSeparate);
+    m_pIMAPRB->Enable(bNotSeparate);
+    m_pInPasswordFT->Enable(bNotSeparate);
+    m_pInPasswordED->Enable(bNotSeparate);
 
     return 0;
 }
diff --git a/sw/source/ui/config/mailconfigpage.hrc b/sw/source/ui/config/mailconfigpage.hrc
index 9997e86..99b5b29 100644
--- a/sw/source/ui/config/mailconfigpage.hrc
+++ b/sw/source/ui/config/mailconfigpage.hrc
@@ -19,24 +19,6 @@
 #ifndef _MAILCONFIGPAGE_HRC
 #define _MAILCONFIGPAGE_HRC
 
-#define FL_IDENTITY                 1
-#define FT_DISPLAYNAME              2
-#define ED_DISPLAYNAME              3
-#define FT_ADDRESS                  4
-#define ED_ADDRESS                  5
-#define CB_REPLYTO                  6
-#define FT_REPLYTO                  7
-#define ED_REPLYTO                  8
-#define FL_SMTP                     9
-#define FT_SERVER                   10
-#define ED_SERVER                   11
-#define FT_PORT                     12
-#define NF_PORT                     13
-#define CB_SECURE                   14
-#define PB_AUTHENTICATION           16
-#define FL_SEPARATOR                17
-#define PB_TEST                     21
-
 #define FI_INFO                     31
 #define LB_STATUS                   32
 #define FI_ERROR                    33
@@ -54,23 +36,6 @@
 #define ST_ERROR_SERVER             46
 #define ILIST                       47
 
-#define CB_AUTHENTICATION           50
-#define RB_SEP_AUTHENTICATION       51
-#define RB_SMPTAFTERPOP             52
-#define FT_OUTGOINGSERVER           53
-#define FT_USERNAME                 54
-#define ED_USERNAME                 55
-#define FT_OUTPASSWORD              56
-#define ED_OUTPASSWORD              57
-#define FT_INCOMINGSERVER           58
-#define FT_INUSERNAME               59
-#define ED_INUSERNAME               60
-#define FT_INPASSWORD               63
-#define ED_INPASSWORD               64
-#define PB_OK                       65
-#define FT_PROTOCOL                 66
-#define RB_POP3                     67
-#define RB_IMAP                     68
 #endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/ui/config/mailconfigpage.src b/sw/source/ui/config/mailconfigpage.src
index 5b6f596..aaf1588 100644
--- a/sw/source/ui/config/mailconfigpage.src
+++ b/sw/source/ui/config/mailconfigpage.src
@@ -23,133 +23,7 @@
 #include <cmdid.h>
 #include <globals.hrc>
 
-TabPage TP_MAILCONFIG
-{
-    HelpID = HID_TP_MAILCONFIG;
-    Size = MAP_APPFONT ( TP_WIDTH , TP_HEIGHT ) ;
-    Hide = TRUE ;
-
-    Text[ en-US ] = "Mail Merge E-mail";
 
-    FixedLine  FL_IDENTITY
-    {
-        Pos = MAP_APPFONT ( 6 , 3 ) ;
-        Size = MAP_APPFONT ( 248 , 8 ) ;
-        Text[ en-US ] = "User information";
-    };
-    FixedText       FT_DISPLAYNAME
-    {
-        Pos = MAP_APPFONT ( 12 , 16 ) ;
-        Size = MAP_APPFONT ( 74 , 8 ) ;
-        Text[ en-US ] = "~Your name";
-    };
-    Edit  ED_DISPLAYNAME
-    {
-        HelpID = "sw:Edit:TP_MAILCONFIG:ED_DISPLAYNAME";
-        Pos = MAP_APPFONT ( 88 , 14 ) ;
-        Size = MAP_APPFONT ( 160 , 12 ) ;
-        Border = TRUE;
-    };
-    FixedText       FT_ADDRESS
-    {
-        Pos = MAP_APPFONT ( 12 , 31 ) ;
-        Size = MAP_APPFONT ( 74 , 8 ) ;
-        Text[ en-US ] = "~E-Mail address";
-    };
-    Edit   ED_ADDRESS
-    {
-        HelpID = "sw:Edit:TP_MAILCONFIG:ED_ADDRESS";
-        Pos = MAP_APPFONT ( 88 , 29 ) ;
-        Size = MAP_APPFONT ( 160 , 12 ) ;
-        Border = TRUE;
-    };
-    CheckBox        CB_REPLYTO
-    {
-        HelpID = "sw:CheckBox:TP_MAILCONFIG:CB_REPLYTO";
-        Pos = MAP_APPFONT ( 12 , 45 ) ;
-        Size = MAP_APPFONT ( 242 , 10 ) ;
-        Text[ en-US ] = "Send replies to ~different e-mail address";
-    };
-    FixedText       FT_REPLYTO
-    {
-        Pos = MAP_APPFONT ( 18 , 60 ) ;
-        Size = MAP_APPFONT ( 68 , 8 ) ;
-        Text[ en-US ] = "~Reply address";
-    };
-    Edit ED_REPLYTO
-    {
-        HelpID = "sw:Edit:TP_MAILCONFIG:ED_REPLYTO";
-        Pos = MAP_APPFONT ( 88 , 58 ) ;
-        Size = MAP_APPFONT ( 160 , 12 ) ;
-        Border = TRUE;
-    };
-    FixedLine       FL_SMTP
-    {
-        Pos = MAP_APPFONT ( 6 , 76 ) ;
-        Size = MAP_APPFONT ( 248 , 8 ) ;
-        Text[ en-US ] = "Outgoing server (SMTP) Settings";
-    };
-    FixedText       FT_SERVER
-    {
-        Pos = MAP_APPFONT ( 12 , 89 ) ;
-        Size = MAP_APPFONT ( 74 , 8 ) ;
-        Text[ en-US ] = "~Server name";
-    };
-    Edit ED_SERVER
-    {
-        HelpID = "sw:Edit:TP_MAILCONFIG:ED_SERVER";
-        Pos = MAP_APPFONT ( 88 , 87 ) ;
-        Size = MAP_APPFONT ( 105 , 12 ) ;
-        Border = TRUE;
-    };
-    FixedText       FT_PORT
-    {
-        Pos = MAP_APPFONT ( 197 , 89 ) ;
-        Size = MAP_APPFONT ( 24 , 8 ) ;
-        Right = TRUE;
-        Text[ en-US ] = "~Port";
-    };
-    NumericField    NF_PORT
-    {
-        HelpID = "sw:NumericField:TP_MAILCONFIG:NF_PORT";
-        Pos = MAP_APPFONT ( 223 , 87 ) ;
-        Size = MAP_APPFONT ( 25 , 12 ) ;
-        Border = TRUE;
-        Left = TRUE ;
-        First = 1 ;
-        Minimum = 1 ;
-        Maximum = 65535;
-        Repeat = TRUE ;
-        Spin = FALSE ;
-        TabStop = TRUE ;
-    };
-    CheckBox        CB_SECURE
-    {
-        HelpID = "sw:CheckBox:TP_MAILCONFIG:CB_SECURE";
-        Pos = MAP_APPFONT ( 12 , 104 ) ;
-        Size = MAP_APPFONT ( 242 , 10 ) ;
-        Text[ en-US ] = "~Use secure connection (SSL)";
-    };
-    PushButton PB_AUTHENTICATION
-    {
-        HelpID = "sw:PushButton:TP_MAILCONFIG:PB_AUTHENTICATION";
-        Pos = MAP_APPFONT ( 88 , 118 ) ;
-        Size = MAP_APPFONT ( 105 , 14 ) ;
-        Text[ en-US ] = "Server Au~thentication";
-    };
-    FixedLine FL_SEPARATOR
-    {
-        Pos = MAP_APPFONT ( 6 , 156 ) ;
-        Size = MAP_APPFONT ( 248 , 8 ) ;
-    };
-    PushButton      PB_TEST
-    {
-        HelpID = "sw:PushButton:TP_MAILCONFIG:PB_TEST";
-        Pos = MAP_APPFONT ( 88 , 164 ) ;
-        Size = MAP_APPFONT ( 105 , 14 ) ;
-        Text[ en-US ] = "Test S~ettings...";
-    };
-};
 ModalDialog DLG_MM_TESTACCOUNTSETTINGS
 {
     OutputSize = TRUE ;
@@ -252,178 +126,5 @@ ModalDialog DLG_MM_TESTACCOUNTSETTINGS
     };
 
 };
-ModalDialog DLG_MM_SERVERAUTHENTICATION
-{
-    OutputSize = TRUE ;
-    SVLook = TRUE ;
-    HelpID = HID_MM_SERVERAUTHENTICATION;
-    Size = MAP_APPFONT ( 250 , 211 ) ;
-    Moveable = TRUE ;
-
-    Text[ en-US ] = "Server Authentication";
-
-    CheckBox        CB_AUTHENTICATION
-    {
-        HelpID = "sw:CheckBox:DLG_MM_SERVERAUTHENTICATION:CB_AUTHENTICATION";
-        Pos = MAP_APPFONT ( 6 , 3 ) ;
-        Size = MAP_APPFONT ( 238 , 10 ) ;
-        Text[ en-US ] = "The outgoing mail server (SMTP) requires au~thentication";
-    };
-    RadioButton RB_SEP_AUTHENTICATION
-    {
-        HelpID = "sw:RadioButton:DLG_MM_SERVERAUTHENTICATION:RB_SEP_AUTHENTICATION";
-        Pos = MAP_APPFONT ( 12 , 17 ) ;
-        Size = MAP_APPFONT ( 232 , 10 ) ;
-        Text[ en-US ] = "The outgoing mail server (SMTP) requires ~separate authentication";
-    };
-    FixedText FT_OUTGOINGSERVER
-    {
-        Pos = MAP_APPFONT ( 18 , 31 ) ;
-        Size = MAP_APPFONT ( 200 , 8 ) ;
-        Text[ en-US ] = "Outgoing mail server:";
-    };
-    FixedText       FT_USERNAME
-    {
-        Pos = MAP_APPFONT ( 18 , 44 ) ;
-        Size = MAP_APPFONT ( 53 , 8 ) ;
-        Text[ en-US ] = "~User name";
-    };
-    Edit  ED_USERNAME
-    {
-        HelpID = "sw:Edit:DLG_MM_SERVERAUTHENTICATION:ED_USERNAME";
-        Pos = MAP_APPFONT ( 78 , 42 ) ;
-        Size = MAP_APPFONT ( 115 , 12 ) ;
-        Border = TRUE;
-    };
-    FixedText       FT_OUTPASSWORD
-    {
-        Pos = MAP_APPFONT ( 18 , 59 ) ;
-        Size = MAP_APPFONT ( 53 , 8 ) ;
-        Text[ en-US ] = "~Password";
-    };
-    Edit  ED_OUTPASSWORD
-    {
-        HelpID = "sw:Edit:DLG_MM_SERVERAUTHENTICATION:ED_OUTPASSWORD";
-        Pos = MAP_APPFONT ( 78 , 57 ) ;
-        Size = MAP_APPFONT ( 115 , 12 ) ;
-        Border = TRUE;
-        PassWord = TRUE;
-    };
-    RadioButton RB_SMPTAFTERPOP
-    {
-        HelpID = "sw:RadioButton:DLG_MM_SERVERAUTHENTICATION:RB_SMPTAFTERPOP";
-        Pos = MAP_APPFONT ( 12 , 73 ) ;
-        Size = MAP_APPFONT ( 232 , 20 ) ;
-        WordBreak = TRUE;
-        Text[ en-US ] = "The outgoing mail server uses the same authentication as the ~incoming mail server. Enter the settings of the incoming mail server.";
-    };
-    FixedText FT_INCOMINGSERVER
-    {
-        Pos = MAP_APPFONT ( 18 ,  97 ) ;
-        Size = MAP_APPFONT ( 230 , 8 ) ;
-        Text[ en-US ] = "Incoming mail server:";
-    };
-    FixedText FT_SERVER
-    {
-        Pos = MAP_APPFONT ( 18 , 110 ) ;
-        Size = MAP_APPFONT ( 53 , 8 ) ;
-        Text[ en-US ] = "Server ~name";
-    };
-    Edit  ED_SERVER
-    {
-        HelpID = "sw:Edit:DLG_MM_SERVERAUTHENTICATION:ED_SERVER";
-        Pos = MAP_APPFONT ( 78 , 108 ) ;
-        Size = MAP_APPFONT ( 115 , 12 ) ;
-        Border = TRUE;
-    };
-    FixedText FT_PORT
-    {
-        Pos = MAP_APPFONT ( 195 , 110 ) ;
-        Size = MAP_APPFONT ( 20 , 10 ) ;
-        Right = TRUE;
-        Text[ en-US ] = "P~ort";
-    };
-    NumericField NF_PORT
-    {
-        HelpID = "sw:NumericField:DLG_MM_SERVERAUTHENTICATION:NF_PORT";
-        Pos = MAP_APPFONT ( 219 , 108 ) ;
-        Size = MAP_APPFONT ( 25 , 12 ) ;
-        Border = TRUE;
-        Left = TRUE ;
-        First = 1 ;
-        Minimum = 1 ;
-        Maximum = 65535;
-        Repeat = TRUE ;
-        Spin = FALSE ;
-        TabStop = TRUE ;
-    };
-    FixedText FT_PROTOCOL
-    {
-        Pos = MAP_APPFONT ( 18 , 126 ) ;
-        Size = MAP_APPFONT ( 53 , 8 ) ;
-        Text[ en-US ] = "Type";
-    };
-    RadioButton RB_POP3
-    {
-        HelpID = "sw:RadioButton:DLG_MM_SERVERAUTHENTICATION:RB_POP3";
-        Pos = MAP_APPFONT ( 78 , 125 ) ;
-        Size = MAP_APPFONT ( 115 , 10 ) ;
-        Text[ en-US ] = "~POP 3";
-    };
-    RadioButton RB_IMAP
-    {
-        HelpID = "sw:RadioButton:DLG_MM_SERVERAUTHENTICATION:RB_IMAP";
-        Pos = MAP_APPFONT ( 78 , 138 ) ;
-        Size = MAP_APPFONT ( 115 , 10 ) ;
-        Text[ en-US ] = "~IMAP";
-    };
-    FixedText FT_INUSERNAME
-    {
-        Pos = MAP_APPFONT ( 18 , 152 ) ;
-        Size = MAP_APPFONT ( 53 , 8 ) ;
-        Text[ en-US ] = "Us~er name";
-    };
-    Edit ED_INUSERNAME
-    {
-        HelpID = "sw:Edit:DLG_MM_SERVERAUTHENTICATION:ED_INUSERNAME";
-        Pos = MAP_APPFONT ( 78 , 150 ) ;
-        Size = MAP_APPFONT ( 115 , 12 ) ;
-        Border = TRUE;
-    };
-    FixedText FT_INPASSWORD
-    {
-        Pos = MAP_APPFONT ( 18 , 167 ) ;
-        Size = MAP_APPFONT ( 53 , 8 ) ;
-        Text[ en-US ] = "Pass~word";
-    };
-    Edit ED_INPASSWORD
-    {
-        HelpID = "sw:Edit:DLG_MM_SERVERAUTHENTICATION:ED_INPASSWORD";
-        Pos = MAP_APPFONT ( 78 , 165 ) ;
-        Size = MAP_APPFONT ( 115 , 12 ) ;
-        Border = TRUE;
-        PassWord = TRUE;
-    };
-    FixedLine FL_SEPARATOR
-    {
-        Pos = MAP_APPFONT ( 0 , 183 ) ;
-        Size = MAP_APPFONT ( 250 , 8 ) ;
-    };
-    OKButton PB_OK
-    {
-        Pos = MAP_APPFONT ( 85 , 191 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-    };
-    CancelButton PB_CANCEL
-    {
-        Pos = MAP_APPFONT ( 138 , 191 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-    };
-    HelpButton PB_HELP
-    {
-        Pos = MAP_APPFONT ( 194 , 191 ) ;
-        Size = MAP_APPFONT ( 50 , 14 ) ;
-    };
-};
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/ui/inc/mailconfigpage.hxx b/sw/source/ui/inc/mailconfigpage.hxx
index f6db44f..2329291 100644
--- a/sw/source/ui/inc/mailconfigpage.hxx
+++ b/sw/source/ui/inc/mailconfigpage.hxx
@@ -33,30 +33,20 @@ class SwMailConfigPage : public SfxTabPage
 {
     friend class SwTestAccountSettingsDialog;
 
-    FixedLine       m_aIdentityFL;
+    Edit*            m_pDisplayNameED;
+    Edit*            m_pAddressED;
 
-    FixedText       m_aDisplayNameFT;
-    Edit            m_aDisplayNameED;
-    FixedText       m_aAddressFT;
-    Edit            m_aAddressED;
+    CheckBox*        m_pReplyToCB;
+    FixedText*        m_pReplyToFT;
+    Edit*            m_pReplyToED;
 
-    CheckBox        m_aReplyToCB;
-    FixedText       m_aReplyToFT;
-    Edit            m_aReplyToED;
+    Edit*            m_pServerED;
+    NumericField*    m_pPortNF;
 
-    FixedLine       m_aSMTPFL;
+    CheckBox*        m_pSecureCB;
 
-    FixedText       m_aServerFT;
-    Edit            m_aServerED;
-    FixedText       m_aPortFT;
-    NumericField    m_aPortNF;
-
-    CheckBox        m_aSecureCB;
-
-    PushButton      m_aServerAuthenticationPB;
-
-    FixedLine       m_aSeparatorFL;
-    PushButton      m_aTestPB;
+    PushButton*      m_pServerAuthenticationPB;
+    PushButton*      m_pTestPB;
 
     SwMailMergeConfigItem*  m_pConfigItem;
 
diff --git a/sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui b/sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui
new file mode 100644
index 0000000..7b67cc2
--- /dev/null
+++ b/sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui
@@ -0,0 +1,474 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <!-- interface-requires gtk+ 3.0 -->
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="lower">1</property>
+    <property name="upper">65535</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkDialog" id="AuthenticationSettingsDialog">
+    <property name="can_focus">False</property>
+    <property name="border_width">5</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkBox" id="dialog-vbox1">
+        <property name="can_focus">False</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">12</property>
+        <child internal-child="action_area">
+          <object class="GtkButtonBox" id="dialog-action_area1">
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="ok">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="cancel">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="help">
+                <property name="label">gtk-help</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkGrid" id="grid1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="hexpand">True</property>
+            <property name="vexpand">True</property>
+            <property name="row_spacing">6</property>
+            <property name="column_spacing">12</property>
+            <child>
+              <object class="GtkCheckButton" id="authentication">
+                <property name="label" translatable="yes">The outgoing mail server (SMTP) requires au_thentication</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">False</property>
+                <property name="hexpand">True</property>
+                <property name="use_underline">True</property>
+                <property name="xalign">0</property>
+                <property name="draw_indicator">True</property>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">0</property>
+                <property name="width">4</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkRadioButton" id="seperateauthentication">
+                <property name="label" translatable="yes">The outgoing mail server (SMTP) requires _separate authentication</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">False</property>
+                <property name="margin_left">12</property>
+                <property name="hexpand">True</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">smtpafterpop</property>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">1</property>
+                <property name="width">4</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="label1">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Outgoing mail server:</property>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">2</property>
+                <property name="width">4</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkEntry" id="username">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hexpand">True</property>
+                <property name="invisible_char">●</property>
+                <property name="width_chars">40</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="username_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">_User name:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">username</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="outpassword">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hexpand">True</property>
+                <property name="visibility">False</property>
+                <property name="invisible_char">●</property>
+                <property name="width_chars">40</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">4</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="outpassword_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">_Password:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">outpassword</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="GtkRadioButton" id="smtpafterpop">
+                <property name="label" translatable="yes">The outgoing mail server uses the same authentication as the _incoming mail server. Enter the
+settings of the incoming mail server.</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">False</property>
+                <property name="margin_left">12</property>
+                <property name="hexpand">True</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">seperateauthentication</property>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">5</property>
+                <property name="width">4</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="label2">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Incoming mail server:</property>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">6</property>
+                <property name="width">4</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkEntry" id="server">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hexpand">True</property>
+                <property name="invisible_char">●</property>
+                <property name="width_chars">40</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">7</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="server_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Server _name:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">server</property>
+              </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="GtkSpinButton" id="port">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="invisible_char">●</property>
+                <property name="width_chars">3</property>
+                <property name="adjustment">adjustment1</property>
+              </object>
+              <packing>
+                <property name="left_attach">3</property>
+                <property name="top_attach">7</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="port_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">1</property>
+                <property name="label" translatable="yes">P_ort:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">port</property>
+              </object>
+              <packing>
+                <property name="left_attach">2</property>
+                <property name="top_attach">7</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="label3">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Type:</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="pop3">
+                <property name="label" translatable="yes">_POP3</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">imap</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">8</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkRadioButton" id="imap">
+                <property name="label" translatable="yes">_IMAP</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">pop3</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">9</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkEntry" id="inusername">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hexpand">True</property>
+                <property name="invisible_char">●</property>
+                <property name="width_chars">40</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">10</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkEntry" id="inpassword">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hexpand">True</property>
+                <property name="visibility">False</property>
+                <property name="invisible_char">●</property>
+                <property name="width_chars">40</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">11</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="inusername_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Us_er name:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">inusername</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="GtkLabel" id="inpassword_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="margin_left">24</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Pass_word:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">inpassword</property>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">11</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="0">ok</action-widget>
+      <action-widget response="0">cancel</action-widget>
+      <action-widget response="0">help</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/sw/uiconfig/swriter/ui/mailconfigpage.ui b/sw/uiconfig/swriter/ui/mailconfigpage.ui
new file mode 100644
index 0000000..387a2ca
--- /dev/null
+++ b/sw/uiconfig/swriter/ui/mailconfigpage.ui
@@ -0,0 +1,366 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <!-- interface-requires gtk+ 3.0 -->
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="lower">1</property>
+    <property name="upper">65535</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkBox" id="MailConfigPage">
+    <property name="visible">True</property>
+    <property name="can_focus">False</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="vexpand">True</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="hexpand">True</property>
+                <property name="row_spacing">6</property>
+                <property name="column_spacing">12</property>
+                <child>
+                  <object class="GtkEntry" id="displayname">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="hexpand">True</property>
+                    <property name="invisible_char">●</property>
+                    <property name="input_purpose">name</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="GtkEntry" id="address">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="hexpand">True</property>
+                    <property name="invisible_char">●</property>
+                    <property name="input_purpose">email</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="GtkEntry" id="replyto">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="hexpand">True</property>
+                    <property name="invisible_char">●</property>
+                    <property name="input_purpose">email</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="displayname_label">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">_Your name:</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">displayname</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="GtkLabel" id="address_label">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">_E-Mail address:</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">address</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="GtkCheckButton" id="replytocb">
+                    <property name="label" translatable="yes">Send replies to _different e-mail address</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">2</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="replyto_label">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="margin_left">12</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">_Reply address:</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">replyto</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="label1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="label" translatable="yes">User information</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="frame2">
+        <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>
+                <property name="column_spacing">12</property>
+                <child>
+                  <object class="GtkCheckButton" id="secure">
+                    <property name="label" translatable="yes">_Use secure connection (SSL)</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="hexpand">True</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">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>
+                <child>
+                  <object class="GtkGrid" id="grid3">
+                    <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="GtkEntry" id="server">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="hexpand">True</property>
+                        <property name="invisible_char">●</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="GtkSpinButton" id="port">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">●</property>
+                        <property name="adjustment">adjustment1</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>
+                    <child>
+                      <object class="GtkLabel" id="port_label">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0.75</property>
+                        <property name="label" translatable="yes">_Port:</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">port</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="GtkLabel" id="server_label">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">_Server name:</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">server</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>
+                  </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="GtkButtonBox" id="buttonbox1">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="halign">center</property>
+                    <property name="margin_right">12</property>
+                    <property name="orientation">vertical</property>
+                    <property name="layout_style">center</property>
+                    <child>
+                      <object class="GtkButton" id="serverauthentication">
+                        <property name="label" translatable="yes">Server Au_thentication</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="expand">False</property>
+                        <property name="fill">True</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </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>
+            <property name="label" translatable="yes">Outgoing server (SMTP) Settings</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>
+    <child>
+      <object class="GtkButtonBox" id="buttonbox2">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="halign">center</property>
+        <property name="orientation">vertical</property>
+        <property name="layout_style">center</property>
+        <child>
+          <object class="GtkButton" id="test">
+            <property name="label" translatable="yes">Test S_ettings...</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="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">2</property>
+      </packing>
+    </child>
+  </object>
+</interface>


More information about the Libreoffice-commits mailing list