[Libreoffice-commits] core.git: sc/inc sc/source sc/uiconfig solenv/sanitizers

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


 sc/inc/scabstdlg.hxx                     |    4 -
 sc/source/ui/attrdlg/scdlgfact.cxx       |   14 ++-
 sc/source/ui/attrdlg/scdlgfact.hxx       |   13 ++-
 sc/source/ui/cctrl/editfield.cxx         |   25 ++++++
 sc/source/ui/dbgui/dpgroupdlg.cxx        |  111 ++++++++++++++++++++-----------
 sc/source/ui/inc/dpgroupdlg.hxx          |   57 +++++++++++----
 sc/source/ui/inc/editfield.hxx           |   17 ++++
 sc/source/ui/view/cellsh1.cxx            |    2 
 sc/uiconfig/scalc/ui/groupbynumber.ui    |   35 +++++++--
 solenv/sanitizers/ui/modules/scalc.suppr |    1 
 10 files changed, 207 insertions(+), 72 deletions(-)

New commits:
commit c57dc7d41bd62f933cffab6131edb7252606382d
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Feb 14 10:38:00 2019 +0000
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Thu Feb 14 22:04:26 2019 +0100

    weld ScDPNumGroupDlg
    
    Change-Id: I5f5861a1f39307133f4c87e4d5ca50ced24409ba
    Reviewed-on: https://gerrit.libreoffice.org/67813
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>
    Tested-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sc/inc/scabstdlg.hxx b/sc/inc/scabstdlg.hxx
index f272b1a31ced..f4e48b1e063b 100644
--- a/sc/inc/scabstdlg.hxx
+++ b/sc/inc/scabstdlg.hxx
@@ -482,8 +482,8 @@ public:
                                                                 const ScPivotFuncData& rFuncData,
                                                                 const ScDPNameVec& rDataFields ) = 0;
 
-    virtual VclPtr<AbstractScDPNumGroupDlg> CreateScDPNumGroupDlg( vcl::Window* pParent,
-                                                                const ScDPNumGroupInfo& rInfo ) = 0;
+    virtual VclPtr<AbstractScDPNumGroupDlg> CreateScDPNumGroupDlg(weld::Window* pParent,
+                                                                  const ScDPNumGroupInfo& rInfo) = 0;
 
     virtual VclPtr<AbstractScDPDateGroupDlg> CreateScDPDateGroupDlg( vcl::Window* pParent,
                                                                 const ScDPNumGroupInfo& rInfo,
diff --git a/sc/source/ui/attrdlg/scdlgfact.cxx b/sc/source/ui/attrdlg/scdlgfact.cxx
index fa64f1848b80..3f24dc09439a 100644
--- a/sc/source/ui/attrdlg/scdlgfact.cxx
+++ b/sc/source/ui/attrdlg/scdlgfact.cxx
@@ -168,7 +168,12 @@ short AbstractScNamePasteDlg_Impl::Execute()
 IMPL_ABSTDLG_BASE(AbstractScPivotFilterDlg_Impl);
 IMPL_ABSTDLG_BASE(AbstractScDPFunctionDlg_Impl);
 IMPL_ABSTDLG_BASE(AbstractScDPSubtotalDlg_Impl);
-IMPL_ABSTDLG_BASE(AbstractScDPNumGroupDlg_Impl);
+
+short AbstractScDPNumGroupDlg_Impl::Execute()
+{
+    return m_xDlg->run();
+}
+
 IMPL_ABSTDLG_BASE(AbstractScDPDateGroupDlg_Impl);
 
 short AbstractScDPShowDetailDlg_Impl::Execute()
@@ -614,7 +619,7 @@ void AbstractScDPSubtotalDlg_Impl::FillLabelData( ScDPLabelData& rLabelData ) co
 
 ScDPNumGroupInfo AbstractScDPNumGroupDlg_Impl::GetGroupInfo() const
 {
-    return pDlg->GetGroupInfo();
+    return m_xDlg->GetGroupInfo();
 }
 
 ScDPNumGroupInfo AbstractScDPDateGroupDlg_Impl::GetGroupInfo() const
@@ -914,10 +919,9 @@ VclPtr<AbstractScDPSubtotalDlg> ScAbstractDialogFactory_Impl::CreateScDPSubtotal
     return VclPtr<AbstractScDPSubtotalDlg_Impl>::Create( pDlg );
 }
 
