[Libreoffice-commits] core.git: Branch 'libreoffice-4-2' - 2 commits - chart2/source

2013-12-09 Thread Tomaž Vajngerl
 chart2/source/controller/dialogs/ObjectNameProvider.cxx |   28 +
 chart2/source/controller/dialogs/Strings_Statistic.src  |   14 +-
 chart2/source/inc/RegressionCurveHelper.hxx |   19 +++
 chart2/source/tools/RegressionCurveHelper.cxx   |   78 +---
 4 files changed, 118 insertions(+), 21 deletions(-)

New commits:
commit 09687cf4288b8ef6dbaf4908b3c7ee2ea093d928
Author: Tomaž Vajngerl qui...@gmail.com
Date:   Mon Dec 9 23:01:48 2013 +0100

More clearly name the trendline in chart's element selection box.

Change-Id: I5f787eb064524a3b2399d591866a5b8cbdee6294

diff --git a/chart2/source/controller/dialogs/ObjectNameProvider.cxx 
b/chart2/source/controller/dialogs/ObjectNameProvider.cxx
index 648a6c7..73d8416 100644
--- a/chart2/source/controller/dialogs/ObjectNameProvider.cxx
+++ b/chart2/source/controller/dialogs/ObjectNameProvider.cxx
@@ -747,8 +747,8 @@ OUString ObjectNameProvider::getNameForCID(
 case OBJECTTYPE_DATA_ERRORS_X:
 case OBJECTTYPE_DATA_ERRORS_Y:
 case OBJECTTYPE_DATA_ERRORS_Z:
-case OBJECTTYPE_DATA_CURVE:
 case OBJECTTYPE_DATA_AVERAGE_LINE:
+case OBJECTTYPE_DATA_CURVE:
 case OBJECTTYPE_DATA_CURVE_EQUATION:
 {
 OUString aRet = lcl_getFullSeriesName( rObjectCID, xModel );
@@ -766,8 +766,30 @@ OUString ObjectNameProvider::getNameForCID(
 aRet += getName( OBJECTTYPE_DATA_LABEL  );
 }
 }
+else if (eType == OBJECTTYPE_DATA_CURVE || eType == 
OBJECTTYPE_DATA_CURVE_EQUATION)
+{
+Reference chart2::XDataSeries  xSeries( 
ObjectIdentifier::getDataSeriesForCID( rObjectCID , xModel ));
+Reference chart2::XRegressionCurveContainer  xCurveCnt( 
xSeries, uno::UNO_QUERY );
+
+aRet +=  ;
+aRet += getName(eType);
+
+if( xCurveCnt.is())
+{
+sal_Int32 nCurveIndex = 
ObjectIdentifier::getIndexFromParticleOrCID( rObjectCID );
+Reference chart2::XRegressionCurve  xCurve( 
RegressionCurveHelper::getRegressionCurveAtIndex(xCurveCnt, nCurveIndex) );
+if( xCurve.is())
+{
+aRet +=  (;
+aRet += 
RegressionCurveHelper::getRegressionCurveName(xCurve);
+aRet += );
+}
+}
+}
 else
+{
 aRet += getName( eType );
+}
 return aRet;
 }
 default:
