tdf#158137 - UI: Part 32 - Unify lockdown behavior of Options dialog

for Writer - Mail Merge, Email Page.

Change-Id: Ibd484a4ae815ad94dd6c418fbe66901a9b84c7fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159741
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
diff --git a/sw/source/ui/config/mailconfigpage.cxx b/sw/source/ui/config/mailconfigpage.cxx
index 468d9f7..0bf9633 100644
--- a/sw/source/ui/config/mailconfigpage.cxx
+++ b/sw/source/ui/config/mailconfigpage.cxx
@@ -21,6 +21,7 @@
#include <mailconfigpage.hxx>
#include <mmconfigitem.hxx>
#include <mailmergehelper.hxx>
#include <officecfg/Office/Writer.hxx>
#include <vcl/svapp.hxx>
#include <vcl/weld.hxx>
#include <comphelper/processfactory.hxx>
@@ -68,23 +69,31 @@ class SwAuthenticationSettingsDialog : public SfxDialogController
    SwMailMergeConfigItem& m_rConfigItem;

    std::unique_ptr<weld::CheckButton> m_xAuthenticationCB;
    std::unique_ptr<weld::Widget>      m_xAuthenticationImg;
    std::unique_ptr<weld::RadioButton> m_xSeparateAuthenticationRB;
    std::unique_ptr<weld::Widget>      m_xSeparateAuthenticationImg;
    std::unique_ptr<weld::RadioButton> m_xSMTPAfterPOPRB;
    std::unique_ptr<weld::Widget>      m_xSMTPAfterPOPImg;
    std::unique_ptr<weld::Label>       m_xOutgoingServerFT;
    std::unique_ptr<weld::Label>       m_xUserNameFT;
    std::unique_ptr<weld::Entry>       m_xUserNameED;
    std::unique_ptr<weld::Widget>      m_xUserNameImg;
    std::unique_ptr<weld::Label>       m_xOutPasswordFT;
    std::unique_ptr<weld::Entry>       m_xOutPasswordED;
    std::unique_ptr<weld::Label>       m_xIncomingServerFT;
    std::unique_ptr<weld::Label>       m_xServerFT;
    std::unique_ptr<weld::Entry>       m_xServerED;
    std::unique_ptr<weld::Widget>      m_xServerImg;
    std::unique_ptr<weld::Label>       m_xPortFT;
    std::unique_ptr<weld::SpinButton>  m_xPortNF;
    std::unique_ptr<weld::Widget>      m_xPortImg;
    std::unique_ptr<weld::Label>       m_xProtocolFT;
    std::unique_ptr<weld::RadioButton> m_xPOP3RB;
    std::unique_ptr<weld::Widget>      m_xPOP3Img;
    std::unique_ptr<weld::RadioButton> m_xIMAPRB;
    std::unique_ptr<weld::Label>       m_xInUsernameFT;
    std::unique_ptr<weld::Entry>       m_xInUsernameED;
    std::unique_ptr<weld::Widget>      m_xInUsernameImg;
    std::unique_ptr<weld::Label>       m_xInPasswordFT;
    std::unique_ptr<weld::Entry>       m_xInPasswordED;
    std::unique_ptr<weld::Button>      m_xOKPB;