-VclPtr<AbstractScDPNumGroupDlg> ScAbstractDialogFactory_Impl::CreateScDPNumGroupDlg(
-        vcl::Window* pParent, const ScDPNumGroupInfo& rInfo )
+VclPtr<AbstractScDPNumGroupDlg> ScAbstractDialogFactory_Impl::CreateScDPNumGroupDlg(weld::Window* pParent, const ScDPNumGroupInfo& rInfo)
 {
-    return VclPtr<AbstractScDPNumGroupDlg_Impl>::Create( VclPtr<ScDPNumGroupDlg>::Create( pParent, rInfo ) );
+    return VclPtr<AbstractScDPNumGroupDlg_Impl>::Create(new ScDPNumGroupDlg(pParent, rInfo));
 }
 
 VclPtr<AbstractScDPDateGroupDlg> ScAbstractDialogFactory_Impl::CreateScDPDateGroupDlg(
diff --git a/sc/source/ui/attrdlg/scdlgfact.hxx b/sc/source/ui/attrdlg/scdlgfact.hxx
index 1d1b8ce4fa2e..ddee8f8607ea 100644
--- a/sc/source/ui/attrdlg/scdlgfact.hxx
+++ b/sc/source/ui/attrdlg/scdlgfact.hxx
@@ -406,7 +406,14 @@ class AbstractScDPSubtotalDlg_Impl : public AbstractScDPSubtotalDlg
 
 class AbstractScDPNumGroupDlg_Impl : public AbstractScDPNumGroupDlg
 {
-    DECL_ABSTDLG_BASE( AbstractScDPNumGroupDlg_Impl, ScDPNumGroupDlg )
+protected:
+    std::unique_ptr<ScDPNumGroupDlg> m_xDlg;
+public:
+    explicit AbstractScDPNumGroupDlg_Impl(ScDPNumGroupDlg* p)
+        : m_xDlg(p)
+    {
+    }
+    virtual short Execute() override;
     virtual ScDPNumGroupInfo GetGroupInfo() const override;
 };
 
@@ -649,8 +656,8 @@ public:
                                                                 const ScPivotFuncData& rFuncData,
                                                                 const ScDPNameVec& rDataFields ) override;
 
-    virtual VclPtr<AbstractScDPNumGroupDlg> CreateScDPNumGroupDlg( vcl::Window* pParent,
-                                                                const ScDPNumGroupInfo& rInfo ) override;
+    virtual VclPtr<AbstractScDPNumGroupDlg> CreateScDPNumGroupDlg(weld::Window* pParent,
+                                                                  const ScDPNumGroupInfo& rInfo) override;
 
     virtual VclPtr<AbstractScDPDateGroupDlg> CreateScDPDateGroupDlg( vcl::Window* pParent,
                                                                 const ScDPNumGroupInfo& rInfo,
diff --git a/sc/source/ui/cctrl/editfield.cxx b/sc/source/ui/cctrl/editfield.cxx
index 6583e2b6fe0d..0f69edcab60d 100644
--- a/sc/source/ui/cctrl/editfield.cxx
+++ b/sc/source/ui/cctrl/editfield.cxx
@@ -67,4 +67,29 @@ void ScDoubleField::SetValue( double fValue, sal_Int32 nDecPlaces )
         nDecPlaces, lclGetDecSep(), true/*bEraseTrailingDecZeros*/ ) );
 }
 
