[Libreoffice-commits] core.git: chart2/AllLangResTarget_chartcontroller.mk chart2/source chart2/uiconfig chart2/UIConfig_chart2.mk

Laurent Balland-Poirier laurent.balland-poirier at laposte.net
Tue Nov 12 04:55:11 PST 2013


 chart2/AllLangResTarget_chartcontroller.mk         |    1 
 chart2/UIConfig_chart2.mk                          |    1 
 chart2/source/controller/dialogs/res_Trendline.cxx |  176 +++----
 chart2/source/controller/dialogs/res_Trendline.hxx |   56 --
 chart2/source/controller/dialogs/tp_Trendline.cxx  |    3 
 chart2/source/controller/dialogs/tp_Trendline.hrc  |   52 --
 chart2/source/controller/dialogs/tp_Trendline.src  |  226 --------
 chart2/uiconfig/ui/tp_Trendline.ui                 |  528 +++++++++++++++++++++
 8 files changed, 636 insertions(+), 407 deletions(-)

New commits:
commit d8dc136bbf4298c739a9691b41d8c4234183d4cc
Author: Laurent Balland-Poirier <laurent.balland-poirier at laposte.net>
Date:   Mon Nov 11 15:55:47 2013 +0100

    Convert tp_Trendline.src to .ui
    
    Change-Id: I429a90441a68a94403d89d7746628528ed4dc876
    Reviewed-on: https://gerrit.libreoffice.org/6638
    Tested-by: Caolán McNamara <caolanm at redhat.com>
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/chart2/AllLangResTarget_chartcontroller.mk b/chart2/AllLangResTarget_chartcontroller.mk
index 3c0cde9..4c94128 100644
--- a/chart2/AllLangResTarget_chartcontroller.mk
+++ b/chart2/AllLangResTarget_chartcontroller.mk
@@ -60,7 +60,6 @@ $(eval $(call gb_SrsTarget_add_files,chart2/res,\
     chart2/source/controller/dialogs/tp_PolarOptions.src \
     chart2/source/controller/dialogs/tp_RangeChooser.src \
     chart2/source/controller/dialogs/tp_Scale.src \
-    chart2/source/controller/dialogs/tp_Trendline.src \
     chart2/source/controller/dialogs/tp_Wizard_TitlesAndObjects.src \
 ))
 