@@ -104,13 +113,20 @@ SwMailConfigPage::SwMailConfigPage(weld::Container* pPage, weld::DialogControlle
    : SfxTabPage(pPage, pController, "modules/swriter/ui/mailconfigpage.ui", "MailConfigPage", &rSet)
    , m_pConfigItem(new SwMailMergeConfigItem)
    , m_xDisplayNameED(m_xBuilder->weld_entry("displayname"))
    , m_xDisplayNameImg(m_xBuilder->weld_widget("lockdisplayname"))
    , m_xAddressED(m_xBuilder->weld_entry("address"))
    , m_xAddressImg(m_xBuilder->weld_widget("lockaddress"))
    , m_xReplyToCB(m_xBuilder->weld_check_button("replytocb"))
    , m_xReplyToCBImg(m_xBuilder->weld_widget("lockreplytocb"))
    , m_xReplyToFT(m_xBuilder->weld_label("replyto_label"))
    , m_xReplyToED(m_xBuilder->weld_entry("replyto"))
    , m_xReplyToImg(m_xBuilder->weld_widget("lockreplyto"))
    , m_xServerED(m_xBuilder->weld_entry("server"))
    , m_xServerImg(m_xBuilder->weld_widget("lockserver"))
    , m_xPortNF(m_xBuilder->weld_spin_button("port"))
    , m_xPortImg(m_xBuilder->weld_widget("lockport"))
    , m_xSecureCB(m_xBuilder->weld_check_button("secure"))
    , m_xSecureImg(m_xBuilder->weld_widget("locksecure"))
    , m_xServerAuthenticationPB(m_xBuilder->weld_button("serverauthentication"))
    , m_xTestPB(m_xBuilder->weld_button("test"))
{
@@ -184,16 +200,34 @@ bool SwMailConfigPage::FillItemSet( SfxItemSet* /*rSet*/ )
void SwMailConfigPage::Reset( const SfxItemSet* /*rSet*/ )
{
    m_xDisplayNameED->set_text(m_pConfigItem->GetMailDisplayName());
    m_xAddressED->set_text(m_pConfigItem->GetMailAddress());
    m_xDisplayNameED->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::MailDisplayName::isReadOnly());
    m_xDisplayNameImg->set_visible(officecfg::Office::Writer::MailMergeWizard::MailDisplayName::isReadOnly());

    m_xReplyToED->set_text(m_pConfigItem->GetMailReplyTo()) ;
    m_xAddressED->set_text(m_pConfigItem->GetMailAddress());
    m_xAddressED->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::MailAddress::isReadOnly());
    m_xAddressImg->set_visible(officecfg::Office::Writer::MailMergeWizard::MailAddress::isReadOnly());

    m_xReplyToED->set_text(m_pConfigItem->GetMailReplyTo());
    m_xReplyToED->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::MailReplyTo::isReadOnly());
    m_xReplyToImg->set_visible(officecfg::Office::Writer::MailMergeWizard::MailReplyTo::isReadOnly());

    m_xReplyToCB->set_active(m_pConfigItem->IsMailReplyTo());
    m_xReplyToCB->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::IsMailReplyTo::isReadOnly());
    m_xReplyToCBImg->set_visible(officecfg::Office::Writer::MailMergeWizard::IsMailReplyTo::isReadOnly());

    ReplyToHdl(*m_xReplyToCB);

    m_xServerED->set_text(m_pConfigItem->GetMailServer());
    m_xServerED->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::MailServer::isReadOnly());
    m_xServerImg->set_visible(officecfg::Office::Writer::MailMergeWizard::MailServer::isReadOnly());

    m_xPortNF->set_value(m_pConfigItem->GetMailPort());
    m_xPortNF->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::MailPort::isReadOnly());
    m_xPortImg->set_visible(officecfg::Office::Writer::MailMergeWizard::MailPort::isReadOnly());

    m_xSecureCB->set_active(m_pConfigItem->IsSecureConnection());
    m_xSecureCB->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::IsSecureConnection::isReadOnly());
    m_xSecureImg->set_visible(officecfg::Office::Writer::MailMergeWizard::IsSecureConnection::isReadOnly());

    m_xDisplayNameED->save_value();
    m_xAddressED->save_value();
@@ -206,7 +240,7 @@ void SwMailConfigPage::Reset( const SfxItemSet* /*rSet*/ )