+DoubleField::DoubleField(std::unique_ptr<weld::Entry> xEntry)
+    : m_xEntry(std::move(xEntry))
+{
+}
+
+bool DoubleField::GetValue( double& rfValue ) const
+{
+    OUString aStr(comphelper::string::strip(m_xEntry->get_text(), ' '));
+    bool bOk = !aStr.isEmpty();
+    if( bOk )
+    {
+        rtl_math_ConversionStatus eStatus;
+        sal_Int32 nEnd;
+        rfValue = ScGlobal::GetpLocaleData()->stringToDouble( aStr, true, &eStatus, &nEnd );
+        bOk = (eStatus == rtl_math_ConversionStatus_Ok) && (nEnd == aStr.getLength() );
+    }
+    return bOk;
+}
+
+void DoubleField::SetValue( double fValue, sal_Int32 nDecPlaces )
+{
+    m_xEntry->set_text( ::rtl::math::doubleToUString( fValue, rtl_math_StringFormat_G,
+        nDecPlaces, lclGetDecSep(), true/*bEraseTrailingDecZeros*/ ) );
+}
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/dbgui/dpgroupdlg.cxx b/sc/source/ui/dbgui/dpgroupdlg.cxx
index 60522c0a8e28..f1e3f3f927ad 100644
--- a/sc/source/ui/dbgui/dpgroupdlg.cxx
+++ b/sc/source/ui/dbgui/dpgroupdlg.cxx
@@ -107,10 +107,62 @@ IMPL_LINK( ScDPGroupEditHelper, ClickHdl, Button*, pButton, void )
     }
 }
 
-ScDPNumGroupEditHelper::ScDPNumGroupEditHelper(
-        RadioButton* pRbAuto, RadioButton* pRbMan, ScDoubleField* pEdValue ) :
-    ScDPGroupEditHelper( pRbAuto, pRbMan, pEdValue ),
-    mpEdValue( pEdValue )
+DPGroupEditHelper::DPGroupEditHelper(weld::RadioButton* pRbAuto, weld::RadioButton* pRbMan, weld::Entry* pEdValue)
+    : mpRbAuto(pRbAuto)
+    , mpRbMan(pRbMan)
+    , mpEdValue(pEdValue)
+{
+    mpRbAuto->connect_clicked( LINK( this, DPGroupEditHelper, ClickHdl ) );
+    mpRbMan->connect_clicked( LINK( this, DPGroupEditHelper, ClickHdl ) );
+}
+
+bool DPGroupEditHelper::IsAuto() const
+{
+    return mpRbAuto->get_active();
+}
+
+double DPGroupEditHelper::GetValue() const
+{
+    double fValue;
+    if( !ImplGetValue( fValue ) )
+        fValue = 0.0;
+    return fValue;
+}
+
+void DPGroupEditHelper::SetValue( bool bAuto, double fValue )
+{
+    if( bAuto )
+    {
+        mpRbAuto->set_active(true);
+        ClickHdl(*mpRbAuto);
+    }
+    else
+    {
+        mpRbMan->set_active(true);
+        ClickHdl(*mpRbMan);
+    }
+    ImplSetValue( fValue );
+}
+
+IMPL_LINK(DPGroupEditHelper, ClickHdl, weld::Button&, rButton, void)
+{
+    if (&rButton == mpRbAuto)
+    {
+        // disable edit field on clicking "automatic" radio button
+        mpEdValue->set_sensitive(false);
+    }
+    else if (&rButton == mpRbMan)
+    {
+        // enable and set focus to edit field on clicking "manual" radio button
+        mpEdValue->set_sensitive(true);
+        mpEdValue->grab_focus();
+    }
+}
+
+ScDPNumGroupEditHelper::ScDPNumGroupEditHelper(weld::RadioButton* pRbAuto,
+    weld::RadioButton* pRbMan, DoubleField* pEdValue)
+    : DPGroupEditHelper(pRbAuto, pRbMan, pEdValue->get_widget())
+    , mpEdValue(pEdValue)
 {
 }
 
@@ -145,51 +197,36 @@ void ScDPDateGroupEditHelper::ImplSetValue( double fValue )
     mpEdValue->SetDate( aDate );
 }
 