diff --git a/chart2/source/controller/dialogs/Strings_Statistic.src 
b/chart2/source/controller/dialogs/Strings_Statistic.src
index 7469f66..0be3a37 100644
--- a/chart2/source/controller/dialogs/Strings_Statistic.src
+++ b/chart2/source/controller/dialogs/Strings_Statistic.src
@@ -43,32 +43,32 @@ String STR_CONTROLTEXT_ERROR_BARS_FROM_DATA
 
 String STR_REGRESSION_LINEAR
 {
-Text [ en-US ] = Linear (%SERIESNAME) ;
+Text [ en-US ] = Linear ;
 };
 String STR_REGRESSION_LOG
 {
-Text [ en-US ] = Logarithmic (%SERIESNAME) ;
+Text [ en-US ] = Logarithmic ;
 };
 String STR_REGRESSION_EXP
 {
-Text [ en-US ] = Exponential (%SERIESNAME) ;
+Text [ en-US ] = Exponential ;
 };
 String STR_REGRESSION_POWER
 {
-Text [ en-US ] = Power (%SERIESNAME) ;
+Text [ en-US ] = Power ;
 };
 String STR_REGRESSION_POLYNOMIAL
 {
-Text [ en-US ] = Polynomial (%SERIESNAME) ;
+Text [ en-US ] = Polynomial ;
 };
 String STR_REGRESSION_MOVING_AVERAGE
 {
-Text [ en-US ] = Moving average (%SERIESNAME) ;
+Text [ en-US ] = Moving average ;
 };
 
 String STR_REGRESSION_MEAN
 {
-Text [ en-US ] = Mean (%SERIESNAME) ;
+Text [ en-US ] = Mean ;
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/inc/RegressionCurveHelper.hxx 
b/chart2/source/inc/RegressionCurveHelper.hxx
index f9637e2..58da00c 100644
--- a/chart2/source/inc/RegressionCurveHelper.hxx
+++ b/chart2/source/inc/RegressionCurveHelper.hxx
@@ -201,6 +201,18 @@ public:
 static OUString getUINameForRegressionCurve( const 
::com::sun::star::uno::Reference
 ::com::sun::star::chart2::XRegressionCurve  xCurve );
 
+static OUString getRegressionCurveName(
+const ::com::sun::star::uno::Reference
+::com::sun::star::chart2::XRegressionCurve  xCurve );
+
+static OUString getRegressionCurveGenericName(
+const ::com::sun::star::uno::Reference
+::com::sun::star::chart2::XRegressionCurve  xCurve );
+
+static OUString getRegressionCurveSpecificName(
+const ::com::sun::star::uno::Reference
+::com::sun::star::chart2::XRegressionCurve  xCurve );
+
 static ::std::vector ::com::sun::star::uno::Reference
 

[Libreoffice-commits] core.git: Branch 'libreoffice-4-2' - 2 commits - chart2/source chart2/uiconfig sc/source

2013-12-08 Thread Tomaž Vajngerl
 chart2/source/controller/dialogs/dlg_ObjectProperties.cxx |9 ++
 chart2/source/controller/dialogs/res_Trendline.cxx|   43 --
 chart2/source/controller/dialogs/res_Trendline.hxx|   13 +++-
 chart2/source/controller/dialogs/tp_Trendline.cxx |5 +
 chart2/source/controller/dialogs/tp_Trendline.hxx |1 
 chart2/uiconfig/ui/tp_Trendline.ui|   38 +---
 sc/source/filter/excel/xichart.cxx|9 --
 7 files changed, 69 insertions(+), 49 deletions(-)

New commits:
commit 079887848b3dc835050176d92c552009c770b641
Author: Tomaž Vajngerl qui...@gmail.com
Date:   Sat Nov 23 21:26:05 2013 +0100

Fix detection of force intercept in XLS 97/2000/XP format.

NaN value indicates if the force intercept is enabled or not.

Change-Id: I51d33a6e04a4b5832f241e7ae7ee6d2fbb32ea9b

diff --git a/sc/source/filter/excel/xichart.cxx 
b/sc/source/filter/excel/xichart.cxx
index 5fc5783..34c5343 100644
--- a/sc/source/filter/excel/xichart.cxx
+++ b/sc/source/filter/excel/xichart.cxx
@@ -195,13 +195,6 @@ void lclConvertTimeInterval( Any rInterval, sal_uInt16 
nValue, bool bAuto, sal_
 rInterval = cssc::TimeInterval( nValue, lclGetApiTimeUnit( nTimeUnit 
) );
 }
 
-bool lcl_IsForceIntercept(double intercept)
-{
-sal_math_Double* pIntercept = 
reinterpret_castsal_math_Double*(intercept);
-return (pIntercept-w32_parts.msw != 0x ||
-pIntercept-w32_parts.lsw != 0x);
-}
-
 } // namespace
 
 // Common =
@@ -1658,7 +1651,7 @@ Reference XRegressionCurve  
XclImpChSerTrendLine::CreateRegressionCurve() cons
 aPropSet.SetProperty(EXC_CHPROP_EXTRAPOLATE_FORWARD, 
maData.mfForecastFor);
 aPropSet.SetProperty(EXC_CHPROP_EXTRAPOLATE_BACKWARD, 
maData.mfForecastBack);
 
