[Libreoffice-commits] core.git: chart2/source chart2/uiconfig extras/source include/vcl solenv/sanitizers vcl/source vcl/unx

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Fri Nov 16 13:52:23 UTC 2018


 chart2/source/controller/dialogs/tp_AxisPositions.cxx |  205 +++----
 chart2/source/controller/dialogs/tp_AxisPositions.hxx |   52 -
 chart2/source/controller/dialogs/tp_Scale.cxx         |  476 +++++++-----------
 chart2/source/controller/dialogs/tp_Scale.hxx         |   69 +-
 chart2/uiconfig/ui/tp_AxisPositions.ui                |   94 +--
 chart2/uiconfig/ui/tp_Scale.ui                        |  168 +++---
 extras/source/glade/libreoffice-catalog.xml.in        |    3 
 include/vcl/weld.hxx                                  |    2 
 solenv/sanitizers/ui/modules/schart.suppr             |    9 
 vcl/source/app/salvtables.cxx                         |   15 
 vcl/source/control/fmtfield.cxx                       |    2 
 vcl/unx/gtk3/gtk3gtkinst.cxx                          |   12 
 12 files changed, 508 insertions(+), 599 deletions(-)

New commits:
commit 11300c48d4350c2f6748a1ca04b919cfae338d41
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Wed Nov 14 21:15:59 2018 +0000
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Fri Nov 16 14:51:52 2018 +0100

    Resolves: tdf#121246 crash in chart dialogs
    
    Change-Id: I3bc720e44f5ea15749e6bc0f0fada3a17a783e23
    Reviewed-on: https://gerrit.libreoffice.org/63463
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/chart2/source/controller/dialogs/tp_AxisPositions.cxx b/chart2/source/controller/dialogs/tp_AxisPositions.cxx
index fc4fbe121299..4c098e6273a5 100644
--- a/chart2/source/controller/dialogs/tp_AxisPositions.cxx
+++ b/chart2/source/controller/dialogs/tp_AxisPositions.cxx
@@ -39,46 +39,29 @@ using namespace ::com::sun::star;
 namespace chart
 {
 
-AxisPositionsTabPage::AxisPositionsTabPage(vcl::Window* pWindow,const SfxItemSet& rInAttrs)
-    : SfxTabPage(pWindow
-                ,"tp_AxisPositions"
-                ,"modules/schart/ui/tp_AxisPositions.ui"
-                , &rInAttrs)
+AxisPositionsTabPage::AxisPositionsTabPage(TabPageParent pWindow,const SfxItemSet& rInAttrs)
+    : SfxTabPage(pWindow ,"modules/schart/ui/tp_AxisPositions.ui" ,"tp_AxisPositions" , &rInAttrs)
     , m_pNumFormatter(nullptr)
     , m_bCrossingAxisIsCategoryAxis(false)
     , m_aCategories()
     , m_bSupportAxisPositioning(false)
+    , m_xFL_AxisLine(m_xBuilder->weld_frame("FL_AXIS_LINE"))
+    , m_xLB_CrossesAt(m_xBuilder->weld_combo_box("LB_CROSSES_OTHER_AXIS_AT"))
+    , m_xED_CrossesAt(m_xBuilder->weld_formatted_spin_button("EDT_CROSSES_OTHER_AXIS_AT"))
+    , m_xED_CrossesAtCategory(m_xBuilder->weld_combo_box( "EDT_CROSSES_OTHER_AXIS_AT_CATEGORY"))
+    , m_xCB_AxisBetweenCategories(m_xBuilder->weld_check_button("CB_AXIS_BETWEEN_CATEGORIES"))
+    , m_xFL_Labels(m_xBuilder->weld_frame("FL_LABELS"))
+    , m_xLB_PlaceLabels(m_xBuilder->weld_combo_box("LB_PLACE_LABELS"))
+    , m_xED_LabelDistance(m_xBuilder->weld_formatted_spin_button("EDT_AXIS_LABEL_DISTANCE"))
+    , m_xCB_TicksInner(m_xBuilder->weld_check_button("CB_TICKS_INNER"))
+    , m_xCB_TicksOuter(m_xBuilder->weld_check_button("CB_TICKS_OUTER"))
+    , m_xCB_MinorInner(m_xBuilder->weld_check_button("CB_MINOR_INNER"))
+    , m_xCB_MinorOuter(m_xBuilder->weld_check_button("CB_MINOR_OUTER"))
+    , m_xBxPlaceTicks(m_xBuilder->weld_widget("boxPLACE_TICKS"))
+    , m_xLB_PlaceTicks(m_xBuilder->weld_combo_box("LB_PLACE_TICKS"))
 {
-    get(m_pFL_AxisLine, "FL_AXIS_LINE");
-    get(m_pLB_CrossesAt,"LB_CROSSES_OTHER_AXIS_AT");
-    get(m_pED_CrossesAt,"EDT_CROSSES_OTHER_AXIS_AT");
-    get(m_pED_CrossesAtCategory, "EDT_CROSSES_OTHER_AXIS_AT_CATEGORY");
-    get(m_pCB_AxisBetweenCategories, "CB_AXIS_BETWEEN_CATEGORIES");
-
-    get(m_pFL_Labels, "FL_LABELS");
-    get(m_pLB_PlaceLabels,"LB_PLACE_LABELS");
-    get(m_pED_LabelDistance,"EDT_AXIS_LABEL_DISTANCE");
-
-    get(m_pCB_TicksInner, "CB_TICKS_INNER");
-    get(m_pCB_TicksOuter, "CB_TICKS_OUTER");
-    get(m_pCB_MinorInner, "CB_MINOR_INNER");
-    get(m_pCB_MinorOuter, "CB_MINOR_OUTER");
-
-    get(m_pBxPlaceTicks, "boxPLACE_TICKS");
-    get(m_pLB_PlaceTicks, "LB_PLACE_TICKS");
-
-    // these are not used/implemented
-//     get(m_pCB_MajorGrid, "CB_MAJOR_GRID");
-//     get(m_pPB_MajorGrid, "PB_MAJOR_GRID");
-//     get(m_pCB_MinorGrid, "CB_MINOR_GRID");
-//     get(m_pPB_MinorGrid, "PB_MINOR_GRID");
-
-    m_pLB_CrossesAt->SetSelectHdl( LINK( this, AxisPositionsTabPage, CrossesAtSelectHdl ) );
-    m_pLB_CrossesAt->SetDropDownLineCount( m_pLB_CrossesAt->GetEntryCount() );
-
-    m_pLB_PlaceLabels->SetSelectHdl( LINK( this, AxisPositionsTabPage, PlaceLabelsSelectHdl ) );
-    m_pLB_PlaceLabels->SetDropDownLineCount( m_pLB_PlaceLabels->GetEntryCount() );
-    m_pLB_PlaceTicks->SetDropDownLineCount( m_pLB_PlaceTicks->GetEntryCount() );
+    m_xLB_CrossesAt->connect_changed(LINK(this, AxisPositionsTabPage, CrossesAtSelectHdl));
+    m_xLB_PlaceLabels->connect_changed(LINK(this, AxisPositionsTabPage, PlaceLabelsSelectHdl));
 }
 
 AxisPositionsTabPage::~AxisPositionsTabPage()
@@ -86,66 +69,47 @@ AxisPositionsTabPage::~AxisPositionsTabPage()
     disposeOnce();
 }
 
