1////////////////////////////////////////////////////////////////////////////////
2//
3//  ADOBE SYSTEMS INCORPORATED
4//  Copyright 2009 Adobe Systems Incorporated
5//  All Rights Reserved.
6//
7//  NOTICE: Adobe permits you to use, modify, and distribute this file
8//  in accordance with the terms of the license agreement accompanying it.
9//
10////////////////////////////////////////////////////////////////////////////////
11
12package mx.charts.chartClasses
13{
14
15/**
16 *  The DataDescription structure is used by ChartElements to describe
17 *  the characteristics of the data they represent to Axis objects
18 *  that auto-generate values from the data represented in the chart.
19 *	ChartElements displaying data should construct and return DataDescriptions
20 *  from their <code>describeData()</code> method when invoked.
21 *
22 *  @langversion 3.0
23 *  @playerversion Flash 9
24 *  @playerversion AIR 1.1
25 *  @productversion Flex 3
26 */
27public class DataDescription
28{
29    include "../../core/Version.as";
30
31	//--------------------------------------------------------------------------
32	//
33	//  Class constants
34	//
35	//--------------------------------------------------------------------------
36
37	/**
38	 *  A bitflag passed by the axis to an element's <code>describeData()</code> method.
39	 *  If this flag is set, the element sets the
40	 *  <code>boundedValues</code> property.
41	 *
42	 *  @langversion 3.0
43	 *  @playerversion Flash 9
44	 *  @playerversion AIR 1.1
45	 *  @productversion Flex 3
46	 */
47	public static const REQUIRED_BOUNDED_VALUES:uint = 0x2;
48
49	/**
50	 *  A bitflag passed by the axis to an element's <code>describeData()</code> method.
51	 *  If this flag is set, the element sets the
52	 *  <code>minInterval</code> property.
53	 *
54	 *  @langversion 3.0
55	 *  @playerversion Flash 9
56	 *  @playerversion AIR 1.1
57	 *  @productversion Flex 3
58	 */
59	public static const REQUIRED_MIN_INTERVAL:uint = 0x1;
60
61	/**
62	 *  A bitflag passed by the axis to an element's <code>describeData()</code> method.
63	 *  If this flag is set, the element sets the
64	 *  <code>DescribeData.min</code> and <code>DescribeData.max</code> properties.
65	 *
66	 *  @langversion 3.0
67	 *  @playerversion Flash 9
68	 *  @playerversion AIR 1.1
69	 *  @productversion Flex 3
70	 */
71	public static const REQUIRED_MIN_MAX:uint = 0x4;
72
73	/**
74	 *  A bitflag passed by the axis to an element's <code>describeData()</code> method.
75	 *  If this flag is set, the element sets the
76	 *  <code>DescribeData.padding</code> property.
77	 *
78	 *  @langversion 3.0
79	 *  @playerversion Flash 9
80	 *  @playerversion AIR 1.1
81	 *  @productversion Flex 3
82	 */
83	public static const REQUIRED_PADDING:uint = 0x8;
84
85	//--------------------------------------------------------------------------
86	//
87	//  Constructor
88	//
89	//--------------------------------------------------------------------------
90
91	/**
92	 *  Constructor.
93	 *
94	 *  @langversion 3.0
95	 *  @playerversion Flash 9
96	 *  @playerversion AIR 1.1
97	 *  @productversion Flex 3
98	 */
99	public function DataDescription()
100	{
101		super();
102	}
103
104	//--------------------------------------------------------------------------
105	//
106	//  Properties
107	//
108	//--------------------------------------------------------------------------
109
110	//----------------------------------
111	//  boundedValues
112	//----------------------------------
113
114	[Inspectable(environment="none")]
115
116	/**
117	 *  An Array of BoundedValue objects describing the data in the element.
118	 *  BoundedValues are data points that have extra space reserved
119	 *  around the datapoint in the chart's data area.
120	 *  If requested, a chart element fills this property
121	 *  with whatever BoundedValues are necessary
122	 *  to ensure enough space is visible in the chart data area.
123	 *  For example, a ColumnSeries that needs 20 pixels
124	 *  above each column to display a data label.
125	 *
126	 *  @langversion 3.0
127	 *  @playerversion Flash 9
128	 *  @playerversion AIR 1.1
129	 *  @productversion Flex 3
130	 */
131	public var boundedValues:Array /* of BoundedValue */;
132
133	//----------------------------------
134	//  max
135	//----------------------------------
136
137	[Inspectable(environment="none")]
138
139	/**
140	 *  The maximum data value displayed by the element.
141	 *
142	 *  @langversion 3.0
143	 *  @playerversion Flash 9
144	 *  @playerversion AIR 1.1
145	 *  @productversion Flex 3
146	 */
147	public var max:Number;
148
149	//----------------------------------
150	//  min
151	//----------------------------------
152
153	[Inspectable(environment="none")]
154
155	/**
156	 *  The minimum data value displayed by the element.
157	 *
158	 *  @langversion 3.0
159	 *  @playerversion Flash 9
160	 *  @playerversion AIR 1.1
161	 *  @productversion Flex 3
162	 */
163	public var min:Number;
164
165	//----------------------------------
166	//  minInterval
167	//----------------------------------
168
169	[Inspectable(environment="none")]
170
171	/**
172	 *  The minimum interval, in data units,
173	 *  between any two values displayed by the element.
174	 *
175	 *  @langversion 3.0
176	 *  @playerversion Flash 9
177	 *  @playerversion AIR 1.1
178	 *  @productversion Flex 3
179	 */
180	public var minInterval:Number;
181
182	//----------------------------------
183	//  padding
184	//----------------------------------
185
186	[Inspectable(environment="none")]
187
188	/**
189	 *  The amount of padding, in data units, that the element requires
190	 *  beyond its min/max values to display its full values correctly .
191	 *
192	 *  @langversion 3.0
193	 *  @playerversion Flash 9
194	 *  @playerversion AIR 1.1
195	 *  @productversion Flex 3
196	 */
197	public var padding:Number;
198}
199
200}
201