summaryrefslogtreecommitdiff
path: root/chart2/source/view/inc/VCoordinateSystem.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'chart2/source/view/inc/VCoordinateSystem.hxx')
-rw-r--r--chart2/source/view/inc/VCoordinateSystem.hxx61
1 files changed, 32 insertions, 29 deletions
diff --git a/chart2/source/view/inc/VCoordinateSystem.hxx b/chart2/source/view/inc/VCoordinateSystem.hxx
index 3cae017fdd74..61dda842d02b 100644
--- a/chart2/source/view/inc/VCoordinateSystem.hxx
+++ b/chart2/source/view/inc/VCoordinateSystem.hxx
@@ -20,16 +20,17 @@
#include "MinimumAndMaximumSupplier.hxx"
#include <ThreeDHelper.hxx>
+#include "VSeriesPlotter.hxx"
#include <chartview/ExplicitScaleValues.hxx>
#include <com/sun/star/drawing/HomogenMatrix.hpp>
#include <com/sun/star/uno/Sequence.h>
+#include <rtl/ref.hxx>
+#include <svx/unoshape.hxx>
#include <map>
#include <memory>
#include <vector>
-namespace chart { class ExplicitCategoriesProvider; }
-namespace chart { class ScaleAutomatism; }
namespace com::sun::star::awt { struct Rectangle; }
namespace com::sun::star::awt { struct Size; }
namespace com::sun::star::beans { class XPropertySet; }
@@ -38,11 +39,16 @@ namespace com::sun::star::chart2 { class XChartDocument; }
namespace com::sun::star::chart2 { class XCoordinateSystem; }
namespace com::sun::star::drawing { class XShapes; }
namespace com::sun::star::lang { class XMultiServiceFactory; }
-
+namespace com::sun::star::uno { class XComponentContext; }
namespace chart
{
-
+class ExplicitCategoriesProvider;
+class ScaleAutomatism;
+class ChartModel;
+class Axis;
+class BaseCoordinateSystem;
+class GridProperties;
class VAxisBase;
class VCoordinateSystem
@@ -50,15 +56,14 @@ class VCoordinateSystem
public:
virtual ~VCoordinateSystem();
- static std::unique_ptr<VCoordinateSystem> createCoordinateSystem( const css::uno::Reference<
- css::chart2::XCoordinateSystem >& xCooSysModel );
+ static std::unique_ptr<VCoordinateSystem> createCoordinateSystem( const rtl::Reference<
+ ::chart::BaseCoordinateSystem >& xCooSysModel );
/// @throws css::uno::RuntimeException
void initPlottingTargets(
- const css::uno::Reference< css::drawing::XShapes >& xLogicTarget
- , const css::uno::Reference< css::drawing::XShapes >& xFinalTarget
- , const css::uno::Reference< css::lang::XMultiServiceFactory >& xFactory
- , css::uno::Reference< css::drawing::XShapes >& xLogicTargetForSeriesBehindAxis );
+ const rtl::Reference< SvxShapeGroupAnyD >& xLogicTarget
+ , const rtl::Reference< SvxShapeGroupAnyD >& xFinalTarget
+ , rtl::Reference<SvxShapeGroupAnyD>& xLogicTargetForSeriesBehindAxis );
void setParticle( const OUString& rCooSysParticle );
@@ -106,17 +111,19 @@ public:
void set3DWallPositions( CuboidPlanePosition eLeftWallPos, CuboidPlanePosition eBackWallPos, CuboidPlanePosition eBottomPos );
- const css::uno::Reference< css::chart2::XCoordinateSystem >&
+ const rtl::Reference< ::chart::BaseCoordinateSystem >&
getModel() const { return m_xCooSysModel;}
/**
* Create "view" axis objects 'VAxis' from the coordinate system model.
*/
virtual void createVAxisList(
- const css::uno::Reference< css::chart2::XChartDocument> & xChartDoc
- , const css::awt::Size& rFontReferenceSize
- , const css::awt::Rectangle& rMaximumSpaceForLabels
- , bool bLimitSpaceForLabels );
+ const rtl::Reference<::chart::ChartModel> & xChartDoc,
+ const css::awt::Size& rFontReferenceSize,
+ const css::awt::Rectangle& rMaximumSpaceForLabels,
+ bool bLimitSpaceForLabels,
+ std::vector<std::unique_ptr<VSeriesPlotter>>& rSeriesPlotterList,
+ css::uno::Reference<css::uno::XComponentContext> const& rComponentContext);
virtual void initVAxisInList();
virtual void updateScalesAndIncrementsOnAxes();
@@ -136,39 +143,35 @@ public:
void setSeriesNamesForAxis( const css::uno::Sequence< OUString >& rSeriesNames );
protected: //methods
- VCoordinateSystem( const css::uno::Reference<
- css::chart2::XCoordinateSystem >& xCooSys );
+ VCoordinateSystem( rtl::Reference< ::chart::BaseCoordinateSystem > xCooSys );
- css::uno::Reference< css::chart2::XAxis >
+ rtl::Reference< ::chart::Axis >
getAxisByDimension( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex ) const;
- static css::uno::Sequence< css::uno::Reference< css::beans::XPropertySet > >
- getGridListFromAxis( const css::uno::Reference< css::chart2::XAxis >& xAxis );
+ static std::vector< rtl::Reference< ::chart::GridProperties > >
+ getGridListFromAxis( const rtl::Reference< ::chart::Axis >& xAxis );
VAxisBase* getVAxis( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex );
OUString createCIDForAxis( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex );
OUString createCIDForGrid( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex );
- sal_Int32 getNumberFormatKeyForAxis( const css::uno::Reference<
- css::chart2::XAxis >& xAxis
- , const css::uno::Reference<
- css::chart2::XChartDocument>& xChartDoc);
+ sal_Int32 getNumberFormatKeyForAxis( const rtl::Reference< ::chart::Axis >& xAxis
+ , const rtl::Reference<::chart::ChartModel>& xChartDoc);
private: //methods
static void impl_adjustDimension( sal_Int32& rDimensionIndex );
void impl_adjustDimensionAndIndex( sal_Int32& rDimensionIndex, sal_Int32& rAxisIndex ) const;
protected: //member
- css::uno::Reference< css::chart2::XCoordinateSystem > m_xCooSysModel;
+ rtl::Reference< ::chart::BaseCoordinateSystem > m_xCooSysModel;
OUString m_aCooSysParticle;
typedef std::pair< sal_Int32, sal_Int32 > tFullAxisIndex; //first index is the dimension, second index is the axis index that indicates whether this is a main or secondary axis
- css::uno::Reference< css::drawing::XShapes > m_xLogicTargetForGrids;
- css::uno::Reference< css::drawing::XShapes > m_xLogicTargetForAxes;
- css::uno::Reference< css::drawing::XShapes > m_xFinalTarget;
- css::uno::Reference< css::lang::XMultiServiceFactory> m_xShapeFactory;
+ rtl::Reference<SvxShapeGroupAnyD> m_xLogicTargetForGrids;
+ rtl::Reference<SvxShapeGroupAnyD> m_xLogicTargetForAxes;
+ rtl::Reference<SvxShapeGroupAnyD> m_xFinalTarget;
css::drawing::HomogenMatrix m_aMatrixSceneToScreen;
CuboidPlanePosition m_eLeftWallPos;