<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mariush T. - Flex Developer, Blogger &#187; AIR</title>
	<atom:link href="http://mariusht.com/blog/tag/air/feed/" rel="self" type="application/rss+xml" />
	<link>http://mariusht.com/blog</link>
	<description>A blog about Flex Development.</description>
	<lastBuildDate>Tue, 11 Oct 2011 08:56:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>MemberDatabase &#8211; AIR application (Flex/PureMVC)</title>
		<link>http://mariusht.com/blog/2010/03/23/memberdatabase-air-application-flex-puremvc/</link>
		<comments>http://mariusht.com/blog/2010/03/23/memberdatabase-air-application-flex-puremvc/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 20:02:19 +0000</pubDate>
		<dc:creator>Mariush T.</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[Flex 4]]></category>
		<category><![CDATA[PureMVC]]></category>
		<category><![CDATA[SQLite]]></category>

		<guid isPermaLink="false">http://mariusht.com/blog/?p=2008</guid>
		<description><![CDATA[
This demo illustrates how you can use Flex, PureMVC and Adobe AIR local SQL database to create simple member management system. With the Member Database you can store unlimited number of members, sort any information in the database and export data to xml file.



Sample Files:
MemberDatabase.zip (ZIP, 647 KB)
]]></description>
			<content:encoded><![CDATA[<p><img alt="" src="http://mariusht.com/files/blog/member_database/memberdatabase.gif" class="aligncenter" width="656" height="364" /></p>
<p>This demo illustrates how you can use Flex, PureMVC and Adobe AIR local SQL database to create simple member management system. With the Member Database you can store unlimited number of members, sort any information in the database and export data to xml file.</p>
<div style="float: right; margin: 5px 0 15px 5px;">
<input class="btn" type="button" value="Install App" onClick="window.open('http://mariusht.com/files/blog/member_database/install/')"/>
<input class="btn" type="button" value="View Source" onClick="window.open('http://mariusht.com/files/blog/member_database/srcview/')"/></div>
<p><strong>Sample Files:</strong><br />
<a href="http://mariusht.com/files/blog/member_database/MemberDatabase.zip">MemberDatabase.zip</a> <span style="color: #808080;">(ZIP, 647 KB)</span></p>
]]></content:encoded>
			<wfw:commentRss>http://mariusht.com/blog/2010/03/23/memberdatabase-air-application-flex-puremvc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Resumable File Downloader &#8211; Simple AIR app</title>
		<link>http://mariusht.com/blog/2010/03/10/resumable-file-downloader-simple-air-app/</link>
		<comments>http://mariusht.com/blog/2010/03/10/resumable-file-downloader-simple-air-app/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 23:59:28 +0000</pubDate>
		<dc:creator>Mariush T.</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[ByteArray]]></category>
		<category><![CDATA[FileStream]]></category>
		<category><![CDATA[Flex 4]]></category>
		<category><![CDATA[URLRequest]]></category>
		<category><![CDATA[URLRequestHeader]]></category>
		<category><![CDATA[URLStream]]></category>

		<guid isPermaLink="false">http://mariusht.com/blog/?p=1884</guid>
		<description><![CDATA[
This AIR application demonstrates how to download, pause and resume downloads of larger files(mp3, flv, etc) and save to the user&#8217;s computer. Big Thanks to Benjamin Dobler for his blog post Resumable Downloads with AIR.


Sample Files:
ResumableDownloader.air (AIR, 524 KB)
]]></description>
			<content:encoded><![CDATA[<p><img alt="" src="http://mariusht.com/files/blog/resumable_downloader/resumableDownloader.jpg" class="alignnone" width="656" height="319" /></p>
<p>This AIR application demonstrates how to download, pause and resume downloads of larger files(mp3, flv, etc) and save to the user&#8217;s computer. Big Thanks to <a href="http://richapps.de/">Benjamin Dobler</a> for his blog post <a href="http://richapps.de/?p=113">Resumable Downloads with AIR</a>.</p>
<div style="float: right; margin: 5px 0 15px 5px;">
<input class="btn" type="button" value="View Source" onClick="window.open('http://mariusht.com/files/blog/resumable_downloader/ResumableDownloader.mxml.html')"/></div>
<p><strong>Sample Files:</strong><br />
<a href="http://mariusht.com/files/blog/resumable_downloader/ResumableDownloader.air">ResumableDownloader.air</a> <span style="color: #808080;">(AIR, 524 KB)</span></p>
]]></content:encoded>
			<wfw:commentRss>http://mariusht.com/blog/2010/03/10/resumable-file-downloader-simple-air-app/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Tracking user presence</title>
		<link>http://mariusht.com/blog/2009/10/17/tracking-user-presence/</link>
		<comments>http://mariusht.com/blog/2009/10/17/tracking-user-presence/#comments</comments>
		<pubDate>Sat, 17 Oct 2009 21:52:57 +0000</pubDate>
		<dc:creator>Mariush T.</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[Event]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://mariusht.com/blog/?p=1449</guid>
		<description><![CDATA[Adobe AIR applications can detect if user is actively using a computer. The NativeApplication object dispatches two events:
userIdle event &#8211; user is not using a computer,
userPresent event &#8211; user is using a computer again.
The following lines of code set the idle threshold to 20 seconds and listen for both the userIdle and userPresent events:
&#60;?xml version="1.0" [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://mariusht.com/files/blog/user_presence/userPresence.jpg" alt="" width="231" height="100" />Adobe AIR applications can detect if user is actively using a computer. The NativeApplication object dispatches two events:<br />
userIdle event &#8211; user is not using a computer,<br />
userPresent event &#8211; user is using a computer again.<br />
The following lines of code set the idle threshold to 20 seconds and listen for both the userIdle and userPresent events:</p>
<pre class="MXML"><span class="MXMLProcessing_Instruction">&lt;?xml version="1.0" encoding="utf-8"?&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:WindowedApplication</span><span class="MXMLDefault_Text"> xmlns:mx="</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">" layout="</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">"
    creationComplete="</span><span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="MXMLDefault_Text">" viewSourceURL="</span><span class="MXMLString">srcview/index.html</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span> 

    <span class="MXMLSpecial_Tag">&lt;mx:Script&gt;</span>
        <span class="ActionScriptOperator">&lt;!</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">CDATA</span><span class="ActionScriptBracket/Brace">[</span>
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">nativeApplication</span>.<span class="ActionScriptDefault_Text">idleThreshold</span> <span class="ActionScriptOperator">=</span> 20;
                <span class="ActionScriptDefault_Text">nativeApplication</span>.<span class="ActionScriptDefault_Text">addEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">Event</span>.<span class="ActionScriptDefault_Text">USER_IDLE</span>, <span class="ActionScriptDefault_Text">userIdleHandler</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptDefault_Text">nativeApplication</span>.<span class="ActionScriptDefault_Text">addEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">Event</span>.<span class="ActionScriptDefault_Text">USER_PRESENT</span>, <span class="ActionScriptDefault_Text">userPresentHandler</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptBracket/Brace">}</span> 

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">userIdleHandler</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Event</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScripttrace">trace</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">'idle'</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptBracket/Brace">}</span> 

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">userPresentHandler</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Event</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScripttrace">trace</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">'present'</span><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;/mx:Script&gt;</span> 