-void AxisPositionsTabPage::dispose()
+VclPtr<SfxTabPage> AxisPositionsTabPage::Create(TabPageParent pParent, const SfxItemSet* rOutAttrs)
 {
-    m_pFL_AxisLine.clear();
-    m_pLB_CrossesAt.clear();
-    m_pED_CrossesAt.clear();
-    m_pED_CrossesAtCategory.clear();
-    m_pCB_AxisBetweenCategories.clear();
-    m_pFL_Labels.clear();
-    m_pLB_PlaceLabels.clear();
-    m_pED_LabelDistance.clear();
-    m_pCB_TicksInner.clear();
-    m_pCB_TicksOuter.clear();
-    m_pCB_MinorInner.clear();
-    m_pCB_MinorOuter.clear();
-    m_pBxPlaceTicks.clear();
-    m_pLB_PlaceTicks.clear();
-    SfxTabPage::dispose();
-}
-
-VclPtr<SfxTabPage> AxisPositionsTabPage::Create(TabPageParent pWindow,const SfxItemSet* rOutAttrs)
-{
-    return VclPtr<AxisPositionsTabPage>::Create(pWindow.pParent, *rOutAttrs);
+    return VclPtr<AxisPositionsTabPage>::Create(pParent, *rOutAttrs);
 }
 
 bool AxisPositionsTabPage::FillItemSet(SfxItemSet* rOutAttrs)
 {
     // axis line
-    sal_Int32 nPos = m_pLB_CrossesAt->GetSelectedEntryPos();
+    sal_Int32 nPos = m_xLB_CrossesAt->get_active();
     rOutAttrs->Put( SfxInt32Item( SCHATTR_AXIS_POSITION, nPos+1 ));
     if( nPos==2 )
     {
-        double fCrossover = m_pED_CrossesAt->GetValue();
+        double fCrossover = m_xED_CrossesAt->get_value();
         if( m_bCrossingAxisIsCategoryAxis )
-            fCrossover = m_pED_CrossesAtCategory->GetSelectedEntryPos()+1;
+            fCrossover = m_xED_CrossesAtCategory->get_active()+1;
         rOutAttrs->Put(SvxDoubleItem(fCrossover,SCHATTR_AXIS_POSITION_VALUE));
     }
 
     // labels
-    sal_Int32 nLabelPos = m_pLB_PlaceLabels->GetSelectedEntryPos();
-    if( nLabelPos != LISTBOX_ENTRY_NOTFOUND )
+    sal_Int32 nLabelPos = m_xLB_PlaceLabels->get_active();
+    if (nLabelPos != -1)
         rOutAttrs->Put( SfxInt32Item( SCHATTR_AXIS_LABEL_POSITION, nLabelPos ));
 
     // tick marks
     long nTicks=0;
     long nMinorTicks=0;
 
-    if(m_pCB_MinorInner->IsChecked())
+    if(m_xCB_MinorInner->get_active())
         nMinorTicks|=CHAXIS_MARK_INNER;
-    if(m_pCB_MinorOuter->IsChecked())
+    if(m_xCB_MinorOuter->get_active())
         nMinorTicks|=CHAXIS_MARK_OUTER;
-    if(m_pCB_TicksInner->IsChecked())
+    if(m_xCB_TicksInner->get_active())
         nTicks|=CHAXIS_MARK_INNER;
-    if(m_pCB_TicksOuter->IsChecked())
+    if(m_xCB_TicksOuter->get_active())
         nTicks|=CHAXIS_MARK_OUTER;
 
     rOutAttrs->Put(SfxInt32Item(SCHATTR_AXIS_TICKS,nTicks));
     rOutAttrs->Put(SfxInt32Item(SCHATTR_AXIS_HELPTICKS,nMinorTicks));
 
-    sal_Int32 nMarkPos = m_pLB_PlaceTicks->GetSelectedEntryPos();
-    if( nMarkPos != LISTBOX_ENTRY_NOTFOUND )
+    sal_Int32 nMarkPos = m_xLB_PlaceTicks->get_active();
+    if (nMarkPos != -1)
         rOutAttrs->Put( SfxInt32Item( SCHATTR_AXIS_MARK_POSITION, nMarkPos ));
 
     return true;
@@ -154,26 +118,24 @@ bool AxisPositionsTabPage::FillItemSet(SfxItemSet* rOutAttrs)
 void AxisPositionsTabPage::Reset(const SfxItemSet* rInAttrs)
 {
     //init and enable controls
-    m_pED_CrossesAt->Show( !m_bCrossingAxisIsCategoryAxis );
-    m_pED_CrossesAtCategory->Show( m_bCrossingAxisIsCategoryAxis );
-    const sal_Int32 nMaxCount = LISTBOX_ENTRY_NOTFOUND;
-    if( m_bCrossingAxisIsCategoryAxis )
+    m_xED_CrossesAt->show( !m_bCrossingAxisIsCategoryAxis );
+    m_xED_CrossesAtCategory->show( m_bCrossingAxisIsCategoryAxis );
+    if (m_bCrossingAxisIsCategoryAxis)
     {
-        for( sal_Int32 nN=0; nN<m_aCategories.getLength() && nN<nMaxCount; nN++ )
-            m_pED_CrossesAtCategory->InsertEntry( m_aCategories[nN] );
+        for( sal_Int32 nN=0; nN<m_aCategories.getLength(); nN++ )
+            m_xED_CrossesAtCategory->append_text(m_aCategories[nN]);
 
-        sal_Int32 nCount = m_pED_CrossesAtCategory->GetEntryCount();
+        sal_Int32 nCount = m_xED_CrossesAtCategory->get_count();
         if( nCount>30 )
             nCount=30;
-        m_pED_CrossesAtCategory->SetDropDownLineCount( nCount );
     }
 
-    if( m_pLB_CrossesAt->GetEntryCount() > 3 )
+    if( m_xLB_CrossesAt->get_count() > 3 )
     {
         if( m_bCrossingAxisIsCategoryAxis )
-            m_pLB_CrossesAt->RemoveEntry(2);
+            m_xLB_CrossesAt->remove(2);
         else
-            m_pLB_CrossesAt->RemoveEntry(3);
+            m_xLB_CrossesAt->remove(3);
     }
 
     //fill controls
@@ -193,9 +155,9 @@ void AxisPositionsTabPage::Reset(const SfxItemSet* rInAttrs)
         else
             nPos--;
 
-        if( nPos < m_pLB_CrossesAt->GetEntryCount() )
-            m_pLB_CrossesAt->SelectEntryPos( nPos );
-        CrossesAtSelectHdl( *m_pLB_CrossesAt );
+        if( nPos < m_xLB_CrossesAt->get_count() )
+            m_xLB_CrossesAt->set_active( nPos );
+        CrossesAtSelectHdl( *m_xLB_CrossesAt );
 
         if( rInAttrs->GetItemState(SCHATTR_AXIS_POSITION_VALUE,true, &pPoolItem)== SfxItemState::SET || bZero )
         {
@@ -203,71 +165,71 @@ void AxisPositionsTabPage::Reset(const SfxItemSet* rInAttrs)
             if( !bZero )
                 fCrossover = static_cast<const SvxDoubleItem*>(pPoolItem)->GetValue();
             if( m_bCrossingAxisIsCategoryAxis )
-                m_pED_CrossesAtCategory->SelectEntryPos( static_cast<sal_uInt16>(::rtl::math::round(fCrossover-1.0)) );
+                m_xED_CrossesAtCategory->set_active( static_cast<sal_uInt16>(::rtl::math::round(fCrossover-1.0)) );
             else
-                m_pED_CrossesAt->SetValue(fCrossover);
+                m_xED_CrossesAt->set_value(fCrossover);
         }
         else
         {
-            m_pED_CrossesAtCategory->SetNoSelection();
-            m_pED_CrossesAt->SetTextValue("");
+            m_xED_CrossesAtCategory->set_active(-1);
+            m_xED_CrossesAt->set_text("");
         }
     }
     else
     {
-        m_pLB_CrossesAt->SetNoSelection();
-        m_pED_CrossesAt->Enable( false );
+        m_xLB_CrossesAt->set_active(-1);
+        m_xED_CrossesAt->set_sensitive( false );
     }
 
     // Labels
     if( rInAttrs->GetItemState( SCHATTR_AXIS_LABEL_POSITION, false, &pPoolItem ) == SfxItemState::SET )
     {
         sal_Int32 nPos = static_cast< const SfxInt32Item * >( pPoolItem )->GetValue();
-        if( nPos < m_pLB_PlaceLabels->GetEntryCount() )
-            m_pLB_PlaceLabels->SelectEntryPos( nPos );
+        if( nPos < m_xLB_PlaceLabels->get_count() )
+            m_xLB_PlaceLabels->set_active( nPos );
     }
     else
-        m_pLB_PlaceLabels->SetNoSelection();
-    PlaceLabelsSelectHdl( *m_pLB_PlaceLabels );
+        m_xLB_PlaceLabels->set_active(-1);
+    PlaceLabelsSelectHdl( *m_xLB_PlaceLabels );
 
     // Tick marks
     long nTicks = 0, nMinorTicks = 0;
-    if(rInAttrs->GetItemState(SCHATTR_AXIS_TICKS,true, &pPoolItem)== SfxItemState::SET)
+    if (rInAttrs->GetItemState(SCHATTR_AXIS_TICKS,true, &pPoolItem)== SfxItemState::SET)
         nTicks = static_cast<const SfxInt32Item*>(pPoolItem)->GetValue();
-    if(rInAttrs->GetItemState(SCHATTR_AXIS_HELPTICKS,true, &pPoolItem)== SfxItemState::SET)
+    if (rInAttrs->GetItemState(SCHATTR_AXIS_HELPTICKS,true, &pPoolItem)== SfxItemState::SET)
         nMinorTicks = static_cast<const SfxInt32Item*>(pPoolItem)->GetValue();
 
-    m_pCB_TicksInner->Check(bool(nTicks&CHAXIS_MARK_INNER));
-    m_pCB_TicksOuter->Check(bool(nTicks&CHAXIS_MARK_OUTER));
-    m_pCB_MinorInner->Check(bool(nMinorTicks&CHAXIS_MARK_INNER));
-    m_pCB_MinorOuter->Check(bool(nMinorTicks&CHAXIS_MARK_OUTER));
+    m_xCB_TicksInner->set_active(bool(nTicks&CHAXIS_MARK_INNER));
+    m_xCB_TicksOuter->set_active(bool(nTicks&CHAXIS_MARK_OUTER));
+    m_xCB_MinorInner->set_active(bool(nMinorTicks&CHAXIS_MARK_INNER));
+    m_xCB_MinorOuter->set_active(bool(nMinorTicks&CHAXIS_MARK_OUTER));
 
     // Tick position
     if( rInAttrs->GetItemState( SCHATTR_AXIS_MARK_POSITION, false, &pPoolItem ) == SfxItemState::SET )
     {
         sal_Int32 nPos = static_cast< const SfxInt32Item * >( pPoolItem )->GetValue();
-        if( nPos < m_pLB_PlaceTicks->GetEntryCount() )
-            m_pLB_PlaceTicks->SelectEntryPos( nPos );
+        if( nPos < m_xLB_PlaceTicks->get_count() )
+            m_xLB_PlaceTicks->set_active( nPos );
     }
     else
-        m_pLB_PlaceTicks->SetNoSelection();
+        m_xLB_PlaceTicks->set_active(-1);
 
     if( !m_bSupportAxisPositioning )
     {
-        m_pFL_AxisLine->Show(false);
+        m_xFL_AxisLine->show(false);
 
-        m_pFL_Labels->Show(false);
+        m_xFL_Labels->show(false);
 
-        m_pBxPlaceTicks->Show(false);
+        m_xBxPlaceTicks->show(false);
     }
     else if( !AxisHelper::isAxisPositioningEnabled() )
     {
 
-        m_pFL_AxisLine->Enable(false);
+        m_xFL_AxisLine->set_sensitive(false);
 
-        m_pFL_Labels->Enable(false);
+        m_xFL_Labels->set_sensitive(false);
 
-        m_pBxPlaceTicks->Enable(false);
+        m_xBxPlaceTicks->set_sensitive(false);
 
         //todo: maybe set a special help id to all those controls
     }
@@ -284,14 +246,13 @@ DeactivateRC AxisPositionsTabPage::DeactivatePage(SfxItemSet* pItemSet)
 void AxisPositionsTabPage::SetNumFormatter( SvNumberFormatter* pFormatter )
 {
     m_pNumFormatter = pFormatter;
-    m_pED_CrossesAt->SetFormatter( m_pNumFormatter );
-    m_pED_CrossesAt->UseInputStringForFormatting();
+    m_xED_CrossesAt->set_formatter(m_pNumFormatter);
 
     const SfxPoolItem *pPoolItem = nullptr;
     if( GetItemSet().GetItemState( SCHATTR_AXIS_CROSSING_MAIN_AXIS_NUMBERFORMAT, true, &pPoolItem ) == SfxItemState::SET )
     {
         sal_uLong nFmt = static_cast<sal_uLong>(static_cast<const SfxInt32Item*>(pPoolItem)->GetValue());
-        m_pED_CrossesAt->SetFormatKey( nFmt );
+        m_xED_CrossesAt->set_format_key( nFmt );
     }
 }
 
@@ -310,32 +271,32 @@ void AxisPositionsTabPage::SupportAxisPositioning( bool bSupportAxisPositioning
     m_bSupportAxisPositioning = bSupportAxisPositioning;
 }
 
-IMPL_LINK_NOARG(AxisPositionsTabPage, CrossesAtSelectHdl, ListBox&, void)
+IMPL_LINK_NOARG(AxisPositionsTabPage, CrossesAtSelectHdl, weld::ComboBox&, void)
 {
-    sal_Int32 nPos = m_pLB_CrossesAt->GetSelectedEntryPos();
-    m_pED_CrossesAt->Show( (nPos==2) && !m_bCrossingAxisIsCategoryAxis );
-    m_pED_CrossesAtCategory->Show( (nPos==2) && m_bCrossingAxisIsCategoryAxis );
+    sal_Int32 nPos = m_xLB_CrossesAt->get_active();
+    m_xED_CrossesAt->show( (nPos==2) && !m_bCrossingAxisIsCategoryAxis );
+    m_xED_CrossesAtCategory->show( (nPos==2) && m_bCrossingAxisIsCategoryAxis );
 
-    if( m_pED_CrossesAt->GetText().isEmpty() )
-        m_pED_CrossesAt->SetValue(0.0);
-    if( m_pED_CrossesAtCategory->GetSelectedEntryCount() == 0 )
-        m_pED_CrossesAtCategory->SelectEntryPos(0);
+    if (m_xED_CrossesAt->get_text().isEmpty())
+        m_xED_CrossesAt->set_value(0.0);
+    if (m_xED_CrossesAtCategory->get_active() == -1)
+        m_xED_CrossesAtCategory->set_active(0);
 
-    PlaceLabelsSelectHdl( *m_pLB_PlaceLabels );
+    PlaceLabelsSelectHdl(*m_xLB_PlaceLabels);
 }
 
-IMPL_LINK_NOARG(AxisPositionsTabPage, PlaceLabelsSelectHdl, ListBox&, void)
+IMPL_LINK_NOARG(AxisPositionsTabPage, PlaceLabelsSelectHdl, weld::ComboBox&, void)
 {
-    sal_Int32 nLabelPos = m_pLB_PlaceLabels->GetSelectedEntryPos();
+    sal_Int32 nLabelPos = m_xLB_PlaceLabels->get_active();
 
     bool bEnableTickmarkPlacement = (nLabelPos>1);
     if( bEnableTickmarkPlacement )
     {
-        sal_Int32 nAxisPos = m_pLB_CrossesAt->GetSelectedEntryPos();
+        sal_Int32 nAxisPos = m_xLB_CrossesAt->get_active();
         if( nLabelPos-2 == nAxisPos )
             bEnableTickmarkPlacement=false;
     }
-    m_pBxPlaceTicks->Enable(bEnableTickmarkPlacement);
+    m_xBxPlaceTicks->set_sensitive(bEnableTickmarkPlacement);
 }
 
 } //namespace chart