diff --git a/chart2/UIConfig_chart2.mk b/chart2/UIConfig_chart2.mk
index 999547c..a1e6b3c 100644
--- a/chart2/UIConfig_chart2.mk
+++ b/chart2/UIConfig_chart2.mk
@@ -38,6 +38,7 @@ $(eval $(call gb_UIConfig_add_uifiles,modules/schart,\
 	chart2/uiconfig/ui/titlerotationtabpage \
 	chart2/uiconfig/ui/tp_axisLabel \
 	chart2/uiconfig/ui/tp_SeriesToAxis \
+	chart2/uiconfig/ui/tp_Trendline \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/chart2/source/controller/dialogs/res_Trendline.cxx b/chart2/source/controller/dialogs/res_Trendline.cxx
index a8882fd..f8ba0fa 100644
--- a/chart2/source/controller/dialogs/res_Trendline.cxx
+++ b/chart2/source/controller/dialogs/res_Trendline.cxx
@@ -18,13 +18,13 @@
  */
 
 #include "res_Trendline.hxx"
-#include "tp_Trendline.hrc"
 #include "ResId.hxx"
 #include "Strings.hrc"
 #include "Bitmaps.hrc"
 #include "chartview/ChartSfxItemIds.hxx"
 
 #include <svl/intitem.hxx>
+#include <sfx2/tabdlg.hxx>
 
 #include <vector>
 #include <algorithm>
@@ -33,52 +33,44 @@ namespace chart
 {
 
 TrendlineResources::TrendlineResources( Window * pParent, const SfxItemSet& rInAttrs ) :
-        m_aFLType( pParent, SchResId( FL_TYPE )),
-
-        m_aRBLinear(        pParent, SchResId( RB_LINEAR            )),
-        m_aRBLogarithmic(   pParent, SchResId( RB_LOGARITHMIC       )),
-        m_aRBExponential(   pParent, SchResId( RB_EXPONENTIAL       )),
-        m_aRBPower(         pParent, SchResId( RB_POWER             )),
-        m_aRBPolynomial(    pParent, SchResId( RB_POLYNOMIAL        )),
-        m_aRBMovingAverage( pParent, SchResId( RB_MOVING_AVERAGE    )),
-
-        m_aFILinear(        pParent, SchResId( FI_LINEAR            )),
-        m_aFILogarithmic(   pParent, SchResId( FI_LOGARITHMIC       )),
-        m_aFIExponential(   pParent, SchResId( FI_EXPONENTIAL       )),
-        m_aFIPower(         pParent, SchResId( FI_POWER             )),
-        m_aFIPolynomial(    pParent, SchResId( FI_POLYNOMIAL       )),
-        m_aFIMovingAverage( pParent, SchResId( FI_MOVING_AVERAGE    )),
-
-        m_aFT_Degree(       pParent, SchResId( FT_DEGREE            )),
-        m_aNF_Degree(       pParent, SchResId( NF_DEGREE            )),
-        m_aFT_Period(       pParent, SchResId( FT_PERIOD            )),
-        m_aNF_Period(       pParent, SchResId( NF_PERIOD            )),
-
-        m_aFT_ExtrapolateForward(   pParent, SchResId( FT_EXTRAPOLATE_FORWARD            )),
-        m_aNF_ExtrapolateForward(   pParent, SchResId( NF_EXTRAPOLATE_FORWARD            )),
-        m_aFT_ExtrapolateBackward(  pParent, SchResId( FT_EXTRAPOLATE_BACKWARD           )),
-        m_aNF_ExtrapolateBackward(  pParent, SchResId( NF_EXTRAPOLATE_BACKWARD           )),
-        m_aCB_SetIntercept(         pParent, SchResId( CB_SET_INTERCEPT          )),
-        m_aNF_InterceptValue(       pParent, SchResId( NF_INTERCEPT_VALUE            )),
-
-        m_aFLEquation(             pParent, SchResId( FL_EQUATION               )),
-        m_aCBShowEquation(         pParent, SchResId( CB_SHOW_EQUATION          )),
-        m_aCBShowCorrelationCoeff( pParent, SchResId( CB_SHOW_CORRELATION_COEFF )),
-
         m_eTrendLineType( CHREGRESS_LINEAR ),
         m_bTrendLineUnique( true )
 {
+    ((SfxTabPage*)pParent)->get(m_pRB_Linear,"linear");
+    ((SfxTabPage*)pParent)->get(m_pRB_Logarithmic,"logarithmic");
+    ((SfxTabPage*)pParent)->get(m_pRB_Exponential,"exponential");
+    ((SfxTabPage*)pParent)->get(m_pRB_Power,"power");
+    ((SfxTabPage*)pParent)->get(m_pRB_Polynomial,"polynomial");
+    ((SfxTabPage*)pParent)->get(m_pRB_MovingAverage,"movingAverage");
+    ((SfxTabPage*)pParent)->get(m_pNF_Degree,"degree");
+    ((SfxTabPage*)pParent)->get(m_pNF_Period,"period");
+    ((SfxTabPage*)pParent)->get(m_pNF_ExtrapolateForward,"extrapolateForward");
+    ((SfxTabPage*)pParent)->get(m_pNF_ExtrapolateBackward,"extrapolateBackward");
+    ((SfxTabPage*)pParent)->get(m_pCB_SetIntercept,"setIntercept");
+    ((SfxTabPage*)pParent)->get(m_pNF_InterceptValue,"interceptValue");
+    ((SfxTabPage*)pParent)->get(m_pCB_ShowEquation,"showEquation");
+    ((SfxTabPage*)pParent)->get(m_pCB_ShowCorrelationCoeff,"showCorrelationCoefficient");
+    ((SfxTabPage*)pParent)->get(m_pFI_Linear,"imageLinear");
+    ((SfxTabPage*)pParent)->get(m_pFI_Logarithmic,"imageLogarithmic");
+    ((SfxTabPage*)pParent)->get(m_pFI_Exponential,"imageExponential");
+    ((SfxTabPage*)pParent)->get(m_pFI_Power,"imagePower");
+    ((SfxTabPage*)pParent)->get(m_pFI_Polynomial,"imagePolynomial");
+    ((SfxTabPage*)pParent)->get(m_pFI_MovingAverage,"imageMovingAverage");
     FillValueSets();
 
-    m_aRBLinear.SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
-    m_aRBLogarithmic.SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
-    m_aRBExponential.SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
-    m_aRBPower.SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
-    m_aRBPolynomial.SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
-    m_aRBMovingAverage.SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
+    m_pRB_Linear->SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
+    m_pRB_Logarithmic->SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
+    m_pRB_Exponential->SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
+    m_pRB_Power->SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
+    m_pRB_Polynomial->SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
+    m_pRB_MovingAverage->SetClickHdl( LINK(this, TrendlineResources, SelectTrendLine ));
 
-    m_aNF_InterceptValue.SetMin( SAL_MIN_INT64 );
-    m_aNF_InterceptValue.SetMax( SAL_MAX_INT64 );
+    m_pNF_ExtrapolateForward->SetMin( SAL_MIN_INT64 );
+    m_pNF_ExtrapolateForward->SetMax( SAL_MAX_INT64 );
+    m_pNF_ExtrapolateBackward->SetMin( SAL_MIN_INT64 );
+    m_pNF_ExtrapolateBackward->SetMax( SAL_MAX_INT64 );
+    m_pNF_InterceptValue->SetMin( SAL_MIN_INT64 );
+    m_pNF_InterceptValue->SetMax( SAL_MAX_INT64 );
 
     Reset( rInAttrs );
     UpdateControlStates();
@@ -89,17 +81,17 @@ TrendlineResources::~TrendlineResources()
 
 IMPL_LINK( TrendlineResources, SelectTrendLine, RadioButton *, pRadioButton )
 {
-    if( pRadioButton == &m_aRBLinear )
+    if( pRadioButton == m_pRB_Linear )
         m_eTrendLineType = CHREGRESS_LINEAR;
-    else if( pRadioButton == &m_aRBLogarithmic )
+    else if( pRadioButton == m_pRB_Logarithmic )
         m_eTrendLineType = CHREGRESS_LOG;
-    else if( pRadioButton == &m_aRBExponential )
+    else if( pRadioButton == m_pRB_Exponential )
         m_eTrendLineType = CHREGRESS_EXP;
-    else if( pRadioButton == &m_aRBPower )
+    else if( pRadioButton == m_pRB_Power )
         m_eTrendLineType = CHREGRESS_POWER;
-    else if( pRadioButton == &m_aRBPolynomial )
+    else if( pRadioButton == m_pRB_Polynomial )
         m_eTrendLineType = CHREGRESS_POLYNOMIAL;
-    else if( pRadioButton == &m_aRBMovingAverage )
+    else if( pRadioButton == m_pRB_MovingAverage )
         m_eTrendLineType = CHREGRESS_MOVING_AVERAGE;
     m_bTrendLineUnique = true;
 
@@ -126,90 +118,90 @@ void TrendlineResources::Reset( const SfxItemSet& rInAttrs )
     if( rInAttrs.GetItemState( SCHATTR_REGRESSION_DEGREE, sal_True, &pPoolItem ) == SFX_ITEM_SET )
     {
         sal_Int32 nDegree = static_cast< const SfxInt32Item * >( pPoolItem )->GetValue();
-        m_aNF_Degree.SetValue( nDegree );
+        m_pNF_Degree->SetValue( nDegree );
     }
     else
     {
-        m_aNF_Degree.SetValue( 2 );
+        m_pNF_Degree->SetValue( 2 );
     }
 
     if( rInAttrs.GetItemState( SCHATTR_REGRESSION_PERIOD, sal_True, &pPoolItem ) == SFX_ITEM_SET )
     {
         sal_Int32 nPeriod = static_cast< const SfxInt32Item * >( pPoolItem )->GetValue();
-        m_aNF_Period.SetValue( nPeriod );
+        m_pNF_Period->SetValue( nPeriod );
     }
     else
     {
-        m_aNF_Period.SetValue( 2 );
+        m_pNF_Period->SetValue( 2 );
     }
 
     if( rInAttrs.GetItemState( SCHATTR_REGRESSION_EXTRAPOLATE_FORWARD, sal_True, &pPoolItem ) == SFX_ITEM_SET )
     {
         double nValue = static_cast< const SvxDoubleItem * >( pPoolItem )->GetValue() * 100;
-        m_aNF_ExtrapolateForward.SetValue( (sal_Int64) nValue );
+        m_pNF_ExtrapolateForward->SetValue( (sal_Int64) nValue );
     }
     else
     {
-        m_aNF_ExtrapolateForward.SetValue( 0 );
+        m_pNF_ExtrapolateForward->SetValue( 0 );
     }
 
     if( rInAttrs.GetItemState( SCHATTR_REGRESSION_EXTRAPOLATE_BACKWARD, sal_True, &pPoolItem ) == SFX_ITEM_SET )
     {
         double nValue = static_cast< const SvxDoubleItem * >( pPoolItem )->GetValue() * 100;
-        m_aNF_ExtrapolateBackward.SetValue( (sal_Int64) nValue );
+        m_pNF_ExtrapolateBackward->SetValue( (sal_Int64) nValue );
     }
     else
     {
-        m_aNF_ExtrapolateBackward.SetValue( 0 );
+        m_pNF_ExtrapolateBackward->SetValue( 0 );
     }
 
     if( rInAttrs.GetItemState( SCHATTR_REGRESSION_INTERCEPT_VALUE, sal_True, &pPoolItem ) == SFX_ITEM_SET )
     {
         double nValue = static_cast< const SvxDoubleItem * >( pPoolItem )->GetValue() * 10000;
-        m_aNF_InterceptValue.SetValue( (sal_Int64) nValue );
+        m_pNF_InterceptValue->SetValue( (sal_Int64) nValue );
     }
     else
     {
-        m_aNF_InterceptValue.SetValue( 0 );
+        m_pNF_InterceptValue->SetValue( 0 );
     }
 
     aState = rInAttrs.GetItemState( SCHATTR_REGRESSION_SET_INTERCEPT, sal_True, &pPoolItem );
     if( aState == SFX_ITEM_DONTCARE )
     {
-        m_aCB_SetIntercept.EnableTriState( sal_True );
-        m_aCB_SetIntercept.SetState( STATE_DONTKNOW );
+        m_pCB_SetIntercept->EnableTriState( sal_True );
+        m_pCB_SetIntercept->SetState( STATE_DONTKNOW );
     }
     else
     {
-        m_aCB_SetIntercept.EnableTriState( sal_False );
+        m_pCB_SetIntercept->EnableTriState( sal_False );
         if( aState == SFX_ITEM_SET )
-            m_aCB_SetIntercept.Check( static_cast< const SfxBoolItem * >( pPoolItem )->GetValue());
+            m_pCB_SetIntercept->Check( static_cast< const SfxBoolItem * >( pPoolItem )->GetValue());
     }
 
     aState = rInAttrs.GetItemState( SCHATTR_REGRESSION_SHOW_EQUATION, sal_True, &pPoolItem );
     if( aState == SFX_ITEM_DONTCARE )
     {
-        m_aCBShowEquation.EnableTriState( sal_True );
-        m_aCBShowEquation.SetState( STATE_DONTKNOW );
+        m_pCB_ShowEquation->EnableTriState( sal_True );
+        m_pCB_ShowEquation->SetState( STATE_DONTKNOW );
     }
     else
     {
-        m_aCBShowEquation.EnableTriState( sal_False );
+        m_pCB_ShowEquation->EnableTriState( sal_False );
         if( aState == SFX_ITEM_SET )
-            m_aCBShowEquation.Check( static_cast< const SfxBoolItem * >( pPoolItem )->GetValue());
+            m_pCB_ShowEquation->Check( static_cast< const SfxBoolItem * >( pPoolItem )->GetValue());
     }
 
     aState = rInAttrs.GetItemState( SCHATTR_REGRESSION_SHOW_COEFF, sal_True, &pPoolItem );
     if( aState == SFX_ITEM_DONTCARE )
     {
-        m_aCBShowCorrelationCoeff.EnableTriState( sal_True );
-        m_aCBShowCorrelationCoeff.SetState( STATE_DONTKNOW );
+        m_pCB_ShowCorrelationCoeff->EnableTriState( sal_True );
+        m_pCB_ShowCorrelationCoeff->SetState( STATE_DONTKNOW );
     }
     else
     {
-        m_aCBShowCorrelationCoeff.EnableTriState( sal_False );
+        m_pCB_ShowCorrelationCoeff->EnableTriState( sal_False );
         if( aState == SFX_ITEM_SET )
-            m_aCBShowCorrelationCoeff.Check( static_cast< const SfxBoolItem * >( pPoolItem )->GetValue());
+            m_pCB_ShowCorrelationCoeff->Check( static_cast< const SfxBoolItem * >( pPoolItem )->GetValue());
     }
 
     if( m_bTrendLineUnique )
@@ -217,22 +209,22 @@ void TrendlineResources::Reset( const SfxItemSet& rInAttrs )
         switch( m_eTrendLineType )
         {
             case CHREGRESS_LINEAR :
-                m_aRBLinear.Check();
+                m_pRB_Linear->Check();
                 break;
             case CHREGRESS_LOG :
-                m_aRBLogarithmic.Check();
+                m_pRB_Logarithmic->Check();
                 break;
             case CHREGRESS_EXP :
-                m_aRBExponential.Check();
+                m_pRB_Exponential->Check();
                 break;
             case CHREGRESS_POWER :
-                m_aRBPower.Check();
+                m_pRB_Power->Check();
                 break;
             case CHREGRESS_POLYNOMIAL :
-                m_aRBPolynomial.Check();
+                m_pRB_Polynomial->Check();
                 break;
             case CHREGRESS_MOVING_AVERAGE :
-                m_aRBMovingAverage.Check();
+                m_pRB_MovingAverage->Check();
                 break;
             default:
                 break;
@@ -245,28 +237,28 @@ sal_Bool TrendlineResources::FillItemSet(SfxItemSet& rOutAttrs) const
     if( m_bTrendLineUnique )
         rOutAttrs.Put( SvxChartRegressItem( m_eTrendLineType, SCHATTR_REGRESSION_TYPE ));
 
-    if( m_aCBShowEquation.GetState() != STATE_DONTKNOW )
-        rOutAttrs.Put( SfxBoolItem( SCHATTR_REGRESSION_SHOW_EQUATION, m_aCBShowEquation.IsChecked() ));
+    if( m_pCB_ShowEquation->GetState() != STATE_DONTKNOW )
+        rOutAttrs.Put( SfxBoolItem( SCHATTR_REGRESSION_SHOW_EQUATION, m_pCB_ShowEquation->IsChecked() ));
 
-    if( m_aCBShowCorrelationCoeff.GetState() != STATE_DONTKNOW )
-        rOutAttrs.Put( SfxBoolItem( SCHATTR_REGRESSION_SHOW_COEFF, m_aCBShowCorrelationCoeff.IsChecked() ));
+    if( m_pCB_ShowCorrelationCoeff->GetState() != STATE_DONTKNOW )
+        rOutAttrs.Put( SfxBoolItem( SCHATTR_REGRESSION_SHOW_COEFF, m_pCB_ShowCorrelationCoeff->IsChecked() ));
 
-    sal_Int32 aDegree = m_aNF_Degree.GetValue();
+    sal_Int32 aDegree = m_pNF_Degree->GetValue();
     rOutAttrs.Put(SfxInt32Item( SCHATTR_REGRESSION_DEGREE, aDegree ) );
 
-    sal_Int32 aPeriod = m_aNF_Period.GetValue();
+    sal_Int32 aPeriod = m_pNF_Period->GetValue();
     rOutAttrs.Put(SfxInt32Item( SCHATTR_REGRESSION_PERIOD, aPeriod ) );
 
-    double aExtrapolateForwardValue = m_aNF_ExtrapolateForward.GetValue() / 100.0;
+    double aExtrapolateForwardValue = m_pNF_ExtrapolateForward->GetValue() / 100.0;
     rOutAttrs.Put(SvxDoubleItem( aExtrapolateForwardValue, SCHATTR_REGRESSION_EXTRAPOLATE_FORWARD ) );
 
-    double aExtrapolateBackwardValue = m_aNF_ExtrapolateBackward.GetValue() / 100.0;
+    double aExtrapolateBackwardValue = m_pNF_ExtrapolateBackward->GetValue() / 100.0;
     rOutAttrs.Put(SvxDoubleItem( aExtrapolateBackwardValue, SCHATTR_REGRESSION_EXTRAPOLATE_BACKWARD ) );
 
-    if( m_aCB_SetIntercept.GetState() != STATE_DONTKNOW )
-        rOutAttrs.Put( SfxBoolItem( SCHATTR_REGRESSION_SET_INTERCEPT, m_aCB_SetIntercept.IsChecked() ));
+    if( m_pCB_SetIntercept->GetState() != STATE_DONTKNOW )
+        rOutAttrs.Put( SfxBoolItem( SCHATTR_REGRESSION_SET_INTERCEPT, m_pCB_SetIntercept->IsChecked() ));
 
-    double aInterceptValue = m_aNF_InterceptValue.GetValue() / 10000.0;
+    double aInterceptValue = m_pNF_InterceptValue->GetValue() / 10000.0;
     rOutAttrs.Put(SvxDoubleItem( aInterceptValue, SCHATTR_REGRESSION_INTERCEPT_VALUE ) );
 
     return sal_True;
@@ -274,12 +266,12 @@ sal_Bool TrendlineResources::FillItemSet(SfxItemSet& rOutAttrs) const
 
 void TrendlineResources::FillValueSets()
 {
-    m_aFILinear.SetImage(       Image( SchResId( BMP_REGRESSION_LINEAR          ) ) );
-    m_aFILogarithmic.SetImage(  Image( SchResId( BMP_REGRESSION_LOG             ) ) );
-    m_aFIExponential.SetImage(  Image( SchResId( BMP_REGRESSION_EXP             ) ) );
-    m_aFIPower.SetImage(        Image( SchResId( BMP_REGRESSION_POWER           ) ) );
-    m_aFIPolynomial.SetImage(   Image( SchResId( BMP_REGRESSION_POLYNOMIAL      ) ) );
-    m_aFIMovingAverage.SetImage(Image( SchResId( BMP_REGRESSION_MOVING_AVERAGE  ) ) );
+    m_pFI_Linear->SetImage(       Image( SchResId( BMP_REGRESSION_LINEAR          ) ) );
+    m_pFI_Logarithmic->SetImage(  Image( SchResId( BMP_REGRESSION_LOG             ) ) );
+    m_pFI_Exponential->SetImage(  Image( SchResId( BMP_REGRESSION_EXP             ) ) );
+    m_pFI_Power->SetImage(        Image( SchResId( BMP_REGRESSION_POWER           ) ) );
+    m_pFI_Polynomial->SetImage(   Image( SchResId( BMP_REGRESSION_POLYNOMIAL      ) ) );
+    m_pFI_MovingAverage->SetImage(Image( SchResId( BMP_REGRESSION_MOVING_AVERAGE  ) ) );
 }
 
 void TrendlineResources::UpdateControlStates()
diff --git a/chart2/source/controller/dialogs/res_Trendline.hxx b/chart2/source/controller/dialogs/res_Trendline.hxx
index f23a5b8..0c12d71 100644
--- a/chart2/source/controller/dialogs/res_Trendline.hxx
+++ b/chart2/source/controller/dialogs/res_Trendline.hxx
@@ -41,40 +41,28 @@ public:
     void FillValueSets();
 
 private:
-    FixedLine m_aFLType;
-
-    RadioButton m_aRBLinear;
-    RadioButton m_aRBLogarithmic;
-    RadioButton m_aRBExponential;
-    RadioButton m_aRBPower;
-    RadioButton m_aRBPolynomial;
-    RadioButton m_aRBMovingAverage;
-
-    FixedImage  m_aFILinear;
-    FixedImage  m_aFILogarithmic;
-    FixedImage  m_aFIExponential;
-    FixedImage  m_aFIPower;
-    FixedImage  m_aFIPolynomial;
-    FixedImage  m_aFIMovingAverage;
-
-    FixedText         m_aFT_Degree;
-    NumericField      m_aNF_Degree;
-    FixedText         m_aFT_Period;
-    NumericField      m_aNF_Period;
-
-    FixedText         m_aFT_ExtrapolateForward;
-    NumericField      m_aNF_ExtrapolateForward;
-
-    FixedText         m_aFT_ExtrapolateBackward;
-    NumericField      m_aNF_ExtrapolateBackward;
-
-    CheckBox          m_aCB_SetIntercept;
-    NumericField      m_aNF_InterceptValue;
-
-    FixedLine m_aFLEquation;
-
-    CheckBox m_aCBShowEquation;
-    CheckBox m_aCBShowCorrelationCoeff;
+    RadioButton* m_pRB_Linear;
+    RadioButton* m_pRB_Logarithmic;
+    RadioButton* m_pRB_Exponential;
+    RadioButton* m_pRB_Power;
+    RadioButton* m_pRB_Polynomial;
+    RadioButton* m_pRB_MovingAverage;
+
+    FixedImage*  m_pFI_Linear;
+    FixedImage*  m_pFI_Logarithmic;
+    FixedImage*  m_pFI_Exponential;
+    FixedImage*  m_pFI_Power;
+    FixedImage*  m_pFI_Polynomial;
+    FixedImage*  m_pFI_MovingAverage;
+
+    NumericField* m_pNF_Degree;
+    NumericField* m_pNF_Period;
+    NumericField* m_pNF_ExtrapolateForward;
+    NumericField* m_pNF_ExtrapolateBackward;
+    CheckBox*     m_pCB_SetIntercept;
+    NumericField* m_pNF_InterceptValue;
+    CheckBox*     m_pCB_ShowEquation;
+    CheckBox*     m_pCB_ShowCorrelationCoeff;
 
     SvxChartRegress     m_eTrendLineType;
 
diff --git a/chart2/source/controller/dialogs/tp_Trendline.cxx b/chart2/source/controller/dialogs/tp_Trendline.cxx
index a942c0d..959f7eb 100644
--- a/chart2/source/controller/dialogs/tp_Trendline.cxx
+++ b/chart2/source/controller/dialogs/tp_Trendline.cxx
@@ -25,10 +25,9 @@ namespace chart
 {
 
 TrendlineTabPage::TrendlineTabPage( Window* pParent, const SfxItemSet& rInAttrs ) :
-        SfxTabPage( pParent, SchResId( TP_TRENDLINE ), rInAttrs ),
+        SfxTabPage( pParent, "TP_TRENDLINE", "modules/schart/ui/tp_Trendline.ui", rInAttrs ),
         m_aTrendlineResources( this, rInAttrs )
 {
-    FreeResource();
 }
 
 TrendlineTabPage::~TrendlineTabPage()
diff --git a/chart2/source/controller/dialogs/tp_Trendline.hrc b/chart2/source/controller/dialogs/tp_Trendline.hrc
deleted file mode 100644
index 5ecfb77db..0000000
--- a/chart2/source/controller/dialogs/tp_Trendline.hrc
+++ /dev/null
@@ -1,52 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-
-#define FL_TYPE 1
-#define FL_EQUATION 2
-
-#define FI_LINEAR 2
-#define FI_LOGARITHMIC 3
-#define FI_EXPONENTIAL 4
-#define FI_POWER 5
-#define FI_POLYNOMIAL 6
-#define FI_MOVING_AVERAGE 7
-
-#define NF_DEGREE 1
-#define NF_PERIOD 2
-#define NF_EXTRAPOLATE_FORWARD 3
-#define NF_EXTRAPOLATE_BACKWARD 4
-#define NF_INTERCEPT_VALUE 5
-
-#define FT_DEGREE 1
-#define FT_PERIOD 2
-#define FT_EXTRAPOLATE_FORWARD 3
-#define FT_EXTRAPOLATE_BACKWARD 4
-
-#define RB_LINEAR 2
-#define RB_LOGARITHMIC 3
-#define RB_EXPONENTIAL 4
-#define RB_POWER 5
-#define RB_POLYNOMIAL 6
-#define RB_MOVING_AVERAGE 7
-
-#define CB_SHOW_EQUATION 1
-#define CB_SHOW_CORRELATION_COEFF 2
-#define CB_SET_INTERCEPT 3
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/dialogs/tp_Trendline.src b/chart2/source/controller/dialogs/tp_Trendline.src
deleted file mode 100644
index 2ed7dea..0000000
--- a/chart2/source/controller/dialogs/tp_Trendline.src
+++ /dev/null
@@ -1,226 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- *   Licensed to the Apache Software Foundation (ASF) under one or more
- *   contributor license agreements. See the NOTICE file distributed
- *   with this work for additional information regarding copyright
- *   ownership. The ASF licenses this file to you under the Apache
- *   License, Version 2.0 (the "License"); you may not use this file
- *   except in compliance with the License. You may obtain a copy of
- *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
- */
-#include "HelpIds.hrc"
-#include "TabPages.hrc"
-#include "tp_Trendline.hrc"
-
-TabPage TP_TRENDLINE
-{
-    HelpID = "chart2:TabPage:TP_TRENDLINE";
-    Hide = TRUE ;
-    SVLook = TRUE ;
-    Size = MAP_APPFONT ( TP_WIDTH , TP_HEIGHT ) ;
-
-    FixedLine FL_TYPE
-    {
-        Pos = MAP_APPFONT( 6 ,6  );
-        Size = MAP_APPFONT( 248 - 12 ,8 );
-        Text[ en-US ] = "Regression Type";
-    };
-    RadioButton RB_LINEAR
-    {
-        HelpId = HID_SCH_TRENDLINE_RB_LINEAR;
-        Pos = MAP_APPFONT( 29, 22 );
-        Size = MAP_APPFONT( 100, 10 );
-        Text[ en-US ] = "~Linear";
-    };
-    RadioButton RB_LOGARITHMIC
-    {
-        HelpId = HID_SCH_TRENDLINE_RB_LOGARITHMIC;
-        Pos = MAP_APPFONT( 29, 44 );
-        Size = MAP_APPFONT( 100, 10 );
-        Text[ en-US ] = "L~ogarithmic";
-    };
-    RadioButton RB_EXPONENTIAL
-    {
-        HelpId = HID_SCH_TRENDLINE_RB_EXPONENTIAL;
-        Pos = MAP_APPFONT( 29, 66 );
-        Size = MAP_APPFONT( 100, 10 );
-        Text[ en-US ] = "E~xponential";
-    };
-    RadioButton RB_POWER
-    {
-        HelpId = HID_SCH_TRENDLINE_RB_POWER;
-        Pos = MAP_APPFONT( 29, 88 );
-        Size = MAP_APPFONT( 100, 10 );
-        Text[ en-US ] = "~Power";
-    };
-    RadioButton RB_POLYNOMIAL
-    {
-        Pos = MAP_APPFONT( 130, 22 );
-        Size = MAP_APPFONT( 70, 10 );
-        Text[ en-US ] = "~Polynomial";
-    };
-    RadioButton RB_MOVING_AVERAGE
-    {
-        Pos = MAP_APPFONT( 130, 66 );
-        Size = MAP_APPFONT( 70, 10 );
-        Text[ en-US ] = "~Moving Average";
-    };
-    FixedImage FI_LINEAR
-    {
-        Pos = MAP_APPFONT( 10, 18 );
-        Size = MAP_APPFONT( 18, 18 );
-    };
-    FixedImage FI_LOGARITHMIC
-    {
-        Pos = MAP_APPFONT( 10, 40 );
-        Size = MAP_APPFONT( 18, 18 );
-    };
-    FixedImage FI_EXPONENTIAL
-    {
-        Pos = MAP_APPFONT( 10, 62 );
-        Size = MAP_APPFONT( 18, 18 );
-    };
-    FixedImage FI_POWER
-    {
-        Pos = MAP_APPFONT( 10, 84 );
-        Size = MAP_APPFONT( 18, 18 );
-    };
-    FixedImage FI_POLYNOMIAL
-    {
-        Pos = MAP_APPFONT( 110, 18 );
-        Size = MAP_APPFONT( 18, 18 );
-    };
-    FixedImage FI_MOVING_AVERAGE
-    {
-        Pos = MAP_APPFONT( 110, 62 );
-        Size = MAP_APPFONT( 18, 18 );
-    };
-    FixedText FT_DEGREE
-    {
-        Pos = MAP_APPFONT ( 110, 44 ) ;
-        Size = MAP_APPFONT ( 20 , 12 ) ;
-        Text [ en-US ] = "Degree";
-    };
-    NumericField NF_DEGREE
-    {
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 132, 42 ) ;
-        Size = MAP_APPFONT ( 28 , 12 ) ;
-        TabStop = TRUE ;
-        Repeat = TRUE ;
-        Spin = TRUE ;
-        StrictFormat = TRUE ;
-        SpinSize = 1 ;
-        Minimum = 2 ;
-        Maximum = 100 ;
-    };
-    FixedText FT_PERIOD
-    {
-        Pos = MAP_APPFONT ( 110, 88 ) ;
-        Size = MAP_APPFONT ( 20 , 12 ) ;
-        Text [ en-US ] = "Period";
-    };
-    NumericField NF_PERIOD
-    {
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 132, 86 ) ;
-        Size = MAP_APPFONT ( 28 , 12 ) ;
-        TabStop = TRUE ;
-        Repeat = TRUE ;
-        Spin = TRUE ;
-        StrictFormat = TRUE ;
-        SpinSize = 1 ;
-        Minimum = 2 ;
-        Maximum = 100 ;
-    };
-    FixedLine FL_EQUATION
-    {
-        Pos = MAP_APPFONT( 6, 108 );
-        Size = MAP_APPFONT( 248 - 12, 8 );
-        Text[ en-US ] = "Options";
-    };
-    FixedText FT_EXTRAPOLATE_FORWARD
-    {
-        Pos = MAP_APPFONT ( 10, 120 ) ;
-        Size = MAP_APPFONT ( 70 , 12 ) ;
-        Text [ en-US ] = "Extrapolate ~forward";
-    };
-    NumericField NF_EXTRAPOLATE_FORWARD
-    {
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 80, 118 ) ;
-        Size = MAP_APPFONT ( 40 , 12 ) ;
-        TabStop = TRUE ;
-        Repeat = TRUE ;
-        Spin = TRUE ;
-        StrictFormat = TRUE ;
-        SpinSize = 50 ;
-        Minimum = 0 ;
-        Maximum = 10000 ;
-        DecimalDigits = 2 ;
-    };
-    FixedText FT_EXTRAPOLATE_BACKWARD
-    {
-        Pos = MAP_APPFONT ( 10, 134 ) ;
-        Size = MAP_APPFONT ( 70 , 12 ) ;
-        Text [ en-US ] = "Extrapolate ~backward";
-    };
-    NumericField NF_EXTRAPOLATE_BACKWARD
-    {
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 80, 132 ) ;
-        Size = MAP_APPFONT ( 40 , 12 ) ;
-        TabStop = TRUE ;
-        Repeat = TRUE ;
-        Spin = TRUE ;
-        StrictFormat = TRUE ;
-        SpinSize = 50 ;
-        Minimum = 0 ;
-        Maximum = 10000 ;
-        DecimalDigits = 2 ;
-    };
-    CheckBox CB_SET_INTERCEPT
-    {
-        HelpId = HID_SCH_TRENDLINE_SHOW_EQUATION;
-        Pos = MAP_APPFONT( 10, 148 );
-        Size = MAP_APPFONT( 60, 12 );
-        TabStop = TRUE;
-        Text[ en-US ] = "Force ~intercept";
-    };
-    NumericField NF_INTERCEPT_VALUE
-    {
-        Border = TRUE ;
-        Pos = MAP_APPFONT ( 80, 146 ) ;
-        Size = MAP_APPFONT ( 40 , 12 ) ;
-        TabStop = TRUE ;
-        Spin = TRUE ;
-        SpinSize = 1000 ;
-        DecimalDigits = 4 ;
-    };
-    CheckBox CB_SHOW_EQUATION
-    {
-        HelpId = HID_SCH_TRENDLINE_SHOW_EQUATION;
-        Pos = MAP_APPFONT( 10, 162 );
-        Size = MAP_APPFONT( 248 - 20, 10 );
-        TabStop = TRUE;
-        Text[ en-US ] = "Show ~equation";
-    };
-    CheckBox CB_SHOW_CORRELATION_COEFF
-    {
-        HelpId = HID_SCH_TRENDLINE_SHOW_R_SQUARED;
-        Pos = MAP_APPFONT( 10, 176 );
-        Size = MAP_APPFONT( 248 - 20, 10 );
-        TabStop = TRUE;
-        Text[ en-US ] = "Show ~coefficient of determination (R²)";
-    };
-};
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/uiconfig/ui/tp_Trendline.ui b/chart2/uiconfig/ui/tp_Trendline.ui
new file mode 100644
index 0000000..a8be284
--- /dev/null
+++ b/chart2/uiconfig/ui/tp_Trendline.ui
@@ -0,0 +1,528 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <!-- interface-requires gtk+ 3.0 -->
+  <object class="GtkAdjustment" id="adjustmentDegree">
+    <property name="lower">2</property>
+    <property name="upper">10</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustmentForwardBacward">
+    <property name="lower">-10000</property>
+    <property name="upper">10000</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustmentPeriod">
+    <property name="lower">2</property>
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkBox" id="TP_TRENDLINE">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="hexpand">True</property>
+    <property name="vexpand">True</property>
+    <property name="border_width">6</property>
+    <property name="orientation">vertical</property>
+    <property name="spacing">12</property>
+    <child>
+      <object class="GtkFrame" id="frame1">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="label_xalign">0</property>
+        <property name="shadow_type">none</property>
+        <child>
+          <object class="GtkAlignment" id="alignment1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="top_padding">6</property>
+            <property name="left_padding">12</property>
+            <child>
+              <object class="GtkGrid" id="grid1">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="halign">start</property>
+                <property name="row_spacing">6</property>
+                <property name="column_spacing">6</property>
+                <property name="row_homogeneous">True</property>
+                <child>
+                  <object class="GtkRadioButton" id="linear">
+                    <property name="label" translatable="yes">_Linear</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">logarithmic</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="GtkRadioButton" id="logarithmic">
+                    <property name="label" translatable="yes">L_ogarithmic</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">exponential</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="top_attach">1</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="exponential">
+                    <property name="label" translatable="yes">E_xponential</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">power</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="power">
+                    <property name="label" translatable="yes">Po_wer</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">polynomial</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="top_attach">3</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="polynomial">
+                    <property name="label" translatable="yes">_Polynomial</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">movingAverage</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">3</property>
+                    <property name="top_attach">0</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="movingAverage">
+                    <property name="label" translatable="yes">_Moving Average</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">linear</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">3</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkGrid" id="grid2">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="column_spacing">12</property>
+                    <child>
+                      <object class="GtkLabel" id="label3">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes">Degree</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="GtkSpinButton" id="degree">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">●</property>
+                        <property name="adjustment">adjustmentDegree</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>
+                  </object>
+                  <packing>
+                    <property name="left_attach">3</property>
+                    <property name="top_attach">1</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkGrid" id="grid3">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="column_spacing">12</property>
+                    <child>
+                      <object class="GtkLabel" id="label4">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes">Period</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="GtkSpinButton" id="period">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">●</property>
+                        <property name="adjustment">adjustmentPeriod</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>
+                  </object>
+                  <packing>
+                    <property name="left_attach">3</property>
+                    <property name="top_attach">3</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkImage" id="imageLinear">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="stock">gtk-missing-image</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="GtkImage" id="imageLogarithmic">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="stock">gtk-missing-image</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="GtkImage" id="imageExponential">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="stock">gtk-missing-image</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkImage" id="imagePower">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="stock">gtk-missing-image</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">3</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkImage" id="imagePolynomial">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="stock">gtk-missing-image</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">2</property>
+                    <property name="top_attach">0</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkImage" id="imageMovingAverage">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="stock">gtk-missing-image</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">2</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </object>
+            </child>
+          </object>
+        </child>
+        <child type="label">
+          <object class="GtkLabel" id="label1">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="label" translatable="yes">Regression Type</property>
+            <attributes>
+              <attribute name="weight" value="bold"/>
+            </attributes>
+          </object>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">0</property>
+      </packing>
+    </child>
+    <child>
+      <object class="GtkFrame" id="frame2">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="label_xalign">0</property>
+        <property name="shadow_type">none</property>
+        <child>
+          <object class="GtkAlignment" id="alignment2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="top_padding">6</property>
+            <property name="left_padding">12</property>
+            <child>
+              <object class="GtkGrid" id="grid5">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="row_spacing">6</property>
+                <property name="column_spacing">12</property>
+                <property name="row_homogeneous">True</property>
+                <child>
+                  <object class="GtkLabel" id="label7">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Extrapolate Forward</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">extrapolateForward</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="label8">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">Extrapolate Backward</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">extrapolateBackward</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="GtkSpinButton" id="extrapolateForward">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">●</property>
+                    <property name="caps_lock_warning">False</property>
+                    <property name="input_purpose">number</property>
+                    <property name="adjustment">adjustmentForwardBacward</property>
+                    <property name="digits">2</property>
+                    <property name="numeric">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="GtkSpinButton" id="extrapolateBackward">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">●</property>
+                    <property name="adjustment">adjustmentForwardBacward</property>
+                    <property name="digits">2</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="top_attach">1</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="interceptValue">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">●</property>
+                    <property name="invisible_char_set">True</property>
+                    <property name="adjustment">adjustmentForwardBacward</property>
+                    <property name="digits">4</property>
+                    <accessibility>
+                      <relation type="labelled-by" target="setIntercept"/>
+                    </accessibility>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkCheckButton" id="setIntercept">
+                    <property name="label" translatable="yes">Force _Intercept</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                    <accessibility>
+                      <relation type="label-for" target="interceptValue"/>
+                    </accessibility>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">2</property>
+                    <property name="width">1</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkCheckButton" id="showEquation">
+                    <property name="label" translatable="yes">Show _Equation</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">3</property>
+                    <property name="width">2</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkCheckButton" id="showCorrelationCoefficient">
+                    <property name="label" translatable="yes">Show _Coefficient of Determination (R²)</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="use_underline">True</property>
+                    <property name="xalign">0</property>
+                    <property name="draw_indicator">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="top_attach">4</property>
+                    <property name="width">2</property>
+                    <property name="height">1</property>
+                  </packing>
+                </child>
+              </object>
+            </child>
+          </object>
+        </child>
+        <child type="label">
+          <object class="GtkLabel" id="label2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="label" translatable="yes">Options</property>
+            <attributes>
+              <attribute name="weight" value="bold"/>
+            </attributes>
+          </object>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">True</property>
+        <property name="position">1</property>
+      </packing>
+    </child>
+  </object>
+</interface>


More information about the Libreoffice-commits mailing list