<span class="MXMLComponent_Tag">&lt;/mx:WindowedApplication&gt;</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://mariusht.com/blog/2009/10/17/tracking-user-presence/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create popup window and center on the second screen</title>
		<link>http://mariusht.com/blog/2009/04/27/create-popup-window-and-center-on-the-second-screen/</link>
		<comments>http://mariusht.com/blog/2009/04/27/create-popup-window-and-center-on-the-second-screen/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 00:06:32 +0000</pubDate>
		<dc:creator>Mariush T.</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[nativeWindow]]></category>
		<category><![CDATA[open()]]></category>
		<category><![CDATA[Window]]></category>
		<category><![CDATA[Windowe]]></category>

		<guid isPermaLink="false">http://mariusht.com/blog/?p=412</guid>
		<description><![CDATA[Sometimes you need a way to create popup window from your application(WindowedApplication). In that case you could use code from my last post Center AIR Window on the screen. This code works just fine for windows(WindowedApplication and Window) running on the main screen. It wouldn&#8217;t work correctly in a case where main application(WindowedApplication) is running [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes you need a way to create popup window from your application(WindowedApplication). In that case you could use code from my last post <a href="http://mariusht.com/blog/2009/04/23/center-air-window-on-the-screen/">Center AIR Window on the screen</a>. This code works just fine for windows(WindowedApplication and Window) running on the main screen. It wouldn&#8217;t work correctly in a case where main application(WindowedApplication) <strong>is running NOT on the main screen</strong> but on the second, third etc monitor. Below picture shows you just that, WindowedApplication is running on the second screen and popup window is center vertically and horizontally above it.<img alt="" src="http://mariusht.com/files/blog/center_popup_window/popup.jpg" class="alignnone" width="669" height="255" /></p>
<p><span id="more-412"></span></p>
<pre class="MXML"><span class="MXMLProcessing_Instruction">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:WindowedApplication</span><span class="MXMLDefault_Text"> xmlns:mx=&quot;</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">&quot; layout=&quot;</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span> 

    <span class="MXMLSpecial_Tag">&lt;mx:Script&gt;</span>
        <span class="ActionScriptOperator">&lt;!</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">CDATA</span><span class="ActionScriptBracket/Brace">[</span>
            <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">mx</span>.<span class="ActionScriptDefault_Text">core</span>.<span class="ActionScriptDefault_Text">Application</span>;
            <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">mx</span>.<span class="ActionScriptDefault_Text">core</span>.<span class="ActionScriptDefault_Text">Window</span>;

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">openPopupWindow</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">alertWindow</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Window</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Window</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">alertWindow</span>.<span class="ActionScriptDefault_Text">title</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">&apos;Alert Window&apos;</span>;
                <span class="ActionScriptDefault_Text">alertWindow</span>.<span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">=</span> 400;
                <span class="ActionScriptDefault_Text">alertWindow</span>.<span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">=</span> 200;
                <span class="ActionScriptDefault_Text">alertWindow</span>.<span class="ActionScriptDefault_Text">open</span><span class="ActionScriptBracket/Brace">()</span>;

                <span class="ActionScriptDefault_Text">centerWindow</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">alertWindow</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptBracket/Brace">}</span> 

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">centerWindow</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">window</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Window</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">screenBounds</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Rectangle</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">Screen</span>.<span class="ActionScriptDefault_Text">mainScreen</span>.<span class="ActionScriptDefault_Text">bounds</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">nativeWindow</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">NativeWindow</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">window</span>.<span class="ActionScriptDefault_Text">nativeWindow</span>;

                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">mainNativeWindow</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">NativeWindow</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">Application</span>.<span class="ActionScriptDefault_Text">application</span>.<span class="ActionScriptDefault_Text">nativeWindow</span>;
                <span class="ActionScriptReserved">for</span> <span class="ActionScriptReserved">each</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">screen</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Screen</span> <span class="ActionScriptReserved">in</span> <span class="ActionScriptDefault_Text">Screen</span>.<span class="ActionScriptDefault_Text">screens</span>.<span class="ActionScriptDefault_Text">reverse</span><span class="ActionScriptBracket/Brace">())</span>
                <span class="ActionScriptBracket/Brace">{</span>
                    <span class="ActionScriptReserved">if</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">mainNativeWindow</span>.<span class="ActionScriptDefault_Text">x</span> <span class="ActionScriptOperator">&gt;</span> <span class="ActionScriptDefault_Text">screen</span>.<span class="ActionScriptDefault_Text">bounds</span>.<span class="ActionScriptDefault_Text">x</span><span class="ActionScriptBracket/Brace">)</span>
                    <span class="ActionScriptBracket/Brace">{</span>
                        <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">x</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">mainNativeWindow</span>.<span class="ActionScriptDefault_Text">x</span> <span class="ActionScriptOperator">+</span>
                                             <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">mainNativeWindow</span>.<span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">width</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
                        <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">y</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">mainNativeWindow</span>.<span class="ActionScriptDefault_Text">y</span> <span class="ActionScriptOperator">+</span>
                                             <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">mainNativeWindow</span>.<span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">height</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
                    <span class="ActionScriptBracket/Brace">}</span>
                    <span class="ActionScriptReserved">else</span>
                    <span class="ActionScriptBracket/Brace">{</span>
                        <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">x</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">mainNativeWindow</span>.<span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">width</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
                        <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">y</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">mainNativeWindow</span>.<span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">height</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
                    <span class="ActionScriptBracket/Brace">}</span>
                <span class="ActionScriptBracket/Brace">}</span> 

                <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">x</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">screenBounds</span>.<span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">width</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
                <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">y</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">screenBounds</span>.<span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">height</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
            <span class="ActionScriptBracket/Brace">}</span>
        <span class="ActionScriptBracket/Brace">]]</span><span class="ActionScriptOperator">&gt;</span>
    <span class="MXMLSpecial_Tag">&lt;/mx:Script&gt;</span>
    <span class="MXMLComponent_Tag">&lt;mx:Button</span><span class="MXMLDefault_Text"> x=&quot;</span><span class="MXMLString">10</span><span class="MXMLDefault_Text">&quot; y=&quot;</span><span class="MXMLString">10</span><span class="MXMLDefault_Text">&quot; label=&quot;</span><span class="MXMLString">Open popup window</span><span class="MXMLDefault_Text">&quot;
        click=&quot;</span><span class="ActionScriptDefault_Text">openPopupWindow</span><span class="ActionScriptBracket/Brace">()</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span> 