diff --git a/chart2/source/controller/dialogs/tp_AxisPositions.hxx b/chart2/source/controller/dialogs/tp_AxisPositions.hxx
index 656e04f59367..1b4f2e0b816d 100644
--- a/chart2/source/controller/dialogs/tp_AxisPositions.hxx
+++ b/chart2/source/controller/dialogs/tp_AxisPositions.hxx
@@ -20,9 +20,6 @@
 #define INCLUDED_CHART2_SOURCE_CONTROLLER_DIALOGS_TP_AXISPOSITIONS_HXX
 
 #include <sfx2/tabdlg.hxx>
-#include <vcl/fmtfield.hxx>
-#include <vcl/button.hxx>
-#include <vcl/lstbox.hxx>
 
 namespace chart
 {
@@ -30,9 +27,8 @@ namespace chart
 class AxisPositionsTabPage : public SfxTabPage
 {
 public:
-    AxisPositionsTabPage( vcl::Window* pParent, const SfxItemSet& rInAttrs );
+    AxisPositionsTabPage(TabPageParent pParent, const SfxItemSet& rInAttrs);
     virtual ~AxisPositionsTabPage() override;
-    virtual void dispose() override;
 
     static VclPtr<SfxTabPage> Create( TabPageParent pParent, const SfxItemSet* rInAttrs );
     virtual bool FillItemSet( SfxItemSet* rOutAttrs ) override;
@@ -48,41 +44,35 @@ public:
     void SupportAxisPositioning( bool bSupportAxisPositioning );
 
 private: //methods:
-    DECL_LINK( CrossesAtSelectHdl, ListBox&, void );
-    DECL_LINK( PlaceLabelsSelectHdl, ListBox&, void );
+    DECL_LINK(CrossesAtSelectHdl, weld::ComboBox&, void);
+    DECL_LINK(PlaceLabelsSelectHdl, weld::ComboBox&, void);
 
 private: //member:
-    VclPtr<VclFrame>       m_pFL_AxisLine;
-    VclPtr<ListBox>        m_pLB_CrossesAt;
-    VclPtr<FormattedField> m_pED_CrossesAt;
-    VclPtr<ComboBox>       m_pED_CrossesAtCategory;
-    VclPtr<CheckBox>       m_pCB_AxisBetweenCategories;
+    SvNumberFormatter*  m_pNumFormatter;
 
-    VclPtr<VclFrame>       m_pFL_Labels;
-    VclPtr<ListBox>        m_pLB_PlaceLabels;
-    VclPtr<FormattedField> m_pED_LabelDistance;
+    bool    m_bCrossingAxisIsCategoryAxis;
+    css::uno::Sequence< OUString > m_aCategories;
 
-    VclPtr<CheckBox>       m_pCB_TicksInner;
-    VclPtr<CheckBox>       m_pCB_TicksOuter;
+    bool    m_bSupportAxisPositioning;
 
-    VclPtr<CheckBox>       m_pCB_MinorInner;
-    VclPtr<CheckBox>       m_pCB_MinorOuter;
+    std::unique_ptr<weld::Frame> m_xFL_AxisLine;
+    std::unique_ptr<weld::ComboBox> m_xLB_CrossesAt;
+    std::unique_ptr<weld::FormattedSpinButton> m_xED_CrossesAt;
+    std::unique_ptr<weld::ComboBox> m_xED_CrossesAtCategory;
+    std::unique_ptr<weld::CheckButton> m_xCB_AxisBetweenCategories;
 
-    VclPtr<VclBox>         m_pBxPlaceTicks;
-    VclPtr<ListBox>        m_pLB_PlaceTicks;
+    std::unique_ptr<weld::Frame> m_xFL_Labels;
+    std::unique_ptr<weld::ComboBox> m_xLB_PlaceLabels;
+    std::unique_ptr<weld::FormattedSpinButton> m_xED_LabelDistance;
 
-//     Not implemented
-//     VclPtr<CheckBox>       m_pCB_MajorGrid;
-//     VclPtr<PushButton>     m_pPB_MajorGrid;
-//     VclPtr<CheckBox>       m_pCB_MinorGrid;
-//     VclPtr<PushButton>     m_pPB_MinorGrid;
+    std::unique_ptr<weld::CheckButton> m_xCB_TicksInner;
+    std::unique_ptr<weld::CheckButton> m_xCB_TicksOuter;
 
-    SvNumberFormatter*  m_pNumFormatter;
+    std::unique_ptr<weld::CheckButton> m_xCB_MinorInner;
+    std::unique_ptr<weld::CheckButton> m_xCB_MinorOuter;
 
-    bool    m_bCrossingAxisIsCategoryAxis;
-    css::uno::Sequence< OUString > m_aCategories;
-
-    bool    m_bSupportAxisPositioning;
+    std::unique_ptr<weld::Widget> m_xBxPlaceTicks;
+    std::unique_ptr<weld::ComboBox> m_xLB_PlaceTicks;
 };
 
 } //namespace chart
diff --git a/chart2/source/controller/dialogs/tp_Scale.cxx b/chart2/source/controller/dialogs/tp_Scale.cxx
index b785414e7a7f..21794cf1a9b6 100644
--- a/chart2/source/controller/dialogs/tp_Scale.cxx
+++ b/chart2/source/controller/dialogs/tp_Scale.cxx
@@ -43,81 +43,61 @@ namespace chart
 namespace
 {
 
-void lcl_setValue( FormattedField& rFmtField, double fValue )
+void lcl_setValue(weld::FormattedSpinButton& rFmtField, double fValue)
 {
-    rFmtField.SetValue( fValue );
-    rFmtField.SetDefaultValue( fValue );
+    rFmtField.set_value(fValue);
 }
 
 }
 
-ScaleTabPage::ScaleTabPage(vcl::Window* pWindow,const SfxItemSet& rInAttrs) :
-    SfxTabPage(pWindow
-               , "tp_Scale"
-               , "modules/schart/ui/tp_Scale.ui"
-               , &rInAttrs),
-    fMin(0.0),
-    fMax(0.0),
-    fStepMain(0.0),
-    nStepHelp(0),
-    fOrigin(0.0),
-    m_nTimeResolution(1),
-    m_nMainTimeUnit(1),
-    m_nHelpTimeUnit(1),
-    m_nAxisType(chart2::AxisType::REALNUMBER),
-    m_bAllowDateAxis(false),
-    pNumFormatter(nullptr),
-    m_bShowAxisOrigin(false)
+ScaleTabPage::ScaleTabPage(TabPageParent pWindow,const SfxItemSet& rInAttrs)
+    : SfxTabPage(pWindow, "modules/schart/ui/tp_Scale.ui", "tp_Scale", &rInAttrs)
+    , fMin(0.0)
+    , fMax(0.0)
+    , fStepMain(0.0)
+    , nStepHelp(0)
+    , fOrigin(0.0)
+    , m_nTimeResolution(1)
+    , m_nMainTimeUnit(1)
+    , m_nHelpTimeUnit(1)
+    , m_nAxisType(chart2::AxisType::REALNUMBER)
+    , m_bAllowDateAxis(false)
+    , pNumFormatter(nullptr)
+    , m_bShowAxisOrigin(false)
+    , m_xCbxReverse(m_xBuilder->weld_check_button("CBX_REVERSE"))
+    , m_xCbxLogarithm(m_xBuilder->weld_check_button("CBX_LOGARITHM"))
+    , m_xBxType(m_xBuilder->weld_widget("boxTYPE"))
+    , m_xLB_AxisType(m_xBuilder->weld_combo_box("LB_AXIS_TYPE"))
+    , m_xBxMinMax(m_xBuilder->weld_widget("gridMINMAX"))
+    , m_xFmtFldMin(m_xBuilder->weld_formatted_spin_button("EDT_MIN"))
+    , m_xCbxAutoMin(m_xBuilder->weld_check_button("CBX_AUTO_MIN"))
+    , m_xFmtFldMax(m_xBuilder->weld_formatted_spin_button("EDT_MAX"))
+    , m_xCbxAutoMax(m_xBuilder->weld_check_button("CBX_AUTO_MAX"))
+    , m_xBxResolution(m_xBuilder->weld_widget("boxRESOLUTION"))
+    , m_xLB_TimeResolution(m_xBuilder->weld_combo_box("LB_TIME_RESOLUTION"))
+    , m_xCbx_AutoTimeResolution(m_xBuilder->weld_check_button("CBX_AUTO_TIME_RESOLUTION"))
+    , m_xTxtMain(m_xBuilder->weld_label("TXT_STEP_MAIN"))
+    , m_xFmtFldStepMain(m_xBuilder->weld_formatted_spin_button("EDT_STEP_MAIN"))
+    , m_xMt_MainDateStep(m_xBuilder->weld_spin_button("MT_MAIN_DATE_STEP"))
+    , m_xLB_MainTimeUnit(m_xBuilder->weld_combo_box("LB_MAIN_TIME_UNIT"))
+    , m_xCbxAutoStepMain(m_xBuilder->weld_check_button("CBX_AUTO_STEP_MAIN"))
+    , m_xTxtHelpCount(m_xBuilder->weld_label("TXT_STEP_HELP_COUNT"))
+    , m_xTxtHelp(m_xBuilder->weld_label("TXT_STEP_HELP"))
+    , m_xMtStepHelp(m_xBuilder->weld_spin_button("MT_STEPHELP"))
+    , m_xLB_HelpTimeUnit(m_xBuilder->weld_combo_box("LB_HELP_TIME_UNIT"))
+    , m_xCbxAutoStepHelp(m_xBuilder->weld_check_button("CBX_AUTO_STEP_HELP"))
+    , m_xFmtFldOrigin(m_xBuilder->weld_formatted_spin_button("EDT_ORIGIN"))
+    , m_xCbxAutoOrigin(m_xBuilder->weld_check_button("CBX_AUTO_ORIGIN"))
+    , m_xBxOrigin(m_xBuilder->weld_widget("boxORIGIN"))
 {
-    get(m_pCbxReverse, "CBX_REVERSE");
-    get(m_pCbxLogarithm, "CBX_LOGARITHM");
-    get(m_pLB_AxisType, "LB_AXIS_TYPE");
-    get(m_pBxType,"boxTYPE");
-
-    get(m_pBxMinMax, "gridMINMAX");
-    get(m_pFmtFldMin, "EDT_MIN");
-    get(m_pCbxAutoMin, "CBX_AUTO_MIN");
-    get(m_pFmtFldMax, "EDT_MAX");
-    get(m_pCbxAutoMax, "CBX_AUTO_MAX");
-
-    get(m_pBxResolution, "boxRESOLUTION");
-    get(m_pLB_TimeResolution, "LB_TIME_RESOLUTION");
-    get(m_pCbx_AutoTimeResolution, "CBX_AUTO_TIME_RESOLUTION");
-
-    get(m_pTxtMain, "TXT_STEP_MAIN");
-    get(m_pFmtFldStepMain, "EDT_STEP_MAIN");
-    get(m_pMt_MainDateStep, "MT_MAIN_DATE_STEP");
-    get(m_pLB_MainTimeUnit, "LB_MAIN_TIME_UNIT");
-    get(m_pCbxAutoStepMain, "CBX_AUTO_STEP_MAIN");
-
-    get(m_pMtStepHelp, "MT_STEPHELP");
-    get(m_pLB_HelpTimeUnit, "LB_HELP_TIME_UNIT");
-    get(m_pCbxAutoStepHelp, "CBX_AUTO_STEP_HELP");
-    get(m_pTxtHelpCount,"TXT_STEP_HELP_COUNT");
-    get(m_pTxtHelp,"TXT_STEP_HELP");
-
-    get(m_pBxOrigin,"boxORIGIN");
-    get(m_pFmtFldOrigin, "EDT_ORIGIN");
-    get(m_pCbxAutoOrigin, "CBX_AUTO_ORIGIN");
-
-    m_pCbxAutoMin->SetClickHdl(LINK(this, ScaleTabPage, EnableValueHdl));
-    m_pCbxAutoMax->SetClickHdl(LINK(this, ScaleTabPage, EnableValueHdl));
-    m_pCbxAutoStepMain->SetClickHdl(LINK(this, ScaleTabPage, EnableValueHdl));
-    m_pCbxAutoStepHelp->SetClickHdl(LINK(this, ScaleTabPage, EnableValueHdl));
-    m_pCbxAutoOrigin->SetClickHdl(LINK(this, ScaleTabPage, EnableValueHdl));
-    m_pCbx_AutoTimeResolution->SetClickHdl(LINK(this, ScaleTabPage, EnableValueHdl));
-
-    m_pLB_AxisType->SetDropDownLineCount(3);
-    m_pLB_AxisType->SetSelectHdl(LINK(this, ScaleTabPage, SelectAxisTypeHdl));
-
-    m_pLB_TimeResolution->SetDropDownLineCount(3);
-    m_pLB_MainTimeUnit->SetDropDownLineCount(3);
-    m_pLB_HelpTimeUnit->SetDropDownLineCount(3);
-
-    m_pFmtFldMin->SetModifyHdl(LINK(this, ScaleTabPage, FmtFieldModifiedHdl));
-    m_pFmtFldMax->SetModifyHdl(LINK(this, ScaleTabPage, FmtFieldModifiedHdl));
-    m_pFmtFldStepMain->SetModifyHdl(LINK(this, ScaleTabPage, FmtFieldModifiedHdl));
-    m_pFmtFldOrigin->SetModifyHdl(LINK(this, ScaleTabPage, FmtFieldModifiedHdl));
+    m_xCbxAutoMin->connect_toggled(LINK(this, ScaleTabPage, EnableValueHdl));
+    m_xCbxAutoMax->connect_toggled(LINK(this, ScaleTabPage, EnableValueHdl));
+    m_xCbxAutoStepMain->connect_toggled(LINK(this, ScaleTabPage, EnableValueHdl));
+    m_xCbxAutoStepHelp->connect_toggled(LINK(this, ScaleTabPage, EnableValueHdl));
+    m_xCbxAutoOrigin->connect_toggled(LINK(this, ScaleTabPage, EnableValueHdl));
+    m_xCbx_AutoTimeResolution->connect_toggled(LINK(this, ScaleTabPage, EnableValueHdl));
+
+    m_xLB_AxisType->connect_changed(LINK(this, ScaleTabPage, SelectAxisTypeHdl));
 
     HideAllControls();
 }
