[Libreoffice-commits] core.git: cui/source include/vcl

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Thu Feb 14 21:03:29 UTC 2019


 cui/source/inc/tabstpge.hxx      |    2 ++
 cui/source/tabpages/tabstpge.cxx |   16 ++++++++++------
 include/vcl/weld.hxx             |    2 +-
 3 files changed, 13 insertions(+), 7 deletions(-)

New commits:
commit 038634b63e997db80c09af3c6493364fa4431bcf
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Feb 14 12:36:29 2019 +0000
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Thu Feb 14 22:02:49 2019 +0100

    Resolves: tdf#123426 don't reformat tabstop pos while editing
    
    we want to know what it would format as, but we don't want to do
    the formatting during typing
    
    Change-Id: I817798adf5b3f9325682f43b92fe107659803b4f
    Reviewed-on: https://gerrit.libreoffice.org/67819
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/cui/source/inc/tabstpge.hxx b/cui/source/inc/tabstpge.hxx
index f3f10c4a3435..7ad63e4cbf38 100644
--- a/cui/source/inc/tabstpge.hxx
+++ b/cui/source/inc/tabstpge.hxx
@@ -130,6 +130,8 @@ private:
     void            SetFillAndTabType_Impl();
     void            NewHdl_Impl(const weld::Button*);
 
+    OUString        FormatTab();
+
     // Handler
     DECL_LINK(NewHdl_Impl, weld::Button&, void);
     DECL_LINK(DelHdl_Impl, weld::Button&, void);
diff --git a/cui/source/tabpages/tabstpge.cxx b/cui/source/tabpages/tabstpge.cxx
index bc2ac9a6a4de..ae4f559a43b1 100644
--- a/cui/source/tabpages/tabstpge.cxx
+++ b/cui/source/tabpages/tabstpge.cxx
@@ -434,6 +434,7 @@ void SvxTabulatorTabPage::NewHdl_Impl(const weld::Button* pBtn)
 {
     // Add a new one and select it
     // Get the value from the display
+    ReformatHdl_Impl(*m_xTabBox);
     m_xTabSpin->set_text(m_xTabBox->get_active_text());
     auto nVal = m_xTabSpin->denormalize(m_xTabSpin->get_value(eDefUnit));
 
@@ -488,8 +489,7 @@ void SvxTabulatorTabPage::NewHdl_Impl(const weld::Button* pBtn)
 
 int SvxTabulatorTabPage::FindCurrentTab()
 {
-    ReformatHdl_Impl(*m_xTabBox);
-    return m_xTabBox->find_text(m_xTabBox->get_active_text());
+    return m_xTabBox->find_text(FormatTab());
 }
 
 IMPL_LINK_NOARG(SvxTabulatorTabPage, DelHdl_Impl, weld::Button&, void)
@@ -632,11 +632,16 @@ IMPL_LINK_NOARG(SvxTabulatorTabPage, SelectHdl_Impl, weld::TreeView&, void)
     }
 }
 
-IMPL_LINK_NOARG(SvxTabulatorTabPage, ReformatHdl_Impl, weld::Widget&, void)
+OUString SvxTabulatorTabPage::FormatTab()
 {
     m_xTabSpin->set_text(m_xTabBox->get_active_text());
-    m_xTabSpin->set_value(m_xTabSpin->get_value(FieldUnit::NONE), FieldUnit::NONE);
-    m_xTabBox->set_entry_text(m_xTabSpin->get_text());
+    m_xTabSpin->reformat();
+    return m_xTabSpin->get_text();
+}
+
+IMPL_LINK_NOARG(SvxTabulatorTabPage, ReformatHdl_Impl, weld::Widget&, void)
+{
+    m_xTabBox->set_entry_text(FormatTab());
 }
 
 IMPL_LINK_NOARG(SvxTabulatorTabPage, ModifyHdl_Impl, weld::ComboBox&, void)
@@ -649,7 +654,6 @@ IMPL_LINK_NOARG(SvxTabulatorTabPage, ModifyHdl_Impl, weld::ComboBox&, void)
 
         m_xTabSpin->set_text(m_xTabBox->get_active_text());
         aCurrentTab.GetTabPos() = m_xTabSpin->denormalize(m_xTabSpin->get_value(eDefUnit));
-
         m_xNewBtn->set_sensitive(false);
         m_xDelBtn->set_sensitive(true);
         return;
diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx
index 806027ca6f48..7a88c60189bf 100644
--- a/include/vcl/weld.hxx
+++ b/include/vcl/weld.hxx
@@ -1096,7 +1096,7 @@ public:
     // typically you only need to call this if set_text (e.g. with "") was
     // previously called to display some arbitrary text instead of the
     // formatted value and now you want to show it as formatted again
-    void reformat() { set_value(get_value(m_eSrcUnit), m_eSrcUnit); }
+    void reformat() { spin_button_output(*m_xSpinButton); }
 
     void set_range(int min, int max, FieldUnit eValueUnit)
     {


More information about the Libreoffice-commits mailing list