diff options
Diffstat (limited to 'chart2/source/tools/RegressionCurveModel.cxx')
-rw-r--r-- | chart2/source/tools/RegressionCurveModel.cxx | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/chart2/source/tools/RegressionCurveModel.cxx b/chart2/source/tools/RegressionCurveModel.cxx index d6cef7c2c8d8..06be003ef106 100644 --- a/chart2/source/tools/RegressionCurveModel.cxx +++ b/chart2/source/tools/RegressionCurveModel.cxx @@ -17,8 +17,9 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include "RegressionCurveModel.hxx" +#include <RegressionCurveModel.hxx> #include <LinePropertiesHelper.hxx> +#include <RegressionCurveCalculator.hxx> #include <RegressionCurveHelper.hxx> #include "RegressionEquation.hxx" #include <CloneHelper.hxx> @@ -26,7 +27,6 @@ #include <ModifyListenerHelper.hxx> #include <cppuhelper/supportsservice.hxx> #include <com/sun/star/beans/PropertyAttribute.hpp> -#include <tools/diagnose_ex.h> namespace com::sun::star::uno { class XComponentContext; } @@ -99,7 +99,7 @@ void lcl_AddPropertiesToVector( beans::PropertyAttribute::BOUND ); } -::chart::tPropertyValueMap GetStaticXXXDefaults() +const ::chart::tPropertyValueMap & GetStaticXXXDefaults() { static ::chart::tPropertyValueMap aStaticDefaults = [](){ @@ -139,7 +139,6 @@ namespace chart { RegressionCurveModel::RegressionCurveModel( tCurveType eCurveType ) : - ::property::OPropertySet( m_aMutex ), m_eRegressionCurveType( eCurveType ), m_xModifyEventForwarder( new ModifyEventForwarder() ), m_xEquationProperties( new RegressionEquation ) @@ -153,7 +152,7 @@ RegressionCurveModel::RegressionCurveModel( tCurveType eCurveType ) : RegressionCurveModel::RegressionCurveModel( const RegressionCurveModel & rOther ) : impl::RegressionCurveModel_Base(rOther), - ::property::OPropertySet( rOther, m_aMutex ), + ::property::OPropertySet( rOther ), m_eRegressionCurveType( rOther.m_eRegressionCurveType ), m_xModifyEventForwarder( new ModifyEventForwarder() ) { @@ -184,11 +183,20 @@ void SAL_CALL RegressionCurveModel::setEquationProperties( const uno::Reference< ModifyListenerHelper::removeListener( m_xEquationProperties, m_xModifyEventForwarder ); m_xEquationProperties.set( xEquationProperties ); + setPropertyMayHaveR2(); ModifyListenerHelper::addListener( m_xEquationProperties, m_xModifyEventForwarder ); fireModifyEvent(); } } +void RegressionCurveModel::setPropertyMayHaveR2() +{ + if( m_xEquationProperties.is()) { + bool bMayHaveR2 = m_eRegressionCurveType != CURVE_TYPE_MOVING_AVERAGE; + m_xEquationProperties->setPropertyValue( "MayHaveCorrelationCoefficient", uno::Any( bMayHaveR2 ) ); + } +} + // ____ XServiceName ____ OUString SAL_CALL RegressionCurveModel::getServiceName() { @@ -239,6 +247,7 @@ void SAL_CALL RegressionCurveModel::disposing( const lang::EventObject& /* Sourc // ____ OPropertySet ____ void RegressionCurveModel::firePropertyChangeEvent() { + setPropertyMayHaveR2(); fireModifyEvent(); } |