summaryrefslogtreecommitdiff
path: root/chart2/source/view/axes/VPolarRadiusAxis.hxx
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2007-05-22 18:13:58 +0000
committerVladimir Glazounov <vg@openoffice.org>2007-05-22 18:13:58 +0000
commitbbe88b3c2c467b9137cb6dee81ae30809557cd72 (patch)
tree80e8d9ee6d5c9991ed568739ced364caaded69e9 /chart2/source/view/axes/VPolarRadiusAxis.hxx
parentbfaf15092f6ba1a02d4788aeb131a4e21cc1e330 (diff)
INTEGRATION: CWS chart2mst3 (1.1.2); FILE ADDED
2006/08/23 17:07:27 iha 1.1.2.4: enable axis to estimate the maximum automatic MainIncrementCount, reduce count to 2 for net charts 2006/08/22 19:46:37 iha 1.1.2.3: some axes cleanup 2006/08/22 19:10:27 iha 1.1.2.2: correct y axis for net charts: show labels + take space for labels into account for diagram size 2006/08/22 15:11:36 iha 1.1.2.1: separate implementation of polar angle axis and polar radius axis
Diffstat (limited to 'chart2/source/view/axes/VPolarRadiusAxis.hxx')
-rw-r--r--chart2/source/view/axes/VPolarRadiusAxis.hxx106
1 files changed, 106 insertions, 0 deletions
diff --git a/chart2/source/view/axes/VPolarRadiusAxis.hxx b/chart2/source/view/axes/VPolarRadiusAxis.hxx
new file mode 100644
index 000000000000..14b7fa25fe5c
--- /dev/null
+++ b/chart2/source/view/axes/VPolarRadiusAxis.hxx
@@ -0,0 +1,106 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: VPolarRadiusAxis.hxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: vg $ $Date: 2007-05-22 19:13:58 $
+ *
+ * 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_VPOLARRADIUSAXIS_HXX
+#define _CHART2_VPOLARRADIUSAXIS_HXX
+
+#include "VPolarAxis.hxx"
+
+#include <memory>
+
+//.............................................................................
+namespace chart
+{
+//.............................................................................
+
+//-----------------------------------------------------------------------------
+/**
+*/
+
+class VCartesianAxis;
+
+class VPolarRadiusAxis : public VPolarAxis
+{
+public:
+ VPolarRadiusAxis( const AxisProperties& rAxisProperties
+ , const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier >& xNumberFormatsSupplier
+ , sal_Int32 nDimensionCount );
+ virtual ~VPolarRadiusAxis();
+
+ virtual void SAL_CALL initPlotter(
+ const ::com::sun::star::uno::Reference<
+ ::com::sun::star::drawing::XShapes >& xLogicTarget
+ , const ::com::sun::star::uno::Reference<
+ ::com::sun::star::drawing::XShapes >& xFinalTarget
+ , const ::com::sun::star::uno::Reference<
+ ::com::sun::star::lang::XMultiServiceFactory >& xFactory
+ , const rtl::OUString& rCID
+ ) throw (::com::sun::star::uno::RuntimeException );
+
+ virtual void setTransformationSceneToScreen( const ::com::sun::star::drawing::HomogenMatrix& rMatrix );
+
+ 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 void SAL_CALL setExplicitScaleAndIncrement(
+ const ::com::sun::star::chart2::ExplicitScaleData& rScale
+ , const ::com::sun::star::chart2::ExplicitIncrementData& rIncrement )
+ throw (::com::sun::star::uno::RuntimeException);
+
+ virtual void SAL_CALL initAxisLabelProperties(
+ const ::com::sun::star::awt::Size& rFontReferenceSize
+ , const ::com::sun::star::awt::Rectangle& rMaximumSpaceForLabels );
+
+ virtual sal_Int32 estimateMaximumAutoMainIncrementCount();
+
+ virtual void SAL_CALL createMaximumLabels();
+ virtual void SAL_CALL createLabels();
+ virtual void SAL_CALL updatePositions();
+
+ virtual void SAL_CALL createShapes();
+
+protected: //methods
+ virtual bool prepareShapeCreation();
+
+private: //member
+ std::auto_ptr<VCartesianAxis> m_apAxisWithLabels;
+};
+
+//.............................................................................
+} //namespace chart
+//.............................................................................
+#endif