<!--
  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>SampleMultitouch.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">Multitouch</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span>
    
    <span class="MXMLSpecial_Tag">&lt;fx:Declarations&gt;</span>
        <span class="MXMLSpecial_Tag">&lt;fx:Component</span><span class="MXMLDefault_Text"> className="</span><span class="MXMLString">Circle</span><span class="MXMLDefault_Text">"</span><span class="MXMLSpecial_Tag">&gt;</span>
            <span class="MXMLComponent_Tag">&lt;s:Ellipse</span><span class="MXMLDefault_Text"> width="</span><span class="MXMLString">120</span><span class="MXMLDefault_Text">" height="</span><span class="MXMLString">120</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span>
                <span class="MXMLComponent_Tag">&lt;s:fill&gt;</span>
                    <span class="MXMLComponent_Tag">&lt;s:SolidColor</span><span class="MXMLDefault_Text"> color="</span><span class="MXMLString">haloBlue</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
                <span class="MXMLComponent_Tag">&lt;/s:fill&gt;</span>
            <span class="MXMLComponent_Tag">&lt;/s:Ellipse&gt;</span>
        <span class="MXMLSpecial_Tag">&lt;/fx:Component&gt;</span>
    <span class="MXMLSpecial_Tag">&lt;/fx:Declarations&gt;</span>    
    
    <span class="MXMLSpecial_Tag">&lt;fx:Script&gt;</span>
        &lt;![CDATA[
            <span class="ActionScriptReserved">import</span> spark.components.supportClasses.StyleableTextField;
            <span class="ActionScriptReserved">import</span> spark.events.ViewNavigatorEvent;
           
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">circles</span>:<span class="ActionScriptDefault_Text">Object</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Object</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>;
            
            <span class="ActionScriptReserved">protected</span> function view1_viewActivateHandler(event:ViewNavigatorEvent):<span class="ActionScriptReserved">void</span>
            {    
                <span class="ActionScriptReserved">if</span> (!Multitouch.supportsTouchEvents)
                    currentState = <span class="ActionScriptString">"unsupported"</span>;
                <span class="ActionScriptReserved">else</span> 
                {
                    currentState = <span class="ActionScriptString">"normal"</span>;
                    Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
                    log.appendText(<span class="ActionScriptString">"Max touch points supported: "</span> + Multitouch.maxTouchPoints +<span class="ActionScriptString">"\n"</span>);
                    <span class="ActionScriptReserved"></span>addEventListener(TouchEvent.TOUCH_BEGIN,onTouchBegin);
                    addEventListener(TouchEvent.TOUCH_END,onTouchEnd);
                    <span class="ActionScriptReserved"></span>addEventListener(TouchEvent.TOUCH_MOVE,onTouchMove); 
                    <span class="ActionScriptReserved"></span>addEventListener(TouchEvent.TOUCH_OUT,onTouchOut);
                    <span class="ActionScriptReserved"></span>addEventListener(TouchEvent.TOUCH_OVER,onTouchOver);
                    <span class="ActionScriptReserved"></span>addEventListener(TouchEvent.TOUCH_ROLL_OUT,onTouchRollOut);
                    <span class="ActionScriptReserved"></span>addEventListener(TouchEvent.TOUCH_ROLL_OVER,onTouchRollOver);
                    <span class="ActionScriptReserved"></span>addEventListener(TouchEvent.TOUCH_TAP,onTouchTap);
                }
            }
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onTouchBegin</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>:<span class="ActionScriptDefault_Text">TouchEvent</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">appendText</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"Touch Begin\n"</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">c</span>:<span class="ActionScriptDefault_Text">Circle</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Circle</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptDefault_Text">c</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">x</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">localX</span> <span class="ActionScriptOperator">-</span> 70;
                <span class="ActionScriptDefault_Text">c</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">y</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">localY</span> <span class="ActionScriptOperator">-</span> 70;
                pnl.<span class="ActionScriptDefault_Text">addElement</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">c</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptDefault_Text">circles</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">touchPointID</span><span class="ActionScriptBracket/Brace">]</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">c</span>;
            <span class="ActionScriptBracket/Brace">}</span>
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onTouchEnd</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>:<span class="ActionScriptDefault_Text">TouchEvent</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">appendText</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"Touch End\n"</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptReserved">if</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">circles</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">touchPointID</span><span class="ActionScriptBracket/Brace">]</span> <span class="ActionScriptOperator">!=</span> <span class="ActionScriptReserved">null</span><span class="ActionScriptBracket/Brace">)</span>
                <span class="ActionScriptBracket/Brace">{</span>
                    <span class="ActionScriptDefault_Text">pnl.removeElement(circles[event.touchPointID]);</span>
                    <span class="ActionScriptReserved">delete</span> <span class="ActionScriptDefault_Text">circles</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">touchPointID</span><span class="ActionScriptBracket/Brace">]</span>;
                <span class="ActionScriptBracket/Brace">}</span>
                <span class="ActionScriptReserved">else</span>
                <span class="ActionScriptBracket/Brace">{</span>
                    log.appendText(<span class="ActionScriptString">"couldn't find "</span> + event.touchPointID);
                    StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
                <span class="ActionScriptBracket/Brace">}</span>
            <span class="ActionScriptBracket/Brace">}</span>
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> onTouchMove(event:TouchEvent):<span class="ActionScriptReserved">void</span>
            {
                log.appendText(<span class="ActionScriptString">"Touch Move\n"</span>);
                StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
                <span class="ActionScriptReserved">if</span> (circles[event.touchPointID] != <span class="ActionScriptReserved">null</span>)
                {
                    circles[event.touchPointID].x = event.localX - 70;
                    circles[event.touchPointID].y = event.localY - 70;
                }
                <span class="ActionScriptReserved">else</span>
                {
                    log.appendText(<span class="ActionScriptString">"couldn't find "</span> + event.touchPointID);
                    StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
                }
            }
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onTouchOut</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>:<span class="ActionScriptDefault_Text">TouchEvent</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">appendText</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"Touch Out\n"</span><span class="ActionScriptBracket/Brace">)</span>;
                StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
           <span class="ActionScriptBracket/Brace">}</span>
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onTouchOver</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>:<span class="ActionScriptDefault_Text">TouchEvent</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">appendText</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"Touch Over\n"</span><span class="ActionScriptBracket/Brace">)</span>;
                StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
            <span class="ActionScriptBracket/Brace">}</span>
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onTouchRollOut</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>:<span class="ActionScriptDefault_Text">TouchEvent</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">appendText</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"Touch Roll Out\n"</span><span class="ActionScriptBracket/Brace">)</span>;
                StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
           <span class="ActionScriptBracket/Brace">}</span>
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onTouchRollOver</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>:<span class="ActionScriptDefault_Text">TouchEvent</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">appendText</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"Touch Roll Over\n"</span><span class="ActionScriptBracket/Brace">)</span>;    
                StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
            <span class="ActionScriptBracket/Brace">}</span>
            
            <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onTouchTap</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>:<span class="ActionScriptDefault_Text">TouchEvent</span><span class="ActionScriptBracket/Brace">)</span>:<span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">appendText</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"Touch Tap\n"</span><span class="ActionScriptBracket/Brace">)</span>;    
                StyleableTextField(log.textDisplay).scrollV = StyleableTextField(log.textDisplay).scrollV+1;
            <span class="ActionScriptBracket/Brace">}</span>
        <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">25</span><span class="MXMLDefault_Text">" paddingBottom="</span><span class="MXMLString">5</span><span class="MXMLDefault_Text">" paddingLeft="</span><span class="MXMLString">5</span><span class="MXMLDefault_Text">" paddingRight="</span><span class="MXMLString">5</span><span class="MXMLDefault_Text">" gap="</span><span class="MXMLString">5</span><span class="MXMLDefault_Text">" 
                          horizontalAlign="</span><span class="MXMLString">center</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"> text="</span><span class="MXMLString">This device does not support multitouch.</span><span class="MXMLDefault_Text">" includeIn="</span><span class="MXMLString">unsupported</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
    <span class="MXMLComponent_Tag">&lt;s:TextArea</span><span class="MXMLDefault_Text"> editable="</span><span class="MXMLString">false</span><span class="MXMLDefault_Text">"
                width="</span><span class="MXMLString">95%</span><span class="MXMLDefault_Text">"  includeIn="</span><span class="MXMLString">normal</span><span class="MXMLDefault_Text">" paddingTop="</span><span class="MXMLString">10</span><span class="MXMLDefault_Text">" paddingLeft="</span><span class="MXMLString">10</span><span class="MXMLDefault_Text">" paddingRight="</span><span class="MXMLString">10</span><span class="MXMLDefault_Text">"
                text="</span><span class="MXMLString">Touch the screen to see a circle show up at the location where the touch event was received.</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">" bottom="</span><span class="MXMLString">10</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">300</span><span class="MXMLDefault_Text">" enabled="</span><span class="MXMLString">false</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
        <span class="MXMLComponent_Tag">&lt;s:Button</span><span class="MXMLDefault_Text"> label="</span><span class="MXMLString">Clear log</span><span class="MXMLDefault_Text">" click="</span><span class="ActionScriptDefault_Text">log</span><span class="ActionScriptOperator">.</span><span class="ActionScriptDefault_Text">text</span><span class="ActionScriptOperator">=</span><span class="ActionScriptString">''</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>
