2010-10-12 15:59:00 +02:00
|
|
|
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
2012-07-17 12:30:48 +01:00
|
|
|
/*
|
|
|
|
* 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 .
|
|
|
|
*/
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
#include "WrappedAxisAndGridExistenceProperties.hxx"
|
|
|
|
#include "AxisHelper.hxx"
|
|
|
|
#include "ChartModelHelper.hxx"
|
|
|
|
#include "TitleHelper.hxx"
|
|
|
|
#include "macros.hxx"
|
|
|
|
|
|
|
|
using namespace ::com::sun::star;
|
|
|
|
using ::com::sun::star::uno::Any;
|
|
|
|
using ::com::sun::star::uno::Reference;
|
|
|
|
using ::com::sun::star::uno::Sequence;
|
|
|
|
|
|
|
|
namespace chart
|
|
|
|
{
|
|
|
|
namespace wrapper
|
|
|
|
{
|
|
|
|
|
|
|
|
class WrappedAxisAndGridExistenceProperty : public WrappedProperty
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
WrappedAxisAndGridExistenceProperty( bool bAxis, bool bMain, sal_Int32 nDimensionIndex
|
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact );
|
|
|
|
virtual ~WrappedAxisAndGridExistenceProperty();
|
|
|
|
|
|
|
|
virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
private: //member
|
|
|
|
::boost::shared_ptr< Chart2ModelContact > m_spChart2ModelContact;
|
|
|
|
bool m_bAxis;
|
|
|
|
bool m_bMain;
|
|
|
|
sal_Int32 m_nDimensionIndex;
|
|
|
|
};
|
|
|
|
|
|
|
|
void WrappedAxisAndGridExistenceProperties::addWrappedProperties( std::vector< WrappedProperty* >& rList
|
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact )
|
|
|
|
{
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( true, true, 0, spChart2ModelContact ) );//x axis
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( true, false, 0, spChart2ModelContact ) );//x secondary axis
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( false, true, 0, spChart2ModelContact ) );//x grid
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( false, false, 0, spChart2ModelContact ) );//x help grid
|
|
|
|
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( true, true, 1, spChart2ModelContact ) );//y axis
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( true, false, 1, spChart2ModelContact ) );//y secondary axis
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( false, true, 1, spChart2ModelContact ) );//y grid
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( false, false, 1, spChart2ModelContact ) );//y help grid
|
|
|
|
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( true, true, 2, spChart2ModelContact ) );//z axis
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( false, true, 2, spChart2ModelContact ) );//z grid
|
|
|
|
rList.push_back( new WrappedAxisAndGridExistenceProperty( false, false, 2, spChart2ModelContact ) );//z help grid
|
|
|
|
}
|
|
|
|
|
|
|
|
WrappedAxisAndGridExistenceProperty::WrappedAxisAndGridExistenceProperty( bool bAxis, bool bMain, sal_Int32 nDimensionIndex
|
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact )
|
|
|
|
: WrappedProperty(OUString(),OUString())
|
|
|
|
, m_spChart2ModelContact( spChart2ModelContact )
|
|
|
|
, m_bAxis( bAxis )
|
|
|
|
, m_bMain( bMain )
|
|
|
|
, m_nDimensionIndex( nDimensionIndex )
|
|
|
|
{
|
|
|
|
switch( m_nDimensionIndex )
|
|
|
|
{
|
|
|
|
case 0:
|
|
|
|
{
|
|
|
|
if( m_bAxis )
|
|
|
|
{
|
|
|
|
if( m_bMain )
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasXAxis";
|
2007-05-22 16:20:49 +00:00
|
|
|
else
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasSecondaryXAxis";
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
if( m_bMain )
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasXAxisGrid";
|
2007-05-22 16:20:49 +00:00
|
|
|
else
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasXAxisHelpGrid";
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 2:
|
|
|
|
{
|
|
|
|
if( m_bAxis )
|
|
|
|
{
|
|
|
|
OSL_ENSURE(m_bMain == true,"there is no secondary z axis at the old api");
|
|
|
|
m_bMain = true;
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasZAxis";
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
if( m_bMain )
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasZAxisGrid";
|
2007-05-22 16:20:49 +00:00
|
|
|
else
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasZAxisHelpGrid";
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
if( m_bAxis )
|
|
|
|
{
|
|
|
|
if( m_bMain )
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasYAxis";
|
2007-05-22 16:20:49 +00:00
|
|
|
else
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasSecondaryYAxis";
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
if( m_bMain )
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasYAxisGrid";
|
2007-05-22 16:20:49 +00:00
|
|
|
else
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasYAxisHelpGrid";
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
WrappedAxisAndGridExistenceProperty::~WrappedAxisAndGridExistenceProperty()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
void WrappedAxisAndGridExistenceProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
|
|
|
|
throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bNewValue = false;
|
2007-05-22 16:20:49 +00:00
|
|
|
if( ! (rOuterValue >>= bNewValue) )
|
2012-04-08 10:48:08 -04:30
|
|
|
throw lang::IllegalArgumentException( "Has axis or grid properties require boolean values", 0, 0 );
|
2007-05-22 16:20:49 +00:00
|
|
|
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bOldValue = false;
|
2007-05-22 16:20:49 +00:00
|
|
|
getPropertyValue( xInnerPropertySet ) >>= bOldValue;
|
|
|
|
|
|
|
|
if( bOldValue == bNewValue )
|
|
|
|
return;
|
|
|
|
|
|
|
|
Reference< chart2::XDiagram > xDiagram( m_spChart2ModelContact->getChart2Diagram() );
|
|
|
|
if( bNewValue )
|
|
|
|
{
|
|
|
|
if( m_bAxis )
|
|
|
|
AxisHelper::showAxis( m_nDimensionIndex, m_bMain, xDiagram, m_spChart2ModelContact->m_xContext );
|
|
|
|
else
|
|
|
|
AxisHelper::showGrid( m_nDimensionIndex, 0, m_bMain, xDiagram, m_spChart2ModelContact->m_xContext );
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
if( m_bAxis )
|
|
|
|
AxisHelper::hideAxis( m_nDimensionIndex, m_bMain, xDiagram );
|
|
|
|
else
|
|
|
|
AxisHelper::hideGrid( m_nDimensionIndex, 0, m_bMain, xDiagram );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2007-07-25 07:28:11 +00:00
|
|
|
Any WrappedAxisAndGridExistenceProperty::getPropertyValue( const Reference< beans::XPropertySet >& /* xInnerPropertySet */ ) const
|
2007-05-22 16:20:49 +00:00
|
|
|
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
|
|
|
Any aRet;
|
|
|
|
Reference< chart2::XDiagram > xDiagram( m_spChart2ModelContact->getChart2Diagram() );
|
|
|
|
if(m_bAxis)
|
|
|
|
{
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bShown = AxisHelper::isAxisShown( m_nDimensionIndex, m_bMain, xDiagram );
|
2007-05-22 16:20:49 +00:00
|
|
|
aRet <<= bShown;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bShown = AxisHelper::isGridShown( m_nDimensionIndex, 0, m_bMain, xDiagram );
|
2007-05-22 16:20:49 +00:00
|
|
|
aRet <<= bShown;
|
|
|
|
}
|
|
|
|
return aRet;
|
|
|
|
}
|
|
|
|
|
2007-07-25 07:28:11 +00:00
|
|
|
Any WrappedAxisAndGridExistenceProperty::getPropertyDefault( const Reference< beans::XPropertyState >& /*xInnerPropertyState*/ ) const
|
2007-05-22 16:20:49 +00:00
|
|
|
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
|
|
|
Any aRet;
|
|
|
|
aRet <<= false;
|
|
|
|
return aRet;
|
|
|
|
}
|
|
|
|
|
|
|
|
class WrappedAxisTitleExistenceProperty : public WrappedProperty
|
|
|
|
{
|
|
|
|
public:
|
2008-02-18 14:39:23 +00:00
|
|
|
WrappedAxisTitleExistenceProperty( sal_Int32 nTitleIndex
|
2007-05-22 16:20:49 +00:00
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact );
|
|
|
|
virtual ~WrappedAxisTitleExistenceProperty();
|
|
|
|
|
|
|
|
virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
private: //member
|
|
|
|
::boost::shared_ptr< Chart2ModelContact > m_spChart2ModelContact;
|
|
|
|
TitleHelper::eTitleType m_eTitleType;
|
|
|
|
};
|
|
|
|
|
|
|
|
void WrappedAxisTitleExistenceProperties::addWrappedProperties( std::vector< WrappedProperty* >& rList
|
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact )
|
|
|
|
{
|
|
|
|
rList.push_back( new WrappedAxisTitleExistenceProperty( 0, spChart2ModelContact ) );//x axis title
|
|
|
|
rList.push_back( new WrappedAxisTitleExistenceProperty( 1, spChart2ModelContact ) );//y axis title
|
|
|
|
rList.push_back( new WrappedAxisTitleExistenceProperty( 2, spChart2ModelContact ) );//z axis title
|
2008-02-18 14:39:23 +00:00
|
|
|
rList.push_back( new WrappedAxisTitleExistenceProperty( 3, spChart2ModelContact ) );//secondary x axis title
|
|
|
|
rList.push_back( new WrappedAxisTitleExistenceProperty( 4, spChart2ModelContact ) );//secondary y axis title
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
|
2008-02-18 14:39:23 +00:00
|
|
|
WrappedAxisTitleExistenceProperty::WrappedAxisTitleExistenceProperty( sal_Int32 nTitleIndex
|
2007-05-22 16:20:49 +00:00
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact )
|
|
|
|
: WrappedProperty(OUString(),OUString())
|
|
|
|
, m_spChart2ModelContact( spChart2ModelContact )
|
|
|
|
, m_eTitleType( TitleHelper::Y_AXIS_TITLE )
|
|
|
|
{
|
2008-02-18 14:39:23 +00:00
|
|
|
switch( nTitleIndex )
|
2007-05-22 16:20:49 +00:00
|
|
|
{
|
|
|
|
case 0:
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasXAxisTitle";
|
2007-05-22 16:20:49 +00:00
|
|
|
m_eTitleType = TitleHelper::X_AXIS_TITLE;
|
|
|
|
break;
|
|
|
|
case 2:
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasZAxisTitle";
|
2007-05-22 16:20:49 +00:00
|
|
|
m_eTitleType = TitleHelper::Z_AXIS_TITLE;
|
|
|
|
break;
|
2008-02-18 14:39:23 +00:00
|
|
|
case 3:
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasSecondaryXAxisTitle";
|
2008-02-18 14:39:23 +00:00
|
|
|
m_eTitleType = TitleHelper::SECONDARY_X_AXIS_TITLE;
|
|
|
|
break;
|
|
|
|
case 4:
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasSecondaryYAxisTitle";
|
2008-02-18 14:39:23 +00:00
|
|
|
m_eTitleType = TitleHelper::SECONDARY_Y_AXIS_TITLE;
|
|
|
|
break;
|
2007-05-22 16:20:49 +00:00
|
|
|
default:
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasYAxisTitle";
|
2007-05-22 16:20:49 +00:00
|
|
|
m_eTitleType = TitleHelper::Y_AXIS_TITLE;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
WrappedAxisTitleExistenceProperty::~WrappedAxisTitleExistenceProperty()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
void WrappedAxisTitleExistenceProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
|
|
|
|
throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bNewValue = false;
|
2007-05-22 16:20:49 +00:00
|
|
|
if( ! (rOuterValue >>= bNewValue) )
|
2012-04-08 10:48:08 -04:30
|
|
|
throw lang::IllegalArgumentException( "Has axis or grid properties require boolean values", 0, 0 );
|
2007-05-22 16:20:49 +00:00
|
|
|
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bOldValue = false;
|
2007-05-22 16:20:49 +00:00
|
|
|
getPropertyValue( xInnerPropertySet ) >>= bOldValue;
|
|
|
|
|
|
|
|
if( bOldValue == bNewValue )
|
|
|
|
return;
|
|
|
|
|
|
|
|
if( bNewValue )
|
|
|
|
{
|
2013-04-07 12:06:47 +02:00
|
|
|
OUString aTitleText;
|
2007-05-22 16:20:49 +00:00
|
|
|
TitleHelper::createTitle( m_eTitleType, aTitleText
|
|
|
|
, m_spChart2ModelContact->getChartModel(), m_spChart2ModelContact->m_xContext );
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
TitleHelper::removeTitle( m_eTitleType, m_spChart2ModelContact->getChartModel() );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2007-07-25 07:28:11 +00:00
|
|
|
Any WrappedAxisTitleExistenceProperty::getPropertyValue( const Reference< beans::XPropertySet >& /*xInnerPropertySet*/ ) const
|
2007-05-22 16:20:49 +00:00
|
|
|
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bHasTitle = false;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
Revert "fdo#46808, Convert chart2::Title service to new style"
This reverts commit d256dbede60533369d1aac64cca34721183f6a8a:
For one, the new css.chart2.XTitle2 looked unfinished, in that it transfered the
direct properties of the old-style css.chart2.Title service into attributes, but
left out all the properties inherited by the old-style service from
css.style.ParagraphProperties, css.drawing.FillProperties,
css.drawing.LineProperties (and that missing FIXME css.layout.LayoutElement,
whatever that is supposed to be). This needs more thought, to either make
available all propertiers as attributes, or none.
For another, this broke JunitTest_chart2_unoapi (sch.ChXChartDocument,
sch.ChartTitle), for hard-to-debug reasons.
Conflicts:
chart2/source/model/main/Title.cxx
chart2/source/model/main/Title.hxx
offapi/com/sun/star/chart2/XTitle2.idl
sc/source/filter/inc/xlchart.hxx
Change-Id: I4747208a13984904d0e409ea49a73b0f667c86c7
2013-05-23 10:11:49 +02:00
|
|
|
Reference< chart2::XTitle > xTitle( TitleHelper::getTitle( m_eTitleType, m_spChart2ModelContact->getChartModel() ) );
|
2011-12-10 22:03:11 -02:00
|
|
|
if( xTitle.is() && !TitleHelper::getCompleteString( xTitle ).isEmpty() )
|
2014-04-15 15:17:13 +02:00
|
|
|
bHasTitle = true;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
Any aRet;
|
|
|
|
aRet <<= bHasTitle;
|
|
|
|
return aRet;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2007-07-25 07:28:11 +00:00
|
|
|
Any WrappedAxisTitleExistenceProperty::getPropertyDefault( const Reference< beans::XPropertyState >& /*xInnerPropertyState*/ ) const
|
2007-05-22 16:20:49 +00:00
|
|
|
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
|
|
|
Any aRet;
|
2014-04-15 15:17:13 +02:00
|
|
|
aRet <<= false;
|
2007-05-22 16:20:49 +00:00
|
|
|
return aRet;
|
|
|
|
}
|
|
|
|
|
|
|
|
class WrappedAxisLabelExistenceProperty : public WrappedProperty
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
WrappedAxisLabelExistenceProperty( bool bMain, sal_Int32 nDimensionIndex
|
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact );
|
|
|
|
virtual ~WrappedAxisLabelExistenceProperty();
|
|
|
|
|
|
|
|
virtual void setPropertyValue( const ::com::sun::star::uno::Any& rOuterValue, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
virtual ::com::sun::star::uno::Any getPropertyValue( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& xInnerPropertySet ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
virtual ::com::sun::star::uno::Any getPropertyDefault( const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyState >& xInnerPropertyState ) const
|
2014-03-27 18:12:18 +01:00
|
|
|
throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) SAL_OVERRIDE;
|
2007-05-22 16:20:49 +00:00
|
|
|
|
|
|
|
private: //member
|
|
|
|
::boost::shared_ptr< Chart2ModelContact > m_spChart2ModelContact;
|
|
|
|
bool m_bMain;
|
|
|
|
sal_Int32 m_nDimensionIndex;
|
|
|
|
};
|
|
|
|
|
|
|
|
void WrappedAxisLabelExistenceProperties::addWrappedProperties( std::vector< WrappedProperty* >& rList
|
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact )
|
|
|
|
{
|
|
|
|
rList.push_back( new WrappedAxisLabelExistenceProperty( true, 0, spChart2ModelContact ) );//x axis
|
|
|
|
rList.push_back( new WrappedAxisLabelExistenceProperty( true, 1, spChart2ModelContact ) );//y axis
|
|
|
|
rList.push_back( new WrappedAxisLabelExistenceProperty( true, 2, spChart2ModelContact ) );//z axis
|
|
|
|
rList.push_back( new WrappedAxisLabelExistenceProperty( false, 0, spChart2ModelContact ) );//secondary x axis
|
|
|
|
rList.push_back( new WrappedAxisLabelExistenceProperty( false, 1, spChart2ModelContact ) );//secondary y axis
|
|
|
|
}
|
|
|
|
|
|
|
|
WrappedAxisLabelExistenceProperty::WrappedAxisLabelExistenceProperty( bool bMain, sal_Int32 nDimensionIndex
|
|
|
|
, ::boost::shared_ptr< Chart2ModelContact > spChart2ModelContact )
|
|
|
|
: WrappedProperty(OUString(),OUString())
|
|
|
|
, m_spChart2ModelContact( spChart2ModelContact )
|
|
|
|
, m_bMain( bMain )
|
|
|
|
, m_nDimensionIndex( nDimensionIndex )
|
|
|
|
{
|
|
|
|
switch( m_nDimensionIndex )
|
|
|
|
{
|
|
|
|
case 0:
|
2012-04-08 10:48:08 -04:30
|
|
|
m_bMain ? m_aOuterName = "HasXAxisDescription" : m_aOuterName = "HasSecondaryXAxisDescription";
|
2007-05-22 16:20:49 +00:00
|
|
|
break;
|
|
|
|
case 2:
|
|
|
|
OSL_ENSURE(m_bMain,"there is no description available for a secondary z axis");
|
2012-04-08 10:48:08 -04:30
|
|
|
m_aOuterName = "HasZAxisDescription";
|
2007-05-22 16:20:49 +00:00
|
|
|
break;
|
|
|
|
default:
|
2012-04-08 10:48:08 -04:30
|
|
|
m_bMain ? m_aOuterName = "HasYAxisDescription" : m_aOuterName = "HasSecondaryYAxisDescription";
|
2007-05-22 16:20:49 +00:00
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
WrappedAxisLabelExistenceProperty::~WrappedAxisLabelExistenceProperty()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
void WrappedAxisLabelExistenceProperty::setPropertyValue( const Any& rOuterValue, const Reference< beans::XPropertySet >& xInnerPropertySet ) const
|
|
|
|
throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bNewValue = false;
|
2007-05-22 16:20:49 +00:00
|
|
|
if( ! (rOuterValue >>= bNewValue) )
|
2012-04-08 10:48:08 -04:30
|
|
|
throw lang::IllegalArgumentException( "Has axis or grid properties require boolean values", 0, 0 );
|
2007-05-22 16:20:49 +00:00
|
|
|
|
2014-04-15 15:17:13 +02:00
|
|
|
bool bOldValue = false;
|
2007-05-22 16:20:49 +00:00
|
|
|
getPropertyValue( xInnerPropertySet ) >>= bOldValue;
|
|
|
|
|
|
|
|
if( bOldValue == bNewValue )
|
|
|
|
return;
|
|
|
|
|
|
|
|
Reference< chart2::XDiagram > xDiagram( m_spChart2ModelContact->getChart2Diagram() );
|
|
|
|
Reference< beans::XPropertySet > xProp( AxisHelper::getAxis( m_nDimensionIndex, m_bMain, xDiagram ), uno::UNO_QUERY );
|
|
|
|
if( !xProp.is() && bNewValue )
|
|
|
|
{
|
|
|
|
//create axis if needed
|
|
|
|
xProp.set( AxisHelper::createAxis( m_nDimensionIndex, m_bMain, xDiagram, m_spChart2ModelContact->m_xContext ), uno::UNO_QUERY );
|
|
|
|
if( xProp.is() )
|
2012-04-08 10:48:08 -04:30
|
|
|
xProp->setPropertyValue( "Show", uno::makeAny( sal_False ) );
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
if( xProp.is() )
|
2012-04-08 10:48:08 -04:30
|
|
|
xProp->setPropertyValue( "DisplayLabels", rOuterValue );
|
2007-05-22 16:20:49 +00:00
|
|
|
}
|
|
|
|
|
2007-07-25 07:28:11 +00:00
|
|
|
Any WrappedAxisLabelExistenceProperty::getPropertyValue( const Reference< beans::XPropertySet >& /*xInnerPropertySet*/ ) const
|
2007-05-22 16:20:49 +00:00
|
|
|
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
|
|
|
Any aRet;
|
|
|
|
Reference< chart2::XDiagram > xDiagram( m_spChart2ModelContact->getChart2Diagram() );
|
|
|
|
Reference< beans::XPropertySet > xProp( AxisHelper::getAxis( m_nDimensionIndex, m_bMain, xDiagram ), uno::UNO_QUERY );
|
|
|
|
if( xProp.is() )
|
2012-04-08 10:48:08 -04:30
|
|
|
aRet = xProp->getPropertyValue( "DisplayLabels" );
|
2007-05-22 16:20:49 +00:00
|
|
|
else
|
2014-04-15 15:17:13 +02:00
|
|
|
aRet <<= false;
|
2007-05-22 16:20:49 +00:00
|
|
|
return aRet;
|
|
|
|
}
|
|
|
|
|
2007-07-25 07:28:11 +00:00
|
|
|
Any WrappedAxisLabelExistenceProperty::getPropertyDefault( const Reference< beans::XPropertyState >& /*xInnerPropertyState*/ ) const
|
2007-05-22 16:20:49 +00:00
|
|
|
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
|
|
|
|
{
|
|
|
|
Any aRet;
|
2014-04-15 15:17:13 +02:00
|
|
|
aRet <<= true;
|
2007-05-22 16:20:49 +00:00
|
|
|
return aRet;
|
|
|
|
}
|
|
|
|
|
|
|
|
} //namespace wrapper
|
|
|
|
} //namespace chart
|
2010-10-12 15:59:00 +02:00
|
|
|
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|