-sal_Bool bForceIntercept = lcl_IsForceIntercept(maData.mfIntercept);
+sal_Bool bForceIntercept = !rtl::math::isNan(maData.mfIntercept);
 aPropSet.SetProperty(EXC_CHPROP_FORCE_INTERCEPT, bForceIntercept);
 if (bForceIntercept)
 {
commit b9edc19c2a858b0b164aff746568c690558f9d99
Author: Laurent Balland-Poirier laurent.balland-poir...@laposte.net
Date:   Mon Dec 2 09:54:21 2013 +0100

fdo#40314 Free value of intercept for trend line

Intercept value field has been changed to FormattedField
to support scientific notation and more than 4 digits
after decimal point

Change-Id: Idb2d27862ddabcdc96a036d93f1f3498cc6327df
Reviewed-on: https://gerrit.libreoffice.org/6904
Reviewed-by: Tomaž Vajngerl qui...@gmail.com
Tested-by: Tomaž Vajngerl qui...@gmail.com

diff --git a/chart2/source/controller/dialogs/dlg_ObjectProperties.cxx 
b/chart2/source/controller/dialogs/dlg_ObjectProperties.cxx
index 05b5544..6e1974b 100644
--- a/chart2/source/controller/dialogs/dlg_ObjectProperties.cxx
+++ b/chart2/source/controller/dialogs/dlg_ObjectProperties.cxx
@@ -634,6 +634,15 @@ void SchAttribTabDlg::PageCreated(sal_uInt16 nId, 
SfxTabPage rPage)
 m_pParameter-ProvidesBarConnectors() );
 break;
 }
+case TP_TRENDLINE:
+{
+TrendlineTabPage* pTrendlineTabPage = dynamic_cast 
TrendlineTabPage* ( rPage );
+if(pTrendlineTabPage)
+{
+pTrendlineTabPage-SetNumFormatter( m_pNumberFormatter );
+}
+break;
+}
 }
 }
 
