01: /*
02: * ============================================================================
03: * GNU Lesser General Public License
04: * ============================================================================
05: *
06: * JasperReports - Free Java report-generating library.
07: * Copyright (C) 2001-2006 JasperSoft Corporation http://www.jaspersoft.com
08: *
09: * This library is free software; you can redistribute it and/or
10: * modify it under the terms of the GNU Lesser General Public
11: * License as published by the Free Software Foundation; either
12: * version 2.1 of the License, or (at your option) any later version.
13: *
14: * This library is distributed in the hope that it will be useful,
15: * but WITHOUT ANY WARRANTY; without even the implied warranty of
16: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17: * Lesser General Public License for more details.
18: *
19: * You should have received a copy of the GNU Lesser General Public
20: * License along with this library; if not, write to the Free Software
21: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
22: *
23: * JasperSoft Corporation
24: * 303 Second Street, Suite 450 North
25: * San Francisco, CA 94107
26: * http://www.jaspersoft.com
27: */
28: package net.sf.jasperreports.charts.base;
29:
30: import java.io.Serializable;
31:
32: import net.sf.jasperreports.charts.JRChartAxis;
33: import net.sf.jasperreports.engine.JRChart;
34: import net.sf.jasperreports.engine.JRConstants;
35: import net.sf.jasperreports.engine.base.JRBaseObjectFactory;
36:
37: /**
38: * Base read-only implementation of {@link JRChartAxis JRChartAxis}.
39: *
40: * @author Barry Klawans (barry@users.sourceforge.net)
41: * @version $Id: JRBaseChartAxis.java 1792 2007-07-30 08:57:32Z teodord $
42: */
43: public class JRBaseChartAxis implements JRChartAxis, Serializable {
44:
45: /**
46: * Where to position the axis.
47: */
48: protected byte position = POSITION_LEFT_OR_TOP;
49:
50: /**
51: * The Chart object containing the dataset and plot to use with this axis.
52: */
53: protected JRChart chart = null;
54:
55: private static final long serialVersionUID = JRConstants.SERIAL_VERSION_UID;
56:
57: /**
58: * Construct a new axis that will be added to the specified chart.
59: */
60: public JRBaseChartAxis() {
61: }
62:
63: public JRBaseChartAxis(JRChartAxis axis, JRBaseObjectFactory factory) {
64: factory.put(axis, this );
65:
66: this .position = axis.getPosition();
67: this .chart = factory.getChart(axis.getChart());
68: }
69:
70: /**
71: * Returns the position of this axis.
72: *
73: * @return the position of this axis
74: */
75: public byte getPosition() {
76: return position;
77: }
78:
79: /**
80: * Returns the chart that contains the dataset and plot to use for this
81: * axis. The plot is used to figure out how to render the dataset when
82: * adding to the multiple axis chart.
83: *
84: * @return the chart that contains the dataset and plot for this axis
85: */
86: public JRChart getChart() {
87: return chart;
88: }
89: }
|