@@ -127,43 +107,6 @@ ScaleTabPage::~ScaleTabPage()
     disposeOnce();
 }
 
-void ScaleTabPage::dispose()
-{
-    m_pCbxReverse.clear();
-    m_pCbxLogarithm.clear();
-    m_pBxType.clear();
-    m_pLB_AxisType.clear();
-    m_pBxMinMax.clear();
-    m_pFmtFldMin.clear();
-    m_pCbxAutoMin.clear();
-    m_pFmtFldMax.clear();
-    m_pCbxAutoMax.clear();
-    m_pBxResolution.clear();
-    m_pLB_TimeResolution.clear();
-    m_pCbx_AutoTimeResolution.clear();
-    m_pTxtMain.clear();
-    m_pFmtFldStepMain.clear();
-    m_pMt_MainDateStep.clear();
-    m_pLB_MainTimeUnit.clear();
-    m_pCbxAutoStepMain.clear();
-    m_pTxtHelpCount.clear();
-    m_pTxtHelp.clear();
-    m_pMtStepHelp.clear();
-    m_pLB_HelpTimeUnit.clear();
-    m_pCbxAutoStepHelp.clear();
-    m_pFmtFldOrigin.clear();
-    m_pCbxAutoOrigin.clear();
-    m_pBxOrigin.clear();
-    SfxTabPage::dispose();
-}
-
-IMPL_STATIC_LINK(
-    ScaleTabPage, FmtFieldModifiedHdl, Edit&, rEdit, void )
-{
-    FormattedField& rFmtField = static_cast<FormattedField&>(rEdit);
-    rFmtField.SetDefaultValue( rFmtField.GetValue() );
-}
-
 void ScaleTabPage::EnableControls()
 {
     bool bValueAxis = m_nAxisType == chart2::AxisType::REALNUMBER
@@ -171,77 +114,76 @@ void ScaleTabPage::EnableControls()
                    || m_nAxisType == chart2::AxisType::DATE;
     bool bDateAxis = m_nAxisType == chart2::AxisType::DATE;
 
-    m_pBxType->Show(m_bAllowDateAxis);
+    m_xBxType->show(m_bAllowDateAxis);
 
-    m_pCbxLogarithm->Show( bValueAxis && !bDateAxis );
+    m_xCbxLogarithm->show( bValueAxis && !bDateAxis );
 
-    m_pBxMinMax->Show(bValueAxis);
+    m_xBxMinMax->show(bValueAxis);
 
-    m_pTxtMain->Show( bValueAxis );
-    m_pCbxAutoStepMain->Show( bValueAxis );
+    m_xTxtMain->show( bValueAxis );
+    m_xCbxAutoStepMain->show( bValueAxis );
 
-    m_pTxtHelpCount->Show( bValueAxis && !bDateAxis );
-    m_pTxtHelp->Show( bDateAxis );
-    m_pMtStepHelp->Show( bValueAxis );
-    m_pCbxAutoStepHelp->Show( bValueAxis );
+    m_xTxtHelpCount->show( bValueAxis && !bDateAxis );
+    m_xTxtHelp->show( bDateAxis );
+    m_xMtStepHelp->show( bValueAxis );
+    m_xCbxAutoStepHelp->show( bValueAxis );
 
-    m_pBxOrigin->Show( m_bShowAxisOrigin && bValueAxis );
-    m_pBxResolution->Show( bDateAxis );
+    m_xBxOrigin->show( m_bShowAxisOrigin && bValueAxis );
+    m_xBxResolution->show( bDateAxis );
 
-    bool bWasDateAxis = m_pMt_MainDateStep->IsVisible();
+    bool bWasDateAxis = m_xMt_MainDateStep->get_visible();
     if( bWasDateAxis != bDateAxis )
     {
         //transport value from one to other control
         if( bWasDateAxis )
-            lcl_setValue( *m_pFmtFldStepMain, m_pMt_MainDateStep->GetValue() );
+            lcl_setValue( *m_xFmtFldStepMain, m_xMt_MainDateStep->get_value() );
         else
-            m_pMt_MainDateStep->SetValue( static_cast<sal_Int32>(m_pFmtFldStepMain->GetValue()) );
+            m_xMt_MainDateStep->set_value(m_xFmtFldStepMain->get_value());
     }
 
-    m_pFmtFldStepMain->Show( bValueAxis && !bDateAxis );
-    m_pMt_MainDateStep->Show( bDateAxis );
+    m_xFmtFldStepMain->show( bValueAxis && !bDateAxis );
+    m_xMt_MainDateStep->show( bDateAxis );
 
-    m_pLB_MainTimeUnit->Show( bDateAxis );
-    m_pLB_HelpTimeUnit->Show( bDateAxis );
+    m_xLB_MainTimeUnit->show( bDateAxis );
+    m_xLB_HelpTimeUnit->show( bDateAxis );
 
-    EnableValueHdl(m_pCbxAutoMin);
-    EnableValueHdl(m_pCbxAutoMax);
-    EnableValueHdl(m_pCbxAutoStepMain);
-    EnableValueHdl(m_pCbxAutoStepHelp);
-    EnableValueHdl(m_pCbxAutoOrigin);
-    EnableValueHdl(m_pCbx_AutoTimeResolution);
+    EnableValueHdl(*m_xCbxAutoMin);
+    EnableValueHdl(*m_xCbxAutoMax);
+    EnableValueHdl(*m_xCbxAutoStepMain);
+    EnableValueHdl(*m_xCbxAutoStepHelp);
+    EnableValueHdl(*m_xCbxAutoOrigin);
+    EnableValueHdl(*m_xCbx_AutoTimeResolution);
 }
 
-IMPL_LINK( ScaleTabPage, EnableValueHdl, Button *, pButton, void )
+IMPL_LINK( ScaleTabPage, EnableValueHdl, weld::ToggleButton&, rCbx, void )
 {
-    CheckBox * pCbx = static_cast<CheckBox*>(pButton);
-    bool bEnable = pCbx && !pCbx->IsChecked() && pCbx->IsEnabled();
-    if (pCbx == m_pCbxAutoMin)
+    bool bEnable = !rCbx.get_active() && rCbx.get_sensitive();
+    if (&rCbx == m_xCbxAutoMin.get())
     {
-        m_pFmtFldMin->Enable( bEnable );
+        m_xFmtFldMin->set_sensitive( bEnable );
     }
-    else if (pCbx == m_pCbxAutoMax)
+    else if (&rCbx == m_xCbxAutoMax.get())
     {
-        m_pFmtFldMax->Enable( bEnable );
+        m_xFmtFldMax->set_sensitive( bEnable );
     }
-    else if (pCbx == m_pCbxAutoStepMain)
+    else if (&rCbx == m_xCbxAutoStepMain.get())
     {
-        m_pFmtFldStepMain->Enable( bEnable );
-        m_pMt_MainDateStep->Enable( bEnable );
-        m_pLB_MainTimeUnit->Enable( bEnable );
+        m_xFmtFldStepMain->set_sensitive( bEnable );
+        m_xMt_MainDateStep->set_sensitive( bEnable );
+        m_xLB_MainTimeUnit->set_sensitive( bEnable );
     }
-    else if (pCbx == m_pCbxAutoStepHelp)
+    else if (&rCbx == m_xCbxAutoStepHelp.get())
     {
-        m_pMtStepHelp->Enable( bEnable );
-        m_pLB_HelpTimeUnit->Enable( bEnable );
+        m_xMtStepHelp->set_sensitive( bEnable );
+        m_xLB_HelpTimeUnit->set_sensitive( bEnable );
     }
-    else if (pCbx == m_pCbx_AutoTimeResolution)
+    else if (&rCbx == m_xCbx_AutoTimeResolution.get())
     {
-        m_pLB_TimeResolution->Enable( bEnable );
+        m_xLB_TimeResolution->set_sensitive( bEnable );
     }
-    else if (pCbx == m_pCbxAutoOrigin)
+    else if (&rCbx == m_xCbxAutoOrigin.get())
     {
-        m_pFmtFldOrigin->Enable( bEnable );
+        m_xFmtFldOrigin->set_sensitive( bEnable );
     }
 }
 
@@ -252,22 +194,22 @@ enum AxisTypeListBoxEntry
     TYPE_DATE=2
 };
 
-IMPL_LINK_NOARG(ScaleTabPage, SelectAxisTypeHdl, ListBox&, void)
+IMPL_LINK_NOARG(ScaleTabPage, SelectAxisTypeHdl, weld::ComboBox&, void)
 {
-    const sal_Int32 nPos = m_pLB_AxisType->GetSelectedEntryPos();
+    const sal_Int32 nPos = m_xLB_AxisType->get_active();
     if( nPos==TYPE_DATE )
         m_nAxisType = chart2::AxisType::DATE;
     else
         m_nAxisType = chart2::AxisType::CATEGORY;
     if( m_nAxisType == chart2::AxisType::DATE )
-        m_pCbxLogarithm->Check(false);
+        m_xCbxLogarithm->set_active(false);
     EnableControls();
     SetNumFormat();
 }
 
-VclPtr<SfxTabPage> ScaleTabPage::Create(TabPageParent pWindow,const SfxItemSet* rOutAttrs)
+VclPtr<SfxTabPage> ScaleTabPage::Create(TabPageParent pParent, const SfxItemSet* rOutAttrs)
 {
-    return VclPtr<ScaleTabPage>::Create(pWindow.pParent, *rOutAttrs);
+    return VclPtr<ScaleTabPage>::Create(pParent, *rOutAttrs);
 }
 
 bool ScaleTabPage::FillItemSet(SfxItemSet* rOutAttrs)
@@ -276,27 +218,27 @@ bool ScaleTabPage::FillItemSet(SfxItemSet* rOutAttrs)
 
     rOutAttrs->Put(SfxInt32Item(SCHATTR_AXISTYPE, m_nAxisType));
     if(m_bAllowDateAxis)