diff --git a/chart2/source/controller/dialogs/res_Trendline.cxx 
b/chart2/source/controller/dialogs/res_Trendline.cxx
index 76be297..e1b6a07 100644
--- a/chart2/source/controller/dialogs/res_Trendline.cxx
+++ b/chart2/source/controller/dialogs/res_Trendline.cxx
@@ -33,9 +33,16 @@
 namespace chart
 {
 
+void lcl_setValue( FormattedField rFmtField, double fValue )
+{
+rFmtField.SetValue( fValue );
+rFmtField.SetDefaultValue( fValue );
+}
+
 TrendlineResources::TrendlineResources( Window * pParent, const SfxItemSet 
rInAttrs ) :
 m_eTrendLineType( CHREGRESS_LINEAR ),
-m_bTrendLineUnique( true )
+m_bTrendLineUnique( true ),
+m_pNumFormatter(NULL)
 {
 SfxTabPage* pTabPage = reinterpret_castSfxTabPage*(pParent);
 pTabPage-get(m_pRB_Linear,linear);
@@ -50,7 +57,7 @@ TrendlineResources::TrendlineResources( Window * pParent, 
const SfxItemSet rInA
 pTabPage-get(m_pNF_ExtrapolateForward,extrapolateForward);
 pTabPage-get(m_pNF_ExtrapolateBackward,extrapolateBackward);
 pTabPage-get(m_pCB_SetIntercept,setIntercept);
-pTabPage-get(m_pNF_InterceptValue,interceptValue);
+pTabPage-get(m_pFmtFld_InterceptValue,interceptValue);
 pTabPage-get(m_pCB_ShowEquation,showEquation);
 pTabPage-get(m_pCB_ShowCorrelationCoeff,showCorrelationCoefficient);
 pTabPage-get(m_pFI_Linear,imageLinear);
@@ -69,17 +76,15 @@ TrendlineResources::TrendlineResources( Window * pParent, 
const SfxItemSet 

[Libreoffice-commits] core.git: Branch 'libreoffice-4-2' - 2 commits - chart2/source

2013-11-30 Thread Laurent Balland-Poirier
 chart2/source/controller/dialogs/res_Trendline.cxx |   58 ++---
 chart2/source/controller/dialogs/res_Trendline.hxx |1 
 2 files changed, 53 insertions(+), 6 deletions(-)

New commits:
commit 1fee10725dbd62e78fd3ae14f0bd7872eabff3f9
Author: Laurent Balland-Poirier laurent.balland-poir...@laposte.net
Date:   Sun Nov 24 22:38:04 2013 +0100

fdo#40315 Improve UI for moving average trendline

If moving average trendline is selected, show equation is
uncheked, and all options disable

Change-Id: Ic25c09b8c8410a12ac9f14cb0ba7833f304053ee
Reviewed-on: https://gerrit.libreoffice.org/6796
Reviewed-by: Tomaž Vajngerl qui...@gmail.com
Tested-by: Tomaž Vajngerl qui...@gmail.com
Reviewed-on: https://gerrit.libreoffice.org/6856

diff --git a/chart2/source/controller/dialogs/res_Trendline.cxx 
b/chart2/source/controller/dialogs/res_Trendline.cxx
index 9c08a21..db83486 100644
--- a/chart2/source/controller/dialogs/res_Trendline.cxx
+++ b/chart2/source/controller/dialogs/res_Trendline.cxx
@@ -282,6 +282,18 @@ void TrendlineResources::FillValueSets()
 
 void TrendlineResources::UpdateControlStates()
 {
+bool bMovingAverage = ( m_eTrendLineType == CHREGRESS_MOVING_AVERAGE );
+m_pNF_ExtrapolateForward-Enable(!bMovingAverage);
+m_pNF_ExtrapolateBackward-Enable(!bMovingAverage);
+m_pCB_SetIntercept-Enable(!bMovingAverage);
+m_pNF_InterceptValue-Enable(!bMovingAverage);
+if(bMovingAverage)
+{
+m_pCB_ShowEquation-SetState( STATE_NOCHECK );
+m_pCB_ShowCorrelationCoeff-SetState( STATE_NOCHECK );
+}
+m_pCB_ShowEquation-Enable(!bMovingAverage);
+m_pCB_ShowCorrelationCoeff-Enable(!bMovingAverage);
 }
 
 IMPL_LINK( TrendlineResources, ChangeNumericField, NumericField *, 
pNumericField)
commit 78f227e1371ef4d11bc98e2116a3b95bb881b020
Author: Laurent Balland-Poirier laurent.balland-poir...@laposte.net
Date:   Sun Nov 24 22:11:56 2013 +0100

fdo#35712 fdo#40315 fdo#40314 Autoselect trendline type

Modification of Degree or Period select trendline type
Modification of Intercept select option

Change-Id: If3a212c381061e831ee4411c8e17fbaf8ca12895
Reviewed-on: https://gerrit.libreoffice.org/6815
Reviewed-by: Tomaž Vajngerl qui...@gmail.com
Tested-by: Tomaž Vajngerl qui...@gmail.com
Reviewed-on: https://gerrit.libreoffice.org/6855

diff --git a/chart2/source/controller/dialogs/res_Trendline.cxx 
b/chart2/source/controller/dialogs/res_Trendline.cxx
index f8ba0fa..9c08a21 100644
--- a/chart2/source/controller/dialogs/res_Trendline.cxx
+++ b/chart2/source/controller/dialogs/res_Trendline.cxx
@@ -58,12 +58,18 @@ TrendlineResources::TrendlineResources( Window * pParent, 
const SfxItemSet rInA
 ((SfxTabPage*)pParent)-get(m_pFI_MovingAverage,imageMovingAverage);
 FillValueSets();
 
-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 ));
+Link aLink = LINK(this, TrendlineResources, SelectTrendLine );
+m_pRB_Linear-SetClickHdl( aLink );
+m_pRB_Logarithmic-SetClickHdl( aLink );
+m_pRB_Exponential-SetClickHdl( aLink );
+m_pRB_Power-SetClickHdl( aLink );
+m_pRB_Polynomial-SetClickHdl( aLink );
+m_pRB_MovingAverage-SetClickHdl( aLink );
+
+aLink = LINK(this, TrendlineResources, ChangeNumericField );
+m_pNF_Degree-SetModifyHdl( aLink );
+m_pNF_Period-SetModifyHdl( aLink );
+m_pNF_InterceptValue-SetModifyHdl( aLink );
 
 m_pNF_ExtrapolateForward-SetMin( SAL_MIN_INT64 );
 m_pNF_ExtrapolateForward-SetMax( SAL_MAX_INT64 );
@@ -278,6 +284,34 @@ void TrendlineResources::UpdateControlStates()
 {
 }
 
+IMPL_LINK( TrendlineResources, ChangeNumericField, NumericField *, 
pNumericField)
+{
+if( pNumericField == m_pNF_Degree )
+{
+if( !m_pRB_Polynomial-IsChecked() )
+{
+m_pRB_Polynomial-Check();
+SelectTrendLine(m_pRB_Polynomial);
+}
+}
+else if( pNumericField == m_pNF_Period )
+{
+if( !m_pRB_MovingAverage-IsChecked() )
+{
+m_pRB_MovingAverage-Check();
+SelectTrendLine(m_pRB_MovingAverage);
+}
+}
+else if( pNumericField == m_pNF_InterceptValue )
+{
+if( !m_pCB_SetIntercept-IsChecked() )
+m_pCB_SetIntercept-Check();
+}
+UpdateControlStates();
+
+return 0;
+}
+
 } //  namespace chart
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/controller/dialogs/res_Trendline.hxx