-ScDPNumGroupDlg::ScDPNumGroupDlg( vcl::Window* pParent, const ScDPNumGroupInfo& rInfo ) :
-    ModalDialog     ( pParent, "PivotTableGroupByNumber", "modules/scalc/ui/groupbynumber.ui" ),
-    mpRbAutoStart   ( get<RadioButton>("auto_start") ),
-    mpRbManStart    ( get<RadioButton>("manual_start") ),
-    mpEdStart       ( get<ScDoubleField> ("edit_start") ),
-    mpRbAutoEnd     ( get<RadioButton> ( "auto_end" ) ),
-    mpRbManEnd      ( get<RadioButton> ("manual_end") ),
-    mpEdEnd         ( get<ScDoubleField>( "edit_end") ),
-    mpEdBy          ( get<ScDoubleField> ("edit_by") ),
-    maStartHelper   ( mpRbAutoStart, mpRbManStart, mpEdStart ),
-    maEndHelper     ( mpRbAutoEnd, mpRbManEnd, mpEdEnd )
+ScDPNumGroupDlg::ScDPNumGroupDlg(weld::Window* pParent, const ScDPNumGroupInfo& rInfo)
+    : GenericDialogController(pParent, "modules/scalc/ui/groupbynumber.ui", "PivotTableGroupByNumber")
+    , mxRbAutoStart(m_xBuilder->weld_radio_button("auto_start"))
+    , mxRbManStart(m_xBuilder->weld_radio_button("manual_start"))
+    , mxEdStart(new DoubleField(m_xBuilder->weld_entry("edit_start")))
+    , mxRbAutoEnd(m_xBuilder->weld_radio_button("auto_end"))
+    , mxRbManEnd(m_xBuilder->weld_radio_button("manual_end"))
+    , mxEdEnd(new DoubleField(m_xBuilder->weld_entry("edit_end")))
+    , mxEdBy(new DoubleField(m_xBuilder->weld_entry("edit_by")))
+    , maStartHelper(mxRbAutoStart.get(), mxRbManStart.get(), mxEdStart.get())
+    , maEndHelper(mxRbAutoEnd.get(), mxRbManEnd.get(), mxEdEnd.get())
 {
-
     maStartHelper.SetValue( rInfo.mbAutoStart, rInfo.mfStart );
     maEndHelper.SetValue( rInfo.mbAutoEnd, rInfo.mfEnd );
-    mpEdBy->SetValue( (rInfo.mfStep <= 0.0) ? 1.0 : rInfo.mfStep );
+    mxEdBy->SetValue( (rInfo.mfStep <= 0.0) ? 1.0 : rInfo.mfStep );
 
     /*  Set the initial focus, currently it is somewhere after calling all the radio
         button click handlers. Now the first enabled editable control is focused. */
-    if( mpEdStart->IsEnabled() )
-        mpEdStart->GrabFocus();
-    else if( mpEdEnd->IsEnabled() )
-        mpEdEnd->GrabFocus();
+    if (mxEdStart->get_sensitive())
+        mxEdStart->grab_focus();
+    else if (mxEdEnd->get_sensitive())
+        mxEdEnd->grab_focus();
     else
-        mpEdBy->GrabFocus();
+        mxEdBy->grab_focus();
 }
 
 ScDPNumGroupDlg::~ScDPNumGroupDlg()
 {
-    disposeOnce();
 }
 