-        rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_DATEAXIS, m_pLB_AxisType->GetSelectedEntryPos()==TYPE_AUTO));
+        rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_DATEAXIS, m_xLB_AxisType->get_active()==TYPE_AUTO));
 
     bool bAutoScale = false;
     if( m_nAxisType==chart2::AxisType::CATEGORY )
         bAutoScale = true;//reset scaling for category charts
 
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_MIN      ,bAutoScale || m_pCbxAutoMin->IsChecked()));
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_MAX      ,bAutoScale || m_pCbxAutoMax->IsChecked()));
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_STEP_HELP,bAutoScale || m_pCbxAutoStepHelp->IsChecked()));
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_ORIGIN   ,bAutoScale || m_pCbxAutoOrigin->IsChecked()));
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_LOGARITHM     ,m_pCbxLogarithm->IsChecked()));
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_REVERSE       ,m_pCbxReverse->IsChecked()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_MIN      ,bAutoScale || m_xCbxAutoMin->get_active()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_MAX      ,bAutoScale || m_xCbxAutoMax->get_active()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_STEP_HELP,bAutoScale || m_xCbxAutoStepHelp->get_active()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_ORIGIN   ,bAutoScale || m_xCbxAutoOrigin->get_active()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_LOGARITHM     ,m_xCbxLogarithm->get_active()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_REVERSE       ,m_xCbxReverse->get_active()));
     rOutAttrs->Put(SvxDoubleItem(fMax     , SCHATTR_AXIS_MAX));
     rOutAttrs->Put(SvxDoubleItem(fMin     , SCHATTR_AXIS_MIN));
     rOutAttrs->Put(SfxInt32Item(SCHATTR_AXIS_STEP_HELP, nStepHelp));
     rOutAttrs->Put(SvxDoubleItem(fOrigin  , SCHATTR_AXIS_ORIGIN));
 
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_STEP_MAIN,bAutoScale || m_pCbxAutoStepMain->IsChecked()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_STEP_MAIN,bAutoScale || m_xCbxAutoStepMain->get_active()));
     rOutAttrs->Put(SvxDoubleItem(fStepMain,SCHATTR_AXIS_STEP_MAIN));
 
-    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_TIME_RESOLUTION,bAutoScale || m_pCbx_AutoTimeResolution->IsChecked()));
+    rOutAttrs->Put(SfxBoolItem(SCHATTR_AXIS_AUTO_TIME_RESOLUTION,bAutoScale || m_xCbx_AutoTimeResolution->get_active()));
     rOutAttrs->Put(SfxInt32Item(SCHATTR_AXIS_TIME_RESOLUTION,m_nTimeResolution));
 
     rOutAttrs->Put(SfxInt32Item(SCHATTR_AXIS_MAIN_TIME_UNIT,m_nMainTimeUnit));
@@ -332,79 +274,85 @@ void ScaleTabPage::Reset(const SfxItemSet* rInAttrs)
             nPos=TYPE_AUTO;
         else
             nPos=TYPE_TEXT;
-        m_pLB_AxisType->SelectEntryPos( nPos );
+        m_xLB_AxisType->set_active( nPos );
     }
 
-    m_pCbxAutoMin->Check();
-    m_pCbxAutoMax->Check();
-    m_pCbxAutoStepMain->Check();
-    m_pCbxAutoStepHelp->Check();
-    m_pCbxAutoOrigin->Check();
-    m_pCbx_AutoTimeResolution->Check();
+    m_xCbxAutoMin->set_active(true);
+    m_xCbxAutoMax->set_active(true);
+    m_xCbxAutoStepMain->set_active(true);
+    m_xCbxAutoStepHelp->set_active(true);
+    m_xCbxAutoOrigin->set_active(true);
+    m_xCbx_AutoTimeResolution->set_active(true);
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_AUTO_MIN,true,&pPoolItem) == SfxItemState::SET)
-        m_pCbxAutoMin->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbxAutoMin->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_MIN,true, &pPoolItem) == SfxItemState::SET)
     {
         fMin = static_cast<const SvxDoubleItem*>(pPoolItem)->GetValue();
-        lcl_setValue( *m_pFmtFldMin, fMin );
+        lcl_setValue( *m_xFmtFldMin, fMin );
+        m_xFmtFldMin->save_value();
     }
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_AUTO_MAX,true, &pPoolItem) == SfxItemState::SET)
-        m_pCbxAutoMax->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbxAutoMax->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_MAX,true, &pPoolItem) == SfxItemState::SET)
     {
         fMax = static_cast<const SvxDoubleItem*>(pPoolItem)->GetValue();
-        lcl_setValue( *m_pFmtFldMax, fMax );
+        lcl_setValue( *m_xFmtFldMax, fMax );
+        m_xFmtFldMax->save_value();
     }
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_AUTO_STEP_MAIN,true, &pPoolItem) == SfxItemState::SET)
-        m_pCbxAutoStepMain->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbxAutoStepMain->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_STEP_MAIN,true, &pPoolItem) == SfxItemState::SET)
     {
         fStepMain = static_cast<const SvxDoubleItem*>(pPoolItem)->GetValue();
-        lcl_setValue( *m_pFmtFldStepMain, fStepMain );
-        m_pMt_MainDateStep->SetValue( static_cast<sal_Int32>(fStepMain) );
+        lcl_setValue( *m_xFmtFldStepMain, fStepMain );
+        m_xFmtFldStepMain->save_value();
+        m_xMt_MainDateStep->set_value( static_cast<sal_Int32>(fStepMain) );
+        m_xMt_MainDateStep->save_value();
     }
     if (rInAttrs->GetItemState(SCHATTR_AXIS_AUTO_STEP_HELP,true, &pPoolItem) == SfxItemState::SET)
-        m_pCbxAutoStepHelp->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbxAutoStepHelp->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
     if (rInAttrs->GetItemState(SCHATTR_AXIS_LOGARITHM,true, &pPoolItem) == SfxItemState::SET)
-        m_pCbxLogarithm->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbxLogarithm->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
     if (rInAttrs->GetItemState(SCHATTR_AXIS_REVERSE,true, &pPoolItem) == SfxItemState::SET)
-        m_pCbxReverse->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbxReverse->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
     if (rInAttrs->GetItemState(SCHATTR_AXIS_STEP_HELP,true, &pPoolItem) == SfxItemState::SET)
     {
         nStepHelp = static_cast<const SfxInt32Item*>(pPoolItem)->GetValue();
-        m_pMtStepHelp->SetValue( nStepHelp );
+        m_xMtStepHelp->set_value( nStepHelp );
+        m_xMtStepHelp->save_value();
     }
     if (rInAttrs->GetItemState(SCHATTR_AXIS_AUTO_ORIGIN,true, &pPoolItem) == SfxItemState::SET)
