<?xml version="1.0" encoding="utf-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->
<s:Module xmlns:fx="http://ns.adobe.com/mxml/2009"  
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx">
	
	<fx:Script>
		<![CDATA[
			
			import mx.collections.ArrayCollection;
			
			[Bindable]
			private var stockDataAC:ArrayCollection = new ArrayCollection( [
				{ Date: "25-Jul", Open: 40.55,  High: 40.75, Low: 40.24, Close:40.31},
				{ Date: "26-Jul", Open: 40.15,  High: 40.78, Low: 39.97, Close:40.34},
				{ Date: "27-Jul", Open: 40.38,  High: 40.66, Low: 40, Close:40.63},
				{ Date: "28-Jul", Open: 40.49,  High: 40.99, Low: 40.3, Close:40.98},
				{ Date: "29-Jul", Open: 40.13,  High: 40.4, Low: 39.65, Close:39.95},
				{ Date: "1-Aug", Open: 39.00,  High: 39.50, Low: 38.7, Close:38.6}, 
				{ Date: "2-Aug", Open: 38.68,  High: 39.34, Low: 37.75, Close:38.84}, 
				{ Date: "3-Aug", Open: 38.76,  High: 38.76, Low: 38.03, Close:38.12}, 
				{ Date: "4-Aug", Open: 37.98,  High: 37.98, Low: 36.56, Close:36.69},                       
				{ Date: "5-Aug", Open: 36.61,  High: 37, Low: 36.48, Close:36.86} ]); 
		]]>
	</fx:Script>
	
	<s:Panel title="HLOCChart Control" width="100%" height="100%">
		
		<s:layout>
			<s:HorizontalLayout paddingLeft="10" paddingRight="10" paddingTop="10" paddingBottom="10"/>
		</s:layout>
		
		<mx:HLOCChart id="hlocchart" height="100%" width="100%" paddingRight="5" paddingLeft="5"
					  color="0x323232" showDataTips="true" dataProvider="{stockDataAC}">
			
			<mx:verticalAxis>
				<mx:LinearAxis baseAtZero="false" />
			</mx:verticalAxis>
			
			<mx:horizontalAxis>
				<mx:CategoryAxis categoryField="Date" title="Date" />
			</mx:horizontalAxis>
			
			<mx:series>
				<mx:HLOCSeries openField="Open" highField="High" 
							   lowField="Low" closeField="Close"/>
			</mx:series>
		</mx:HLOCChart>
		
	</s:Panel>
	
</s:Module>