<span class="MXMLComponent_Tag">&lt;/mx:WindowedApplication&gt;</span></pre>
<p><a href="http://www.BlueHost.Com/track/mariusht"><img alt="" src="http://mariusht.com/files/banners/bluehost/bh_728x90_02.gif" class="alignnone" width="669" height="82" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://mariusht.com/blog/2009/04/27/create-popup-window-and-center-on-the-second-screen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Center AIR Window on the screen</title>
		<link>http://mariusht.com/blog/2009/04/23/center-air-window-on-the-screen/</link>
		<comments>http://mariusht.com/blog/2009/04/23/center-air-window-on-the-screen/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 16:45:56 +0000</pubDate>
		<dc:creator>Mariush T.</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[Window]]></category>
		<category><![CDATA[WindowedApplication]]></category>

		<guid isPermaLink="false">http://mariusht.com/blog/?p=295</guid>
		<description><![CDATA[You might have noticed that Window or WindowedApplication doesn&#8217;t load in the center of your screen. By default, window loads somewhere in the left side on your desktop. I personally think, that this is a bad user experience and you should always center window vertically and horizontally on screen. You can do this by setting [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">You might have noticed that Window or WindowedApplication doesn&#8217;t load in the center of your screen. By default, window loads <strong>somewhere</strong> in the left side on your desktop. I personally think, that this is a bad user experience and you should <strong>always center window vertically and horizontally</strong> on screen. You can do this by setting window <span style="color: #ff0000;"><strong>x</strong></span> coordinate to <span style="color: #ff0000;"><strong>(screen.width &#8211; window.width)/2</strong> </span> and <span style="color: #ff0000;"><strong>y</strong></span> coordinate to <span style="color: #ff0000;"><strong>(screen.height &#8211; window.height)/2</strong></span>.</p>
<p><img class="alignnone" src="http://mariusht.com/files/blog/center_air_window/preview.jpg" alt="" width="669" height="198" /></p>
<pre class="MXML"><span class="MXMLProcessing_Instruction">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:WindowedApplication</span><span class="MXMLDefault_Text"> xmlns:mx=&quot;</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">&quot; layout=&quot;</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">&quot;
    creationComplete=&quot;</span><span class="ActionScriptDefault_Text">centerWindow</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptReserved">this</span><span class="ActionScriptBracket/Brace">)</span><span class="MXMLDefault_Text">&quot; viewSourceURL=&quot;</span><span class="MXMLString">srcview/index.html</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span> 

    <span class="MXMLSpecial_Tag">&lt;mx:Script&gt;</span>
        <span class="ActionScriptOperator">&lt;!</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">CDATA</span><span class="ActionScriptBracket/Brace">[</span>
            <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">mx</span>.<span class="ActionScriptDefault_Text">core</span>.<span class="ActionScriptDefault_Text">Window</span>;

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">centerWindow</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">window</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">WindowedApplication</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">screenBounds</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Rectangle</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">Screen</span>.<span class="ActionScriptDefault_Text">mainScreen</span>.<span class="ActionScriptDefault_Text">bounds</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">nativeWindow</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">NativeWindow</span>  <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">window</span>.<span class="ActionScriptDefault_Text">nativeWindow</span>;

                <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">x</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">screenBounds</span>.<span class="ActionScriptDefault_Text">width</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">width</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
                <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">y</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">screenBounds</span>.<span class="ActionScriptDefault_Text">height</span> <span class="ActionScriptOperator">-</span> <span class="ActionScriptDefault_Text">nativeWindow</span>.<span class="ActionScriptDefault_Text">height</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2;
            <span class="ActionScriptBracket/Brace">}</span>
        <span class="ActionScriptBracket/Brace">]]</span><span class="ActionScriptOperator">&gt;</span>
    <span class="MXMLSpecial_Tag">&lt;/mx:Script&gt;</span> 