-        m_pCbxAutoOrigin->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbxAutoOrigin->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
     if (rInAttrs->GetItemState(SCHATTR_AXIS_ORIGIN,true, &pPoolItem) == SfxItemState::SET)
     {
         fOrigin = static_cast<const SvxDoubleItem*>(pPoolItem)->GetValue();
-        lcl_setValue( *m_pFmtFldOrigin, fOrigin );
+        lcl_setValue( *m_xFmtFldOrigin, fOrigin );
+        m_xFmtFldOrigin->save_value();
     }
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_AUTO_TIME_RESOLUTION,true, &pPoolItem) == SfxItemState::SET)
-        m_pCbx_AutoTimeResolution->Check(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
+        m_xCbx_AutoTimeResolution->set_active(static_cast<const SfxBoolItem*>(pPoolItem)->GetValue());
     if (rInAttrs->GetItemState(SCHATTR_AXIS_TIME_RESOLUTION,true, &pPoolItem) == SfxItemState::SET)
     {
         m_nTimeResolution = static_cast<const SfxInt32Item*>(pPoolItem)->GetValue();
-        m_pLB_TimeResolution->SelectEntryPos( m_nTimeResolution );
+        m_xLB_TimeResolution->set_active( m_nTimeResolution );
     }
 
     if (rInAttrs->GetItemState(SCHATTR_AXIS_MAIN_TIME_UNIT,true, &pPoolItem) == SfxItemState::SET)
     {
         m_nMainTimeUnit = static_cast<const SfxInt32Item*>(pPoolItem)->GetValue();
-        m_pLB_MainTimeUnit->SelectEntryPos( m_nMainTimeUnit );
+        m_xLB_MainTimeUnit->set_active( m_nMainTimeUnit );
     }
     if (rInAttrs->GetItemState(SCHATTR_AXIS_HELP_TIME_UNIT,true, &pPoolItem) == SfxItemState::SET)
     {
         m_nHelpTimeUnit = static_cast<const SfxInt32Item*>(pPoolItem)->GetValue();
-        m_pLB_HelpTimeUnit->SelectEntryPos( m_nHelpTimeUnit );
+        m_xLB_HelpTimeUnit->set_active( m_nHelpTimeUnit );
     }
 
     EnableControls();
@@ -421,101 +369,101 @@ DeactivateRC ScaleTabPage::DeactivatePage(SfxItemSet* pItemSet)
 
     bool bDateAxis = m_nAxisType == chart2::AxisType::DATE;
 
-    sal_uInt32 nMinMaxOriginFmt = m_pFmtFldMax->GetFormatKey();
+    sal_uInt32 nMinMaxOriginFmt = m_xFmtFldMax->get_format_key();
     if (pNumFormatter->GetType(nMinMaxOriginFmt) == SvNumFormatType::TEXT)
         nMinMaxOriginFmt = 0;
     // numberformat_text cause numbers to fail being numbers...  Shouldn't happen, but can.
-    sal_uInt32 nStepFmt = m_pFmtFldStepMain->GetFormatKey();
+    sal_uInt32 nStepFmt = m_xFmtFldStepMain->get_format_key();
     if (pNumFormatter->GetType(nStepFmt) == SvNumFormatType::TEXT)
         nStepFmt = 0;
 
-    Control* pControl = nullptr;
+    weld::Widget* pControl = nullptr;
     const char* pErrStrId = nullptr;
     double fDummy;
 
-    fMax = m_pFmtFldMax->GetValue();
-    fMin = m_pFmtFldMin->GetValue();
-    fOrigin = m_pFmtFldOrigin->GetValue();
-    fStepMain = bDateAxis ? m_pMt_MainDateStep->GetValue() : m_pFmtFldStepMain->GetValue();
-    nStepHelp = static_cast< sal_Int32 >( m_pMtStepHelp->GetValue());
-    m_nTimeResolution = m_pLB_TimeResolution->GetSelectedEntryPos();
-    m_nMainTimeUnit = m_pLB_MainTimeUnit->GetSelectedEntryPos();
-    m_nHelpTimeUnit = m_pLB_HelpTimeUnit->GetSelectedEntryPos();
+    fMax = m_xFmtFldMax->get_value();
+    fMin = m_xFmtFldMin->get_value();
+    fOrigin = m_xFmtFldOrigin->get_value();
+    fStepMain = bDateAxis ? m_xMt_MainDateStep->get_value() : m_xFmtFldStepMain->get_value();
+    nStepHelp = m_xMtStepHelp->get_value();
+    m_nTimeResolution = m_xLB_TimeResolution->get_active();
+    m_nMainTimeUnit = m_xLB_MainTimeUnit->get_active();
+    m_nHelpTimeUnit = m_xLB_HelpTimeUnit->get_active();
 
     if( m_nAxisType != chart2::AxisType::REALNUMBER )
-        m_pCbxLogarithm->Show( false );
+        m_xCbxLogarithm->show( false );
 
     //check which entries need user action
 
-    if ( m_pCbxLogarithm->IsChecked() &&
-            ( ( !m_pCbxAutoMin->IsChecked() && fMin <= 0.0 )
-             || ( !m_pCbxAutoMax->IsChecked() && fMax <= 0.0 ) ) )
+    if ( m_xCbxLogarithm->get_active() &&
+            ( ( !m_xCbxAutoMin->get_active() && fMin <= 0.0 )
+             || ( !m_xCbxAutoMax->get_active() && fMax <= 0.0 ) ) )
     {
-        pControl = m_pFmtFldMin;
+        pControl = m_xFmtFldMin.get();
         pErrStrId = STR_BAD_LOGARITHM;
     }
     // check for entries that cannot be parsed for the current number format
-    else if ( m_pFmtFldMin->IsModified()
-              && !m_pCbxAutoMin->IsChecked()
-              && !pNumFormatter->IsNumberFormat( m_pFmtFldMin->GetText(), nMinMaxOriginFmt, fDummy))
+    else if ( m_xFmtFldMin->get_value_changed_from_saved()
+              && !m_xCbxAutoMin->get_active()
+              && !pNumFormatter->IsNumberFormat( m_xFmtFldMin->get_text(), nMinMaxOriginFmt, fDummy))
     {
-        pControl = m_pFmtFldMin;
+        pControl = m_xFmtFldMin.get();
         pErrStrId = STR_INVALID_NUMBER;
     }
-    else if ( m_pFmtFldMax->IsModified()
-              && !m_pCbxAutoMax->IsChecked()
-              && !pNumFormatter->IsNumberFormat( m_pFmtFldMax->GetText(), nMinMaxOriginFmt, fDummy))
+    else if ( m_xFmtFldMax->get_value_changed_from_saved()
+              && !m_xCbxAutoMax->get_active()
+              && !pNumFormatter->IsNumberFormat( m_xFmtFldMax->get_text(), nMinMaxOriginFmt, fDummy))
     {
-        pControl = m_pFmtFldMax;
+        pControl = m_xFmtFldMax.get();
         pErrStrId = STR_INVALID_NUMBER;
     }
-    else if ( !bDateAxis && m_pFmtFldStepMain->IsModified()
-              && !m_pCbxAutoStepMain->IsChecked()
-              && !pNumFormatter->IsNumberFormat( m_pFmtFldStepMain->GetText(), nStepFmt, fDummy))
+    else if ( !bDateAxis && m_xFmtFldStepMain->get_value_changed_from_saved()
+              && !m_xCbxAutoStepMain->get_active()
+              && !pNumFormatter->IsNumberFormat( m_xFmtFldStepMain->get_text(), nStepFmt, fDummy))
     {
-        pControl = m_pFmtFldStepMain;
+        pControl = m_xFmtFldStepMain.get();
         pErrStrId = STR_INVALID_NUMBER;
     }
-    else if (m_pFmtFldOrigin->IsModified() && !m_pCbxAutoOrigin->IsChecked() &&
-             !pNumFormatter->IsNumberFormat( m_pFmtFldOrigin->GetText(), nMinMaxOriginFmt, fDummy))
+    else if (m_xFmtFldOrigin->get_value_changed_from_saved() && !m_xCbxAutoOrigin->get_active() &&
+             !pNumFormatter->IsNumberFormat( m_xFmtFldOrigin->get_text(), nMinMaxOriginFmt, fDummy))
     {
-        pControl = m_pFmtFldOrigin;
+        pControl = m_xFmtFldOrigin.get();
         pErrStrId = STR_INVALID_NUMBER;
     }
-    else if (!m_pCbxAutoStepMain->IsChecked() && fStepMain <= 0.0)
+    else if (!m_xCbxAutoStepMain->get_active() && fStepMain <= 0.0)
     {
-        pControl = m_pFmtFldStepMain;
+        pControl = m_xFmtFldStepMain.get();
         pErrStrId = STR_STEP_GT_ZERO;
     }
-    else if (!m_pCbxAutoMax->IsChecked() && !m_pCbxAutoMin->IsChecked() &&
+    else if (!m_xCbxAutoMax->get_active() && !m_xCbxAutoMin->get_active() &&
              fMin >= fMax)
     {
-        pControl = m_pFmtFldMin;
+        pControl = m_xFmtFldMin.get();
         pErrStrId = STR_MIN_GREATER_MAX;
     }
     else if( bDateAxis )
     {
-        if( !m_pCbxAutoStepMain->IsChecked() && !m_pCbxAutoStepHelp->IsChecked() )
+        if( !m_xCbxAutoStepMain->get_active() && !m_xCbxAutoStepHelp->get_active() )
         {
             if( m_nHelpTimeUnit > m_nMainTimeUnit )
             {
-                pControl = m_pLB_MainTimeUnit;
+                pControl = m_xLB_MainTimeUnit.get();
                 pErrStrId = STR_INVALID_INTERVALS;
             }
             else if( m_nHelpTimeUnit == m_nMainTimeUnit && nStepHelp > fStepMain )
             {
-                pControl = m_pLB_MainTimeUnit;
+                pControl = m_xLB_MainTimeUnit.get();
                 pErrStrId = STR_INVALID_INTERVALS;
             }
         }
-        if( !pErrStrId && !m_pCbx_AutoTimeResolution->IsChecked() )
+        if( !pErrStrId && !m_xCbx_AutoTimeResolution->get_active() )
         {
-            if( (!m_pCbxAutoStepMain->IsChecked() && m_nTimeResolution > m_nMainTimeUnit )
+            if( (!m_xCbxAutoStepMain->get_active() && m_nTimeResolution > m_nMainTimeUnit )
                 ||
-                (!m_pCbxAutoStepHelp->IsChecked() && m_nTimeResolution > m_nHelpTimeUnit )
+                (!m_xCbxAutoStepHelp->get_active() && m_nTimeResolution > m_nHelpTimeUnit )
                 )
             {
-                pControl = m_pLB_TimeResolution;
+                pControl = m_xLB_TimeResolution.get();
                 pErrStrId = STR_INVALID_TIME_UNIT;
             }
         }
@@ -533,20 +481,10 @@ DeactivateRC ScaleTabPage::DeactivatePage(SfxItemSet* pItemSet)
 void ScaleTabPage::SetNumFormatter( SvNumberFormatter* pFormatter )
 {
     pNumFormatter = pFormatter;
-    m_pFmtFldMax->SetFormatter( pNumFormatter );
-    m_pFmtFldMin->SetFormatter( pNumFormatter );
-    m_pFmtFldStepMain->SetFormatter( pNumFormatter );
-    m_pFmtFldOrigin->SetFormatter( pNumFormatter );
-
-    // #i6278# allow more decimal places than the output format.  As
-    // the numbers shown in the edit fields are used for input, it makes more
-    // sense to display the values in the input format rather than the output
-    // format.
-    m_pFmtFldMax->UseInputStringForFormatting();
-    m_pFmtFldMin->UseInputStringForFormatting();
-    m_pFmtFldStepMain->UseInputStringForFormatting();
-    m_pFmtFldOrigin->UseInputStringForFormatting();
-
+    m_xFmtFldMax->set_formatter( pNumFormatter );
+    m_xFmtFldMin->set_formatter( pNumFormatter );
+    m_xFmtFldStepMain->set_formatter( pNumFormatter );
+    m_xFmtFldOrigin->set_formatter( pNumFormatter );
     SetNumFormat();
 }
 
@@ -558,9 +496,9 @@ void ScaleTabPage::SetNumFormat()
     {
         sal_uLong nFmt = static_cast<sal_uLong>(static_cast<const SfxInt32Item*>(pPoolItem)->GetValue());
 
-        m_pFmtFldMax->SetFormatKey( nFmt );
-        m_pFmtFldMin->SetFormatKey( nFmt );
-        m_pFmtFldOrigin->SetFormatKey( nFmt );
+        m_xFmtFldMax->set_format_key(nFmt);
+        m_xFmtFldMin->set_format_key(nFmt);
+        m_xFmtFldOrigin->set_format_key(nFmt);
 
         if( pNumFormatter )
         {
@@ -592,13 +530,13 @@ void ScaleTabPage::SetNumFormat()
                 else
                     nFmt = pNumFormatter->GetStandardFormat( SvNumFormatType::DATE );
 
-                m_pFmtFldMax->SetFormatKey( nFmt );
-                m_pFmtFldMin->SetFormatKey( nFmt );
-                m_pFmtFldOrigin->SetFormatKey( nFmt );
+                m_xFmtFldMax->set_format_key(nFmt);
+                m_xFmtFldMin->set_format_key(nFmt);
+                m_xFmtFldOrigin->set_format_key(nFmt);
             }
         }
 
-        m_pFmtFldStepMain->SetFormatKey( nFmt );
+        m_xFmtFldStepMain->set_format_key(nFmt);
     }
 }
 
@@ -609,7 +547,7 @@ void ScaleTabPage::ShowAxisOrigin( bool bShowOrigin )
         m_bShowAxisOrigin = true;
 }
 
-bool ScaleTabPage::ShowWarning(const char* pResIdMessage, Control* pControl /* = NULL */ )
+bool ScaleTabPage::ShowWarning(const char* pResIdMessage, weld::Widget* pControl /* = nullptr */)
 {
     if (pResIdMessage == nullptr)
         return false;
@@ -618,12 +556,12 @@ bool ScaleTabPage::ShowWarning(const char* pResIdMessage, Control* pControl /* =
                                                VclMessageType::Warning, VclButtonsType::Ok,
                                                SchResId(pResIdMessage)));
     xWarn->run();
-    if( pControl )
+    if (pControl)
     {
-        pControl->GrabFocus();
-        Edit* pEdit = dynamic_cast<Edit*>(pControl);
-        if(pEdit)
-            pEdit->SetSelection( Selection( 0, SELECTION_MAX ));
+        pControl->grab_focus();
+        weld::Entry* pEdit = dynamic_cast<weld::Entry*>(pControl);
+        if (pEdit)
+            pEdit->select_region(0, -1);
     }
     return true;
 }
@@ -635,20 +573,20 @@ void ScaleTabPage::HideAllControls()
     // visibility of these controls depend on axis data type, and are
     // set in EnableControls().
 
-    m_pBxType->Hide();
-    m_pCbxLogarithm->Hide();
-    m_pBxMinMax->Hide();
-    m_pTxtMain->Hide();
-    m_pFmtFldStepMain->Hide();
-    m_pMt_MainDateStep->Hide();
-    m_pLB_MainTimeUnit->Hide();
-    m_pCbxAutoStepMain->Hide();
-    m_pTxtHelpCount->Hide();
-    m_pTxtHelp->Hide();
-    m_pMtStepHelp->Hide();
-    m_pCbxAutoStepHelp->Hide();
-    m_pBxOrigin->Hide();
-    m_pBxResolution->Hide();
+    m_xBxType->hide();
+    m_xCbxLogarithm->hide();
+    m_xBxMinMax->hide();
+    m_xTxtMain->hide();
+    m_xFmtFldStepMain->hide();
+    m_xMt_MainDateStep->hide();
+    m_xLB_MainTimeUnit->hide();
+    m_xCbxAutoStepMain->hide();
+    m_xTxtHelpCount->hide();
+    m_xTxtHelp->hide();
+    m_xMtStepHelp->hide();
+    m_xCbxAutoStepHelp->hide();
+    m_xBxOrigin->hide();
+    m_xBxResolution->hide();
 }
 
 } //namespace chart
diff --git a/chart2/source/controller/dialogs/tp_Scale.hxx b/chart2/source/controller/dialogs/tp_Scale.hxx
index 8e6c7aacf266..49902e40dd1b 100644
--- a/chart2/source/controller/dialogs/tp_Scale.hxx
+++ b/chart2/source/controller/dialogs/tp_Scale.hxx
@@ -32,9 +32,8 @@ namespace chart
 class ScaleTabPage : public SfxTabPage
 {
 public:
-    ScaleTabPage( vcl::Window* pParent, const SfxItemSet& rInAttrs );
+    ScaleTabPage(TabPageParent pParent, const SfxItemSet& rInAttrs);
     virtual ~ScaleTabPage() override;
-    virtual void dispose() override;
 
     static VclPtr<SfxTabPage> Create( TabPageParent pParent, const SfxItemSet* rInAttrs );
     virtual bool FillItemSet( SfxItemSet* rOutAttrs ) override;
@@ -48,39 +47,6 @@ public:
     void ShowAxisOrigin( bool bShowOrigin );
 
 private:
-    VclPtr<CheckBox>            m_pCbxReverse;
-    VclPtr<CheckBox>            m_pCbxLogarithm;
-
-    VclPtr<VclBox>              m_pBxType;
-    VclPtr<ListBox>             m_pLB_AxisType;
-
-    VclPtr<VclGrid>              m_pBxMinMax;
-    VclPtr<FormattedField>      m_pFmtFldMin;
-    VclPtr<CheckBox>            m_pCbxAutoMin;
-
-    VclPtr<FormattedField>      m_pFmtFldMax;
-    VclPtr<CheckBox>            m_pCbxAutoMax;
-
-    VclPtr<VclBox>              m_pBxResolution;
-    VclPtr<ListBox>             m_pLB_TimeResolution;
-    VclPtr<CheckBox>            m_pCbx_AutoTimeResolution;
-
-    VclPtr<FixedText>           m_pTxtMain;
-    VclPtr<FormattedField>      m_pFmtFldStepMain;
-    VclPtr<MetricField>         m_pMt_MainDateStep;
-    VclPtr<ListBox>             m_pLB_MainTimeUnit;
-    VclPtr<CheckBox>            m_pCbxAutoStepMain;
-
-    VclPtr<FixedText>           m_pTxtHelpCount;
-    VclPtr<FixedText>           m_pTxtHelp;
-    VclPtr<MetricField>         m_pMtStepHelp;
-    VclPtr<ListBox>             m_pLB_HelpTimeUnit;
-    VclPtr<CheckBox>            m_pCbxAutoStepHelp;
-
-    VclPtr<FormattedField>      m_pFmtFldOrigin;
-    VclPtr<CheckBox>            m_pCbxAutoOrigin;
-    VclPtr<VclBox>              m_pBxOrigin;
-
     double              fMin;
     double              fMax;
     double              fStepMain;
@@ -95,11 +61,36 @@ private:
 
     bool                m_bShowAxisOrigin;
 
+    std::unique_ptr<weld::CheckButton> m_xCbxReverse;
+    std::unique_ptr<weld::CheckButton> m_xCbxLogarithm;
+    std::unique_ptr<weld::Widget> m_xBxType;
+    std::unique_ptr<weld::ComboBox> m_xLB_AxisType;
+    std::unique_ptr<weld::Widget> m_xBxMinMax;
+    std::unique_ptr<weld::FormattedSpinButton> m_xFmtFldMin;
+    std::unique_ptr<weld::CheckButton> m_xCbxAutoMin;
+    std::unique_ptr<weld::FormattedSpinButton> m_xFmtFldMax;
+    std::unique_ptr<weld::CheckButton> m_xCbxAutoMax;
+    std::unique_ptr<weld::Widget> m_xBxResolution;
+    std::unique_ptr<weld::ComboBox> m_xLB_TimeResolution;
+    std::unique_ptr<weld::CheckButton> m_xCbx_AutoTimeResolution;
+    std::unique_ptr<weld::Label> m_xTxtMain;
+    std::unique_ptr<weld::FormattedSpinButton> m_xFmtFldStepMain;
+    std::unique_ptr<weld::SpinButton> m_xMt_MainDateStep;
+    std::unique_ptr<weld::ComboBox> m_xLB_MainTimeUnit;
+    std::unique_ptr<weld::CheckButton> m_xCbxAutoStepMain;
+    std::unique_ptr<weld::Label> m_xTxtHelpCount;
+    std::unique_ptr<weld::Label> m_xTxtHelp;
+    std::unique_ptr<weld::SpinButton> m_xMtStepHelp;
+    std::unique_ptr<weld::ComboBox> m_xLB_HelpTimeUnit;
+    std::unique_ptr<weld::CheckButton> m_xCbxAutoStepHelp;
+    std::unique_ptr<weld::FormattedSpinButton> m_xFmtFldOrigin;
+    std::unique_ptr<weld::CheckButton> m_xCbxAutoOrigin;
+    std::unique_ptr<weld::Widget> m_xBxOrigin;
+
     void EnableControls();
 
-    DECL_LINK( SelectAxisTypeHdl, ListBox&, void );
-    DECL_LINK( EnableValueHdl, Button*, void );
-    DECL_STATIC_LINK( ScaleTabPage, FmtFieldModifiedHdl, Edit&, void);
+    DECL_LINK(SelectAxisTypeHdl, weld::ComboBox&, void);
+    DECL_LINK(EnableValueHdl, weld::ToggleButton&, void);
 
     /** shows a warning window due to an invalid input.
 
@@ -114,7 +105,7 @@ private:
 
         @return false, if nResIdMessage was 0, true otherwise
      */
-    bool ShowWarning(const char* pResIdMessage, Control* pControl);
+    bool ShowWarning(const char* pResIdMessage, weld::Widget* pControl);
 
     void HideAllControls();
 };
diff --git a/chart2/uiconfig/ui/tp_AxisPositions.ui b/chart2/uiconfig/ui/tp_AxisPositions.ui
index fa5cfbedb18f..16fcff3ffe06 100644
--- a/chart2/uiconfig/ui/tp_AxisPositions.ui
+++ b/chart2/uiconfig/ui/tp_AxisPositions.ui
@@ -1,7 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.22.1 -->
 <interface domain="chart">
   <requires lib="gtk+" version="3.18"/>
-  <requires lib="LibreOffice" version="1.0"/>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
   <object class="GtkBox" id="tp_AxisPositions">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
@@ -35,10 +45,10 @@
                       <object class="GtkLabel" id="FT_CROSSES_OTHER_AXIS_AT">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_AxisPositions|FT_CROSSES_OTHER_AXIS_AT">_Cross other axis at</property>
                         <property name="use_underline">True</property>
                         <property name="mnemonic_widget">LB_CROSSES_OTHER_AXIS_AT</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -50,9 +60,6 @@
                       <object class="GtkComboBoxText" id="LB_CROSSES_OTHER_AXIS_AT">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="row_span_column">0</property>
-                        <property name="entry_text_column">0</property>
-                        <property name="id_column">1</property>
                         <items>
                           <item translatable="yes" context="tp_AxisPositions|LB_CROSSES_OTHER_AXIS_AT">Start</item>
                           <item translatable="yes" context="tp_AxisPositions|LB_CROSSES_OTHER_AXIS_AT">End</item>
@@ -67,9 +74,11 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="svtlo-FormattedField" id="EDT_CROSSES_OTHER_AXIS_AT">
+                      <object class="GtkSpinButton" id="EDT_CROSSES_OTHER_AXIS_AT">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                        <property name="can_focus">True</property>
+                        <property name="activates_default">True</property>
+                        <property name="adjustment">adjustment1</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -78,13 +87,14 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkComboBox" id="EDT_CROSSES_OTHER_AXIS_AT_CATEGORY">
+                      <object class="GtkComboBoxText" id="EDT_CROSSES_OTHER_AXIS_AT_CATEGORY">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="has_entry">True</property>
                         <child internal-child="entry">
                           <object class="GtkEntry" id="combobox-entry">
-                            <property name="can_focus">False</property>
+                            <property name="can_focus">True</property>
+                            <property name="activates_default">True</property>
                           </object>
                         </child>
                       </object>
@@ -104,7 +114,7 @@
                 <child>
                   <object class="GtkCheckButton" id="CB_AXIS_BETWEEN_CATEGORIES">
                     <property name="label" translatable="yes" context="tp_AxisPositions|CB_AXIS_BETWEEN_CATEGORIES">Axis _between categories</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -124,8 +134,8 @@
           <object class="GtkLabel" id="TXT_AXIS_LINE">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
-            <property name="xalign">0</property>
             <property name="label" translatable="yes" context="tp_AxisPositions|TXT_AXIS_LINE">Axis Line</property>
+            <property name="xalign">0</property>
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
@@ -165,10 +175,10 @@
                       <object class="GtkLabel" id="FT_PLACE_LABELS">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_AxisPositions|FT_PLACE_LABELS">_Place labels</property>
                         <property name="use_underline">True</property>
                         <property name="mnemonic_widget">LB_PLACE_LABELS</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -180,8 +190,6 @@
                       <object class="GtkComboBoxText" id="LB_PLACE_LABELS">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="entry_text_column">0</property>
-                        <property name="id_column">1</property>
                         <items>
                           <item translatable="yes" context="tp_AxisPositions|LB_PLACE_LABELS">Near axis</item>
                           <item translatable="yes" context="tp_AxisPositions|LB_PLACE_LABELS">Near axis (other side)</item>
@@ -210,10 +218,10 @@
                     <child>
                       <object class="GtkLabel" id="FT_AXIS_LABEL_DISTANCE">
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_AxisPositions|FT_AXIS_LABEL_DISTANCE">_Distance</property>
                         <property name="use_underline">True</property>
                         <property name="mnemonic_widget">EDT_AXIS_LABEL_DISTANCE</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -222,8 +230,10 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="svtlo-FormattedField" id="EDT_AXIS_LABEL_DISTANCE">
-                        <property name="can_focus">False</property>
+                      <object class="GtkSpinButton" id="EDT_AXIS_LABEL_DISTANCE">
+                        <property name="can_focus">True</property>
+                        <property name="activates_default">True</property>
+                        <property name="adjustment">adjustment2</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -246,8 +256,8 @@
           <object class="GtkLabel" id="TXT_FL_LABELS">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
-            <property name="xalign">0</property>
             <property name="label" translatable="yes" context="tp_AxisPositions|TXT_FL_LABELS">Labels</property>
+            <property name="xalign">0</property>
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
@@ -288,8 +298,8 @@
                       <object class="GtkLabel" id="FT_MAJOR">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_AxisPositions|FT_MAJOR">Major:</property>
+                        <property name="xalign">0</property>
                         <accessibility>
                           <relation type="label-for" target="CB_TICKS_INNER"/>
                           <relation type="label-for" target="CB_TICKS_OUTER"/>
@@ -298,16 +308,14 @@
                       <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="FT_MINOR">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_AxisPositions|FT_MINOR">Minor:</property>
+                        <property name="xalign">0</property>
                         <accessibility>
                           <relation type="label-for" target="CB_MINOR_INNER"/>
                           <relation type="label-for" target="CB_MINOR_OUTER"/>
@@ -316,15 +324,13 @@
                       <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="CB_TICKS_INNER">
                         <property name="label" translatable="yes" context="tp_AxisPositions|CB_TICKS_INNER">_Inner</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                        <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="xalign">0</property>
@@ -336,15 +342,13 @@
                       <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="GtkCheckButton" id="CB_TICKS_OUTER">
                         <property name="label" translatable="yes" context="tp_AxisPositions|CB_TICKS_OUTER">_Outer</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                        <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="xalign">0</property>
@@ -356,15 +360,13 @@
                       <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="GtkCheckButton" id="CB_MINOR_INNER">
                         <property name="label" translatable="yes" context="tp_AxisPositions|CB_MINOR_INNER">I_nner</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                        <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="xalign">0</property>
@@ -376,15 +378,13 @@
                       <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="GtkCheckButton" id="CB_MINOR_OUTER">
                         <property name="label" translatable="yes" context="tp_AxisPositions|CB_MINOR_OUTER">O_uter</property>
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                        <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="xalign">0</property>
@@ -396,8 +396,6 @@
                       <packing>
                         <property name="left_attach">2</property>
                         <property name="top_attach">1</property>
-                        <property name="width">1</property>
-                        <property name="height">1</property>
                       </packing>
                     </child>
                   </object>
@@ -416,10 +414,10 @@
                       <object class="GtkLabel" id="FT_PLACE_TICKS">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_AxisPositions|FT_PLACE_TICKS">Place _marks</property>
                         <property name="use_underline">True</property>
                         <property name="mnemonic_widget">LB_PLACE_TICKS</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -431,8 +429,6 @@
                       <object class="GtkComboBoxText" id="LB_PLACE_TICKS">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="entry_text_column">0</property>
-                        <property name="id_column">1</property>
                         <items>
                           <item translatable="yes" context="tp_AxisPositions|LB_PLACE_TICKS">At labels</item>
                           <item translatable="yes" context="tp_AxisPositions|LB_PLACE_TICKS">At axis</item>
@@ -460,8 +456,8 @@
           <object class="GtkLabel" id="TXT_FL_TICKS">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
-            <property name="xalign">0</property>
             <property name="label" translatable="yes" context="tp_AxisPositions|TXT_FL_TICKS">Interval Marks</property>
+            <property name="xalign">0</property>
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
@@ -495,7 +491,7 @@
                   <object class="GtkCheckButton" id="CB_MAJOR_GRID">
                     <property name="label" translatable="yes" context="tp_AxisPositions|CB_MAJOR_GRID">Show major _grid</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="relief">half</property>
                     <property name="use_underline">True</property>
@@ -505,15 +501,13 @@
                   <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="GtkCheckButton" id="CB_MINOR_GRID">
                     <property name="label" translatable="yes" context="tp_AxisPositions|CB_MINOR_GRID">_Show minor grid</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -522,30 +516,26 @@
                   <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="GtkButton" id="PB_MAJOR_GRID">
                     <property name="label" translatable="yes" context="tp_AxisPositions|PB_MAJOR_GRID">Mo_re...</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_underline">True</property>
                   </object>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="top_attach">0</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
                   <object class="GtkButton" id="PB_MINOR_GRID">
                     <property name="label" translatable="yes" context="tp_AxisPositions|PB_MINOR_GRID">Mor_e...</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">True</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0.49000000953674316</property>
@@ -553,8 +543,6 @@
                   <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>
               </object>
@@ -565,8 +553,8 @@
           <object class="GtkLabel" id="label2">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
-            <property name="xalign">0</property>
             <property name="label" translatable="yes" context="tp_AxisPositions|label2">Grids</property>
+            <property name="xalign">0</property>
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
diff --git a/chart2/uiconfig/ui/tp_Scale.ui b/chart2/uiconfig/ui/tp_Scale.ui
index 5257efc7cc7f..6b5b1cf195c1 100644
--- a/chart2/uiconfig/ui/tp_Scale.ui
+++ b/chart2/uiconfig/ui/tp_Scale.ui
@@ -1,34 +1,38 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- Generated with glade 3.22.1 -->
 <interface domain="chart">
   <requires lib="gtk+" version="3.18"/>
-  <requires lib="LibreOffice" version="1.0"/>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment3">
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment4">
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
   <object class="GtkAdjustment" id="adjustmentINTERVAL">
     <property name="lower">1</property>
     <property name="upper">100</property>
     <property name="step_increment">1</property>
     <property name="page_increment">10</property>
   </object>
-  <object class="GtkListStore" id="liststoreDATE">
-    <columns>
-      <!-- column-name gchararray1 -->
-      <column type="gchararray"/>
-      <!-- column-name guint1 -->
-      <column type="guint"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes" context="tp_Scale|liststoreDATE">Days</col>
-        <col id="1">0</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes" context="tp_Scale|liststoreDATE">Months</col>
-        <col id="1">1</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes" context="tp_Scale|liststoreDATE">Years</col>
-        <col id="1">2</col>
-      </row>
-    </data>
+  <object class="GtkAdjustment" id="adjustmentINTERVAL1">
+    <property name="lower">1</property>
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
   </object>
   <object class="GtkFrame" id="tp_Scale">
     <property name="visible">True</property>
@@ -58,7 +62,7 @@
                   <object class="GtkCheckButton" id="CBX_REVERSE">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_REVERSE">_Reverse direction</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -74,7 +78,7 @@
                   <object class="GtkCheckButton" id="CBX_LOGARITHM">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_LOGARITHM">_Logarithmic scale</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -95,10 +99,10 @@
                       <object class="GtkLabel" id="TXT_AXIS_TYPE">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_Scale|TXT_AXIS_TYPE">T_ype</property>
                         <property name="use_underline">True</property>
                         <property name="mnemonic_widget">LB_AXIS_TYPE</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -110,8 +114,6 @@
                       <object class="GtkComboBoxText" id="LB_AXIS_TYPE">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="entry_text_column">0</property>
-                        <property name="id_column">1</property>
                         <items>
                           <item translatable="yes" context="tp_Scale|LB_AXIS_TYPE">Automatic</item>
                           <item translatable="yes" context="tp_Scale|LB_AXIS_TYPE">Text</item>
@@ -148,39 +150,35 @@
                   <object class="GtkLabel" id="TXT_MIN">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
                     <property name="label" translatable="yes" context="tp_Scale|TXT_MIN">_Minimum</property>
                     <property name="use_underline">True</property>
                     <property name="mnemonic_widget">EDT_MIN</property>
+                    <property name="xalign">0</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="TXT_MAX">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
                     <property name="label" translatable="yes" context="tp_Scale|TXT_MAX">Ma_ximum</property>
                     <property name="use_underline">True</property>
                     <property name="mnemonic_widget">EDT_MAX</property>
+                    <property name="xalign">0</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="CBX_AUTO_MIN">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_AUTO_MIN">_Automatic</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -189,15 +187,13 @@
                   <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="GtkCheckButton" id="CBX_AUTO_MAX">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_AUTO_MAX">A_utomatic</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -206,32 +202,32 @@
                   <packing>
                     <property name="left_attach">2</property>
                     <property name="top_attach">1</property>
-                    <property name="width">1</property>
-                    <property name="height">1</property>
                   </packing>
                 </child>
                 <child>
-                  <object class="svtlo-FormattedField" id="EDT_MIN">
+                  <object class="GtkSpinButton" id="EDT_MIN">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
+                    <property name="activates_default">True</property>
+                    <property name="width_chars">10</property>
+                    <property name="adjustment">adjustment1</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="svtlo-FormattedField" id="EDT_MAX">
+                  <object class="GtkSpinButton" id="EDT_MAX">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
+                    <property name="activates_default">True</property>
+                    <property name="width_chars">10</property>
+                    <property name="adjustment">adjustment2</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>
               </object>
@@ -250,10 +246,10 @@
                   <object class="GtkLabel" id="TXT_TIME_RESOLUTION">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
                     <property name="label" translatable="yes" context="tp_Scale|TXT_TIME_RESOLUTION">R_esolution</property>
                     <property name="use_underline">True</property>
                     <property name="mnemonic_widget">LB_TIME_RESOLUTION</property>
+                    <property name="xalign">0</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -262,10 +258,14 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkComboBox" id="LB_TIME_RESOLUTION">
+                  <object class="GtkComboBoxText" id="LB_TIME_RESOLUTION">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="model">liststoreDATE</property>
+                    <items>
+                      <item id="0" translatable="yes" context="tp_Scale|liststoreDATE">Days</item>
+                      <item id="1" translatable="yes" context="tp_Scale|liststoreDATE">Months</item>
+                      <item id="2" translatable="yes" context="tp_Scale|liststoreDATE">Years</item>
+                    </items>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -277,7 +277,7 @@
                   <object class="GtkCheckButton" id="CBX_AUTO_TIME_RESOLUTION">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_AUTO_TIME_RESOLUTION">Automat_ic</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -305,9 +305,9 @@
                   <object class="GtkLabel" id="TXT_STEP_MAIN">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
                     <property name="label" translatable="yes" context="tp_Scale|TXT_STEP_MAIN">Ma_jor interval</property>
                     <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -326,9 +326,11 @@
                         <property name="can_focus">False</property>
                         <property name="spacing">12</property>
                         <child>
-                          <object class="GtkSpinButton" id="MT_MAIN_DATE_STEP:0">
+                          <object class="GtkSpinButton" id="MT_MAIN_DATE_STEP">
                             <property name="visible">True</property>
-                            <property name="can_focus">False</property>
+                            <property name="can_focus">True</property>
+                            <property name="activates_default">True</property>
+                            <property name="width_chars">10</property>
                             <property name="adjustment">adjustmentINTERVAL</property>
                           </object>
                           <packing>
@@ -338,10 +340,14 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkComboBox" id="LB_MAIN_TIME_UNIT">
+                          <object class="GtkComboBoxText" id="LB_MAIN_TIME_UNIT">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="model">liststoreDATE</property>
+                            <items>
+                              <item id="0" translatable="yes" context="tp_Scale|liststoreDATE">Days</item>
+                              <item id="1" translatable="yes" context="tp_Scale|liststoreDATE">Months</item>
+                              <item id="2" translatable="yes" context="tp_Scale|liststoreDATE">Years</item>
+                            </items>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -357,9 +363,12 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="svtlo-FormattedField" id="EDT_STEP_MAIN">
+                      <object class="GtkSpinButton" id="EDT_STEP_MAIN">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
+                        <property name="can_focus">True</property>
+                        <property name="activates_default">True</property>
+                        <property name="width_chars">10</property>
+                        <property name="adjustment">adjustment4</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -378,7 +387,7 @@
                   <object class="GtkCheckButton" id="CBX_AUTO_STEP_MAIN">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_AUTO_STEP_MAIN">Au_tomatic</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -411,9 +420,9 @@
                       <object class="GtkLabel" id="TXT_STEP_HELP">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_Scale|TXT_STEP_HELP">Minor inter_val</property>
                         <property name="use_underline">True</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -425,9 +434,9 @@
                       <object class="GtkLabel" id="TXT_STEP_HELP_COUNT">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xalign">0</property>
                         <property name="label" translatable="yes" context="tp_Scale|TXT_STEP_HELP_COUNT">Minor inter_val count</property>
                         <property name="use_underline">True</property>
+                        <property name="xalign">0</property>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -443,10 +452,12 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkSpinButton" id="MT_STEPHELP:0">
+                  <object class="GtkSpinButton" id="MT_STEPHELP">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="adjustment">adjustmentINTERVAL</property>
+                    <property name="can_focus">True</property>
+                    <property name="activates_default">True</property>
+                    <property name="width_chars">10</property>
+                    <property name="adjustment">adjustmentINTERVAL1</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -455,10 +466,14 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkComboBox" id="LB_HELP_TIME_UNIT">
+                  <object class="GtkComboBoxText" id="LB_HELP_TIME_UNIT">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="model">liststoreDATE</property>
+                    <items>
+                      <item id="0" translatable="yes" context="tp_Scale|liststoreDATE">Days</item>
+                      <item id="1" translatable="yes" context="tp_Scale|liststoreDATE">Months</item>
+                      <item id="2" translatable="yes" context="tp_Scale|liststoreDATE">Years</item>
+                    </items>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -470,7 +485,7 @@
                   <object class="GtkCheckButton" id="CBX_AUTO_STEP_HELP">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_AUTO_STEP_HELP">Aut_omatic</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="xalign">0</property>
@@ -498,9 +513,9 @@
                   <object class="GtkLabel" id="TXT_ORIGIN">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
                     <property name="label" translatable="yes" context="tp_Scale|TXT_ORIGIN">Re_ference value</property>
                     <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -509,9 +524,12 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="svtlo-FormattedField" id="EDT_ORIGIN:0">
+                  <object class="GtkSpinButton" id="EDT_ORIGIN">
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
+                    <property name="activates_default">True</property>
+                    <property name="width_chars">10</property>
+                    <property name="adjustment">adjustment3</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -523,7 +541,7 @@
                   <object class="GtkCheckButton" id="CBX_AUTO_ORIGIN">
                     <property name="label" translatable="yes" context="tp_Scale|CBX_AUTO_ORIGIN">Automat_ic</property>
                     <property name="visible">True</property>
-                    <property name="can_focus">False</property>
+                    <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list