diff options
author | Vladimir Glazounov <vg@openoffice.org> | 2007-05-22 17:26:35 +0000 |
---|---|---|
committer | Vladimir Glazounov <vg@openoffice.org> | 2007-05-22 17:26:35 +0000 |
commit | e4f838bc93cddb87abaecc8fafa366096b0a9264 (patch) | |
tree | 8177ae45ba09576e4fda918d0ceedeee96b9bb6e /chart2/source/inc/chartview/ExplicitValueProvider.hxx | |
parent | 8712fd9002eab844d790846888682c5547f3e2c2 (diff) |
INTEGRATION: CWS chart2mst3 (1.2.4); FILE MERGED
2006/12/15 13:34:57 iha 1.2.4.11: #i72360# use axis number format for data labels when one is provided
2006/12/01 18:35:52 iha 1.2.4.10: #68896# always save the explicit number format
2006/09/24 09:12:54 iha 1.2.4.9: #i61970# correct implementation of axis at
2006/04/10 12:25:08 iha 1.2.4.8: api restructure axis, grids, scales and increments
2006/03/12 01:26:57 iha 1.2.4.7: changed communication between model, view and controller; implemented old AddIn Interface; changed owneship and lifetime of view
2006/02/20 15:27:42 bm 1.2.4.6: make getShapeForCID an interface method of ExplicitValueProvider again
2005/10/07 11:48:42 bm 1.2.4.5: RESYNC: (1.2-1.3); FILE MERGED
2005/07/23 00:01:20 iha 1.2.4.4: include axis title sizes in diagram position to support old api and fileformat
2005/07/08 12:53:34 iha 1.2.4.3: provide and keep view as service only
2005/06/09 15:42:30 iha 1.2.4.2: support positions and sizes via view for old api wrapper
2004/04/26 11:43:45 iha 1.2.4.1: getExplicitValuesForMeter returns bool + added description
Diffstat (limited to 'chart2/source/inc/chartview/ExplicitValueProvider.hxx')
-rw-r--r-- | chart2/source/inc/chartview/ExplicitValueProvider.hxx | 68 |
1 files changed, 60 insertions, 8 deletions
diff --git a/chart2/source/inc/chartview/ExplicitValueProvider.hxx b/chart2/source/inc/chartview/ExplicitValueProvider.hxx index f2303ffbc7aa..08acf2be4cf0 100644 --- a/chart2/source/inc/chartview/ExplicitValueProvider.hxx +++ b/chart2/source/inc/chartview/ExplicitValueProvider.hxx @@ -4,9 +4,9 @@ * * $RCSfile: ExplicitValueProvider.hxx,v $ * - * $Revision: 1.3 $ + * $Revision: 1.4 $ * - * last change: $Author: rt $ $Date: 2005-09-08 00:49:01 $ + * last change: $Author: vg $ $Date: 2007-05-22 18:26:35 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -35,14 +35,32 @@ #ifndef _CHART2_EXPLICITVALUEPROVIDER_HXX #define _CHART2_EXPLICITVALUEPROVIDER_HXX +#include <boost/shared_ptr.hpp> + #ifndef _COM_SUN_STAR_CHART2_EXPLICITINCREMENTDATA_HPP_ #include <com/sun/star/chart2/ExplicitIncrementData.hpp> #endif #ifndef _COM_SUN_STAR_CHART2_EXPLICITSCALEDATA_HPP_ #include <com/sun/star/chart2/ExplicitScaleData.hpp> #endif -#ifndef _COM_SUN_STAR_CHART2_XMETER_HPP_ -#include <com/sun/star/chart2/XMeter.hpp> +#ifndef _COM_SUN_STAR_CHART2_XAXIS_HPP_ +#include <com/sun/star/chart2/XAxis.hpp> +#endif +#ifndef _COM_SUN_STAR_CHART2_XCOORDINATESYSTEM_HPP_ +#include <com/sun/star/chart2/XCoordinateSystem.hpp> +#endif + +#ifndef _COM_SUN_STAR_AWT_RECTANGLE_HPP_ +#include <com/sun/star/awt/Rectangle.hpp> +#endif +#ifndef _COM_SUN_STAR_FRAME_XMODEL_HPP_ +#include <com/sun/star/frame/XModel.hpp> +#endif +#ifndef _COM_SUN_STAR_DRAWING_XSHAPE_HPP_ +#include <com/sun/star/drawing/XShape.hpp> +#endif +#ifndef _COM_SUN_STAR_UTIL_XNUMBERFORMATSSUPPLIER_HPP_ +#include <com/sun/star/util/XNumberFormatsSupplier.hpp> #endif //............................................................................. @@ -54,14 +72,48 @@ namespace chart /** */ +class DrawModelWrapper; class ExplicitValueProvider { public: - virtual void getExplicitValuesForMeter( - ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XMeter > xMeter + /** Gives calculated scale and increment values for a given xAxis in the current view. + In contrast to the model data these explicit values are always complete as misssing auto properties are calculated. + If the given Axis could not be found or for another reason no correct output can be given false is returned. + */ + virtual sal_Bool getExplicitValuesForAxis( + ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XAxis > xAxis , ::com::sun::star::chart2::ExplicitScaleData& rExplicitScale - , ::com::sun::star::chart2::ExplicitIncrementData& rExplicitIncrement - , double& rfExplicitOrigin )=0; + , ::com::sun::star::chart2::ExplicitIncrementData& rExplicitIncrement )=0; + + /** for rotated objects the shape size and position differs from the visible rectangle + if bSnapRect is set to true you get the resulting visible position (left-top) and size + */ + virtual ::com::sun::star::awt::Rectangle + getRectangleOfObject( const rtl::OUString& rObjectCID, bool bSnapRect=false )=0; + + virtual ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape > + getShapeForCID( const rtl::OUString& rObjectCID )=0; + + virtual ::boost::shared_ptr< DrawModelWrapper > getDrawModelWrapper() = 0; + + static const com::sun::star::uno::Sequence<sal_Int8>& getUnoTunnelId(); + static ExplicitValueProvider* getExplicitValueProvider( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& xChartView ); + + static ::com::sun::star::awt::Rectangle + calculateDiagramPositionAndSizeInclusiveTitle( + const ::com::sun::star::uno::Reference< + ::com::sun::star::frame::XModel >& xChartModel + , const ::com::sun::star::uno::Reference< + ::com::sun::star::uno::XInterface >& xChartView + , const ::com::sun::star::awt::Rectangle& rExclusivePositionAndSize ); + + static sal_Int32 getExplicitNumberFormatKeyForAxis( + const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XAxis >& xAxis + , const ::com::sun::star::uno::Reference< ::com::sun::star::chart2::XCoordinateSystem > & xCorrespondingCoordinateSystem + , const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier >& xNumberFormatsSupplier ); + + static sal_Int32 getPercentNumberFormat( const ::com::sun::star::uno::Reference< + ::com::sun::star::util::XNumberFormatsSupplier >& xNumberFormatsSupplier ); }; //............................................................................. |