-void ScDPNumGroupDlg::dispose()
-{
-    mpRbAutoStart.clear();
-    mpRbManStart.clear();
-    mpEdStart.clear();
-    mpRbAutoEnd.clear();
-    mpRbManEnd.clear();
-    mpEdEnd.clear();
-    mpEdBy.clear();
-    ModalDialog::dispose();
-}
-
-
 ScDPNumGroupInfo ScDPNumGroupDlg::GetGroupInfo() const
 {
     ScDPNumGroupInfo aInfo;
@@ -202,7 +239,7 @@ ScDPNumGroupInfo ScDPNumGroupDlg::GetGroupInfo() const
     // TODO: error messages in OK event?
     aInfo.mfStart = maStartHelper.GetValue();
     aInfo.mfEnd = maEndHelper.GetValue();
-    if( !mpEdBy->GetValue( aInfo.mfStep ) || (aInfo.mfStep <= 0.0) )
+    if( !mxEdBy->GetValue( aInfo.mfStep ) || (aInfo.mfStep <= 0.0) )
         aInfo.mfStep = 1.0;
     if( aInfo.mfEnd <= aInfo.mfStart )
         aInfo.mfEnd = aInfo.mfStart + aInfo.mfStep;
diff --git a/sc/source/ui/inc/dpgroupdlg.hxx b/sc/source/ui/inc/dpgroupdlg.hxx
index 01737a65000b..00d5943dc643 100644
--- a/sc/source/ui/inc/dpgroupdlg.hxx
+++ b/sc/source/ui/inc/dpgroupdlg.hxx
@@ -23,6 +23,7 @@
 #include <vcl/dialog.hxx>
 #include <vcl/button.hxx>
 #include <vcl/field.hxx>
+#include <vcl/weld.hxx>
 #include <svx/checklbx.hxx>
 #include "editfield.hxx"
 #include <dpnumgroupinfo.hxx>
@@ -53,12 +54,39 @@ private:
     VclPtr<Edit>               mpEdValue;
 };
 
-class ScDPNumGroupEditHelper : public ScDPGroupEditHelper
+class DPGroupEditHelper
+{
+public:
+    explicit            DPGroupEditHelper(
+                            weld::RadioButton* rRbAuto, weld::RadioButton* rRbMan,
+                            weld::Entry* rEdValue );
+
+    bool                IsAuto() const;
+    double              GetValue() const;
+    void                SetValue( bool bAuto, double fValue );
+
+protected:
+    ~DPGroupEditHelper() {}
+
+private:
+    virtual bool        ImplGetValue( double& rfValue ) const = 0;
+    virtual void        ImplSetValue( double fValue ) = 0;
+
+    DECL_LINK(ClickHdl, weld::Button&, void);
+
+private:
+    weld::RadioButton* mpRbAuto;
+    weld::RadioButton* mpRbMan;
+    weld::Entry*       mpEdValue;
+};
+
+
+class ScDPNumGroupEditHelper : public DPGroupEditHelper
 {
 public:
     explicit            ScDPNumGroupEditHelper(
-                            RadioButton* pRbAuto, RadioButton* pRbMan,
-                            ScDoubleField* pEdValue );
+                            weld::RadioButton* pRbAuto, weld::RadioButton* pRbMan,
+                            DoubleField* pEdValue );
 
     virtual             ~ScDPNumGroupEditHelper() {}
 private:
@@ -66,7 +94,7 @@ private:
     virtual void        ImplSetValue( double fValue ) override;
 
 private:
-    VclPtr<ScDoubleField>      mpEdValue;
+    DoubleField*        mpEdValue;
 };
 
 class ScDPDateGroupEditHelper : public ScDPGroupEditHelper
@@ -87,22 +115,21 @@ private:
     Date const                maNullDate;
 };
 
-class ScDPNumGroupDlg : public ModalDialog
+class ScDPNumGroupDlg : public weld::GenericDialogController
 {
 public:
-    explicit            ScDPNumGroupDlg( vcl::Window* pParent, const ScDPNumGroupInfo& rInfo );
-    virtual             ~ScDPNumGroupDlg() override;
-    virtual void        dispose() override;
+    explicit ScDPNumGroupDlg(weld::Window* pParent, const ScDPNumGroupInfo& rInfo);
+    virtual ~ScDPNumGroupDlg() override;
     ScDPNumGroupInfo    GetGroupInfo() const;
 
 private:
-    VclPtr<RadioButton>         mpRbAutoStart;
-    VclPtr<RadioButton>         mpRbManStart;
-    VclPtr<ScDoubleField>       mpEdStart;
-    VclPtr<RadioButton>         mpRbAutoEnd;
-    VclPtr<RadioButton>         mpRbManEnd;
-    VclPtr<ScDoubleField>       mpEdEnd;
-    VclPtr<ScDoubleField>       mpEdBy;
+    std::unique_ptr<weld::RadioButton> mxRbAutoStart;
+    std::unique_ptr<weld::RadioButton> mxRbManStart;
+    std::unique_ptr<DoubleField> mxEdStart;
+    std::unique_ptr<weld::RadioButton> mxRbAutoEnd;
+    std::unique_ptr<weld::RadioButton> mxRbManEnd;
+    std::unique_ptr<DoubleField> mxEdEnd;
+    std::unique_ptr<DoubleField> mxEdBy;
     ScDPNumGroupEditHelper maStartHelper;
     ScDPNumGroupEditHelper maEndHelper;
 };