IMPL_LINK(SwMailConfigPage, ReplyToHdl, weld::Toggleable&, rBox, void)
{
    bool bEnable = rBox.get_active();
    bool bEnable = rBox.get_active() && !m_xReplyToImg->get_visible();
    m_xReplyToFT->set_sensitive(bEnable);
    m_xReplyToED->set_sensitive(bEnable);
}
@@ -392,23 +426,31 @@ SwAuthenticationSettingsDialog::SwAuthenticationSettingsDialog(
    : SfxDialogController(pParent, "modules/swriter/ui/authenticationsettingsdialog.ui", "AuthenticationSettingsDialog")
    , m_rConfigItem(rItem)
    , m_xAuthenticationCB(m_xBuilder->weld_check_button("authentication"))
    , m_xAuthenticationImg(m_xBuilder->weld_widget("lockauthentication"))
    , m_xSeparateAuthenticationRB(m_xBuilder->weld_radio_button("separateauthentication"))
    , m_xSeparateAuthenticationImg(m_xBuilder->weld_widget("lockseparaauth"))
    , m_xSMTPAfterPOPRB(m_xBuilder->weld_radio_button("smtpafterpop"))
    , m_xSMTPAfterPOPImg(m_xBuilder->weld_widget("locksmtpafterpop"))
    , m_xOutgoingServerFT(m_xBuilder->weld_label("label1"))
    , m_xUserNameFT(m_xBuilder->weld_label("username_label"))
    , m_xUserNameED(m_xBuilder->weld_entry("username"))
    , m_xUserNameImg(m_xBuilder->weld_widget("lockusername"))
    , m_xOutPasswordFT(m_xBuilder->weld_label("outpassword_label"))
    , m_xOutPasswordED(m_xBuilder->weld_entry("outpassword"))
    , m_xIncomingServerFT(m_xBuilder->weld_label("label2"))
    , m_xServerFT(m_xBuilder->weld_label("server_label"))
    , m_xServerED(m_xBuilder->weld_entry("server"))
    , m_xServerImg(m_xBuilder->weld_widget("lockserver"))
    , m_xPortFT(m_xBuilder->weld_label("port_label"))
    , m_xPortNF(m_xBuilder->weld_spin_button("port"))
    , m_xPortImg(m_xBuilder->weld_widget("lockport"))
    , m_xProtocolFT(m_xBuilder->weld_label("label3"))
    , m_xPOP3RB(m_xBuilder->weld_radio_button("pop3"))
    , m_xPOP3Img(m_xBuilder->weld_widget("lockpop3"))
    , m_xIMAPRB(m_xBuilder->weld_radio_button("imap"))
    , m_xInUsernameFT(m_xBuilder->weld_label("inusername_label"))
    , m_xInUsernameED(m_xBuilder->weld_entry("inusername"))
    , m_xInUsernameImg(m_xBuilder->weld_widget("lockinusername"))
    , m_xInPasswordFT(m_xBuilder->weld_label("inpassword_label"))
    , m_xInPasswordED(m_xBuilder->weld_entry("inpassword"))
    , m_xOKPB(m_xBuilder->weld_button("ok"))
@@ -421,6 +463,8 @@ SwAuthenticationSettingsDialog::SwAuthenticationSettingsDialog(
    m_xPOP3RB->connect_toggled(LINK(this, SwAuthenticationSettingsDialog, InServerHdl_Impl));

    m_xAuthenticationCB->set_active(m_rConfigItem.IsAuthentication());
    m_xAuthenticationCB->set_sensitive(!officecfg::Office::Writer::MailMergeWizard::IsAuthentication::isReadOnly());
    m_xAuthenticationImg->set_visible(officecfg::Office::Writer::MailMergeWizard::IsAuthentication::isReadOnly());
    if (m_rConfigItem.IsSMTPAfterPOP())
        m_xSMTPAfterPOPRB->set_active(true);
    else
@@ -469,6 +513,14 @@ IMPL_LINK_NOARG(SwAuthenticationSettingsDialog, RadioButtonHdl_Impl, weld::Toggl
    bool bNotSeparate = !bSeparate && bIsEnabled;
    bSeparate &= bIsEnabled;

    bool bReadOnly = officecfg::Office::Writer::MailMergeWizard::IsSMPTAfterPOP::isReadOnly();
    if (bSeparate || bNotSeparate)
    {
        m_xSeparateAuthenticationRB->set_sensitive(!bReadOnly);
        m_xSeparateAuthenticationImg->set_visible(bReadOnly);
        m_xSMTPAfterPOPRB->set_sensitive(!bReadOnly);
        m_xSMTPAfterPOPImg->set_visible(bReadOnly);
    }
    if (bSeparate && m_xUserNameED->get_text().isEmpty())
        m_xUserNameED->set_text(m_rConfigItem.GetMailAddress());
    else if (!bSeparate && m_xUserNameED->get_text() == m_rConfigItem.GetMailAddress())
@@ -481,20 +533,37 @@ IMPL_LINK_NOARG(SwAuthenticationSettingsDialog, RadioButtonHdl_Impl, weld::Toggl

    m_xOutgoingServerFT->set_sensitive(bSeparate);
    m_xUserNameFT->set_sensitive(bSeparate);
    m_xUserNameED->set_sensitive(bSeparate);

    bReadOnly = officecfg::Office::Writer::MailMergeWizard::MailUserName::isReadOnly();
    m_xUserNameED->set_sensitive(bSeparate && !bReadOnly);
    m_xUserNameImg->set_visible(bReadOnly);

    m_xOutPasswordFT->set_sensitive(bSeparate);
    m_xOutPasswordED->set_sensitive(bSeparate);

    m_xIncomingServerFT->set_sensitive(bNotSeparate);
    m_xServerFT->set_sensitive(bNotSeparate);
    m_xServerED->set_sensitive(bNotSeparate);

    bReadOnly = officecfg::Office::Writer::MailMergeWizard::InServerName::isReadOnly();
    m_xServerED->set_sensitive(bNotSeparate && !bReadOnly);
    m_xServerImg->set_visible(bReadOnly);

    m_xPortFT->set_sensitive(bNotSeparate);
    m_xPortNF->set_sensitive(bNotSeparate);
    bReadOnly = officecfg::Office::Writer::MailMergeWizard::InServerPort::isReadOnly();
    m_xPortNF->set_sensitive(bNotSeparate && !bReadOnly);
    m_xPortImg->set_visible(bReadOnly);

    m_xInUsernameFT->set_sensitive(bNotSeparate);
    m_xInUsernameED->set_sensitive(bNotSeparate);
    bReadOnly = officecfg::Office::Writer::MailMergeWizard::InServerUserName::isReadOnly();
    m_xInUsernameED->set_sensitive(bNotSeparate && !bReadOnly);
    m_xInUsernameImg->set_visible(bReadOnly);
    m_xProtocolFT->set_sensitive(bNotSeparate);
    m_xPOP3RB->set_sensitive(bNotSeparate);
    m_xIMAPRB->set_sensitive(bNotSeparate);

    bReadOnly = officecfg::Office::Writer::MailMergeWizard::InServerIsPOP::isReadOnly();
    m_xPOP3RB->set_sensitive(bNotSeparate && !bReadOnly);
    m_xIMAPRB->set_sensitive(bNotSeparate && !bReadOnly);
    m_xPOP3Img->set_visible(bReadOnly);

    m_xInPasswordFT->set_sensitive(bNotSeparate);
    m_xInPasswordED->set_sensitive(bNotSeparate);
}
diff --git a/sw/source/uibase/inc/mailconfigpage.hxx b/sw/source/uibase/inc/mailconfigpage.hxx
index 4f63527..138739c 100644
--- a/sw/source/uibase/inc/mailconfigpage.hxx
+++ b/sw/source/uibase/inc/mailconfigpage.hxx
@@ -32,13 +32,20 @@ class SwMailConfigPage final : public SfxTabPage
    std::unique_ptr<SwMailMergeConfigItem>  m_pConfigItem;

    std::unique_ptr<weld::Entry> m_xDisplayNameED;
    std::unique_ptr<weld::Widget> m_xDisplayNameImg;
    std::unique_ptr<weld::Entry> m_xAddressED;
    std::unique_ptr<weld::Widget> m_xAddressImg;
    std::unique_ptr<weld::CheckButton> m_xReplyToCB;
    std::unique_ptr<weld::Widget> m_xReplyToCBImg;
    std::unique_ptr<weld::Label> m_xReplyToFT;
    std::unique_ptr<weld::Entry> m_xReplyToED;
    std::unique_ptr<weld::Widget> m_xReplyToImg;
    std::unique_ptr<weld::Entry> m_xServerED;
    std::unique_ptr<weld::Widget> m_xServerImg;
    std::unique_ptr<weld::SpinButton> m_xPortNF;
    std::unique_ptr<weld::Widget> m_xPortImg;
    std::unique_ptr<weld::CheckButton> m_xSecureCB;
    std::unique_ptr<weld::Widget> m_xSecureImg;
    std::unique_ptr<weld::Button> m_xServerAuthenticationPB;
    std::unique_ptr<weld::Button> m_xTestPB;

diff --git a/sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui b/sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui
index aa81dd1..c2cc97b 100644
--- a/sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui
+++ b/sw/uiconfig/swriter/ui/authenticationsettingsdialog.ui
@@ -79,7 +79,7 @@
          </packing>
        </child>
        <child>
          <!-- n-columns=2 n-rows=13 -->
          <!-- n-columns=3 n-rows=13 -->
          <object class="GtkGrid" id="grid1">
            <property name="visible">True</property>
            <property name="can-focus">False</property>
@@ -102,7 +102,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">0</property>
                <property name="width">2</property>
              </packing>
@@ -124,7 +124,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">1</property>
                <property name="width">2</property>
              </packing>
@@ -138,7 +138,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">2</property>
                <property name="width">2</property>
              </packing>
@@ -158,7 +158,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">3</property>
              </packing>
            </child>
@@ -173,7 +173,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">3</property>
              </packing>
            </child>
@@ -194,7 +194,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">4</property>
              </packing>
            </child>
@@ -209,7 +209,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">4</property>
              </packing>
            </child>
@@ -230,7 +230,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">5</property>
                <property name="width">2</property>
              </packing>
@@ -244,7 +244,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">6</property>
                <property name="width">2</property>
              </packing>
@@ -264,7 +264,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">7</property>
              </packing>
            </child>
@@ -279,7 +279,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">7</property>
              </packing>
            </child>
@@ -299,7 +299,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">8</property>
              </packing>
            </child>
@@ -313,7 +313,7 @@
                <property name="yalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">9</property>
                <property name="height">2</property>
              </packing>
@@ -334,7 +334,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">9</property>
              </packing>
            </child>
@@ -354,7 +354,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">10</property>
              </packing>
            </child>
@@ -373,7 +373,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">11</property>
              </packing>
            </child>
@@ -394,7 +394,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">12</property>
              </packing>
            </child>
@@ -409,7 +409,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">11</property>
              </packing>
            </child>
@@ -424,7 +424,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">12</property>
              </packing>
            </child>
@@ -439,10 +439,129 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="top-attach">8</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockauthentication">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockseparaauth">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">1</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockusername">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">3</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="locksmtpafterpop">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">5</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockserver">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">7</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockport">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">8</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockpop3">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">9</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockinusername">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">11</property>
              </packing>
            </child>
            <child>
              <placeholder/>
            </child>
            <child>
              <placeholder/>
            </child>
            <child>
              <placeholder/>
            </child>
            <child>
              <placeholder/>
            </child>
            <child>
              <placeholder/>
            </child>
          </object>
          <packing>
            <property name="expand">False</property>
diff --git a/sw/uiconfig/swriter/ui/mailconfigpage.ui b/sw/uiconfig/swriter/ui/mailconfigpage.ui
index 1b3650d..5a06edb 100644
--- a/sw/uiconfig/swriter/ui/mailconfigpage.ui
+++ b/sw/uiconfig/swriter/ui/mailconfigpage.ui
@@ -24,7 +24,7 @@
        <property name="label-xalign">0</property>
        <property name="shadow-type">none</property>
        <child>
          <!-- n-columns=2 n-rows=4 -->
          <!-- n-columns=3 n-rows=4 -->
          <object class="GtkGrid" id="grid1">
            <property name="visible">True</property>
            <property name="can-focus">False</property>
@@ -47,7 +47,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
@@ -65,7 +65,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">1</property>
              </packing>
            </child>
@@ -83,7 +83,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">3</property>
              </packing>
            </child>
@@ -98,7 +98,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
@@ -113,7 +113,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">1</property>
              </packing>
            </child>
@@ -132,7 +132,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">2</property>
                <property name="width">2</property>
              </packing>
@@ -149,6 +149,58 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="top-attach">3</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockdisplayname">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockaddress">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">1</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockreplytocb">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">2</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockreplyto">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">3</property>
              </packing>
@@ -180,7 +232,7 @@
        <property name="label-xalign">0</property>
        <property name="shadow-type">none</property>
        <child>
          <!-- n-columns=3 n-rows=4 -->
          <!-- n-columns=4 n-rows=4 -->
          <object class="GtkGrid" id="grid2">
            <property name="visible">True</property>
            <property name="can-focus">False</property>
@@ -202,7 +254,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">0</property>
                <property name="width">2</property>
              </packing>
@@ -237,7 +289,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">3</property>
              </packing>
            </child>
@@ -254,7 +306,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">1</property>
                <property name="width">2</property>
              </packing>
@@ -270,7 +322,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
@@ -285,7 +337,7 @@
                <property name="xalign">0</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="left-attach">1</property>
                <property name="top-attach">1</property>
              </packing>
            </child>
@@ -305,7 +357,7 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="left-attach">2</property>
                <property name="top-attach">2</property>
                <property name="width">2</property>
              </packing>
@@ -338,11 +390,53 @@
                </child>
              </object>
              <packing>
                <property name="left-attach">2</property>
                <property name="left-attach">3</property>
                <property name="top-attach">3</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockserver">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">0</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="lockport">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">0</property>
                <property name="top-attach">1</property>
              </packing>
            </child>
            <child>
              <object class="GtkImage" id="locksecure">
                <property name="can-focus">False</property>
                <property name="no-show-all">True</property>
                <property name="halign">center</property>
                <property name="valign">center</property>
                <property name="icon-name">res/lock.png</property>
              </object>
              <packing>
                <property name="left-attach">1</property>
                <property name="top-attach">2</property>
              </packing>
            </child>
            <child>
              <placeholder/>
            </child>
            <child>
              <placeholder/>
            </child>
            <child>