<span class="MXMLComponent_Tag">&lt;/mx:WindowedApplication&gt;</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://mariusht.com/blog/2009/04/23/center-air-window-on-the-screen/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Launching external AIR application from the browser</title>
		<link>http://mariusht.com/blog/2009/04/17/launching-external-air-application-from-the-browser/</link>
		<comments>http://mariusht.com/blog/2009/04/17/launching-external-air-application-from-the-browser/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 02:30:32 +0000</pubDate>
		<dc:creator>Mariush T.</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[applicationDomain]]></category>
		<category><![CDATA[contentLoaderInfo]]></category>
		<category><![CDATA[launchApplication]]></category>
		<category><![CDATA[LoaderContext]]></category>

		<guid isPermaLink="false">http://mariusht.com/blog/?p=237</guid>
		<description><![CDATA[

&#60;?xml version=&#34;1.0&#34; encoding=&#34;utf-8&#34;?&#62;
&#60;mx:Application xmlns:mx=&#34;http://www.adobe.com/2006/mxml&#34; layout=&#34;absolute&#34;
    creationComplete=&#34;init()&#34; viewSourceURL=&#34;srcview/index.html&#34;&#62; 

    &#60;mx:Script&#62;
        &#60;![CDATA[
            private var _air:Object;
            private var _applicationID:String = &apos;YOUR_APP_ID&apos;;
   [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="" src="http://mariusht.com/files/blog/launching_air_app_from_the_browser/preview.jpg" class="alignnone" width="669" height="217" /><br />
<span id="more-237"></span>
<pre class="MXML"><span class="MXMLProcessing_Instruction">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:Application</span><span class="MXMLDefault_Text"> xmlns:mx=&quot;</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">&quot; layout=&quot;</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">&quot;
    creationComplete=&quot;</span><span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="MXMLDefault_Text">&quot; viewSourceURL=&quot;</span><span class="MXMLString">srcview/index.html</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">&gt;</span> 

    <span class="MXMLSpecial_Tag">&lt;mx:Script&gt;</span>
        <span class="ActionScriptOperator">&lt;!</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">CDATA</span><span class="ActionScriptBracket/Brace">[</span>
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_air</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Object</span>;
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_applicationID</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">String</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">&apos;YOUR_APP_ID&apos;</span>;
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_publisherID</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">String</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">&apos;YOUR_PUBLISHER_ID&apos;</span>;
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_arguments</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">String</span>;

            <span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptMetadata">Bindable</span><span class="ActionScriptBracket/Brace">]</span>
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">_output</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">String</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">&apos;&apos;</span>;

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptReserved">const</span> <span class="ActionScriptDefault_Text">AIR_DETECTION_URL</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">String</span> <span class="ActionScriptOperator">=</span>
                <span class="ActionScriptString">&apos;http://airdownload.adobe.com/air/browserapi/air.swf&apos;</span>;

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">_output</span> <span class="ActionScriptOperator">+=</span> <span class="ActionScriptString">&apos;Detecting AIR Installation...n&apos;</span>;

                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">loader</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Loader</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Loader</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">loaderContext</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">LoaderContext</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">LoaderContext</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">loaderContext</span>.<span class="ActionScriptDefault_Text">applicationDomain</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">ApplicationDomain</span>.<span class="ActionScriptDefault_Text">currentDomain</span>;
                <span class="ActionScriptDefault_Text">loader</span>.<span class="ActionScriptDefault_Text">contentLoaderInfo</span>.<span class="ActionScriptDefault_Text">addEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">Event</span>.<span class="ActionScriptDefault_Text">INIT</span>, <span class="ActionScriptDefault_Text">onInit</span><span class="ActionScriptBracket/Brace">)</span>;

                <span class="ActionScriptDefault_Text">loader</span>.<span class="ActionScriptDefault_Text">load</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">URLRequest</span><span class="ActionScriptBracket/Brace">(A</span><span class="ActionScriptDefault_Text">IR_DETECTION_URL</span><span class="ActionScriptBracket/Brace">)</span>, <span class="ActionScriptDefault_Text">loaderContext</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptBracket/Brace">}</span> 

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onInit</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Event</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">_air</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">target</span>.<span class="ActionScriptDefault_Text">content</span>;
                <span class="ActionScriptReserved">switch</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_air</span>.<span class="ActionScriptDefault_Text">getStatus</span><span class="ActionScriptBracket/Brace">())</span>
                <span class="ActionScriptBracket/Brace">{</span>
                    <span class="ActionScriptReserved">case</span> <span class="ActionScriptString">&quot;installed&quot;</span> <span class="ActionScriptOperator">:</span>
                        <span class="ActionScriptComment">// AIR is installed and has been detected
</span>                        <span class="ActionScriptDefault_Text">_output</span> <span class="ActionScriptOperator">+=</span> <span class="ActionScriptString">&apos;SUCCESS: AIR installation detectedn&apos;</span>;
                        <span class="ActionScriptDefault_Text">stage</span>.<span class="ActionScriptDefault_Text">addEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">MouseEvent</span>.<span class="ActionScriptDefault_Text">CLICK</span>, <span class="ActionScriptDefault_Text">onButtonClicked</span><span class="ActionScriptBracket/Brace">)</span>;
                        <span class="ActionScriptReserved">break</span>;
                    <span class="ActionScriptReserved">case</span> <span class="ActionScriptString">&quot;available&quot;</span> <span class="ActionScriptOperator">:</span>
                        <span class="ActionScriptComment">// AIR is Available
</span>                        <span class="ActionScriptDefault_Text">_output</span> <span class="ActionScriptOperator">+=</span> <span class="ActionScriptString">&apos;SUCCESS: AIR is availablen&apos;</span>;
                        <span class="ActionScriptReserved">break</span>;
                    <span class="ActionScriptReserved">case</span> <span class="ActionScriptString">&quot;unavailable&quot;</span> <span class="ActionScriptOperator">:</span>
                        <span class="ActionScriptComment">// AIR Not Available
</span>                        <span class="ActionScriptDefault_Text">_output</span> <span class="ActionScriptOperator">+=</span> <span class="ActionScriptString">&apos;FAILURE: AIR not available&apos;</span>;
                        <span class="ActionScriptReserved">break</span>;
                <span class="ActionScriptBracket/Brace">}</span>
            <span class="ActionScriptBracket/Brace">}</span> 

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">onButtonClicked</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">MouseEvent</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">_air</span>.<span class="ActionScriptDefault_Text">launchApplication</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">_applicationID</span>,<span class="ActionScriptDefault_Text">_publisherID</span>,<span class="ActionScriptDefault_Text">_arguments</span><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;/mx:Script&gt;</span>
    <span class="MXMLComponent_Tag">&lt;mx:TextArea</span><span class="MXMLDefault_Text"> x=&quot;</span><span class="MXMLString">10</span><span class="MXMLDefault_Text">&quot; y=&quot;</span><span class="MXMLString">10</span><span class="MXMLDefault_Text">&quot; height=&quot;</span><span class="MXMLString">178</span><span class="MXMLDefault_Text">&quot; borderStyle=&quot;</span><span class="MXMLString">solid</span><span class="MXMLDefault_Text">&quot; borderColor=&quot;</span><span class="MXMLString">#67696A</span><span class="MXMLDefault_Text">&quot;
        text=&quot;</span><span class="MXMLString">{</span><span class="ActionScriptDefault_Text">_output</span><span class="MXMLString">}</span><span class="MXMLDefault_Text">&quot; width=&quot;</span><span class="MXMLString">255</span><span class="MXMLDefault_Text">&quot;</span><span class="MXMLComponent_Tag">/&gt;</span> 

