<!--
  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.
-->
<!-- saved from url=(0014)about:internet -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>SampleAccelerometer.mxml</title>
<link rel="stylesheet" type="text/css" href="../SourceStyles.css"/>
</head>

<body>
<pre><span class="MXMLProcessing_Instruction">&lt;?xml version="1.0" encoding="utf-8"?&gt;</span>
<span class="MXMLComponent_Tag">&lt;s:View</span><span class="MXMLDefault_Text"> xmlns:fx="</span><span class="MXMLString">http://ns.adobe.com/mxml/2009</span><span class="MXMLDefault_Text">"
		 viewActivate=&quot;view1_viewActivateHandler(event)&quot; 
        xmlns:s="</span><span class="MXMLString">library://ns.adobe.com/flex/spark</span><span class="MXMLDefault_Text">"
        title="</span><span class="MXMLString">Accelerometer</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span>
    <span class="MXMLSpecial_Tag">&lt;fx:Script&gt;</span>
        &lt;![CDATA[
            <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">flash</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">events</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">AccelerometerEvent</span>;
            <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">flash</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">sensors</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">Accelerometer</span>;
            
            <span class="ActionScriptReserved">import</span> spark.events.ViewNavigatorEvent;;
            
            <span class="ActionScriptReserved">import</span> spark.components.supportClasses.StyleableTextField;
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">accelerometer</span>:<span class="ActionScriptDefault_Text">Accelerometer</span>;    
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> view1_viewActivateHandler(event:ViewNavigatorEvent):<span class="ActionScriptReserved">void</span>
            {
                <span class="ActionScriptReserved">if</span> (Accelerometer.isSupported==<span class="ActionScriptReserved">true</span>)
                {
                    currentState = <span class="ActionScriptString">"normal"</span>;
                    accelerometer = <span class="ActionScriptReserved">new</span> Accelerometer();
                    accelerometer.setRequestedUpdateInterval(100);
                    accelerometer.addEventListener(AccelerometerEvent.UPDATE, onUpdate);
                    addEventListener(ViewNavigatorEvent.REMOVING,onRemove);
                } 
                <span class="ActionScriptReserved">else</span> 
                {
                    currentState = <span class="ActionScriptString">"unsupported"</span>;
                    lblSupport.text = <span class="ActionScriptString">"Accelerometer feature not supported on this device."</span>;
                }
            }
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> onUpdate(event:AccelerometerEvent):<span class="ActionScriptReserved">void</span> 
            {
                log.appendText(<span class="ActionScriptString">"acceleration X: "</span> + event.accelerationX.toString() + <span class="ActionScriptString">"\n"</span>
                    + <span class="ActionScriptString">"acceleration Y: "</span> + event.accelerationY.toString() + <span class="ActionScriptString">"\n"</span>
                    + <span class="ActionScriptString">"acceleration Z "</span> + event.accelerationZ.toString()  + <span class="ActionScriptString">"\n"</span>
                    + <span class="ActionScriptString">"timestamp: "</span> + event.timestamp.toString()  + <span class="ActionScriptString">"\n"</span>);
                StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
            }
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> onRemove(event:ViewNavigatorEvent):<span class="ActionScriptReserved">void</span>
            {
                <span class="ActionScriptReserved">this</span>.accelerometer.removeEventListener(AccelerometerEvent.UPDATE, onUpdate);
            }
            
        <span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptBracket/Brace">]</span><span class="ActionScriptOperator">&gt;</span>
    <span class="MXMLSpecial_Tag">&lt;/fx:Script&gt;</span>
    
    <span class="MXMLComponent_Tag">&lt;s:states&gt;</span>
        <span class="MXMLComponent_Tag">&lt;s:State</span><span class="MXMLDefault_Text"> name="</span><span class="MXMLString">normal</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
        <span class="MXMLComponent_Tag">&lt;s:State</span><span class="MXMLDefault_Text"> name="</span><span class="MXMLString">unsupported</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
    <span class="MXMLComponent_Tag">&lt;/s:states&gt;</span>
    
    <span class="MXMLComponent_Tag">&lt;s:layout&gt;</span>
        <span class="MXMLComponent_Tag">&lt;s:VerticalLayout</span><span class="MXMLDefault_Text"> paddingTop="</span><span class="MXMLString">15</span><span class="MXMLDefault_Text">" paddingBottom="</span><span class="MXMLString">15</span><span class="MXMLDefault_Text">" paddingLeft="</span><span class="MXMLString">15</span><span class="MXMLDefault_Text">" paddingRight="</span><span class="MXMLString">15</span><span class="MXMLDefault_Text">" gap="</span><span class="MXMLString">40</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
    <span class="MXMLComponent_Tag">&lt;/s:layout&gt;</span>
    
    <span class="MXMLComponent_Tag">&lt;s:Label</span><span class="MXMLDefault_Text"> id="</span><span class="MXMLString">lblSupport</span><span class="MXMLDefault_Text">" includeIn="</span><span class="MXMLString">unsupported</span><span class="MXMLDefault_Text">" width="</span><span class="MXMLString">95%</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
    <span class="MXMLComponent_Tag">&lt;s:TextArea</span><span class="MXMLDefault_Text"> width="</span><span class="MXMLString">100%</span><span class="MXMLDefault_Text">" editable="</span><span class="MXMLString">false</span><span class="MXMLDefault_Text">"  
                text="</span><span class="MXMLString">The Accelerometer dispatches events based on activity detected by the device's motion sensor representing location or movement along a 3-dimensional axis.</span><span class="MXMLDefault_Text">" includeIn="</span><span class="MXMLString">normal</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
    <span class="MXMLComponent_Tag">&lt;s:VGroup</span><span class="MXMLDefault_Text"> width="</span><span class="MXMLString">400</span><span class="MXMLDefault_Text">" includeIn="</span><span class="MXMLString">normal</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span>
        <span class="MXMLComponent_Tag">&lt;s:Label</span><span class="MXMLDefault_Text"> text="</span><span class="MXMLString">Event Log:</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
        <span class="MXMLComponent_Tag">&lt;s:TextArea</span><span class="MXMLDefault_Text"> id="</span><span class="MXMLString">log</span><span class="MXMLDefault_Text">" editable="</span><span class="MXMLString">false</span><span class="MXMLDefault_Text">" height="</span><span class="MXMLString">200</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
    <span class="MXMLComponent_Tag">&lt;/s:VGroup&gt;</span>
<span class="MXMLComponent_Tag">&lt;/s:View&gt;</span></pre></body>
</html>
