<?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>eidiot</title>
	<atom:link href="http://eidiot.net/en/feed/" rel="self" type="application/rss+xml" />
	<link>http://eidiot.net/en</link>
	<description>Loving ActionScript 3</description>
	<lastBuildDate>Tue, 12 Oct 2010 08:40:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>FreeSignal &#8211; Use Signals easier</title>
		<link>http://eidiot.net/en/2010/10/12/freesignal-use-signals-easier/</link>
		<comments>http://eidiot.net/en/2010/10/12/freesignal-use-signals-easier/#comments</comments>
		<pubDate>Tue, 12 Oct 2010 08:12:34 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=51</guid>
		<description><![CDATA[Robert Penner's as3-signals make my life much cleaner and easier. There is only one thing that not perfect: With Events I know what parameters to pass when dispatch it, and what can I get when handle it. But the dispatch method of Signals is not so plain. So I was thinking about it for a [...]]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" href="http://twitter.com/robpenner">Robert Penner</a>'s <a target="_blank" href="http://github.com/robertpenner/as3-signals">as3-signals</a> make my life much cleaner and easier. There is only one thing that not perfect: With Events I know what parameters to pass when dispatch it, and what can I get when handle it. But the dispatch method of Signals is not so plain. So I was thinking about it for a long time.<br />
We need ISignal Interface for signals, but maybe not IDispatcher. For any signal we want to know exactly what it is and what it have when dispatch or handle it. So I wrote a <a target="_blank" href="http://github.com/eidiot/as3-signals/blob/master/src/org/osflash/signals/FreeSignalBase.as">base class</a> for "FreeSignal". Every "FreeSignal" which extends this <a target="_blank" href="http://github.com/eidiot/as3-signals/blob/master/src/org/osflash/signals/FreeSignalBase.as">FreeSignalBase</a> should have its own dispatch method, and call the protected "doDispatch" method in that dispatch method.<br />
<br />
For example, a signal just like the ProgressEvent:</p>

<div class="wp_codebox"><table><tr id="p515"><td class="code" id="p51code5"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ProgressSignal <span style="color: #0066CC;">extends</span> FreeSignalBase
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> _bytesLoaded:uint = <span style="color: #cc66cc;">0</span>;
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> <span style="color: #0066CC;">get</span> <span style="color: #0066CC;">bytesLoaded</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:uint
	<span style="color: #66cc66;">&#123;</span>
	    <span style="color: #b1b100;">return</span> _bytesLoaded;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> _bytesTotal:uint = <span style="color: #cc66cc;">0</span>;
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> <span style="color: #0066CC;">get</span> <span style="color: #0066CC;">bytesTotal</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:uint
	<span style="color: #66cc66;">&#123;</span>
	    <span style="color: #b1b100;">return</span> _bytesTotal;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> dispatch<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">bytesLoaded</span>:uint, <span style="color: #0066CC;">bytesTotal</span>:uint<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
	<span style="color: #66cc66;">&#123;</span>
		_bytesLoaded = <span style="color: #0066CC;">bytesLoaded</span>;
		_bytesTotal = <span style="color: #0066CC;">bytesTotal</span>;
		doDispatch<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>Instead of <em>new Signal(int, int)</em>, we have <em>dispatch(bytesLoaded:uint, bytesTotal:uint)</em> now.<br />
<br />
And for the listener:</p>

<div class="wp_codebox"><table><tr id="p516"><td class="code" id="p51code6"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> <span style="color: #0066CC;">addListener</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span> 
<span style="color: #66cc66;">&#123;</span>
	someLoader.<span style="color: #006600;">progressed</span>.<span style="color: #0066CC;">add</span><span style="color: #66cc66;">&#40;</span>onProgressed<span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span>
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> onProgressed<span style="color: #66cc66;">&#40;</span>signal:ProgressSignal<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span> 
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">var</span> value:<span style="color: #0066CC;">Number</span> = signal.<span style="color: #0066CC;">bytesLoaded</span> <span style="color: #66cc66;">/</span> signal.<span style="color: #0066CC;">bytesTotal</span>;
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>
Maybe we need target.</p>

<div class="wp_codebox"><table><tr id="p517"><td class="code" id="p51code7"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ProgressSignal <span style="color: #0066CC;">extends</span> FreeSignalBase
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> ProgressSignal<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">target</span>:<span style="color: #0066CC;">Object</span><span style="color: #66cc66;">&#41;</span>
	<span style="color: #66cc66;">&#123;</span>
		<span style="color: #0066CC;">_target</span> = <span style="color: #0066CC;">target</span>;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> <span style="color: #0066CC;">_target</span>:<span style="color: #0066CC;">Object</span>;
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> <span style="color: #0066CC;">get</span> <span style="color: #0066CC;">target</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">Object</span>
	<span style="color: #66cc66;">&#123;</span>
	    <span style="color: #b1b100;">return</span> <span style="color: #0066CC;">_target</span>;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> _bytesLoaded:uint = <span style="color: #cc66cc;">0</span>;
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> <span style="color: #0066CC;">get</span> <span style="color: #0066CC;">bytesLoaded</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:uint
	<span style="color: #66cc66;">&#123;</span>
	    <span style="color: #b1b100;">return</span> _bytesLoaded;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> _bytesTotal:uint = <span style="color: #cc66cc;">0</span>;
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> <span style="color: #0066CC;">get</span> <span style="color: #0066CC;">bytesTotal</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:uint
	<span style="color: #66cc66;">&#123;</span>
	    <span style="color: #b1b100;">return</span> _bytesTotal;
	<span style="color: #66cc66;">&#125;</span>
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> dispatch<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">bytesLoaded</span>:uint, <span style="color: #0066CC;">bytesTotal</span>:uint<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
	<span style="color: #66cc66;">&#123;</span>
		_bytesLoaded = <span style="color: #0066CC;">bytesLoaded</span>;
		_bytesTotal = <span style="color: #0066CC;">bytesTotal</span>;
		doDispatch<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> SomeLoader 
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #0066CC;">public</span> const progressed:ProgressSignal = <span style="color: #000000; font-weight: bold;">new</span> ProgressSignal<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> SomeHandler
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> onProgressed<span style="color: #66cc66;">&#40;</span>signal:ProgressSignal<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
	<span style="color: #66cc66;">&#123;</span>
		<span style="color: #000000; font-weight: bold;">var</span> <span style="color: #0066CC;">target</span>:<span style="color: #0066CC;">Object</span> = signal.<span style="color: #0066CC;">target</span>;
		<span style="color: #000000; font-weight: bold;">var</span> value:<span style="color: #0066CC;">Number</span> = signal.<span style="color: #0066CC;">bytesLoaded</span> <span style="color: #66cc66;">/</span> signal.<span style="color: #0066CC;">bytesTotal</span>;
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>
It works fine with <a target="_blank" href="http://github.com/joelhooks/signals-extensions-CommandSignal">SignalCommandMap utility</a> of <a target="_blank" href="http://www.robotlegs.org/">Robotlegs</a>.</p>

<div class="wp_codebox"><table><tr id="p518"><td class="code" id="p51code8"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ShowLoadedImageCommand <span style="color: #0066CC;">implements</span> ICommand 
<span style="color: #66cc66;">&#123;</span>
	<span style="color: #66cc66;">&#91;</span>Inject<span style="color: #66cc66;">&#93;</span>
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">var</span> triggerSignal:ImageSignal;
	<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> execute<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: #000000; font-weight: bold;">var</span> image:DisplayObject = triggerSignal.<span style="color: #006600;">image</span>;
		<span style="color: #808080; font-style: italic;">// ...</span>
	<span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>
Maybe not a good practice, but I feel good with it so far. If you're interested, here are some more information：</p>
<ul>
<li><a target="_blank" href="http://github.com/eidiot/as3-signals/blob/master/src/org/osflash/signals/FreeSignalBase.as">FreeSignalBase class</a></li>
<li><a target="_blank" href="http://github.com/eidiot/as3-signals/tree/master/tests/org/osflash/signals/free/">unit-tests for free signals</a></li>
<li><a target="_blank" href="http://github.com/eidiot/robotlegs-examples-RobotlegsSignalsCafe">Source</a> of <a target="_blank" href="http://joelhooks.com/">Joel Hooks</a>'s <a target="_blank" href="http://joelhooks.com/2010/02/14/robotlegs-as3-signals-and-the-signalcommandmap-example/">example</a> for <a target="_blank" href="http://www.robotlegs.org/">Robotlegs</a>, <a target="_blank" href="http://github.com/joelhooks/signals-extensions-CommandSignal">SignalCommandMap utility</a> and as3-signal - Using FreeSignal, of course.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/10/12/freesignal-use-signals-easier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Test suite generator for Flex Unit 4</title>
		<link>http://eidiot.net/en/2010/07/06/test-suite-generator-for-flex-unit-4/</link>
		<comments>http://eidiot.net/en/2010/07/06/test-suite-generator-for-flex-unit-4/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 10:32:25 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[flexunit]]></category>
		<category><![CDATA[unittest]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=50</guid>
		<description><![CDATA[中文：Flex Unit 4 的 Test Suite 生成工具 Wrote a small tool to create AllTests.as file with all test cases for FlexUnit4 in Air. To use it, download the air file and install the small app, run it. Here is the demo code to run it via ant: &#60;project name=&#34;Test Suiter&#34; default=&#34;createSuite&#34;&#62; &#60;target name=&#34;createSuite&#34;&#62; &#60;exec executable=&#34;/Applications/TestSuiter.app/Contents/MacOS/TestSuiter&#34;&#62; [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://eidiot.net/2010/07/06/test-suite-generator-for-flex-unit-4/">中文：Flex Unit 4 的 Test Suite 生成工具</a></p>
<p>Wrote a <a target="_blank" href="http://github.com/eidiot/TestSuiter">small tool</a> to create AllTests.as file with all test cases for <a target="_blank" href="http://flexunit.org/">FlexUnit4</a> in Air. To use it, <a target="_blank" href="http://github.com/eidiot/TestSuiter/downloads">download</a> the air file and install the small app, run it. </p>
<p>Here is the demo code to run it via ant: </p>

<div class="wp_codebox"><table><tr id="p5010"><td class="code" id="p50code10"><pre class="xml" style="font-family:monospace;">  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;project</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Test Suiter&quot;</span> <span style="color: #000066;">default</span>=<span style="color: #ff0000;">&quot;createSuite&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;target</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;createSuite&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;exec</span> <span style="color: #000066;">executable</span>=<span style="color: #ff0000;">&quot;/Applications/TestSuiter.app/Contents/MacOS/TestSuiter&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;arg</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;/Users/someone/Desktop/SomeProject/tests&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/exec<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/target<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/project<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/07/06/test-suite-generator-for-flex-unit-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Async test for as3-signals with FlexUnit4</title>
		<link>http://eidiot.net/en/2010/05/21/async-test-for-as3-signals-with-flexunit4/</link>
		<comments>http://eidiot.net/en/2010/05/21/async-test-for-as3-signals-with-flexunit4/#comments</comments>
		<pubDate>Fri, 21 May 2010 03:46:31 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[as3-signals]]></category>
		<category><![CDATA[flexunit]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=48</guid>
		<description><![CDATA[中文: 使用FlexUnit4对as3-signals进行异步测试 Robert Penner 's as3-signals bring us clearer and less code. Here is a utility lib with some delegate methods to test them with FlexUnit4: proceedOnSignal handleSignal failOnSignal registerFailureSignal proceedOnSignal Use this method to ensure that some signal is dispatched during an asynchronous test. &#91;Test&#40;async&#41;&#93; public function test_proceedOnSignal&#40;&#41;:void &#123; var model:IModel = new SomeModel&#40;&#41;; [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://eidiot.net/2010/05/21/async-test-for-as3-signals-with-flexunit4/">中文: 使用FlexUnit4对as3-signals进行异步测试</a></p>
<p><a target="_blank" href="http://robertpenner.com/">Robert Penner</a> 's <a target="_blank" href="http://github.com/robertpenner/as3-signals">as3-signals</a> bring us clearer and less code. Here is a <a target="_blank" href="http://github.com/eidiot/as3-signals-utilities-async">utility lib</a> with  some delegate methods to test them with <a target="_blank" href="http://flexunit.org/">FlexUnit4</a>: </p>
<ul>
<li>proceedOnSignal</li>
<li>handleSignal</li>
<li>failOnSignal</li>
<li>registerFailureSignal</li>
</ul>
<h4>proceedOnSignal</h4>
<p>Use this method to ensure that some signal is dispatched during an asynchronous test.</p>

<div class="wp_codebox"><table><tr id="p4815"><td class="code" id="p48code15"><pre class="actionscript" style="font-family:monospace;"><span style="color: #66cc66;">&#91;</span>Test<span style="color: #66cc66;">&#40;</span>async<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> test_proceedOnSignal<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: #000000; font-weight: bold;">var</span> model:IModel = <span style="color: #000000; font-weight: bold;">new</span> SomeModel<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
    proceedOnSignal<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>, model.<span style="color: #006600;">changedSignal</span><span style="color: #66cc66;">&#41;</span>;
    model.<span style="color: #006600;">doSomethingChange</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p><span id="more-48"></span></p>
<h4>handleSignal</h4>
<p>Use this method to ensure that some signal is dispatched and do more assertions in the handler.  The handler method must have two arguments. The first one is a <em>SignalAsyncEvent</em>, you can get all arguments passed by the signal's <em>dispatch()</em> method by <em>event.args</em>. The second <em>Object</em> typed argument is the data passed by the <em>passThroughData</em> argument in the <em>handleSignal</em> method.</p>

<div class="wp_codebox"><table><tr id="p4816"><td class="code" id="p48code16"><pre class="actionscript" style="font-family:monospace;"><span style="color: #66cc66;">&#91;</span>Test<span style="color: #66cc66;">&#40;</span>async<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> change_user<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: #000000; font-weight: bold;">var</span> model:IModel = <span style="color: #000000; font-weight: bold;">new</span> SomeModel<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
    handleSignal<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>, model.<span style="color: #006600;">changedSignal</span>, verify_user, <span style="color: #cc66cc;">500</span>, <span style="color: #66cc66;">&#123;</span><span style="color: #ff0000;">&quot;name&quot;</span>:<span style="color: #ff0000;">&quot;Tom&quot;</span>, <span style="color: #ff0000;">&quot;age&quot;</span>:<span style="color: #cc66cc;">20</span><span style="color: #66cc66;">&#125;</span><span style="color: #66cc66;">&#41;</span>;
    model.<span style="color: #006600;">changeUser</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;Tom&quot;</span>, <span style="color: #cc66cc;">20</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span>
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> verify_user<span style="color: #66cc66;">&#40;</span>event:SignalAsyncEvent, <span style="color: #0066CC;">data</span>:<span style="color: #0066CC;">Object</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span> 
<span style="color: #66cc66;">&#123;</span>
    assertEquals<span style="color: #66cc66;">&#40;</span>event.<span style="color: #006600;">args</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span>, <span style="color: #0066CC;">data</span>.<span style="color: #0066CC;">name</span><span style="color: #66cc66;">&#41;</span>;
    assertEquals<span style="color: #66cc66;">&#40;</span>event.<span style="color: #006600;">args</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#93;</span>, <span style="color: #0066CC;">data</span>.<span style="color: #006600;">age</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>
<h4>failOnSignal</h4>
<p>Use this method to ensure that some signal is <strong>not</strong> dispatched during an asynchronous test in a time period.</p>

<div class="wp_codebox"><table><tr id="p4817"><td class="code" id="p48code17"><pre class="actionscript" style="font-family:monospace;"><span style="color: #66cc66;">&#91;</span>Test<span style="color: #66cc66;">&#40;</span>async<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> not_changed<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: #000000; font-weight: bold;">var</span> model:IModel = <span style="color: #000000; font-weight: bold;">new</span> SomeModel<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
    failOnSignal<span style="color: #66cc66;">&#40;</span>model.<span style="color: #006600;">changedSignal</span><span style="color: #66cc66;">&#41;</span>;
    model.<span style="color: #006600;">doSomethingNotChange</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>
<h4>registerFailureSignal</h4>
<p>Use this method to fail a test when a signal is dispatched. Think you are waiting for a success signal of a service, you will want to fail the test when the service's error signal is dispatched instead of waiting until timeout.</p>

<div class="wp_codebox"><table><tr id="p4818"><td class="code" id="p48code18"><pre class="actionscript" style="font-family:monospace;"><span style="color: #66cc66;">&#91;</span>Test<span style="color: #66cc66;">&#40;</span>async<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span> 
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> call_service<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: #000000; font-weight: bold;">var</span> service:IService = <span style="color: #000000; font-weight: bold;">new</span> SomeService<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
    registerFailureSignal<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>, service.<span style="color: #006600;">failedSignal</span><span style="color: #66cc66;">&#41;</span>;
    proceedOnSignal<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">this</span>, service.<span style="color: #006600;">successSignal</span><span style="color: #66cc66;">&#41;</span>;
    service.<span style="color: #0066CC;">call</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>
<h4>More</h4>
<ul>
<li><a target="_blank" href="http://github.com/eidiot/as3-signals-utilities-async/downloads">Download the lib</a></li>
<li><a target="" href="http://docs.flexunit.org/asdocs/org/flexunit/async/Async.html">Learn more about async test in FlexUnit4</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/05/21/async-test-for-as3-signals-with-flexunit4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Google Tasks Wapper of ig version</title>
		<link>http://eidiot.net/en/2010/05/02/google-tasks-wapper-of-ig-version/</link>
		<comments>http://eidiot.net/en/2010/05/02/google-tasks-wapper-of-ig-version/#comments</comments>
		<pubDate>Sun, 02 May 2010 09:23:12 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=47</guid>
		<description><![CDATA[It’s a light version of Google Tasks in https://mail.google.com/tasks/ig instead of Christian Cantrell ’s canvas version in https://mail.google.com/tasks/canvas. Choose the one fit you. The code is on GitHub . 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_badge_1473687106"
			class="flashmovie"
			width="217"
			height="180">
	<param name="movie" value="http://eidiot.net/product/google_tasks_ig/badge.swf" />
	<param name="flashvars" value="appname=GoogleTaskIg&amp;appurl=http://eidiot.net/product/google_tasks_ig/GoogleTaskIg.air&amp;airversion=1.5&amp;imageurl=http://eidiot.net/product/google_tasks_ig/google_tasks_ig_badge.png" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.net/product/google_tasks_ig/badge.swf"
			name="fm_badge_1473687106"
			width="217"
			height="180">
		<param name="flashvars" value="appname=GoogleTaskIg&amp;appurl=http://eidiot.net/product/google_tasks_ig/GoogleTaskIg.air&amp;airversion=1.5&amp;imageurl=http://eidiot.net/product/google_tasks_ig/google_tasks_ig_badge.png" />
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>]]></description>
			<content:encoded><![CDATA[<p>It’s a light version of Google Tasks in <a target="_blank" href="https://mail.google.com/tasks/ig">https://mail.google.com/tasks/ig</a> instead of <a target="_blank" href="http://blogs.adobe.com/cantrell/archives/2009/12/google_tasks_on_your_desktop.html">Christian Cantrell ’s canvas version</a> in <a target="_blank" href="https://mail.google.com/tasks/canvas">https://mail.google.com/tasks/canvas</a>. Choose the one fit you. The code is on <a target="_blank" href="http://github.com/eidiot/GoogleTasksWapper">GitHub</a> . </p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_badge_1498742078"
			class="flashmovie"
			width="217"
			height="180">
	<param name="movie" value="http://eidiot.net/product/google_tasks_ig/badge.swf" />
	<param name="flashvars" value="appname=GoogleTaskIg&amp;appurl=http://eidiot.net/product/google_tasks_ig/GoogleTaskIg.air&amp;airversion=1.5&amp;imageurl=http://eidiot.net/product/google_tasks_ig/google_tasks_ig_badge.png" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.net/product/google_tasks_ig/badge.swf"
			name="fm_badge_1498742078"
			width="217"
			height="180">
		<param name="flashvars" value="appname=GoogleTaskIg&amp;appurl=http://eidiot.net/product/google_tasks_ig/GoogleTaskIg.air&amp;airversion=1.5&amp;imageurl=http://eidiot.net/product/google_tasks_ig/google_tasks_ig_badge.png" />
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/05/02/google-tasks-wapper-of-ig-version/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>xface: A simple ui-unit develop tool</title>
		<link>http://eidiot.net/en/2010/04/18/xface-a-simple-ui-unit-develop-tool/</link>
		<comments>http://eidiot.net/en/2010/04/18/xface-a-simple-ui-unit-develop-tool/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 15:42:52 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[xface]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=45</guid>
		<description><![CDATA[中文：xface: 简单的ui-unit辅助开发工具 XFace is a simple AsUnit/FlexUnit 4 style UI-Unit framework, but not for testing. It's a tool to reach and verify UI implementation fast. Demo: (Source) 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_DemoUIUnitRunner_1055262447"
			class="flashmovie"
			width="370"
			height="240">
	<param name="movie" value="http://eidiot.github.com/xface/demo/DemoUIUnitRunner.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.github.com/xface/demo/DemoUIUnitRunner.swf"
			name="fm_DemoUIUnitRunner_1055262447"
			width="370"
			height="240">
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> It use metadata [Before], [After], [Test], [Suite] like the ones in AsUnit/FlexUnit 4, and [Inject] for Dependency injection support. &#91;Inject&#93; [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://eidiot.net/2010/04/18/xface-a-simple-ui-unit-develop-tool">中文：xface: 简单的ui-unit辅助开发工具</a></p>
<p><a href="http://eidiot.github.com/xface" target="_blank">XFace</a> is a simple AsUnit/FlexUnit 4 style UI-Unit framework, but not for testing. It's a tool to reach and verify UI implementation fast.</p>
<p>Demo: (<a target="_blank" href="http://github.com/eidiot/xface/tree/master/demo/">Source</a>)</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_DemoUIUnitRunner_1554442622"
			class="flashmovie"
			width="370"
			height="240">
	<param name="movie" value="http://eidiot.github.com/xface/demo/DemoUIUnitRunner.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.github.com/xface/demo/DemoUIUnitRunner.swf"
			name="fm_DemoUIUnitRunner_1554442622"
			width="370"
			height="240">
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<p>It use metadata [Before], [After], [Test], [Suite] like the ones in AsUnit/FlexUnit 4, and [Inject] for Dependency injection support.</p>

<div class="wp_codebox"><table><tr id="p4520"><td class="code" id="p45code20"><pre class="actionscript" style="font-family:monospace;"><span style="color: #66cc66;">&#91;</span>Inject<span style="color: #66cc66;">&#93;</span>
pubic <span style="color: #000000; font-weight: bold;">var</span> container:DisplayObjectContainer;
<span style="color: #66cc66;">&#91;</span>Test<span style="color: #66cc66;">&#93;</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> test<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span> <span style="color: #66cc66;">&#123;</span>
    container.<span style="color: #006600;">addChild</span><span style="color: #66cc66;">&#40;</span>instance<span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>It shows all ui-unit methods in a list. You can select one of them to focus on the smallest ui element and move by smallest steps.</p>
<p>Runner UI uses the List component in <a target="_blank" href="http://twitter.com/bit101">@bit101</a>'s <a target="_blank" href="http://www.minimalcomps.com/">Minimal Comps</a>. </p>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/04/18/xface-a-simple-ui-unit-develop-tool/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SignalExecutorMap &#8211; Another way to map AS3-Signal to Command in Robotlegs</title>
		<link>http://eidiot.net/en/2010/03/24/signalexecutormap-another-way-to-map-as3-signal-to-command-in-robotlegs/</link>
		<comments>http://eidiot.net/en/2010/03/24/signalexecutormap-another-way-to-map-as3-signal-to-command-in-robotlegs/#comments</comments>
		<pubDate>Tue, 23 Mar 2010 17:58:16 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[as3-signals]]></category>
		<category><![CDATA[robotlegs]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=44</guid>
		<description><![CDATA[I love both Robotlegs and AS3-Signals so much, and many thanks to Joel Hooks's SignalCommandMap, they work together great now. When I saw [Execute] tag in dawn I thought if I can do its way for SignalCommand. So, Here is my SignalExecutorMap. I used it in a simple slide player for my Robotlegs slides. To [...]]]></description>
			<content:encoded><![CDATA[<p>
I love both <a target="_blank" href="http://www.robotlegs.org/">Robotlegs</a> and <a href="http://github.com/robertpenner/as3-signals">AS3-Signals</a> so much, and many thanks to <a target="_blank" href="http://joelhooks.com/">Joel Hooks</a>'s <a target="_blank" href="http://github.com/joelhooks/signals-extensions-CommandSignal">SignalCommandMap</a>, they work together great now. When I saw [Execute] tag in <a target="_blank" href="http://github.com/sammyt/dawn">dawn</a> I thought if I can do its way for SignalCommand. So, Here is my <a target="_blank" href="http://github.com/eidiot/SlidePlayer/blob/master/src/org/robotlegs/utilities/signals/SignalExecutorMap.as">SignalExecutorMap</a>. I used it in a simple <a target="_blank" href="http://eidiot.net/en/2010/03/20/my-robotlegs-slides/">slide player for my Robotlegs slides.</a>
</p>
<p>
To use it, put the same count and type of params in the execute() method of the Command as its trigger Signal.
</p>

<div class="wp_codebox"><table><tr id="p4425"><td class="code" id="p44code25"><pre class="actionscript" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">// The signal in SignalBus:</span>
<span style="color: #0066CC;">public</span> const turnToPageRequested:Signal = <span style="color: #000000; font-weight: bold;">new</span> Signal<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">int</span><span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>


<div class="wp_codebox"><table><tr id="p4426"><td class="code" id="p44code26"><pre class="actionscript" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">// Execute method in Command:</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> execute<span style="color: #66cc66;">&#40;</span><span style="color: #0066CC;">index</span>:<span style="color: #0066CC;">int</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span></pre></td></tr></table></div>


<div class="wp_codebox"><table><tr id="p4427"><td class="code" id="p44code27"><pre class="actionscript" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">// Dispatch the signal</span>
signalBus.<span style="color: #006600;">turnToPageRequested</span>.<span style="color: #006600;">dispatch</span><span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<p>
It's not a common solution, because it eliminates the possibility of using other Command impls already in existence. So I created it as SignalExecutorMap instead of expanding SignalCommandMap, and just leave it a single class for personal use. I shared it just in case somebody want it like me because:</p>
<ul>
<li>1, By now (until Robotlegs 1.1) SignalCommandMap will unmap the value passed by Signal.</li>
<li>2, Don't want to inject base type like

<div class="wp_codebox"><table><tr id="p4428"><td class="code" id="p44code28"><pre class="actionscript" style="font-family:monospace;"><span style="color: #66cc66;">&#91;</span>Inject<span style="color: #66cc66;">&#93;</span>
<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">var</span> <span style="color: #0066CC;">index</span>:<span style="color: #0066CC;">int</span>;</pre></td></tr></table></div>

</li>
<li>3, Don't want to create VO class just for being passed by Signal to avoid 1 and 2.</li>
</ul>
<p>I'm sure SignalCommandMap will get better with Robotlegs 1.1 and better later. Robotlegs and as3-signals, they were born to work together <img src='http://eidiot.net/en/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/03/24/signalexecutormap-another-way-to-map-as3-signal-to-command-in-robotlegs/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>My Robotlegs slides</title>
		<link>http://eidiot.net/en/2010/03/20/my-robotlegs-slides/</link>
		<comments>http://eidiot.net/en/2010/03/20/my-robotlegs-slides/#comments</comments>
		<pubDate>Sat, 20 Mar 2010 15:35:18 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[robotlegs]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=42</guid>
		<description><![CDATA[I'll give a presentation about Robotlegs the end of this month, here are slides based on Joel Hooks's, Please correct me if I'm doing something wrong, many thanks. The file is on GitHub, and also valid as .key, .ppt, and .pdf format download. 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_SlidePlayer_685005454"
			class="flashmovie"
			width="640"
			height="500">
	<param name="movie" value="http://eidiot.net/wp-content/uploads/2010/03/SlidePlayer.swf" />
	<param name="flashvars" value="path=http://eidiot.net/wp-content/uploads/2010/03/rlslides/&#038&amp;file=Robotlegs_9ria_2010.*.jpg&#038&amp;start=002&#038&amp;end=065" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.net/wp-content/uploads/2010/03/SlidePlayer.swf"
			name="fm_SlidePlayer_685005454"
			width="640"
			height="500">
		<param name="flashvars" value="path=http://eidiot.net/wp-content/uploads/2010/03/rlslides/&#038&amp;file=Robotlegs_9ria_2010.*.jpg&#038&amp;start=002&#038&amp;end=065" />
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>]]></description>
			<content:encoded><![CDATA[<p>I'll give a presentation about <a target="_blank" href="http://robotlegs.org">Robotlegs</a> the end of this month, here are slides based on <a target="_blank" href="http://joelhooks.com/2009/11/14/texflex09-robotlegs-slides-and-a-robotlegs-t-shirt-giveaway/">Joel Hooks's</a>, Please correct me if I'm doing something wrong, many thanks. The file is <a target="_blank" href="http://github.com/eidiot/robotlegs-presentations/tree/master/9ria_2010/">on GitHub</a>, and also valid as <a target="_blank" href="http://eidiot.net/wp-content/uploads/2010/03/Robotlegs_9ria_2010.key">.key</a>, <a target="_blank" href="http://eidiot.net/wp-content/uploads/2010/03/Robotlegs_9ria_2010.ppt">.ppt</a>, and <a target="_blank" href="http://eidiot.net/wp-content/uploads/2010/03/Robotlegs_9ria_2010.pdf">.pdf</a> format download.</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_SlidePlayer_939053839"
			class="flashmovie"
			width="640"
			height="500">
	<param name="movie" value="http://eidiot.net/wp-content/uploads/2010/03/SlidePlayer.swf" />
	<param name="flashvars" value="path=http://eidiot.net/wp-content/uploads/2010/03/rlslides/&#038&amp;file=Robotlegs_9ria_2010.*.jpg&#038&amp;start=002&#038&amp;end=065" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.net/wp-content/uploads/2010/03/SlidePlayer.swf"
			name="fm_SlidePlayer_939053839"
			width="640"
			height="500">
		<param name="flashvars" value="path=http://eidiot.net/wp-content/uploads/2010/03/rlslides/&#038&amp;file=Robotlegs_9ria_2010.*.jpg&#038&amp;start=002&#038&amp;end=065" />
	<!--<![endif]-->
		
<p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/03/20/my-robotlegs-slides/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Demo for xrope</title>
		<link>http://eidiot.net/en/2010/03/17/demo-for-xrope/</link>
		<comments>http://eidiot.net/en/2010/03/17/demo-for-xrope/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 16:25:19 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[xrope]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=41</guid>
		<description><![CDATA[中文：Xrope Demo Built a demo for xrope using Minimal Comps, Robotlegs, and as3-Signals: 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_XropeDemo_271221825"
			class="flashmovie"
			width="550"
			height="400">
	<param name="movie" value="http://eidiot.github.com/xrope/demo/XropeDemo.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.github.com/xrope/demo/XropeDemo.swf"
			name="fm_XropeDemo_271221825"
			width="550"
			height="400">
	<!--<![endif]-->
		
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> Demo Source on Github Download xrope swc]]></description>
			<content:encoded><![CDATA[<p><a href="http://eidiot.net/2010/03/17/demo-for-xrope/">中文：Xrope Demo</a></p>
<p>
Built a <a target="_blank" href="http://eidiot.github.com/xrope/index.html#DemoLink">demo</a> for <a target="_blank" href="http://eidiot.github.com/xrope/">xrope</a> using <a target="_blank" href="http://www.minimalcomps.com/">Minimal Comps</a>, <a target="_blank"  href="http://robotlegs.org/">Robotlegs</a>, and <a target="_blank"  href="http://github.com/robertpenner/as3-signals">as3-Signals</a>:
</p>

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_XropeDemo_1270466848"
			class="flashmovie"
			width="550"
			height="400">
	<param name="movie" value="http://eidiot.github.com/xrope/demo/XropeDemo.swf" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://eidiot.github.com/xrope/demo/XropeDemo.swf"
			name="fm_XropeDemo_1270466848"
			width="550"
			height="400">
	<!--<![endif]-->
		
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object>
<ul>
<li><a target="_blank" href="http://github.com/eidiot/XropeDemo">Demo Source on Github</a></li>
<li><a target="_blank" href="http://github.com/eidiot/xrope/downloads">Download xrope swc</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/03/17/demo-for-xrope/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>xrope v0.2: Added GridLayout</title>
		<link>http://eidiot.net/en/2010/03/14/xrope-v0-2-added-gridlayout/</link>
		<comments>http://eidiot.net/en/2010/03/14/xrope-v0-2-added-gridlayout/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 10:51:38 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[xrope]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=40</guid>
		<description><![CDATA[中文：xrope v0.2: 增加 GridLayout Now we have GridLayout in xrope by v0.2.0. Example AsDoc Source on Github Download swc of v0.2.0]]></description>
			<content:encoded><![CDATA[<p><a href="http://eidiot.net/2010/03/14/xrope-v0-2-added-gridlayout/">中文：xrope v0.2: 增加 GridLayout</a></p>
<p>Now we have GridLayout in xrope by v0.2.0.</p>
<ul>
<li><a target="_blank" href="http://eidiot.github.com/xrope/#GridExampleLink">Example</a></li>
<li><a target="_blank" href="http://eidiot.github.com/xrope/doc/xrope/GridLayout.html">AsDoc</a></li>
<li><a target="_blank" href="http://github.com/eidiot/xrope">Source on Github</a></li>
<li><a target="_blank" href="http://github.com/eidiot/xrope/downloads">Download swc of v0.2.0</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/03/14/xrope-v0-2-added-gridlayout/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>xrope v0.1.0 released</title>
		<link>http://eidiot.net/en/2010/03/13/xrope-v-0-1-0-released/</link>
		<comments>http://eidiot.net/en/2010/03/13/xrope-v-0-1-0-released/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 15:53:40 +0000</pubDate>
		<dc:creator>eidiot</dc:creator>
				<category><![CDATA[ActionScrip3]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[xrope]]></category>

		<guid isPermaLink="false">http://eidiot.net/en/?p=39</guid>
		<description><![CDATA[中文：xrope v0.1.0 发布 I have just released xrope v0.1.0. More details Examples AsDoc Source on GitHub Download swc]]></description>
			<content:encoded><![CDATA[<p><a href="http://eidiot.net/2010/03/14/xrope-v-0-1-0-released/">中文：xrope v0.1.0 发布</a></p>
<p>I have just released xrope v0.1.0. </p>
<ul>
<li><a target="_blank" href="http://eidiot.github.com/xrope/">More details</a></li>
<li><a target="_blank" href="http://eidiot.github.com/xrope/index.html#ExamplesLink">Examples</a></li>
<li><a target="_blank" href="http://eidiot.github.com/xrope/doc/">AsDoc</a></li>
<li><a target="_blank" href="http://github.com/eidiot/xrope">Source on GitHub</a></li>
<li><a target="_blank" href="http://github.com/eidiot/xrope/downloads">Download swc</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://eidiot.net/en/2010/03/13/xrope-v-0-1-0-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

