<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-6221754080009704664</atom:id><lastBuildDate>Sun, 06 Dec 2009 09:34:33 +0000</lastBuildDate><title>VRathore's Ideas on Java and Flex 3.0</title><description>Aroma of flex with java</description><link>http://vrathore.blogspot.com/</link><managingEditor>vrathore84@gmail.com (vrathore)</managingEditor><generator>Blogger</generator><openSearch:totalResults>51</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-6858884740818601827</guid><pubDate>Tue, 01 Dec 2009 06:32:00 +0000</pubDate><atom:updated>2009-11-30T22:38:18.989-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>education</category><category domain='http://www.blogger.com/atom/ns#'>RIA training</category><category domain='http://www.blogger.com/atom/ns#'>free Flex/AIR training course</category><title>Free Education To Freshers and Project Training</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ySkyl0NTd_E/SxS5svc0p0I/AAAAAAAAAEw/h9oO6eMJVF8/s1600/pistol.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 250px; height: 200px;" src="http://1.bp.blogspot.com/_ySkyl0NTd_E/SxS5svc0p0I/AAAAAAAAAEw/h9oO6eMJVF8/s400/pistol.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5410153230681548610" /&gt;&lt;/a&gt;&lt;br /&gt;As the RIA worker i am starting on providing free education to college students and freshers on Flex/AIR and java development to prepare them for Interview and to open there mind on a rich development practices .. This will be a experimental step to educate newbies , I will be covering the basic application development methodologies and will help them create applications for their projects.&lt;br /&gt;Please feel free to contact me at &lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;br /&gt;+919988178054&lt;br /&gt;vrathore84@gmail.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-6858884740818601827?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/11/free-education-to-freshers-and-project.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ySkyl0NTd_E/SxS5svc0p0I/AAAAAAAAAEw/h9oO6eMJVF8/s72-c/pistol.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-5702535719374073368</guid><pubDate>Mon, 30 Nov 2009 05:15:00 +0000</pubDate><atom:updated>2009-11-29T21:21:13.474-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>AIR look and feel</category><category domain='http://www.blogger.com/atom/ns#'>Flex Skinning</category><category domain='http://www.blogger.com/atom/ns#'>Resources</category><title>Some Useful Flex AIR Skinning Resources</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ySkyl0NTd_E/SxNWCfLYT7I/AAAAAAAAAEo/CEBzJJwrylM/s1600/30039.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 350px; height: 350px;" src="http://3.bp.blogspot.com/_ySkyl0NTd_E/SxNWCfLYT7I/AAAAAAAAAEo/CEBzJJwrylM/s400/30039.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5409762178131054514" /&gt;&lt;/a&gt;&lt;br /&gt;Check out some wonderful flex skinning resources at &lt;br /&gt;&lt;br /&gt;&lt;a href="http://sites.google.com/a/flexets.com/usefull-infor/resources/flex-skinning"&gt;Cool Links to make cool looking Apps&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-5702535719374073368?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/11/some-useful-flex-air-skinning-resources.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ySkyl0NTd_E/SxNWCfLYT7I/AAAAAAAAAEo/CEBzJJwrylM/s72-c/30039.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-6325022577116203589</guid><pubDate>Mon, 30 Nov 2009 04:38:00 +0000</pubDate><atom:updated>2009-11-29T21:04:21.646-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>TuneUp</category><category domain='http://www.blogger.com/atom/ns#'>Cool Utility</category><category domain='http://www.blogger.com/atom/ns#'>Software Review</category><category domain='http://www.blogger.com/atom/ns#'>Window 7</category><title>A Great Window Utility - Windows 7 TuneUp</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ySkyl0NTd_E/SxNRQ7xBzHI/AAAAAAAAAEg/Vs5MW-U6fe0/s1600/small_screen.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 228px; height: 162px;" src="http://2.bp.blogspot.com/_ySkyl0NTd_E/SxNRQ7xBzHI/AAAAAAAAAEg/Vs5MW-U6fe0/s400/small_screen.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5409756928765185138" /&gt;&lt;/a&gt;&lt;br /&gt;Windows 7 TuneUp is a great Window utility which makes you forget about PC maintenance and security, Loaded with many tools such as Registry Cleaner,Registry Defragmenter,Junk Files Cleaner, Duplicate Files Finder,Smart Uninstaller,Service Manager,Startup Manager and many more which help you get rid of all the maintenance problems for the system. I recomend this personally as it saved my sysytem from getting crashed and help me save my formatting time. &lt;br /&gt;One of the coolest thing is its very easy installation and free support and service.&lt;br /&gt;Check out this amazing software at &lt;a href="http://www.windsty.com/products/windows_7_tuneupsuite/windows-7-tuneup.html"&gt;WINDOW 7 TuneUp&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-6325022577116203589?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/11/great-window-utility-windows-7-tuneup.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ySkyl0NTd_E/SxNRQ7xBzHI/AAAAAAAAAEg/Vs5MW-U6fe0/s72-c/small_screen.png' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-7398682598638261846</guid><pubDate>Tue, 27 Oct 2009 09:23:00 +0000</pubDate><atom:updated>2009-10-27T02:49:57.659-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Batch File</category><category domain='http://www.blogger.com/atom/ns#'>Invoking AIR</category><category domain='http://www.blogger.com/atom/ns#'>Command Prompt</category><category domain='http://www.blogger.com/atom/ns#'>Run AIR</category><category domain='http://www.blogger.com/atom/ns#'>ADL AIR</category><category domain='http://www.blogger.com/atom/ns#'>ADL Flex</category><title>Invoking AIR Application using Batch File</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ySkyl0NTd_E/SubByR7hRUI/AAAAAAAAAEY/91u9sgBrG70/s1600-h/cardboard-box-open-lg.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 313px;" src="http://3.bp.blogspot.com/_ySkyl0NTd_E/SubByR7hRUI/AAAAAAAAAEY/91u9sgBrG70/s400/cardboard-box-open-lg.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5397214273000785218" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am pretty sure if we are using a application which interacts with other application we need to invoke it using command propmt . Here is a simple way to invoke the application ..Also while invoking sometime we need to pass variables to the application as we do in flash vars.. &lt;br /&gt;&lt;br /&gt;First of all we need to set the environment variable for accessing the flex sdk in the system.. Add the following path to the sysytem path variable in your environment variable&lt;br /&gt;C:\Program Files\Adobe\Flex Builder 3\sdks\3.0.0\bin&lt;br /&gt;&lt;br /&gt;Note : It should point to the sdk's bin location in mycase it resided in C:/ Drive .&lt;br /&gt;&lt;br /&gt;To Run the application we will use ADL(AIR Debug Launcher) using the following syntax:-&lt;br /&gt;adl [-runtime runtime-directory] [-pubid publisher-id] [-nodebug] application.xml [root-directory] [-- arguments]&lt;br /&gt; &lt;br /&gt;In my case i used the following line on my command prompt&lt;br /&gt;F:\PROJECTS\Printing\bin&gt;adl Printing-app.xml -- 321 0 active&lt;br /&gt;&lt;br /&gt;First i reach to the point where my application bin folder reside(having compiled swf and application descriptor file) then using adl to invoke my application-app.xml &lt;br /&gt;&lt;br /&gt;Note:-&lt;br /&gt;After the application-app.xml i added -- and then i gave three arguments separated my space.&lt;br /&gt;&lt;br /&gt;In the application i can get the aruments as follows :-&lt;br /&gt; We listen the following function in the application invoke="onInvoke(event)"&lt;br /&gt;&lt;br /&gt;private function onInvoke(e:InvokeEvent):void &lt;br /&gt;{&lt;br /&gt; var arguments : ArrayCollection = new ArrayCollection( e.arguments );&lt;br /&gt;}   &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here i get all the arguments in a arraycollection.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-7398682598638261846?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/10/invoking-air-application-using-batch.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ySkyl0NTd_E/SubByR7hRUI/AAAAAAAAAEY/91u9sgBrG70/s72-c/cardboard-box-open-lg.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-6596809612357558922</guid><pubDate>Mon, 12 Oct 2009 05:20:00 +0000</pubDate><atom:updated>2009-10-11T22:23:32.530-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Reading and Writing  Browser Cookie in Flex</category><title>Reading and Writing  Browser Cookie in Flex</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ySkyl0NTd_E/StK9RgSCkoI/AAAAAAAAAEQ/CKAUtjXloGw/s1600-h/cookie-bite-web.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 300px; height: 364px;" src="http://1.bp.blogspot.com/_ySkyl0NTd_E/StK9RgSCkoI/AAAAAAAAAEQ/CKAUtjXloGw/s400/cookie-bite-web.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5391579812336931458" /&gt;&lt;/a&gt;&lt;br /&gt;A browser cookie is a small piece of information sent by a web server to a web browser to be stored for future use. The data in the browser cookie will be sent back to the web server whenever the browser reconnects to the web site.&lt;br /&gt;&lt;br /&gt;Cookies are commonly used to store user preference information, such as web site options. Cookies are also used to store shopping cart contents. The most security-relevant use of browser cookies is when they are used to store authentication data, such as user names and passwords. &lt;br /&gt;&lt;br /&gt;To Read and write Cookie from a flex application we will use Javascript &lt;br /&gt;&lt;br /&gt;&lt;br /&gt; //Following function will set the cookie in the user browser&lt;br /&gt;function setCookie(c_name,value,expiredays)&lt;br /&gt;   {&lt;br /&gt;&lt;br /&gt;   value = document.getElementById('user').value;&lt;br /&gt;   var exdate=new Date();&lt;br /&gt;   exdate.setDate(exdate.getDate()+expiredays);&lt;br /&gt;   document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : "; expires="+exdate.toGMTString());&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   &lt;br /&gt;&lt;br /&gt;&lt;br /&gt; //Following function will return Cookie&lt;br /&gt;     function getCookie(c_name){&lt;br /&gt;     &lt;br /&gt;   if (document.cookie.length&gt;0)&lt;br /&gt;     {&lt;br /&gt;     c_start=document.cookie.indexOf(c_name + "=");&lt;br /&gt;     if (c_start!=-1)&lt;br /&gt;       { &lt;br /&gt;       c_start=c_start + c_name.length+1 ;&lt;br /&gt;       c_end=document.cookie.indexOf(";",c_start);&lt;br /&gt;       if (c_end==-1) c_end=document.cookie.length       &lt;br /&gt;       return unescape(document.cookie.substring(c_start,c_end));&lt;br /&gt;       } &lt;br /&gt;     }&lt;br /&gt;    &lt;br /&gt;   return "";&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;For reading a cookie Visitor we will use the following line in Flex code:-&lt;br /&gt;var visitorId : String = ExternalInterface.call("getCookie","Visitor");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;Varun&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-6596809612357558922?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/10/reading-and-writing-browser-cookie-in.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ySkyl0NTd_E/StK9RgSCkoI/AAAAAAAAAEQ/CKAUtjXloGw/s72-c/cookie-bite-web.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-3537457534143951847</guid><pubDate>Thu, 27 Aug 2009 05:00:00 +0000</pubDate><atom:updated>2009-08-26T22:11:37.551-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>AIR</category><category domain='http://www.blogger.com/atom/ns#'>Challenge</category><category domain='http://www.blogger.com/atom/ns#'>Flex</category><title>Flex Challenge to know your acquisitions</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ySkyl0NTd_E/SpYTa8kXxxI/AAAAAAAAAEI/vKK1TKJu85I/s1600-h/AppIcon.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 191px; height: 59px;" src="http://3.bp.blogspot.com/_ySkyl0NTd_E/SpYTa8kXxxI/AAAAAAAAAEI/vKK1TKJu85I/s400/AppIcon.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5374504558969472786" /&gt;&lt;/a&gt;&lt;br /&gt;Here is a good go-ahead step by Adobe india for flex developer to know their skills&lt;br /&gt;&lt;br /&gt;Check out the great application with a great challenge at&lt;br /&gt;&lt;br /&gt;&lt;a href="http://flashahead.adobe.com/challenges/"&gt;http://flashahead.adobe.com/challenges/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I finised the challange in less than 20 minutes. :)&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;br /&gt;&lt;br /&gt;http://www.vrathore.blogspot.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-3537457534143951847?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/08/flex-challenge-to-know-your.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ySkyl0NTd_E/SpYTa8kXxxI/AAAAAAAAAEI/vKK1TKJu85I/s72-c/AppIcon.png' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-3743515825697689646</guid><pubDate>Wed, 26 Aug 2009 09:04:00 +0000</pubDate><atom:updated>2009-08-26T02:16:09.457-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Actionscript</category><category domain='http://www.blogger.com/atom/ns#'>ShareThis</category><category domain='http://www.blogger.com/atom/ns#'>Flash</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><title>Using ShareThis in Flex-Flash</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ySkyl0NTd_E/SpT9LLPxCQI/AAAAAAAAAEA/4IskRFazk38/s1600-h/sharethis_logo_new.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 151px; height: 38px;" src="http://4.bp.blogspot.com/_ySkyl0NTd_E/SpT9LLPxCQI/AAAAAAAAAEA/4IskRFazk38/s400/sharethis_logo_new.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5374198623799150850" /&gt;&lt;/a&gt;&lt;br /&gt;Wondering when ShareThis would actually provide a .swf file to be loaded in the fash file in stead of calling a JavaScript function to open the ShareThispop in the new window.&lt;br /&gt;First of all we need to go to sharethis.com publisher section and customize your widget, you will get a javascript code by registering your email address. Here is javascript code what i got :-&lt;br /&gt;&lt;br /&gt;script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=9f363e20-dc32-444d-a8c9-afd21615fd57&amp;amp;type=website&amp;amp;popup=true&amp;amp;embeds=true"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// ACTIONSCRIPT CODE&lt;br /&gt;     private function shareThis():void&lt;br /&gt;     {&lt;br /&gt;   var url:String = "http://www.vrathore.blogspot.com";&lt;br /&gt;   var title:String = "VARUN-RATHORE";&lt;br /&gt;      ExternalInterface.call("ShareThis", url, title);&lt;br /&gt;     }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Using a javascript code in the html file for opening the pop window&lt;br /&gt;// JAVASCRIPT CODE&lt;br /&gt; function ShareThis(url, title)&lt;br /&gt; {&lt;br /&gt;  url = window.location;&lt;br /&gt;    var s = SHARETHIS.addEntry({&lt;br /&gt;      url: url,&lt;br /&gt;      title: title&lt;br /&gt;    }, {button:false,popup:true});&lt;br /&gt;    s.popup()&lt;br /&gt;    return false;&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-3743515825697689646?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/08/using-sharethis-in-flex-flash.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ySkyl0NTd_E/SpT9LLPxCQI/AAAAAAAAAEA/4IskRFazk38/s72-c/sharethis_logo_new.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-8352224704595674824</guid><pubDate>Tue, 14 Jul 2009 06:53:00 +0000</pubDate><atom:updated>2009-07-14T00:00:08.523-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Actionscript</category><category domain='http://www.blogger.com/atom/ns#'>Configuration</category><category domain='http://www.blogger.com/atom/ns#'>Spring</category><category domain='http://www.blogger.com/atom/ns#'>Flash</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><title>Spring ActionScript Configuration in Flash/Flex/AIR application</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ySkyl0NTd_E/Slws6jM0uCI/AAAAAAAAAD4/pVGcz5o8g9Y/s1600-h/Configuration.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 394px;" src="http://1.bp.blogspot.com/_ySkyl0NTd_E/Slws6jM0uCI/AAAAAAAAAD4/pVGcz5o8g9Y/s400/Configuration.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5358207041057110050" /&gt;&lt;/a&gt;&lt;br /&gt;Just as we use the applicationContext.xml in java application where we map the classes to the objecys in the context file and mapping the variables in the class files to the properties in the configuration file, we can use a simialr methodolgy in our flex application and get the changes to the variable by just changing in the configuration file , without building or refreshing the application.&lt;br /&gt;&lt;br /&gt;Here is the code sniplet which is used to achive the following :-&lt;br /&gt;            // spring actionscript config&lt;br /&gt;           var applicationContext : FlexXMLApplicationContext =new FlexXMLApplicationContext("config.xml");&lt;br /&gt;           applicationContext .addEventListener(Event.COMPLETE, onApplicationContextComplete);&lt;br /&gt;           applicationContext.load(); &lt;br /&gt;&lt;br /&gt;        protected function onApplicationContextComplete(event:Event):void&lt;br /&gt;        {&lt;br /&gt;            var appConfig  : AppConfig = applicationContext.getObject("appConfig"); &lt;br /&gt;            model.appConfig = appConfig;&lt;br /&gt;            resourceManager.localeChain = [appConfig.locale];  &lt;br /&gt;         &lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;  // HERE model.appConfig is the actionscript class which i have mapped to the object in my configuration file.&lt;br /&gt;AppConfig.as file is as follows :-&lt;br /&gt;package com.infoswell.model.global&lt;br /&gt;{&lt;br /&gt; [Bindable]&lt;br /&gt; public class AppConfig&lt;br /&gt; {&lt;br /&gt;  // src path used as root to locate images, etc.&lt;br /&gt;        public var srcPath:String = "";&lt;br /&gt;        &lt;br /&gt;&lt;br /&gt;        // locale for menu config path &lt;br /&gt;        // note: curently resource bundle properties locale from project compile options&lt;br /&gt;        public var locale:String = "en_US";     &lt;br /&gt;&lt;br /&gt;  public function AppConfig()&lt;br /&gt;  {&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The config.xml is as follows:-&lt;br /&gt;&lt;?xml version="1.0"?&gt;&lt;br /&gt;&lt;objects xmlns="http://www.pranaframework.org/objects" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"&lt;br /&gt;         xsi:schemaLocation="http://www.pranaframework.org/objects&lt;br /&gt;                             http://www.pranaframework.org/schema/objects/prana-objects-0.6.xsd"&gt;&lt;br /&gt;    &lt;object id="appConfig" class="com.model.global.AppConfig"&gt;&lt;br /&gt;        &lt;!-- default locale --&gt;  &lt;br /&gt;        &lt;property name="locale" value="en_US"/&gt;  &lt;br /&gt;  &lt;property name="srcPath" value="testing" /&gt;&lt;br /&gt;    &lt;/object&gt;&lt;br /&gt;&lt;/objects&gt;&lt;br /&gt;                                       &lt;br /&gt;The swc file which is used in the application can be created as follows :-&lt;br /&gt;First download the source using a subversion client from the following url:&lt;br /&gt;&lt;br /&gt;https://src.springframework.org/svn/se-springactionscript-as/&lt;br /&gt;&lt;br /&gt;Step into the ant folder and execute “ant” to see the options. You can create a debug enabled version, a release, documentation. I created the debug enabled version with the following command. Of course you do have to have ant on your path. Do not forget to change the build.properties. You need to change the FLEX_HOME parameter as described in the readme file that comes with the sources.&lt;br /&gt;&lt;br /&gt;ant compile-main-debug&lt;br /&gt;&lt;br /&gt;The swc file is created in the antbuild/compile/main/swc folder.&lt;br /&gt;&lt;br /&gt;Use the swc created in the project libs folder and use this extra ordinary feture to load configuration from outside.&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;Varun&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-8352224704595674824?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/07/spring-actionscript-configuration-to.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ySkyl0NTd_E/Slws6jM0uCI/AAAAAAAAAD4/pVGcz5o8g9Y/s72-c/Configuration.png' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-2324059809619839900</guid><pubDate>Mon, 13 Jul 2009 17:24:00 +0000</pubDate><atom:updated>2009-07-13T10:43:51.700-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>ammaps</category><category domain='http://www.blogger.com/atom/ns#'>world maps</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><category domain='http://www.blogger.com/atom/ns#'>cool maps</category><title>Ammaps in Flex</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ySkyl0NTd_E/SltyOkMsB4I/AAAAAAAAADo/MNXoDEK9wKM/s1600-h/layout.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 198px;" src="http://4.bp.blogspot.com/_ySkyl0NTd_E/SltyOkMsB4I/AAAAAAAAADo/MNXoDEK9wKM/s400/layout.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5358001776247965570" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here is way to implement ammaps in flex , i used swfloader to add the ammaps in my application as follows &lt;br /&gt;&lt;br /&gt;var str : String = "assets/ammap.swf?settings_file=assets/ammap_settings.xml&amp;data_file=assets/ammap_data.xml"&lt;br /&gt;&lt;br /&gt;swLoader.load(str);&lt;br /&gt;&lt;br /&gt;&lt;mx:SWFLoader id="swLoader" height="400" width="80%" /&gt;&lt;br /&gt;&lt;br /&gt;where i kept all the required files(swf/xml) in assets folders of my application.&lt;br /&gt;&lt;br /&gt;Regards&lt;br /&gt;Varun&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-2324059809619839900?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/07/ammaps-in-flex.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ySkyl0NTd_E/SltyOkMsB4I/AAAAAAAAADo/MNXoDEK9wKM/s72-c/layout.png' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-6148135979525922388</guid><pubDate>Tue, 07 Jul 2009 07:01:00 +0000</pubDate><atom:updated>2009-07-07T00:10:19.072-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>sharp fonts</category><category domain='http://www.blogger.com/atom/ns#'>embed fonts</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><category domain='http://www.blogger.com/atom/ns#'>pixel fonts</category><title>Making Sharper Flex Application with Sharper Fonts</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ySkyl0NTd_E/SlL0xSgrzXI/AAAAAAAAADY/KcACQ5VfIbA/s1600-h/font.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 330px; height: 49px;" src="http://1.bp.blogspot.com/_ySkyl0NTd_E/SlL0xSgrzXI/AAAAAAAAADY/KcACQ5VfIbA/s400/font.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5355612034516634994" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am not a multi fan of using fonts in Flex , i had to put a very smaller font which was to be very sharp , Here is a example to add it , i tried it in my css but it can be done with setStyle Attribute too, here is the code sniplet and the result&lt;br /&gt;Just define following in your css&lt;br /&gt;@font-face&lt;br /&gt;{&lt;br /&gt;    src: url("../font/kroe0555.ttf");&lt;br /&gt;    fontFamily: StandardFont;&lt;br /&gt;    flashType: true;&lt;br /&gt;}&lt;br /&gt;Application&lt;br /&gt;{&lt;br /&gt; color            : #CCCCCC;&lt;br /&gt; focus-thickness  : 0.4;&lt;br /&gt; font-size        : 8;&lt;br /&gt; font-grid-fit-type :subpixel;&lt;br /&gt; font-sharpness   : 1;&lt;br /&gt; font-anti-alias-type: normal;&lt;br /&gt; font-weight      : normal;&lt;br /&gt;}&lt;br /&gt; &lt;br /&gt;Cheers&lt;br /&gt;Varun&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-6148135979525922388?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/07/making-sharper-flex-application-with.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ySkyl0NTd_E/SlL0xSgrzXI/AAAAAAAAADY/KcACQ5VfIbA/s72-c/font.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-3158005730447259139</guid><pubDate>Sat, 04 Jul 2009 07:54:00 +0000</pubDate><atom:updated>2009-07-04T00:58:01.366-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Map</category><category domain='http://www.blogger.com/atom/ns#'>Mercator cool maps</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><title>A great Flex Map Component Mercator.swc</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_ySkyl0NTd_E/Sk8LaSOCTcI/AAAAAAAAADI/gC95KI-Kt4M/s1600-h/World.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 400px; height: 261px;" src="http://1.bp.blogspot.com/_ySkyl0NTd_E/Sk8LaSOCTcI/AAAAAAAAADI/gC95KI-Kt4M/s400/World.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5354511028162022850" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mercator Flash/Flex Component from Manfred Weber is the coolest map componet i have seen with such a cool features, to zoom, get center, lattitude,longitude with additional markers and distance lines , i tried to create the map and within minutes i created a realy cool map with color and populating the map from a xml.The component contains all countries of the world and additional 8000 cities + the corresponding latitude and longitude&lt;br /&gt;&lt;br /&gt;Just I think he has not updated the SWC file for the markers...... i think he will do it soon check out the demo at &lt;a href="http://dev.dschini.org/mercator-swc/demos.php"&gt;http://dev.dschini.org/mercator-swc/demos.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;Varun&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-3158005730447259139?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/07/great-flex-map-component-mercatorswc.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_ySkyl0NTd_E/Sk8LaSOCTcI/AAAAAAAAADI/gC95KI-Kt4M/s72-c/World.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-7401188637898504955</guid><pubDate>Wed, 20 May 2009 04:50:00 +0000</pubDate><atom:updated>2009-05-19T21:56:28.232-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Security Error 2060:Security sandbox violation</category><title>Security Error 2060:Security sandbox violation: ExternalInterface caller</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.iconarchive.com/icons/tpdkdesign.net/refresh-cl/System-Security-Warning-256x256.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 256px; height: 256px;" src="http://www.iconarchive.com/icons/tpdkdesign.net/refresh-cl/System-Security-Warning-256x256.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;Many a times we see such issues that we are not able to launch the application from html file and see the following error--- &lt;br /&gt;&lt;br /&gt;Security Error 2060: Security sandbox violation: ExternalInterface caller&lt;br /&gt;file:///C:/Varun/myproject.swf&lt;br /&gt;cannot access&lt;br /&gt;file:///C:/Varun/myproject.html&lt;br /&gt;&lt;br /&gt;So to avoid such a error you need to make some changes in html template html&lt;br /&gt;In the HTML template make sure that the parameter 'allowscriptaccess' is set to 'always' &lt;br /&gt;&lt;br /&gt;'allowScriptAccess','always',&lt;br /&gt;param name="allowScriptAccess" value=“always" &lt;br /&gt;if you are making a Object of swf from a flex application you can add the following parameter to the Object&lt;br /&gt;swfObject.addParam('allowscriptaccess', 'always');&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-7401188637898504955?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/05/security-error-2060security-sandbox.html</link><author>vrathore84@gmail.com (vrathore)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-797652341837898109</guid><pubDate>Thu, 23 Apr 2009 17:10:00 +0000</pubDate><atom:updated>2009-04-23T10:24:50.784-07:00</atom:updated><title>I am on Adobe Feed Now :)</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ySkyl0NTd_E/SfCkMHABf7I/AAAAAAAAADA/NYgxq0pd80Q/s1600-h/13112008400.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_ySkyl0NTd_E/SfCkMHABf7I/AAAAAAAAADA/NYgxq0pd80Q/s400/13112008400.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5327938887123828658" /&gt;&lt;/a&gt;&lt;br /&gt;Today i am very delighted , my blog has been added in Adobe feeds , i would try my best to share my knowledge and views on RIA.&lt;br /&gt;&lt;br /&gt;Its me on my Bullet.&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-797652341837898109?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/04/i-am-on-adobe-feed-now.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ySkyl0NTd_E/SfCkMHABf7I/AAAAAAAAADA/NYgxq0pd80Q/s72-c/13112008400.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>10</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-7734704797925902583</guid><pubDate>Thu, 23 Apr 2009 08:55:00 +0000</pubDate><atom:updated>2009-04-23T02:00:58.867-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Text Layout FrameWork</category><category domain='http://www.blogger.com/atom/ns#'>Flex</category><category domain='http://www.blogger.com/atom/ns#'>Typography</category><title>Adding Custom Components to Text Layout Framework(ADOBE LABS)</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ySkyl0NTd_E/SfAt6de2wOI/AAAAAAAAAC4/V3PbeMJv928/s1600-h/TextLayout.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 211px;" src="http://2.bp.blogspot.com/_ySkyl0NTd_E/SfAt6de2wOI/AAAAAAAAAC4/V3PbeMJv928/s400/TextLayout.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5327808841549005026" /&gt;&lt;/a&gt;&lt;br /&gt;The Text Layout Framework is a set of ActionScript 3.0 libraries with support for complex scripts and advanced typographic and layout features not available in the TextField class,It allows us to add custom components and Display objects in the TextArea making the issue of adding headers, tables and providing loacl anchor links  , also we can add multiple TextFlow elements in between the display objects and set the selection in between those elements. Still there are some Bugs which make the Text Layout framework informal to handle but overall we can achieve a good sort of text Typography which was earlier missing in Flash.&lt;br /&gt;here is a code sniplet which i used to make multiple TextFlow elements inside onemain container.&lt;br /&gt; &lt;br /&gt;// Creating a TextFlow for handling selected Text and editing&lt;br /&gt;[Bindable]public var selectedFlow   : TextFlow ;&lt;br /&gt;&lt;br /&gt;// Adding UIComponent and TextFlow Dynamically, where is a  public class //LinkedContainers extends Sprite &lt;br /&gt;var dspObj : DisplayObject = new LinkedContainers();&lt;br /&gt;dspObj.name = "dspObject";&lt;br /&gt;var ufComponent = new UIComponent();&lt;br /&gt;&lt;br /&gt;var custTextFlow : TextFlow =  new TextFlow();&lt;br /&gt;custTextFlow.flowComposer.addController(new DisplayObjectContainerController(ufComponent,textArea.width,textArea.height));&lt;br /&gt;&lt;br /&gt;// setup event listeners for selection changed and ILG loaded&lt;br /&gt;custTextFlow.addEventListener(SelectionEvent.SELECTION_CHANGE,selectionChangeListener,false,0,true);&lt;br /&gt;custTextFlow.addEventListener(StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGED,graphicStatusChangeEvent,false,0,true);&lt;br /&gt;//_textFlow.addEventListener(CompositionCompletionEvent.COMPOSITION_COMPLETE,checkCompositionChange);&lt;br /&gt;custTextFlow.addEventListener(SelectionEvent.SELECTION_CHANGE,function checkChange():void{&lt;br /&gt;selectedFlow = custTextFlow;&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-7734704797925902583?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/04/adding-custom-components-to-text-layout.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ySkyl0NTd_E/SfAt6de2wOI/AAAAAAAAAC4/V3PbeMJv928/s72-c/TextLayout.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-8399224087873569759</guid><pubDate>Wed, 22 Apr 2009 07:37:00 +0000</pubDate><atom:updated>2009-04-22T00:47:56.787-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Swf Size</category><category domain='http://www.blogger.com/atom/ns#'>AS3</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><title>Reducing Flex Application Size Drastically</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ySkyl0NTd_E/Se7Le7ofznI/AAAAAAAAACs/fBZ1Vr4TndU/s1600-h/fatThin.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 273px;" src="http://3.bp.blogspot.com/_ySkyl0NTd_E/Se7Le7ofznI/AAAAAAAAACs/fBZ1Vr4TndU/s320/fatThin.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5327419141489938034" /&gt;&lt;/a&gt;&lt;br /&gt;Most of us while working on Flex applications get into a big problem of downloading time , as the application size increases it takes more time to get downloaded on the client machine, here are few things which i found to reduce the size of the application which makes the download time to get reduced drastically&lt;br /&gt;&lt;br /&gt;The following three methods acn reduce the swf size by 70%&lt;br /&gt;&lt;br /&gt;1. go to project properties-&gt;flex build path-&gt;library path -&gt; framework linkage-&gt;select RSL from drop down   press ok &lt;br /&gt;2. go to project properties-&gt;flex complier-&gt;additional complier arguments  &lt;br /&gt;    add "-debug=false" in the end  -&gt; press apply and ok.&lt;br /&gt;&lt;br /&gt;3. Using a  modular approach for application building, this can further reduce the application size.&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-8399224087873569759?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/04/reducing-flex-application-size.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ySkyl0NTd_E/Se7Le7ofznI/AAAAAAAAACs/fBZ1Vr4TndU/s72-c/fatThin.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-3043025218690110874</guid><pubDate>Wed, 22 Apr 2009 06:50:00 +0000</pubDate><atom:updated>2009-04-21T23:56:32.616-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Request Headers</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><category domain='http://www.blogger.com/atom/ns#'>AS3 GET POST Methods</category><title>REQUEST HEADERS in FLEX using GET - POST Methods</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ySkyl0NTd_E/Se6_jj1IMgI/AAAAAAAAACk/2h7--zAQRpc/s1600-h/postImage.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 300px; height: 300px;" src="http://3.bp.blogspot.com/_ySkyl0NTd_E/Se6_jj1IMgI/AAAAAAAAACk/2h7--zAQRpc/s320/postImage.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5327406026860278274" /&gt;&lt;/a&gt;&lt;br /&gt;We can modify Request Header in Flex under the certain circumstances only&lt;br /&gt;&lt;br /&gt;var header:URLRequestHeader = new URLRequestHeader("newHeader", "newValue");&lt;br /&gt;var request:URLRequest = new URLRequest("http://www.[vrathore.blogspot].com/");&lt;br /&gt;request.data = new URLVariables("name=Varun+Rathore");&lt;br /&gt;request.requestHeaders.push(header); &lt;br /&gt;&lt;br /&gt;However, its possible to modify the headers on a POST request only.&lt;br /&gt;request.method = URLRequestMethod.POST;&lt;br /&gt;&lt;br /&gt;This should be taken care that we specifically give the request method as the Flash Player will  convert POST requests into GET requests if the request is empty.&lt;br /&gt;&lt;br /&gt;Other thing which should be kept in mind is to pass atleast  one variable along with the request. Otherwise the headers will remain unchanged.&lt;br /&gt;var variables:URLVariables = new URLVariables();&lt;br /&gt;variables.name = "newValue";&lt;br /&gt;request.data = variables;&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-3043025218690110874?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/04/request-headers-in-flex-using-get-post.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ySkyl0NTd_E/Se6_jj1IMgI/AAAAAAAAACk/2h7--zAQRpc/s72-c/postImage.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-2253052426243439194</guid><pubDate>Thu, 19 Mar 2009 05:56:00 +0000</pubDate><atom:updated>2009-03-18T23:21:56.956-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>AIR</category><category domain='http://www.blogger.com/atom/ns#'>Custom Component</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex</category><category domain='http://www.blogger.com/atom/ns#'>Stack</category><title>Stack Component in Flex /AIR / AS3</title><description>While working on a auditors project i had a scenario where i was to upload files on every object of the for loop and i was to upload the file on the server with a returning id from the previous action , so that the coming files will be uploaded as the child of the previous files(As in the tree structure). I had to create a Stack class which solved my problem. The function defined are pop(), push() and peek().&lt;br /&gt;I will be adding Linked List Component shortly......&lt;br /&gt;&lt;br /&gt;Here is the Code :-&lt;br /&gt;&lt;br /&gt;a) Stack Class&lt;br /&gt;&lt;br /&gt;package &lt;br /&gt;{&lt;br /&gt; &lt;br /&gt; public class Stack &lt;br /&gt; {&lt;br /&gt;     private var first : Node;&lt;br /&gt; &lt;br /&gt;     public function isEmpty ():Boolean&lt;br /&gt;     {&lt;br /&gt;         return first == null;&lt;br /&gt;     }&lt;br /&gt;    &lt;br /&gt;     public function push (data : Object):void&lt;br /&gt;     {&lt;br /&gt;         var oldFirst : Node = first;&lt;br /&gt;         first = new Node ();&lt;br /&gt;         first.data = data;&lt;br /&gt;         first.next = oldFirst;&lt;br /&gt;     }&lt;br /&gt;    &lt;br /&gt;     public function pop () : Object &lt;br /&gt;     {&lt;br /&gt;         if (isEmpty ())&lt;br /&gt;         {&lt;br /&gt;             trace ("Error: \n\t Objects of type Stack must containt data   before you attempt to pop");&lt;br /&gt;             return null;&lt;br /&gt;         }&lt;br /&gt;         var data:Object = first.data;&lt;br /&gt;         first = first.next;&lt;br /&gt;         return data;&lt;br /&gt;     }&lt;br /&gt; &lt;br /&gt;     public function peek () : Object &lt;br /&gt;     {&lt;br /&gt;         if (isEmpty ())&lt;br /&gt;         {&lt;br /&gt;             trace ("Error: \n\t Objects of type Stack must containt data before you attempt to peek");&lt;br /&gt;             return null;&lt;br /&gt;         }&lt;br /&gt;         return first.data;&lt;br /&gt;     }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;b)&lt;br /&gt;Node Class as the store house object used in Stack Class&lt;br /&gt;package &lt;br /&gt;{&lt;br /&gt; &lt;br /&gt; public class Node&lt;br /&gt; {&lt;br /&gt;  public function Node()&lt;br /&gt;  {&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  public var next : Node;&lt;br /&gt;            public var data : Object; &lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-2253052426243439194?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/03/stack-component-in-flex-air-as3.html</link><author>vrathore84@gmail.com (vrathore)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-6141610566741138416</guid><pubDate>Wed, 11 Feb 2009 05:17:00 +0000</pubDate><atom:updated>2009-02-10T21:23:20.578-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>AIR</category><category domain='http://www.blogger.com/atom/ns#'>key value component</category><category domain='http://www.blogger.com/atom/ns#'>hashmap</category><category domain='http://www.blogger.com/atom/ns#'>Flex</category><title>Hash Map in Flex / AIR / AS3</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ySkyl0NTd_E/SZJgQfyGCwI/AAAAAAAAACc/Pzmi8LOmZXw/s1600-h/image009.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 252px;" src="http://4.bp.blogspot.com/_ySkyl0NTd_E/SZJgQfyGCwI/AAAAAAAAACc/Pzmi8LOmZXw/s320/image009.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5301405547894278914" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A HashMap lets you look up values by exact key (always case-sensitive). It is very much like a Hashtable, except that it is faster and not thread-safe. There are some minor other differences:&lt;br /&gt;&lt;br /&gt;        * HashMaps work with Iterators where the older Hashtables work with Enumerations&lt;br /&gt;        * Hashtables work best with capacities that are prime numbers. HashMaps round capacities up to powers of two.&lt;br /&gt;In Flex we dont have such a facility to look up values by exact key , so i tried to create a HashMap Class which have almost all the typical function needed to be used in the application, i have created a custom Stack Class too and will be sharing the code for that too soon.&lt;br /&gt;&lt;br /&gt;Here goes the code :- &lt;br /&gt;&lt;br /&gt;package &lt;br /&gt;{&lt;br /&gt; public class HashMap&lt;br /&gt; {&lt;br /&gt;     public var keys:Array;&lt;br /&gt;     public var values:Array;&lt;br /&gt;     //&lt;br /&gt;     public function HashMap()&lt;br /&gt;     {&lt;br /&gt;         super();&lt;br /&gt;         this.keys = new Array();&lt;br /&gt;         this.values = new Array();&lt;br /&gt;     }&lt;br /&gt;&lt;br /&gt;     public function containsKey(key:Object):Boolean&lt;br /&gt;     {&lt;br /&gt;         return (this.findKey(key) &gt; -1);&lt;br /&gt;     }&lt;br /&gt;     public function containsValue(value:Object):Boolean&lt;br /&gt;     {&lt;br /&gt;         return (this.findValue(value) &gt; -1);&lt;br /&gt;     }&lt;br /&gt;     public function getKeys():Array&lt;br /&gt;     {&lt;br /&gt;         return (this.keys.slice());&lt;br /&gt;     }&lt;br /&gt;     public function getValues():Array&lt;br /&gt;     {&lt;br /&gt;         return (this.values.slice());&lt;br /&gt;     }&lt;br /&gt;     public function get(key:Object):Object&lt;br /&gt;     {&lt;br /&gt;         return (values[this.findKey(key)]);&lt;br /&gt;     }&lt;br /&gt;     public function put(key:Object, value:Object):void&lt;br /&gt;     {&lt;br /&gt;         var oldKey;&lt;br /&gt;         var theKey = this.findKey(key);&lt;br /&gt;         if (theKey &lt; 0)&lt;br /&gt;         {&lt;br /&gt;             this.keys.push(key);&lt;br /&gt;             this.values.push(value);&lt;br /&gt;         }&lt;br /&gt;     }&lt;br /&gt;     public function putAll(map:HashMap):void&lt;br /&gt;     {&lt;br /&gt;         var theValues = map.getValues();&lt;br /&gt;         var theKeys = map.getKeys();&lt;br /&gt;         var max = keys.length;&lt;br /&gt;         for (var i = 0; i &lt; max; i = i - 1)&lt;br /&gt;         {&lt;br /&gt;             this.put(theKeys[i], theValues[i]);&lt;br /&gt;         }&lt;br /&gt;     }&lt;br /&gt;     public function clear():void&lt;br /&gt;     {&lt;br /&gt;         this.keys = new Array();&lt;br /&gt;         this.values = new Array();&lt;br /&gt;     }&lt;br /&gt;     public function remove(ikey:Object):Object&lt;br /&gt;     {&lt;br /&gt;         var theiKey = this.findKey(ikey);&lt;br /&gt;         if (theiKey &gt; -1)&lt;br /&gt;         {&lt;br /&gt;             var theValue = this.values[theiKey];&lt;br /&gt;             this.values.splice(theiKey, 1);&lt;br /&gt;             this.keys.splice(theiKey, 1);&lt;br /&gt;             return (theValue);&lt;br /&gt;         }&lt;br /&gt;     }&lt;br /&gt;     public function size():int&lt;br /&gt;     {&lt;br /&gt;         return (this.keys.length);&lt;br /&gt;     }&lt;br /&gt;     public function isEmpty():Boolean&lt;br /&gt;     {&lt;br /&gt;         return (this.size() &lt; 1);&lt;br /&gt;     }&lt;br /&gt;     public function findKey(key:Object):Object&lt;br /&gt;     {&lt;br /&gt;         var index = this.keys.length;&lt;br /&gt;         while(this.keys[--index] !== key.toString() &amp;&amp; index &gt; -1)&lt;br /&gt;         {&lt;br /&gt;         }&lt;br /&gt;         return(index);&lt;br /&gt;     }&lt;br /&gt;     public function findValue(value:Object):Object&lt;br /&gt;     {&lt;br /&gt;         var index = this.values.length;&lt;br /&gt;         while(this.values[--index] !== value &amp;&amp; index &gt; -1)&lt;br /&gt;         {&lt;br /&gt;         }&lt;br /&gt;         return (index);&lt;br /&gt;     }&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-6141610566741138416?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/02/hash-map-in-flex-air-as3.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ySkyl0NTd_E/SZJgQfyGCwI/AAAAAAAAACc/Pzmi8LOmZXw/s72-c/image009.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-4566672540443241814</guid><pubDate>Tue, 10 Feb 2009 05:38:00 +0000</pubDate><atom:updated>2009-02-09T21:39:36.407-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Reflection in Flex</category><category domain='http://www.blogger.com/atom/ns#'>AIR</category><category domain='http://www.blogger.com/atom/ns#'>Flash</category><category domain='http://www.blogger.com/atom/ns#'>Methods from External SWF</category><title>How To Call Methods from a External SWF (Reflection in Flex )</title><description>While loading the swf from a external source , we are always wondering what all methods it may have , the developers have to seek help from the swf coders to get the methods and commnets for the methods which they have created, sometimes the developers provide the swf but fail to provide a meaningful API with which you can interact with the swf. &lt;br /&gt;&lt;br /&gt;The Phenomenon of seeing the properties and methods of the class is know as 'reflection', to achieve this in flex we need to use the SWF loader to load the swf into the application as follows&lt;br /&gt;&lt;br /&gt;var swfUrl : String = "www.varunrathore.co.cc";// path to your swf&lt;br /&gt;var req: URLRequest = new URLRequest(swfUrl);&lt;br /&gt;var loader : URLLoader = new URLLoader(req);&lt;br /&gt;&lt;br /&gt;Now we will be using the class to get the remote objects .Once you have the class names it was a matter of the actual introspection to see the available methods. To do this you can use the getDefinition method of the ApplicationDomain class in Flex&lt;br /&gt;var classUsed:Class = loader.contentLoaderInfo.applicationDomain.getDefinition(className) as Class;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here we get a XMl with all the methods and variables ... &lt;br /&gt;var remoteSWF:Object = loader.content as Object;&lt;br /&gt;&lt;br /&gt;Just call the method you wish to call from the SWF&lt;br /&gt;remoteSWF.methodToBeCalled(); // calling the desired method with its name&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers &lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-4566672540443241814?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/02/how-to-call-methods-from-external-swf.html</link><author>vrathore84@gmail.com (vrathore)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-4704068633428593695</guid><pubDate>Mon, 09 Feb 2009 12:51:00 +0000</pubDate><atom:updated>2009-02-09T04:57:33.505-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>AIR</category><category domain='http://www.blogger.com/atom/ns#'>sqllite Adobe</category><category domain='http://www.blogger.com/atom/ns#'>Escaping Characters</category><category domain='http://www.blogger.com/atom/ns#'>Flex</category><category domain='http://www.blogger.com/atom/ns#'>String</category><title>How to escape characters while Saving Data in SQLITE database</title><description>I have used the following function while saving data to sqllite if the data had some characters which needed to be escaped passing the string to the function returns the escapes string .&lt;br /&gt;&lt;br /&gt;  private static function SQLSafe(strTemp:String):String&lt;br /&gt;  {&lt;br /&gt;     var i:Number = 0;&lt;br /&gt;     var iOld:Number = 0;&lt;br /&gt;     var firstQuote:Boolean = false;&lt;br /&gt;     var strNew:String = "";&lt;br /&gt;     strTemp = StringUtil.trim(strTemp);&lt;br /&gt;     while (i != -1){&lt;br /&gt;        i = strTemp.indexOf("'", i);&lt;br /&gt;        if (i != -1){&lt;br /&gt;           if ((strNew != "") || (firstQuote)){&lt;br /&gt;              strNew += "'" + strTemp.substring(iOld, i);&lt;br /&gt;           }&lt;br /&gt;           else if (i != 0) {&lt;br /&gt;              strNew = strTemp.substring(iOld, i);&lt;br /&gt;           }&lt;br /&gt;           else {&lt;br /&gt;              firstQuote = true;&lt;br /&gt;           }&lt;br /&gt;           iOld = i;&lt;br /&gt;           i++;&lt;br /&gt;        }&lt;br /&gt;     }&lt;br /&gt;     if (iOld &lt;= strTemp.length){&lt;br /&gt;        if (strNew != ""){&lt;br /&gt;           strNew += "'" + strTemp.substring(iOld, strTemp.length);&lt;br /&gt;        }&lt;br /&gt;        else {&lt;br /&gt;           strNew = strTemp.substring(iOld, strTemp.length);&lt;br /&gt;        }&lt;br /&gt;     }&lt;br /&gt;     return (strNew);&lt;br /&gt;  }    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers &lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-4704068633428593695?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/02/how-to-escape-characters-while-saving.html</link><author>vrathore84@gmail.com (vrathore)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-5187007513284051469</guid><pubDate>Mon, 09 Feb 2009 05:35:00 +0000</pubDate><atom:updated>2009-02-08T21:39:33.161-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>AIR</category><category domain='http://www.blogger.com/atom/ns#'>Arthropod</category><category domain='http://www.blogger.com/atom/ns#'>Adobe Flex Apllication Framework</category><category domain='http://www.blogger.com/atom/ns#'>debug</category><category domain='http://www.blogger.com/atom/ns#'>Flash</category><title>Debugging the Flex / Flash / AIR from outside the flex builder</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_ySkyl0NTd_E/SY_BfBEur-I/AAAAAAAAACU/C37LNdhhCEA/s1600-h/header2.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 70px;" src="http://4.bp.blogspot.com/_ySkyl0NTd_E/SY_BfBEur-I/AAAAAAAAACU/C37LNdhhCEA/s320/header2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5300668025046740962" /&gt;&lt;/a&gt;&lt;br /&gt;Arthropod is an external Debug trace window for Flash/Flex/AIR. Drop a simple class into your project and it will accept logging from the application/swf.&lt;br /&gt;You can download the sample application from :-&lt;br /&gt;&lt;a href="http://arthropod.stopp.se/ "&gt;http://arthropod.stopp.se/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-5187007513284051469?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2009/02/debugging-flex-flash-air-from-outside.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_ySkyl0NTd_E/SY_BfBEur-I/AAAAAAAAACU/C37LNdhhCEA/s72-c/header2.png' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-3544451853249126061</guid><pubDate>Wed, 24 Dec 2008 05:36:00 +0000</pubDate><atom:updated>2008-12-23T21:39:07.069-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Flex Inactivity</category><category domain='http://www.blogger.com/atom/ns#'>Action script Inactivity</category><category domain='http://www.blogger.com/atom/ns#'>AIR inactivity</category><title>Determining Inactivity in Flex (FlexEvent.IDLE)</title><description>A FlexEvent.IDLE event is dispatched every 100 milliseconds when there is no keyboard or mouse activity for 1 second. &lt;br /&gt;&lt;br /&gt;In order to use the following event we need to  import the following classes.  &lt;br /&gt;1. import mx.managers.SystemManager;&lt;br /&gt;2. import mx.events.FlexEvent;&lt;br /&gt;3. import mx.core.mx_internal;&lt;br /&gt;&lt;br /&gt;You’ll need to tell your program that you want to use mx_internal as a namespace to access those properties within the SystemManager class. SytemManager has an “idleCounter” property which is super useful to access- but it is scoped to mx_internal and is not normally accessible. Trying to access it without these steps will throw an error:&lt;br /&gt;&lt;br /&gt;1. use namespace mx_internal;&lt;br /&gt;&lt;br /&gt;SystemManager is automatically instantiated as a part of every Flex app, so we do not need to do this manually. We will, however, need to add an event listener for FlexEvent.IDLE:&lt;br /&gt;&lt;br /&gt;1. this.systemManager.addEventListener(FlexEvent.IDLE, userIdle);&lt;br /&gt;&lt;br /&gt;Construct the callback method. One minutes is equal to 60000 milliseconds… divided by 100 ticks and the number we need to check against is 600. Of course, you’ll probably want something a little shorter in duration for testing:&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;private function userIdle(e:FlexEvent):void {&lt;br /&gt; if(e.currentTarget.mx_internal::idleCounter == 600){&lt;br /&gt;  //do something!&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Note that we prefix the idle Counter property with the mx_internal namespace.&lt;br /&gt;&lt;br /&gt;That’s it! Now we have a sweet little activity monitor in our app. When activity is detected, idle Counter will automatically reset as well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-3544451853249126061?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2008/12/determining-inactivity-in-flex.html</link><author>vrathore84@gmail.com (vrathore)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-4552732686546269171</guid><pubDate>Mon, 08 Dec 2008 04:55:00 +0000</pubDate><atom:updated>2008-12-07T21:12:48.215-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>AIR</category><category domain='http://www.blogger.com/atom/ns#'>web 2.0</category><category domain='http://www.blogger.com/atom/ns#'>messages</category><category domain='http://www.blogger.com/atom/ns#'>voice</category><category domain='http://www.blogger.com/atom/ns#'>voip</category><category domain='http://www.blogger.com/atom/ns#'>ribbit</category><title>Ribbit - Integrate Voice and Rich Communication</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_ySkyl0NTd_E/STyqL-qcNiI/AAAAAAAAACI/fQmPUXr0qHw/s1600-h/circle_platform.gif"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 250px; height: 250px;" src="http://2.bp.blogspot.com/_ySkyl0NTd_E/STyqL-qcNiI/AAAAAAAAACI/fQmPUXr0qHw/s320/circle_platform.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5277279986147669538" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.ribbit.com/"&gt;Ribbit&lt;/a&gt; - An open platform for multi-protocol communication for creating cool voiceware applications.&lt;br /&gt;The Ribbit API's are simple and gives the opportunity to create new communication solutions for all sort of demands.&lt;br /&gt;It enables developer to bring richness of voice calling and Web 2 Experience. You can add voice and Messaging service to your application without any traditional mobile phone intervention.&lt;br /&gt;One thing that i found really good in Ribbit API is that Voice and Message can be delivered and received on multiple devices in multiple location across any sort of network.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-4552732686546269171?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2008/12/ribbit-integrate-voice-and-rich.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_ySkyl0NTd_E/STyqL-qcNiI/AAAAAAAAACI/fQmPUXr0qHw/s72-c/circle_platform.gif' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-8202964375900200933</guid><pubDate>Sun, 10 Aug 2008 19:56:00 +0000</pubDate><atom:updated>2008-08-10T13:02:47.735-07:00</atom:updated><title></title><description>Modern programming languages provide a mixture of primitives for composing programs. Most notably Scheme, Smaltalk, Ruby, and Scala have direct language support for parameterized delayed-execution blocks of code, variously called lambda, anonymous functions, or closures. These provide a natural way to express some kinds of abstractions that are currently quite awkward to express in Java. For programming in the small, anonymous functions allow one to abstract an algorithm over a piece of code; that is, they allow one to more easily extract the common parts of two almost-identical pieces of code. &lt;br /&gt;&lt;br /&gt; Closure Literals&lt;br /&gt;&lt;br /&gt;We introduce a syntactic form for constructing an anonymus function value:&lt;br /&gt;&lt;br /&gt;    Primary:&lt;br /&gt;        ClosureLiteral&lt;br /&gt;    ClosureLiteral:&lt;br /&gt;        { FormalParametersopt =&gt; BlockStatementsopt Expressionopt }&lt;br /&gt;&lt;br /&gt;Evaluating the closure literal expression results in a closure instance . A closure instance is converted to some object type by a closure conversion. In the nominal version of the specification, it is a compile-time error if a closure literal appears in a context where it is not subject to a closure conversion. In the functional version of the specification, if a closure literal is not subject to a closure conversion it is converted to the corresponding function type of the closure literal, which is the function type with: identical argument types; a return type that is the type of the final expression, if one exists, or java.lang.Unreachable if the closure literal's body cannot complete normally, or void otherwise; and a throws type list corresponding to the checked exception types that can be thrown from the body of the closure literal. The conversion, in either case, occurs entirely at compile-time. &lt;br /&gt;&lt;br /&gt;A closure literal captures a block of code - the block statements and the expression - parameterized by the closure literal's formal parameters. All free lexical bindings - that is, lexical bindings not defined within the closure literal - are bound at the time of evaluation of the closure literal to their meaning in the lexical context in which the closure literal appears. Free lexical bindings include references to variables from enclosing scopes, and the meaning of this, break, continue, and return. Evaluating the closure literal does not cause the statements or expression to be evaluated, but packages them up at runtime with a representation of the lexical context to be invoked later.&lt;br /&gt;&lt;br /&gt;At runtime, if a break statement is executed that would transfer control out of a statement that is no longer executing, or is executing in another thread, the VM throws a new unchecked exception, UnmatchedNonlocalTransfer. Similarly, an UnmatchedNonlocalTransfer is thrown when a continue statement attempts to complete a loop iteration that is not executing in the current thread. Finally, an UnmatchedNonlocalTransfer is thrown when a return statement is executed if the method invocation to which the return statement would transfer control is not on the stack of the current thread.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cheers&lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-8202964375900200933?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2008/08/modern-programming-languages-provide.html</link><author>vrathore84@gmail.com (vrathore)</author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-6221754080009704664.post-1989975222389976095</guid><pubDate>Sat, 09 Aug 2008 11:11:00 +0000</pubDate><atom:updated>2008-08-09T04:15:42.229-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Cairngorm</category><category domain='http://www.blogger.com/atom/ns#'>Open Source</category><title>Cairngorm Is Open Source Now</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_ySkyl0NTd_E/SJ18DqSpUuI/AAAAAAAAABU/_KPMUDo0Kws/s1600-h/images.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_ySkyl0NTd_E/SJ18DqSpUuI/AAAAAAAAABU/_KPMUDo0Kws/s320/images.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5232474744408330978" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This week Adobe announced that Cairngorm has been moved to from Labs to opensource.adobe.com.&lt;br /&gt;&lt;br /&gt;So what does this mean for you, as a developer, building RIAs targeting the Adobe Flex platform on top of Cairngorm?&lt;br /&gt;&lt;br /&gt;It means a lot.&lt;br /&gt;&lt;br /&gt;The most significant being that Cairngorm now has a formal community based initiative. This in itself facilitates positive growth as it encourages community feedback and collaboration. It allows the community to have an open pool for discussion, collaboration and most important, knowledge sharing.&lt;br /&gt;&lt;br /&gt;R u willing to contribute?&lt;br /&gt; To begin, start by signing up as a member and sharing your thoughts and experiences. Get involved; engage in conversations with the rest of the community. Take a look under the stage; get to know Cairngorm internals (if you don’t already).&lt;br /&gt;&lt;br /&gt;Expect Good Things To Come Now..&lt;br /&gt;&lt;br /&gt;Cheers &lt;br /&gt;&lt;br /&gt;Varun Rathore&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6221754080009704664-1989975222389976095?l=vrathore.blogspot.com' alt='' /&gt;&lt;/div&gt;</description><link>http://vrathore.blogspot.com/2008/08/cairngorm-is-open-source-now.html</link><author>vrathore84@gmail.com (vrathore)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_ySkyl0NTd_E/SJ18DqSpUuI/AAAAAAAAABU/_KPMUDo0Kws/s72-c/images.jpg' height='72' width='72'/><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></item></channel></rss>