summaryrefslogtreecommitdiff
path: root/chart2/source/model/main
diff options
context:
space:
mode:
Diffstat (limited to 'chart2/source/model/main')
-rw-r--r--chart2/source/model/main/Axis.cxx635
-rw-r--r--chart2/source/model/main/Axis.hxx180
-rw-r--r--chart2/source/model/main/BaseCoordinateSystem.cxx413
-rw-r--r--chart2/source/model/main/CartesianCoordinateSystem.cxx158
-rw-r--r--chart2/source/model/main/ChartModel.cxx1361
-rw-r--r--chart2/source/model/main/ChartModel.hxx616
-rw-r--r--chart2/source/model/main/ChartModel_Persistence.cxx861
-rw-r--r--chart2/source/model/main/DataPoint.cxx319
-rw-r--r--chart2/source/model/main/DataPoint.hxx143
-rw-r--r--chart2/source/model/main/DataPointProperties.cxx432
-rw-r--r--chart2/source/model/main/DataPointProperties.hxx103
-rw-r--r--chart2/source/model/main/DataSeries.cxx634
-rw-r--r--chart2/source/model/main/DataSeriesProperties.cxx101
-rw-r--r--chart2/source/model/main/DataSeriesProperties.hxx66
-rw-r--r--chart2/source/model/main/Diagram.cxx734
-rw-r--r--chart2/source/model/main/FormattedString.cxx266
-rw-r--r--chart2/source/model/main/FormattedString.hxx136
-rw-r--r--chart2/source/model/main/GridProperties.cxx277
-rw-r--r--chart2/source/model/main/GridProperties.hxx131
-rw-r--r--chart2/source/model/main/Legend.cxx329
-rw-r--r--chart2/source/model/main/Legend.hxx131
-rw-r--r--chart2/source/model/main/PageBackground.cxx252
-rw-r--r--chart2/source/model/main/PageBackground.hxx128
-rw-r--r--chart2/source/model/main/PolarCoordinateSystem.cxx158
-rw-r--r--chart2/source/model/main/StockBar.cxx264
-rw-r--r--chart2/source/model/main/Title.cxx409
-rw-r--r--chart2/source/model/main/Title.hxx143
-rw-r--r--chart2/source/model/main/UndoManager.cxx427
-rw-r--r--chart2/source/model/main/UndoManager.hxx109
-rw-r--r--chart2/source/model/main/Wall.cxx255
-rw-r--r--chart2/source/model/main/Wall.hxx123
-rw-r--r--chart2/source/model/main/_serviceregistration_model.cxx204
32 files changed, 0 insertions, 10498 deletions
diff --git a/chart2/source/model/main/Axis.cxx b/chart2/source/model/main/Axis.cxx
deleted file mode 100644
index 33961f1e2..000000000
--- a/chart2/source/model/main/Axis.cxx
+++ /dev/null
@@ -1,635 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "Axis.hxx"
-#include "GridProperties.hxx"
-#include "macros.hxx"
-#include "CharacterProperties.hxx"
-#include "LineProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "PropertyHelper.hxx"
-#include "ContainerHelper.hxx"
-#include "CloneHelper.hxx"
-#include "AxisHelper.hxx"
-#include "EventListenerHelper.hxx"
-#include <com/sun/star/chart/ChartAxisArrangeOrderType.hpp>
-#include <com/sun/star/chart/ChartAxisLabelPosition.hpp>
-#include <com/sun/star/chart/ChartAxisMarkPosition.hpp>
-#include <com/sun/star/chart/ChartAxisPosition.hpp>
-#include <com/sun/star/chart2/AxisType.hpp>
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/lang/Locale.hpp>
-#include <com/sun/star/drawing/LineStyle.hpp>
-#include <com/sun/star/drawing/LineDash.hpp>
-#include <com/sun/star/drawing/LineJoint.hpp>
-#include <com/sun/star/awt/Size.hpp>
-#include <rtl/uuid.h>
-#include <cppuhelper/queryinterface.hxx>
-
-#include <vector>
-#include <algorithm>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::beans::PropertyAttribute;
-
-using ::rtl::OUString;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Any;
-using ::com::sun::star::beans::Property;
-using ::osl::MutexGuard;
-
-namespace
-{
-
-static const OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.Axis" ));
-
-enum
-{
- PROP_AXIS_SHOW,
- PROP_AXIS_CROSSOVER_POSITION,
- PROP_AXIS_CROSSOVER_VALUE,
- PROP_AXIS_DISPLAY_LABELS,
- PROP_AXIS_NUMBER_FORMAT,
- PROP_AXIS_LABEL_POSITION,
- PROP_AXIS_TEXT_ROTATION,
- PROP_AXIS_TEXT_BREAK,
- PROP_AXIS_TEXT_OVERLAP,
- PROP_AXIS_TEXT_STACKED,
- PROP_AXIS_TEXT_ARRANGE_ORDER,
- PROP_AXIS_REFERENCE_DIAGRAM_SIZE,
-
- PROP_AXIS_MAJOR_TICKMARKS,
- PROP_AXIS_MINOR_TICKMARKS,
- PROP_AXIS_MARK_POSITION
-};
-
-void lcl_AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- rOutProperties.push_back(
- Property( C2U( "Show" ),
- PROP_AXIS_SHOW,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "CrossoverPosition" ),
- PROP_AXIS_CROSSOVER_POSITION,
- ::getCppuType( reinterpret_cast< const ::com::sun::star::chart::ChartAxisPosition * >(0)),
- beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "CrossoverValue" ),
- PROP_AXIS_CROSSOVER_VALUE,
- ::getCppuType( reinterpret_cast< const double * >(0)),
- beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "DisplayLabels" ),
- PROP_AXIS_DISPLAY_LABELS,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "NumberFormat" ),
- PROP_AXIS_NUMBER_FORMAT,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "LabelPosition" ),
- PROP_AXIS_LABEL_POSITION,
- ::getCppuType( reinterpret_cast< const ::com::sun::star::chart::ChartAxisLabelPosition * >(0)),
- beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "TextRotation" ),
- PROP_AXIS_TEXT_ROTATION,
- ::getCppuType( reinterpret_cast< const double * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "TextBreak" ),
- PROP_AXIS_TEXT_BREAK,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "TextOverlap" ),
- PROP_AXIS_TEXT_OVERLAP,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "StackCharacters" ),
- PROP_AXIS_TEXT_STACKED,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ArrangeOrder" ),
- PROP_AXIS_TEXT_ARRANGE_ORDER,
- ::getCppuType( reinterpret_cast< const ::com::sun::star::chart::ChartAxisArrangeOrderType * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ReferencePageSize" ),
- PROP_AXIS_REFERENCE_DIAGRAM_SIZE,
- ::getCppuType( reinterpret_cast< const awt::Size * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "MajorTickmarks" ),
- PROP_AXIS_MAJOR_TICKMARKS,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "MinorTickmarks" ),
- PROP_AXIS_MINOR_TICKMARKS,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "MarkPosition" ),
- PROP_AXIS_MARK_POSITION,
- ::getCppuType( reinterpret_cast< const ::com::sun::star::chart::ChartAxisMarkPosition * >(0)),
- beans::PropertyAttribute::MAYBEDEFAULT ));
-}
-
-struct StaticAxisDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::CharacterProperties::AddDefaultsToMap( rOutMap );
- ::chart::LineProperties::AddDefaultsToMap( rOutMap );
-
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_SHOW, true );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_CROSSOVER_POSITION, ::com::sun::star::chart::ChartAxisPosition_ZERO );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_DISPLAY_LABELS, true );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_LABEL_POSITION, ::com::sun::star::chart::ChartAxisLabelPosition_NEAR_AXIS );
- ::chart::PropertyHelper::setPropertyValueDefault< double >( rOutMap, PROP_AXIS_TEXT_ROTATION, 0.0 );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_TEXT_BREAK, false );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_TEXT_OVERLAP, false );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_TEXT_STACKED, false );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_TEXT_ARRANGE_ORDER, ::com::sun::star::chart::ChartAxisArrangeOrderType_AUTO );
-
- float fDefaultCharHeight = 10.0;
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_CHAR_HEIGHT, fDefaultCharHeight );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_ASIAN_CHAR_HEIGHT, fDefaultCharHeight );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_COMPLEX_CHAR_HEIGHT, fDefaultCharHeight );
-
- ::chart::PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_AXIS_MAJOR_TICKMARKS, 2 /* CHAXIS_MARK_OUTER */ );
- ::chart::PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_AXIS_MINOR_TICKMARKS, 0 /* CHAXIS_MARK_NONE */ );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_AXIS_MARK_POSITION, ::com::sun::star::chart::ChartAxisMarkPosition_AT_LABELS_AND_AXIS );
- }
-};
-
-struct StaticAxisDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticAxisDefaults_Initializer >
-{
-};
-
-struct StaticAxisInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- lcl_AddPropertiesToVector( aProperties );
- ::chart::CharacterProperties::AddPropertiesToVector( aProperties );
- ::chart::LineProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-};
-
-struct StaticAxisInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticAxisInfoHelper_Initializer >
-{
-};
-
-struct StaticAxisInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticAxisInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticAxisInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticAxisInfo_Initializer >
-{
-};
-
-typedef uno::Reference< beans::XPropertySet > lcl_tSubGridType;
-typedef uno::Sequence< lcl_tSubGridType > lcl_tSubGridSeq;
-
-void lcl_CloneSubGrids(
- const lcl_tSubGridSeq & rSource, lcl_tSubGridSeq & rDestination )
-{
- const lcl_tSubGridType * pBegin = rSource.getConstArray();
- const lcl_tSubGridType * pEnd = pBegin + rSource.getLength();
-
- rDestination.realloc( rSource.getLength());
- lcl_tSubGridType * pDestBegin = rDestination.getArray();
- lcl_tSubGridType * pDestEnd = pDestBegin + rDestination.getLength();
- lcl_tSubGridType * pDestIt = pDestBegin;
-
- for( const lcl_tSubGridType * pIt = pBegin; pIt != pEnd; ++pIt )
- {
- Reference< beans::XPropertySet > xSubGrid( *pIt );
- if( xSubGrid.is())
- {
- Reference< util::XCloneable > xCloneable( xSubGrid, uno::UNO_QUERY );
- if( xCloneable.is())
- xSubGrid.set( xCloneable->createClone(), uno::UNO_QUERY );
- }
-
- (*pDestIt) = xSubGrid;
- OSL_ASSERT( pDestIt != pDestEnd );
- ++pDestIt;
- }
- OSL_ASSERT( pDestIt == pDestEnd );
- (void)(pDestEnd); // avoid warning
-}
-
-} // anonymous namespace
-
-// ================================================================================
-
-namespace chart
-{
-
-Axis::Axis( Reference< uno::XComponentContext > const & /* xContext */ ) :
- ::property::OPropertySet( m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder()),
- m_aScaleData( AxisHelper::createDefaultScale() ),
- m_xGrid( new GridProperties() ),
- m_aSubGridProperties(),
- m_xTitle()
-{
- osl_incrementInterlockedCount(&m_refCount);
- setFastPropertyValue_NoBroadcast(
- ::chart::LineProperties::PROP_LINE_COLOR, uno::makeAny( static_cast< sal_Int32 >( 0xb3b3b3 ) ) ); // gray30
-
- if( m_xGrid.is())
- ModifyListenerHelper::addListener( m_xGrid, m_xModifyEventForwarder );
- if( m_aScaleData.Categories.is())
- ModifyListenerHelper::addListener( m_aScaleData.Categories, m_xModifyEventForwarder );
-
- AllocateSubGrids();
- osl_decrementInterlockedCount(&m_refCount);
-}
-
-Axis::Axis( const Axis & rOther ) :
- MutexContainer(),
- impl::Axis_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder()),
- m_aScaleData( rOther.m_aScaleData )
-{
- m_xGrid.set( CloneHelper::CreateRefClone< Reference< beans::XPropertySet > >()( rOther.m_xGrid ));
- if( m_xGrid.is())
- ModifyListenerHelper::addListener( m_xGrid, m_xModifyEventForwarder );
-
- if( m_aScaleData.Categories.is())
- ModifyListenerHelper::addListener( m_aScaleData.Categories, m_xModifyEventForwarder );
-
- if( rOther.m_aSubGridProperties.getLength() != 0 )
- lcl_CloneSubGrids( rOther.m_aSubGridProperties, m_aSubGridProperties );
- ModifyListenerHelper::addListenerToAllSequenceElements( m_aSubGridProperties, m_xModifyEventForwarder );
-
- m_xTitle.set( CloneHelper::CreateRefClone< Reference< chart2::XTitle > >()( rOther.m_xTitle ));
- if( m_xTitle.is())
- ModifyListenerHelper::addListener( m_xTitle, m_xModifyEventForwarder );
-}
-
-// late initialization to call after copy-constructing
-void Axis::Init( const Axis & /* rOther */ )
-{
- if( m_aScaleData.Categories.is())
- EventListenerHelper::addListener( m_aScaleData.Categories, this );
-}
-
-Axis::~Axis()
-{
- try
- {
- ModifyListenerHelper::removeListener( m_xGrid, m_xModifyEventForwarder );
- ModifyListenerHelper::removeListenerFromAllSequenceElements( m_aSubGridProperties, m_xModifyEventForwarder );
- ModifyListenerHelper::removeListener( m_xTitle, m_xModifyEventForwarder );
- if( m_aScaleData.Categories.is())
- {
- ModifyListenerHelper::removeListener( m_aScaleData.Categories, m_xModifyEventForwarder );
- m_aScaleData.Categories.set(0);
- }
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-
- m_aSubGridProperties.realloc(0);
- m_xGrid = 0;
- m_xTitle = 0;
-}
-
-void Axis::AllocateSubGrids()
-{
- Reference< util::XModifyListener > xModifyEventForwarder;
- Reference< lang::XEventListener > xEventListener;
- std::vector< Reference< beans::XPropertySet > > aOldBroadcasters;
- std::vector< Reference< beans::XPropertySet > > aNewBroadcasters;
- {
- MutexGuard aGuard( m_aMutex );
- xModifyEventForwarder = m_xModifyEventForwarder;
- xEventListener = this;
-
- sal_Int32 nNewSubIncCount = m_aScaleData.IncrementData.SubIncrements.getLength();
- sal_Int32 nOldSubIncCount = m_aSubGridProperties.getLength();
-
- if( nOldSubIncCount > nNewSubIncCount )
- {
- // remove superfluous entries
- for( sal_Int32 i = nNewSubIncCount; i < nOldSubIncCount; ++i )
- aOldBroadcasters.push_back( m_aSubGridProperties[ i ] );
- m_aSubGridProperties.realloc( nNewSubIncCount );
- }
- else if( nOldSubIncCount < nNewSubIncCount )
- {
- m_aSubGridProperties.realloc( nNewSubIncCount );
-
- // allocate new entries
- for( sal_Int32 i = nOldSubIncCount; i < nNewSubIncCount; ++i )
- {
- m_aSubGridProperties[ i ] = new GridProperties();
- LineProperties::SetLineInvisible( m_aSubGridProperties[ i ] );
- aNewBroadcasters.push_back( m_aSubGridProperties[ i ] );
- }
- }
- }
- //don't keep the mutex locked while calling out
- std::vector< Reference< beans::XPropertySet > >::iterator aBroadcaster = aOldBroadcasters.begin();
- for( ;aBroadcaster != aOldBroadcasters.end(); ++aBroadcaster )
- ModifyListenerHelper::removeListener( *aBroadcaster, xModifyEventForwarder );
- for( aBroadcaster = aNewBroadcasters.begin(); aBroadcaster != aNewBroadcasters.end(); ++aBroadcaster )
- ModifyListenerHelper::addListener( *aBroadcaster, xModifyEventForwarder );
-}
-
-// --------------------------------------------------------------------------------
-
-// ____ XAxis ____
-void SAL_CALL Axis::setScaleData( const chart2::ScaleData& rScaleData )
- throw (uno::RuntimeException)
-{
- Reference< util::XModifyListener > xModifyEventForwarder;
- Reference< lang::XEventListener > xEventListener;
- Reference< chart2::data::XLabeledDataSequence > xOldCategories;
- Reference< chart2::data::XLabeledDataSequence > xNewCategories = rScaleData.Categories;
- {
- MutexGuard aGuard( m_aMutex );
- xModifyEventForwarder = m_xModifyEventForwarder;
- xEventListener = this;
- xOldCategories = m_aScaleData.Categories;
- m_aScaleData = rScaleData;
- }
- AllocateSubGrids();
-
- //don't keep the mutex locked while calling out
- if( xOldCategories.is() && xOldCategories != xNewCategories )
- {
- ModifyListenerHelper::removeListener( xOldCategories, xModifyEventForwarder );
- EventListenerHelper::removeListener( xOldCategories, xEventListener );
- }
- if( xNewCategories.is() && xOldCategories != xNewCategories )
- {
- ModifyListenerHelper::addListener( xNewCategories, m_xModifyEventForwarder );
- EventListenerHelper::addListener( xNewCategories, xEventListener );
- }
- fireModifyEvent();
-}
-
-chart2::ScaleData SAL_CALL Axis::getScaleData()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aMutex );
- return m_aScaleData;
-}
-
-Reference< beans::XPropertySet > SAL_CALL Axis::getGridProperties()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aMutex );
- return m_xGrid;
-}
-Sequence< Reference< beans::XPropertySet > > SAL_CALL Axis::getSubGridProperties()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aMutex );
- return m_aSubGridProperties;
-}
-
-Sequence< Reference< beans::XPropertySet > > SAL_CALL Axis::getSubTickProperties()
- throw (uno::RuntimeException)
-{
- OSL_FAIL( "Not implemented yet" );
- return Sequence< Reference< beans::XPropertySet > >();
-}
-
-
-// ____ XTitled ____
-Reference< chart2::XTitle > SAL_CALL Axis::getTitleObject()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return m_xTitle;
-}
-
-void SAL_CALL Axis::setTitleObject( const Reference< chart2::XTitle >& xNewTitle )
- throw (uno::RuntimeException)
-{
- Reference< util::XModifyListener > xModifyEventForwarder;
- Reference< chart2::XTitle > xOldTitle;
- {
- MutexGuard aGuard( GetMutex() );
- xOldTitle = m_xTitle;
- xModifyEventForwarder = m_xModifyEventForwarder;
- m_xTitle = xNewTitle;
- }
-
- //don't keep the mutex locked while calling out
- if( xOldTitle.is() && xOldTitle != xNewTitle )
- ModifyListenerHelper::removeListener( xOldTitle, xModifyEventForwarder );
- if( xNewTitle.is() && xOldTitle != xNewTitle )
- ModifyListenerHelper::addListener( xNewTitle, xModifyEventForwarder );
- fireModifyEvent();
-}
-
-// ____ XCloneable ____
-Reference< util::XCloneable > SAL_CALL Axis::createClone()
- throw (uno::RuntimeException)
-{
- Axis * pNewAxis( new Axis( *this ));
- // hold a reference to the clone
- Reference< util::XCloneable > xResult( pNewAxis );
- // do initialization that uses uno references to the clone
- pNewAxis->Init( *this );
- return xResult;
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL Axis::addModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL Axis::removeModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL Axis::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL Axis::disposing( const lang::EventObject& Source )
- throw (uno::RuntimeException)
-{
- if( Source.Source == m_aScaleData.Categories )
- m_aScaleData.Categories = 0;
-}
-
-// ____ OPropertySet ____
-void Axis::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void Axis::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-// ================================================================================
-
-// ____ OPropertySet ____
-uno::Any Axis::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticAxisDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL Axis::getInfoHelper()
-{
- return *StaticAxisInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-Reference< beans::XPropertySetInfo > SAL_CALL Axis::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticAxisInfo::get();
-}
-
-// ================================================================================
-
-Sequence< OUString > Axis::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 2 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.Axis" );
- aServices[ 1 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-using impl::Axis_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( Axis, Axis_Base, ::property::OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( Axis, Axis_Base, ::property::OPropertySet )
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( Axis, lcl_aServiceName );
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/Axis.hxx b/chart2/source/model/main/Axis.hxx
deleted file mode 100644
index c81a75147..000000000
--- a/chart2/source/model/main/Axis.hxx
+++ /dev/null
@@ -1,180 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_AXIS_HXX
-#define CHART_AXIS_HXX
-
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include "MutexContainer.hxx"
-#include "OPropertySet.hxx"
-#include <cppuhelper/implbase6.hxx>
-#include <comphelper/uno3.hxx>
-
-#include "ServiceMacros.hxx"
-#include "ModifyListenerHelper.hxx"
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/chart2/XAxis.hpp>
-#include <com/sun/star/chart2/XTitled.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-#include <com/sun/star/util/XModifyBroadcaster.hpp>
-#include <com/sun/star/util/XModifyListener.hpp>
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper6<
- ::com::sun::star::chart2::XAxis,
- ::com::sun::star::chart2::XTitled,
- ::com::sun::star::lang::XServiceInfo,
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener >
- Axis_Base;
-}
-
-class Axis :
- public MutexContainer,
- public impl::Axis_Base,
- public ::property::OPropertySet
-{
-public:
- Axis( ::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext > const & xContext );
- virtual ~Axis();
-
- /// establish methods for factory instatiation
- APPHELPER_SERVICE_FACTORY_HELPER( Axis )
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
- /// merge XTypeProvider implementations
- DECLARE_XTYPEPROVIDER()
-
-protected:
- explicit Axis( const Axis & rOther );
-
- // late initialization to call after copy-constructing
- void Init( const Axis & rOther );
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
-
- // ____ OPropertySet ____
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XAxis ____
- virtual void SAL_CALL setScaleData( const ::com::sun::star::chart2::ScaleData& rScaleData )
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::chart2::ScaleData SAL_CALL getScaleData()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::beans::XPropertySet > SAL_CALL getGridProperties()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence<
- ::com::sun::star::uno::Reference<
- ::com::sun::star::beans::XPropertySet > > SAL_CALL getSubGridProperties()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence<
- ::com::sun::star::uno::Reference<
- ::com::sun::star::beans::XPropertySet > > SAL_CALL getSubTickProperties()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XTitled ____
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XTitle > SAL_CALL getTitleObject()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setTitleObject(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XTitle >& Title )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- // Note: the coordinate systems are not cloned!
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private: //methods
- void AllocateSubGrids();
-
-private: //member
-
- ::com::sun::star::uno::Reference<
- ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
-
- ::com::sun::star::chart2::ScaleData m_aScaleData;
-
- ::com::sun::star::uno::Reference<
- ::com::sun::star::beans::XPropertySet > m_xGrid;
-
- ::com::sun::star::uno::Sequence<
- ::com::sun::star::uno::Reference<
- ::com::sun::star::beans::XPropertySet > > m_aSubGridProperties;
-
- ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XTitle > m_xTitle;
-};
-
-} // namespace chart
-
-// CHART_AXIS_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/BaseCoordinateSystem.cxx b/chart2/source/model/main/BaseCoordinateSystem.cxx
deleted file mode 100644
index 2a1ed562f..000000000
--- a/chart2/source/model/main/BaseCoordinateSystem.cxx
+++ /dev/null
@@ -1,413 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-
-#include "BaseCoordinateSystem.hxx"
-#include "macros.hxx"
-#include "PropertyHelper.hxx"
-#include "UserDefinedProperties.hxx"
-#include "ContainerHelper.hxx"
-#include "CloneHelper.hxx"
-#include "Axis.hxx"
-#include "AxisHelper.hxx"
-#include <com/sun/star/chart2/AxisType.hpp>
-
-#include <algorithm>
-
-#if OSL_DEBUG_LEVEL > 1
-#include <rtl/math.hxx>
-#endif
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-
-using namespace ::com::sun::star;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::rtl::OUString;
-using ::com::sun::star::beans::Property;
-
-namespace
-{
-enum
-{
- PROP_COORDINATESYSTEM_SWAPXANDYAXIS
-};
-
-void lcl_AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- rOutProperties.push_back(
- Property( C2U( "SwapXAndYAxis" ),
- PROP_COORDINATESYSTEM_SWAPXANDYAXIS,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-}
-
-struct StaticCooSysDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_COORDINATESYSTEM_SWAPXANDYAXIS, false );
- }
-};
-
-struct StaticCooSysDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticCooSysDefaults_Initializer >
-{
-};
-
-struct StaticCooSysInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- lcl_AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-};
-
-struct StaticCooSysInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticCooSysInfoHelper_Initializer >
-{
-};
-
-struct StaticCooSysInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticCooSysInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticCooSysInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticCooSysInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-namespace chart
-{
-
-BaseCoordinateSystem::BaseCoordinateSystem(
- const Reference< uno::XComponentContext > & xContext,
- sal_Int32 nDimensionCount /* = 2 */,
- sal_Bool bSwapXAndYAxis /* = sal_False */ ) :
- ::property::OPropertySet( m_aMutex ),
- m_xContext( xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder()),
- m_nDimensionCount( nDimensionCount )
- {
- m_aAllAxis.resize( m_nDimensionCount );
- for( sal_Int32 nN=0; nN<m_nDimensionCount; nN++ )
- {
- m_aAllAxis[nN].resize( 1 );
- Reference< chart2::XAxis > xAxis( new Axis(m_xContext) );
- m_aAllAxis[nN][0] = xAxis;
-
- ModifyListenerHelper::addListenerToAllElements( m_aAllAxis[nN], m_xModifyEventForwarder );
- chart2::ScaleData aScaleData( xAxis->getScaleData() );
- if(nN==0)
- {
- aScaleData.AxisType = chart2::AxisType::CATEGORY;
- }
- else if( nN==1)
- {
- aScaleData.AxisType = chart2::AxisType::REALNUMBER;
- }
- else if( nN==2)
- {
- aScaleData.AxisType = chart2::AxisType::SERIES;
- }
- xAxis->setScaleData( aScaleData );
- }
-
- m_aOrigin.realloc( m_nDimensionCount );
- for( sal_Int32 i = 0; i < m_nDimensionCount; ++i )
- m_aOrigin[ i ] = uno::makeAny( double( 0.0 ) );
-
- setFastPropertyValue_NoBroadcast( PROP_COORDINATESYSTEM_SWAPXANDYAXIS, uno::makeAny( sal_Bool( bSwapXAndYAxis )));
-}
-
-// explicit
-BaseCoordinateSystem::BaseCoordinateSystem(
- const BaseCoordinateSystem & rSource ) :
- impl::BaseCoordinateSystem_Base(),
- MutexContainer(),
- ::property::OPropertySet( rSource, m_aMutex ),
- m_xContext( rSource.m_xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder()),
- m_nDimensionCount( rSource.m_nDimensionCount ),
- m_aOrigin( rSource.m_aOrigin )
-{
- m_aAllAxis.resize(rSource.m_aAllAxis.size());
- tAxisVecVecType::size_type nN=0;
- for( nN=0; nN<m_aAllAxis.size(); nN++ )
- CloneHelper::CloneRefVector< Reference< chart2::XAxis > >( rSource.m_aAllAxis[nN], m_aAllAxis[nN] );
- CloneHelper::CloneRefVector< Reference< chart2::XChartType > >( rSource.m_aChartTypes, m_aChartTypes );
-
- for( nN=0; nN<m_aAllAxis.size(); nN++ )
- ModifyListenerHelper::addListenerToAllElements( m_aAllAxis[nN], m_xModifyEventForwarder );
- ModifyListenerHelper::addListenerToAllElements( m_aChartTypes, m_xModifyEventForwarder );
-}
-
-BaseCoordinateSystem::~BaseCoordinateSystem()
-{
- try
- {
- for( tAxisVecVecType::size_type nN=0; nN<m_aAllAxis.size(); nN++ )
- ModifyListenerHelper::removeListenerFromAllElements( m_aAllAxis[nN], m_xModifyEventForwarder );
- ModifyListenerHelper::removeListenerFromAllElements( m_aChartTypes, m_xModifyEventForwarder );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XCoordinateSystem ____
-sal_Int32 SAL_CALL BaseCoordinateSystem::getDimension()
- throw (uno::RuntimeException)
-{
- return m_nDimensionCount;
-}
-
-void SAL_CALL BaseCoordinateSystem::setAxisByDimension(
- sal_Int32 nDimensionIndex,
- const Reference< chart2::XAxis >& xAxis,
- sal_Int32 nIndex )
- throw (lang::IndexOutOfBoundsException,
- uno::RuntimeException)
-{
- if( nDimensionIndex < 0 || nDimensionIndex >= getDimension() )
- throw lang::IndexOutOfBoundsException();
-
- if( nIndex < 0 )
- throw lang::IndexOutOfBoundsException();
-
- if( m_aAllAxis[ nDimensionIndex ].size() < static_cast< tAxisVecVecType::size_type >( nIndex+1 ))
- {
- m_aAllAxis[ nDimensionIndex ].resize( nIndex+1 );
- m_aAllAxis[ nDimensionIndex ][nIndex] = 0;
- }
-
- Reference< chart2::XAxis > xOldAxis( m_aAllAxis[ nDimensionIndex ][nIndex] );
- if( xOldAxis.is())
- ModifyListenerHelper::removeListener( xOldAxis, m_xModifyEventForwarder );
- m_aAllAxis[ nDimensionIndex ][nIndex] = xAxis;
- if( xAxis.is())
- ModifyListenerHelper::addListener( xAxis, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-Reference< chart2::XAxis > SAL_CALL BaseCoordinateSystem::getAxisByDimension(
- sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex )
- throw (lang::IndexOutOfBoundsException,
- uno::RuntimeException)
-{
- if( nDimensionIndex < 0 || nDimensionIndex >= getDimension() )
- throw lang::IndexOutOfBoundsException();
-
- OSL_ASSERT( m_aAllAxis.size() == static_cast< size_t >( getDimension()));
-
- if( nAxisIndex < 0 || nAxisIndex > this->getMaximumAxisIndexByDimension(nDimensionIndex) )
- throw lang::IndexOutOfBoundsException();
-
- return m_aAllAxis[ nDimensionIndex ][nAxisIndex];
-}
-
-sal_Int32 SAL_CALL BaseCoordinateSystem::getMaximumAxisIndexByDimension( sal_Int32 nDimensionIndex )
- throw (lang::IndexOutOfBoundsException,
- uno::RuntimeException)
-{
- if( nDimensionIndex < 0 || nDimensionIndex >= getDimension() )
- throw lang::IndexOutOfBoundsException();
-
- OSL_ASSERT( m_aAllAxis.size() == static_cast< size_t >( getDimension()));
-
- sal_Int32 nRet = m_aAllAxis[ nDimensionIndex ].size();
- if(nRet)
- nRet-=1;
-
- return nRet;
-}
-
-// ____ XChartTypeContainer ____
-void SAL_CALL BaseCoordinateSystem::addChartType( const Reference< chart2::XChartType >& aChartType )
- throw (lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- if( ::std::find( m_aChartTypes.begin(), m_aChartTypes.end(), aChartType )
- != m_aChartTypes.end())
- throw lang::IllegalArgumentException();
-
- m_aChartTypes.push_back( aChartType );
- ModifyListenerHelper::addListener( aChartType, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-void SAL_CALL BaseCoordinateSystem::removeChartType( const Reference< chart2::XChartType >& aChartType )
- throw (container::NoSuchElementException,
- uno::RuntimeException)
-{
- ::std::vector< uno::Reference< chart2::XChartType > >::iterator
- aIt( ::std::find( m_aChartTypes.begin(), m_aChartTypes.end(), aChartType ));
- if( aIt == m_aChartTypes.end())
- throw container::NoSuchElementException(
- C2U( "The given chart type is no element of the container" ),
- static_cast< uno::XWeak * >( this ));
-
- m_aChartTypes.erase( aIt );
- ModifyListenerHelper::removeListener( aChartType, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-Sequence< Reference< chart2::XChartType > > SAL_CALL BaseCoordinateSystem::getChartTypes()
- throw (uno::RuntimeException)
-{
- return ContainerHelper::ContainerToSequence( m_aChartTypes );
-}
-
-void SAL_CALL BaseCoordinateSystem::setChartTypes( const Sequence< Reference< chart2::XChartType > >& aChartTypes )
- throw (lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- ModifyListenerHelper::removeListenerFromAllElements( m_aChartTypes, m_xModifyEventForwarder );
- m_aChartTypes = ContainerHelper::SequenceToVector( aChartTypes );
- ModifyListenerHelper::addListenerToAllElements( m_aChartTypes, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL BaseCoordinateSystem::addModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL BaseCoordinateSystem::removeModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL BaseCoordinateSystem::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL BaseCoordinateSystem::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void BaseCoordinateSystem::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void BaseCoordinateSystem::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-
-// ____ OPropertySet ____
-uno::Any BaseCoordinateSystem::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticCooSysDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-// ____ OPropertySet ____
-::cppu::IPropertyArrayHelper & SAL_CALL BaseCoordinateSystem::getInfoHelper()
-{
- return *StaticCooSysInfoHelper::get();
-}
-
-
-// ____ XPropertySet ____
-Reference< beans::XPropertySetInfo > SAL_CALL BaseCoordinateSystem::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticCooSysInfo::get();
-}
-
-using impl::BaseCoordinateSystem_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( BaseCoordinateSystem, BaseCoordinateSystem_Base, ::property::OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( BaseCoordinateSystem, BaseCoordinateSystem_Base, ::property::OPropertySet )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/CartesianCoordinateSystem.cxx b/chart2/source/model/main/CartesianCoordinateSystem.cxx
deleted file mode 100644
index 7ff61ef35..000000000
--- a/chart2/source/model/main/CartesianCoordinateSystem.cxx
+++ /dev/null
@@ -1,158 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "CartesianCoordinateSystem.hxx"
-#include "macros.hxx"
-#include "servicenames_coosystems.hxx"
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::uno::RuntimeException;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::rtl::OUString;
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceNameCartesian2d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.chart2.CartesianCoordinateSystem2d" ));
-static const ::rtl::OUString lcl_aServiceNameCartesian3d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.chart2.CartesianCoordinateSystem3d" ));
-
-static const ::rtl::OUString lcl_aImplementationNameCartesian2d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.CartesianCoordinateSystem2d" ));
-static const ::rtl::OUString lcl_aImplementationNameCartesian3d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.CartesianCoordinateSystem3d" ));
-}
-
-namespace chart
-{
-
-// explicit
-CartesianCoordinateSystem::CartesianCoordinateSystem(
- const uno::Reference< uno::XComponentContext > & xContext,
- sal_Int32 nDimensionCount /* = 2 */,
- sal_Bool bSwapXAndYAxis /* = sal_False */ ) :
- BaseCoordinateSystem( xContext, nDimensionCount, bSwapXAndYAxis )
-{}
-
-CartesianCoordinateSystem::CartesianCoordinateSystem(
- const CartesianCoordinateSystem & rSource ) :
- BaseCoordinateSystem( rSource )
-{}
-
-CartesianCoordinateSystem::~CartesianCoordinateSystem()
-{}
-
-// ____ XCoordinateSystem ____
-::rtl::OUString SAL_CALL CartesianCoordinateSystem::getCoordinateSystemType()
- throw (RuntimeException)
-{
- return CHART2_COOSYSTEM_CARTESIAN_SERVICE_NAME;
-}
-
-::rtl::OUString SAL_CALL CartesianCoordinateSystem::getViewServiceName()
- throw (RuntimeException)
-{
- return CHART2_COOSYSTEM_CARTESIAN_VIEW_SERVICE_NAME;
-}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL CartesianCoordinateSystem::createClone()
- throw (RuntimeException)
-{
- return Reference< util::XCloneable >( new CartesianCoordinateSystem( *this ));
-}
-
-// ____ XServiceInfo ____
-Sequence< OUString > CartesianCoordinateSystem::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 1 );
- aServices[ 0 ] = CHART2_COOSYSTEM_CARTESIAN_SERVICE_NAME;
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( CartesianCoordinateSystem,
- C2U( "com.sun.star.comp.chart.CartesianCoordinateSystem" ))
-
-
-// =================================
-// ==== CartesianCoordinateSystem2d ====
-// =================================
-
-CartesianCoordinateSystem2d::CartesianCoordinateSystem2d(
- const uno::Reference< uno::XComponentContext > & xContext ) :
- CartesianCoordinateSystem( xContext, 2, sal_False )
-{}
-
-CartesianCoordinateSystem2d::~CartesianCoordinateSystem2d()
-{}
-
-// ____ XServiceInfo ____
-Sequence< OUString > CartesianCoordinateSystem2d::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 2 );
- aServices[ 0 ] = CHART2_COOSYSTEM_CARTESIAN_SERVICE_NAME;
- aServices[ 1 ] = lcl_aServiceNameCartesian2d;
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( CartesianCoordinateSystem2d, lcl_aImplementationNameCartesian2d )
-
-// =================================
-// ==== CartesianCoordinateSystem3d ====
-// =================================
-
-CartesianCoordinateSystem3d::CartesianCoordinateSystem3d(
- const uno::Reference< uno::XComponentContext > & xContext ) :
- CartesianCoordinateSystem( xContext, 3, sal_False )
-{}
-
-CartesianCoordinateSystem3d::~CartesianCoordinateSystem3d()
-{}
-
-// ____ XServiceInfo ____
-Sequence< OUString > CartesianCoordinateSystem3d::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 2 );
- aServices[ 0 ] = CHART2_COOSYSTEM_CARTESIAN_SERVICE_NAME;
- aServices[ 1 ] = lcl_aServiceNameCartesian3d;
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( CartesianCoordinateSystem3d, lcl_aImplementationNameCartesian3d )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/ChartModel.cxx b/chart2/source/model/main/ChartModel.cxx
deleted file mode 100644
index 10a2c3a2a..000000000
--- a/chart2/source/model/main/ChartModel.cxx
+++ /dev/null
@@ -1,1361 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "ChartModel.hxx"
-#include "servicenames.hxx"
-#include "MediaDescriptorHelper.hxx"
-#include "macros.hxx"
-#include "servicenames.hxx"
-#include "NoWarningThisInCTOR.hxx"
-#include "DataSourceHelper.hxx"
-#include "ChartModelHelper.hxx"
-#include "DiagramHelper.hxx"
-#include "DisposeHelper.hxx"
-#include "ControllerLockGuard.hxx"
-#include "ObjectIdentifier.hxx"
-#include "PageBackground.hxx"
-#include "CloneHelper.hxx"
-#include "NameContainer.hxx"
-#include "UndoManager.hxx"
-
-#include <com/sun/star/chart/ChartDataRowSource.hpp>
-
-#include <comphelper/InlineContainer.hxx>
-#include <comphelper/processfactory.hxx>
-
-// header for class SvNumberFormatsSupplierObj
-#include <svl/numuno.hxx>
-#include <com/sun/star/lang/DisposedException.hpp>
-#include <com/sun/star/lang/XInitialization.hpp>
-#include <com/sun/star/view/XSelectionSupplier.hpp>
-#include <com/sun/star/embed/XEmbedObjectCreator.hpp>
-#include <com/sun/star/embed/XEmbedPersist.hpp>
-#include <com/sun/star/embed/EmbedStates.hpp>
-#include <com/sun/star/embed/XComponentSupplier.hpp>
-#include <com/sun/star/embed/XStorage.hpp>
-#include <com/sun/star/embed/EmbedMapUnits.hpp>
-#include <com/sun/star/embed/Aspects.hpp>
-#include <com/sun/star/awt/Gradient.hpp>
-#include <com/sun/star/awt/XWindow.hpp>
-#include <com/sun/star/awt/PosSize.hpp>
-#include <com/sun/star/datatransfer/XTransferable.hpp>
-#include <com/sun/star/drawing/Hatch.hpp>
-#include <com/sun/star/drawing/LineDash.hpp>
-#include <com/sun/star/drawing/XShapes.hpp>
-
-// header for class SvNumberFormatter
-#include <svl/zforlist.hxx>
-
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::RuntimeException;
-using ::com::sun::star::uno::Any;
-using ::rtl::OUString;
-using ::osl::MutexGuard;
-
-using namespace ::com::sun::star;
-using namespace ::apphelper;
-using namespace ::chart::CloneHelper;
-
-namespace
-{
-const OUString lcl_aGDIMetaFileMIMEType(
- RTL_CONSTASCII_USTRINGPARAM("application/x-openoffice-gdimetafile;windows_formatname=\"GDIMetaFile\""));
-const OUString lcl_aGDIMetaFileMIMETypeHighContrast(
- RTL_CONSTASCII_USTRINGPARAM("application/x-openoffice-highcontrast-gdimetafile;windows_formatname=\"GDIMetaFile\""));
-
-} // anonymous namespace
-
-//-----------------------------------------------------------------
-// ChartModel Constructor and Destructor
-//-----------------------------------------------------------------
-
-namespace chart
-{
-
-ChartModel::ChartModel(uno::Reference<uno::XComponentContext > const & xContext)
- : m_aLifeTimeManager( this, this )
- , m_bReadOnly( sal_False )
- , m_bModified( sal_False )
- , m_nInLoad(0)
- , m_bUpdateNotificationsPending(false)
- , m_pUndoManager( NULL )
- , m_aControllers( m_aModelMutex )
- , m_nControllerLockCount(0)
- , m_xContext( xContext )
- , m_aVisualAreaSize( ChartModelHelper::getDefaultPageSize() )
- , m_xDataProvider( 0 )
- , m_xInternalDataProvider( 0 )
- , m_xPageBackground( new PageBackground( m_xContext ) )
- , m_xXMLNamespaceMap( createNameContainer( ::getCppuType( (const OUString*) 0 ),
- C2U( "com.sun.star.xml.NamespaceMap" ), C2U( "com.sun.star.comp.chart.XMLNameSpaceMap" ) ), uno::UNO_QUERY)
-{
- OSL_TRACE( "ChartModel: CTOR called" );
-
- osl_incrementInterlockedCount(&m_refCount);
- {
- m_xOldModelAgg.set(
- m_xContext->getServiceManager()->createInstanceWithContext(
- CHART_CHARTAPIWRAPPER_SERVICE_NAME,
- m_xContext ), uno::UNO_QUERY_THROW );
- m_xOldModelAgg->setDelegator( *this );
- }
-
- {
- ModifyListenerHelper::addListener( m_xPageBackground, this );
- m_xChartTypeManager.set( xContext->getServiceManager()->createInstanceWithContext(
- C2U( "com.sun.star.chart2.ChartTypeManager" ), m_xContext ), uno::UNO_QUERY );
- }
- osl_decrementInterlockedCount(&m_refCount);
-}
-
-ChartModel::ChartModel( const ChartModel & rOther )
- : impl::ChartModel_Base()
- , m_aLifeTimeManager( this, this )
- , m_bReadOnly( rOther.m_bReadOnly )
- , m_bModified( rOther.m_bModified )
- , m_nInLoad(0)
- , m_bUpdateNotificationsPending(false)
- , m_aResource( rOther.m_aResource )
- , m_aMediaDescriptor( rOther.m_aMediaDescriptor )
- , m_aControllers( m_aModelMutex )
- , m_nControllerLockCount(0)
- , m_xContext( rOther.m_xContext )
- // @note: the old model aggregate must not be shared with other models if it
- // is, you get mutex deadlocks
- , m_xOldModelAgg( 0 ) //rOther.m_xOldModelAgg )
- , m_xStorage( 0 ) //rOther.m_xStorage )
- , m_aVisualAreaSize( rOther.m_aVisualAreaSize )
- , m_aGraphicObjectVector( rOther.m_aGraphicObjectVector )
- , m_xDataProvider( rOther.m_xDataProvider )
- , m_xInternalDataProvider( rOther.m_xInternalDataProvider )
-{
- OSL_TRACE( "ChartModel: Copy-CTOR called" );
-
- osl_incrementInterlockedCount(&m_refCount);
- {
- m_xOldModelAgg.set(
- m_xContext->getServiceManager()->createInstanceWithContext(
- CHART_CHARTAPIWRAPPER_SERVICE_NAME,
- m_xContext ), uno::UNO_QUERY_THROW );
- m_xOldModelAgg->setDelegator( *this );
-
- Reference< util::XModifyListener > xListener;
- Reference< chart2::XTitle > xNewTitle = CreateRefClone< Reference< chart2::XTitle > >()( rOther.m_xTitle );
- Reference< chart2::XDiagram > xNewDiagram = CreateRefClone< Reference< chart2::XDiagram > >()( rOther.m_xDiagram );
- Reference< beans::XPropertySet > xNewPageBackground = CreateRefClone< Reference< beans::XPropertySet > >()( rOther.m_xPageBackground );
- Reference< chart2::XChartTypeManager > xChartTypeManager = CreateRefClone< Reference< chart2::XChartTypeManager > >()( rOther.m_xChartTypeManager );
- Reference< container::XNameAccess > xXMLNamespaceMap = CreateRefClone< Reference< container::XNameAccess > >()( rOther.m_xXMLNamespaceMap );
-
- {
- MutexGuard aGuard( m_aModelMutex );
- xListener = this;
- m_xTitle = xNewTitle;
- m_xDiagram = xNewDiagram;
- m_xPageBackground = xNewPageBackground;
- m_xChartTypeManager = xChartTypeManager;
- m_xXMLNamespaceMap = xXMLNamespaceMap;
- }
-
- ModifyListenerHelper::addListener( xNewTitle, xListener );
- ModifyListenerHelper::addListener( xNewDiagram, xListener );
- ModifyListenerHelper::addListener( xNewPageBackground, xListener );
- xListener.clear();
- }
- osl_decrementInterlockedCount(&m_refCount);
-}
-
-ChartModel::~ChartModel()
-{
- OSL_TRACE( "ChartModel: DTOR called" );
- if( m_xOldModelAgg.is())
- m_xOldModelAgg->setDelegator( NULL );
-}
-
-void SAL_CALL ChartModel::initialize( const Sequence< Any >& /*rArguments*/ )
- throw (uno::Exception, uno::RuntimeException)
-{
- //#i113722# avoid duplicate creation
-
- //maybe additional todo?:
- //support argument "EmbeddedObject"?
- //support argument "EmbeddedScriptSupport"?
- //support argument "DocumentRecoverySupport"?
-}
-
-//-----------------------------------------------------------------
-// private methods
-//-----------------------------------------------------------------
-
-::rtl::OUString ChartModel::impl_g_getLocation()
-{
-
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return ::rtl::OUString(); //behave passive if already disposed or closed or throw exception @todo?
- //mutex is acquired
- return m_aResource;
-}
-
-sal_Bool ChartModel::impl_isControllerConnected( const uno::Reference< frame::XController >& xController )
-{
- try
- {
- uno::Sequence< uno::Reference<uno::XInterface> > aSeq = m_aControllers.getElements();
- for( sal_Int32 nN = aSeq.getLength(); nN--; )
- {
- if( aSeq[nN] == xController )
- return sal_True;
- }
- }
- catch (const uno::Exception&)
- {
- }
- return sal_False;
-}
-
-uno::Reference< frame::XController > ChartModel::impl_getCurrentController() throw(uno::RuntimeException)
-{
- //@todo? hold only weak references to controllers
-
- // get the last active controller of this model
- if( m_xCurrentController.is() )
- return m_xCurrentController;
-
- // get the first controller of this model
- if( m_aControllers.getLength() )
- {
- uno::Reference<uno::XInterface> xI = m_aControllers.getElements()[0];
- return uno::Reference<frame::XController>( xI, uno::UNO_QUERY );
- }
-
- //return nothing if no controllers are connected at all
- return uno::Reference< frame::XController > ();
-}
-
-void SAL_CALL ChartModel::impl_notifyCloseListeners()
- throw( uno::RuntimeException)
-{
- ::cppu::OInterfaceContainerHelper* pIC = m_aLifeTimeManager.m_aListenerContainer
- .getContainer( ::getCppuType((const uno::Reference< util::XCloseListener >*)0) );
- if( pIC )
- {
- lang::EventObject aEvent( static_cast< lang::XComponent*>(this) );
- ::cppu::OInterfaceIteratorHelper aIt( *pIC );
- while( aIt.hasMoreElements() )
- {
- uno::Reference< util::XCloseListener > xListener( aIt.next(), uno::UNO_QUERY );
- if( xListener.is() )
- xListener->notifyClosing( aEvent );
- }
- }
-}
-
-void ChartModel::impl_adjustAdditionalShapesPositionAndSize( const awt::Size& aVisualAreaSize )
-{
- uno::Reference< beans::XPropertySet > xProperties( static_cast< ::cppu::OWeakObject* >( this ), uno::UNO_QUERY );
- if ( xProperties.is() )
- {
- uno::Reference< drawing::XShapes > xShapes;
- xProperties->getPropertyValue( C2U( "AdditionalShapes" ) ) >>= xShapes;
- if ( xShapes.is() )
- {
- sal_Int32 nCount = xShapes->getCount();
- for ( sal_Int32 i = 0; i < nCount; ++i )
- {
- Reference< drawing::XShape > xShape;
- if ( xShapes->getByIndex( i ) >>= xShape )
- {
- if ( xShape.is() )
- {
- awt::Point aPos( xShape->getPosition() );
- awt::Size aSize( xShape->getSize() );
-
- double fWidth = static_cast< double >( aVisualAreaSize.Width ) / m_aVisualAreaSize.Width;
- double fHeight = static_cast< double >( aVisualAreaSize.Height ) / m_aVisualAreaSize.Height;
-
- aPos.X = static_cast< long >( aPos.X * fWidth );
- aPos.Y = static_cast< long >( aPos.Y * fHeight );
- aSize.Width = static_cast< long >( aSize.Width * fWidth );
- aSize.Height = static_cast< long >( aSize.Height * fHeight );
-
- xShape->setPosition( aPos );
- xShape->setSize( aSize );
- }
- }
- }
- }
- }
-}
-
-//-----------------------------------------------------------------
-// lang::XServiceInfo
-//-----------------------------------------------------------------
-
-APPHELPER_XSERVICEINFO_IMPL(ChartModel,CHART_MODEL_SERVICE_IMPLEMENTATION_NAME)
-
-uno::Sequence< rtl::OUString > ChartModel::getSupportedServiceNames_Static()
-{
- uno::Sequence< rtl::OUString > aSNS( 3 );
- aSNS[0] = CHART_MODEL_SERVICE_NAME;
- aSNS[1] = C2U( "com.sun.star.document.OfficeDocument" );
- aSNS[2] = C2U( "com.sun.star.chart.ChartDocument" );
- //// @todo : add additional services if you support any further
- return aSNS;
-}
-
-//-----------------------------------------------------------------
-// frame::XModel (required interface)
-//-----------------------------------------------------------------
-
-sal_Bool SAL_CALL ChartModel::attachResource( const ::rtl::OUString& rURL
- , const uno::Sequence< beans::PropertyValue >& rMediaDescriptor )
- throw(uno::RuntimeException)
-{
- /*
- The method attachResource() is used by the frame loader implementations
- to inform the model about its URL and MediaDescriptor.
- */
-
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return sal_False; //behave passive if already disposed or closed or throw exception @todo?
- //mutex is acquired
-
- if(m_aResource.getLength()!=0)//we have a resource already //@todo? or is setting a new resource allowed?
- return sal_False;
- m_aResource = rURL;
- m_aMediaDescriptor = rMediaDescriptor;
-
- //@todo ? check rURL ??
- //@todo ? evaluate m_aMediaDescriptor;
- //@todo ? ... ??? --> nothing, this method is only for setting informations
-
- return sal_True;
-}
-
-::rtl::OUString SAL_CALL ChartModel::getURL() throw(uno::RuntimeException)
-{
- return impl_g_getLocation();
-}
-
-uno::Sequence< beans::PropertyValue > SAL_CALL ChartModel::getArgs() throw(uno::RuntimeException)
-{
- /*
- The method getArgs() returns a sequence of property values
- that report the resource description according to com.sun.star.document.MediaDescriptor,
- specified on loading or saving with storeAsURL.
- */
-
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return uno::Sequence< beans::PropertyValue >(); //behave passive if already disposed or closed or throw exception @todo?
- //mutex is acquired
-
- return m_aMediaDescriptor;
-}
-
-void SAL_CALL ChartModel::connectController( const uno::Reference< frame::XController >& xController )
- throw(uno::RuntimeException)
-{
- //@todo? this method is declared as oneway -> ...?
-
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return ; //behave passive if already disposed or closed
- //mutex is acquired
-
- //--add controller
- m_aControllers.addInterface(xController);
-}
-
-void SAL_CALL ChartModel::disconnectController( const uno::Reference< frame::XController >& xController )
- throw(uno::RuntimeException)
-{
- //@todo? this method is declared as oneway -> ...?
-
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return; //behave passive if already disposed or closed
-
- //--remove controller
- m_aControllers.removeInterface(xController);
-
- //case: current controller is disconnected:
- if( m_xCurrentController == xController )
- m_xCurrentController.clear();
-
- DisposeHelper::DisposeAndClear( m_xRangeHighlighter );
-}
-
-void SAL_CALL ChartModel::lockControllers() throw(uno::RuntimeException)
-{
- /*
- suspends some notifications to the controllers which are used for display updates.
-
- The calls to lockControllers() and unlockControllers() may be nested
- and even overlapping, but they must be in pairs. While there is at least one lock
- remaining, some notifications for display updates are not broadcasted.
- */
-
- //@todo? this method is declared as oneway -> ...?
-
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return; //behave passive if already disposed or closed or throw exception @todo?
- ++m_nControllerLockCount;
-}
-
-void SAL_CALL ChartModel::unlockControllers() throw(uno::RuntimeException)
-{
- /*
- resumes the notifications which were suspended by lockControllers() .
-
- The calls to lockControllers() and unlockControllers() may be nested
- and even overlapping, but they must be in pairs. While there is at least one lock
- remaining, some notifications for display updates are not broadcasted.
- */
-
- //@todo? this method is declared as oneway -> ...?
-
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return; //behave passive if already disposed or closed or throw exception @todo?
- if( m_nControllerLockCount == 0 )
- {
- OSL_TRACE( "ChartModel: unlockControllers called with m_nControllerLockCount == 0" );
- return;
- }
- --m_nControllerLockCount;
- if( m_nControllerLockCount == 0 && m_bUpdateNotificationsPending )
- {
- aGuard.clear();
- impl_notifyModifiedListeners();
- }
-}
-
-sal_Bool SAL_CALL ChartModel::hasControllersLocked() throw(uno::RuntimeException)
-{
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- return sal_False; //behave passive if already disposed or closed or throw exception @todo?
- return ( m_nControllerLockCount != 0 ) ;
-}
-
-uno::Reference< frame::XController > SAL_CALL ChartModel::getCurrentController() throw(uno::RuntimeException)
-{
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- throw lang::DisposedException(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(
- "getCurrentController was called on an already disposed or closed model" ) )
- , static_cast< ::cppu::OWeakObject* >(this));
-
- return impl_getCurrentController();
-}
-
-void SAL_CALL ChartModel::setCurrentController( const uno::Reference< frame::XController >& xController )
- throw(container::NoSuchElementException, uno::RuntimeException)
-{
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- throw lang::DisposedException(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(
- "setCurrentController was called on an already disposed or closed model" ) )
- , static_cast< ::cppu::OWeakObject* >(this));
-
- //OSL_ENSURE( impl_isControllerConnected(xController), "setCurrentController is called with a Controller which is not connected" );
- if(!impl_isControllerConnected(xController))
- throw container::NoSuchElementException(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(
- "setCurrentController is called with a Controller which is not connected" ) )
- , static_cast< ::cppu::OWeakObject* >(this));
-
- m_xCurrentController = xController;
-
- DisposeHelper::DisposeAndClear( m_xRangeHighlighter );
-}
-
-uno::Reference< uno::XInterface > SAL_CALL ChartModel::getCurrentSelection() throw(uno::RuntimeException)
-{
- LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())
- throw lang::DisposedException(::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(
- "getCurrentSelection was called on an already disposed or closed model" ) )
- , static_cast< ::cppu::OWeakObject* >(this));
-
-
- uno::Reference< uno::XInterface > xReturn;
- uno::Reference< frame::XController > xController = impl_getCurrentController();
-
- aGuard.clear();
- if( xController.is() )
- {
- uno::Reference< view::XSelectionSupplier > xSelectionSupl( xController, uno::UNO_QUERY );
- if ( xSelectionSupl.is() )
- {
- uno::Any aSel = xSelectionSupl->getSelection();
- rtl::OUString aObjectCID;
- if( aSel >>= aObjectCID )
- xReturn.set( ObjectIdentifier::getObjectPropertySet( aObjectCID, Reference< XChartDocument >(this)));
- }
- }
- return xReturn;
-}
-
-
-//-----------------------------------------------------------------
-// lang::XComponent (base of XModel)
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::dispose() throw(uno::RuntimeException)
-{
- Reference< XInterface > xKeepAlive( *this );
-
- //This object should release all resources and references in the
- //easiest possible manner
- //This object must notify all registered listeners using the method
- //<member>XEventListener::disposing</member>
-
- //hold no mutex
- if( !m_aLifeTimeManager.dispose() )
- return;
-
- //--release all resources and references
- //// @todo
-
- if ( m_xDiagram.is() )
- ModifyListenerHelper::removeListener( m_xDiagram, this );
-
- m_xDataProvider.clear();
- m_xInternalDataProvider.clear();
- m_xNumberFormatsSupplier.clear();
- DisposeHelper::DisposeAndClear( m_xOwnNumberFormatsSupplier );
- DisposeHelper::DisposeAndClear( m_xChartTypeManager );
- DisposeHelper::DisposeAndClear( m_xDiagram );
- DisposeHelper::DisposeAndClear( m_xTitle );
- DisposeHelper::DisposeAndClear( m_xPageBackground );
- DisposeHelper::DisposeAndClear( m_xXMLNamespaceMap );
-
- m_xStorage.clear();
- // just clear, don't dispose - we're not the owner
-
- if ( m_pUndoManager.is() )
- m_pUndoManager->disposing();
- m_pUndoManager.clear();
- // that's important, since the UndoManager implementation delegates its ref counting to ourself.
-
- m_aControllers.disposeAndClear( lang::EventObject( static_cast< cppu::OWeakObject * >( this )));
- m_xCurrentController.clear();
-
- DisposeHelper::DisposeAndClear( m_xRangeHighlighter );
-
- if( m_xOldModelAgg.is())
- m_xOldModelAgg->setDelegator( NULL );
-
- OSL_TRACE( "ChartModel: dispose() called" );
-}
-
-void SAL_CALL ChartModel::addEventListener( const uno::Reference< lang::XEventListener > & xListener )
- throw(uno::RuntimeException)
-{
- if( m_aLifeTimeManager.impl_isDisposedOrClosed() )
- return; //behave passive if already disposed or closed
-
- m_aLifeTimeManager.m_aListenerContainer.addInterface( ::getCppuType((const uno::Reference< lang::XEventListener >*)0), xListener );
-}
-
-void SAL_CALL ChartModel::removeEventListener( const uno::Reference< lang::XEventListener > & xListener )
- throw(uno::RuntimeException)
-{
- if( m_aLifeTimeManager.impl_isDisposedOrClosed(false) )
- return; //behave passive if already disposed or closed
-
- m_aLifeTimeManager.m_aListenerContainer.removeInterface( ::getCppuType((const uno::Reference< lang::XEventListener >*)0), xListener );
- return;
-}
-
-//-----------------------------------------------------------------
-// util::XCloseBroadcaster (base of XCloseable)
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::addCloseListener( const uno::Reference< util::XCloseListener > & xListener )
- throw(uno::RuntimeException)
-{
- m_aLifeTimeManager.g_addCloseListener( xListener );
-}
-
-void SAL_CALL ChartModel::removeCloseListener( const uno::Reference< util::XCloseListener > & xListener )
- throw(uno::RuntimeException)
-{
- if( m_aLifeTimeManager.impl_isDisposedOrClosed(false) )
- return; //behave passive if already disposed or closed
-
- m_aLifeTimeManager.m_aListenerContainer.removeInterface( ::getCppuType((const uno::Reference< util::XCloseListener >*)0), xListener );
- return;
-}
-
-//-----------------------------------------------------------------
-// util::XCloseable
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::close( sal_Bool bDeliverOwnership )
- throw( util::CloseVetoException,
- uno::RuntimeException )
-{
- //hold no mutex
-
- if( !m_aLifeTimeManager.g_close_startTryClose( bDeliverOwnership ) )
- return;
- //no mutex is acquired
-
- // At the end of this method may we must dispose ourself ...
- // and may nobody from outside hold a reference to us ...
- // then it's a good idea to do that by ourself.
- uno::Reference< uno::XInterface > xSelfHold( static_cast< ::cppu::OWeakObject* >(this) );
-
- //the listeners have had no veto
- //check wether we self can close
- {
- util::CloseVetoException aVetoException = util::CloseVetoException(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(
- "the model itself could not be closed" ) )
- , static_cast< ::cppu::OWeakObject* >(this));
-
- if( m_aLifeTimeManager.g_close_isNeedToCancelLongLastingCalls( bDeliverOwnership, aVetoException ) )
- {
- ////you can empty this block, if you never start longlasting calls or
- ////if your longlasting calls are per default not cancelable (check how you have constructed your LifeTimeManager)
-
- sal_Bool bLongLastingCallsAreCanceled = sal_False;
- try
- {
- //try to cancel running longlasting calls
- //// @todo
- }
- catch (const uno::Exception&)
- {
- //// @todo
- //do not throw anything here!! (without endTryClose)
- }
- //if not successful canceled
- if(!bLongLastingCallsAreCanceled)
- {
- m_aLifeTimeManager.g_close_endTryClose( bDeliverOwnership, sal_True );
- throw aVetoException;
- }
- }
-
- }
- m_aLifeTimeManager.g_close_endTryClose_doClose();
-
- // BM @todo: is it ok to call the listeners here?
- impl_notifyCloseListeners();
-}
-
-//-----------------------------------------------------------------
-// lang::XTypeProvider
-//-----------------------------------------------------------------
-uno::Sequence< uno::Type > SAL_CALL ChartModel::getTypes()
- throw (uno::RuntimeException)
-{
- uno::Reference< lang::XTypeProvider > xAggTypeProvider;
- if( (m_xOldModelAgg->queryAggregation( ::getCppuType( & xAggTypeProvider )) >>= xAggTypeProvider)
- && xAggTypeProvider.is())
- {
- uno::Sequence< uno::Type > aOwnTypes( impl::ChartModel_Base::getTypes());
- uno::Sequence< uno::Type > aAggTypes( xAggTypeProvider->getTypes());
- uno::Sequence< uno::Type > aResult( aOwnTypes.getLength() + aAggTypes.getLength());
- sal_Int32 i=0;
- for( ;i<aOwnTypes.getLength(); ++i )
- aResult[i] = aOwnTypes[i];
- for( sal_Int32 j=0; i<aResult.getLength(); ++j, ++i)
- aResult[i] = aAggTypes[j];
- return aResult;
- }
-
- return impl::ChartModel_Base::getTypes();
-}
-
-//-----------------------------------------------------------------
-// document::XDocumentPropertiesSupplier
-//-----------------------------------------------------------------
-uno::Reference< document::XDocumentProperties > SAL_CALL
- ChartModel::getDocumentProperties() throw (uno::RuntimeException)
-{
- ::osl::MutexGuard aGuard( m_aModelMutex );
- if ( !m_xDocumentProperties.is() )
- {
- uno::Reference< document::XDocumentProperties > xDocProps(
- ::comphelper::getProcessServiceFactory()->createInstance(
- C2U("com.sun.star.document.DocumentProperties") ), uno::UNO_QUERY );
- m_xDocumentProperties.set(xDocProps);
- }
- return m_xDocumentProperties;
-}
-
-//-----------------------------------------------------------------
-// document::XDocumentPropertiesSupplier
-//-----------------------------------------------------------------
-Reference< document::XUndoManager > SAL_CALL ChartModel::getUndoManager( ) throw (RuntimeException)
-{
- ::osl::MutexGuard aGuard( m_aModelMutex );
- if ( !m_pUndoManager.is() )
- m_pUndoManager.set( new UndoManager( *this, m_aModelMutex ) );
- return m_pUndoManager.get();
-}
-
-//-----------------------------------------------------------------
-// chart2::XChartDocument
-//-----------------------------------------------------------------
-
-uno::Reference< chart2::XDiagram > SAL_CALL ChartModel::getFirstDiagram()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aModelMutex );
- return m_xDiagram;
-}
-
-void SAL_CALL ChartModel::setFirstDiagram( const uno::Reference< chart2::XDiagram >& xDiagram )
- throw (uno::RuntimeException)
-{
- Reference< chart2::XDiagram > xOldDiagram;
- Reference< util::XModifyListener > xListener;
- {
- MutexGuard aGuard( m_aModelMutex );
- if( xDiagram == m_xDiagram )
- return;
- xOldDiagram = m_xDiagram;
- m_xDiagram = xDiagram;
- xListener = this;
- }
- //don't keep the mutex locked while calling out
- ModifyListenerHelper::removeListener( xOldDiagram, xListener );
- ModifyListenerHelper::addListener( xDiagram, xListener );
- setModified( sal_True );
-}
-
-Reference< chart2::data::XDataSource > ChartModel::impl_createDefaultData()
-{
- Reference< chart2::data::XDataSource > xDataSource;
- if( hasInternalDataProvider() )
- {
- uno::Reference< lang::XInitialization > xIni(m_xInternalDataProvider,uno::UNO_QUERY);
- if( xIni.is() )
- {
- //init internal dataprovider
- {
- uno::Sequence< uno::Any > aArgs(1);
- beans::NamedValue aParam(::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("CreateDefaultData")),uno::makeAny(sal_True));
- aArgs[0] <<= aParam;
- xIni->initialize(aArgs);
- }
- //create data
- uno::Sequence< beans::PropertyValue > aArgs( 4 );
- aArgs[0] = beans::PropertyValue(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CellRangeRepresentation" )), -1,
- uno::makeAny( C2U("all") ), beans::PropertyState_DIRECT_VALUE );
- aArgs[1] = beans::PropertyValue(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "HasCategories" )), -1,
- uno::makeAny( true ), beans::PropertyState_DIRECT_VALUE );
- aArgs[2] = beans::PropertyValue(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "FirstCellAsLabel" )), -1,
- uno::makeAny( true ), beans::PropertyState_DIRECT_VALUE );
- aArgs[3] = beans::PropertyValue(
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "DataRowSource" )), -1,
- uno::makeAny( ::com::sun::star::chart::ChartDataRowSource_COLUMNS ), beans::PropertyState_DIRECT_VALUE );
- xDataSource = m_xInternalDataProvider->createDataSource( aArgs );
- }
- }
- return xDataSource;
-}
-
-void SAL_CALL ChartModel::createInternalDataProvider( sal_Bool bCloneExistingData )
- throw (util::CloseVetoException, uno::RuntimeException)
-{
- // don't lock the mutex, because this call calls out to code that tries to
- // lock the solar mutex. On the other hand, a paint locks the solar mutex
- // and calls to the model lock the model's mutex => deadlock
- // @todo: lock a separate mutex in the InternalData class
- if( !hasInternalDataProvider() )
- {
- if( bCloneExistingData )
- m_xInternalDataProvider = ChartModelHelper::createInternalDataProvider( this, true );
- else
- m_xInternalDataProvider = ChartModelHelper::createInternalDataProvider( Reference<XChartDocument>(), true );
- m_xDataProvider.set( m_xInternalDataProvider );
- }
- setModified( sal_True );
-}
-
-sal_Bool SAL_CALL ChartModel::hasInternalDataProvider()
- throw (uno::RuntimeException)
-{
- return m_xDataProvider.is() && m_xInternalDataProvider.is();
-}
-
-uno::Reference< chart2::data::XDataProvider > SAL_CALL ChartModel::getDataProvider()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aModelMutex );
- return m_xDataProvider;
-}
-
-// ____ XDataReceiver ____
-
-void SAL_CALL ChartModel::attachDataProvider( const uno::Reference< chart2::data::XDataProvider >& xDataProvider )
- throw (uno::RuntimeException)
-{
- {
- MutexGuard aGuard( m_aModelMutex );
- uno::Reference< beans::XPropertySet > xProp( xDataProvider, uno::UNO_QUERY );
- if( xProp.is() )
- {
- try
- {
- sal_Bool bIncludeHiddenCells = ChartModelHelper::isIncludeHiddenCells( Reference< frame::XModel >(this) );
- xProp->setPropertyValue(C2U("IncludeHiddenCells"), uno::makeAny(bIncludeHiddenCells));
- }
- catch (const beans::UnknownPropertyException&)
- {
- }
- }
-
- m_xDataProvider.set( xDataProvider );
- m_xInternalDataProvider.clear();
-
- //the numberformatter is kept independent of the data provider!
- }
- setModified( sal_True );
-}
-
-void SAL_CALL ChartModel::attachNumberFormatsSupplier( const uno::Reference< util::XNumberFormatsSupplier >& xNewSupplier )
- throw (uno::RuntimeException)
-{
- {
- MutexGuard aGuard( m_aModelMutex );
- if( xNewSupplier==m_xNumberFormatsSupplier )
- return;
- if( xNewSupplier==m_xOwnNumberFormatsSupplier )
- return;
- if( m_xOwnNumberFormatsSupplier.is() && xNewSupplier.is() )
- {
- //@todo
- //merge missing numberformats from own to new formatter
- }
- else if( !xNewSupplier.is() )
- {
- if( m_xNumberFormatsSupplier.is() )
- {
- //@todo
- //merge missing numberformats from old numberformatter to own numberformatter
- //create own numberformatter if necessary
- }
- }
-
- m_xNumberFormatsSupplier.set( xNewSupplier );
- m_xOwnNumberFormatsSupplier.clear();
- }
- setModified( sal_True );
-}
-
-void SAL_CALL ChartModel::setArguments( const Sequence< beans::PropertyValue >& aArguments )
- throw (lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- {
- MutexGuard aGuard( m_aModelMutex );
- if( !m_xDataProvider.is() )
- return;
- lockControllers();
-
- try
- {
- Reference< chart2::data::XDataSource > xDataSource( m_xDataProvider->createDataSource( aArguments ) );
- if( xDataSource.is() )
- {
- Reference< chart2::XDiagram > xDia( getFirstDiagram() );
- if( !xDia.is() )
- {
- Reference< chart2::XChartTypeTemplate > xTemplate( impl_createDefaultChartTypeTemplate() );
- if( xTemplate.is())
- setFirstDiagram( xTemplate->createDiagramByDataSource( xDataSource, aArguments ) );
- }
- else
- xDia->setDiagramData( xDataSource, aArguments );
- }
- }
- catch (const lang::IllegalArgumentException&)
- {
- throw;
- }
- catch (const uno::Exception& ex)
- {
- ASSERT_EXCEPTION( ex );
- }
- unlockControllers();
- }
- setModified( sal_True );
-}
-
-Sequence< OUString > SAL_CALL ChartModel::getUsedRangeRepresentations()
- throw (uno::RuntimeException)
-{
- return DataSourceHelper::getUsedDataRanges( Reference< frame::XModel >(this));
-}
-
-Reference< chart2::data::XDataSource > SAL_CALL ChartModel::getUsedData()
- throw (uno::RuntimeException)
-{
- return DataSourceHelper::getUsedData( Reference< chart2::XChartDocument >(this));
-}
-
-Reference< chart2::data::XRangeHighlighter > SAL_CALL ChartModel::getRangeHighlighter()
- throw (uno::RuntimeException)
-{
- if( ! m_xRangeHighlighter.is())
- {
- uno::Reference< view::XSelectionSupplier > xSelSupp( this->getCurrentController(), uno::UNO_QUERY );
- if( xSelSupp.is() )
- m_xRangeHighlighter.set( ChartModelHelper::createRangeHighlighter( xSelSupp ));
- }
- return m_xRangeHighlighter;
-}
-
-Reference< chart2::XChartTypeTemplate > ChartModel::impl_createDefaultChartTypeTemplate()
-{
- Reference< chart2::XChartTypeTemplate > xTemplate;
- Reference< lang::XMultiServiceFactory > xFact( m_xChartTypeManager, uno::UNO_QUERY );
- if( xFact.is() )
- xTemplate.set( xFact->createInstance( C2U( "com.sun.star.chart2.template.Column" ) ), uno::UNO_QUERY );
- return xTemplate;
-}
-
-void SAL_CALL ChartModel::setChartTypeManager( const uno::Reference< chart2::XChartTypeManager >& xNewManager )
- throw (uno::RuntimeException)
-{
- {
- MutexGuard aGuard( m_aModelMutex );
- m_xChartTypeManager = xNewManager;
- }
- setModified( sal_True );
-}
-
-uno::Reference< chart2::XChartTypeManager > SAL_CALL ChartModel::getChartTypeManager()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aModelMutex );
- return m_xChartTypeManager;
-}
-
-uno::Reference< beans::XPropertySet > SAL_CALL ChartModel::getPageBackground()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aModelMutex );
- return m_xPageBackground;
-}
-
-// ____ XTitled ____
-uno::Reference< chart2::XTitle > SAL_CALL ChartModel::getTitleObject()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( m_aModelMutex );
- return m_xTitle;
-}
-
-void SAL_CALL ChartModel::setTitleObject( const uno::Reference< chart2::XTitle >& xTitle )
- throw (uno::RuntimeException)
-{
- {
- MutexGuard aGuard( m_aModelMutex );
- if( m_xTitle.is() )
- ModifyListenerHelper::removeListener( m_xTitle, this );
- m_xTitle = xTitle;
- ModifyListenerHelper::addListener( m_xTitle, this );
- }
- setModified( sal_True );
-}
-
-// ____ XInterface (for old API wrapper) ____
-uno::Any SAL_CALL ChartModel::queryInterface( const uno::Type& aType )
- throw (uno::RuntimeException)
-{
- uno::Any aResult( impl::ChartModel_Base::queryInterface( aType ));
-
- if( ! aResult.hasValue())
- {
- // try old API wrapper
- try
- {
- if( m_xOldModelAgg.is())
- aResult = m_xOldModelAgg->queryAggregation( aType );
- }
- catch (const uno::Exception& ex)
- {
- ASSERT_EXCEPTION( ex );
- }
- }
-
- return aResult;
-}
-
-// ____ XCloneable ____
-Reference< util::XCloneable > SAL_CALL ChartModel::createClone()
- throw (uno::RuntimeException)
-{
- return Reference< util::XCloneable >( new ChartModel( *this ));
-}
-
-// ____ XVisualObject ____
-void SAL_CALL ChartModel::setVisualAreaSize( ::sal_Int64 nAspect, const awt::Size& aSize )
- throw (lang::IllegalArgumentException,
- embed::WrongStateException,
- uno::Exception,
- uno::RuntimeException)
-{
- if( nAspect == embed::Aspects::MSOLE_CONTENT )
- {
- ControllerLockGuard aLockGuard( this );
- bool bChanged =
- (m_aVisualAreaSize.Width != aSize.Width ||
- m_aVisualAreaSize.Height != aSize.Height);
-
- // #i12587# support for shapes in chart
- if ( bChanged )
- {
- impl_adjustAdditionalShapesPositionAndSize( aSize );
- }
-
- m_aVisualAreaSize = aSize;
- if( bChanged )
- setModified( sal_True );
- }
- else
- {
- OSL_FAIL( "setVisualAreaSize: Aspect not implemented yet.");
- }
-}
-
-awt::Size SAL_CALL ChartModel::getVisualAreaSize( ::sal_Int64 nAspect )
- throw (lang::IllegalArgumentException,
- embed::WrongStateException,
- uno::Exception,
- uno::RuntimeException)
-{
- OSL_ENSURE( nAspect == embed::Aspects::MSOLE_CONTENT,
- "No aspects other than content are supported" );
- (void)(nAspect); // avoid warning in non-debug builds
- // other possible aspects are MSOLE_THUMBNAIL, MSOLE_ICON and MSOLE_DOCPRINT
-
- return m_aVisualAreaSize;
-}
-
-embed::VisualRepresentation SAL_CALL ChartModel::getPreferredVisualRepresentation( ::sal_Int64 nAspect )
- throw (lang::IllegalArgumentException,
- embed::WrongStateException,
- uno::Exception,
- uno::RuntimeException)
-{
- OSL_ENSURE( nAspect == embed::Aspects::MSOLE_CONTENT,
- "No aspects other than content are supported" );
- (void)(nAspect); // avoid warning in non-debug builds
-
- embed::VisualRepresentation aResult;
-
- try
- {
- Sequence< sal_Int8 > aMetafile;
-
- //get view from old api wrapper
- Reference< datatransfer::XTransferable > xTransferable(
- this->createInstance( CHART_VIEW_SERVICE_NAME ), uno::UNO_QUERY );
- if( xTransferable.is() )
- {
- datatransfer::DataFlavor aDataFlavor( lcl_aGDIMetaFileMIMEType,
- C2U( "GDIMetaFile" ),
- ::getCppuType( (const uno::Sequence< sal_Int8 >*) 0 ) );
-
- uno::Any aData( xTransferable->getTransferData( aDataFlavor ) );
- aData >>= aMetafile;
- }
-
- aResult.Flavor.MimeType = lcl_aGDIMetaFileMIMEType;
- aResult.Flavor.DataType = getCppuType( &aMetafile );
-
- aResult.Data <<= aMetafile;
- }
- catch (const uno::Exception& ex)
- {
- ASSERT_EXCEPTION( ex );
- }
-
- return aResult;
-}
-
-::sal_Int32 SAL_CALL ChartModel::getMapUnit( ::sal_Int64 nAspect )
- throw (uno::Exception,
- uno::RuntimeException)
-{
- OSL_ENSURE( nAspect == embed::Aspects::MSOLE_CONTENT,
- "No aspects other than content are supported" );
- (void)(nAspect); // avoid warning in non-debug builds
- return embed::EmbedMapUnits::ONE_100TH_MM;
-}
-
-// ____ datatransfer::XTransferable ____
-uno::Any SAL_CALL ChartModel::getTransferData( const datatransfer::DataFlavor& aFlavor )
- throw (datatransfer::UnsupportedFlavorException,
- io::IOException,
- uno::RuntimeException)
-{
- uno::Any aResult;
- if( this->isDataFlavorSupported( aFlavor ))
- {
- try
- {
- //get view from old api wrapper
- Reference< datatransfer::XTransferable > xTransferable(
- this->createInstance( CHART_VIEW_SERVICE_NAME ), uno::UNO_QUERY );
- if( xTransferable.is() &&
- xTransferable->isDataFlavorSupported( aFlavor ))
- {
- aResult = xTransferable->getTransferData( aFlavor );
- }
- }
- catch (const uno::Exception& ex)
- {
- ASSERT_EXCEPTION( ex );
- }
- }
- else
- {
- throw datatransfer::UnsupportedFlavorException(
- aFlavor.MimeType, static_cast< ::cppu::OWeakObject* >( this ));
- }
-
- return aResult;
-}
-
-Sequence< datatransfer::DataFlavor > SAL_CALL ChartModel::getTransferDataFlavors()
- throw (uno::RuntimeException)
-{
- uno::Sequence< datatransfer::DataFlavor > aRet(1);
-
- aRet[0] = datatransfer::DataFlavor( lcl_aGDIMetaFileMIMETypeHighContrast,
- C2U( "GDIMetaFile" ),
- ::getCppuType( (const uno::Sequence< sal_Int8 >*) NULL ) );
-
- return aRet;
-}
-
-::sal_Bool SAL_CALL ChartModel::isDataFlavorSupported( const datatransfer::DataFlavor& aFlavor )
- throw (uno::RuntimeException)
-{
- return aFlavor.MimeType.equals(lcl_aGDIMetaFileMIMETypeHighContrast);
-}
-
-
-
-namespace
-{
-enum eServiceType
-{
- SERVICE_DASH_TABLE,
- SERVICE_GARDIENT_TABLE,
- SERVICE_HATCH_TABLE,
- SERVICE_BITMAP_TABLE,
- SERVICE_TRANSP_GRADIENT_TABLE,
- SERVICE_MARKER_TABLE,
- SERVICE_NAMESPACE_MAP
-};
-
-typedef ::std::map< ::rtl::OUString, enum eServiceType > tServiceNameMap;
-typedef ::comphelper::MakeMap< ::rtl::OUString, enum eServiceType > tMakeServiceNameMap;
-
-tServiceNameMap & lcl_getStaticServiceNameMap()
-{
- static tServiceNameMap aServiceNameMap(
- tMakeServiceNameMap
- ( C2U( "com.sun.star.drawing.DashTable" ), SERVICE_DASH_TABLE )
- ( C2U( "com.sun.star.drawing.GradientTable" ), SERVICE_GARDIENT_TABLE )
- ( C2U( "com.sun.star.drawing.HatchTable" ), SERVICE_HATCH_TABLE )
- ( C2U( "com.sun.star.drawing.BitmapTable" ), SERVICE_BITMAP_TABLE )
- ( C2U( "com.sun.star.drawing.TransparencyGradientTable" ), SERVICE_TRANSP_GRADIENT_TABLE )
- ( C2U( "com.sun.star.drawing.MarkerTable" ), SERVICE_MARKER_TABLE )
- ( C2U( "com.sun.star.xml.NamespaceMap" ), SERVICE_NAMESPACE_MAP )
- );
- return aServiceNameMap;
-}
-}
-// ____ XMultiServiceFactory ____
-Reference< uno::XInterface > SAL_CALL ChartModel::createInstance( const OUString& rServiceSpecifier )
- throw( uno::Exception, uno::RuntimeException )
-{
- uno::Reference< uno::XInterface > xResult;
- tServiceNameMap & rMap = lcl_getStaticServiceNameMap();
-
- tServiceNameMap::const_iterator aIt( rMap.find( rServiceSpecifier ));
- if( aIt != rMap.end())
- {
- switch( (*aIt).second )
- {
- case SERVICE_DASH_TABLE:
- case SERVICE_GARDIENT_TABLE:
- case SERVICE_HATCH_TABLE:
- case SERVICE_BITMAP_TABLE:
- case SERVICE_TRANSP_GRADIENT_TABLE:
- case SERVICE_MARKER_TABLE:
- {
- uno::Reference< lang::XMultiServiceFactory > xFact(
- this->createInstance( CHART_VIEW_SERVICE_NAME ), uno::UNO_QUERY );
- if ( xFact.is() )
- {
- return xFact->createInstance( rServiceSpecifier );
- }
- }
- break;
- case SERVICE_NAMESPACE_MAP:
- return Reference< uno::XInterface >( m_xXMLNamespaceMap );
- }
- }
- else
- {
- if( m_xOldModelAgg.is() )
- {
- Any aAny = m_xOldModelAgg->queryAggregation( ::getCppuType((const uno::Reference< lang::XMultiServiceFactory >*)0) );
- uno::Reference< lang::XMultiServiceFactory > xOldModelFactory;
- if( (aAny >>= xOldModelFactory) && xOldModelFactory.is() )
- {
- return xOldModelFactory->createInstance( rServiceSpecifier );
- }
- }
- }
- return 0;
-}
-
-Reference< uno::XInterface > SAL_CALL ChartModel::createInstanceWithArguments(
- const OUString& rServiceSpecifier , const Sequence< Any >& Arguments )
- throw( uno::Exception, uno::RuntimeException )
-{
- OSL_ENSURE( Arguments.getLength(), "createInstanceWithArguments: Warning: Arguments are ignored" );
- (void)(Arguments); // avoid warning in non-debug builds
- return createInstance( rServiceSpecifier );
-}
-
-Sequence< OUString > SAL_CALL ChartModel::getAvailableServiceNames()
- throw( uno::RuntimeException )
-{
- uno::Sequence< ::rtl::OUString > aResult;
-
- if( m_xOldModelAgg.is())
- {
- Any aAny = m_xOldModelAgg->queryAggregation( ::getCppuType((const uno::Reference< lang::XMultiServiceFactory >*)0) );
- uno::Reference< lang::XMultiServiceFactory > xOldModelFactory;
- if( (aAny >>= xOldModelFactory) && xOldModelFactory.is() )
- {
- return xOldModelFactory->getAvailableServiceNames();
- }
- }
- return aResult;
-}
-
-Reference< util::XNumberFormatsSupplier > ChartModel::impl_getNumberFormatsSupplier()
-{
- if( !m_xNumberFormatsSupplier.is() )
- {
- if( !m_xOwnNumberFormatsSupplier.is() )
- {
- Reference< lang::XMultiServiceFactory > xFactory( m_xContext->getServiceManager(), uno::UNO_QUERY );
- m_apSvNumberFormatter.reset( new SvNumberFormatter( xFactory, LANGUAGE_SYSTEM ) );
- m_xOwnNumberFormatsSupplier = new SvNumberFormatsSupplierObj( m_apSvNumberFormatter.get() );
- //pOwnNumberFormatter->ChangeStandardPrec( 15 ); todo?
- }
- m_xNumberFormatsSupplier = m_xOwnNumberFormatsSupplier;
- }
- return m_xNumberFormatsSupplier;
-}
-
-// ____ XUnoTunnel ___
-::sal_Int64 SAL_CALL ChartModel::getSomething( const Sequence< ::sal_Int8 >& aIdentifier )
- throw( uno::RuntimeException)
-{
- if( aIdentifier.getLength() == 16 && 0 == rtl_compareMemory( SvNumberFormatsSupplierObj::getUnoTunnelId().getConstArray(),
- aIdentifier.getConstArray(), 16 ) )
- {
- Reference< lang::XUnoTunnel > xTunnel( impl_getNumberFormatsSupplier(), uno::UNO_QUERY );
- if( xTunnel.is() )
- return xTunnel->getSomething( aIdentifier );
- }
- return 0;
-}
-
-// ____ XNumberFormatsSupplier ____
-uno::Reference< beans::XPropertySet > SAL_CALL ChartModel::getNumberFormatSettings()
- throw (uno::RuntimeException)
-{
- Reference< util::XNumberFormatsSupplier > xSupplier( impl_getNumberFormatsSupplier() );
- if( xSupplier.is() )
- return xSupplier->getNumberFormatSettings();
- return uno::Reference< beans::XPropertySet >();
-}
-
-uno::Reference< util::XNumberFormats > SAL_CALL ChartModel::getNumberFormats()
- throw (uno::RuntimeException)
-{
- Reference< util::XNumberFormatsSupplier > xSupplier( impl_getNumberFormatsSupplier() );
- if( xSupplier.is() )
- return xSupplier->getNumberFormats();
- return uno::Reference< util::XNumberFormats >();
-}
-
-// ____ XChild ____
-Reference< uno::XInterface > SAL_CALL ChartModel::getParent()
- throw (uno::RuntimeException)
-{
- return Reference< uno::XInterface >(m_xParent,uno::UNO_QUERY);
-}
-
-void SAL_CALL ChartModel::setParent( const Reference< uno::XInterface >& Parent )
- throw (lang::NoSupportException,
- uno::RuntimeException)
-{
- if( Parent != m_xParent )
- m_xParent.set( Parent, uno::UNO_QUERY );
-}
-
-// ____ XDataSource ____
-uno::Sequence< Reference< chart2::data::XLabeledDataSequence > > SAL_CALL ChartModel::getDataSequences()
- throw (uno::RuntimeException)
-{
- Reference< chart2::data::XDataSource > xSource(
- DataSourceHelper::getUsedData( uno::Reference< frame::XModel >(this) ) );
- if( xSource.is())
- return xSource->getDataSequences();
-
- return uno::Sequence< Reference< chart2::data::XLabeledDataSequence > >();
-}
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/ChartModel.hxx b/chart2/source/model/main/ChartModel.hxx
deleted file mode 100644
index 162ec013a..000000000
--- a/chart2/source/model/main/ChartModel.hxx
+++ /dev/null
@@ -1,616 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef _CHART_MODEL_HXX
-#define _CHART_MODEL_HXX
-
-#include "LifeTime.hxx"
-#include "ServiceMacros.hxx"
-
-#include <com/sun/star/frame/XModel.hpp>
-#include <com/sun/star/frame/XStorable2.hpp>
-#include <com/sun/star/util/XModifiable.hpp>
-#include <com/sun/star/util/XCloseable.hpp>
-#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
-#include <com/sun/star/document/XUndoManagerSupplier.hpp>
-#include <com/sun/star/document/XFilter.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/lang/XInitialization.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-#include <com/sun/star/embed/XVisualObject.hpp>
-#include <com/sun/star/document/XStorageBasedDocument.hpp>
-#include <com/sun/star/lang/XUnoTunnel.hpp>
-#include <com/sun/star/util/XNumberFormatsSupplier.hpp>
-#include <com/sun/star/container/XChild.hpp>
-#include <com/sun/star/chart2/data/XDataSource.hpp>
-#include <com/sun/star/chart2/XChartTypeTemplate.hpp>
-#include <com/sun/star/container/XNameContainer.hpp>
-
-// public API
-#include <com/sun/star/chart2/data/XDataProvider.hpp>
-#include <com/sun/star/chart2/data/XDataReceiver.hpp>
-
-#include <com/sun/star/chart2/XChartDocument.hpp>
-#include <com/sun/star/chart2/XTitled.hpp>
-
-#include <com/sun/star/frame/XLoadable.hpp>
-#include <com/sun/star/embed/XEmbeddedObject.hpp>
-#include <com/sun/star/embed/XStorage.hpp>
-#include <com/sun/star/datatransfer/XTransferable.hpp>
-
-#if ! defined(INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_21)
-#define INCLUDED_COMPHELPER_IMPLBASE_VAR_HXX_21
-#define COMPHELPER_IMPLBASE_INTERFACE_NUMBER 21
-#include "comphelper/implbase_var.hxx"
-#endif
-#include <osl/mutex.hxx>
-#include <rtl/ref.hxx>
-#include <cppuhelper/interfacecontainer.hxx>
-#include <svtools/grfmgr.hxx>
-
-// for auto_ptr
-#include <memory>
-
-class SvNumberFormatter;
-
-//=============================================================================
-
-namespace chart
-{
-
-namespace impl
-{
-
-// Note: needed for queryInterface (if it calls the base-class implementation)
-typedef ::comphelper::WeakImplHelper21<
-// ::com::sun::star::frame::XModel //comprehends XComponent (required interface), base of XChartDocument
- ::com::sun::star::util::XCloseable //comprehends XCloseBroadcaster
- ,::com::sun::star::frame::XStorable2 //(extension of XStorable)
- ,::com::sun::star::util::XModifiable //comprehends XModifyBroadcaster (required interface)
- ,::com::sun::star::lang::XServiceInfo
- ,::com::sun::star::lang::XInitialization
- ,::com::sun::star::chart2::XChartDocument // derived from XModel
- ,::com::sun::star::chart2::data::XDataReceiver // public API
- ,::com::sun::star::chart2::XTitled
- ,::com::sun::star::frame::XLoadable
- ,::com::sun::star::util::XCloneable
- ,::com::sun::star::embed::XVisualObject
- ,::com::sun::star::lang::XMultiServiceFactory
- ,::com::sun::star::document::XStorageBasedDocument
- ,::com::sun::star::lang::XUnoTunnel
- ,::com::sun::star::util::XNumberFormatsSupplier
- ,::com::sun::star::container::XChild
- ,::com::sun::star::util::XModifyListener
- ,::com::sun::star::datatransfer::XTransferable
- ,::com::sun::star::document::XDocumentPropertiesSupplier
- ,::com::sun::star::chart2::data::XDataSource
- ,::com::sun::star::document::XUndoManagerSupplier
- >
- ChartModel_Base;
-}
-
-class UndoManager;
-
-class ChartModel : public impl::ChartModel_Base
-{
-
-private:
- mutable ::apphelper::CloseableLifeTimeManager m_aLifeTimeManager;
-
- mutable ::osl::Mutex m_aModelMutex;
- sal_Bool volatile m_bReadOnly;
- sal_Bool volatile m_bModified;
- sal_Int32 m_nInLoad;
- sal_Bool volatile m_bUpdateNotificationsPending;
-
- ::rtl::OUString m_aResource;
- ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > m_aMediaDescriptor;
- ::com::sun::star::uno::Reference< ::com::sun::star::document::XDocumentProperties > m_xDocumentProperties;
- ::rtl::Reference< UndoManager > m_pUndoManager;
-
- ::cppu::OInterfaceContainerHelper m_aControllers;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController > m_xCurrentController;
- sal_uInt16 m_nControllerLockCount;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext > m_xContext;
- ::com::sun::star::uno::Reference< ::com::sun::star::uno::XAggregation > m_xOldModelAgg;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > m_xStorage;
- //the content of this should be always synchronized with the current m_xViewWindow size. The variable is necessary to hold the information as long as no view window exists.
- ::com::sun::star::awt::Size m_aVisualAreaSize;
- ::com::sun::star::uno::Reference< ::com::sun::star::frame::XModel > m_xParent;
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XRangeHighlighter > m_xRangeHighlighter;
- ::std::vector< GraphicObject > m_aGraphicObjectVector;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider > m_xDataProvider;
- /** is only valid if m_xDataProvider is set. If m_xDataProvider is set to an
- external data provider this reference must be set to 0
- */
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider > m_xInternalDataProvider;
-
- ::com::sun::star::uno::Reference< com::sun::star::util::XNumberFormatsSupplier >
- m_xOwnNumberFormatsSupplier;
- ::com::sun::star::uno::Reference< com::sun::star::util::XNumberFormatsSupplier >
- m_xNumberFormatsSupplier;
- std::auto_ptr< SvNumberFormatter > m_apSvNumberFormatter; // #i113784# avoid memory leak
-
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartTypeManager >
- m_xChartTypeManager;
-
- // Diagram Access
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XDiagram >
- m_xDiagram;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XTitle >
- m_xTitle;
-
- bool m_bIsDisposed;
- ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >
- m_xPageBackground;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess> m_xXMLNamespaceMap;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyListener;
-
-private:
- //private methods
-
- ::rtl::OUString impl_g_getLocation();
-
- sal_Bool
- impl_isControllerConnected( const com::sun::star::uno::Reference<
- com::sun::star::frame::XController >& xController );
-
- com::sun::star::uno::Reference< com::sun::star::frame::XController >
- impl_getCurrentController()
- throw( com::sun::star::uno::RuntimeException);
-
- void SAL_CALL
- impl_notifyModifiedListeners()
- throw( com::sun::star::uno::RuntimeException);
- void SAL_CALL
- impl_notifyCloseListeners()
- throw( com::sun::star::uno::RuntimeException);
- void SAL_CALL
- impl_notifyStorageChangeListeners()
- throw(::com::sun::star::uno::RuntimeException);
-
- void impl_killInternalData() throw( com::sun::star::util::CloseVetoException );
-
- void impl_store(
- const ::com::sun::star::uno::Sequence<
- ::com::sun::star::beans::PropertyValue >& rMediaDescriptor,
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::embed::XStorage > & xStorage );
- void impl_load(
- const ::com::sun::star::uno::Sequence<
- ::com::sun::star::beans::PropertyValue >& rMediaDescriptor,
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::embed::XStorage >& xStorage );
- void impl_loadGraphics(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::embed::XStorage >& xStorage );
- ::com::sun::star::uno::Reference<
- ::com::sun::star::document::XFilter >
- impl_createFilter( const ::com::sun::star::uno::Sequence<
- ::com::sun::star::beans::PropertyValue > & rMediaDescriptor );
-
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartTypeTemplate > impl_createDefaultChartTypeTemplate();
- ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataSource > impl_createDefaultData();
-
- void impl_adjustAdditionalShapesPositionAndSize(
- const ::com::sun::star::awt::Size& aVisualAreaSize );
-
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier >
- impl_getNumberFormatsSupplier();
-
-public:
- //no default constructor
- ChartModel(::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext > const & xContext);
- explicit ChartModel( const ChartModel & rOther );
- virtual ~ChartModel();
-
- //-----------------------------------------------------------------
- // ::com::sun::star::lang::XServiceInfo
- //-----------------------------------------------------------------
-
- APPHELPER_XSERVICEINFO_DECL()
- APPHELPER_SERVICE_FACTORY_HELPER(ChartModel)
-
- //-----------------------------------------------------------------
- // ::com::sun::star::lang::XInitialization
- //-----------------------------------------------------------------
- virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
- throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::frame::XModel (required interface)
- //-----------------------------------------------------------------
-
- virtual sal_Bool SAL_CALL
- attachResource( const ::rtl::OUString& rURL
- , const ::com::sun::star::uno::Sequence<
- ::com::sun::star::beans::PropertyValue >& rMediaDescriptor )
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual ::rtl::OUString SAL_CALL
- getURL() throw (::com::sun::star::uno::RuntimeException);
-
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL
- getArgs() throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- connectController( const ::com::sun::star::uno::Reference<
- ::com::sun::star::frame::XController >& xController )
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- disconnectController( const ::com::sun::star::uno::Reference<
- ::com::sun::star::frame::XController >& xController )
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- lockControllers() throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- unlockControllers() throw (::com::sun::star::uno::RuntimeException);
-
- virtual sal_Bool SAL_CALL
- hasControllersLocked()
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::frame::XController > SAL_CALL
- getCurrentController()
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- setCurrentController( const ::com::sun::star::uno::Reference<
- ::com::sun::star::frame::XController >& xController )
- throw (::com::sun::star::container::NoSuchElementException
- , ::com::sun::star::uno::RuntimeException);
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL
- getCurrentSelection()
- throw (::com::sun::star::uno::RuntimeException);
-
-
- //-----------------------------------------------------------------
- // ::com::sun::star::lang::XComponent (base of XModel)
- //-----------------------------------------------------------------
- virtual void SAL_CALL
- dispose() throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- addEventListener( const ::com::sun::star::uno::Reference<
- ::com::sun::star::lang::XEventListener > & xListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- removeEventListener( const ::com::sun::star::uno::Reference<
- ::com::sun::star::lang::XEventListener > & xListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::util::XCloseable
- //-----------------------------------------------------------------
- virtual void SAL_CALL
- close( sal_Bool bDeliverOwnership )
- throw(::com::sun::star::util::CloseVetoException,
- ::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::util::XCloseBroadcaster (base of XCloseable)
- //-----------------------------------------------------------------
- virtual void SAL_CALL
- addCloseListener( const ::com::sun::star::uno::Reference<
- ::com::sun::star::util::XCloseListener > & xListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- removeCloseListener( const ::com::sun::star::uno::Reference<
- ::com::sun::star::util::XCloseListener > & xListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::frame::XStorable2 (extension of XStorable)
- //-----------------------------------------------------------------
- virtual void SAL_CALL storeSelf(
- const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rMediaDescriptor )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::io::IOException,
- ::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::frame::XStorable (required interface)
- //-----------------------------------------------------------------
- virtual sal_Bool SAL_CALL
- hasLocation() throw (::com::sun::star::uno::RuntimeException);
-
- virtual ::rtl::OUString SAL_CALL
- getLocation() throw (::com::sun::star::uno::RuntimeException);
-
- virtual sal_Bool SAL_CALL
- isReadonly() throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- store() throw (::com::sun::star::io::IOException
- , ::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- storeAsURL( const ::rtl::OUString& rURL
- , const ::com::sun::star::uno::Sequence<
- ::com::sun::star::beans::PropertyValue >& rMediaDescriptor )
- throw (::com::sun::star::io::IOException
- , ::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- storeToURL( const ::rtl::OUString& rURL
- , const ::com::sun::star::uno::Sequence<
- ::com::sun::star::beans::PropertyValue >& rMediaDescriptor )
- throw (::com::sun::star::io::IOException
- , ::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::util::XModifiable (required interface)
- //-----------------------------------------------------------------
- virtual sal_Bool SAL_CALL
- isModified() throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- setModified( sal_Bool bModified )
- throw (::com::sun::star::beans::PropertyVetoException
- , ::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::util::XModifyBroadcaster (base of XModifiable)
- //-----------------------------------------------------------------
- virtual void SAL_CALL
- addModifyListener( const ::com::sun::star::uno::Reference<
- ::com::sun::star::util::XModifyListener >& xListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL
- removeModifyListener( const ::com::sun::star::uno::Reference<
- ::com::sun::star::util::XModifyListener >& xListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ datatransferable::XTransferable ____
- virtual ::com::sun::star::uno::Any SAL_CALL getTransferData(
- const ::com::sun::star::datatransfer::DataFlavor& aFlavor )
- throw (::com::sun::star::datatransfer::UnsupportedFlavorException,
- ::com::sun::star::io::IOException,
- ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::datatransfer::DataFlavor > SAL_CALL getTransferDataFlavors()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::sal_Bool SAL_CALL isDataFlavorSupported(
- const ::com::sun::star::datatransfer::DataFlavor& aFlavor )
- throw (::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // lang::XTypeProvider (overloaded method of WeakImplHelper)
- //-----------------------------------------------------------------
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL
- getTypes() throw (::com::sun::star::uno::RuntimeException);
-
- // ____ document::XDocumentPropertiesSupplier ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::document::XDocumentProperties > SAL_CALL
- getDocumentProperties( ) throw (::com::sun::star::uno::RuntimeException);
-
- // ____ document::XUndoManagerSupplier ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::document::XUndoManager > SAL_CALL
- getUndoManager( ) throw (::com::sun::star::uno::RuntimeException);
-
- //-----------------------------------------------------------------
- // ::com::sun::star::chart2::XChartDocument
- //-----------------------------------------------------------------
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XDiagram > SAL_CALL
- getFirstDiagram() throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setFirstDiagram(
- const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XDiagram >& xDiagram )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL
- createInternalDataProvider( sal_Bool bCloneExistingData )
- throw (::com::sun::star::util::CloseVetoException,
- ::com::sun::star::uno::RuntimeException);
- virtual ::sal_Bool SAL_CALL hasInternalDataProvider()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataProvider > SAL_CALL
- getDataProvider()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL
- setChartTypeManager( const ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XChartTypeManager >& xNewManager )
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XChartTypeManager > SAL_CALL
- getChartTypeManager()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > SAL_CALL
- getPageBackground()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XDataReceiver (public API) ____
- virtual void SAL_CALL
- attachDataProvider( const ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::data::XDataProvider >& xProvider )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setArguments(
- const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aArguments )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getUsedRangeRepresentations()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XDataSource > SAL_CALL getUsedData()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL attachNumberFormatsSupplier( const ::com::sun::star::uno::Reference<
- ::com::sun::star::util::XNumberFormatsSupplier >& xSupplier )
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XRangeHighlighter > SAL_CALL getRangeHighlighter()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XTitled ____
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XTitle > SAL_CALL getTitleObject()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setTitleObject( const ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XTitle >& Title )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XInterface (for old API wrapper) ____
- virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XLoadable ____
- virtual void SAL_CALL initNew()
- throw (::com::sun::star::frame::DoubleInitializationException,
- ::com::sun::star::io::IOException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL load( const ::com::sun::star::uno::Sequence<
- ::com::sun::star::beans::PropertyValue >& rMediaDescriptor )
- throw (::com::sun::star::frame::DoubleInitializationException,
- ::com::sun::star::io::IOException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XVisualObject ____
- virtual void SAL_CALL setVisualAreaSize(
- ::sal_Int64 nAspect,
- const ::com::sun::star::awt::Size& aSize )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::embed::WrongStateException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Size SAL_CALL getVisualAreaSize(
- ::sal_Int64 nAspect )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::embed::WrongStateException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::embed::VisualRepresentation SAL_CALL getPreferredVisualRepresentation(
- ::sal_Int64 nAspect )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::embed::WrongStateException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual ::sal_Int32 SAL_CALL getMapUnit(
- ::sal_Int64 nAspect )
- throw (::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
-
- // ____ XMultiServiceFactory ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL
- createInstance( const ::rtl::OUString& aServiceSpecifier )
- throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL
- createInstanceWithArguments( const ::rtl::OUString& ServiceSpecifier
- , const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& Arguments )
- throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getAvailableServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XStorageBasedDocument ____
- virtual void SAL_CALL loadFromStorage(
- const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
- const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rMediaDescriptor )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::frame::DoubleInitializationException,
- ::com::sun::star::io::IOException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL storeToStorage(
- const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage,
- const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& rMediaDescriptor )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::io::IOException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL switchToStorage(
- const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& xStorage )
- throw (::com::sun::star::lang::IllegalArgumentException,
- ::com::sun::star::io::IOException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage > SAL_CALL getDocumentStorage()
- throw (::com::sun::star::io::IOException,
- ::com::sun::star::uno::Exception,
- ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL addStorageChangeListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageChangeListener >& xListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeStorageChangeListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::document::XStorageChangeListener >& xListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // for SvNumberFormatsSupplierObj
- // ____ XUnoTunnel ___
- virtual ::sal_Int64 SAL_CALL getSomething( const ::com::sun::star::uno::Sequence< ::sal_Int8 >& aIdentifier )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XNumberFormatsSupplier ____
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::beans::XPropertySet > SAL_CALL getNumberFormatSettings()
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::util::XNumberFormats > SAL_CALL getNumberFormats()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XChild ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setParent(
- const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& Parent )
- throw (::com::sun::star::lang::NoSupportException,
- ::com::sun::star::uno::RuntimeException);
-
- // ____ XDataSource ____ allows access to the curently used data and data ranges
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::chart2::data::XLabeledDataSequence > > SAL_CALL getDataSequences()
- throw (::com::sun::star::uno::RuntimeException);
-};
-
-} // namespace chart
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/ChartModel_Persistence.cxx b/chart2/source/model/main/ChartModel_Persistence.cxx
deleted file mode 100644
index 861c25a64..000000000
--- a/chart2/source/model/main/ChartModel_Persistence.cxx
+++ /dev/null
@@ -1,861 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-
-#include "ChartModel.hxx"
-#include "MediaDescriptorHelper.hxx"
-#include "ChartDebugTrace.hxx"
-#include "macros.hxx"
-#include "ChartViewHelper.hxx"
-#include "ChartModelHelper.hxx"
-#include "AxisHelper.hxx"
-#include "ThreeDHelper.hxx"
-
-#include <com/sun/star/chart2/LegendPosition.hpp>
-#include <com/sun/star/container/XNameAccess.hpp>
-#include <com/sun/star/document/XExporter.hpp>
-#include <com/sun/star/document/XImporter.hpp>
-#include <com/sun/star/document/XFilter.hpp>
-#include <com/sun/star/drawing/FillStyle.hpp>
-#include <com/sun/star/drawing/LineStyle.hpp>
-#include <com/sun/star/drawing/ProjectionMode.hpp>
-#include <com/sun/star/embed/ElementModes.hpp>
-#include <com/sun/star/embed/XStorage.hpp>
-#include <com/sun/star/lang/XSingleServiceFactory.hpp>
-#include <com/sun/star/sheet/XSpreadsheetDocument.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include <com/sun/star/io/XSeekable.hpp>
-
-#include <ucbhelper/content.hxx>
-#include <unotools/ucbstreamhelper.hxx>
-#include <vcl/cvtgrf.hxx>
-#include <comphelper/storagehelper.hxx>
-#include <vcl/svapp.hxx>
-
-#include <algorithm>
-#include <functional>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::rtl::OUString;
-using ::osl::MutexGuard;
-
-namespace
-{
-struct lcl_PropNameEquals : public ::std::unary_function< beans::PropertyValue, bool >
-{
- lcl_PropNameEquals( const OUString & rStrToCompareWith ) :
- m_aStr( rStrToCompareWith )
- {}
- bool operator() ( const beans::PropertyValue & rProp )
- {
- return rProp.Name.equals( m_aStr );
- }
-private:
- OUString m_aStr;
-};
-
-template< typename T >
-T lcl_getProperty(
- const Sequence< beans::PropertyValue > & rMediaDescriptor,
- const OUString & rPropName )
-{
- T aResult;
- if( rMediaDescriptor.getLength())
- {
- OUString aPropName( rPropName );
- const beans::PropertyValue * pIt = rMediaDescriptor.getConstArray();
- const beans::PropertyValue * pEndIt = pIt + + rMediaDescriptor.getLength();
- pIt = ::std::find_if( pIt, pEndIt, lcl_PropNameEquals( aPropName ));
- if( pIt != pEndIt )
- (*pIt).Value >>= aResult;
- }
- return aResult;
-}
-
-void lcl_addStorageToMediaDescriptor(
- Sequence< beans::PropertyValue > & rOutMD,
- const Reference< embed::XStorage > & xStorage )
-{
- rOutMD.realloc( rOutMD.getLength() + 1 );
- rOutMD[rOutMD.getLength() - 1] = beans::PropertyValue(
- C2U("Storage"), -1, uno::makeAny( xStorage ), beans::PropertyState_DIRECT_VALUE );
-}
-
-Reference< embed::XStorage > lcl_createStorage(
- const OUString & rURL,
- const Reference< uno::XComponentContext > & xContext,
- const Sequence< beans::PropertyValue > & rMediaDescriptor )
-{
- // create new storage
- Reference< embed::XStorage > xStorage;
- if( !xContext.is())
- return xStorage;
-
- try
- {
- Reference< io::XStream > xStream(
- ::ucbhelper::Content( rURL, Reference< ::com::sun::star::ucb::XCommandEnvironment >()).openStream(),
- uno::UNO_QUERY );
-
- Reference< lang::XSingleServiceFactory > xStorageFact(
- xContext->getServiceManager()->createInstanceWithContext(
- C2U("com.sun.star.embed.StorageFactory"),
- xContext ),
- uno::UNO_QUERY_THROW );
- Sequence< uno::Any > aStorageArgs( 3 );
- aStorageArgs[0] <<= xStream;
- aStorageArgs[1] <<= embed::ElementModes::READWRITE;
- aStorageArgs[2] <<= rMediaDescriptor;
- xStorage.set(
- xStorageFact->createInstanceWithArguments( aStorageArgs ), uno::UNO_QUERY_THROW );
- OSL_ENSURE( xStorage.is(), "No Storage" );
- }
- catch( ::com::sun::star::ucb::ContentCreationException & rEx )
- {
- ASSERT_EXCEPTION( rEx );
- }
-
- return xStorage;
-}
-
-} // anonymous namespace
-
-namespace chart
-{
-
-Reference< document::XFilter > ChartModel::impl_createFilter(
- const Sequence< beans::PropertyValue > & rMediaDescriptor )
-{
- Reference< document::XFilter > xFilter;
-
- // find FilterName in MediaDescriptor
- OUString aFilterName(
- lcl_getProperty< OUString >( rMediaDescriptor, OUString( RTL_CONSTASCII_USTRINGPARAM( "FilterName" ))));
-
- // if FilterName was found, get Filter from factory
- if( aFilterName.getLength() > 0 )
- {
- try
- {
- Reference< container::XNameAccess > xFilterFact(
- m_xContext->getServiceManager()->createInstanceWithContext(
- C2U( "com.sun.star.document.FilterFactory" ), m_xContext ),
- uno::UNO_QUERY_THROW );
- uno::Any aFilterProps( xFilterFact->getByName( aFilterName ));
- Sequence< beans::PropertyValue > aProps;
-
- if( aFilterProps.hasValue() &&
- (aFilterProps >>= aProps))
- {
- OUString aFilterServiceName(
- lcl_getProperty< OUString >( aProps, OUString( RTL_CONSTASCII_USTRINGPARAM( "FilterService" ))));
-
- if( aFilterServiceName.getLength())
- {
- xFilter.set(
- m_xContext->getServiceManager()->createInstanceWithContext(
- aFilterServiceName, m_xContext ), uno::UNO_QUERY_THROW );
- OSL_TRACE( "Filter found for service %s", U2C( aFilterServiceName ));
- }
- }
- }
- catch( uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
- OSL_ENSURE( xFilter.is(), "Filter not found via factory" );
- }
-
- // fall-back: create XML-Filter
- if( ! xFilter.is())
- {
- OSL_TRACE( "No FilterName passed in MediaDescriptor" );
- xFilter.set(
- m_xContext->getServiceManager()->createInstanceWithContext(
- C2U("com.sun.star.comp.chart2.XMLFilter"), m_xContext ),
- uno::UNO_QUERY_THROW );
- }
-
- return xFilter;
-}
-
-//-----------------------------------------------------------------
-// frame::XStorable2
-//-----------------------------------------------------------------
-
-void SAL_CALL ChartModel::storeSelf( const Sequence< beans::PropertyValue >& rMediaDescriptor )
- throw (lang::IllegalArgumentException,
- io::IOException,
- uno::RuntimeException)
-{
- // only some parameters are allowed (see also SfxBaseModel)
- // "VersionComment", "Author", "InteractionHandler", "StatusIndicator"
- // However, they are ignored here. They would become interesting when
- // charts support a standalone format again.
- impl_store( rMediaDescriptor, m_xStorage );
-}
-
-//-----------------------------------------------------------------
-// frame::XStorable (base of XStorable2)
-//-----------------------------------------------------------------
-sal_Bool SAL_CALL ChartModel::hasLocation()
- throw(uno::RuntimeException)
-{
- //@todo guard
- return m_aResource.getLength()!=0;
-}
-
-::rtl::OUString SAL_CALL ChartModel::getLocation()
- throw(uno::RuntimeException)
-{
- return impl_g_getLocation();
-}
-
-sal_Bool SAL_CALL ChartModel::isReadonly()
- throw(uno::RuntimeException)
-{
- //@todo guard
- return m_bReadOnly;
-}
-
-void SAL_CALL ChartModel::store()
- throw(io::IOException,
- uno::RuntimeException)
-{
- apphelper::LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall(sal_True)) //start LongLastingCall
- return; //behave passive if already disposed or closed or throw exception @todo?
-
- ::rtl::OUString aLocation = m_aResource;
-
- if( aLocation.getLength() == 0 )
- throw io::IOException( C2U( "no location specified" ), static_cast< ::cppu::OWeakObject* >(this));
- //@todo check wether aLocation is something like private:factory...
- if( m_bReadOnly )
- throw io::IOException( C2U( "document is read only" ), static_cast< ::cppu::OWeakObject* >(this));
-
- aGuard.clear();
-
- // store
- impl_store( m_aMediaDescriptor, m_xStorage );
-}
-
-void SAL_CALL ChartModel::storeAsURL(
- const ::rtl::OUString& rURL,
- const uno::Sequence< beans::PropertyValue >& rMediaDescriptor )
- throw(io::IOException, uno::RuntimeException)
-{
- apphelper::LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall(sal_True)) //start LongLastingCall
- return; //behave passive if already disposed or closed or throw exception @todo?
-
- apphelper::MediaDescriptorHelper aMediaDescriptorHelper(rMediaDescriptor);
- uno::Sequence< beans::PropertyValue > aReducedMediaDescriptor(
- aMediaDescriptorHelper.getReducedForModel() );
-
- m_bReadOnly = sal_False;
- aGuard.clear();
-
- // create new storage
- Reference< embed::XStorage > xStorage( lcl_createStorage( rURL, m_xContext, aReducedMediaDescriptor ));
-
- if( xStorage.is())
- {
- impl_store( aReducedMediaDescriptor, xStorage );
- attachResource( rURL, aReducedMediaDescriptor );
- }
-}
-
-void SAL_CALL ChartModel::storeToURL(
- const ::rtl::OUString& rURL,
- const uno::Sequence< beans::PropertyValue >& rMediaDescriptor )
- throw(io::IOException,
- uno::RuntimeException)
-{
- apphelper::LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall(sal_True)) //start LongLastingCall
- return; //behave passive if already disposed or closed or throw exception @todo?
- //do not change the internal state of the document here
- //...
-
- aGuard.clear();
-
- apphelper::MediaDescriptorHelper aMediaDescriptorHelper(rMediaDescriptor);
- uno::Sequence< beans::PropertyValue > aReducedMediaDescriptor(
- aMediaDescriptorHelper.getReducedForModel() );
-
- if( rURL.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM("private:stream")))
- {
- try
- {
- if( m_xContext.is() && aMediaDescriptorHelper.ISSET_OutputStream )
- {
- Reference< lang::XMultiServiceFactory > xFact( m_xContext->getServiceManager(), uno::UNO_QUERY_THROW );
- Reference< io::XStream > xStream(
- xFact->createInstance( OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.io.TempFile"))), uno::UNO_QUERY_THROW );
- Reference< io::XInputStream > xInputStream( xStream->getInputStream());
-
- Reference< embed::XStorage > xStorage(
- ::comphelper::OStorageHelper::GetStorageFromStream( xStream, embed::ElementModes::READWRITE, xFact ));
- if( xStorage.is())
- {
- impl_store( aReducedMediaDescriptor, xStorage );
-
- Reference< io::XSeekable > xSeekable( xStream, uno::UNO_QUERY_THROW );
- xSeekable->seek( 0 );
- ::comphelper::OStorageHelper::CopyInputToOutput( xInputStream, aMediaDescriptorHelper.OutputStream );
- }
- }
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
- }
- else
- {
- // create new storage
- Reference< embed::XStorage > xStorage( lcl_createStorage( rURL, m_xContext, aReducedMediaDescriptor ));
-
- if( xStorage.is())
- impl_store( aReducedMediaDescriptor, xStorage );
- }
-}
-
-void ChartModel::impl_store(
- const Sequence< beans::PropertyValue >& rMediaDescriptor,
- const Reference< embed::XStorage > & xStorage )
-{
- Reference< document::XFilter > xFilter( impl_createFilter( rMediaDescriptor));
- if( xFilter.is() && xStorage.is())
- {
- Sequence< beans::PropertyValue > aMD( rMediaDescriptor );
- lcl_addStorageToMediaDescriptor( aMD, xStorage );
- try
- {
- Reference< document::XExporter > xExporter( xFilter, uno::UNO_QUERY_THROW );
- xExporter->setSourceDocument( Reference< lang::XComponent >( this ));
- xFilter->filter( aMD );
- }
- catch( uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
- }
- else
- {
- OSL_FAIL( "No filter" );
- }
-
- setModified( sal_False );
-
- //#i66865#
- //for data change notification during chart is not loaded:
- //notify parent data provider after saving thus the parent document can store
- //the ranges for which a load and update of the chart will be necessary
- Reference< beans::XPropertySet > xPropSet( m_xParent, uno::UNO_QUERY );
- if ( !hasInternalDataProvider() && xPropSet.is() )
- {
- apphelper::MediaDescriptorHelper aMDHelper(rMediaDescriptor);
- try
- {
- xPropSet->setPropertyValue( OUString( RTL_CONSTASCII_USTRINGPARAM( "SavedObject" )),
- uno::makeAny( aMDHelper.HierarchicalDocumentName ) );
- }
- catch ( uno::Exception& )
- {
- }
- }
-}
-
-//-----------------------------------------------------------------
-// frame::XLoadable
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::initNew()
- throw (frame::DoubleInitializationException,
- io::IOException,
- uno::Exception,
- uno::RuntimeException)
-{
- lockControllers();
- createInternalDataProvider( sal_False );
- try
- {
- // create default chart
- Reference< chart2::XChartTypeTemplate > xTemplate( impl_createDefaultChartTypeTemplate() );
- if( xTemplate.is())
- {
- try
- {
- Reference< chart2::data::XDataSource > xDataSource( impl_createDefaultData() );
- Sequence< beans::PropertyValue > aParam;
-
- bool bSupportsCategories = xTemplate->supportsCategories();
- if( bSupportsCategories )
- {
- aParam.realloc( 1 );
- aParam[0] = beans::PropertyValue( C2U("HasCategories"), -1, uno::makeAny( true ),
- beans::PropertyState_DIRECT_VALUE );
- }
-
- Reference< chart2::XDiagram > xDiagram( xTemplate->createDiagramByDataSource( xDataSource, aParam ) );
-
- setFirstDiagram( xDiagram );
-
- bool bIsRTL = Application::GetSettings().GetLayoutRTL();
- //reverse x axis for rtl charts
- if( bIsRTL )
- AxisHelper::setRTLAxisLayout( AxisHelper::getCoordinateSystemByIndex( xDiagram, 0 ) );
-
- // create and attach legend
- Reference< chart2::XLegend > xLegend(
- m_xContext->getServiceManager()->createInstanceWithContext(
- C2U( "com.sun.star.chart2.Legend" ), m_xContext ), uno::UNO_QUERY_THROW );
- Reference< beans::XPropertySet > xLegendProperties( xLegend, uno::UNO_QUERY );
- if( xLegendProperties.is() )
- {
- xLegendProperties->setPropertyValue( C2U( "FillStyle" ), uno::makeAny( drawing::FillStyle_NONE ));
- xLegendProperties->setPropertyValue( C2U( "LineStyle" ), uno::makeAny( drawing::LineStyle_NONE ));
- xLegendProperties->setPropertyValue( C2U( "LineColor" ), uno::makeAny( static_cast< sal_Int32 >( 0xb3b3b3 ) )); // gray30
- xLegendProperties->setPropertyValue( C2U( "FillColor" ), uno::makeAny( static_cast< sal_Int32 >( 0xe6e6e6 ) ) ); // gray10
-
- if( bIsRTL )
- xLegendProperties->setPropertyValue( C2U( "AnchorPosition" ), uno::makeAny( chart2::LegendPosition_LINE_START ));
- }
- if(xDiagram.is())
- xDiagram->setLegend( xLegend );
-
- // set simple 3D look
- Reference< beans::XPropertySet > xDiagramProperties( xDiagram, uno::UNO_QUERY );
- if( xDiagramProperties.is() )
- {
- xDiagramProperties->setPropertyValue( C2U("RightAngledAxes"), uno::makeAny( sal_True ));
- xDiagramProperties->setPropertyValue( C2U("D3DScenePerspective"), uno::makeAny( drawing::ProjectionMode_PARALLEL ));
- ThreeDHelper::setScheme( xDiagram, ThreeDLookScheme_Realistic );
- }
-
- //set some new 'defaults' for wall and floor
- if( xDiagram.is() )
- {
- Reference< beans::XPropertySet > xWall( xDiagram->getWall() );
- if( xWall.is() )
- {
- xWall->setPropertyValue( C2U( "LineStyle" ), uno::makeAny( drawing::LineStyle_SOLID ) );
- xWall->setPropertyValue( C2U( "FillStyle" ), uno::makeAny( drawing::FillStyle_NONE ) );
- xWall->setPropertyValue( C2U( "LineColor" ), uno::makeAny( static_cast< sal_Int32 >( 0xb3b3b3 ) ) ); // gray30
- xWall->setPropertyValue( C2U( "FillColor" ), uno::makeAny( static_cast< sal_Int32 >( 0xe6e6e6 ) ) ); // gray10
- }
- Reference< beans::XPropertySet > xFloor( xDiagram->getFloor() );
- if( xFloor.is() )
- {
- xFloor->setPropertyValue( C2U( "LineStyle" ), uno::makeAny( drawing::LineStyle_NONE ) );
- xFloor->setPropertyValue( C2U( "FillStyle" ), uno::makeAny( drawing::FillStyle_SOLID ) );
- xFloor->setPropertyValue( C2U( "LineColor" ), uno::makeAny( static_cast< sal_Int32 >( 0xb3b3b3 ) ) ); // gray30
- xFloor->setPropertyValue( C2U( "FillColor" ), uno::makeAny( static_cast< sal_Int32 >( 0xcccccc ) ) ); // gray20
- }
-
- }
- }
- catch( uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
- }
- ChartModelHelper::setIncludeHiddenCells( false, this );
- }
- catch( uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
- setModified( sal_False );
- unlockControllers();
-
-#if OSL_DEBUG_LEVEL >= CHART_TRACE_OSL_DEBUG_LEVEL
- OSL_TRACE( "ChartModel::initNew: Showing ChartDocument structure" );
- OSL_TRACE( "----------------------------------------------------" );
- debug::ChartDebugTraceDocument( Reference< chart2::XChartDocument >( this ));
-#endif
-}
-
-void SAL_CALL ChartModel::load(
- const Sequence< beans::PropertyValue >& rMediaDescriptor )
- throw (frame::DoubleInitializationException,
- io::IOException,
- uno::Exception,
- uno::RuntimeException)
-{
- Reference< embed::XStorage > xStorage;
- OUString aURL;
- try
- {
- apphelper::MediaDescriptorHelper aMDHelper( rMediaDescriptor );
- if( aMDHelper.ISSET_Storage )
- {
- xStorage = aMDHelper.Storage;
- }
- else if( aMDHelper.ISSET_Stream ||
- aMDHelper.ISSET_InputStream )
- {
- if( aMDHelper.ISSET_FilterName &&
- (aMDHelper.FilterName.equals( C2U("StarChart 5.0")) ||
- aMDHelper.FilterName.equals( C2U("StarChart 4.0")) ||
- aMDHelper.FilterName.equals( C2U("StarChart 3.0")) ))
- {
- attachResource( aMDHelper.URL, rMediaDescriptor );
- impl_load( rMediaDescriptor, 0 ); // cannot create a storage from binary streams, but I do not need the storage here anyhow
- m_bReadOnly = sal_True;
- return;
- }
-
- Reference< lang::XSingleServiceFactory > xStorageFact(
- m_xContext->getServiceManager()->createInstanceWithContext(
- C2U("com.sun.star.embed.StorageFactory"),
- m_xContext ),
- uno::UNO_QUERY_THROW );
-
- if( aMDHelper.ISSET_Stream )
- {
- // convert XStream to XStorage via the storage factory
- Sequence< uno::Any > aStorageArgs( 2 );
- aStorageArgs[0] <<= aMDHelper.Stream;
- // todo: check if stream is read-only
- aStorageArgs[1] <<= (embed::ElementModes::READ); //WRITE | embed::ElementModes::NOCREATE);
-
- xStorage.set( xStorageFact->createInstanceWithArguments( aStorageArgs ),
- uno::UNO_QUERY_THROW );
- }
- else
- {
- OSL_ASSERT( aMDHelper.ISSET_InputStream );
- // convert XInputStream to XStorage via the storage factory
- Sequence< uno::Any > aStorageArgs( 2 );
- aStorageArgs[0] <<= aMDHelper.InputStream;
- aStorageArgs[1] <<= (embed::ElementModes::READ);
-
- xStorage.set( xStorageFact->createInstanceWithArguments( aStorageArgs ),
- uno::UNO_QUERY_THROW );
- }
- }
-
- if( aMDHelper.ISSET_URL )
- aURL = aMDHelper.URL;
- }
- catch( uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-
- if( xStorage.is())
- {
- attachResource( aURL, rMediaDescriptor );
- impl_load( rMediaDescriptor, xStorage );
- }
-}
-
-void ChartModel::impl_load(
- const Sequence< beans::PropertyValue >& rMediaDescriptor,
- const Reference< embed::XStorage >& xStorage )
-{
- {
- MutexGuard aGuard( m_aModelMutex );
- m_nInLoad++;
- }
-
- Reference< document::XFilter > xFilter( impl_createFilter( rMediaDescriptor ));
-
- if( xFilter.is())
- {
- Reference< document::XImporter > xImporter( xFilter, uno::UNO_QUERY_THROW );
- xImporter->setTargetDocument( this );
- Sequence< beans::PropertyValue > aMD( rMediaDescriptor );
- lcl_addStorageToMediaDescriptor( aMD, xStorage );
-
- xFilter->filter( aMD );
- xFilter.clear();
- }
- else
- {
- OSL_FAIL( "loadFromStorage cannot create filter" );
- }
-
- if( xStorage.is() )
- impl_loadGraphics( xStorage );
-
- setModified( sal_False );
-
- // switchToStorage without notifying listeners (which shouldn't exist at
- // this time, anyway)
- m_xStorage = xStorage;
-
- {
- MutexGuard aGuard( m_aModelMutex );
- m_nInLoad--;
- }
-}
-
-void ChartModel::impl_loadGraphics(
- const Reference< embed::XStorage >& xStorage )
-{
- try
- {
- const Reference< embed::XStorage >& xGraphicsStorage(
- xStorage->openStorageElement( C2U( "Pictures" ),
- embed::ElementModes::READ ) );
-
- if( xGraphicsStorage.is() )
- {
- const uno::Sequence< ::rtl::OUString > aElementNames(
- xGraphicsStorage->getElementNames() );
-
- for( int i = 0; i < aElementNames.getLength(); ++i )
- {
- if( xGraphicsStorage->isStreamElement( aElementNames[ i ] ) )
- {
- uno::Reference< io::XStream > xElementStream(
- xGraphicsStorage->openStreamElement(
- aElementNames[ i ],
- embed::ElementModes::READ ) );
-
- if( xElementStream.is() )
- {
- std::auto_ptr< SvStream > apIStm(
- ::utl::UcbStreamHelper::CreateStream(
- xElementStream, true ) );
-
- if( apIStm.get() )
- {
- Graphic aGraphic;
-
- if( !GraphicConverter::Import(
- *apIStm.get(),
- aGraphic ) )
- {
- m_aGraphicObjectVector.push_back( aGraphic );
- }
- }
- }
- }
- }
- }
- }
- catch ( uno::Exception& )
- {
- }
-}
-
-//-----------------------------------------------------------------
-// util::XModifiable
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::impl_notifyModifiedListeners()
- throw( uno::RuntimeException)
-{
- {
- MutexGuard aGuard( m_aModelMutex );
- m_bUpdateNotificationsPending = false;
- }
-
- //always notify the view first!
- ChartViewHelper::setViewToDirtyState( this );
-
- ::cppu::OInterfaceContainerHelper* pIC = m_aLifeTimeManager.m_aListenerContainer
- .getContainer( ::getCppuType((const uno::Reference< util::XModifyListener >*)0) );
- if( pIC )
- {
- lang::EventObject aEvent( static_cast< lang::XComponent*>(this) );
- ::cppu::OInterfaceIteratorHelper aIt( *pIC );
- while( aIt.hasMoreElements() )
- {
- uno::Reference< util::XModifyListener > xListener( aIt.next(), uno::UNO_QUERY );
- if( xListener.is() )
- xListener->modified( aEvent );
- }
- }
-}
-
-sal_Bool SAL_CALL ChartModel::isModified()
- throw(uno::RuntimeException)
-{
- //@todo guard
- return m_bModified;
-}
-
-void SAL_CALL ChartModel::setModified( sal_Bool bModified )
- throw(beans::PropertyVetoException,
- uno::RuntimeException)
-{
- apphelper::LifeTimeGuard aGuard(m_aLifeTimeManager);
- if(!aGuard.startApiCall())//@todo ? is this a long lasting call??
- return; //behave passive if already disposed or closed or throw exception @todo?
- m_bModified = bModified;
-
- if( m_nControllerLockCount > 0 )
- {
- m_bUpdateNotificationsPending = true;
- return;//don't call listeners if controllers are locked
- }
- aGuard.clear();
-
- if(bModified)
- impl_notifyModifiedListeners();
-}
-
-//-----------------------------------------------------------------
-// util::XModifyBroadcaster (base of XModifiable)
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::addModifyListener(
- const uno::Reference< util::XModifyListener >& xListener )
- throw(uno::RuntimeException)
-{
- if( m_aLifeTimeManager.impl_isDisposedOrClosed() )
- return; //behave passive if already disposed or closed
-
- m_aLifeTimeManager.m_aListenerContainer.addInterface(
- ::getCppuType((const uno::Reference< util::XModifyListener >*)0), xListener );
-}
-
-void SAL_CALL ChartModel::removeModifyListener(
- const uno::Reference< util::XModifyListener >& xListener )
- throw(uno::RuntimeException)
-{
- if( m_aLifeTimeManager.impl_isDisposedOrClosed(false) )
- return; //behave passive if already disposed or closed
-
- m_aLifeTimeManager.m_aListenerContainer.removeInterface(
- ::getCppuType((const uno::Reference< util::XModifyListener >*)0), xListener );
-}
-
-//-----------------------------------------------------------------
-// util::XModifyListener
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::modified( const lang::EventObject& )
- throw (uno::RuntimeException)
-{
- if( m_nInLoad == 0 )
- setModified( sal_True );
-}
-
-//-----------------------------------------------------------------
-// lang::XEventListener (base of util::XModifyListener)
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::disposing( const lang::EventObject& )
- throw (uno::RuntimeException)
-{
- // child was disposed -- should not happen from outside
-}
-
-
-//-----------------------------------------------------------------
-// document::XStorageBasedDocument
-//-----------------------------------------------------------------
-void SAL_CALL ChartModel::loadFromStorage(
- const Reference< embed::XStorage >& xStorage,
- const Sequence< beans::PropertyValue >& rMediaDescriptor )
- throw (lang::IllegalArgumentException,
- frame::DoubleInitializationException,
- io::IOException,
- uno::Exception,
- uno::RuntimeException)
-{
- attachResource( OUString(), rMediaDescriptor );
- impl_load( rMediaDescriptor, xStorage );
-}
-
-void SAL_CALL ChartModel::storeToStorage(
- const Reference< embed::XStorage >& xStorage,
- const Sequence< beans::PropertyValue >& rMediaDescriptor )
- throw (lang::IllegalArgumentException,
- io::IOException,
- uno::Exception,
- uno::RuntimeException)
-{
- impl_store( rMediaDescriptor, xStorage );
-}
-
-void SAL_CALL ChartModel::switchToStorage( const Reference< embed::XStorage >& xStorage )
- throw (lang::IllegalArgumentException,
- io::IOException,
- uno::Exception,
- uno::RuntimeException)
-{
- m_xStorage = xStorage;
- impl_notifyStorageChangeListeners();
-}
-
-Reference< embed::XStorage > SAL_CALL ChartModel::getDocumentStorage()
- throw (io::IOException,
- uno::Exception,
- uno::RuntimeException)
-{
- return m_xStorage;
-}
-
-void SAL_CALL ChartModel::impl_notifyStorageChangeListeners()
- throw( uno::RuntimeException)
-{
- ::cppu::OInterfaceContainerHelper* pIC = m_aLifeTimeManager.m_aListenerContainer
- .getContainer( ::getCppuType((const uno::Reference< document::XStorageChangeListener >*)0) );
- if( pIC )
- {
- ::cppu::OInterfaceIteratorHelper aIt( *pIC );
- while( aIt.hasMoreElements() )
- {
- uno::Reference< document::XStorageChangeListener > xListener( aIt.next(), uno::UNO_QUERY );
- if( xListener.is() )
- xListener->notifyStorageChange( static_cast< ::cppu::OWeakObject* >( this ), m_xStorage );
- }
- }
-}
-
-void SAL_CALL ChartModel::addStorageChangeListener( const Reference< document::XStorageChangeListener >& xListener )
- throw (uno::RuntimeException)
-{
- if( m_aLifeTimeManager.impl_isDisposedOrClosed() )
- return; //behave passive if already disposed or closed
-
- m_aLifeTimeManager.m_aListenerContainer.addInterface(
- ::getCppuType((const uno::Reference< document::XStorageChangeListener >*)0), xListener );
-}
-
-void SAL_CALL ChartModel::removeStorageChangeListener( const Reference< document::XStorageChangeListener >& xListener )
- throw (uno::RuntimeException)
-{
- if( m_aLifeTimeManager.impl_isDisposedOrClosed(false) )
- return; //behave passive if already disposed or closed
-
- m_aLifeTimeManager.m_aListenerContainer.removeInterface(
- ::getCppuType((const uno::Reference< document::XStorageChangeListener >*)0), xListener );
-}
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/DataPoint.cxx b/chart2/source/model/main/DataPoint.cxx
deleted file mode 100644
index 29950b3f2..000000000
--- a/chart2/source/model/main/DataPoint.cxx
+++ /dev/null
@@ -1,319 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "DataPoint.hxx"
-#include "DataPointProperties.hxx"
-#include "CharacterProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "PropertyHelper.hxx"
-#include "macros.hxx"
-#include "ContainerHelper.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/style/XStyle.hpp>
-#include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/uno/Sequence.hxx>
-
-#include <algorithm>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::beans::Property;
-using ::osl::MutexGuard;
-using ::rtl::OUString;
-
-// ____________________________________________________________
-
-namespace
-{
-
-struct StaticDataPointInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- ::chart::DataPointProperties::AddPropertiesToVector( aProperties );
- ::chart::CharacterProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-};
-
-struct StaticDataPointInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticDataPointInfoHelper_Initializer >
-{
-};
-
-struct StaticDataPointInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticDataPointInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticDataPointInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticDataPointInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-// ____________________________________________________________
-
-namespace chart
-{
-
-DataPoint::DataPoint( const uno::Reference< beans::XPropertySet > & rParentProperties ) :
- ::property::OPropertySet( m_aMutex ),
- m_xParentProperties( rParentProperties ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder()),
- m_bNoParentPropAllowed( false )
-{
- SetNewValuesExplicitlyEvenIfTheyEqualDefault();
-}
-
-DataPoint::DataPoint( const DataPoint & rOther ) :
- MutexContainer(),
- impl::DataPoint_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder()),
- m_bNoParentPropAllowed( true )
-{
- SetNewValuesExplicitlyEvenIfTheyEqualDefault();
-
- // m_xParentProperties has to be set from outside, like in the method
- // DataSeries::createClone
-
- // add as listener to XPropertySet properties
- Reference< beans::XPropertySet > xPropertySet;
- uno::Any aValue;
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_X );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::addListener( xPropertySet, m_xModifyEventForwarder );
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_Y );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::addListener( xPropertySet, m_xModifyEventForwarder );
-
- m_bNoParentPropAllowed = false;
-}
-
-DataPoint::~DataPoint()
-{
- try
- {
- // remove listener from XPropertySet properties
- Reference< beans::XPropertySet > xPropertySet;
- uno::Any aValue;
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_X );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::removeListener( xPropertySet, m_xModifyEventForwarder );
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_Y );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::removeListener( xPropertySet, m_xModifyEventForwarder );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL DataPoint::createClone()
- throw (uno::RuntimeException)
-{
- return uno::Reference< util::XCloneable >( new DataPoint( *this ));
-}
-
-// ____ XChild ____
-Reference< uno::XInterface > SAL_CALL DataPoint::getParent()
- throw (uno::RuntimeException)
-{
- return Reference< uno::XInterface >( m_xParentProperties.get(), uno::UNO_QUERY );
-}
-
-void SAL_CALL DataPoint::setParent(
- const Reference< uno::XInterface >& Parent )
- throw (lang::NoSupportException,
- uno::RuntimeException)
-{
- m_xParentProperties = Reference< beans::XPropertySet >( Parent, uno::UNO_QUERY );
-}
-
-// ____ OPropertySet ____
-uno::Any DataPoint::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- // the value set at the data series is the default
- uno::Reference< beans::XFastPropertySet > xFast( m_xParentProperties.get(), uno::UNO_QUERY );
- if( !xFast.is())
- {
- OSL_ENSURE( m_bNoParentPropAllowed, "data point needs a parent property set to provide values correctly" );
- return uno::Any();
- }
-
- return xFast->getFastPropertyValue( nHandle );
-}
-
-void SAL_CALL DataPoint::setFastPropertyValue_NoBroadcast(
- sal_Int32 nHandle, const uno::Any& rValue )
- throw (uno::Exception)
-{
- if( nHandle == DataPointProperties::PROP_DATAPOINT_ERROR_BAR_Y
- || nHandle == DataPointProperties::PROP_DATAPOINT_ERROR_BAR_X )
- {
- uno::Any aOldValue;
- Reference< util::XModifyBroadcaster > xBroadcaster;
- this->getFastPropertyValue( aOldValue, nHandle );
- if( aOldValue.hasValue() &&
- (aOldValue >>= xBroadcaster) &&
- xBroadcaster.is())
- {
- ModifyListenerHelper::removeListener( xBroadcaster, m_xModifyEventForwarder );
- }
-
- OSL_ASSERT( rValue.getValueType().getTypeClass() == uno::TypeClass_INTERFACE );
- if( rValue.hasValue() &&
- (rValue >>= xBroadcaster) &&
- xBroadcaster.is())
- {
- ModifyListenerHelper::addListener( xBroadcaster, m_xModifyEventForwarder );
- }
- }
-
- ::property::OPropertySet::setFastPropertyValue_NoBroadcast( nHandle, rValue );
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL DataPoint::getInfoHelper()
-{
- return *StaticDataPointInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-Reference< beans::XPropertySetInfo > SAL_CALL DataPoint::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticDataPointInfo::get();
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL DataPoint::addModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL DataPoint::removeModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL DataPoint::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL DataPoint::disposing( const lang::EventObject& )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void DataPoint::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void DataPoint::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-Sequence< OUString > DataPoint::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 3 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.DataPoint" );
- aServices[ 1 ] = C2U( "com.sun.star.chart2.DataPointProperties" );
- aServices[ 2 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// needed by MSC compiler
-using impl::DataPoint_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( DataPoint, DataPoint_Base, ::property::OPropertySet )
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( DataPoint, C2U( "com.sun.star.comp.chart.DataPoint" ));
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/DataPoint.hxx b/chart2/source/model/main/DataPoint.hxx
deleted file mode 100644
index e09dbeb1b..000000000
--- a/chart2/source/model/main/DataPoint.hxx
+++ /dev/null
@@ -1,143 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_DATAPOINT_HXX
-#define CHART_DATAPOINT_HXX
-
-#include <osl/mutex.hxx>
-#include <cppuhelper/implbase5.hxx>
-#include <cppuhelper/weakref.hxx>
-#include <comphelper/uno3.hxx>
-#include <com/sun/star/container/XChild.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-
-#include "OPropertySet.hxx"
-#include "MutexContainer.hxx"
-#include "ModifyListenerHelper.hxx"
-#include "ServiceMacros.hxx"
-
-//for auto_ptr
-#include <memory>
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper5<
- ::com::sun::star::container::XChild,
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener,
- ::com::sun::star::lang::XServiceInfo >
- DataPoint_Base;
-}
-
-class DataPoint :
- public MutexContainer,
- public impl::DataPoint_Base,
- public ::property::OPropertySet
-{
-public:
- DataPoint( const ::com::sun::star::uno::Reference<
- ::com::sun::star::beans::XPropertySet > & rParentProperties );
- virtual ~DataPoint();
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
-protected:
- explicit DataPoint( const DataPoint & rOther );
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
- virtual void SAL_CALL setFastPropertyValue_NoBroadcast
- ( sal_Int32 nHandle,
- const ::com::sun::star::uno::Any& rValue )
- throw (::com::sun::star::uno::Exception);
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- // Note: m_xParentProperties are not cloned!
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XChild ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setParent(
- const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& Parent )
- throw (::com::sun::star::lang::NoSupportException,
- ::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private:
- ::com::sun::star::uno::WeakReference<
- ::com::sun::star::beans::XPropertySet > m_xParentProperties;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
- bool m_bNoParentPropAllowed;
-};
-
-} // namespace chart
-
-// CHART_DATAPOINT_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/DataPointProperties.cxx b/chart2/source/model/main/DataPointProperties.cxx
deleted file mode 100644
index 0eaf5042d..000000000
--- a/chart2/source/model/main/DataPointProperties.cxx
+++ /dev/null
@@ -1,432 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "DataPointProperties.hxx"
-#include "macros.hxx"
-#include "LineProperties.hxx"
-#include "FillProperties.hxx"
-
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/drawing/FillStyle.hpp>
-#include <com/sun/star/drawing/LineStyle.hpp>
-#include <com/sun/star/drawing/LineDash.hpp>
-#include <com/sun/star/drawing/PolyPolygonBezierCoords.hpp>
-#include <com/sun/star/style/XStyle.hpp>
-#include <com/sun/star/drawing/BitmapMode.hpp>
-#include <com/sun/star/drawing/RectanglePoint.hpp>
-
-#include <com/sun/star/chart2/DataPointGeometry3D.hpp>
-#include <com/sun/star/chart2/DataPointLabel.hpp>
-#include <com/sun/star/chart2/Symbol.hpp>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::beans::Property;
-
-namespace chart
-{
-
-void DataPointProperties::AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- // DataPointProperties
- // ===================
-
- // Common
- // ------
- rOutProperties.push_back(
- Property( C2U( "Color" ),
- PROP_DATAPOINT_COLOR,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID // "maybe auto"
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "Transparency" ),
- PROP_DATAPOINT_TRANSPARENCY,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- // Fill Properties
- // ---------------
- rOutProperties.push_back(
- Property( C2U( "FillStyle" ),
- PROP_DATAPOINT_FILL_STYLE,
- ::getCppuType( reinterpret_cast< const drawing::FillStyle * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "TransparencyGradientName" ),
- PROP_DATAPOINT_TRANSPARENCY_GRADIENT_NAME,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "GradientName" ),
- PROP_DATAPOINT_GRADIENT_NAME,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
-
- rOutProperties.push_back(
- beans::Property( C2U( "GradientStepCount" ),
- PROP_DATAPOINT_GRADIENT_STEPCOUNT,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "HatchName" ),
- PROP_DATAPOINT_HATCH_NAME,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapName" ),
- PROP_DATAPOINT_FILL_BITMAP_NAME,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
- rOutProperties.push_back(
- Property( C2U( "FillBackground" ),
- PROP_DATAPOINT_FILL_BACKGROUND,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT
- | beans::PropertyAttribute::MAYBEVOID ));
-
- // border for filled objects
- rOutProperties.push_back(
- Property( C2U( "BorderColor" ),
- PROP_DATAPOINT_BORDER_COLOR,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID // "maybe auto"
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "BorderStyle" ),
- PROP_DATAPOINT_BORDER_STYLE,
- ::getCppuType( reinterpret_cast< const drawing::LineStyle * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "BorderWidth" ),
- PROP_DATAPOINT_BORDER_WIDTH,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "BorderDashName" ),
- PROP_DATAPOINT_BORDER_DASH_NAME,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
- rOutProperties.push_back(
- Property( C2U( "BorderTransparency" ),
- PROP_DATAPOINT_BORDER_TRANSPARENCY,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- // Line Properties
- // ---------------
- rOutProperties.push_back(
- Property( C2U( "LineStyle" ),
- LineProperties::PROP_LINE_STYLE,
- ::getCppuType( reinterpret_cast< const drawing::LineStyle * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "LineWidth" ),
- LineProperties::PROP_LINE_WIDTH,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "LineDash" ),
- LineProperties::PROP_LINE_DASH,
- ::getCppuType( reinterpret_cast< const drawing::LineDash * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
- rOutProperties.push_back(
- Property( C2U( "LineDashName" ),
- LineProperties::PROP_LINE_DASH_NAME,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- // FillProperties
- // bitmap properties
- rOutProperties.push_back(
- Property( C2U( "FillBitmapOffsetX" ),
- FillProperties::PROP_FILL_BITMAP_OFFSETX,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapOffsetY" ),
- FillProperties::PROP_FILL_BITMAP_OFFSETY,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapPositionOffsetX" ),
- FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETX,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapPositionOffsetY" ),
- FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETY,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapRectanglePoint" ),
- FillProperties::PROP_FILL_BITMAP_RECTANGLEPOINT,
- ::getCppuType( reinterpret_cast< const drawing::RectanglePoint * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapLogicalSize" ),
- FillProperties::PROP_FILL_BITMAP_LOGICALSIZE,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapSizeX" ),
- FillProperties::PROP_FILL_BITMAP_SIZEX,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapSizeY" ),
- FillProperties::PROP_FILL_BITMAP_SIZEY,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "FillBitmapMode" ),
- FillProperties::PROP_FILL_BITMAP_MODE,
- ::getCppuType( reinterpret_cast< const drawing::BitmapMode * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- // others
- rOutProperties.push_back(
- Property( C2U( "Symbol" ),
- PROP_DATAPOINT_SYMBOL_PROP,
- ::getCppuType( reinterpret_cast< const chart2::Symbol * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "Offset" ),
- PROP_DATAPOINT_OFFSET,
- ::getCppuType( reinterpret_cast< const double * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "Geometry3D" ),
- PROP_DATAPOINT_GEOMETRY3D,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "Label" ),
- PROP_DATAPOINT_LABEL,
- ::getCppuType( reinterpret_cast< const chart2::DataPointLabel * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "LabelSeparator" ),
- PROP_DATAPOINT_LABEL_SEPARATOR,
- ::getCppuType( reinterpret_cast< const ::rtl::OUString * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "NumberFormat" ),
- PROP_DATAPOINT_NUMBER_FORMAT,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- //additional 'PercentageNumberFormat'
- rOutProperties.push_back(
- Property( C2U( "PercentageNumberFormat" ),
- PROP_DATAPOINT_PERCENTAGE_NUMBER_FORMAT,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "LabelPlacement" ),
- PROP_DATAPOINT_LABEL_PLACEMENT,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "ReferencePageSize" ),
- PROP_DATAPOINT_REFERENCE_DIAGRAM_SIZE,
- ::getCppuType( reinterpret_cast< const awt::Size * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "TextRotation" ),
- PROP_DATAPOINT_TEXT_ROTATION,
- ::getCppuType( reinterpret_cast< const double * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- // statistics
- rOutProperties.push_back(
- Property( C2U( "ErrorBarX" ),
- PROP_DATAPOINT_ERROR_BAR_X,
- // XPropertySet supporting service ErrorBar
- ::getCppuType( reinterpret_cast< const uno::Reference< beans::XPropertySet > * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
- rOutProperties.push_back(
- Property( C2U( "ErrorBarY" ),
- PROP_DATAPOINT_ERROR_BAR_Y,
- // XPropertySet supporting service ErrorBar
- ::getCppuType( reinterpret_cast< const uno::Reference< beans::XPropertySet > * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
- rOutProperties.push_back(
- Property( C2U( "ShowErrorBox" ),
- PROP_DATAPOINT_SHOW_ERROR_BOX,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
- rOutProperties.push_back(
- Property( C2U( "PercentDiagonal" ),
- PROP_DATAPOINT_PERCENT_DIAGONAL,
- ::getCppuType( reinterpret_cast< const sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-}
-
-void DataPointProperties::AddDefaultsToMap(
- ::chart::tPropertyValueMap & rOutMap )
-{
- PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_DATAPOINT_COLOR, 0x0099ccff ); // blue 8
- PropertyHelper::setPropertyValueDefault< sal_Int16 >( rOutMap, PROP_DATAPOINT_TRANSPARENCY, 0 );
-
- //fill
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATAPOINT_FILL_STYLE, drawing::FillStyle_SOLID );
- PropertyHelper::setEmptyPropertyValueDefault( rOutMap, PROP_DATAPOINT_TRANSPARENCY_GRADIENT_NAME );
- PropertyHelper::setEmptyPropertyValueDefault( rOutMap, PROP_DATAPOINT_GRADIENT_NAME );
- PropertyHelper::setEmptyPropertyValueDefault( rOutMap, PROP_DATAPOINT_HATCH_NAME );
- PropertyHelper::setEmptyPropertyValueDefault( rOutMap, PROP_DATAPOINT_FILL_BITMAP_NAME );
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATAPOINT_FILL_BACKGROUND, false );
-
- //border
- PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_DATAPOINT_BORDER_COLOR, 0x000000 ); // black
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATAPOINT_BORDER_STYLE, drawing::LineStyle_SOLID ); // drawing::LineStyle_NONE
- PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_DATAPOINT_BORDER_WIDTH, 0 );
- PropertyHelper::setEmptyPropertyValueDefault( rOutMap, PROP_DATAPOINT_BORDER_DASH_NAME );
- PropertyHelper::setPropertyValueDefault< sal_Int16 >( rOutMap, PROP_DATAPOINT_BORDER_TRANSPARENCY, 0 );
-
- //line
- PropertyHelper::setPropertyValueDefault( rOutMap, LineProperties::PROP_LINE_STYLE, drawing::LineStyle_SOLID );
- PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, LineProperties::PROP_LINE_WIDTH, 0 );
- PropertyHelper::setPropertyValueDefault( rOutMap, LineProperties::PROP_LINE_DASH, drawing::LineDash());
- PropertyHelper::setEmptyPropertyValueDefault( rOutMap, LineProperties::PROP_LINE_DASH_NAME );
-
- //fill bitmap
- PropertyHelper::setPropertyValueDefault< sal_Int16 >( rOutMap, FillProperties::PROP_FILL_BITMAP_OFFSETX, 0 );
- PropertyHelper::setPropertyValueDefault< sal_Int16 >( rOutMap, FillProperties::PROP_FILL_BITMAP_OFFSETY, 0 );
- PropertyHelper::setPropertyValueDefault< sal_Int16 >( rOutMap, FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETX, 0 );
- PropertyHelper::setPropertyValueDefault< sal_Int16 >( rOutMap, FillProperties::PROP_FILL_BITMAP_POSITION_OFFSETY, 0 );
- PropertyHelper::setPropertyValueDefault( rOutMap, FillProperties::PROP_FILL_BITMAP_RECTANGLEPOINT, drawing::RectanglePoint_MIDDLE_MIDDLE );
- PropertyHelper::setPropertyValueDefault( rOutMap, FillProperties::PROP_FILL_BITMAP_LOGICALSIZE, true );
-
- PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, FillProperties::PROP_FILL_BITMAP_SIZEX, 0 );
- PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, FillProperties::PROP_FILL_BITMAP_SIZEY, 0 );
- PropertyHelper::setPropertyValueDefault( rOutMap, FillProperties::PROP_FILL_BITMAP_MODE, drawing::BitmapMode_REPEAT );
-
- //others
- chart2::Symbol aSymbProp;
- aSymbProp.Style = chart2::SymbolStyle_NONE;
- aSymbProp.StandardSymbol = 0;
- aSymbProp.Size = awt::Size( 250, 250 ); // ca. 7pt x 7pt (7pt=246.94)
- aSymbProp.BorderColor = 0x000000; // Black
- aSymbProp.FillColor = 0xee4000; // OrangeRed2
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATAPOINT_SYMBOL_PROP, aSymbProp );
-
- PropertyHelper::setPropertyValueDefault< double >( rOutMap, PROP_DATAPOINT_OFFSET, 0.0 );
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATAPOINT_GEOMETRY3D, chart2::DataPointGeometry3D::CUBOID );
-
- PropertyHelper::setPropertyValueDefault(
- rOutMap, PROP_DATAPOINT_LABEL,
- chart2::DataPointLabel(
- sal_False, // ShowNumber
- sal_False, // ShowNumberInPercent
- sal_False, // ShowCategoryName
- sal_False // ShowLegendSymbol
- ));
-
- PropertyHelper::setPropertyValueDefault< rtl::OUString >( rOutMap, PROP_DATAPOINT_LABEL_SEPARATOR, C2U(" ") );
-
- //@todo maybe choose a different one here -> should be dynamically that of the attached axis
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATAPOINT_ERROR_BAR_X, uno::Reference< beans::XPropertySet >());
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATAPOINT_ERROR_BAR_Y, uno::Reference< beans::XPropertySet >());
- PropertyHelper::setPropertyValueDefault< sal_Int16 >( rOutMap, PROP_DATAPOINT_PERCENT_DIAGONAL, 0 );
-
- PropertyHelper::setPropertyValueDefault< double >( rOutMap, PROP_DATAPOINT_TEXT_ROTATION, 0.0 );
-}
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/DataPointProperties.hxx b/chart2/source/model/main/DataPointProperties.hxx
deleted file mode 100644
index b495c20ac..000000000
--- a/chart2/source/model/main/DataPointProperties.hxx
+++ /dev/null
@@ -1,103 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_DATAPOINTPROPERTIES_HXX
-#define CHART_DATAPOINTPROPERTIES_HXX
-
-#include "PropertyHelper.hxx"
-#include "FastPropertyIdRanges.hxx"
-#include <com/sun/star/beans/Property.hpp>
-
-#include <vector>
-
-namespace chart
-{
-
-// implements service DataPointProperties
-class DataPointProperties
-{
-public:
- // FastProperty Ids for properties
- enum
- {
- // common
- PROP_DATAPOINT_COLOR = FAST_PROPERTY_ID_START_DATA_POINT,
- PROP_DATAPOINT_TRANSPARENCY,
-
- // fill
- PROP_DATAPOINT_FILL_STYLE,
- PROP_DATAPOINT_TRANSPARENCY_GRADIENT_NAME,
- PROP_DATAPOINT_GRADIENT_NAME,
- PROP_DATAPOINT_GRADIENT_STEPCOUNT,
- PROP_DATAPOINT_HATCH_NAME,
- PROP_DATAPOINT_FILL_BITMAP_NAME,
- PROP_DATAPOINT_FILL_BACKGROUND,
-
- // border (of filled objects)
- PROP_DATAPOINT_BORDER_COLOR,
- PROP_DATAPOINT_BORDER_STYLE,
- PROP_DATAPOINT_BORDER_WIDTH,
- PROP_DATAPOINT_BORDER_DASH_NAME,
- PROP_DATAPOINT_BORDER_TRANSPARENCY,
-
- // others
- PROP_DATAPOINT_SYMBOL_PROP,
- PROP_DATAPOINT_OFFSET,
- PROP_DATAPOINT_GEOMETRY3D,
- PROP_DATAPOINT_LABEL,
- PROP_DATAPOINT_LABEL_SEPARATOR,
- PROP_DATAPOINT_NUMBER_FORMAT,
- PROP_DATAPOINT_PERCENTAGE_NUMBER_FORMAT,
- PROP_DATAPOINT_LABEL_PLACEMENT,
- PROP_DATAPOINT_REFERENCE_DIAGRAM_SIZE,
- PROP_DATAPOINT_TEXT_ROTATION,
-
- // statistics
- PROP_DATAPOINT_ERROR_BAR_X,
- PROP_DATAPOINT_ERROR_BAR_Y,
- PROP_DATAPOINT_SHOW_ERROR_BOX,
- PROP_DATAPOINT_PERCENT_DIAGONAL
-
- // additionally some properites from ::chart::LineProperties
- };
-
- static void AddPropertiesToVector(
- ::std::vector< ::com::sun::star::beans::Property > & rOutProperties );
-
- static void AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap );
-
-private:
- // not implemented
- DataPointProperties();
-};
-
-} // namespace chart
-
-// CHART_DATAPOINTPROPERTIES_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/DataSeries.cxx b/chart2/source/model/main/DataSeries.cxx
deleted file mode 100644
index ff7c5f1cb..000000000
--- a/chart2/source/model/main/DataSeries.cxx
+++ /dev/null
@@ -1,634 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "DataSeries.hxx"
-#include "DataSeriesProperties.hxx"
-#include "DataPointProperties.hxx"
-#include "CharacterProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "DataPoint.hxx"
-#include "macros.hxx"
-#include "DataSeriesHelper.hxx"
-#include "ContainerHelper.hxx"
-#include "CloneHelper.hxx"
-#include "ModifyListenerHelper.hxx"
-#include "EventListenerHelper.hxx"
-
-#include <algorithm>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::beans::Property;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Any;
-using ::rtl::OUString;
-using ::osl::MutexGuard;
-
-// ----------------------------------------
-
-namespace
-{
-
-struct StaticDataSeriesDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::DataSeriesProperties::AddDefaultsToMap( rOutMap );
- ::chart::CharacterProperties::AddDefaultsToMap( rOutMap );
-
- float fDefaultCharHeight = 10.0;
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_CHAR_HEIGHT, fDefaultCharHeight );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_ASIAN_CHAR_HEIGHT, fDefaultCharHeight );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_COMPLEX_CHAR_HEIGHT, fDefaultCharHeight );
- }
-};
-
-struct StaticDataSeriesDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticDataSeriesDefaults_Initializer >
-{
-};
-
-struct StaticDataSeriesInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- uno::Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- ::chart::DataSeriesProperties::AddPropertiesToVector( aProperties );
- ::chart::CharacterProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-
-};
-
-struct StaticDataSeriesInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticDataSeriesInfoHelper_Initializer >
-{
-};
-
-struct StaticDataSeriesInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticDataSeriesInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticDataSeriesInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticDataSeriesInfo_Initializer >
-{
-};
-
-void lcl_SetParent(
- const uno::Reference< uno::XInterface > & xChildInterface,
- const uno::Reference< uno::XInterface > & xParentInterface )
-{
- uno::Reference< container::XChild > xChild( xChildInterface, uno::UNO_QUERY );
- if( xChild.is())
- xChild->setParent( xParentInterface );
-}
-
-typedef ::std::map< sal_Int32, ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet > >
- lcl_tDataPointMap;
-
-void lcl_CloneAttributedDataPoints(
- const lcl_tDataPointMap & rSource, lcl_tDataPointMap & rDestination,
- const uno::Reference< uno::XInterface > & xSeries )
-{
- for( lcl_tDataPointMap::const_iterator aIt( rSource.begin());
- aIt != rSource.end(); ++aIt )
- {
- Reference< beans::XPropertySet > xPoint( (*aIt).second );
- if( xPoint.is())
- {
- Reference< util::XCloneable > xCloneable( xPoint, uno::UNO_QUERY );
- if( xCloneable.is())
- {
- xPoint.set( xCloneable->createClone(), uno::UNO_QUERY );
- if( xPoint.is())
- {
- lcl_SetParent( xPoint, xSeries );
- rDestination.insert( lcl_tDataPointMap::value_type( (*aIt).first, xPoint ));
- }
- }
- }
- }
-}
-
-} // anonymous namespace
-
-// ----------------------------------------
-
-namespace chart
-{
-
-DataSeries::DataSeries( const uno::Reference< uno::XComponentContext > & xContext ) :
- ::property::OPropertySet( m_aMutex ),
- m_xContext( xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
-}
-
-DataSeries::DataSeries( const DataSeries & rOther ) :
- MutexContainer(),
- impl::DataSeries_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xContext( rOther.m_xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
- if( ! rOther.m_aDataSequences.empty())
- {
- CloneHelper::CloneRefVector< tDataSequenceContainer::value_type >(
- rOther.m_aDataSequences, m_aDataSequences );
- ModifyListenerHelper::addListenerToAllElements( m_aDataSequences, m_xModifyEventForwarder );
- }
-
- CloneHelper::CloneRefVector< Reference< chart2::XRegressionCurve > >( rOther.m_aRegressionCurves, m_aRegressionCurves );
- ModifyListenerHelper::addListenerToAllElements( m_aRegressionCurves, m_xModifyEventForwarder );
-
- // add as listener to XPropertySet properties
- Reference< beans::XPropertySet > xPropertySet;
- uno::Any aValue;
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_X );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::addListener( xPropertySet, m_xModifyEventForwarder );
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_Y );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::addListener( xPropertySet, m_xModifyEventForwarder );
-}
-
-// late initialization to call after copy-constructing
-void DataSeries::Init( const DataSeries & rOther )
-{
- if( ! rOther.m_aDataSequences.empty())
- EventListenerHelper::addListenerToAllElements( m_aDataSequences, this );
-
- Reference< uno::XInterface > xThisInterface( static_cast< ::cppu::OWeakObject * >( this ));
- if( ! rOther.m_aAttributedDataPoints.empty())
- {
- lcl_CloneAttributedDataPoints(
- rOther.m_aAttributedDataPoints, m_aAttributedDataPoints, xThisInterface );
- ModifyListenerHelper::addListenerToAllMapElements( m_aAttributedDataPoints, m_xModifyEventForwarder );
- }
-
- // add as parent to error bars
- Reference< beans::XPropertySet > xPropertySet;
- uno::Any aValue;
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_X );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- lcl_SetParent( xPropertySet, xThisInterface );
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_Y );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- lcl_SetParent( xPropertySet, xThisInterface );
-}
-
-DataSeries::~DataSeries()
-{
- try
- {
- ModifyListenerHelper::removeListenerFromAllMapElements( m_aAttributedDataPoints, m_xModifyEventForwarder );
- ModifyListenerHelper::removeListenerFromAllElements( m_aRegressionCurves, m_xModifyEventForwarder );
- ModifyListenerHelper::removeListenerFromAllElements( m_aDataSequences, m_xModifyEventForwarder );
-
- // remove listener from XPropertySet properties
- Reference< beans::XPropertySet > xPropertySet;
- uno::Any aValue;
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_X );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::removeListener( xPropertySet, m_xModifyEventForwarder );
-
- getFastPropertyValue( aValue, DataPointProperties::PROP_DATAPOINT_ERROR_BAR_Y );
- if( ( aValue >>= xPropertySet )
- && xPropertySet.is())
- ModifyListenerHelper::removeListener( xPropertySet, m_xModifyEventForwarder );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL DataSeries::createClone()
- throw (uno::RuntimeException)
-{
- DataSeries * pNewSeries( new DataSeries( *this ));
- // hold a reference to the clone
- uno::Reference< util::XCloneable > xResult( pNewSeries );
- // do initialization that uses uno references to the clone
- pNewSeries->Init( *this );
-
- return xResult;
-}
-
-Sequence< OUString > DataSeries::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 3 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.DataSeries" );
- aServices[ 1 ] = C2U( "com.sun.star.chart2.DataPointProperties" );
- aServices[ 2 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// ____ OPropertySet ____
-uno::Any DataSeries::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticDataSeriesDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-// ____ OPropertySet ____
-::cppu::IPropertyArrayHelper & SAL_CALL DataSeries::getInfoHelper()
-{
- return *StaticDataSeriesInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-uno::Reference< beans::XPropertySetInfo > SAL_CALL DataSeries::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticDataSeriesInfo::get();
-}
-
-void SAL_CALL DataSeries::getFastPropertyValue
- ( uno::Any& rValue,
- sal_Int32 nHandle ) const
-{
- // special handling for get. set is not possible for this property
- if( nHandle == DataSeriesProperties::PROP_DATASERIES_ATTRIBUTED_DATA_POINTS )
- {
- // ToDo: only add those property sets that are really modified
- uno::Sequence< sal_Int32 > aSeq( m_aAttributedDataPoints.size());
- sal_Int32 * pIndexArray = aSeq.getArray();
- sal_Int32 i = 0;
-
- for( tDataPointAttributeContainer::const_iterator aIt( m_aAttributedDataPoints.begin());
- aIt != m_aAttributedDataPoints.end(); ++aIt )
- {
- pIndexArray[ i ] = (*aIt).first;
- ++i;
- }
-
- rValue <<= aSeq;
- }
- else
- OPropertySet::getFastPropertyValue( rValue, nHandle );
-}
-
-void SAL_CALL DataSeries::setFastPropertyValue_NoBroadcast(
- sal_Int32 nHandle, const uno::Any& rValue )
- throw (uno::Exception)
-{
- if( nHandle == DataPointProperties::PROP_DATAPOINT_ERROR_BAR_Y
- || nHandle == DataPointProperties::PROP_DATAPOINT_ERROR_BAR_X )
- {
- uno::Any aOldValue;
- Reference< util::XModifyBroadcaster > xBroadcaster;
- this->getFastPropertyValue( aOldValue, nHandle );
- if( aOldValue.hasValue() &&
- (aOldValue >>= xBroadcaster) &&
- xBroadcaster.is())
- {
- ModifyListenerHelper::removeListener( xBroadcaster, m_xModifyEventForwarder );
- }
-
- OSL_ASSERT( rValue.getValueType().getTypeClass() == uno::TypeClass_INTERFACE );
- if( rValue.hasValue() &&
- (rValue >>= xBroadcaster) &&
- xBroadcaster.is())
- {
- ModifyListenerHelper::addListener( xBroadcaster, m_xModifyEventForwarder );
- }
- }
-
- ::property::OPropertySet::setFastPropertyValue_NoBroadcast( nHandle, rValue );
-}
-
-Reference< beans::XPropertySet >
- SAL_CALL DataSeries::getDataPointByIndex( sal_Int32 nIndex )
- throw (lang::IndexOutOfBoundsException,
- uno::RuntimeException)
-{
- Reference< beans::XPropertySet > xResult;
-
- Sequence< Reference< chart2::data::XLabeledDataSequence > > aSequences;
- {
- MutexGuard aGuard( GetMutex() );
- aSequences = ContainerHelper::ContainerToSequence( m_aDataSequences );
- }
-
- ::std::vector< Reference< chart2::data::XLabeledDataSequence > > aValuesSeries(
- DataSeriesHelper::getAllDataSequencesByRole( aSequences , C2U("values"), true ) );
- if( !aValuesSeries.empty() )
- {
- Reference< chart2::data::XDataSequence > xSeq( aValuesSeries.front()->getValues() );
- if( 0 <= nIndex && nIndex < xSeq->getData().getLength() )
- {
- {
- MutexGuard aGuard( GetMutex() );
- tDataPointAttributeContainer::iterator aIt( m_aAttributedDataPoints.find( nIndex ) );
- if( aIt != m_aAttributedDataPoints.end() )
- xResult = (*aIt).second;
- }
- if( !xResult.is() )
- {
- Reference< beans::XPropertySet > xParentProperties;
- Reference< util::XModifyListener > xModifyEventForwarder;
- {
- MutexGuard aGuard( GetMutex() );
- xParentProperties = this;
- xModifyEventForwarder = m_xModifyEventForwarder;
- }
-
- // create a new XPropertySet for this data point
- xResult.set( new DataPoint( xParentProperties ) );
- {
- MutexGuard aGuard( GetMutex() );
- m_aAttributedDataPoints[ nIndex ] = xResult;
- }
- ModifyListenerHelper::addListener( xResult, xModifyEventForwarder );
- }
- }
- }
- else
- {
- throw lang::IndexOutOfBoundsException();
- }
-
- return xResult;
-}
-
-void SAL_CALL DataSeries::resetDataPoint( sal_Int32 nIndex )
- throw (uno::RuntimeException)
-{
- Reference< beans::XPropertySet > xDataPointProp;
- Reference< util::XModifyListener > xModifyEventForwarder;
- {
- MutexGuard aGuard( GetMutex() );
- xModifyEventForwarder = m_xModifyEventForwarder;
- tDataPointAttributeContainer::iterator aIt( m_aAttributedDataPoints.find( nIndex ));
- if( aIt != m_aAttributedDataPoints.end())
- {
- xDataPointProp = (*aIt).second;
- m_aAttributedDataPoints.erase(aIt);
- }
-
- }
- if( xDataPointProp.is() )
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( xDataPointProp, uno::UNO_QUERY );
- if( xBroadcaster.is() && xModifyEventForwarder.is())
- xBroadcaster->removeModifyListener( xModifyEventForwarder );
- fireModifyEvent();
- }
-}
-
-void SAL_CALL DataSeries::resetAllDataPoints()
- throw (uno::RuntimeException)
-{
- tDataPointAttributeContainer aOldAttributedDataPoints;
- Reference< util::XModifyListener > xModifyEventForwarder;
- {
- MutexGuard aGuard( GetMutex() );
- xModifyEventForwarder = m_xModifyEventForwarder;
- std::swap( aOldAttributedDataPoints, m_aAttributedDataPoints );
- }
- ModifyListenerHelper::removeListenerFromAllMapElements( aOldAttributedDataPoints, xModifyEventForwarder );
- aOldAttributedDataPoints.clear();
- fireModifyEvent();
-}
-
-// ____ XDataSink ____
-void SAL_CALL DataSeries::setData( const uno::Sequence< Reference< chart2::data::XLabeledDataSequence > >& aData )
- throw (uno::RuntimeException)
-{
- tDataSequenceContainer aOldDataSequences;
- tDataSequenceContainer aNewDataSequences;
- Reference< util::XModifyListener > xModifyEventForwarder;
- Reference< lang::XEventListener > xListener;
- {
- MutexGuard aGuard( GetMutex() );
- xModifyEventForwarder = m_xModifyEventForwarder;
- xListener = this;
- std::swap( aOldDataSequences, m_aDataSequences );
- aNewDataSequences = ContainerHelper::SequenceToVector( aData );
- m_aDataSequences = aNewDataSequences;
- }
- ModifyListenerHelper::removeListenerFromAllElements( aOldDataSequences, xModifyEventForwarder );
- EventListenerHelper::removeListenerFromAllElements( aOldDataSequences, xListener );
- EventListenerHelper::addListenerToAllElements( aNewDataSequences, xListener );
- ModifyListenerHelper::addListenerToAllElements( aNewDataSequences, xModifyEventForwarder );
- fireModifyEvent();
-}
-
-// ____ XDataSource ____
-Sequence< Reference< chart2::data::XLabeledDataSequence > > SAL_CALL DataSeries::getDataSequences()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return ContainerHelper::ContainerToSequence( m_aDataSequences );
-}
-
-
-// ____ XRegressionCurveContainer ____
-void SAL_CALL DataSeries::addRegressionCurve(
- const uno::Reference< chart2::XRegressionCurve >& xRegressionCurve )
- throw (lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- Reference< util::XModifyListener > xModifyEventForwarder;
- {
- MutexGuard aGuard( GetMutex() );
- xModifyEventForwarder = m_xModifyEventForwarder;
- if( ::std::find( m_aRegressionCurves.begin(), m_aRegressionCurves.end(), xRegressionCurve )
- != m_aRegressionCurves.end())
- throw lang::IllegalArgumentException();
- m_aRegressionCurves.push_back( xRegressionCurve );
- }
- ModifyListenerHelper::addListener( xRegressionCurve, xModifyEventForwarder );
- fireModifyEvent();
-}
-
-void SAL_CALL DataSeries::removeRegressionCurve(
- const uno::Reference< chart2::XRegressionCurve >& xRegressionCurve )
- throw (container::NoSuchElementException,
- uno::RuntimeException)
-{
- if( !xRegressionCurve.is() )
- throw container::NoSuchElementException();
-
- Reference< util::XModifyListener > xModifyEventForwarder;
- {
- MutexGuard aGuard( GetMutex() );
- xModifyEventForwarder = m_xModifyEventForwarder;
- tRegressionCurveContainerType::iterator aIt(
- ::std::find( m_aRegressionCurves.begin(), m_aRegressionCurves.end(), xRegressionCurve ) );
- if( aIt == m_aRegressionCurves.end())
- throw container::NoSuchElementException(
- C2U( "The given regression curve is no element of this series" ),
- static_cast< uno::XWeak * >( this ));
- m_aRegressionCurves.erase( aIt );
- }
-
- ModifyListenerHelper::removeListener( xRegressionCurve, xModifyEventForwarder );
- fireModifyEvent();
-}
-
-uno::Sequence< uno::Reference< chart2::XRegressionCurve > > SAL_CALL DataSeries::getRegressionCurves()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return ContainerHelper::ContainerToSequence( m_aRegressionCurves );
-}
-
-void SAL_CALL DataSeries::setRegressionCurves(
- const Sequence< Reference< chart2::XRegressionCurve > >& aRegressionCurves )
- throw (uno::RuntimeException)
-{
- tRegressionCurveContainerType aOldCurves;
- tRegressionCurveContainerType aNewCurves( ContainerHelper::SequenceToVector( aRegressionCurves ) );
- Reference< util::XModifyListener > xModifyEventForwarder;
- {
- MutexGuard aGuard( GetMutex() );
- xModifyEventForwarder = m_xModifyEventForwarder;
- std::swap( aOldCurves, m_aRegressionCurves );
- m_aRegressionCurves = aNewCurves;
- }
- ModifyListenerHelper::removeListenerFromAllElements( aOldCurves, xModifyEventForwarder );
- ModifyListenerHelper::addListenerToAllElements( aNewCurves, xModifyEventForwarder );
- fireModifyEvent();
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL DataSeries::addModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL DataSeries::removeModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL DataSeries::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL DataSeries::disposing( const lang::EventObject& rEventObject )
- throw (uno::RuntimeException)
-{
- // forget disposed data sequences
- tDataSequenceContainer::iterator aIt(
- ::std::find( m_aDataSequences.begin(), m_aDataSequences.end(), rEventObject.Source ));
- if( aIt != m_aDataSequences.end())
- m_aDataSequences.erase( aIt );
-}
-
-// ____ OPropertySet ____
-void DataSeries::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void DataSeries::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-
-// ================================================================================
-
-using impl::DataSeries_Base;
-using ::property::OPropertySet;
-
-IMPLEMENT_FORWARD_XINTERFACE2( DataSeries, DataSeries_Base, OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( DataSeries, DataSeries_Base, OPropertySet )
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( DataSeries,
- C2U( "com.sun.star.comp.chart.DataSeries" ));
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/DataSeriesProperties.cxx b/chart2/source/model/main/DataSeriesProperties.cxx
deleted file mode 100644
index 482880428..000000000
--- a/chart2/source/model/main/DataSeriesProperties.cxx
+++ /dev/null
@@ -1,101 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "DataSeriesProperties.hxx"
-#include "DataPointProperties.hxx"
-#include "DataPoint.hxx"
-#include "macros.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/style/XStyle.hpp>
-#include <com/sun/star/chart2/StackingDirection.hpp>
-
-#include <algorithm>
-
-using namespace ::com::sun::star;
-
-using ::rtl::OUString;
-using ::com::sun::star::beans::Property;
-using ::com::sun::star::uno::Reference;
-
-namespace chart
-{
-
-void DataSeriesProperties::AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- rOutProperties.push_back(
- Property( C2U( "AttributedDataPoints" ),
- PROP_DATASERIES_ATTRIBUTED_DATA_POINTS,
- ::getCppuType( reinterpret_cast< const uno::Sequence< sal_Int32 > * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "StackingDirection" ),
- PROP_DATASERIES_STACKING_DIRECTION,
- ::getCppuType( reinterpret_cast< const chart2::StackingDirection * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "VaryColorsByPoint" ),
- PROP_DATASERIES_VARY_COLORS_BY_POINT,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "AttachedAxisIndex" ),
- PROP_DATASERIES_ATTACHED_AXIS_INDEX,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- // add properties of service DataPointProperties
- DataPointProperties::AddPropertiesToVector( rOutProperties );
-}
-
-void DataSeriesProperties::AddDefaultsToMap(
- tPropertyValueMap & rOutMap )
-{
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATASERIES_STACKING_DIRECTION, chart2::StackingDirection_NO_STACKING );
- PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DATASERIES_VARY_COLORS_BY_POINT, false );
- PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_DATASERIES_ATTACHED_AXIS_INDEX, 0 );
-
- // PROP_DATASERIES_ATTRIBUTED_DATA_POINTS has no default
-
- // add properties of service DataPointProperties
- DataPointProperties::AddDefaultsToMap( rOutMap );
-}
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/DataSeriesProperties.hxx b/chart2/source/model/main/DataSeriesProperties.hxx
deleted file mode 100644
index 62068fe25..000000000
--- a/chart2/source/model/main/DataSeriesProperties.hxx
+++ /dev/null
@@ -1,66 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_DATASERIESPROPERTIES_HXX
-#define CHART_DATASERIESPROPERTIES_HXX
-
-#include "PropertyHelper.hxx"
-#include "FastPropertyIdRanges.hxx"
-#include <com/sun/star/beans/Property.hpp>
-
-#include <vector>
-
-namespace chart
-{
-
-class DataSeriesProperties
-{
-public:
- enum
- {
- PROP_DATASERIES_ATTRIBUTED_DATA_POINTS = FAST_PROPERTY_ID_START_DATA_SERIES,
- PROP_DATASERIES_STACKING_DIRECTION,
- PROP_DATASERIES_VARY_COLORS_BY_POINT,
- PROP_DATASERIES_ATTACHED_AXIS_INDEX
- };
-
- static void AddPropertiesToVector(
- ::std::vector< ::com::sun::star::beans::Property > & rOutProperties );
-
- static void AddDefaultsToMap( tPropertyValueMap & rOutMap );
-
-private:
- // not implemented
- DataSeriesProperties();
-};
-
-} // namespace chart
-
-// CHART_DATASERIESPROPERTIES_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/Diagram.cxx b/chart2/source/model/main/Diagram.cxx
deleted file mode 100644
index 710053816..000000000
--- a/chart2/source/model/main/Diagram.cxx
+++ /dev/null
@@ -1,734 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "Diagram.hxx"
-#include "macros.hxx"
-#include "PropertyHelper.hxx"
-#include "Wall.hxx"
-#include "UserDefinedProperties.hxx"
-#include "ConfigColorScheme.hxx"
-#include "DiagramHelper.hxx"
-#include "ContainerHelper.hxx"
-#include "ThreeDHelper.hxx"
-#include "CloneHelper.hxx"
-#include "AxisHelper.hxx"
-#include "SceneProperties.hxx"
-#include "DisposeHelper.hxx"
-#include "BaseGFXHelper.hxx"
-#include <basegfx/numeric/ftools.hxx>
-#include <rtl/instance.hxx>
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/chart2/RelativePosition.hpp>
-#include <com/sun/star/chart2/RelativeSize.hpp>
-#include <com/sun/star/drawing/CameraGeometry.hpp>
-
-#include <com/sun/star/drawing/HomogenMatrix.hpp>
-
-#include <algorithm>
-#include <iterator>
-#include <functional>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::beans::PropertyAttribute;
-
-using ::rtl::OUString;
-using ::com::sun::star::beans::Property;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Any;
-using ::osl::MutexGuard;
-
-// ======================================================================
-
-namespace
-{
-
-enum
-{
- PROP_DIAGRAM_REL_POS,
- PROP_DIAGRAM_REL_SIZE,
- PROP_DIAGRAM_POSSIZE_EXCLUDE_LABELS,
- PROP_DIAGRAM_SORT_BY_X_VALUES,
- PROP_DIAGRAM_CONNECT_BARS,
- PROP_DIAGRAM_GROUP_BARS_PER_AXIS,
- PROP_DIAGRAM_INCLUDE_HIDDEN_CELLS,
- PROP_DIAGRAM_STARTING_ANGLE,
- PROP_DIAGRAM_RIGHT_ANGLED_AXES,
- PROP_DIAGRAM_PERSPECTIVE,
- PROP_DIAGRAM_ROTATION_HORIZONTAL,
- PROP_DIAGRAM_ROTATION_VERTICAL,
- PROP_DIAGRAM_MISSING_VALUE_TREATMENT
-};
-
-void lcl_AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- rOutProperties.push_back(
- Property( C2U( "RelativePosition" ),
- PROP_DIAGRAM_REL_POS,
- ::getCppuType( reinterpret_cast< const chart2::RelativePosition * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "RelativeSize" ),
- PROP_DIAGRAM_REL_SIZE,
- ::getCppuType( reinterpret_cast< const chart2::RelativeSize * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "PosSizeExcludeAxes" ),
- PROP_DIAGRAM_POSSIZE_EXCLUDE_LABELS,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "SortByXValues" ),
- PROP_DIAGRAM_SORT_BY_X_VALUES,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U("ConnectBars"),
- PROP_DIAGRAM_CONNECT_BARS,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U("GroupBarsPerAxis"),
- PROP_DIAGRAM_GROUP_BARS_PER_AXIS,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U("IncludeHiddenCells"),
- PROP_DIAGRAM_INCLUDE_HIDDEN_CELLS,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "StartingAngle" ),
- PROP_DIAGRAM_STARTING_ANGLE,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0) ),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U("RightAngledAxes"),
- PROP_DIAGRAM_RIGHT_ANGLED_AXES,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U("Perspective"),
- PROP_DIAGRAM_PERSPECTIVE,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U("RotationHorizontal"),
- PROP_DIAGRAM_ROTATION_HORIZONTAL,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U("RotationVertical"),
- PROP_DIAGRAM_ROTATION_VERTICAL,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "MissingValueTreatment" ),
- PROP_DIAGRAM_MISSING_VALUE_TREATMENT,
- ::getCppuType( reinterpret_cast< const sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-}
-
-struct StaticDiagramDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DIAGRAM_POSSIZE_EXCLUDE_LABELS, true );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DIAGRAM_SORT_BY_X_VALUES, false );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DIAGRAM_CONNECT_BARS, false );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DIAGRAM_GROUP_BARS_PER_AXIS, true );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DIAGRAM_INCLUDE_HIDDEN_CELLS, true );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_DIAGRAM_RIGHT_ANGLED_AXES, false );
- ::chart::PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_DIAGRAM_STARTING_ANGLE, 90 );
- ::chart::SceneProperties::AddDefaultsToMap( rOutMap );
- }
-};
-
-struct StaticDiagramDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticDiagramDefaults_Initializer >
-{
-};
-
-struct StaticDiagramInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- lcl_AddPropertiesToVector( aProperties );
- ::chart::SceneProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-};
-
-struct StaticDiagramInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticDiagramInfoHelper_Initializer >
-{
-};
-
-struct StaticDiagramInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticDiagramInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticDiagramInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticDiagramInfo_Initializer >
-{
-};
-
-/// clones a UNO-sequence of UNO-References
-typedef Reference< chart2::XCoordinateSystem > lcl_tCooSysRef;
-typedef ::std::map< lcl_tCooSysRef, lcl_tCooSysRef > lcl_tCooSysMapping;
-typedef ::std::vector< lcl_tCooSysRef > lcl_tCooSysVector;
-
-lcl_tCooSysMapping lcl_CloneCoordinateSystems(
- const lcl_tCooSysVector & rSource,
- lcl_tCooSysVector & rDestination )
-{
- lcl_tCooSysMapping aResult;
-
- for( lcl_tCooSysVector::const_iterator aIt( rSource.begin());
- aIt != rSource.end(); ++aIt )
- {
- lcl_tCooSysRef xClone;
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable >
- xCloneable( *aIt, ::com::sun::star::uno::UNO_QUERY );
- if( xCloneable.is())
- xClone.set( xCloneable->createClone(), ::com::sun::star::uno::UNO_QUERY );
-
- if( xClone.is())
- {
- rDestination.push_back( xClone );
- aResult.insert( lcl_tCooSysMapping::value_type( *aIt, xClone ));
- }
- else
- rDestination.push_back( *aIt );
- }
-
- return aResult;
-}
-
-} // anonymous namespace
-
-// ======================================================================
-
-namespace chart
-{
-
-Diagram::Diagram( uno::Reference< uno::XComponentContext > const & xContext ) :
- ::property::OPropertySet( m_aMutex ),
- m_xContext( xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
- // Set camera position to a default position (that should be set hard, so
- // that it will be exported. The property default is a camera looking
- // straight ono the scene). These defaults have been acquired from the old
- // chart implemetation.
- setFastPropertyValue_NoBroadcast(
- SceneProperties::PROP_SCENE_CAMERA_GEOMETRY, uno::makeAny(
- ThreeDHelper::getDefaultCameraGeometry()));
-}
-
-Diagram::Diagram( const Diagram & rOther ) :
- MutexContainer(),
- impl::Diagram_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xContext( rOther.m_xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
- lcl_tCooSysMapping aCooSysMapping =
- lcl_CloneCoordinateSystems( rOther.m_aCoordSystems, m_aCoordSystems );
- ModifyListenerHelper::addListenerToAllElements( m_aCoordSystems, m_xModifyEventForwarder );
-
- m_xWall.set( CloneHelper::CreateRefClone< Reference< beans::XPropertySet > >()( rOther.m_xWall ));
- m_xFloor.set( CloneHelper::CreateRefClone< Reference< beans::XPropertySet > >()( rOther.m_xFloor ));
- m_xTitle.set( CloneHelper::CreateRefClone< Reference< chart2::XTitle > >()( rOther.m_xTitle ));
- m_xLegend.set( CloneHelper::CreateRefClone< Reference< chart2::XLegend > >()( rOther.m_xLegend ));
-
- ModifyListenerHelper::addListener( m_xWall, m_xModifyEventForwarder );
- ModifyListenerHelper::addListener( m_xFloor, m_xModifyEventForwarder );
- ModifyListenerHelper::addListener( m_xTitle, m_xModifyEventForwarder );
- ModifyListenerHelper::addListener( m_xLegend, m_xModifyEventForwarder );
-}
-
-Diagram::~Diagram()
-{
- try
- {
- ModifyListenerHelper::removeListenerFromAllElements( m_aCoordSystems, m_xModifyEventForwarder );
-
- ModifyListenerHelper::removeListener( m_xWall, m_xModifyEventForwarder );
- ModifyListenerHelper::removeListener( m_xFloor, m_xModifyEventForwarder );
- ModifyListenerHelper::removeListener( m_xTitle, m_xModifyEventForwarder );
- ModifyListenerHelper::removeListener( m_xLegend, m_xModifyEventForwarder );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XDiagram ____
-uno::Reference< beans::XPropertySet > SAL_CALL Diagram::getWall()
- throw (uno::RuntimeException)
-{
- uno::Reference< beans::XPropertySet > xRet;
- bool bAddListener = false;
- {
- MutexGuard aGuard( GetMutex() );
- if( !m_xWall.is() )
- {
- m_xWall.set( new Wall() );
- bAddListener = true;
- }
- xRet = m_xWall;
- }
- if(bAddListener)
- ModifyListenerHelper::addListener( xRet, m_xModifyEventForwarder );
- return xRet;
-}
-
-uno::Reference< beans::XPropertySet > SAL_CALL Diagram::getFloor()
- throw (uno::RuntimeException)
-{
- uno::Reference< beans::XPropertySet > xRet;
- bool bAddListener = false;
- {
- MutexGuard aGuard( GetMutex() );
- if( !m_xFloor.is() )
- {
- m_xFloor.set( new Wall() );
- bAddListener = true;
- }
- xRet = m_xFloor;
- }
- if(bAddListener)
- ModifyListenerHelper::addListener( xRet, m_xModifyEventForwarder );
- return xRet;
-}
-
-uno::Reference< chart2::XLegend > SAL_CALL Diagram::getLegend()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return m_xLegend;
-}
-
-void SAL_CALL Diagram::setLegend( const uno::Reference< chart2::XLegend >& xNewLegend )
- throw (uno::RuntimeException)
-{
- Reference< chart2::XLegend > xOldLegend;
- {
- MutexGuard aGuard( GetMutex() );
- if( m_xLegend == xNewLegend )
- return;
- xOldLegend = m_xLegend;
- m_xLegend = xNewLegend;
- }
- if( xOldLegend.is())
- ModifyListenerHelper::removeListener( xOldLegend, m_xModifyEventForwarder );
- if( xNewLegend.is())
- ModifyListenerHelper::addListener( xNewLegend, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-Reference< chart2::XColorScheme > SAL_CALL Diagram::getDefaultColorScheme()
- throw (uno::RuntimeException)
-{
- Reference< chart2::XColorScheme > xRet;
- {
- MutexGuard aGuard( GetMutex() );
- xRet = m_xColorScheme;
- }
-
- if( !xRet.is())
- {
- xRet.set( createConfigColorScheme( m_xContext ));
- MutexGuard aGuard( GetMutex() );
- m_xColorScheme = xRet;
- }
- return xRet;
-}
-
-void SAL_CALL Diagram::setDefaultColorScheme( const Reference< chart2::XColorScheme >& xColorScheme )
- throw (uno::RuntimeException)
-{
- {
- MutexGuard aGuard( GetMutex() );
- m_xColorScheme.set( xColorScheme );
- }
- fireModifyEvent();
-}
-
-void SAL_CALL Diagram::setDiagramData(
- const Reference< chart2::data::XDataSource >& xDataSource,
- const Sequence< beans::PropertyValue >& aArguments )
- throw (uno::RuntimeException)
-{
- uno::Reference< lang::XMultiServiceFactory > xChartTypeManager( m_xContext->getServiceManager()->createInstanceWithContext(
- C2U( "com.sun.star.chart2.ChartTypeManager" ), m_xContext ), uno::UNO_QUERY );
- DiagramHelper::tTemplateWithServiceName aTemplateAndService = DiagramHelper::getTemplateForDiagram( this, xChartTypeManager );
- uno::Reference< chart2::XChartTypeTemplate > xTemplate( aTemplateAndService.first );
- if( !xTemplate.is() )
- xTemplate.set( xChartTypeManager->createInstance( C2U("com.sun.star.chart2.template.Column") ), uno::UNO_QUERY );
- if(!xTemplate.is())
- return;
- xTemplate->changeDiagramData( this, xDataSource, aArguments );
-}
-
-// ____ XTitled ____
-uno::Reference< chart2::XTitle > SAL_CALL Diagram::getTitleObject()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return m_xTitle;
-}
-
-void SAL_CALL Diagram::setTitleObject( const uno::Reference< chart2::XTitle >& xNewTitle )
- throw (uno::RuntimeException)
-{
- Reference< chart2::XTitle > xOldTitle;
- {
- MutexGuard aGuard( GetMutex() );
- if( m_xTitle == xNewTitle )
- return;
- xOldTitle = m_xTitle;
- m_xTitle = xNewTitle;
- }
- if( xOldTitle.is())
- ModifyListenerHelper::removeListener( xOldTitle, m_xModifyEventForwarder );
- if( xNewTitle.is())
- ModifyListenerHelper::addListener( xNewTitle, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-// ____ X3DDefaultSetter ____
-void SAL_CALL Diagram::set3DSettingsToDefault()
- throw (uno::RuntimeException)
-{
- ThreeDHelper::set3DSettingsToDefault( this );
-}
-
-void SAL_CALL Diagram::setDefaultRotation()
- throw (uno::RuntimeException)
-{
- ThreeDHelper::setDefaultRotation( this );
-}
-
-void SAL_CALL Diagram::setDefaultIllumination()
- throw (uno::RuntimeException)
-{
- ThreeDHelper::setDefaultIllumination( this );
-}
-
-// ____ XCoordinateSystemContainer ____
-void SAL_CALL Diagram::addCoordinateSystem(
- const uno::Reference< chart2::XCoordinateSystem >& aCoordSys )
- throw (lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- {
- MutexGuard aGuard( GetMutex() );
- if( ::std::find( m_aCoordSystems.begin(), m_aCoordSystems.end(), aCoordSys )
- != m_aCoordSystems.end())
- throw lang::IllegalArgumentException();
-
- if( m_aCoordSystems.size()>=1 )
- {
- OSL_FAIL( "more than one coordinatesystem is not supported yet by the fileformat" );
- return;
- }
- m_aCoordSystems.push_back( aCoordSys );
- }
- ModifyListenerHelper::addListener( aCoordSys, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-void SAL_CALL Diagram::removeCoordinateSystem(
- const uno::Reference< chart2::XCoordinateSystem >& aCoordSys )
- throw (container::NoSuchElementException,
- uno::RuntimeException)
-{
- {
- MutexGuard aGuard( GetMutex() );
- ::std::vector< uno::Reference< chart2::XCoordinateSystem > >::iterator
- aIt( ::std::find( m_aCoordSystems.begin(), m_aCoordSystems.end(), aCoordSys ));
- if( aIt == m_aCoordSystems.end())
- throw container::NoSuchElementException(
- C2U( "The given coordinate-system is no element of the container" ),
- static_cast< uno::XWeak * >( this ));
- m_aCoordSystems.erase( aIt );
- }
- ModifyListenerHelper::removeListener( aCoordSys, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-uno::Sequence< uno::Reference< chart2::XCoordinateSystem > > SAL_CALL Diagram::getCoordinateSystems()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return ContainerHelper::ContainerToSequence( m_aCoordSystems );
-}
-
-void SAL_CALL Diagram::setCoordinateSystems(
- const Sequence< Reference< chart2::XCoordinateSystem > >& aCoordinateSystems )
- throw (lang::IllegalArgumentException,
- uno::RuntimeException)
-{
- tCoordinateSystemContainerType aNew;
- tCoordinateSystemContainerType aOld;
- if( aCoordinateSystems.getLength()>0 )
- {
- OSL_ENSURE( aCoordinateSystems.getLength()<=1, "more than one coordinatesystem is not supported yet by the fileformat" );
- aNew.push_back( aCoordinateSystems[0] );
- }
- {
- MutexGuard aGuard( GetMutex() );
- std::swap( aOld, m_aCoordSystems );
- m_aCoordSystems = aNew;
- }
- ModifyListenerHelper::removeListenerFromAllElements( aOld, m_xModifyEventForwarder );
- ModifyListenerHelper::addListenerToAllElements( aNew, m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-// ____ XCloneable ____
-Reference< util::XCloneable > SAL_CALL Diagram::createClone()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return Reference< util::XCloneable >( new Diagram( *this ));
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL Diagram::addModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL Diagram::removeModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL Diagram::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL Diagram::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void Diagram::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void Diagram::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-// ============================================================
-
-Sequence< OUString > Diagram::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 3 );
-
- aServices[ 0 ] = C2U( "com.sun.star.chart2.Diagram" );
- aServices[ 1 ] = C2U( "com.sun.star.layout.LayoutElement" );
- aServices[ 2 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// ____ OPropertySet ____
-uno::Any Diagram::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticDiagramDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-// ____ OPropertySet ____
-::cppu::IPropertyArrayHelper & SAL_CALL Diagram::getInfoHelper()
-{
- return *StaticDiagramInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-uno::Reference< beans::XPropertySetInfo > SAL_CALL Diagram::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticDiagramInfo::get();
-}
-
-// ____ XFastPropertySet ____
-void SAL_CALL Diagram::setFastPropertyValue( sal_Int32 nHandle, const Any& rValue )
- throw(beans::UnknownPropertyException,
- beans::PropertyVetoException,
- lang::IllegalArgumentException,
- lang::WrappedTargetException, uno::RuntimeException)
-{
- //special treatment for some 3D properties
- if( PROP_DIAGRAM_PERSPECTIVE == nHandle )
- {
- sal_Int32 fPerspective = 20;
- if( rValue >>=fPerspective )
- ThreeDHelper::setCameraDistance( this, ThreeDHelper::PerspectiveToCameraDistance( fPerspective ) );
- }
- else if( PROP_DIAGRAM_ROTATION_HORIZONTAL == nHandle
- || PROP_DIAGRAM_ROTATION_VERTICAL == nHandle )
- {
- sal_Int32 nNewAngleDegree = 0;
- if( rValue >>=nNewAngleDegree )
- {
- sal_Int32 nHorizontal, nVertical;
- ThreeDHelper::getRotationFromDiagram( const_cast< Diagram* >( this ), nHorizontal, nVertical );
- if( PROP_DIAGRAM_ROTATION_HORIZONTAL == nHandle )
- nHorizontal = nNewAngleDegree;
- else
- nVertical = nNewAngleDegree;
- ThreeDHelper::setRotationToDiagram( this, nHorizontal, nVertical );
- }
- }
- else
- ::property::OPropertySet::setFastPropertyValue( nHandle, rValue );
-}
-
-void SAL_CALL Diagram::getFastPropertyValue( Any& rValue, sal_Int32 nHandle ) const
-{
- //special treatment for some 3D properties
- if( nHandle == PROP_DIAGRAM_PERSPECTIVE )
- {
- sal_Int32 nPerspective = ::basegfx::fround( ThreeDHelper::CameraDistanceToPerspective(
- ThreeDHelper::getCameraDistance( const_cast< Diagram* >( this ) ) ) );
- rValue = uno::makeAny(nPerspective);
- }
- else if( PROP_DIAGRAM_ROTATION_HORIZONTAL == nHandle
- || PROP_DIAGRAM_ROTATION_VERTICAL == nHandle )
- {
- sal_Int32 nHorizontal, nVertical;
- ThreeDHelper::getRotationFromDiagram( const_cast< Diagram* >( this ), nHorizontal, nVertical );
- sal_Int32 nAngleDegree = 0;
- if( PROP_DIAGRAM_ROTATION_HORIZONTAL == nHandle )
- nAngleDegree = nHorizontal;
- else
- nAngleDegree = nVertical;
- rValue = uno::makeAny(nAngleDegree);
- }
- else
- ::property::OPropertySet::getFastPropertyValue( rValue,nHandle );
-}
-
-// ================================================================================
-
-using impl::Diagram_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( Diagram, Diagram_Base, ::property::OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( Diagram, Diagram_Base, ::property::OPropertySet )
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( Diagram,
- C2U( "com.sun.star.comp.chart2.Diagram" ));
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/FormattedString.cxx b/chart2/source/model/main/FormattedString.cxx
deleted file mode 100644
index 94f43c3c1..000000000
--- a/chart2/source/model/main/FormattedString.cxx
+++ /dev/null
@@ -1,266 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "FormattedString.hxx"
-#include "ContainerHelper.hxx"
-
-#include "CharacterProperties.hxx"
-#include "PropertyHelper.hxx"
-#include "macros.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-
-using namespace ::com::sun::star;
-
-using ::rtl::OUString;
-using ::com::sun::star::beans::Property;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Any;
-using ::osl::MutexGuard;
-
-namespace
-{
-
-struct StaticFormattedStringDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::CharacterProperties::AddDefaultsToMap( rOutMap );
- }
-};
-
-struct StaticFormattedStringDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticFormattedStringDefaults_Initializer >
-{
-};
-
-struct StaticFormattedStringInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- ::chart::CharacterProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-
-};
-
-struct StaticFormattedStringInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticFormattedStringInfoHelper_Initializer >
-{
-};
-
-struct StaticFormattedStringInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticFormattedStringInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticFormattedStringInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticFormattedStringInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-namespace chart
-{
-
-FormattedString::FormattedString(
- uno::Reference< uno::XComponentContext > const & /* xContext */ ) :
- ::property::OPropertySet( m_aMutex ),
- m_aString(),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-FormattedString::FormattedString( const FormattedString & rOther ) :
- MutexContainer(),
- impl::FormattedString_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_aString( rOther.m_aString ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-FormattedString::~FormattedString()
-{}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL FormattedString::createClone()
- throw (uno::RuntimeException)
-{
- return uno::Reference< util::XCloneable >( new FormattedString( *this ));
-}
-
-// ____ XFormattedString ____
-::rtl::OUString SAL_CALL FormattedString::getString()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex());
- return m_aString;
-}
-
-void SAL_CALL FormattedString::setString( const ::rtl::OUString& String )
- throw (uno::RuntimeException)
-{
- {
- MutexGuard aGuard( GetMutex());
- m_aString = String;
- }
- //don't keep the mutex locked while calling out
- fireModifyEvent();
-
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL FormattedString::addModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL FormattedString::removeModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL FormattedString::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL FormattedString::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void FormattedString::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void FormattedString::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-
-// ----------------------------------------
-
-Sequence< OUString > FormattedString::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 2 );
-
- aServices[ 0 ] = C2U( "com.sun.star.chart2.FormattedString" );
- aServices[ 1 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// ____ OPropertySet ____
-uno::Any FormattedString::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticFormattedStringDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-// ____ OPropertySet ____
-::cppu::IPropertyArrayHelper & SAL_CALL FormattedString::getInfoHelper()
-{
- return *StaticFormattedStringInfoHelper::get();
-}
-
-
-// ____ XPropertySet ____
-uno::Reference< beans::XPropertySetInfo > SAL_CALL FormattedString::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticFormattedStringInfo::get();
-}
-
-// ================================================================================
-
-using impl::FormattedString_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( FormattedString, FormattedString_Base, ::property::OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( FormattedString, FormattedString_Base, ::property::OPropertySet )
-
-// do this in derived classes!
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( FormattedString,
- C2U( "com.sun.star.comp.chart.FormattedString" ));
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/FormattedString.hxx b/chart2/source/model/main/FormattedString.hxx
deleted file mode 100644
index f3a2fdcaa..000000000
--- a/chart2/source/model/main/FormattedString.hxx
+++ /dev/null
@@ -1,136 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_FORMATTEDSTRING_HXX
-#define CHART_FORMATTEDSTRING_HXX
-
-#include "MutexContainer.hxx"
-#include "OPropertySet.hxx"
-#include <cppuhelper/implbase5.hxx>
-#include <comphelper/uno3.hxx>
-#include "ServiceMacros.hxx"
-#include "ModifyListenerHelper.hxx"
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/chart2/XFormattedString.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper5<
- ::com::sun::star::chart2::XFormattedString,
- ::com::sun::star::lang::XServiceInfo,
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener >
- FormattedString_Base;
-}
-
-class FormattedString :
- public MutexContainer,
- public impl::FormattedString_Base,
- public ::property::OPropertySet
-{
-public:
- FormattedString( ::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext > const & xContext );
- virtual ~FormattedString();
-
- /// declare XServiceInfo methods
- APPHELPER_XSERVICEINFO_DECL()
- /// establish methods for factory instatiation
- APPHELPER_SERVICE_FACTORY_HELPER( FormattedString )
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
- /// merge XTypeProvider implementations
- DECLARE_XTYPEPROVIDER()
-
-protected:
- explicit FormattedString( const FormattedString & rOther );
-
- // ____ XFormattedString ____
- virtual ::rtl::OUString SAL_CALL getString()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setString( const ::rtl::OUString& String )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
-
- // ____ OPropertySet ____
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private:
- ::rtl::OUString m_aString;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
-};
-
-} // namespace chart
-
-// CHART_FORMATTEDSTRING_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/GridProperties.cxx b/chart2/source/model/main/GridProperties.cxx
deleted file mode 100644
index 1d159e638..000000000
--- a/chart2/source/model/main/GridProperties.cxx
+++ /dev/null
@@ -1,277 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-
-#include "GridProperties.hxx"
-#include "LineProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "PropertyHelper.hxx"
-#include "macros.hxx"
-#include "ContainerHelper.hxx"
-#include <com/sun/star/style/XStyle.hpp>
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/uno/Sequence.hxx>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::beans::Property;
-using ::osl::MutexGuard;
-using ::rtl::OUString;
-
-// ____________________________________________________________
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.GridProperties" ));
-
-enum
-{
- PROP_GRID_SHOW
-};
-
-void lcl_AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- rOutProperties.push_back(
- Property( C2U( "Show" ),
- PROP_GRID_SHOW,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-}
-
-struct StaticGridDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::LineProperties::AddDefaultsToMap( rOutMap );
-
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_GRID_SHOW, false );
-
- // override other defaults
- ::chart::PropertyHelper::setPropertyValue< sal_Int32 >(
- rOutMap, ::chart::LineProperties::PROP_LINE_COLOR, 0xb3b3b3 ); // gray30
- }
-};
-
-struct StaticGridDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticGridDefaults_Initializer >
-{
-};
-
-struct StaticGridInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< Property > aProperties;
- lcl_AddPropertiesToVector( aProperties );
- ::chart::LineProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-
-
-};
-
-struct StaticGridInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticGridInfoHelper_Initializer >
-{
-};
-
-struct StaticGridInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticGridInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticGridInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticGridInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-// ____________________________________________________________
-
-namespace chart
-{
-
-GridProperties::GridProperties( Reference< uno::XComponentContext > const & /* xContext */ ) :
- ::property::OPropertySet( m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
-}
-
-GridProperties::GridProperties() :
- ::property::OPropertySet( m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-GridProperties::GridProperties( const GridProperties & rOther ) :
- MutexContainer(),
- impl::GridProperties_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
-}
-
-GridProperties::~GridProperties()
-{}
-
-// ____ OPropertySet ____
-uno::Any GridProperties::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticGridDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL GridProperties::getInfoHelper()
-{
- return *StaticGridInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-Reference< beans::XPropertySetInfo > SAL_CALL GridProperties::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticGridInfo::get();
-}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL GridProperties::createClone()
- throw (uno::RuntimeException)
-{
- return uno::Reference< util::XCloneable >( new GridProperties( *this ));
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL GridProperties::addModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL GridProperties::removeModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL GridProperties::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL GridProperties::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void GridProperties::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void GridProperties::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-// ================================================================================
-
-Sequence< OUString > GridProperties::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 2 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.GridProperties" );
- aServices[ 1 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( GridProperties, lcl_aServiceName );
-
-// needed by MSC compiler
-using impl::GridProperties_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( GridProperties, GridProperties_Base, ::property::OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( GridProperties, GridProperties_Base, ::property::OPropertySet )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/GridProperties.hxx b/chart2/source/model/main/GridProperties.hxx
deleted file mode 100644
index c26e90afb..000000000
--- a/chart2/source/model/main/GridProperties.hxx
+++ /dev/null
@@ -1,131 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_GRIDPROPERTIES_HXX
-#define CHART_GRIDPROPERTIES_HXX
-
-#include "ServiceMacros.hxx"
-#include <osl/mutex.hxx>
-#include <cppuhelper/implbase4.hxx>
-#include <comphelper/uno3.hxx>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-#include <com/sun/star/util/XModifyBroadcaster.hpp>
-#include <com/sun/star/util/XModifyListener.hpp>
-
-#include "OPropertySet.hxx"
-#include "MutexContainer.hxx"
-#include "ModifyListenerHelper.hxx"
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper4<
- ::com::sun::star::lang::XServiceInfo,
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener >
- GridProperties_Base;
-}
-
-class GridProperties :
- public MutexContainer,
- public impl::GridProperties_Base,
- public ::property::OPropertySet
-{
-public:
- GridProperties( ::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext > const & xContext );
- explicit GridProperties();
- virtual ~GridProperties();
-
- /// establish methods for factory instatiation
- APPHELPER_SERVICE_FACTORY_HELPER( GridProperties )
-
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
- /// merge XTypeProvider implementations
- DECLARE_XTYPEPROVIDER()
-
-protected:
- explicit GridProperties( const GridProperties & rOther );
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
-
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private:
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
-};
-
-} // namespace chart
-
-// CHART_GRIDPROPERTIES_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/Legend.cxx b/chart2/source/model/main/Legend.cxx
deleted file mode 100644
index 56449721c..000000000
--- a/chart2/source/model/main/Legend.cxx
+++ /dev/null
@@ -1,329 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "Legend.hxx"
-#include "macros.hxx"
-#include "LineProperties.hxx"
-#include "FillProperties.hxx"
-#include "CharacterProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "LegendHelper.hxx"
-#include "ContainerHelper.hxx"
-#include "CloneHelper.hxx"
-#include "PropertyHelper.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/awt/Size.hpp>
-#include <com/sun/star/chart2/LegendPosition.hpp>
-#include <com/sun/star/chart/ChartLegendExpansion.hpp>
-#include <com/sun/star/chart2/RelativePosition.hpp>
-#include <com/sun/star/chart2/RelativeSize.hpp>
-
-#include <algorithm>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::beans::PropertyAttribute;
-
-using ::rtl::OUString;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Any;
-using ::com::sun::star::beans::Property;
-
-namespace
-{
-
-static const OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.Legend" ));
-
-enum
-{
- PROP_LEGEND_ANCHOR_POSITION,
- PROP_LEGEND_EXPANSION,
- PROP_LEGEND_SHOW,
- PROP_LEGEND_REF_PAGE_SIZE,
- PROP_LEGEND_REL_POS,
- PROP_LEGEND_REL_SIZE
-};
-
-void lcl_AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- rOutProperties.push_back(
- Property( C2U( "AnchorPosition" ),
- PROP_LEGEND_ANCHOR_POSITION,
- ::getCppuType( reinterpret_cast< const chart2::LegendPosition * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "Expansion" ),
- PROP_LEGEND_EXPANSION,
- ::getCppuType( reinterpret_cast< const ::com::sun::star::chart::ChartLegendExpansion * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "Show" ),
- PROP_LEGEND_SHOW,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "ReferencePageSize" ),
- PROP_LEGEND_REF_PAGE_SIZE,
- ::getCppuType( reinterpret_cast< const awt::Size * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "RelativePosition" ),
- PROP_LEGEND_REL_POS,
- ::getCppuType( reinterpret_cast< const chart2::RelativePosition * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "RelativeSize" ),
- PROP_LEGEND_REL_SIZE,
- ::getCppuType( reinterpret_cast< const chart2::RelativeSize * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
-}
-
-struct StaticLegendDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::LineProperties::AddDefaultsToMap( rOutMap );
- ::chart::FillProperties::AddDefaultsToMap( rOutMap );
- ::chart::CharacterProperties::AddDefaultsToMap( rOutMap );
-
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_LEGEND_ANCHOR_POSITION, chart2::LegendPosition_LINE_END );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_LEGEND_EXPANSION, ::com::sun::star::chart::ChartLegendExpansion_HIGH );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_LEGEND_SHOW, true );
-
- float fDefaultCharHeight = 10.0;
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_CHAR_HEIGHT, fDefaultCharHeight );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_ASIAN_CHAR_HEIGHT, fDefaultCharHeight );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::CharacterProperties::PROP_CHAR_COMPLEX_CHAR_HEIGHT, fDefaultCharHeight );
- }
-};
-
-struct StaticLegendDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticLegendDefaults_Initializer >
-{
-};
-
-struct StaticLegendInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- lcl_AddPropertiesToVector( aProperties );
- ::chart::LineProperties::AddPropertiesToVector( aProperties );
- ::chart::FillProperties::AddPropertiesToVector( aProperties );
- ::chart::CharacterProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-};
-
-struct StaticLegendInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticLegendInfoHelper_Initializer >
-{
-};
-
-struct StaticLegendInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticLegendInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticLegendInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticLegendInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-namespace chart
-{
-
-Legend::Legend( Reference< uno::XComponentContext > const & /* xContext */ ) :
- ::property::OPropertySet( m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
-}
-
-Legend::Legend( const Legend & rOther ) :
- MutexContainer(),
- impl::Legend_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
-}
-
-Legend::~Legend()
-{
-}
-
-// ____ XCloneable ____
-Reference< util::XCloneable > SAL_CALL Legend::createClone()
- throw (uno::RuntimeException)
-{
- return Reference< util::XCloneable >( new Legend( *this ));
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL Legend::addModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL Legend::removeModifyListener( const Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL Legend::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL Legend::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void Legend::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void Legend::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-// ================================================================================
-
-Sequence< OUString > Legend::getSupportedServiceNames_Static()
-{
- const sal_Int32 nNumServices( 6 );
- sal_Int32 nI = 0;
- Sequence< OUString > aServices( nNumServices );
- aServices[ nI++ ] = C2U( "com.sun.star.chart2.Legend" );
- aServices[ nI++ ] = C2U( "com.sun.star.beans.PropertySet" );
- aServices[ nI++ ] = C2U( "com.sun.star.drawing.FillProperties" );
- aServices[ nI++ ] = C2U( "com.sun.star.drawing.LineProperties" );
- aServices[ nI++ ] = C2U( "com.sun.star.style.CharacterProperties" );
- aServices[ nI++ ] = C2U( "com.sun.star.layout.LayoutElement" );
- OSL_ASSERT( nNumServices == nI );
- return aServices;
-}
-
-// ____ OPropertySet ____
-Any Legend::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticLegendDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL Legend::getInfoHelper()
-{
- return *StaticLegendInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-Reference< beans::XPropertySetInfo > SAL_CALL Legend::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticLegendInfo::get();
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( Legend, lcl_aServiceName );
-
-// needed by MSC compiler
-using impl::Legend_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( Legend, Legend_Base, ::property::OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( Legend, Legend_Base, ::property::OPropertySet )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/Legend.hxx b/chart2/source/model/main/Legend.hxx
deleted file mode 100644
index 63031a8d0..000000000
--- a/chart2/source/model/main/Legend.hxx
+++ /dev/null
@@ -1,131 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_LEGEND_HXX
-#define CHART_LEGEND_HXX
-
-#include "ServiceMacros.hxx"
-#include "ModifyListenerHelper.hxx"
-#include "OPropertySet.hxx"
-#include "MutexContainer.hxx"
-#include <cppuhelper/implbase5.hxx>
-#include <comphelper/uno3.hxx>
-#include <com/sun/star/chart2/XLegend.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-#include <com/sun/star/util/XModifyBroadcaster.hpp>
-#include <com/sun/star/util/XModifyListener.hpp>
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper5<
- ::com::sun::star::chart2::XLegend,
- ::com::sun::star::lang::XServiceInfo,
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener >
- Legend_Base;
-}
-
-class Legend :
- public MutexContainer,
- public impl::Legend_Base,
- public ::property::OPropertySet
-{
-public:
- Legend( ::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext > const & xContext );
- virtual ~Legend();
-
- /// establish methods for factory instatiation
- APPHELPER_SERVICE_FACTORY_HELPER( Legend )
-
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
- /// merge XTypeProvider implementations
- DECLARE_XTYPEPROVIDER()
-
-protected:
- explicit Legend( const Legend & rOther );
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
-
- // ____ OPropertySet ____
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private:
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
-};
-
-} // namespace chart
-
-// CHART_LEGEND_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/PageBackground.cxx b/chart2/source/model/main/PageBackground.cxx
deleted file mode 100644
index 17c44d1b1..000000000
--- a/chart2/source/model/main/PageBackground.cxx
+++ /dev/null
@@ -1,252 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "PageBackground.hxx"
-#include "macros.hxx"
-#include "LineProperties.hxx"
-#include "FillProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "ContainerHelper.hxx"
-#include "PropertyHelper.hxx"
-
-#include <com/sun/star/drawing/LineStyle.hpp>
-#include <rtl/uuid.h>
-#include <cppuhelper/queryinterface.hxx>
-
-#include <vector>
-#include <algorithm>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::beans::Property;
-using ::osl::MutexGuard;
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.PageBackground" ));
-
-struct StaticPageBackgroundDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::LineProperties::AddDefaultsToMap( rOutMap );
- ::chart::FillProperties::AddDefaultsToMap( rOutMap );
-
- // override other defaults
- ::chart::PropertyHelper::setPropertyValue< sal_Int32 >( rOutMap, ::chart::FillProperties::PROP_FILL_COLOR, 0xffffff );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::LineProperties::PROP_LINE_STYLE, drawing::LineStyle_NONE );
- }
-};
-
-struct StaticPageBackgroundDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticPageBackgroundDefaults_Initializer >
-{
-};
-
-struct StaticPageBackgroundInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- uno::Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- ::chart::LineProperties::AddPropertiesToVector( aProperties );
- ::chart::FillProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-
-};
-
-struct StaticPageBackgroundInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticPageBackgroundInfoHelper_Initializer >
-{
-};
-
-struct StaticPageBackgroundInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticPageBackgroundInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticPageBackgroundInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticPageBackgroundInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-// ================================================================================
-
-namespace chart
-{
-
-PageBackground::PageBackground( const uno::Reference< uno::XComponentContext > & xContext ) :
- ::property::OPropertySet( m_aMutex ),
- m_xContext( xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-PageBackground::PageBackground( const PageBackground & rOther ) :
- MutexContainer(),
- impl::PageBackground_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xContext( rOther.m_xContext ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-PageBackground::~PageBackground()
-{}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL PageBackground::createClone()
- throw (uno::RuntimeException)
-{
- return uno::Reference< util::XCloneable >( new PageBackground( *this ));
-}
-
-// ================================================================================
-
-// ____ OPropertySet ____
-uno::Any PageBackground::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticPageBackgroundDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL PageBackground::getInfoHelper()
-{
- return *StaticPageBackgroundInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-uno::Reference< beans::XPropertySetInfo > SAL_CALL PageBackground::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticPageBackgroundInfo::get();
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL PageBackground::addModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL PageBackground::removeModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL PageBackground::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL PageBackground::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void PageBackground::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void PageBackground::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-// ================================================================================
-
-uno::Sequence< ::rtl::OUString > PageBackground::getSupportedServiceNames_Static()
-{
- uno::Sequence< ::rtl::OUString > aServices( 2 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.PageBackground" );
- aServices[ 1 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( PageBackground, lcl_aServiceName );
-
-using impl::PageBackground_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( PageBackground, PageBackground_Base, ::property::OPropertySet )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/PageBackground.hxx b/chart2/source/model/main/PageBackground.hxx
deleted file mode 100644
index bf9b9a3ed..000000000
--- a/chart2/source/model/main/PageBackground.hxx
+++ /dev/null
@@ -1,128 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_PAGEBACKGROUND_HXX
-#define CHART_PAGEBACKGROUND_HXX
-
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-#include "MutexContainer.hxx"
-#include "OPropertySet.hxx"
-#include <cppuhelper/implbase3.hxx>
-
-#include "ServiceMacros.hxx"
-#include "ModifyListenerHelper.hxx"
-#include <comphelper/uno3.hxx>
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper3<
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener >
- PageBackground_Base;
-}
-
-class PageBackground :
- public MutexContainer,
- public impl::PageBackground_Base,
- public ::property::OPropertySet
-{
-public:
- PageBackground( const ::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext > & xContext );
- virtual ~PageBackground();
-
- /// establish methods for factory instatiation
- APPHELPER_SERVICE_FACTORY_HELPER( PageBackground )
-
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
-
-protected:
- explicit PageBackground( const PageBackground & rOther );
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
-
- // ____ OPropertySet ____
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private:
- ::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext >
- m_xContext;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
-};
-
-} // namespace chart
-
-// CHART_PAGEBACKGROUND_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/PolarCoordinateSystem.cxx b/chart2/source/model/main/PolarCoordinateSystem.cxx
deleted file mode 100644
index 02c52e033..000000000
--- a/chart2/source/model/main/PolarCoordinateSystem.cxx
+++ /dev/null
@@ -1,158 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "PolarCoordinateSystem.hxx"
-#include "macros.hxx"
-#include "servicenames_coosystems.hxx"
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::uno::RuntimeException;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::rtl::OUString;
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceNamePolar2d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.chart2.PolarCoordinateSystem2d" ));
-static const ::rtl::OUString lcl_aServiceNamePolar3d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.chart2.PolarCoordinateSystem3d" ));
-
-static const ::rtl::OUString lcl_aImplementationNamePolar2d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.PolarCoordinateSystem2d" ));
-static const ::rtl::OUString lcl_aImplementationNamePolar3d(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.PolarCoordinateSystem3d" ));
-}
-
-namespace chart
-{
-
-// explicit
-PolarCoordinateSystem::PolarCoordinateSystem(
- const uno::Reference< uno::XComponentContext > & xContext,
- sal_Int32 nDimensionCount /* = 2 */,
- sal_Bool bSwapXAndYAxis /* = sal_False */ ) :
- BaseCoordinateSystem( xContext, nDimensionCount, bSwapXAndYAxis )
-{}
-
-PolarCoordinateSystem::PolarCoordinateSystem(
- const PolarCoordinateSystem & rSource ) :
- BaseCoordinateSystem( rSource )
-{}
-
-PolarCoordinateSystem::~PolarCoordinateSystem()
-{}
-
-// ____ XCoordinateSystem ____
-::rtl::OUString SAL_CALL PolarCoordinateSystem::getCoordinateSystemType()
- throw (RuntimeException)
-{
- return CHART2_COOSYSTEM_POLAR_SERVICE_NAME;
-}
-
-::rtl::OUString SAL_CALL PolarCoordinateSystem::getViewServiceName()
- throw (RuntimeException)
-{
- return CHART2_COOSYSTEM_POLAR_VIEW_SERVICE_NAME;
-}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL PolarCoordinateSystem::createClone()
- throw (RuntimeException)
-{
- return Reference< util::XCloneable >( new PolarCoordinateSystem( *this ));
-}
-
-// ____ XServiceInfo ____
-Sequence< OUString > PolarCoordinateSystem::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 1 );
- aServices[ 0 ] = CHART2_COOSYSTEM_POLAR_SERVICE_NAME;
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( PolarCoordinateSystem,
- C2U( "com.sun.star.comp.chart.PolarCoordinateSystem" ))
-
-
-// =================================
-// ==== PolarCoordinateSystem2d ====
-// =================================
-
-PolarCoordinateSystem2d::PolarCoordinateSystem2d(
- const uno::Reference< uno::XComponentContext > & xContext ) :
- PolarCoordinateSystem( xContext, 2, sal_False )
-{}
-
-PolarCoordinateSystem2d::~PolarCoordinateSystem2d()
-{}
-
-// ____ XServiceInfo ____
-Sequence< OUString > PolarCoordinateSystem2d::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 2 );
- aServices[ 0 ] = CHART2_COOSYSTEM_POLAR_SERVICE_NAME;
- aServices[ 1 ] = lcl_aServiceNamePolar2d;
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( PolarCoordinateSystem2d, lcl_aImplementationNamePolar2d )
-
-// =================================
-// ==== PolarCoordinateSystem3d ====
-// =================================
-
-PolarCoordinateSystem3d::PolarCoordinateSystem3d(
- const uno::Reference< uno::XComponentContext > & xContext ) :
- PolarCoordinateSystem( xContext, 3, sal_False )
-{}
-
-PolarCoordinateSystem3d::~PolarCoordinateSystem3d()
-{}
-
-// ____ XServiceInfo ____
-Sequence< OUString > PolarCoordinateSystem3d::getSupportedServiceNames_Static()
-{
- Sequence< OUString > aServices( 2 );
- aServices[ 0 ] = CHART2_COOSYSTEM_POLAR_SERVICE_NAME;
- aServices[ 1 ] = lcl_aServiceNamePolar3d;
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( PolarCoordinateSystem3d, lcl_aImplementationNamePolar3d )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/StockBar.cxx b/chart2/source/model/main/StockBar.cxx
deleted file mode 100644
index 031f70544..000000000
--- a/chart2/source/model/main/StockBar.cxx
+++ /dev/null
@@ -1,264 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-
-#include "StockBar.hxx"
-#include "LineProperties.hxx"
-#include "FillProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "PropertyHelper.hxx"
-#include "macros.hxx"
-#include "ContainerHelper.hxx"
-#include "ModifyListenerHelper.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/style/XStyle.hpp>
-#include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/uno/Sequence.hxx>
-
-#include <algorithm>
-
-using namespace ::com::sun::star;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::beans::Property;
-using ::osl::MutexGuard;
-
-// ____________________________________________________________
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.StockBar" ));
-
-struct StaticStockBarInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- uno::Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- ::chart::LineProperties::AddPropertiesToVector( aProperties );
- ::chart::FillProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-
-};
-
-struct StaticStockBarInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticStockBarInfoHelper_Initializer >
-{
-};
-
-struct StaticStockBarInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticStockBarInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticStockBarInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticStockBarInfo_Initializer >
-{
-};
-
-struct StaticStockBarDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::LineProperties::AddDefaultsToMap( rOutMap );
- ::chart::FillProperties::AddDefaultsToMap( rOutMap );
-
- // override other defaults
- ::chart::PropertyHelper::setPropertyValue< sal_Int32 >( rOutMap, ::chart::FillProperties::PROP_FILL_COLOR, 0xffffff ); // white
- }
-};
-
-struct StaticStockBarDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticStockBarDefaults_Initializer >
-{
-};
-
-} // anonymous namespace
-
-// ____________________________________________________________
-
-namespace chart
-{
-
-StockBar::StockBar( bool bRisingCourse ) :
- ::property::OPropertySet( m_aMutex ),
- m_bRisingCourse( bRisingCourse ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
- if( ! m_bRisingCourse )
- {
- setFastPropertyValue_NoBroadcast(
- ::chart::FillProperties::PROP_FILL_COLOR,
- uno::makeAny( sal_Int32( 0x000000 ))); // black
- setFastPropertyValue_NoBroadcast(
- ::chart::LineProperties::PROP_LINE_COLOR,
- uno::makeAny( sal_Int32( 0xb3b3b3 ))); // gray30
- }
-}
-
-StockBar::StockBar( const StockBar & rOther ) :
- MutexContainer(),
- impl::StockBar_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_bRisingCourse( rOther.m_bRisingCourse ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-StockBar::~StockBar()
-{}
-
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL StockBar::createClone()
- throw (uno::RuntimeException)
-{
- return uno::Reference< util::XCloneable >( new StockBar( *this ));
-}
-
-// ____ OPropertySet ____
-uno::Any StockBar::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticStockBarDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL StockBar::getInfoHelper()
-{
- return *StaticStockBarInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-Reference< beans::XPropertySetInfo > SAL_CALL StockBar::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticStockBarInfo::get();
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL StockBar::addModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL StockBar::removeModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL StockBar::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL StockBar::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void StockBar::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void StockBar::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-// ================================================================================
-
-uno::Sequence< ::rtl::OUString > StockBar::getSupportedServiceNames_Static()
-{
- uno::Sequence< ::rtl::OUString > aServices( 2 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.StockBar" );
- aServices[ 1 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( StockBar, lcl_aServiceName );
-
-using impl::StockBar_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( StockBar, StockBar_Base, ::property::OPropertySet )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/Title.cxx b/chart2/source/model/main/Title.cxx
deleted file mode 100644
index d1e3a9e47..000000000
--- a/chart2/source/model/main/Title.cxx
+++ /dev/null
@@ -1,409 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "Title.hxx"
-#include "macros.hxx"
-#include "FormattedString.hxx"
-#include "LineProperties.hxx"
-#include "FillProperties.hxx"
-#include "ContainerHelper.hxx"
-#include "CloneHelper.hxx"
-#include "PropertyHelper.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/style/ParagraphAdjust.hpp>
-#include <com/sun/star/drawing/FillStyle.hpp>
-#include <com/sun/star/drawing/LineStyle.hpp>
-#include <com/sun/star/chart2/RelativePosition.hpp>
-#include <com/sun/star/awt/Size.hpp>
-#include <rtl/uuid.h>
-#include <cppuhelper/queryinterface.hxx>
-
-#include <vector>
-#include <algorithm>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::beans::PropertyAttribute;
-
-using ::com::sun::star::beans::Property;
-using ::osl::MutexGuard;
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.Title" ));
-
-enum
-{
- PROP_TITLE_PARA_ADJUST,
- PROP_TITLE_PARA_LAST_LINE_ADJUST,
- PROP_TITLE_PARA_LEFT_MARGIN,
- PROP_TITLE_PARA_RIGHT_MARGIN,
- PROP_TITLE_PARA_TOP_MARGIN,
- PROP_TITLE_PARA_BOTTOM_MARGIN,
- PROP_TITLE_PARA_IS_HYPHENATION,
-
- PROP_TITLE_TEXT_ROTATION,
- PROP_TITLE_TEXT_STACKED,
- PROP_TITLE_REL_POS,
-
- PROP_TITLE_REF_PAGE_SIZE
-};
-
-void lcl_AddPropertiesToVector(
- ::std::vector< Property > & rOutProperties )
-{
- rOutProperties.push_back(
- Property( C2U( "ParaAdjust" ),
- PROP_TITLE_PARA_ADJUST,
- ::getCppuType( reinterpret_cast< ::com::sun::star::style::ParagraphAdjust * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ParaLastLineAdjust" ),
- PROP_TITLE_PARA_LAST_LINE_ADJUST,
- ::getCppuType( reinterpret_cast< sal_Int16 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ParaLeftMargin" ),
- PROP_TITLE_PARA_LEFT_MARGIN,
- ::getCppuType( reinterpret_cast< sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ParaRightMargin" ),
- PROP_TITLE_PARA_RIGHT_MARGIN,
- ::getCppuType( reinterpret_cast< sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ParaTopMargin" ),
- PROP_TITLE_PARA_TOP_MARGIN,
- ::getCppuType( reinterpret_cast< sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ParaBottomMargin" ),
- PROP_TITLE_PARA_BOTTOM_MARGIN,
- ::getCppuType( reinterpret_cast< sal_Int32 * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "ParaIsHyphenation" ),
- PROP_TITLE_PARA_IS_HYPHENATION,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "TextRotation" ),
- PROP_TITLE_TEXT_ROTATION,
- ::getCppuType( reinterpret_cast< const double * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
- rOutProperties.push_back(
- Property( C2U( "StackCharacters" ),
- PROP_TITLE_TEXT_STACKED,
- ::getBooleanCppuType(),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEDEFAULT ));
-
- rOutProperties.push_back(
- Property( C2U( "RelativePosition" ),
- PROP_TITLE_REL_POS,
- ::getCppuType( reinterpret_cast< const chart2::RelativePosition * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-
- rOutProperties.push_back(
- Property( C2U( "ReferencePageSize" ),
- PROP_TITLE_REF_PAGE_SIZE,
- ::getCppuType( reinterpret_cast< const awt::Size * >(0)),
- beans::PropertyAttribute::BOUND
- | beans::PropertyAttribute::MAYBEVOID ));
-}
-
-struct StaticTitleDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::LineProperties::AddDefaultsToMap( rOutMap );
- ::chart::FillProperties::AddDefaultsToMap( rOutMap );
-
- // ParagraphProperties
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_TITLE_PARA_ADJUST,
- ::com::sun::star::style::ParagraphAdjust_CENTER );
- // PROP_TITLE_PARA_LAST_LINE_ADJUST
-
- ::chart::PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_TITLE_PARA_LEFT_MARGIN, 0 );
- ::chart::PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_TITLE_PARA_RIGHT_MARGIN, 0 );
- ::chart::PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_TITLE_PARA_TOP_MARGIN, 0 );
- ::chart::PropertyHelper::setPropertyValueDefault< sal_Int32 >( rOutMap, PROP_TITLE_PARA_BOTTOM_MARGIN, 0 );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_TITLE_PARA_IS_HYPHENATION, true );
-
- // own properties
- ::chart::PropertyHelper::setPropertyValueDefault< double >( rOutMap, PROP_TITLE_TEXT_ROTATION, 0.0 );
- ::chart::PropertyHelper::setPropertyValueDefault( rOutMap, PROP_TITLE_TEXT_STACKED, false );
-
- // override other defaults
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::FillProperties::PROP_FILL_STYLE, drawing::FillStyle_NONE );
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::LineProperties::PROP_LINE_STYLE, drawing::LineStyle_NONE );
- }
-};
-
-struct StaticTitleDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticTitleDefaults_Initializer >
-{
-};
-
-struct StaticTitleInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- uno::Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- lcl_AddPropertiesToVector( aProperties );
- ::chart::LineProperties::AddPropertiesToVector( aProperties );
- ::chart::FillProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-
-
-};
-
-struct StaticTitleInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticTitleInfoHelper_Initializer >
-{
-};
-
-struct StaticTitleInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticTitleInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticTitleInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticTitleInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-// ================================================================================
-
-namespace chart
-{
-
-Title::Title( uno::Reference< uno::XComponentContext > const & /* xContext */ ) :
- ::property::OPropertySet( m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-Title::Title( const Title & rOther ) :
- MutexContainer(),
- impl::Title_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{
- CloneHelper::CloneRefSequence< uno::Reference< chart2::XFormattedString > >(
- rOther.m_aStrings, m_aStrings );
- ModifyListenerHelper::addListenerToAllElements(
- ContainerHelper::SequenceToVector( m_aStrings ), m_xModifyEventForwarder );
-}
-
-Title::~Title()
-{
- ModifyListenerHelper::removeListenerFromAllElements(
- ContainerHelper::SequenceToVector( m_aStrings ), m_xModifyEventForwarder );
-}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL Title::createClone()
- throw (uno::RuntimeException)
-{
- return uno::Reference< util::XCloneable >( new Title( *this ));
-}
-
-// --------------------------------------------------------------------------------
-
-// ____ XTitle ____
-uno::Sequence< uno::Reference< chart2::XFormattedString > > SAL_CALL Title::getText()
- throw (uno::RuntimeException)
-{
- MutexGuard aGuard( GetMutex() );
- return m_aStrings;
-}
-
-void SAL_CALL Title::setText( const uno::Sequence< uno::Reference< chart2::XFormattedString > >& rNewStrings )
- throw (uno::RuntimeException)
-{
- uno::Sequence< uno::Reference< chart2::XFormattedString > > aOldStrings;
- {
- MutexGuard aGuard( GetMutex() );
- std::swap( m_aStrings, aOldStrings );
- m_aStrings = rNewStrings;
- }
- //don't keep the mutex locked while calling out
- ModifyListenerHelper::removeListenerFromAllElements(
- ContainerHelper::SequenceToVector( aOldStrings ), m_xModifyEventForwarder );
- ModifyListenerHelper::addListenerToAllElements(
- ContainerHelper::SequenceToVector( rNewStrings ), m_xModifyEventForwarder );
- fireModifyEvent();
-}
-
-// ================================================================================
-
-// ____ OPropertySet ____
-uno::Any Title::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticTitleDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL Title::getInfoHelper()
-{
- return *StaticTitleInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-uno::Reference< beans::XPropertySetInfo > SAL_CALL Title::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticTitleInfo::get();
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL Title::addModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL Title::removeModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL Title::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL Title::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void Title::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void Title::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-
-// ================================================================================
-
-uno::Sequence< ::rtl::OUString > Title::getSupportedServiceNames_Static()
-{
- uno::Sequence< ::rtl::OUString > aServices( 4 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.Title" );
- aServices[ 1 ] = C2U( "com.sun.star.style.ParagraphProperties" );
- aServices[ 2 ] = C2U( "com.sun.star.beans.PropertySet" );
- aServices[ 3 ] = C2U( "com.sun.star.layout.LayoutElement" );
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( Title, lcl_aServiceName );
-
-// needed by MSC compiler
-using impl::Title_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( Title, Title_Base, ::property::OPropertySet )
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( Title, Title_Base, ::property::OPropertySet )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/Title.hxx b/chart2/source/model/main/Title.hxx
deleted file mode 100644
index 1d5ef366b..000000000
--- a/chart2/source/model/main/Title.hxx
+++ /dev/null
@@ -1,143 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_TITLE_HXX
-#define CHART_TITLE_HXX
-
-#include "ServiceMacros.hxx"
-#include "ModifyListenerHelper.hxx"
-#include "OPropertySet.hxx"
-#include "MutexContainer.hxx"
-#include <cppuhelper/implbase5.hxx>
-#include <comphelper/uno3.hxx>
-#include <com/sun/star/chart2/XTitle.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
-#include <com/sun/star/util/XCloneable.hpp>
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper5<
- ::com::sun::star::chart2::XTitle,
- ::com::sun::star::lang::XServiceInfo,
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener >
- Title_Base;
-}
-
-class Title :
- public MutexContainer,
- public impl::Title_Base,
- public ::property::OPropertySet
-{
-public:
- Title( ::com::sun::star::uno::Reference<
- ::com::sun::star::uno::XComponentContext > const & xContext );
- virtual ~Title();
-
- /// establish methods for factory instatiation
- APPHELPER_SERVICE_FACTORY_HELPER( Title )
-
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
- /// merge XTypeProvider implementations
- DECLARE_XTYPEPROVIDER()
-
-protected:
- explicit Title( const Title & rOther );
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
-
- // ____ OPropertySet ____
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XTitle ____
- virtual ::com::sun::star::uno::Sequence<
- ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XFormattedString > > SAL_CALL getText()
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setText( const ::com::sun::star::uno::Sequence<
- ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XFormattedString > >& Strings )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private:
- ::com::sun::star::uno::Sequence<
- ::com::sun::star::uno::Reference<
- ::com::sun::star::chart2::XFormattedString > > m_aStrings;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
-};
-
-} // namespace chart
-
-// CHART_TITLE_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/UndoManager.cxx b/chart2/source/model/main/UndoManager.cxx
deleted file mode 100644
index 44056b118..000000000
--- a/chart2/source/model/main/UndoManager.cxx
+++ /dev/null
@@ -1,427 +0,0 @@
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include "precompiled_chart2.hxx"
-
-#include "UndoManager.hxx"
-#include "ChartViewHelper.hxx"
-
-/** === begin UNO includes === **/
-#include <com/sun/star/lang/DisposedException.hpp>
-/** === end UNO includes === **/
-
-#include <framework/undomanagerhelper.hxx>
-#include <svl/undo.hxx>
-#include <unotools/undoopt.hxx>
-
-//......................................................................................................................
-namespace chart
-{
-//......................................................................................................................
-
- /** === begin UNO using === **/
- using ::com::sun::star::uno::Reference;
- using ::com::sun::star::uno::XInterface;
- using ::com::sun::star::uno::UNO_QUERY;
- using ::com::sun::star::uno::UNO_QUERY_THROW;
- using ::com::sun::star::uno::UNO_SET_THROW;
- using ::com::sun::star::uno::Exception;
- using ::com::sun::star::uno::RuntimeException;
- using ::com::sun::star::uno::Any;
- using ::com::sun::star::uno::makeAny;
- using ::com::sun::star::uno::Sequence;
- using ::com::sun::star::uno::Type;
- using ::com::sun::star::lang::DisposedException;
- using ::com::sun::star::document::XUndoManager;
- using ::com::sun::star::document::EmptyUndoStackException;
- using ::com::sun::star::document::UndoContextNotClosedException;
- using ::com::sun::star::document::UndoFailedException;
- using ::com::sun::star::util::InvalidStateException;
- using ::com::sun::star::document::XUndoAction;
- using ::com::sun::star::lang::IllegalArgumentException;
- using ::com::sun::star::document::XUndoManagerListener;
- using ::com::sun::star::util::NotLockedException;
- using ::com::sun::star::lang::NoSupportException;
- using ::com::sun::star::util::XModifyListener;
- using ::com::sun::star::frame::XModel;
- /** === end UNO using === **/
-
- namespace impl
- {
- //==============================================================================================================
- //= UndoManager_Impl
- //==============================================================================================================
- class UndoManager_Impl : public ::framework::IUndoManagerImplementation
- {
- public:
- UndoManager_Impl( UndoManager& i_antiImpl, ::cppu::OWeakObject& i_parent, ::osl::Mutex& i_mutex )
- :m_rAntiImpl( i_antiImpl )
- ,m_rParent( i_parent )
- ,m_rMutex( i_mutex )
- ,m_bDisposed( false )
- ,m_aUndoManager()
- ,m_aUndoHelper( *this )
- {
- m_aUndoManager.SetMaxUndoActionCount( (sal_uInt16)SvtUndoOptions().GetUndoCount() );
- }
-
- virtual ~UndoManager_Impl()
- {
- }
-
- // .........................................................................................................
- // IUndoManagerImplementation
- virtual ::osl::Mutex& getMutex();
- virtual ::svl::IUndoManager& getImplUndoManager();
- virtual Reference< XUndoManager > getThis();
-
- // .........................................................................................................
- // attribute access
- ::cppu::OWeakObject& getParent() { return m_rParent; }
- ::framework::UndoManagerHelper& getUndoHelper() { return m_aUndoHelper; }
-
- // .........................................................................................................
- // public interface
-
- /// is called when the owner of the UndoManager is being disposed
- void disposing();
-
- /// checks whether we're already disposed, throws a DisposedException if so
- void checkDisposed_lck();
-
- private:
- UndoManager& m_rAntiImpl;
- ::cppu::OWeakObject& m_rParent;
- ::osl::Mutex& m_rMutex;
- bool m_bDisposed;
-
- SfxUndoManager m_aUndoManager;
- ::framework::UndoManagerHelper m_aUndoHelper;
- };
-
- //--------------------------------------------------------------------------------------------------------------
- ::osl::Mutex& UndoManager_Impl::getMutex()
- {
- return m_rMutex;
- }
-
- //--------------------------------------------------------------------------------------------------------------
- ::svl::IUndoManager& UndoManager_Impl::getImplUndoManager()
- {
- return m_aUndoManager;
- }
-
- //--------------------------------------------------------------------------------------------------------------
- Reference< XUndoManager > UndoManager_Impl::getThis()
- {
- return &m_rAntiImpl;
- }
-
- //--------------------------------------------------------------------------------------------------------------
- void UndoManager_Impl::disposing()
- {
- {
- ::osl::MutexGuard aGuard( m_rMutex );
- m_bDisposed = true;
- }
- m_aUndoHelper.disposing();
- }
-
- //--------------------------------------------------------------------------------------------------------------
- void UndoManager_Impl::checkDisposed_lck()
- {
- if ( m_bDisposed )
- throw DisposedException( ::rtl::OUString(), getThis() );
- }
-
- //==============================================================================================================
- //= UndoManagerMethodGuard
- //==============================================================================================================
- /** guard for public UNO methods of the UndoManager
-
- The only purpose of this guard is to check for the instance being disposed already. Everything else,
- in particular the IMutexGuard functionality required by the UndoManagerHelper class, is a dummy only,
- as all involved classes (means we ourselves, the UndoManagerHelper, the SfxUndoManager, and the Undo actions
- we create) are inherently thread-safe, thus need no external lock (in particular no SolarMutex!).
- */
- class UndoManagerMethodGuard : public ::framework::IMutexGuard
- {
- public:
- UndoManagerMethodGuard( UndoManager_Impl& i_impl )
- {
- ::osl::MutexGuard aGuard( i_impl.getMutex() );
- // throw if the instance is already disposed
- i_impl.checkDisposed_lck();
- }
- virtual ~UndoManagerMethodGuard()
- {
- }
-
- // IMutexGuard
- virtual ::framework::IMutex& getGuardedMutex();
-
- // IGuard
- virtual void clear();
- virtual void reset();
- };
-
- class DummyMutex : public ::framework::IMutex
- {
- public:
- virtual void acquire() { }
- virtual void release() { }
- };
-
- //--------------------------------------------------------------------------------------------------------------
- ::framework::IMutex& UndoManagerMethodGuard::getGuardedMutex()
- {
- static DummyMutex s_aDummyMutex;
- return s_aDummyMutex;
- }
-
- //--------------------------------------------------------------------------------------------------------------
- void UndoManagerMethodGuard::clear()
- {
- // nothing to do. This interface implementation is a dummy.
- }
-
- //--------------------------------------------------------------------------------------------------------------
- void UndoManagerMethodGuard::reset()
- {
- // nothing to do. This interface implementation is a dummy.
- }
- }
-
- //==================================================================================================================
- //= UndoManager
- //==================================================================================================================
- using impl::UndoManagerMethodGuard;
-
- //------------------------------------------------------------------------------------------------------------------
- UndoManager::UndoManager( ::cppu::OWeakObject& i_parent, ::osl::Mutex& i_mutex )
- :m_pImpl( new impl::UndoManager_Impl( *this, i_parent, i_mutex ) )
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- UndoManager::~UndoManager()
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::acquire() throw ()
- {
- m_pImpl->getParent().acquire();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::release() throw ()
- {
- m_pImpl->getParent().release();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void UndoManager::disposing()
- {
- m_pImpl->disposing();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::enterUndoContext( const ::rtl::OUString& i_title ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().enterUndoContext( i_title, aGuard );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::enterHiddenUndoContext( ) throw (EmptyUndoStackException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().enterHiddenUndoContext( aGuard );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::leaveUndoContext( ) throw (InvalidStateException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().leaveUndoContext( aGuard );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::addUndoAction( const Reference< XUndoAction >& i_action ) throw (IllegalArgumentException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().addUndoAction( i_action, aGuard );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::undo( ) throw (EmptyUndoStackException, UndoContextNotClosedException, UndoFailedException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().undo( aGuard );
-
- ChartViewHelper::setViewToDirtyState( Reference< XModel >( getParent(), UNO_QUERY ) );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::redo( ) throw (EmptyUndoStackException, UndoContextNotClosedException, UndoFailedException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().redo( aGuard );
-
- ChartViewHelper::setViewToDirtyState( Reference< XModel >( getParent(), UNO_QUERY ) );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- ::sal_Bool SAL_CALL UndoManager::isUndoPossible( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getUndoHelper().isUndoPossible();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- ::sal_Bool SAL_CALL UndoManager::isRedoPossible( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getUndoHelper().isRedoPossible();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL UndoManager::getCurrentUndoActionTitle( ) throw (EmptyUndoStackException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getUndoHelper().getCurrentUndoActionTitle();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL UndoManager::getCurrentRedoActionTitle( ) throw (EmptyUndoStackException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getUndoHelper().getCurrentRedoActionTitle();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Sequence< ::rtl::OUString > SAL_CALL UndoManager::getAllUndoActionTitles( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getUndoHelper().getAllUndoActionTitles();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Sequence< ::rtl::OUString > SAL_CALL UndoManager::getAllRedoActionTitles( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getUndoHelper().getAllRedoActionTitles();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::clear( ) throw (UndoContextNotClosedException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().clear( aGuard );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::clearRedo( ) throw (UndoContextNotClosedException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().clearRedo( aGuard );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::reset( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().reset( aGuard );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::addUndoManagerListener( const Reference< XUndoManagerListener >& i_listener ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().addUndoManagerListener( i_listener );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::removeUndoManagerListener( const Reference< XUndoManagerListener >& i_listener ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().removeUndoManagerListener( i_listener );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::lock( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().lock();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::unlock( ) throw (NotLockedException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().unlock();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- ::sal_Bool SAL_CALL UndoManager::isLocked( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getUndoHelper().isLocked();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XInterface > SAL_CALL UndoManager::getParent( ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- return *&m_pImpl->getParent();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::setParent( const Reference< XInterface >& i_parent ) throw (NoSupportException, RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- (void)i_parent;
- throw NoSupportException( ::rtl::OUString(), m_pImpl->getThis() );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::addModifyListener( const Reference< XModifyListener >& i_listener ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().addModifyListener( i_listener );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL UndoManager::removeModifyListener( const Reference< XModifyListener >& i_listener ) throw (RuntimeException)
- {
- UndoManagerMethodGuard aGuard( *m_pImpl );
- m_pImpl->getUndoHelper().removeModifyListener( i_listener );
- }
-
-//......................................................................................................................
-} // namespace chart
-//......................................................................................................................
diff --git a/chart2/source/model/main/UndoManager.hxx b/chart2/source/model/main/UndoManager.hxx
deleted file mode 100644
index 07091207e..000000000
--- a/chart2/source/model/main/UndoManager.hxx
+++ /dev/null
@@ -1,109 +0,0 @@
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef CHART2_UNDOMANAGER_HXX
-#define CHART2_UNDOMANAGER_HXX
-
-/** === begin UNO includes === **/
-#include <com/sun/star/document/XUndoManager.hpp>
-#include <com/sun/star/util/XModifyBroadcaster.hpp>
-#include <com/sun/star/container/XChild.hpp>
-/** === end UNO includes === **/
-
-#include <cppuhelper/implbase2.hxx>
-
-#include <boost/scoped_ptr.hpp>
-
-//......................................................................................................................
-namespace chart
-{
-//......................................................................................................................
-
- namespace impl
- {
- class UndoManager_Impl;
- typedef ::cppu::ImplHelper2 < ::com::sun::star::document::XUndoManager
- , ::com::sun::star::util::XModifyBroadcaster
- > UndoManager_Base;
- }
-
- //==================================================================================================================
- //= UndoManager
- //==================================================================================================================
- class UndoManager : public impl::UndoManager_Base
- {
- public:
- UndoManager( ::cppu::OWeakObject& i_parent, ::osl::Mutex& i_mutex );
- virtual ~UndoManager();
-
- // XInterface
- virtual void SAL_CALL acquire( ) throw ();
- virtual void SAL_CALL release( ) throw ();
-
- // XComponent equivalents
- void disposing();
-
- // XUndoManager
- virtual void SAL_CALL enterUndoContext( const ::rtl::OUString& i_title ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL enterHiddenUndoContext( ) throw (::com::sun::star::document::EmptyUndoStackException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL leaveUndoContext( ) throw (::com::sun::star::util::InvalidStateException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL addUndoAction( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XUndoAction >& i_action ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL undo( ) throw (::com::sun::star::document::EmptyUndoStackException, ::com::sun::star::document::UndoContextNotClosedException, ::com::sun::star::document::UndoFailedException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL redo( ) throw (::com::sun::star::document::EmptyUndoStackException, ::com::sun::star::document::UndoContextNotClosedException, ::com::sun::star::document::UndoFailedException, ::com::sun::star::uno::RuntimeException);
- virtual ::sal_Bool SAL_CALL isUndoPossible( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::sal_Bool SAL_CALL isRedoPossible( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getCurrentUndoActionTitle( ) throw (::com::sun::star::document::EmptyUndoStackException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getCurrentRedoActionTitle( ) throw (::com::sun::star::document::EmptyUndoStackException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getAllUndoActionTitles( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getAllRedoActionTitles( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clear( ) throw (::com::sun::star::document::UndoContextNotClosedException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clearRedo( ) throw (::com::sun::star::document::UndoContextNotClosedException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL reset( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL addUndoManagerListener( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XUndoManagerListener >& i_listener ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeUndoManagerListener( const ::com::sun::star::uno::Reference< ::com::sun::star::document::XUndoManagerListener >& i_listener ) throw (::com::sun::star::uno::RuntimeException);
-
- // XLockable (base of XUndoManager)
- virtual void SAL_CALL lock( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL unlock( ) throw (::com::sun::star::util::NotLockedException, ::com::sun::star::uno::RuntimeException);
- virtual ::sal_Bool SAL_CALL isLocked( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XChild (base of XUndoManager)
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL getParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL setParent( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& Parent ) throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException);
-
- // XModifyBroadcaster
- virtual void SAL_CALL addModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener ) throw (::com::sun::star::uno::RuntimeException);
-
- private:
- ::boost::scoped_ptr< impl::UndoManager_Impl > m_pImpl;
- };
-
-//......................................................................................................................
-} // namespace chart
-//......................................................................................................................
-
-#endif // CHART2_UNDOMANAGER_HXX
diff --git a/chart2/source/model/main/Wall.cxx b/chart2/source/model/main/Wall.cxx
deleted file mode 100644
index 097a7573b..000000000
--- a/chart2/source/model/main/Wall.cxx
+++ /dev/null
@@ -1,255 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include "Wall.hxx"
-#include "macros.hxx"
-#include "LineProperties.hxx"
-#include "FillProperties.hxx"
-#include "UserDefinedProperties.hxx"
-#include "ContainerHelper.hxx"
-#include "PropertyHelper.hxx"
-#include <com/sun/star/beans/PropertyAttribute.hpp>
-#include <com/sun/star/drawing/FillStyle.hpp>
-#include <com/sun/star/awt/Gradient.hpp>
-#include <com/sun/star/drawing/Hatch.hpp>
-#include <com/sun/star/drawing/LineStyle.hpp>
-#include <com/sun/star/drawing/LineDash.hpp>
-#include <com/sun/star/drawing/LineJoint.hpp>
-#include <rtl/uuid.h>
-#include <cppuhelper/queryinterface.hxx>
-
-#include <vector>
-#include <algorithm>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::beans::PropertyAttribute;
-
-using ::com::sun::star::beans::Property;
-using ::osl::MutexGuard;
-
-namespace
-{
-
-static const ::rtl::OUString lcl_aServiceName(
- RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.chart2.Wall" ));
-
-struct StaticWallDefaults_Initializer
-{
- ::chart::tPropertyValueMap* operator()()
- {
- static ::chart::tPropertyValueMap aStaticDefaults;
- lcl_AddDefaultsToMap( aStaticDefaults );
- return &aStaticDefaults;
- }
-private:
- void lcl_AddDefaultsToMap( ::chart::tPropertyValueMap & rOutMap )
- {
- ::chart::LineProperties::AddDefaultsToMap( rOutMap );
- ::chart::FillProperties::AddDefaultsToMap( rOutMap );
-
- // override other defaults
- ::chart::PropertyHelper::setPropertyValue( rOutMap, ::chart::LineProperties::PROP_LINE_STYLE, drawing::LineStyle_NONE );
- }
-};
-
-struct StaticWallDefaults : public rtl::StaticAggregate< ::chart::tPropertyValueMap, StaticWallDefaults_Initializer >
-{
-};
-
-struct StaticWallInfoHelper_Initializer
-{
- ::cppu::OPropertyArrayHelper* operator()()
- {
- static ::cppu::OPropertyArrayHelper aPropHelper( lcl_GetPropertySequence() );
- return &aPropHelper;
- }
-
-private:
- uno::Sequence< Property > lcl_GetPropertySequence()
- {
- ::std::vector< ::com::sun::star::beans::Property > aProperties;
- ::chart::LineProperties::AddPropertiesToVector( aProperties );
- ::chart::FillProperties::AddPropertiesToVector( aProperties );
- ::chart::UserDefinedProperties::AddPropertiesToVector( aProperties );
-
- ::std::sort( aProperties.begin(), aProperties.end(),
- ::chart::PropertyNameLess() );
-
- return ::chart::ContainerHelper::ContainerToSequence( aProperties );
- }
-
-};
-
-struct StaticWallInfoHelper : public rtl::StaticAggregate< ::cppu::OPropertyArrayHelper, StaticWallInfoHelper_Initializer >
-{
-};
-
-struct StaticWallInfo_Initializer
-{
- uno::Reference< beans::XPropertySetInfo >* operator()()
- {
- static uno::Reference< beans::XPropertySetInfo > xPropertySetInfo(
- ::cppu::OPropertySetHelper::createPropertySetInfo(*StaticWallInfoHelper::get() ) );
- return &xPropertySetInfo;
- }
-};
-
-struct StaticWallInfo : public rtl::StaticAggregate< uno::Reference< beans::XPropertySetInfo >, StaticWallInfo_Initializer >
-{
-};
-
-} // anonymous namespace
-
-// ================================================================================
-
-namespace chart
-{
-
-Wall::Wall() :
- ::property::OPropertySet( m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-Wall::Wall( const Wall & rOther ) :
- MutexContainer(),
- impl::Wall_Base(),
- ::property::OPropertySet( rOther, m_aMutex ),
- m_xModifyEventForwarder( ModifyListenerHelper::createModifyEventForwarder())
-{}
-
-Wall::~Wall()
-{}
-
-// ____ XCloneable ____
-uno::Reference< util::XCloneable > SAL_CALL Wall::createClone()
- throw (uno::RuntimeException)
-{
- return uno::Reference< util::XCloneable >( new Wall( *this ));
-}
-
-// ================================================================================
-
-// ____ OPropertySet ____
-uno::Any Wall::GetDefaultValue( sal_Int32 nHandle ) const
- throw(beans::UnknownPropertyException)
-{
- const tPropertyValueMap& rStaticDefaults = *StaticWallDefaults::get();
- tPropertyValueMap::const_iterator aFound( rStaticDefaults.find( nHandle ) );
- if( aFound == rStaticDefaults.end() )
- return uno::Any();
- return (*aFound).second;
-}
-
-::cppu::IPropertyArrayHelper & SAL_CALL Wall::getInfoHelper()
-{
- return *StaticWallInfoHelper::get();
-}
-
-// ____ XPropertySet ____
-uno::Reference< beans::XPropertySetInfo > SAL_CALL Wall::getPropertySetInfo()
- throw (uno::RuntimeException)
-{
- return *StaticWallInfo::get();
-}
-
-// ____ XModifyBroadcaster ____
-void SAL_CALL Wall::addModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->addModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-void SAL_CALL Wall::removeModifyListener( const uno::Reference< util::XModifyListener >& aListener )
- throw (uno::RuntimeException)
-{
- try
- {
- uno::Reference< util::XModifyBroadcaster > xBroadcaster( m_xModifyEventForwarder, uno::UNO_QUERY_THROW );
- xBroadcaster->removeModifyListener( aListener );
- }
- catch( const uno::Exception & ex )
- {
- ASSERT_EXCEPTION( ex );
- }
-}
-
-// ____ XModifyListener ____
-void SAL_CALL Wall::modified( const lang::EventObject& aEvent )
- throw (uno::RuntimeException)
-{
- m_xModifyEventForwarder->modified( aEvent );
-}
-
-// ____ XEventListener (base of XModifyListener) ____
-void SAL_CALL Wall::disposing( const lang::EventObject& /* Source */ )
- throw (uno::RuntimeException)
-{
- // nothing
-}
-
-// ____ OPropertySet ____
-void Wall::firePropertyChangeEvent()
-{
- fireModifyEvent();
-}
-
-void Wall::fireModifyEvent()
-{
- m_xModifyEventForwarder->modified( lang::EventObject( static_cast< uno::XWeak* >( this )));
-}
-
-// ================================================================================
-
-uno::Sequence< ::rtl::OUString > Wall::getSupportedServiceNames_Static()
-{
- uno::Sequence< ::rtl::OUString > aServices( 2 );
- aServices[ 0 ] = C2U( "com.sun.star.chart2.Wall" );
- aServices[ 1 ] = C2U( "com.sun.star.beans.PropertySet" );
- return aServices;
-}
-
-// implement XServiceInfo methods basing upon getSupportedServiceNames_Static
-APPHELPER_XSERVICEINFO_IMPL( Wall, lcl_aServiceName );
-
-using impl::Wall_Base;
-
-IMPLEMENT_FORWARD_XINTERFACE2( Wall, Wall_Base, ::property::OPropertySet )
-
-} // namespace chart
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/Wall.hxx b/chart2/source/model/main/Wall.hxx
deleted file mode 100644
index d90db3476..000000000
--- a/chart2/source/model/main/Wall.hxx
+++ /dev/null
@@ -1,123 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef CHART_WALL_HXX
-#define CHART_WALL_HXX
-
-#include <com/sun/star/util/XCloneable.hpp>
-#include <com/sun/star/util/XModifyBroadcaster.hpp>
-#include <com/sun/star/util/XModifyListener.hpp>
-#include "MutexContainer.hxx"
-#include "OPropertySet.hxx"
-#include <cppuhelper/weak.hxx>
-
-#include "ServiceMacros.hxx"
-#include "ModifyListenerHelper.hxx"
-#include <cppuhelper/implbase3.hxx>
-#include <comphelper/uno3.hxx>
-
-namespace chart
-{
-
-namespace impl
-{
-typedef ::cppu::WeakImplHelper3<
- ::com::sun::star::util::XCloneable,
- ::com::sun::star::util::XModifyBroadcaster,
- ::com::sun::star::util::XModifyListener >
- Wall_Base;
-}
-
-class Wall :
- public MutexContainer,
- public impl::Wall_Base,
- public ::property::OPropertySet
-{
-public:
- Wall();
- virtual ~Wall();
-
- /// XServiceInfo declarations
- APPHELPER_XSERVICEINFO_DECL()
-
- /// merge XInterface implementations
- DECLARE_XINTERFACE()
-
-protected:
- explicit Wall( const Wall & rOther );
-
- // ____ OPropertySet ____
- virtual ::com::sun::star::uno::Any GetDefaultValue( sal_Int32 nHandle ) const
- throw(::com::sun::star::beans::UnknownPropertyException);
-
- // ____ OPropertySet ____
- virtual ::cppu::IPropertyArrayHelper & SAL_CALL getInfoHelper();
-
- // ____ XPropertySet ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL
- getPropertySetInfo()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XCloneable ____
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::util::XCloneable > SAL_CALL createClone()
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyBroadcaster ____
- virtual void SAL_CALL addModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeModifyListener(
- const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XModifyListener ____
- virtual void SAL_CALL modified(
- const ::com::sun::star::lang::EventObject& aEvent )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ XEventListener (base of XModifyListener) ____
- virtual void SAL_CALL disposing(
- const ::com::sun::star::lang::EventObject& Source )
- throw (::com::sun::star::uno::RuntimeException);
-
- // ____ OPropertySet ____
- virtual void firePropertyChangeEvent();
- using OPropertySet::disposing;
-
- void fireModifyEvent();
-
-private:
-
- ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener > m_xModifyEventForwarder;
-};
-
-} // namespace chart
-
-// CHART_WALL_HXX
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/chart2/source/model/main/_serviceregistration_model.cxx b/chart2/source/model/main/_serviceregistration_model.cxx
deleted file mode 100644
index 30e873b5d..000000000
--- a/chart2/source/model/main/_serviceregistration_model.cxx
+++ /dev/null
@@ -1,204 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_chart2.hxx"
-#include <cppuhelper/implementationentry.hxx>
-#include "ChartModel.hxx"
-
-#include "Diagram.hxx"
-#include "Legend.hxx"
-#include "Axis.hxx"
-#include "GridProperties.hxx"
-#include "Title.hxx"
-#include "FormattedString.hxx"
-#include "PageBackground.hxx"
-#include "DataSeries.hxx"
-#include "PolarCoordinateSystem.hxx"
-#include "CartesianCoordinateSystem.hxx"
-
-#include "ChartTypeManager.hxx"
-#include "XMLFilter.hxx"
-
-#include "_serviceregistration_charttypes.hxx"
-
-static struct ::cppu::ImplementationEntry g_entries_chart2_model[] =
-{
- {
- ::chart::ChartModel::create
- , ::chart::ChartModel::getImplementationName_Static
- , ::chart::ChartModel::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::Diagram::create
- , ::chart::Diagram::getImplementationName_Static
- , ::chart::Diagram::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::Legend::create
- , ::chart::Legend::getImplementationName_Static
- , ::chart::Legend::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::Axis::create
- , ::chart::Axis::getImplementationName_Static
- , ::chart::Axis::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::GridProperties::create
- , ::chart::GridProperties::getImplementationName_Static
- , ::chart::GridProperties::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::Title::create
- , ::chart::Title::getImplementationName_Static
- , ::chart::Title::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
-
- ,{
- ::chart::FormattedString::create
- , ::chart::FormattedString::getImplementationName_Static
- , ::chart::FormattedString::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
-
- ,{
- ::chart::ChartTypeManager::create
- , ::chart::ChartTypeManager::getImplementationName_Static
- , ::chart::ChartTypeManager::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::PageBackground::create
- , ::chart::PageBackground::getImplementationName_Static
- , ::chart::PageBackground::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::DataSeries::create
- , ::chart::DataSeries::getImplementationName_Static
- , ::chart::DataSeries::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::XMLFilter::create
- , ::chart::XMLFilter::getImplementationName_Static
- , ::chart::XMLFilter::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::XMLReportFilterHelper::create
- , ::chart::XMLReportFilterHelper::getImplementationName_Static
- , ::chart::XMLFilter::getSupportedServiceNames_Static // we support the same, because we are derived from
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::PolarCoordinateSystem2d::create
- , ::chart::PolarCoordinateSystem2d::getImplementationName_Static
- , ::chart::PolarCoordinateSystem2d::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::PolarCoordinateSystem3d::create
- , ::chart::PolarCoordinateSystem3d::getImplementationName_Static
- , ::chart::PolarCoordinateSystem3d::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::CartesianCoordinateSystem2d::create
- , ::chart::CartesianCoordinateSystem2d::getImplementationName_Static
- , ::chart::CartesianCoordinateSystem2d::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{
- ::chart::CartesianCoordinateSystem3d::create
- , ::chart::CartesianCoordinateSystem3d::getImplementationName_Static
- , ::chart::CartesianCoordinateSystem3d::getSupportedServiceNames_Static
- , ::cppu::createSingleComponentFactory
- , 0
- , 0
- }
- ,{ 0, 0, 0, 0, 0, 0 }
-};
-
-// component exports
-extern "C"
-{
-SAL_DLLPUBLIC_EXPORT void * SAL_CALL chartmodel_component_getFactory(
- const sal_Char * pImplName, void * pServiceManager, void * pRegistryKey )
-{
- void * pResult = ::cppu::component_getFactoryHelper(
- pImplName, pServiceManager, pRegistryKey, g_entries_chart2_model );
-
- if( ! pResult )
- pResult = ::cppu::component_getFactoryHelper(
- pImplName, pServiceManager, pRegistryKey,
- ChartTypeEntriesForServiceRegistration::getImplementationEntries() );
-
- return pResult;
-}
-}
-//=========================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */