<?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"
	>

<channel>
	<title>Mariosh</title>
	<atom:link href="http://mariosh.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mariosh.com</link>
	<description>Flex/Flash/AIR</description>
	<pubDate>Tue, 02 Dec 2008 23:58:59 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
	<language>en</language>
			<item>
		<title>Adobe AIR - local SQL database queries</title>
		<link>http://mariosh.com/codes/adobe-air-local-sql-database-queries/</link>
		<comments>http://mariosh.com/codes/adobe-air-local-sql-database-queries/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 23:08:39 +0000</pubDate>
		<dc:creator>Mariosh</dc:creator>
		
		<category><![CDATA[Codes]]></category>

		<category><![CDATA[air]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://mariosh.com/?p=394</guid>
		<description><![CDATA[Below you can find examples of SQL statements(SELECT, INSERT, UPDATE, DELETE).
&#60;?xml version="1.0" encoding="utf-8"?&#62;
&#60;mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute"
    creationComplete="init()" viewSourceURL="srcview/index.html"&#62;

    &#60;mx:Script&#62;
        &#60;![CDATA[
            import mx.collections.ArrayCollection;

        [...]]]></description>
			<content:encoded><![CDATA[<p>Below you can find examples of SQL statements(<a href="http://help.adobe.com/en_US/AIR/1.1/devappsflex/WS5b3ccc516d4fbf351e63e3d118666ade46-7d4c.html">SELECT</a>, <a href="http://help.adobe.com/en_US/AIR/1.1/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7d4b.html">INSERT</a>, <a href="http://help.adobe.com/en_US/AIR/1.1/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7d4a.html">UPDATE</a>, <a href="http://help.adobe.com/en_US/AIR/1.1/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7d4a.html">DELETE</a>).</p>
<pre class="MXML"><span class="MXMLProcessing_Instruction">&lt;?xml version="1.0" encoding="utf-8"?&gt;</span>
<span class="MXMLComponent_Tag">&lt;mx:WindowedApplication</span><span class="MXMLDefault_Text"> xmlns:mx="</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">"
    layout="</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">"
    creationComplete="</span><span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="MXMLDefault_Text">" viewSourceURL="</span><span class="MXMLString">srcview/index.html</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span>

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

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">sqlConn</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLConnection</span>;
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">sqlFile</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">File</span>;
            <span class="ActionScriptReserved">private</span> <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">categories</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">ArrayCollection</span>;

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">init</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptDefault_Text">sqlFile</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">File</span>.<span class="ActionScriptDefault_Text">applicationStorageDirectory</span>.<span class="ActionScriptDefault_Text">resolvePath</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptString">"DBSample.db"</span><span class="ActionScriptBracket/Brace">)</span>;
                <span class="ActionScriptDefault_Text">sqlConn</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">SQLConnection</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">sqlConn</span>.<span class="ActionScriptDefault_Text">open</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">sqlFile</span>, <span class="ActionScriptDefault_Text">SQLMode</span>.<span class="ActionScriptDefault_Text">CREATE</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptBracket/Brace">}</span>

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">createCategories</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">stmt</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLStatement</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">SQLStatement</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">sqlConnection</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">sqlConn</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"CREATE TABLE IF NOT EXISTS categories("</span> <span class="ActionScriptOperator">+</span>
                                    <span class="ActionScriptString">"categoryid INTEGER PRIMARY KEY AUTOINCREMENT,"</span> <span class="ActionScriptOperator">+</span>
                                    <span class="ActionScriptString">"name TEXT)"</span>;

                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">execute</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">result</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLResult</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">getResult</span><span class="ActionScriptBracket/Brace">()</span>;

                <span class="ActionScriptDefault_Text">categories</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">ArrayCollection</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">result</span>.<span class="ActionScriptDefault_Text">data</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptBracket/Brace">}</span>

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">getCategories</span><span class="ActionScriptBracket/Brace">()</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">stmt</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLStatement</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">SQLStatement</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">sqlConnection</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">sqlConn</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"SELECT * FROM categories ORDER BY categoryid DESC"</span>;

                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">execute</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">result</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLResult</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">getResult</span><span class="ActionScriptBracket/Brace">()</span>;
            <span class="ActionScriptBracket/Brace">}</span>

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">addCategory</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">value</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">String</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">stmt</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLStatement</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">SQLStatement</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">sqlConnection</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">sqlConn</span>;
                <span class="ActionScriptComment">// Statement
</span>                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"INSERT INTO categories "</span> <span class="ActionScriptOperator">+</span>
                                    <span class="ActionScriptString">"(name) VALUES (:name)"</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">parameters</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptString">":name"</span><span class="ActionScriptBracket/Brace">]</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">value</span>;
                <span class="ActionScriptComment">//OR Statement
</span>                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"INSERT INTO categories "</span> <span class="ActionScriptOperator">+</span>
                                    <span class="ActionScriptString">"(name) VALUES ('"</span><span class="ActionScriptOperator">+</span><span class="ActionScriptDefault_Text">value</span><span class="ActionScriptOperator">+</span><span class="ActionScriptString">"')"</span>;

                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">execute</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">result</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLResult</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">getResult</span><span class="ActionScriptBracket/Brace">()</span>;
            <span class="ActionScriptBracket/Brace">}</span>

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">updateCategory</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">name</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">String</span>, <span class="ActionScriptDefault_Text">categoryid</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">int</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">stmt</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLStatement</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">SQLStatement</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">sqlConnection</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">sqlConn</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"UPDATE categories "</span> <span class="ActionScriptOperator">+</span>
                                    <span class="ActionScriptString">"SET name='"</span><span class="ActionScriptOperator">+</span><span class="ActionScriptDefault_Text">name</span><span class="ActionScriptOperator">+</span><span class="ActionScriptString">"'"</span> <span class="ActionScriptOperator">+</span>
                                    <span class="ActionScriptString">"WHERE "</span> <span class="ActionScriptOperator">+</span>
                                    <span class="ActionScriptString">"categoryid='"</span><span class="ActionScriptOperator">+</span><span class="ActionScriptDefault_Text">categoryid</span><span class="ActionScriptOperator">+</span><span class="ActionScriptString">"'"</span>;

                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">execute</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">result</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLResult</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">getResult</span><span class="ActionScriptBracket/Brace">()</span>;

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

            <span class="ActionScriptReserved">private</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">removeCategory</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">categoryid</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">int</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>
            <span class="ActionScriptBracket/Brace">{</span>
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">stmt</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLStatement</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptReserved">new</span> <span class="ActionScriptDefault_Text">SQLStatement</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">sqlConnection</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">sqlConn</span>;
                <span class="ActionScriptComment">// Statement
</span>                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"DELETE FROM categories WHERE categoryid=:categoryid"</span>;
                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">parameters</span><span class="ActionScriptBracket/Brace">[</span><span class="ActionScriptString">":categoryid"</span><span class="ActionScriptBracket/Brace">]</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">categoryid</span>;
                <span class="ActionScriptComment">// OR Statement
</span>                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">text</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptString">"DELETE FROM categories WHERE categoryid='"</span><span class="ActionScriptOperator">+</span><span class="ActionScriptDefault_Text">categoryid</span><span class="ActionScriptOperator">+</span><span class="ActionScriptString">"'"</span>;

                <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">execute</span><span class="ActionScriptBracket/Brace">()</span>;
                <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">result</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">SQLResult</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">stmt</span>.<span class="ActionScriptDefault_Text">getResult</span><span class="ActionScriptBracket/Brace">()</span>;

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

        <span class="ActionScriptBracket/Brace">]]</span><span class="ActionScriptOperator">&gt;</span>
    <span class="MXMLSpecial_Tag">&lt;/mx:Script&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:WindowedApplication&gt;</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://mariosh.com/codes/adobe-air-local-sql-database-queries/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Slideshow with fade transition</title>
		<link>http://mariosh.com/examples/slideshow-with-fade-transition/</link>
		<comments>http://mariosh.com/examples/slideshow-with-fade-transition/#comments</comments>
		<pubDate>Mon, 20 Oct 2008 21:23:12 +0000</pubDate>
		<dc:creator>Mariosh</dc:creator>
		
		<category><![CDATA[Examples]]></category>

		<category><![CDATA[fade effect]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://mariosh.com/?p=351</guid>
		<description><![CDATA[Photo slide show application in Flex 3. The slide show will display photos, one-by-one, using a fade-in effect.
Read more about transitions in photoshop example.
View the app(or click on the screenshot)
View the source code
Download the source code
]]></description>
			<content:encoded><![CDATA[<p><a href="http://mariosh.com/projects/flex/slideshow/" target="_blank"><img class="alignleft" src="http://mariosh.com/projects/flex/slideshow/screenshot.png" alt="" width="506" height="210" /></a>Photo slide show application in Flex 3. The slide show will display photos, one-by-one, using a fade-in effect.<br />
Read more about <a href="http://www.asfusion.com/blog/entry/transitions-added-to-photoshow-example" target="_blank">transitions in photoshop example</a>.</p>
<p><a href="http://mariosh.com/projects/flex/slideshow/" target="_blank">View the app</a>(or click on the screenshot)<br />
<a href="http://mariosh.com/projects/flex/slideshow/srcview/index.html" target="_blank">View the source code</a><br />
<a href="http://mariosh.com/projects/flex/slideshow/srcview/SlideShow.zip">Download the source code</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mariosh.com/examples/slideshow-with-fade-transition/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Amazon S3 File Uploader</title>
		<link>http://mariosh.com/examples/amazon-s3-file-uploader/</link>
		<comments>http://mariosh.com/examples/amazon-s3-file-uploader/#comments</comments>
		<pubDate>Sat, 04 Oct 2008 01:09:02 +0000</pubDate>
		<dc:creator>Mariosh</dc:creator>
		
		<category><![CDATA[Examples]]></category>

		<category><![CDATA[amazon s3]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://mariosh.com/?p=341</guid>
		<description><![CDATA[I did some experiments with Amazon Simple Storage Service (Amazon S3) a while ago, but today i decided to put small example on my site.
View the source code

]]></description>
			<content:encoded><![CDATA[<p>I did some experiments with Amazon Simple Storage Service (Amazon S3) a while ago, but today i decided to put small example on my site.<br />
<img class="alignnone" src="http://mariosh.com/projects/flex/amazons3-fileuploader/s3fileuploader.jpg" alt="" width="710" height="160" /><a href="http://mariosh.com/projects/flex/amazons3-fileuploader/srcview/" target="_blank">View the source code<br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mariosh.com/examples/amazon-s3-file-uploader/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Vista Start Menu</title>
		<link>http://mariosh.com/examples/vista-start-menu/</link>
		<comments>http://mariosh.com/examples/vista-start-menu/#comments</comments>
		<pubDate>Thu, 02 Oct 2008 16:04:06 +0000</pubDate>
		<dc:creator>Mariosh</dc:creator>
		
		<category><![CDATA[Examples]]></category>

		<category><![CDATA[Flex]]></category>

		<category><![CDATA[highlightIndicator]]></category>

		<guid isPermaLink="false">http://mariosh.com/?p=330</guid>
		<description><![CDATA[
By default any ListBase component (List, TileList, HorizontaList&#8230;) draws blue rectangle on rollover, selection event. I wanted more appealing effect, round rectangle with nice blue gradient background.

Vista Start Menu is a great example where round rectangle for selection is used. I tried to make copy of it and bring it to Flex(screenshot).
To achieve this i [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://mariosh.com/projects/flex/vista-start-menu/" target="_blank"><img class="alignleft" src="http://mariosh.com/projects/flex/vista-start-menu/start-menu.jpg" alt="" width="402" height="353" /></a></p>
<div>By default any ListBase component (List, TileList, HorizontaList&#8230;) draws blue rectangle on rollover, selection event. I wanted more appealing effect, round rectangle with nice blue gradient background.</div>
<div><img class="alignnone" src="http://mariosh.com/projects/flex/vista-start-menu/gradient.jpg" alt="" width="200" height="46" /></div>
<div>Vista Start Menu is a great example where round rectangle for selection is used. I tried to make copy of it and bring it to Flex(screenshot).</div>
<div>To achieve this i needed to override two methods:</div>
<div><strong>drawSelectionIndicator drawHighlightIndicator</strong></div>
<div><a href="http://mariosh.com/projects/flex/vista-start-menu/" target="_blank">View the app</a>(or click on the screenshot)</div>
<div><a href="http://mariosh.com/projects/flex/vista-start-menu/srcview/index.html" target="_blank">View the source</a></div>
<div><a href="http://mariosh.com/projects/flex/vista-start-menu/srcview/VistaStartMenu.zip">Download the source</a></div>
]]></content:encoded>
			<wfw:commentRss>http://mariosh.com/examples/vista-start-menu/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Customizing TileList selection</title>
		<link>http://mariosh.com/codes/customizing-tilelist-selection/</link>
		<comments>http://mariosh.com/codes/customizing-tilelist-selection/#comments</comments>
		<pubDate>Wed, 01 Oct 2008 22:38:37 +0000</pubDate>
		<dc:creator>Mariosh</dc:creator>
		
		<category><![CDATA[Codes]]></category>

		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://mariosh.com/?p=310</guid>
		<description><![CDATA[This example shows you how to customize selection boxes in a Flex TileList. Marc&#8217;s original post Customizing TileList selection explains which methods you need to override, Thanks Marc.

before:
after:


main.mxml
&#60;?xml version="1.0" encoding="utf-8"?&#62;

&#60;mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
    xmlns:comps="comps.*" viewSourceURL="srcview/index.html"&#62;
    &#60;comps:CardTileList itemRenderer="ir.Card" width="479" height="371"&#62;
        &#60;comps:dataProvider&#62;
    [...]]]></description>
			<content:encoded><![CDATA[<p>This example shows you how to customize selection boxes in a Flex TileList. Marc&#8217;s original post <a href="http://www.rogue-development.com/blog2/2007/12/customizing-tilelist-selection/" target="_blank">Customizing TileList selection</a> explains which methods you need to override, Thanks Marc.</p>
<div>
<div style="float:left;">before:</div>
<div style="float:right; margin-right:300px;">after:</div>
</div>
<p><img class="alignnone" src="http://mariosh.com/projects/flex/tilelist-selection/before-after.jpg" alt="" width="710" height="386" /></p>
<p>main.mxml</p>
<pre class="MXML"><span class="MXMLProcessing_Instruction">&lt;?xml version="1.0" encoding="utf-8"?&gt;</span>

<span class="MXMLComponent_Tag">&lt;mx:Application</span><span class="MXMLDefault_Text"> xmlns:mx="</span><span class="MXMLString">http://www.adobe.com/2006/mxml</span><span class="MXMLDefault_Text">" layout="</span><span class="MXMLString">absolute</span><span class="MXMLDefault_Text">"
    xmlns:comps="</span><span class="MXMLString">comps.*</span><span class="MXMLDefault_Text">" viewSourceURL="</span><span class="MXMLString">srcview/index.html</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span>
    <span class="MXMLComponent_Tag">&lt;comps:CardTileList</span><span class="MXMLDefault_Text"> itemRenderer="</span><span class="MXMLString">ir.Card</span><span class="MXMLDefault_Text">" width="</span><span class="MXMLString">479</span><span class="MXMLDefault_Text">" height="</span><span class="MXMLString">371</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">&gt;</span>
        <span class="MXMLComponent_Tag">&lt;comps:dataProvider&gt;</span>
            <span class="MXMLComponent_Tag">&lt;mx:ArrayCollection&gt;</span>
                <span class="MXMLComponent_Tag">&lt;mx:source&gt;</span>
                        <span class="MXMLComponent_Tag">&lt;mx:Object</span><span class="MXMLDefault_Text"> label="</span><span class="MXMLString">2A</span><span class="MXMLDefault_Text">" data="</span><span class="MXMLString">2a</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
                        <span class="MXMLComponent_Tag">&lt;mx:Object</span><span class="MXMLDefault_Text"> label="</span><span class="MXMLString">2B</span><span class="MXMLDefault_Text">" data="</span><span class="MXMLString">2b</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
                        <span class="MXMLComponent_Tag">&lt;mx:Object</span><span class="MXMLDefault_Text"> label="</span><span class="MXMLString">2C</span><span class="MXMLDefault_Text">" data="</span><span class="MXMLString">2c</span><span class="MXMLDefault_Text">"</span><span class="MXMLComponent_Tag">/&gt;</span>
                    <span class="MXMLComponent_Tag">&lt;/mx:source&gt;</span>
            <span class="MXMLComponent_Tag">&lt;/mx:ArrayCollection&gt;</span>
        <span class="MXMLComponent_Tag">&lt;/comps:dataProvider&gt;</span>
    <span class="MXMLComponent_Tag">&lt;/comps:CardTileList&gt;</span>
<span class="MXMLComponent_Tag">&lt;/mx:Application&gt;</span></pre>
<p>comps/CardTileList.as</p>
<pre class="MXML"><span class="ActionScriptpackage">package</span> <span class="ActionScriptDefault_Text">comps</span>
<span class="ActionScriptBracket/Brace">{</span>
    <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">flash</span>.<span class="ActionScriptDefault_Text">display</span>.<span class="ActionScriptDefault_Text">Graphics</span>;
    <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">flash</span>.<span class="ActionScriptDefault_Text">display</span>.<span class="ActionScriptDefault_Text">Sprite</span>;
    <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">mx</span>.<span class="ActionScriptDefault_Text">controls</span>.<span class="ActionScriptDefault_Text">TileList</span>;
    <span class="ActionScriptReserved">import</span> <span class="ActionScriptDefault_Text">mx</span>.<span class="ActionScriptDefault_Text">controls</span>.<span class="ActionScriptDefault_Text">listClasses</span>.<span class="ActionScriptDefault_Text">IListItemRenderer</span>;

    <span class="ActionScriptReserved">public</span> <span class="ActionScriptclass">class</span> <span class="ActionScriptDefault_Text">CardTileList</span> <span class="ActionScriptReserved">extends</span> <span class="ActionScriptDefault_Text">TileList</span>
    <span class="ActionScriptBracket/Brace">{</span>
        <span class="ActionScriptReserved">public</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">CardTileList</span><span class="ActionScriptBracket/Brace">()</span>
        <span class="ActionScriptBracket/Brace">{</span>
            <span class="ActionScriptReserved">super</span><span class="ActionScriptBracket/Brace">()</span>;
        <span class="ActionScriptBracket/Brace">}</span>

        <span class="ActionScriptReserved">override</span> <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">drawSelectionIndicator</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">indicator</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Sprite</span>,
                                                        <span class="ActionScriptDefault_Text">x</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                        <span class="ActionScriptDefault_Text">y</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                        <span class="ActionScriptDefault_Text">width</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                        <span class="ActionScriptDefault_Text">height</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                        <span class="ActionScriptDefault_Text">color</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">uint</span>,
                                                        <span class="ActionScriptDefault_Text">itemRenderer</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">IListItemRenderer</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>

        <span class="ActionScriptBracket/Brace">{</span>
            <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">g</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Graphics</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">indicator</span>.<span class="ActionScriptDefault_Text">graphics</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">clear</span><span class="ActionScriptBracket/Brace">()</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">beginFill</span><span class="ActionScriptBracket/Brace">(</span>0<span class="ActionScriptDefault_Text">x009dff</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">lineStyle</span><span class="ActionScriptBracket/Brace">(</span>2, 0<span class="ActionScriptDefault_Text">x6e7c9d</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptComment">//g.drawRoundRect(x,y,itemRenderer.width,height,15,15);
</span>            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">drawRoundRect</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">x</span><span class="ActionScriptOperator">+</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">itemRenderer</span>.<span class="ActionScriptDefault_Text">width</span><span class="ActionScriptOperator">-</span>150<span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2, <span class="ActionScriptDefault_Text">y</span>, 150, <span class="ActionScriptDefault_Text">height</span>, 34, 34<span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">endFill</span><span class="ActionScriptBracket/Brace">()</span>;
        <span class="ActionScriptBracket/Brace">}</span>

        <span class="ActionScriptReserved">override</span> <span class="ActionScriptReserved">protected</span> <span class="ActionScriptfunction">function</span> <span class="ActionScriptDefault_Text">drawHighlightIndicator</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">indicator</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Sprite</span>,
                                                           <span class="ActionScriptDefault_Text">x</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                           <span class="ActionScriptDefault_Text">y</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                           <span class="ActionScriptDefault_Text">width</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                           <span class="ActionScriptDefault_Text">height</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Number</span>,
                                                           <span class="ActionScriptDefault_Text">color</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">uint</span>,
                                                           <span class="ActionScriptDefault_Text">itemRenderer</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">IListItemRenderer</span><span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">:</span><span class="ActionScriptReserved">void</span>

        <span class="ActionScriptBracket/Brace">{</span>
            <span class="ActionScriptvar">var</span> <span class="ActionScriptDefault_Text">g</span><span class="ActionScriptOperator">:</span><span class="ActionScriptDefault_Text">Graphics</span> <span class="ActionScriptOperator">=</span> <span class="ActionScriptDefault_Text">indicator</span>.<span class="ActionScriptDefault_Text">graphics</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">clear</span><span class="ActionScriptBracket/Brace">()</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">beginFill</span><span class="ActionScriptBracket/Brace">(</span>0<span class="ActionScriptDefault_Text">x009dff</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">lineStyle</span><span class="ActionScriptBracket/Brace">(</span>2, 0<span class="ActionScriptDefault_Text">x6e7c9d</span><span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptComment">//g.drawRoundRect(x,y,itemRenderer.width,height,15,15);
</span>            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">drawRoundRect</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">x</span><span class="ActionScriptOperator">+</span><span class="ActionScriptBracket/Brace">(</span><span class="ActionScriptDefault_Text">itemRenderer</span>.<span class="ActionScriptDefault_Text">width</span><span class="ActionScriptOperator">-</span>150<span class="ActionScriptBracket/Brace">)</span><span class="ActionScriptOperator">/</span>2, <span class="ActionScriptDefault_Text">y</span>, 150, <span class="ActionScriptDefault_Text">height</span>, 34, 34<span class="ActionScriptBracket/Brace">)</span>;
            <span class="ActionScriptDefault_Text">g</span>.<span class="ActionScriptDefault_Text">endFill</span><span class="ActionScriptBracket/Brace">()</span>;
        <span class="ActionScriptBracket/Brace">}</span>
    <span class="ActionScriptBracket/Brace">}</span>
<span class="ActionScriptBracket/Brace">}</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://mariosh.com/codes/customizing-tilelist-selection/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
