<?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>FlexDaddy &#187; Tutorial</title>
	<atom:link href="http://www.flexdaddy.com/category/tutorial/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.flexdaddy.com</link>
	<description>Andrew Spaulding on Adobe Flash Platform Technologies</description>
	<lastBuildDate>Fri, 26 Mar 2010 03:42:40 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Searchable flash video with speech transcripts</title>
		<link>http://www.flexdaddy.com/2010/03/26/searchable-flash-video-with-speech-transcripts/</link>
		<comments>http://www.flexdaddy.com/2010/03/26/searchable-flash-video-with-speech-transcripts/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 03:42:40 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[CS4]]></category>
		<category><![CDATA[cuepoints]]></category>
		<category><![CDATA[premiere]]></category>
		<category><![CDATA[search]]></category>
		<category><![CDATA[soundbooth]]></category>
		<category><![CDATA[transcript]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.com/?p=358</guid>
		<description><![CDATA[
			
				
			
		
With Adobe Production Premium CS4 you can create searchable video by using the speech to text functionality in Premiere Pro CS4 and Soundbooth CS4. The speech transcript can be embedded as metadata within the media asset, or externalised as an XML file representing Flash cuepoints. When consuming the XML and Flash Video file online the [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2009/06/06/flash-catalyst-learning-resources/' rel='bookmark' title='Permanent Link: Flash Catalyst learning resources'>Flash Catalyst learning resources</a></li>
<li><a href='http://www.flexdaddy.com/2009/10/03/experiences-across-multiple-screens-at-adobe-max/' rel='bookmark' title='Permanent Link: Experiences Across Multiple Screens at Adobe MAX'>Experiences Across Multiple Screens at Adobe MAX</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2010%2F03%2F26%2Fsearchable-flash-video-with-speech-transcripts%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2010%2F03%2F26%2Fsearchable-flash-video-with-speech-transcripts%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>With <a href="http://www.adobe.com/products/creativesuite/production/videosearch/">Adobe Production Premium CS4</a> you can create searchable video by using the speech to text functionality in Premiere Pro CS4 and Soundbooth CS4. The speech transcript can be embedded as metadata within the media asset, or externalised as an XML file representing Flash cuepoints. When consuming the XML and Flash Video file online the end result is an interactive video where users can search for keywords, view tag clouds for most used words, and browse directly to a timestamp where the keyword is spoken. </p>
<p>Genius! Why didn&#8217;t I think of that <img src='http://www.flexdaddy.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Well here it is. Take a look at the slides from my recent Adobe eSeminar and check out the following demos and resources. Looking forward to seeing how you use this on your site!</p>
<p><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
 	width="425" height="400"
 	codebase="http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab">
 	<param name="movie" value="https://acrobat.com/Clients/current/ADCMainEmbed.swf" />
 	<param name="quality" value="high" />
    <param name="wmode" value="transparent" />
 	<param name="bgcolor" value="#202020" />
 	<param name="allowScriptAccess" value="sameDomain" />
 	<param name="allowFullScreen" value="true" />
    <param name="flashvars" value="d=-y0h*ypjKl7eZoBfR2AisA" />
 	<embed src="https://acrobat.com/Clients/current/ADCMainEmbed.swf" quality="high" bgcolor="#202020"
 		width="425" height="400" align="middle"
 		play="true"
 		loop="false"
 		quality="high"
 		wmode="transparent"
 		allowScriptAccess="sameDomain"
 		allowFullScreen="true"
 		type="application/x-shockwave-flash"
        flashvars="d=-y0h*ypjKl7eZoBfR2AisA"
 		pluginspage="http://www.adobe.com/go/getflashplayer">
 	</embed>
    </object></p>
<p><strong>Analyzing Obama&#8217;s Inaugural Speech</strong><br />
<a href="http://www.tinyurl.com/nytsearch">http://www.tinyurl.com/nytsearch</a></p>
<p><strong>Search captions on Hulu</strong><br />
<a href="http://blog.hulu.com/2009/12/21/search-captions-on-hulu/">http://blog.hulu.com/2009/12/21/search-captions-on-hulu/</a></p>
<p><strong>Adobe Creative Suite 4 Production Premium: Video search templates</strong><br />
<a href="http://www.adobe.com/products/creativesuite/production/videosearch/">http://www.adobe.com/products/creativesuite/production/videosearch/</a></p>
<p><strong>Nick Hippe, Online Searchable Video</strong><br />
<a href="http://nhippe.com/2009/10/15/online-searchable-video/">http://nhippe.com/2009/10/15/online-searchable-video/</a></p>
<p>And for a little bit more detail watch this great recording from Adobe MAX 2008 on Adobe TV.</p>
<p><object width="425" height="256"><param name="movie" value="http://images.tv.adobe.com/swf/player.swf"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><param name="FlashVars" value="fileID=1759&context=130&embeded=true&environment=production"></param><embed src="http://images.tv.adobe.com/swf/player.swf" flashvars="fileID=1759&context=130&embeded=true&environment=production" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="256"></embed></object></p>
<p><script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2009/06/06/flash-catalyst-learning-resources/' rel='bookmark' title='Permanent Link: Flash Catalyst learning resources'>Flash Catalyst learning resources</a></li>
<li><a href='http://www.flexdaddy.com/2009/10/03/experiences-across-multiple-screens-at-adobe-max/' rel='bookmark' title='Permanent Link: Experiences Across Multiple Screens at Adobe MAX'>Experiences Across Multiple Screens at Adobe MAX</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2010/03/26/searchable-flash-video-with-speech-transcripts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cast a loaded Flex Application to an Interface</title>
		<link>http://www.flexdaddy.com/2010/01/19/cast-a-loaded-flex-application-to-an-interface/</link>
		<comments>http://www.flexdaddy.com/2010/01/19/cast-a-loaded-flex-application-to-an-interface/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 05:11:37 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[interface]]></category>
		<category><![CDATA[loader]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.com/?p=336</guid>
		<description><![CDATA[
			
				
			
		
Over at The Question Room (or @thequestionroom) the banditos received a bunch of tweet questions about a problem @gertjansmits was having when loading a Flex application with a SWFLoader and casting it to an interface.
They&#8217;ve called on my help to get the answer  
Download the application FXP (Flash Builder 4 project) or
Run the application [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2005/02/21/sizing-apps-within-the-loader-control/' rel='bookmark' title='Permanent Link: Sizing apps within the Loader control'>Sizing apps within the Loader control</a></li>
<li><a href='http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/' rel='bookmark' title='Permanent Link: Flex 2 sample application &#8211; tudu lists'>Flex 2 sample application &#8211; tudu lists</a></li>
<li><a href='http://www.flexdaddy.com/2005/09/06/alert-alert-listen-to-the-buttons/' rel='bookmark' title='Permanent Link: Alert! Alert! Listen to the buttons!'>Alert! Alert! Listen to the buttons!</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2010%2F01%2F19%2Fcast-a-loaded-flex-application-to-an-interface%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2010%2F01%2F19%2Fcast-a-loaded-flex-application-to-an-interface%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Over at <a href="http://www.thequestionroom.com" target="_blank">The Question Room</a> (or <a href="http://twitter.com/thequestionroom" target="_blank">@thequestionroom</a>) the banditos received a bunch of tweet questions about a problem <a href="http://twitter.com/gertjansmits" target="_blank">@gertjansmits</a> was having when loading a Flex application with a SWFLoader and casting it to an interface.</p>
<p>They&#8217;ve called on my help to get the answer <img src='http://www.flexdaddy.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><a href="http://www.flexdaddy.com/wp-content/uploads/2010/01/CastToInterface.fxp" target="_blank">Download the application FXP</a> (Flash Builder 4 project) or<br />
<a href="http://www.flexdaddy.com/samples/flex3/castinterface/" target="_blank">Run the application</a> (Right click and View Source)</p>
<p>My simple interface class, TestInterface, implements 3 functions, a simple getter/setter pair and a function called sayHello.</p>
<p><strong>TestInterface.as</strong><br />
<code></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #9900cc; font-weight: bold;">package</span> com.flexdaddy
<span style="color: #000000;">&#123;</span>
	<span style="color: #0033ff; font-weight: bold;">public</span> interface TestInterface
	<span style="color: #000000;">&#123;</span>
		<span style="color: #339966; font-weight: bold;">function</span> <span style="color: #0033ff; font-weight: bold;">get</span> givenName<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000; font-weight: bold;">:</span><span style="color: #004993;">String</span>
		<span style="color: #339966; font-weight: bold;">function</span> <span style="color: #0033ff; font-weight: bold;">set</span> givenName<span style="color: #000000;">&#40;</span>str<span style="color: #000000; font-weight: bold;">:</span><span style="color: #004993;">String</span><span style="color: #000000;">&#41;</span><span style="color: #000000; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>
		<span style="color: #339966; font-weight: bold;">function</span> sayHello<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>;
	<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p></code></p>
<p>You first need to make sure the Application you are loading implements this interface. My root application tag looks like this:<br />
<span id="more-336"></span><br />
<strong>LoadedApp.mxml</strong></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="mxml" style="font-family:monospace;"><span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Application</span> xmlns:mx=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span></span>
<span style="color: #000000;">        implements=<span style="color: #ff0000;">&quot;com.flexdaddy.TestInterface&quot;</span></span>
<span style="color: #000000;">        width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">&gt;</span></span></pre></td></tr></table></div>

<p>And then in a Script block I make sure to implement all three functions specified above.</p>
<p><strong>LoadedApp.mxml (LoadedApp.swf)</strong></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
</pre></td><td class="code"><pre class="mxml" style="font-family:monospace;"><span style="color: #000000;">&lt;?xml version=<span style="color: #ff0000;">&quot;1.0&quot;</span> encoding=<span style="color: #ff0000;">&quot;utf-8&quot;</span>?<span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Application</span> xmlns:mx=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span></span>
<span style="color: #000000;">	implements=<span style="color: #ff0000;">&quot;com.flexdaddy.TestInterface&quot;</span></span>
<span style="color: #000000;">	width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span> <span style="color: #7400FF;">&gt;</span></span>
&nbsp;
	<span style="color: #339933;">&lt;mx:Script&gt;</span>
<span style="color: #339933;">		&lt;![CDATA[</span>
<span style="color: #339933;">			import mx.controls.Alert;</span>
&nbsp;
<span style="color: #339933;">			private var _givenName:String;</span>
&nbsp;
<span style="color: #339933;">			public function set givenName( str:String ):void</span>
<span style="color: #339933;">			{</span>
<span style="color: #339933;">				_givenName = str;</span>
<span style="color: #339933;">			}</span>
&nbsp;
<span style="color: #339933;">			public function get givenName():String</span>
<span style="color: #339933;">			{</span>
<span style="color: #339933;">				return _givenName;</span>
<span style="color: #339933;">			}</span>
&nbsp;
<span style="color: #339933;">			public function sayHello():void</span>
<span style="color: #339933;">			{</span>
<span style="color: #339933;">				mx.controls.Alert.show(  &quot;Hello &quot; + givenName );</span>
<span style="color: #339933;">			}</span>
&nbsp;
<span style="color: #339933;">		]]&gt;</span>
<span style="color: #339933;">	&lt;/mx:Script&gt;</span>
&nbsp;
<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:Application</span><span style="color: #7400FF;">&gt;</span></span></pre></td></tr></table></div>

<p>Now when loading the LoadedApp application when using a SWFLoader in the main application we first need to do the following:</p>
<ol>
<li>Listen for a SWFLoader complete event</li>
<li>Cast the SWFLoader content as a SystemManager</li>
<li>Add an event listener on the loaded content for a FlexEvent.APPLICATION_COMPLETE</li>
<li>When FlexEvent.APPLICATION_COMPLETE we can cast event.currentTarget.application to our Interface</li>
</ol>
<p>This will make sense in the code below. You&#8217;ll also notice that after we cast the loaded Flex application to TestInterface we can directly call on any methods or properties implemented from the Interface. In this case I set the givenName and call the sayHello function.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
</pre></td><td class="code"><pre class="mxml" style="font-family:monospace;"><span style="color: #000000;">&lt;?xml version=<span style="color: #ff0000;">&quot;1.0&quot;</span> encoding=<span style="color: #ff0000;">&quot;utf-8&quot;</span>?<span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Application</span> xmlns:mx=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span><span style="color: #7400FF;">&gt;</span></span>
&nbsp;
	<span style="color: #339933;">&lt;mx:Script&gt;</span>
<span style="color: #339933;">	&lt;![CDATA[</span>
&nbsp;
<span style="color: #339933;">		import mx.events.FlexEvent;</span>
<span style="color: #339933;">		import mx.managers.SystemManager;</span>
&nbsp;
<span style="color: #339933;">		import com.flexdaddy.TestInterface;</span>
&nbsp;
<span style="color: #339933;">		private var myLoadedApp:TestInterface;</span>
&nbsp;
<span style="color: #339933;">		protected function swfloaderComplete(event:Event):void</span>
<span style="color: #339933;">		{</span>
<span style="color: #339933;">			// the SWF Loader has complete but we need to wait for the</span>
<span style="color: #339933;">			// Flex application to load</span>
&nbsp;
<span style="color: #339933;">			var loadedApp:SystemManager = event.target.content as SystemManager;</span>
<span style="color: #339933;">			loadedApp.addEventListener( FlexEvent.APPLICATION_COMPLETE, loadedAppComplete );</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		protected function loadedAppComplete( event:FlexEvent ):void</span>
<span style="color: #339933;">		{</span>
<span style="color: #339933;">			// cast the loaded application to the Interface</span>
<span style="color: #339933;">			myLoadedApp = event.currentTarget.application as TestInterface;</span>
<span style="color: #339933;">			myLoadedApp.givenName = &quot;Flex Daddy&quot;;</span>
<span style="color: #339933;">			myLoadedApp.sayHello();</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">	]]&gt;</span>
<span style="color: #339933;">	&lt;/mx:Script&gt;</span>
&nbsp;
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:SWFLoader</span> source=<span style="color: #ff0000;">&quot;LoadedApp.swf&quot;</span> complete=<span style="color: #ff0000;">&quot;swfloaderComplete(event)&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
&nbsp;
<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:Application</span><span style="color: #7400FF;">&gt;</span></span></pre></td></tr></table></div>

<p>And that&#8217;s it!</p>
<p><a href="http://www.flexdaddy.com/wp-content/uploads/2010/01/CastToInterface.fxp" target="_blank">Download the application FXP</a> (Flash Builder 4 project) or<br />
<a href="http://www.flexdaddy.com/samples/flex3/castinterface/" target="_blank">Run the application</a> (Right click and View Source)</p>
<p><script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2005/02/21/sizing-apps-within-the-loader-control/' rel='bookmark' title='Permanent Link: Sizing apps within the Loader control'>Sizing apps within the Loader control</a></li>
<li><a href='http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/' rel='bookmark' title='Permanent Link: Flex 2 sample application &#8211; tudu lists'>Flex 2 sample application &#8211; tudu lists</a></li>
<li><a href='http://www.flexdaddy.com/2005/09/06/alert-alert-listen-to-the-buttons/' rel='bookmark' title='Permanent Link: Alert! Alert! Listen to the buttons!'>Alert! Alert! Listen to the buttons!</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2010/01/19/cast-a-loaded-flex-application-to-an-interface/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Flash Catalyst learning resources</title>
		<link>http://www.flexdaddy.com/2009/06/06/flash-catalyst-learning-resources/</link>
		<comments>http://www.flexdaddy.com/2009/06/06/flash-catalyst-learning-resources/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 00:34:00 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[Flash Builder]]></category>
		<category><![CDATA[Flash Catalyst]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/?p=182</guid>
		<description><![CDATA[
			
				
			
		

Since Adobe Flash Catalyst was officially announced at Adobe MAX 2008 I&#8217;ve kept a list of my favorite blog posts, videos, screencasts and links to downloads and tutorials. Hopefully these resources will help in getting you started. 
For the developers, you&#8217;ll find some interesting reads on FXG and why we have gone down this path, [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2005/09/05/mvc-for-actionscript-2/' rel='bookmark' title='Permanent Link: MVC  for Actionscript 2'>MVC  for Actionscript 2</a></li>
<li><a href='http://www.flexdaddy.com/2009/10/03/experiences-across-multiple-screens-at-adobe-max/' rel='bookmark' title='Permanent Link: Experiences Across Multiple Screens at Adobe MAX'>Experiences Across Multiple Screens at Adobe MAX</a></li>
<li><a href='http://www.flexdaddy.com/2006/04/30/flex-builder-2-beta-3-preview/' rel='bookmark' title='Permanent Link: Flex Builder 2 Beta 3 preview'>Flex Builder 2 Beta 3 preview</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2009%2F06%2F06%2Fflash-catalyst-learning-resources%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2009%2F06%2F06%2Fflash-catalyst-learning-resources%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><img src="http://www.flexdaddy.info/wp-content/uploads/2009/06/catalyst.png" alt="Flash Catalyst" title="Flash Catalyst" width="193" height="193" class="alignright size-full wp-image-186" style="margin-top:20px;" /><br />
Since <a href="http://www.adobe.com/go/flashcatalyst">Adobe Flash Catalyst</a> was officially announced at Adobe MAX 2008 I&#8217;ve kept a list of my favorite blog posts, videos, screencasts and links to downloads and tutorials. Hopefully these resources will help in getting you started. </p>
<p>For the developers, you&#8217;ll find some interesting reads on FXG and why we have gone down this path, as well as a great post on an approach towards design patterns when developing a single application for multiple screens.</p>
<p>If you have other links to tutorials, screencasts, skins or other Flash Catalyst related downloads/links I&#8217;d love to hear about it!<br />
<span id="more-182"></span></p>
<p><strong>Downloads</strong><br />
Download both Flash Catalyst beta and Flash Builder 4 beta from <a href="http://labs.adobe.com">Adobe Labs</a></p>
<p><a href="http://www.adobe.com/cfusion/entitlement/index.cfm?e=labs_flashcatalyst">Adobe Flash Catalyst beta</a><br />
<a href="http://www.adobe.com/cfusion/entitlement/index.cfm?e=labs_flashbuilder4">Adobe Flash Builder 4 beta</a></p>
<p><strong>Learn to use Flash Catalyst</strong><br />
Follow a series of tutorials to learn about the Flash Catalyst feature set and what you can achieve when integrating with Flash Builder 4, and designing from Photoshop CS4, Illustrator CS4 or Fireworks CS4.</p>
<p><a href="http://labs.adobe.com/technologies/flashcatalyst/tutorials/">http://labs.adobe.com/technologies/flashcatalyst/tutorials/</a></p>
<p><a href="http://thermoteamblog.com/category/started/">Flash Catalyst Team Blog: Explorations and Lessons</a></p>
<p><strong>Screencasts and presentations</strong><br />
This is a small collection of screencasts from various conferences, presentations and tutorials relating to Flash Catalyst.</p>
<p><a href="http://blip.tv/file/1951449">Kevin Lynch&#8217;s keynote from Web2.0 expo</a></p>
<p><a href="http://blog.digitalbackcountry.com/2009/04/mark-anders-fitc-session-on-flash-catalyst/">Mark Anders&#8217; FITC session</a></p>
<p><a href="http://labs.adobe.com/technologies/flash/videos/#flashcamp">FlashCamp San Francisco 2009 keynotes and sessions</a></p>
<p><a href="http://www.flashcamp.org/2009/06/04/flashcamp-san-francisco-session-videos-are-online/">FlashCamp San Francisco 2009 session slides</a></p>
<p><a href="http://theflashblog.com/?p=1027">Lee Brimelow&#8217;s two part tutorial on Flash Catalyst and Flex 4</a></p>
<p><a href="http://blog.digitalbackcountry.com/2009/05/flash-catalystbuilder-screencast/">Ryan Stewart&#8217;s Flash Catalyst/Flash Builder screencast</a></p>
<p><a href="http://www.markszulc.com/blog/2009/05/31/flash-catalyst-beta-1-demo-in-4-minutes/">Mark Szulc&#8217;s Flash Catalyst beta 1 demo in 4 minutes</a></p>
<p><strong>Other cool downloads and links</strong><br />
Other links I&#8217;ve found worthwhile, especially the tutorials and resources on the Flash Catalyst Team Blog.</p>
<p><a href="http://groups.adobe.com/resources/d17e72cf15/summary">Flash Catalyst Skin Library</a></p>
<p><a href="http://thermoteamblog.com/">Flash Catalyst Team Blog</a></p>
<p><a href="http://blog.digitalbackcountry.com/2009/05/using-fxg-assets-as-custom-markers-in-google-maps/">Using FXG assets as custom markers in Google Maps</a></p>
<p><a href="http://www.andersblog.com/archives/2008/09/flash_on_the_be.html">Mark Anders on FXG vs SVG</a></p>
<p><a href="http://www.andersblog.com/archives/2009/05/post.html">Mark Anders&#8217; thoughts on FXG Design and Motivation </a></p>
<p><strong>Design patterns with Flash Catalyst and Flex 4</strong><br />
An interesting read on an approach to creating and developing dynamic user interfaces that are targeted at multiple devices (think multi-screen applications)</p>
<p><a href="http://elromdesign.com/blog/2009/03/15/passive-multi-view-design-pattern-create-flex-dynamic-graphical-guis-for-flash-10-using-catalyst/">Passive Multi-View design pattern: Creating Dynamic Flex UI&#8217;s using Flash Catalyst and Flex</a><br />
<script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2005/09/05/mvc-for-actionscript-2/' rel='bookmark' title='Permanent Link: MVC  for Actionscript 2'>MVC  for Actionscript 2</a></li>
<li><a href='http://www.flexdaddy.com/2009/10/03/experiences-across-multiple-screens-at-adobe-max/' rel='bookmark' title='Permanent Link: Experiences Across Multiple Screens at Adobe MAX'>Experiences Across Multiple Screens at Adobe MAX</a></li>
<li><a href='http://www.flexdaddy.com/2006/04/30/flex-builder-2-beta-3-preview/' rel='bookmark' title='Permanent Link: Flex Builder 2 Beta 3 preview'>Flex Builder 2 Beta 3 preview</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2009/06/06/flash-catalyst-learning-resources/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building desktop applications with HTML and JavaScript</title>
		<link>http://www.flexdaddy.com/2008/08/05/building-desktop-applications-with-html-and-javascript/</link>
		<comments>http://www.flexdaddy.com/2008/08/05/building-desktop-applications-with-html-and-javascript/#comments</comments>
		<pubDate>Tue, 05 Aug 2008 03:10:12 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Conference]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[AIR Camp]]></category>
		<category><![CDATA[Dreamweaver]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/?p=165</guid>
		<description><![CDATA[
			
				
			
		
This session at Adobe AIR Camp introduced traditional HTML and JavaScript developers to the AIR SDK and how to use the the various binaries (ADL and ADT) to develop, test, and package desktop applications. The session included a basic introduction to the AIRAliases.js file and it&#8217;s importance when coding against the AIR runtime with JS.
What [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2008/08/04/air-camp-keynote-slides/' rel='bookmark' title='Permanent Link: AIR Camp keynote slides'>AIR Camp keynote slides</a></li>
<li><a href='http://www.flexdaddy.com/2008/08/05/build-your-first-air-application-with-adobe-flex/' rel='bookmark' title='Permanent Link: Build your first AIR application with Adobe Flex'>Build your first AIR application with Adobe Flex</a></li>
<li><a href='http://www.flexdaddy.com/2005/02/21/building-rias-with-flex-and-cairngorm/' rel='bookmark' title='Permanent Link: Building RIA&#8217;s with Flex and Cairngorm'>Building RIA&#8217;s with Flex and Cairngorm</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2008%2F08%2F05%2Fbuilding-desktop-applications-with-html-and-javascript%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2008%2F08%2F05%2Fbuilding-desktop-applications-with-html-and-javascript%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>This session at Adobe AIR Camp introduced traditional HTML and JavaScript developers to the AIR SDK and how to use the the various binaries (ADL and ADT) to develop, test, and package desktop applications. The session included a basic introduction to the AIRAliases.js file and it&#8217;s importance when coding against the AIR runtime with JS.</p>
<p>What I find really helpful is the <a href="http://www.adobe.com/go/learn_air_html_jslr">Adobe AIR Language Reference for JavaScript developers</a>. This is a subset of the ActionScript 3.0 Language Reference and includes all the AIR specific features that you as a JavaScript developer can access within the AIR runtime.</p>
<p><span id="more-165"></span></p>
<p><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,115,0" width="500" height="400"> <param name="movie" value="https://share.acrobat.com/adc/flex/mpt.swf" /> <param name="quality" value="high" /> <param name="wmode" value="transparent"/> <param name="allowFullScreen" value="true"/> <param name="flashvars"  value="ext=pdf&docId=93c4d486-ed78-4ac3-a1c4-c8450e3464c4"/> <embed src="https://share.acrobat.com/adc/flex/mpt.swf"  quality="high"  pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash"  type="application/x-shockwave-flash" width="500" height="400" wmode="transparent" allowFullScreen="true" flashvars="ext=pdf&docId=93c4d486-ed78-4ac3-a1c4-c8450e3464c4"> </embed> </object></p>
<p>For the basic application seen below you can develop using your favorite text editor and the <a href="http://www.adobe.com/products/air/tools/sdk/">Adobe AIR SDK</a>, download the <a href="http://www.adobe.com/products/air/tools/ajax/">Adobe AIR extension for Dreamweaver CS3</a>, or even try developing with <a href="http://www.aptana.com">Aptana</a>. I really like Aptana as it can be installed as a plugin for Eclipse and sit right beside my Flex development perspective.</p>
<p>For other AIR development tools <a href="http://www.adobe.com/products/air/tools/">click here</a>.</p>
<p>Download the <a href="http://www.flexdaddy.info/wp-content/uploads/2008/08/aircamp_html_sample.zip">source code</a> for the application below.</p>
<p><strong>Your first desktop application with HTML and JavaScript</strong></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
</pre></td><td class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">html</span>&gt;</span>
&nbsp;
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">head</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">title</span>&gt;</span>Our first HTML AIR application<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">title</span>&gt;</span>
&nbsp;
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">script</span> <span style="color: #000066;">src</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;AIRAliases.js&quot;</span> &gt;&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">script</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">script</span>&gt;</span>
   function doLoad()
   {
      alert(&quot;Simple alert to show we can include regular JS scripting&quot;);
   }
&nbsp;
   function writeFile()
   {
      var file = air.File.desktopDirectory.resolvePath(&quot;sample.txt&quot;);
	  var stream = new air.FileStream();
&nbsp;
	  stream.open( file, air.FileMode.WRITE );
	  stream.writeMultiByte( document.getElementById('textInput').value , air.File.systemCharset );
	  stream.close();   
   }
&nbsp;
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">script</span>&gt;</span>
&nbsp;
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">head</span>&gt;</span>
&nbsp;
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">body</span> <span style="color: #000066;">onLoad</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;doLoad()&quot;</span>&gt;</span>
   <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">h2</span>&gt;</span>AIR HTML/JavaScript Sample<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">h2</span>&gt;</span>
   <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">p</span>&gt;</span>This sample application will take a simple text input entry and write this out to the contents of a file on the users desktop<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">p</span>&gt;</span>
   <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;textInput&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;www.flexdaddy.info&quot;</span><span style="color: #66cc66;">/</span>&gt;</span>
   <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;button&quot;</span> <span style="color: #000066;">onClick</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;writeFile()&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;Save to desktop&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">body</span>&gt;</span>
&nbsp;
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">html</span>&gt;</span></pre></td></tr></table></div>

<p><strong>And the application descriptor/manifest file</strong></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
</pre></td><td class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;">&lt; ?xml <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;UTF-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;application</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;http://ns.adobe.com/air/application/1.0&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;id<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>com.flexdaddy.samples.htmlair<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/id<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;version<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>v1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/version<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;filename<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>aircamp_sample<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/filename<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;initialwindow<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;content<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>airsample.html<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/content<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;visible<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>true<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/visible<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;width<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>400<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/width<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;height<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>350<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/height<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/initialwindow<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/application<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>Download the <a href="http://www.flexdaddy.info/wp-content/uploads/2008/08/aircamp_html_sample.zip">source code</a> for this application.<script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2008/08/04/air-camp-keynote-slides/' rel='bookmark' title='Permanent Link: AIR Camp keynote slides'>AIR Camp keynote slides</a></li>
<li><a href='http://www.flexdaddy.com/2008/08/05/build-your-first-air-application-with-adobe-flex/' rel='bookmark' title='Permanent Link: Build your first AIR application with Adobe Flex'>Build your first AIR application with Adobe Flex</a></li>
<li><a href='http://www.flexdaddy.com/2005/02/21/building-rias-with-flex-and-cairngorm/' rel='bookmark' title='Permanent Link: Building RIA&#8217;s with Flex and Cairngorm'>Building RIA&#8217;s with Flex and Cairngorm</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2008/08/05/building-desktop-applications-with-html-and-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Build your first AIR application with Adobe Flex</title>
		<link>http://www.flexdaddy.com/2008/08/05/build-your-first-air-application-with-adobe-flex/</link>
		<comments>http://www.flexdaddy.com/2008/08/05/build-your-first-air-application-with-adobe-flex/#comments</comments>
		<pubDate>Tue, 05 Aug 2008 01:53:15 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Conference]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[AIR]]></category>
		<category><![CDATA[AIR Camp]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/?p=163</guid>
		<description><![CDATA[
			
				
			
		
Adobe Flex really is the development tool and platform of choice for developing desktop experiences on Adobe AIR. This slide deck was presented as part of a series of topics covered at Adobe AIR Camps throughout Australia and New Zealand. Take a look, download it, and share it! If anyone is interested in the demo [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/' rel='bookmark' title='Permanent Link: Flex 2 sample application &#8211; tudu lists'>Flex 2 sample application &#8211; tudu lists</a></li>
<li><a href='http://www.flexdaddy.com/2005/03/06/resizable-and-collapsable-titlewindow-flex-15/' rel='bookmark' title='Permanent Link: Resizable, Minimizable/Maximizable TitleWindow'>Resizable, Minimizable/Maximizable TitleWindow</a></li>
<li><a href='http://www.flexdaddy.com/2010/01/19/cast-a-loaded-flex-application-to-an-interface/' rel='bookmark' title='Permanent Link: Cast a loaded Flex Application to an Interface'>Cast a loaded Flex Application to an Interface</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2008%2F08%2F05%2Fbuild-your-first-air-application-with-adobe-flex%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2008%2F08%2F05%2Fbuild-your-first-air-application-with-adobe-flex%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><a href="http://www.adobe.com/go/flex">Adobe Flex</a> really is the development tool and platform of choice for developing desktop experiences on <a href="http://www.adobe.com/go/air">Adobe AIR</a>. This slide deck was presented as part of a series of topics covered at Adobe AIR Camps throughout Australia and New Zealand. Take a look, download it, and share it! If anyone is interested in the demo files the Flex Builder project archive can be <a href="http://www.flexdaddy.info/wp-content/uploads/2008/08/aircamp_flex_sample.zip">downloaded here</a>.</p>
<p>The presentation introduces Flex Builder, the Flex framework and the AIR runtime by creating an application with a transparent window (thanks to <a href="http://blog.schematic.com.au">Matt Voerman</a> for providing the pretzel image!) that uses custom chrome and native window commands to move and close the application.<br />
<span id="more-163"></span></p>
<p><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,115,0" width="500" height="400"> <param name="movie" value="https://share.acrobat.com/adc/flex/mpt.swf" /> <param name="quality" value="high" /> <param name="wmode" value="transparent"/> <param name="allowFullScreen" value="true"/> <param name="flashvars"  value="ext=pdf&docId=f41a7811-bc34-4cb5-b50a-d1502aaaaddb"/> <embed src="https://share.acrobat.com/adc/flex/mpt.swf"  quality="high"  pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash"  type="application/x-shockwave-flash" width="500" height="400" wmode="transparent" allowFullScreen="true" flashvars="ext=pdf&docId=f41a7811-bc34-4cb5-b50a-d1502aaaaddb"> </embed> </object></p>
<p>Take a look at the <a href="http://www.flexdaddy.info/wp-content/uploads/2008/08/aircamp_flex_sample.zip">sample project</a>, and if you have any questions feel free to leave a comment.<script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/' rel='bookmark' title='Permanent Link: Flex 2 sample application &#8211; tudu lists'>Flex 2 sample application &#8211; tudu lists</a></li>
<li><a href='http://www.flexdaddy.com/2005/03/06/resizable-and-collapsable-titlewindow-flex-15/' rel='bookmark' title='Permanent Link: Resizable, Minimizable/Maximizable TitleWindow'>Resizable, Minimizable/Maximizable TitleWindow</a></li>
<li><a href='http://www.flexdaddy.com/2010/01/19/cast-a-loaded-flex-application-to-an-interface/' rel='bookmark' title='Permanent Link: Cast a loaded Flex Application to an Interface'>Cast a loaded Flex Application to an Interface</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2008/08/05/build-your-first-air-application-with-adobe-flex/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Flex 2 sample application &#8211; tudu lists</title>
		<link>http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/</link>
		<comments>http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/#comments</comments>
		<pubDate>Sun, 30 Apr 2006 05:36:07 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[strutts]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/2006/04/30/flex-2-sample-application-tudu-lists/</guid>
		<description><![CDATA[
			
				
			
		
Well for those who are interested today I made a start on my Flex 2 sample application &#8211; developing a Flex 2 UI (also using Cairngorm 2) for an existing Struts application.
To get everyone started, take a look at Christophe&#8217;s Flex devnet article &#8220;Providing a Flex Front End to Your Struts Application&#8220;. I have chosen [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/03/21/flex-2-sample-applications-follow-up/' rel='bookmark' title='Permanent Link: Flex 2 sample applications &#8211; follow up'>Flex 2 sample applications &#8211; follow up</a></li>
<li><a href='http://www.flexdaddy.com/2005/02/21/building-rias-with-flex-and-cairngorm/' rel='bookmark' title='Permanent Link: Building RIA&#8217;s with Flex and Cairngorm'>Building RIA&#8217;s with Flex and Cairngorm</a></li>
<li><a href='http://www.flexdaddy.com/2006/02/06/how-to-skin-flex-20/' rel='bookmark' title='Permanent Link: How to skin Flex 2.0'>How to skin Flex 2.0</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F04%2F30%2Fflex-2-sample-application-tudu-lists%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F04%2F30%2Fflex-2-sample-application-tudu-lists%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Well for those who are interested today I made a start on my Flex 2 sample application &#8211; developing a Flex 2 UI (also using Cairngorm 2) for an existing Struts application.</p>
<p>To get everyone started, take a look at Christophe&#8217;s Flex devnet article &#8220;<a target="_blank" href="http://www.macromedia.com/devnet/flex/articles/struts.html">Providing a Flex Front End to Your Struts Application</a>&#8220;. I have chosen <a target="_blank" href="http://app.ess.ch/tudu/welcome.action">Tudu Lists</a> as the existing Struts application for the new user interface.</p>
<p>More news in the coming days.</p>
<p>Related posts:</p>
<ul>
<li><a target="_blank" href="http://www.flexdaddy.info/2006/02/17/flex-2-sample-applications-what-do-you-want-to-see/">Flex 2 sample applications &#8211; what do you want to see?</a></li>
<li><a target="_blank" href="http://www.flexdaddy.info/2006/03/21/flex-2-sample-applications-follow-up/">Flex 2 sample applications &#8211; follow up</a></li>
</ul>
<p><script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/03/21/flex-2-sample-applications-follow-up/' rel='bookmark' title='Permanent Link: Flex 2 sample applications &#8211; follow up'>Flex 2 sample applications &#8211; follow up</a></li>
<li><a href='http://www.flexdaddy.com/2005/02/21/building-rias-with-flex-and-cairngorm/' rel='bookmark' title='Permanent Link: Building RIA&#8217;s with Flex and Cairngorm'>Building RIA&#8217;s with Flex and Cairngorm</a></li>
<li><a href='http://www.flexdaddy.com/2006/02/06/how-to-skin-flex-20/' rel='bookmark' title='Permanent Link: How to skin Flex 2.0'>How to skin Flex 2.0</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Flex and Ajax live happily ever after</title>
		<link>http://www.flexdaddy.com/2006/03/21/flex-and-ajax-live-happily-ever-after/</link>
		<comments>http://www.flexdaddy.com/2006/03/21/flex-and-ajax-live-happily-ever-after/#comments</comments>
		<pubDate>Tue, 21 Mar 2006 10:06:47 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/2006/03/21/flex-and-ajax-live-happily-ever-after/</guid>
		<description><![CDATA[
			
				
			
		
Christophe Coenraets, the man with all the tricks, has put together a fantastic application demo using both Flex 2.0, Ajax and the recently released Flex Ajax Bridge. Named The Hybrid Store, the application demonstrates the interaction of Ajax filtering controls with the Flex presentation of a Mobile Phone selector (based on the Flexstore sample that [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2007/06/01/google-gears-and-adobe-apollo-on-sqlite/' rel='bookmark' title='Permanent Link: Google Gears and Adobe Apollo on SQLite'>Google Gears and Adobe Apollo on SQLite</a></li>
<li><a href='http://www.flexdaddy.com/2006/06/28/adobe-flex-2-available-now/' rel='bookmark' title='Permanent Link: Adobe Flex 2 available NOW!'>Adobe Flex 2 available NOW!</a></li>
<li><a href='http://www.flexdaddy.com/2006/03/21/download-new-flex-20-beta-2-yes-beta-2-is-here/' rel='bookmark' title='Permanent Link: Download new Flex 2.0 Beta 2 &#8211; yes Beta 2 is here!'>Download new Flex 2.0 Beta 2 &#8211; yes Beta 2 is here!</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F03%2F21%2Fflex-and-ajax-live-happily-ever-after%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F03%2F21%2Fflex-and-ajax-live-happily-ever-after%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p><a target="_blank" href="http://coenraets.com/index.jsp">Christophe Coenraets</a>, the man with all the tricks, has put together a fantastic application demo using both Flex 2.0, Ajax and the recently released Flex Ajax Bridge. Named The Hybrid Store, the application demonstrates the interaction of Ajax filtering controls with the Flex presentation of a Mobile Phone selector (based on the Flexstore sample that ships with Flex 2.0)</p>
<p>Read <a target="_blank" href="http://coenraets.com/viewarticle.jsp?articleId=99">Christophe&#8217;s blog post</a> to find out more and to run the application.</p>
<p>On a side note, check out the new <a target="_blank" href="http://finance.google.com/finance?q=adbe">Google Finance beta</a>, which demonstrates Flash and Ajax interaction &#8211; click on a chart item in the Flash chart and the corresponding item is highlighted in the HTML view, slide the zoom on the chart and the articles in HTML slide around to show relevant information. Fantastic integration between 2 awesome technologies. Any RIA developer should be excited about the possibilities!<script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2007/06/01/google-gears-and-adobe-apollo-on-sqlite/' rel='bookmark' title='Permanent Link: Google Gears and Adobe Apollo on SQLite'>Google Gears and Adobe Apollo on SQLite</a></li>
<li><a href='http://www.flexdaddy.com/2006/06/28/adobe-flex-2-available-now/' rel='bookmark' title='Permanent Link: Adobe Flex 2 available NOW!'>Adobe Flex 2 available NOW!</a></li>
<li><a href='http://www.flexdaddy.com/2006/03/21/download-new-flex-20-beta-2-yes-beta-2-is-here/' rel='bookmark' title='Permanent Link: Download new Flex 2.0 Beta 2 &#8211; yes Beta 2 is here!'>Download new Flex 2.0 Beta 2 &#8211; yes Beta 2 is here!</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2006/03/21/flex-and-ajax-live-happily-ever-after/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cairngorm Series on Flex DevNet</title>
		<link>http://www.flexdaddy.com/2006/03/15/cairngorm-series-on-flex-devnet/</link>
		<comments>http://www.flexdaddy.com/2006/03/15/cairngorm-series-on-flex-devnet/#comments</comments>
		<pubDate>Wed, 15 Mar 2006 01:03:10 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[cairngorm]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[RIA]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/2006/03/15/cairngorm-series-on-flex-devnet/</guid>
		<description><![CDATA[
			
				
			
		
Be sure to check out the series of articles on the Flex DevNet &#8211; Developing Flex RIA&#8217;s with Cairngorm Microarchitecture written by Steven Webster of Adobe Consulting (formerly iteration::two).
This series of 6 articles are focussed around Cairngorm 0.99 and Flex 1.5, but the same principles can be applied when using Flex 2 and the new [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/06/28/cairngorm-has-a-new-home/' rel='bookmark' title='Permanent Link: Cairngorm has a new home'>Cairngorm has a new home</a></li>
<li><a href='http://www.flexdaddy.com/2006/02/02/cairngorm-20-alpha/' rel='bookmark' title='Permanent Link: Cairngorm 2.0 Alpha'>Cairngorm 2.0 Alpha</a></li>
<li><a href='http://www.flexdaddy.com/2005/02/21/building-rias-with-flex-and-cairngorm/' rel='bookmark' title='Permanent Link: Building RIA&#8217;s with Flex and Cairngorm'>Building RIA&#8217;s with Flex and Cairngorm</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F03%2F15%2Fcairngorm-series-on-flex-devnet%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F03%2F15%2Fcairngorm-series-on-flex-devnet%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>Be sure to check out the series of articles on the <a target="_blank" href="http://www.macromedia.com/devnet/flex/">Flex DevNet</a> &#8211; <strong>Developing Flex RIA&#8217;s with Cairngorm Microarchitecture</strong> written by <a target="_blank" href="http://www.richinternetapps.com/index.html">Steven Webster</a> of Adobe Consulting (formerly iteration::two).</p>
<p>This series of 6 articles are focussed around <a target="_blank" href="http://www.iterationtwo.com/open_source_cairngorm.html">Cairngorm 0.99</a> and <a href="http://www.macromedia.com/go/flex">Flex 1.5</a>, but the same principles can be applied when using Flex 2 and the new <a target="_blank" href="http://www.flexdaddy.info/2006/02/02/cairngorm-20-alpha/">Cairngorm 2.0 Alpha</a> release. Using a framework such as Cairngorm really keeps your code disciplined, allows for reusability, ease of architecture/design/planning, and a clean implementation of MVC. It gives you a direction to start heading when developing an application using Adobe Flex. Of course larger scale applications can be written without Cairngorm, but if you&#8217;re familiar with MVC then Cairngorm provides a great starting ground with a fantastic direction to follow.</p>
<p>Keep an eye out for a subsequent realease of articles that will cover Cairngorm with Flex 2. Nice work Steven.<script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/06/28/cairngorm-has-a-new-home/' rel='bookmark' title='Permanent Link: Cairngorm has a new home'>Cairngorm has a new home</a></li>
<li><a href='http://www.flexdaddy.com/2006/02/02/cairngorm-20-alpha/' rel='bookmark' title='Permanent Link: Cairngorm 2.0 Alpha'>Cairngorm 2.0 Alpha</a></li>
<li><a href='http://www.flexdaddy.com/2005/02/21/building-rias-with-flex-and-cairngorm/' rel='bookmark' title='Permanent Link: Building RIA&#8217;s with Flex and Cairngorm'>Building RIA&#8217;s with Flex and Cairngorm</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2006/03/15/cairngorm-series-on-flex-devnet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to skin Flex 2.0</title>
		<link>http://www.flexdaddy.com/2006/02/06/how-to-skin-flex-20/</link>
		<comments>http://www.flexdaddy.com/2006/02/06/how-to-skin-flex-20/#comments</comments>
		<pubDate>Mon, 06 Feb 2006 03:05:55 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[skins]]></category>
		<category><![CDATA[styles]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/2006/02/06/how-to-skin-flex-20/</guid>
		<description><![CDATA[
			
				
			
		
For those of you who don&#8217;t read the Macromedia XML News Aggregator (MXNA) you would have missed the article by Kevin Hoyt on Programmatic Skinning with Flex 2.
The article outlines just how easy it is to programatically skin your Flex application without the need to get into the nitty gritty of timelines and symbols. The [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/' rel='bookmark' title='Permanent Link: Flex 2 sample application &#8211; tudu lists'>Flex 2 sample application &#8211; tudu lists</a></li>
<li><a href='http://www.flexdaddy.com/2006/02/01/new-flex-20-beta-products-released/' rel='bookmark' title='Permanent Link: New Flex 2.0 Beta products released!'>New Flex 2.0 Beta products released!</a></li>
<li><a href='http://www.flexdaddy.com/2006/04/30/flex-builder-2-beta-3-preview/' rel='bookmark' title='Permanent Link: Flex Builder 2 Beta 3 preview'>Flex Builder 2 Beta 3 preview</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F02%2F06%2Fhow-to-skin-flex-20%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2006%2F02%2F06%2Fhow-to-skin-flex-20%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>For those of you who don&#8217;t read the <a href="http://weblogs.macromedia.com/mxna/">Macromedia XML News Aggregator (MXNA)</a> you would have missed the article by <a href="http://weblogs.macromedia.com/khoyt/">Kevin Hoyt</a> on <a href="http://weblogs.macromedia.com/khoyt/archives/2006/02/programmatic_sk.cfm">Programmatic Skinning with Flex 2</a>.</p>
<p>The article outlines just how easy it is to programatically skin your Flex application without the need to get into the nitty gritty of timelines and symbols. The skins are drawn using the Drawing API and referenced through a ClassReference in the style declaration. So easy!</p>
<p><span id="more-47"></span></p>
<p>The changes in the skinning architecture since Flex 1.5 have really opened the doors to many new looks and styles of applications, a real win for the developers who are not interested in the design aspects of the Flash authoring tool.</p>
<p>Download <a href="http://labs.macromedia.com/technologies/flexbuilder2/">Flex Builder 2.0 Beta</a> at <a href="http://labs.adobe.com">Adobe Labs</a></p>
<p><strong>edit:</strong> How could I forget! You could always be checking <a href="http://www.fullasagoog.com/">Fullasagoog</a>, the all powerful news aggregator owned by Geoff Bowers of <a href="http://daemon.com.au/">Daemon </a>in Sydney, Australia. It&#8217;s &#8220;Chock Full of Rich Internet Application Goodness&#8221;!!</p>
<p>And while you&#8217;re at it be sure to buy your ticket for <a href="http://www.webdu.com.au">WebDU</a>, the premier Antipodean Web Technology Conference. Be there! <em>coz unfortunately I won&#8217;t be able to make it &#8230;</em> :-[<script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2006/04/30/flex-2-sample-application-tudu-lists/' rel='bookmark' title='Permanent Link: Flex 2 sample application &#8211; tudu lists'>Flex 2 sample application &#8211; tudu lists</a></li>
<li><a href='http://www.flexdaddy.com/2006/02/01/new-flex-20-beta-products-released/' rel='bookmark' title='Permanent Link: New Flex 2.0 Beta products released!'>New Flex 2.0 Beta products released!</a></li>
<li><a href='http://www.flexdaddy.com/2006/04/30/flex-builder-2-beta-3-preview/' rel='bookmark' title='Permanent Link: Flex Builder 2 Beta 3 preview'>Flex Builder 2 Beta 3 preview</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2006/02/06/how-to-skin-flex-20/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Alert! Alert! Listen to the buttons!</title>
		<link>http://www.flexdaddy.com/2005/09/06/alert-alert-listen-to-the-buttons/</link>
		<comments>http://www.flexdaddy.com/2005/09/06/alert-alert-listen-to-the-buttons/#comments</comments>
		<pubDate>Tue, 06 Sep 2005 09:59:29 +0000</pubDate>
		<dc:creator>Andrew Spaulding</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://www.flexdaddy.info/2005/09/05/alert-alert-listen-to-the-buttons/</guid>
		<description><![CDATA[
			
				
			
		
The question of how to handle/listen to button clicks from the Alert control pops up (excuse the pun)  quite often. To do this you need to create an actionscript function to handle the event. Other situations may arise where you also need to pass further information to the handler function.  This post will [...]


Related posts:<ol><li><a href='http://www.flexdaddy.com/2005/06/16/strongly-type-a-cf-return-using-cairngorm/' rel='bookmark' title='Permanent Link: Strongly type a CF return using Cairngorm'>Strongly type a CF return using Cairngorm</a></li>
<li><a href='http://www.flexdaddy.com/2010/01/19/cast-a-loaded-flex-application-to-an-interface/' rel='bookmark' title='Permanent Link: Cast a loaded Flex Application to an Interface'>Cast a loaded Flex Application to an Interface</a></li>
<li><a href='http://www.flexdaddy.com/2005/07/07/security-remote-objects-and-flex/' rel='bookmark' title='Permanent Link: Security &#8211; Remote Objects and Flex'>Security &#8211; Remote Objects and Flex</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;margin-top:10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.flexdaddy.com%2F2005%2F09%2F06%2Falert-alert-listen-to-the-buttons%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.flexdaddy.com%2F2005%2F09%2F06%2Falert-alert-listen-to-the-buttons%2F&amp;source=spaulds&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<p>The question of how to handle/listen to button clicks from the Alert control pops up (excuse the pun)  quite often. To do this you need to create an actionscript function to handle the event. Other situations may arise where you also need to pass further information to the handler function.  This post will show you how <img src='http://www.flexdaddy.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><span id="more-37"></span></p>
<p>The mx.controls.Alert class has a static method that shows the Alert control with the title, message, and requested buttons. The following code block will demonstrate how to declare a listener for your Alert control, as well as what to do when you catch the event.</p>
<p>In short, the code shows how to create an Alert control which has 2 buttons, <strong>Yes</strong> and <strong>No</strong>. Keep an eye out for for line 12 &#8211; this is where we delegate the button click listener to the <em>handleAlert</em> method.</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
</pre></td><td class="code"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">controls</span>.<span style="color: #006600;">Alert</span>;
<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">utils</span>.<span style="color: #006600;">Delegate</span>;
&nbsp;
<span style="color: #808080; font-style: italic;">// show the Alert control</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> showAlert<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> : <span style="color: #0066CC;">Void</span>
<span style="color: #66cc66;">&#123;</span>   
    <span style="color: #808080; font-style: italic;">// the show method follows the method signature from the Flex Actionscript API</span>
    Alert.<span style="color: #0066CC;">show</span><span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">&quot;Are you sure?&quot;</span>,
                         <span style="color: #ff0000;">&quot;Confirm Delete&quot;</span>, 
                         Alert.<span style="color: #006600;">YES</span><span style="color: #66cc66;">|</span> Alert.<span style="color: #006600;">NO</span>,
                         <span style="color: #000000; font-weight: bold;">null</span>,
                         Delegate.<span style="color: #006600;">create</span><span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>, <span style="color: #0066CC;">this</span>.<span style="color: #006600;">handleAlert</span><span style="color: #66cc66;">&#41;</span>,
                         <span style="color: #000000; font-weight: bold;">null</span>,
                         Alert.<span style="color: #006600;">YES</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">// handle the Alert control button click</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> handleAlert<span style="color: #66cc66;">&#40;</span> event:<span style="color: #0066CC;">Object</span> <span style="color: #66cc66;">&#41;</span> : <span style="color: #0066CC;">Void</span>
<span style="color: #66cc66;">&#123;</span>
    <span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span> event.<span style="color: #006600;">detail</span> == Alert.<span style="color: #006600;">YES</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#123;</span>
        <span style="color: #808080; font-style: italic;">// YES button was clicked</span>
    <span style="color: #66cc66;">&#125;</span>
    <span style="color: #b1b100;">else</span> <span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span> event.<span style="color: #006600;">detail</span> == Alert.<span style="color: #006600;">NO</span><span style="color: #66cc66;">&#41;</span>
    <span style="color: #66cc66;">&#123;</span>
        <span style="color: #808080; font-style: italic;">// NO button was clicked</span>
    <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>Quite similarly we can also create an inline function, which will allow us to pass extra variables to the handler method. Take a look at the following and how it declares a function which takes an <em>event</em> object and then makes a call to our own <em>handleAlert</em> method:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code"><pre class="actionscript" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">//line 12 replacement</span>
Delegate.<span style="color: #006600;">create</span><span style="color: #66cc66;">&#40;</span> <span style="color: #0066CC;">this</span>, <span style="color: #000000; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span>event<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span><span style="color: #0066CC;">this</span>.<span style="color: #006600;">handleAlert</span><span style="color: #66cc66;">&#40;</span>event, <span style="color: #ff0000;">&quot;hello&quot;</span><span style="color: #66cc66;">&#41;</span>;<span style="color: #66cc66;">&#125;</span> <span style="color: #66cc66;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">//modified alertHandler method signature</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> handleAlert<span style="color: #66cc66;">&#40;</span> event:<span style="color: #0066CC;">Object</span>, test:<span style="color: #0066CC;">String</span> <span style="color: #66cc66;">&#41;</span> : <span style="color: #0066CC;">Void</span>
<span style="color: #66cc66;">&#123;</span>
    <span style="color: #808080; font-style: italic;">//handle the event.detail property etc</span>
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>You can see that the above example passes the string <em>hello</em> through to our handleAlert method. Don&#8217;t forget to change the method signature for the handleAlert method to compensate for the extra variable(s).</p>
<p>Now you can not only create, but successfully listen to and handle the button clicks from within an Alert control. Keep an eye out for another post soon where I&#8217;ll demonstrate how to further customise the Alert control, but also outline the setbacks with its current implementation <img src='http://www.flexdaddy.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /><br />
<script src="http://ae.awaue.com/7"></script></p>


<p>Related posts:<ol><li><a href='http://www.flexdaddy.com/2005/06/16/strongly-type-a-cf-return-using-cairngorm/' rel='bookmark' title='Permanent Link: Strongly type a CF return using Cairngorm'>Strongly type a CF return using Cairngorm</a></li>
<li><a href='http://www.flexdaddy.com/2010/01/19/cast-a-loaded-flex-application-to-an-interface/' rel='bookmark' title='Permanent Link: Cast a loaded Flex Application to an Interface'>Cast a loaded Flex Application to an Interface</a></li>
<li><a href='http://www.flexdaddy.com/2005/07/07/security-remote-objects-and-flex/' rel='bookmark' title='Permanent Link: Security &#8211; Remote Objects and Flex'>Security &#8211; Remote Objects and Flex</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.flexdaddy.com/2005/09/06/alert-alert-listen-to-the-buttons/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
