<?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>Obecto Training Portal &#187; IDeferredInstance</title>
	<atom:link href="http://training.obecto.com/tag/ideferredinstance/feed/" rel="self" type="application/rss+xml" />
	<link>http://training.obecto.com</link>
	<description>sharing our knowledge</description>
	<lastBuildDate>Wed, 24 Nov 2010 16:09:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Creating and Extending Flex 3 Components</title>
		<link>http://training.obecto.com/2009/04/creating-and-extending-flex-3-components/</link>
		<comments>http://training.obecto.com/2009/04/creating-and-extending-flex-3-components/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 11:18:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[VMware Flex]]></category>
		<category><![CDATA[containers]]></category>
		<category><![CDATA[Data Descriptors]]></category>
		<category><![CDATA[Effects]]></category>
		<category><![CDATA[enhanced constraints]]></category>
		<category><![CDATA[extend components]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[Formatter]]></category>
		<category><![CDATA[IDeferredInstance]]></category>
		<category><![CDATA[LayoutManager]]></category>
		<category><![CDATA[repeater]]></category>
		<category><![CDATA[States]]></category>
		<category><![CDATA[Transitions]]></category>
		<category><![CDATA[UIComponent]]></category>
		<category><![CDATA[Validator]]></category>

		<guid isPermaLink="false">http://training.obecto.com/?p=69</guid>
		<description><![CDATA[DOWNLOAD SLIDES This is by far the biggest topic in the course and it covers lots of subtopics as there are a lot of ways of creating and extending components. On the other side there are different types of components &#8211; visual or non-visual, but also components for data and &#8230; <a href="http://training.obecto.com/2009/04/creating-and-extending-flex-3-components/">More</a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://training.obecto.com/wp-content/uploads/2009/04/creating-and-extending-flex-components.pdf">DOWNLOAD SLIDES</a></p>
<p>This is by far the biggest topic in the course and it covers lots of subtopics as there are a lot of ways of creating and extending components. On the other side there are different types of components &#8211; visual or non-visual, but also components for data and components, let&#8217;s roughly call it a behavior.</p>
<h3>Visual Components &#8211; Composition</h3>
<p>The easiest way for creating custom components is to compose already existing components into a composite view. And there are various way to do that, but before we jump to these, I&#8217;ll show you what&#8217;s my understanding on the concept of <strong>code behind</strong>.</p>
<p><a href="http://training.obecto.com/wp-content/uploads/2009/04/codebehind.zip">DOWNLOAD CODE BEHIND SAMPLE</a></p>
<p>When doing composite components always keep in mind that there are different ways to layout and position the components:</p>
<ul>
<li>absolute positioning</li>
<li>relative positioning</li>
<li>and even enhanced constraints</li>
</ul>
<p><a href="http://training.obecto.com/wp-content/uploads/2009/04/absolutevsrelativelayouts.zip">DOWNLOAD ABSOLUTE VS. RELATIVE LAYOUT SAMPLE</a><br />
<a href="http://training.obecto.com/wp-content/uploads/2009/04/enhancedconstraints.zip">DOWNLOAD ENHANCED CONSTRAINTS SAMPLE</a></p>
<p>The enhanced constraints sample is prepared by <a href="http://www.fabianvercuiel.com/">Fabian Vercuiel</a> as part of his talk on Flex Layouts given at the regular <a href="http://flex.riabg.org">Flex-Bulgaria User-group</a> meetings.</p>
<h3>Visual Components &#8211; Containers</h3>
<p>There are different types of containers you can use in Flex 3:</p>
<ul>
<li>layout containers</li>
<li>list containers</li>
<li>repeater (which is not a container)</li>
</ul>
<p><a href="http://training.obecto.com/wp-content/uploads/2009/04/layoutcontainers.zip">DOWNLOAD LAYOUT CONTAINERS SAMPLE</a><br />
<a href="http://training.obecto.com/wp-content/uploads/2009/04/listcomponents.zip">DOWNLOAD LIST COMPONENTS SAMPLE (REPEATER SAMPLE ALSO INCLUDED)</a></p>
<h3>Visual Component &#8211; Extending UIComponent</h3>
<p>In order to extend UIComponent we need to know a few things:</p>
<ul>
<li>the UI component life-cycle</li>
<li>the invalidation mechanism</li>
<li>the LayoutManager phased mechanism</li>
</ul>
<p><a href="http://training.obecto.com/wp-content/uploads/2009/04/ExtendingUIComponent.zip">DOWNLOAD UICOMPONENT SAMPLE</a></p>
<h3>States &amp; Transitions</h3>
<p>We&#8217;ll make a parallel between the Go4 State-pattern and States in Flex, but we&#8217;ll also take a look at the states architecture in Flex. Then we&#8217;ll get acquainted with the Transition&#8217;s mechanism in Flex. As we look at the sample we&#8217;ll run into an issue when we&#8217;re interrupting a transition. I&#8217;ll propose a possible solution in the same sample.</p>
<p><a href="http://training.obecto.com/wp-content/uploads/2009/04/statesandtransitions.zip">DOWNLOAD STATES AND TRANSITIONS SAMPLE</a><br />
<a href="http://training.obecto.com/wp-content/uploads/2009/04/interruptableeffects.zip">DOWNLOAD INTERRUPTIBLE TRANSITION SAMPLE</a></p>
<p>Flex 4 Gumbo Transitions are introducing the <em>autoReverse</em>-property.</p>
<h3>Non-Visual Components &#8211; Effects</h3>
<p>The intent is to get to know the Effects architecture, the various types of effects (composite effects, tweening effect and action effects), but also to take a look at what other possibilities we can get if we decide to extend some Flex effects.</p>
<h3>Non-Visual Components &#8211; Validators &amp; Formatters</h3>
<p>I&#8217;ll start with describing the Flex Validator component and the plan is to end with some suggestion how to adjust the user interaction logic of the validator in order to fulfill some specific UX needs.<br />
Formatters are just briefly mentioned.</p>
<h3>Deferred Instantiation and How To Make Template Components</h3>
<p>We can take advantage by configuring a component with MXML and controlling the instantiation of this pre-configured with deferred instantiation. I&#8217;ll propose a flex pattern for using deferred instances for factory-classes.</p>
<p><a href="http://training.obecto.com/wp-content/uploads/2009/04/ideferredinstance.zip">DOWNLOAD DEFERRED INSTANTIATION SAMPLE</a></p>
<h3>Data Descriptors</h3>
<p>In the end of this topic we&#8217;ll make an overview of Flex Data Descriptors.</p>
<h3>What&#8217;s left out of this topic?</h3>
<p>I haven&#8217;t talked anything about Skinning and Styling Flex components &#8211; skinning and styling is yet another way to extend and customize components. But here I&#8217;ll provide you with a road-map on how to use the skinning and styling abilities build-in Flex</p>
<h4>1. Setup of build-in style-properties (a.k.a. Styling)</h4>
<p>The most easiest way for simple skin application is to modify the style-properties of the Flex-components. You just need to play around with the <a href="http://examples.adobe.com/flex3/consulting/styleexplorer/Flex3StyleExplorer.html#">Flex Styles Explorer (v3)</a> and copy the styles into your CSS-files.</p>
<h4>2. Completely changing the appearance of a component (a.k.a. Skinning)</h4>
<p>Skinning involves 2 different processes &#8211; preparation of new visual assets and the application of these assets as skins (achieved again through styling). To learn how to combine these two processes read about <a href="http://www.adobe.com/devnet/flex/articles/skins_styles.html">Designing Flex 3 skins and styles using Creative Suite 3 and Flex Builder 3</a>.<br />
A theme is a collection of related styles &#8211; usually a theme changes the looks of a large set of Flex controls. If you need an inspiration browse the <a href="http://www.scalenine.com/">ScaleNine collection of Flex themes</a>.</p>
<h4>3. Programmatic Skinning (using the drawing API to prepare visual assets and effects run-time)</h4>
<p>In some peculiar cases (like this one <a href="http://npacemo.com/wordpress/2008/05/20/flex-3-designer-scrollbar-fixed-size-scrollthumb/">Flex 3 Designer ScrollBar &#8211; Fixed Size ScrollThumb</a>) simply preparing visual assets won&#8217;t be enough. Some coding is needed to achieve the desired appearance and behavior. Again programmatic skins are applied through styling, but instead of Embed-directives you should use ClassReference-directives.</p>
<p>Keep in mind that in the new version of Flex, the current process of skinning and styling would be quite obsolete or at least different!</p>
<h3>Flex 4 Sneakpeak</h3>
<p>If you&#8217;re interested in what&#8217;s Flex 4 going to be, don&#8217;t forget to check out this video:</p>
<div><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="580" height="375" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="name" value="AdobeTVPlayer" /><param name="bgcolor" value="#000000" /><param name="flashvars" value="v=~b64~aHR0cDovL2Fkb2JlLmVkZ2Vib3NzLm5ldC9mbGFzaC9hZG9iZS9hZG9iZXR2Mi9hZGNfcHJlc2VudHMvNjRfYWRjXzAxOC5mbHY/cnNzX2ZlZWRpZD0xNDcyJnhtbHZlcnM9Mg==&amp;w=580&amp;t=http://tv.adobe.com/#vi+f1472v1501&amp;h=375" /><param name="src" value="http://tv.adobe.com/Embed.swf" /><param name="quality" value="high" /><embed type="application/x-shockwave-flash" width="580" height="375" src="http://tv.adobe.com/Embed.swf" quality="high" flashvars="v=~b64~aHR0cDovL2Fkb2JlLmVkZ2Vib3NzLm5ldC9mbGFzaC9hZG9iZS9hZG9iZXR2Mi9hZGNfcHJlc2VudHMvNjRfYWRjXzAxOC5mbHY/cnNzX2ZlZWRpZD0xNDcyJnhtbHZlcnM9Mg==&amp;w=580&amp;t=http://tv.adobe.com/#vi+f1472v1501&amp;h=375" bgcolor="#000000" name="AdobeTVPlayer"></embed></object></div>
<div></div>
<div></div>
<div></div>
]]></content:encoded>
			<wfw:commentRss>http://training.obecto.com/2009/04/creating-and-extending-flex-3-components/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

