INTEGRATION: CWS chart2mst3 (1.6.4); FILE MERGED

2006/10/06 18:48:41 iha 1.6.4.17: no ring distance for pies
2006/07/01 21:01:56 iha 1.6.4.16: define and respect aspect ratio of diagram
2006/03/09 17:41:17 iha 1.6.4.15: added header
2005/10/24 11:07:08 iha 1.6.4.14: coordinate system restructure
2005/08/18 11:42:04 iha 1.6.4.13: moved colorscheme transport
2005/07/28 09:34:54 bm 1.6.4.12: usage of color schemes and the VaryColorsByPoint property to have correct pie colors and legend entries
2005/07/14 14:56:11 bm 1.6.4.11: removed radius offset parameter as this is now controlled by the UseRings property
2005/05/09 08:57:39 dr 1.6.4.10: #i30462# scaling for stacked charts
2005/04/29 12:23:00 dr 1.6.4.9: #i30426# enhanced linear scaling
2004/09/17 11:24:21 iha 1.6.4.8: implement api redesign - dimension property
2004/06/29 19:42:58 iha 1.6.4.7: Color Per Point
2004/05/08 17:54:55 iha 1.6.4.6: polartransformation fixes and pie offset implementation
2004/04/19 11:50:36 iha 1.6.4.5: enable switching between ring and pie
2004/04/14 08:31:51 iha 1.6.4.4: add methods getMin/MaximumX + setScales to set bSwapXAndYAxis correct
2004/04/13 16:34:23 iha 1.6.4.3: corrected stacking
2004/03/11 12:28:03 iha 1.6.4.2: added meethod getPreferredDiagramAspectRatio() for charttype dependent 3D scene aspect ratio
2004/02/23 18:53:00 iha 1.6.4.1: auto scaling: make automatic border charttype dependent
This commit is contained in:
Vladimir Glazounov 2007-05-22 18:16:19 +00:00
parent 19dca1d00b
commit 977ef7bbb7

View file

@ -1,3 +1,38 @@
/*************************************************************************
*
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: PieChart.hxx,v $
*
* $Revision: 1.7 $
*
* last change: $Author: vg $ $Date: 2007-05-22 19:16:19 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
*
*
* GNU Lesser General Public License Version 2.1
* =============================================
* Copyright 2005 by Sun Microsystems, Inc.
* 901 San Antonio Road, Palo Alto, CA 94303, USA
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License version 2.1, as published by the Free Software Foundation.
*
* This library 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 for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
* MA 02111-1307 USA
*
************************************************************************/
#ifndef _CHART2_PIECHART_HXX #ifndef _CHART2_PIECHART_HXX
#define _CHART2_PIECHART_HXX #define _CHART2_PIECHART_HXX
@ -17,7 +52,7 @@ class PieChart : public VSeriesPlotter
public: public:
PieChart( const ::com::sun::star::uno::Reference< PieChart( const ::com::sun::star::uno::Reference<
::com::sun::star::chart2::XChartType >& xChartTypeModel ::com::sun::star::chart2::XChartType >& xChartTypeModel
, double fRadiusOffset=0.0, double fRingDistance=0.0 ); , sal_Int32 nDimensionCount );
virtual ~PieChart(); virtual ~PieChart();
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
@ -25,17 +60,35 @@ public:
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
virtual void SAL_CALL createShapes(); virtual void SAL_CALL createShapes();
virtual void SAL_CALL setScales(
const ::com::sun::star::uno::Sequence<
::com::sun::star::chart2::ExplicitScaleData >& rScales
, sal_Bool bSwapXAndYAxis )
throw (::com::sun::star::uno::RuntimeException);
/* /*
virtual ::rtl::OUString SAL_CALL getCoordinateSystemTypeID( ) throw (::com::sun::star::uno::RuntimeException); virtual ::rtl::OUString SAL_CALL getCoordinateSystemTypeID( ) throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setScales( const ::com::sun::star::uno::Sequence< ::com::sun::star::chart2::ExplicitScaleData >& rScales ) throw (::com::sun::star::uno::RuntimeException); virtual void SAL_CALL setScales( const ::com::sun::star::uno::Sequence< ::com::sun::star::chart2::ExplicitScaleData >& rScales ) throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setTransformation( const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XTransformation >& xTransformationToLogicTarget, const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XTransformation >& xTransformationToFinalPage ) throw (::com::sun::star::uno::RuntimeException); virtual void SAL_CALL setTransformation( const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XTransformation >& xTransformationToLogicTarget, const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XTransformation >& xTransformationToFinalPage ) throw (::com::sun::star::uno::RuntimeException);
*/ */
virtual void addSeries( VDataSeries* pSeries, sal_Int32 xSlot = -1,sal_Int32 ySlot = -1 ); virtual void addSeries( VDataSeries* pSeries, sal_Int32 zSlot = -1, sal_Int32 xSlot = -1,sal_Int32 ySlot = -1 );
//-------------------
virtual ::com::sun::star::drawing::Direction3D getPreferredDiagramAspectRatio() const;
virtual bool keepAspectRatio() const;
//MinimumAndMaximumSupplier //MinimumAndMaximumSupplier
virtual double getMinimumYInRange( double fMinimumX, double fMaximumX ); virtual double getMinimumX();
virtual double getMaximumYInRange( double fMinimumX, double fMaximumX ); virtual double getMaximumX();
virtual double getMinimumYInRange( double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex );
virtual double getMaximumYInRange( double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex );
virtual bool isExpandBorderToIncrementRhythm( sal_Int32 nDimensionIndex );
virtual bool isExpandIfValuesCloseToBorder( sal_Int32 nDimensionIndex );
virtual bool isExpandWideValuesToZero( sal_Int32 nDimensionIndex );
virtual bool isExpandNarrowValuesTowardZero( sal_Int32 nDimensionIndex );
virtual bool isSeperateStackingForDifferentSigns( sal_Int32 nDimensionIndex );
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
//------------------------------------------------------------------------- //-------------------------------------------------------------------------
@ -49,14 +102,17 @@ private: //methods
::com::sun::star::drawing::XShapes >& xTarget ::com::sun::star::drawing::XShapes >& xTarget
, const ::com::sun::star::uno::Reference< , const ::com::sun::star::uno::Reference<
::com::sun::star::beans::XPropertySet >& xObjectProperties ::com::sun::star::beans::XPropertySet >& xObjectProperties
, double fLogicStartAngleValue, double fLogicEndAngleValue , double fUnitCircleStartAngleDegree, double fWidthAngleDegree
, double fLogicInnerRadius, double fLogicOuterRadius , double fUnitCircleInnerRadius, double fUnitCircleOuterRadius
, double fLogicZ, double fDepth ); , double fLogicZ, double fDepth, double fExplodePercentage
, tPropertyNameValueMap* pOverWritePropertiesMap );
bool isSingleRingChart() const; bool isSingleRingChart() const;
double getMaxOffset() const;
private: //member private: //member
PiePositionHelper* m_pPosHelper; PiePositionHelper* m_pPosHelper;
bool m_bUseRings;
}; };
//............................................................................. //.............................................................................
} //namespace chart } //namespace chart