diff --git a/sc/source/ui/inc/editfield.hxx b/sc/source/ui/inc/editfield.hxx
index fa27d4710b16..4ab170ceacb0 100644
--- a/sc/source/ui/inc/editfield.hxx
+++ b/sc/source/ui/inc/editfield.hxx
@@ -21,6 +21,7 @@
 #define INCLUDED_SC_SOURCE_UI_INC_EDITFIELD_HXX
 
 #include <vcl/edit.hxx>
+#include <vcl/weld.hxx>
 
 /** An edit control that contains a double precision floating-point value. */
 class ScDoubleField : public Edit
@@ -33,6 +34,22 @@ public:
                                   sal_Int32 nDecPlaces = 12 );
 };
 
+class DoubleField
+{
+private:
+    std::unique_ptr<weld::Entry> m_xEntry;
+public:
+    explicit            DoubleField(std::unique_ptr<weld::Entry> xEntry);
+
+    bool GetValue(double& rfValue) const;
+    void SetValue(double fValue, sal_Int32 nDecPlaces = 12);
+
+    weld::Entry* get_widget() { return m_xEntry.get(); }
+
+    void grab_focus() { m_xEntry->grab_focus(); }
+    bool get_sensitive() const { return m_xEntry->get_sensitive(); }
+};
+
 #endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sc/source/ui/view/cellsh1.cxx b/sc/source/ui/view/cellsh1.cxx
index 0694c87e40e2..88e7b85cb428 100644
--- a/sc/source/ui/view/cellsh1.cxx
+++ b/sc/source/ui/view/cellsh1.cxx
@@ -1128,7 +1128,7 @@ void ScCellShell::ExecuteEdit( SfxRequest& rReq )
                     {
                         ScAbstractDialogFactory* pFact = ScAbstractDialogFactory::Create();
                         ScopedVclPtr<AbstractScDPNumGroupDlg> pDlg( pFact->CreateScDPNumGroupDlg(
-                            pTabViewShell->GetDialogParent(), aNumInfo ) );
+                            pTabViewShell->GetFrameWeld(), aNumInfo ) );
                         if( pDlg->Execute() == RET_OK )
                             pTabViewShell->NumGroupDataPilot( pDlg->GetGroupInfo() );
                     }
diff --git a/sc/uiconfig/scalc/ui/groupbynumber.ui b/sc/uiconfig/scalc/ui/groupbynumber.ui
index ed6a95a75bbf..242919880a5c 100644
--- a/sc/uiconfig/scalc/ui/groupbynumber.ui
+++ b/sc/uiconfig/scalc/ui/groupbynumber.ui
@@ -1,14 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- Generated with glade 3.18.3 -->
+<!-- Generated with glade 3.22.1 -->
 <interface domain="sc">
   <requires lib="gtk+" version="3.18"/>
-  <requires lib="LibreOffice" version="1.0"/>
   <object class="GtkDialog" id="PivotTableGroupByNumber">
     <property name="can_focus">False</property>
     <property name="border_width">6</property>
     <property name="title" translatable="yes" context="groupbynumber|PivotTableGroupByNumber">Grouping</property>
     <property name="resizable">False</property>
+    <property name="modal">True</property>
+    <property name="default_width">0</property>
+    <property name="default_height">0</property>
     <property name="type_hint">dialog</property>
+    <child>
+      <placeholder/>
+    </child>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">
         <property name="can_focus">False</property>
@@ -23,6 +28,7 @@
                 <property name="label">gtk-ok</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
+                <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="receives_default">True</property>
                 <property name="use_stock">True</property>
@@ -38,6 +44,7 @@
                 <property name="label">gtk-cancel</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
+                <property name="can_default">True</property>
                 <property name="receives_default">True</property>
                 <property name="use_stock">True</property>
               </object>
@@ -105,7 +112,6 @@
                             <property name="xalign">0</property>
                             <property name="active">True</property>
                             <property name="draw_indicator">True</property>
-                            <property name="group">manual_start</property>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
@@ -120,9 +126,11 @@
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="xalign">0</property>
-                            <property name="active">True</property>
                             <property name="draw_indicator">True</property>
                             <property name="group">auto_start</property>
+                            <accessibility>
+                              <relation type="label-for" target="edit_start"/>
+                            </accessibility>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
@@ -130,10 +138,14 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="scuilo-ScDoubleField" id="edit_start">
+                          <object class="GtkEntry" id="edit_start">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="hexpand">True</property>
+                            <property name="activates_default">True</property>
+                            <accessibility>
+                              <relation type="labelled-by" target="manual_start"/>
+                            </accessibility>
                           </object>
                           <packing>
                             <property name="left_attach">1</property>
@@ -194,7 +206,6 @@
                             <property name="xalign">0</property>
                             <property name="active">True</property>
                             <property name="draw_indicator">True</property>
-                            <property name="group">manual_end</property>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
@@ -209,9 +220,11 @@
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="xalign">0</property>
-                            <property name="active">True</property>
                             <property name="draw_indicator">True</property>
                             <property name="group">auto_end</property>
+                            <accessibility>
+                              <relation type="label-for" target="edit_end"/>
+                            </accessibility>
                           </object>
                           <packing>
                             <property name="left_attach">0</property>
@@ -219,10 +232,13 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="scuilo-ScDoubleField" id="edit_end">
+                          <object class="GtkEntry" id="edit_end">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="hexpand">True</property>
+                            <accessibility>
+                              <relation type="labelled-by" target="manual_end"/>
+                            </accessibility>
                           </object>
                           <packing>
                             <property name="left_attach">1</property>
@@ -266,9 +282,10 @@
                     <property name="top_padding">6</property>
                     <property name="left_padding">12</property>
                     <child>
-                      <object class="scuilo-ScDoubleField" id="edit_by">
+                      <object class="GtkEntry" id="edit_by">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="activates_default">True</property>
                       </object>
                     </child>
                   </object>
diff --git a/solenv/sanitizers/ui/modules/scalc.suppr b/solenv/sanitizers/ui/modules/scalc.suppr
index 3ce7f2635669..ffed06f1dca5 100644
--- a/solenv/sanitizers/ui/modules/scalc.suppr
+++ b/solenv/sanitizers/ui/modules/scalc.suppr
@@ -75,6 +75,7 @@ sc/uiconfig/scalc/ui/functionpanel.ui://GtkLabel[@id='funcdesc:border'] orphan-l
 sc/uiconfig/scalc/ui/groupbydate.ui://GtkSpinButton[@id='start_date:yy:mm:dd'] no-labelled-by
 sc/uiconfig/scalc/ui/groupbydate.ui://GtkSpinButton[@id='end_date:yy:mm:dd'] no-labelled-by
 sc/uiconfig/scalc/ui/groupbydate.ui://GtkSpinButton[@id='days_value'] no-labelled-by
+sc/uiconfig/scalc/ui/groupbynumber.ui://GtkEntry[@id='edit_by'] no-labelled-by
 sc/uiconfig/scalc/ui/headerfootercontent.ui://GtkLabel[@id='labelFT_H_CUSTOM'] orphan-label
 sc/uiconfig/scalc/ui/headerfootercontent.ui://GtkLabel[@id='labelFT_F_CUSTOM'] orphan-label
 sc/uiconfig/scalc/ui/headerfootercontent.ui://GtkLabel[@id='label2'] orphan-label


More information about the Libreoffice-commits mailing list