summaryrefslogtreecommitdiff
path: root/chart2/source/view/axes/VCartesianAxis.hxx
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2007-05-22 18:10:47 +0000
committerVladimir Glazounov <vg@openoffice.org>2007-05-22 18:10:47 +0000
commit1084206602ea52847abef98c5549735834aa871f (patch)
tree1a8cd121873bdf3e5e5ed581ff92cb34b6de99e0 /chart2/source/view/axes/VCartesianAxis.hxx
parent288e8326ec386ecc50817ab7e9b962f2731fed54 (diff)
INTEGRATION: CWS chart2mst3 (1.3.4); FILE MERGED
2006/11/23 17:41:06 iha 1.3.4.11: replace Vector2D with B2DVector 2006/10/13 08:21:59 iha 1.3.4.10: implement automatic break feature for horizontal text axes 2006/08/29 09:19:44 iha 1.3.4.9: implement automatic staggering of axis labels 2006/08/25 17:16:47 iha 1.3.4.8: text- and diagram-size dependent auto main step width 2006/08/22 19:46:37 iha 1.3.4.7: some axes cleanup 2006/08/10 16:06:23 iha 1.3.4.6: Axis Label Layout - Font&Diagram Size 2006/04/10 15:03:36 iha 1.3.4.5: api restructure axis, grids, scales and increments 2006/04/10 12:25:17 iha 1.3.4.4: api restructure axis, grids, scales and increments 2005/10/07 12:16:49 bm 1.3.4.3: RESYNC: (1.3-1.4); FILE MERGED 2005/06/07 16:03:04 iha 1.3.4.2: use numberformatter from model 2004/02/20 17:56:41 iha 1.3.4.1: integrate categories at axis in view
Diffstat (limited to 'chart2/source/view/axes/VCartesianAxis.hxx')
-rw-r--r--chart2/source/view/axes/VCartesianAxis.hxx45
1 files changed, 27 insertions, 18 deletions
diff --git a/chart2/source/view/axes/VCartesianAxis.hxx b/chart2/source/view/axes/VCartesianAxis.hxx
index b718eff72fdf..9eeeada4985c 100644
--- a/chart2/source/view/axes/VCartesianAxis.hxx
+++ b/chart2/source/view/axes/VCartesianAxis.hxx
@@ -4,9 +4,9 @@
*
* $RCSfile: VCartesianAxis.hxx,v $
*
- * $Revision: 1.4 $
+ * $Revision: 1.5 $
*
- * last change: $Author: rt $ $Date: 2005-09-08 01:38:14 $
+ * last change: $Author: vg $ $Date: 2007-05-22 19:10:47 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -35,13 +35,10 @@
#ifndef _CHART2_VCARTESIANAXIS_HXX
#define _CHART2_VCARTESIANAXIS_HXX
-#include "VMeterBase.hxx"
-#include "VAxisProperties.hxx"
-#include "TickmarkHelper.hxx"
+#include "VAxisBase.hxx"
-// header for class Vector2D
-#ifndef _VECTOR2D_HXX
-#include <tools/vector2d.hxx>
+#ifndef _BGFX_VECTOR_B2DVECTOR_HXX
+#include <basegfx/vector/b2dvector.hxx>
#endif
//.............................................................................
@@ -53,17 +50,15 @@ namespace chart
/**
*/
-class NumberFormatterWrapper;
-
-class VCartesianAxis : public VMeterBase
+class VCartesianAxis : public VAxisBase
{
//-------------------------------------------------------------------------
// public methods
//-------------------------------------------------------------------------
public:
VCartesianAxis( const AxisProperties& rAxisProperties
- , NumberFormatterWrapper* pNumberFormatterWrapper
- , sal_Int32 nDimensionCount
+ , const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier >& xNumberFormatsSupplier
+ , sal_Int32 nDimensionIndex, sal_Int32 nDimensionCount
, PlottingPositionHelper* pPosHelper = NULL //takes ownership
);
@@ -78,12 +73,21 @@ public:
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 createMaximumLabels();
+ virtual void SAL_CALL createLabels();
+ virtual void SAL_CALL updatePositions();
+
virtual void SAL_CALL createShapes();
+ virtual sal_Int32 estimateMaximumAutoMainIncrementCount();
+
+ //-------------------------------------------------------------------------
+ virtual TickmarkHelper* createTickmarkHelper();
+
//-------------------------------------------------------------------------
double getLogicValueWhereMainLineCrossesOtherAxis() const;
bool getLogicValueWhereExtraLineCrossesOtherAxis( double& fCrossesOtherAxis) const;
- void get2DAxisMainLine( Vector2D& rStart, Vector2D& rEnd, double fCrossesOtherAxis ) const;
+ void get2DAxisMainLine( ::basegfx::B2DVector& rStart, ::basegfx::B2DVector& rEnd, double fCrossesOtherAxis ) const;
//-------------------------------------------------------------------------
//Layout interface for cartesian axes:
@@ -109,13 +113,18 @@ public:
protected: //methods
bool createTextShapes( const ::com::sun::star::uno::Reference<
::com::sun::star::drawing::XShapes >& xTarget
- , ::std::vector< ::std::vector< TickInfo > >& rAllTickInfos
+ , TickIter& rTickIter
, AxisLabelProperties& rAxisLabelProperties
, TickmarkHelper_2D* pTickmarkHelper );
-private: //member
- AxisProperties m_aAxisProperties;
- NumberFormatterWrapper* m_pNumberFormatterWrapper;
+ TickmarkHelper_2D* createTickmarkHelper2D();
+
+ void doStaggeringOfLabels( const AxisLabelProperties& rAxisLabelProperties
+ , TickmarkHelper_2D* pTickmarkHelper2D );
+ bool isAutoStaggeringOfLabelsAllowed( const AxisLabelProperties& rAxisLabelProperties
+ , TickmarkHelper_2D* pTickmarkHelper);
+ bool isBreakOfLabelsAllowed( const AxisLabelProperties& rAxisLabelProperties
+ , TickmarkHelper_2D* pTickmarkHelper );
};
//.............................................................................