<span class="MXMLComponent_Tag">&lt;/mx:Application&gt;</span></pre>
<p><a href="http://mariusht.com/files/blog/launching_air_app_from_the_browser/bin/LaunchAIRApp.html">Launch Demo</a></p>
<p>Useful links:<br />
<a href="http://www.davidtucker.net/2008/01/11/air-tip-6-launching-an-application-from-the-browser/">http://www.davidtucker.net/2008/01/11/air-tip-6-launching-an-application-from-the-browser/</a></p>
<p><a href="http://www.dpbolvw.net/click-3456007-10589138" target="_top"> <img src="http://www.ftjcfx.com/image-3456007-10589138" border="0" alt="Photoshop CS4" width="669" height="91" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://mariusht.com/blog/2009/04/17/launching-external-air-application-from-the-browser/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Dragging and Dropping images from an AIR application</title>
		<link>http://mariusht.com/blog/2009/04/08/dragging-and-dropping-images-from-an-air-application/</link>
		<comments>http://mariusht.com/blog/2009/04/08/dragging-and-dropping-images-from-an-air-application/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 03:40:28 +0000</pubDate>
		<dc:creator>Mariush T.</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[drag]]></category>
		<category><![CDATA[drop]]></category>
		<category><![CDATA[NativeDragManager]]></category>

		<guid isPermaLink="false">http://mariusht.com/blog/?p=74</guid>
		<description><![CDATA[In order to drag files from an AIR application, you will need to use the NativeDragManager class. The NativeDragManager class coordinates drag-and-drop operations between an AIR application and the native operating system, between two applications, or between components within a single application.
[See post to watch Flash video]
&#60;?xml version="1.0" encoding="utf-8"?&#62;
&#60;mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute" xmlns:local="*" width="300" height="200" viewSourceURL="srcview/index.html"&#62; 

 [...]]]></description>
			<content:encoded><![CDATA[<p>In order to drag files from an AIR application, you will need to use the NativeDragManager class. The NativeDragManager class coordinates drag-and-drop operations between an AIR application and the native operating system, between two applications, or between components within a single application.<br />
[See post to watch Flash video]<span id="more-74"></span></p>
<pre class="MXML"><span class="MXMLProcessing_Instruction">&lt;?xml version="1.0" encoding="utf-8"?&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:WindowedApplication</span><span class="MXMLDefault_Text"> xmlns:mx="</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">"
    layout="</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">" xmlns:local="</span><span class="MXMLString">*</span><span class="MXMLDefault_Text">" width="</span><span class="MXMLString">300</span><span class="MXMLDefault_Text">" height="</span><span class="MXMLString">200</span><span class="MXMLDefault_Text">" viewSourceURL="</span><span class="MXMLString">srcview/index.html</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span> 

    <span class="MXMLSpecial_Tag">&lt;mx:Script&gt;</span>
        <span class="ActionScriptOperator">&lt;!</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">CDATA</span><span class="ActionScriptBracket/Brace">[</span>
            <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">mx</span>.<span class="ActionScriptDefault_Text">core</span>.<span class="ActionScriptDefault_Text">UIComponent</span>;

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">dragItem</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">UIComponent</span>;
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">dragImg</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Image</span>;

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">startNativeDrag</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">MouseEvent</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">dragItem</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">UIComponent</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">currentTarget</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">bitmapFile</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">File</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">File</span>.<span class="ActionScriptDefault_Text">applicationDirectory</span>;
                <span class="ActionScriptDefault_Text">bitmapFile</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">bitmapFile</span>.<span class="ActionScriptDefault_Text">resolvePath</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">'air_icon.png'</span><span class="ActionScriptBracket/Brace">)</span>;

                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">offset</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Point</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Point</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptOperator">-</span><span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">localX</span>, <span class="ActionScriptOperator">-</span><span class="ActionScriptDefault_Text">event</span>.<span class="ActionScriptDefault_Text">localY</span><span class="ActionScriptBracket/Brace">)</span>;

                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">clip</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Clipboard</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">Clipboard</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">clip</span>.<span class="ActionScriptDefault_Text">setData</span><span class="ActionScriptBracket/Brace">(C</span><span class="ActionScriptDefault_Text">lipboardFormats</span>.<span class="ActionScriptDefault_Text">FILE_LIST_FORMAT</span>, <span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptDefault_Text">bitmapFile</span><span class="ActionScriptBracket/Brace">])</span>;

                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">bd</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">BitmapData</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">BitmapData</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">dragItem</span>.<span class="ActionScriptDefault_Text">width</span>, <span class="ActionScriptDefault_Text">dragItem</span>.<span class="ActionScriptDefault_Text">height</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptDefault_Text">bd</span>.<span class="ActionScriptDefault_Text">draw</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">dragItem</span><span class="ActionScriptBracket/Brace">)</span>;

                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">dragOptions</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">NativeDragOptions</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">NativeDragOptions</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">dragOptions</span>.<span class="ActionScriptDefault_Text">allowCopy</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">true</span>;
                <span class="ActionScriptDefault_Text">dragOptions</span>.<span class="ActionScriptDefault_Text">allowLink</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">true</span>;
                <span class="ActionScriptDefault_Text">dragOptions</span>.<span class="ActionScriptDefault_Text">allowMove</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">false</span>;

                <span class="ActionScriptDefault_Text">dragItem</span>.<span class="ActionScriptDefault_Text">addEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">NativeDragEvent</span>.<span class="ActionScriptDefault_Text">NATIVE_DRAG_COMPLETE</span>, <span class="ActionScriptDefault_Text">stopNativeDrag</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptDefault_Text">NativeDragManager</span>.<span class="ActionScriptDefault_Text">doDrag</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">dragItem</span>, <span class="ActionScriptDefault_Text">clip</span>, <span class="ActionScriptDefault_Text">bd</span>, <span class="ActionScriptDefault_Text">offset</span>, <span class="ActionScriptDefault_Text">dragOptions</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptBracket/Brace">}</span> 

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">stopNativeDrag</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">NativeDragEvent</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">dragItem</span>.<span class="ActionScriptDefault_Text">removeEventListener</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">NativeDragEvent</span>.<span class="ActionScriptDefault_Text">NATIVE_DRAG_COMPLETE</span>, <span class="ActionScriptDefault_Text">stopNativeDrag</span><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;/mx:Script&gt;</span> 

    <span class="MXMLComponent_Tag">&lt;mx:Image</span><span class="MXMLDefault_Text"> id="</span><span class="MXMLString">img</span><span class="MXMLDefault_Text">"
        x="</span><span class="MXMLString">83</span><span class="MXMLDefault_Text">" y="</span><span class="MXMLString">41</span><span class="MXMLDefault_Text">"
        source="</span><span class="MXMLString">air_icon.png</span><span class="MXMLDefault_Text">"
        width="</span><span class="MXMLString">98</span><span class="MXMLDefault_Text">" height="</span><span class="MXMLString">98</span><span class="MXMLDefault_Text">"
        mouseDown="</span><span class="ActionScriptDefault_Text">startNativeDrag</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">event</span><span class="ActionScriptBracket/Brace">)</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span> 

<span class="MXMLComponent_Tag">&lt;/mx:WindowedApplication&gt;</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://mariusht.com/blog/2009/04/08/dragging-and-dropping-images-from-an-air-application/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

