<?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>Kalen Gibbons &#187; dataTipField</title>
	<atom:link href="http://www.kalengibbons.com/blog/index.php/tag/datatipfield/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kalengibbons.com/blog</link>
	<description>The Dead Tree Blog</description>
	<lastBuildDate>Mon, 24 Oct 2011 20:43:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Displaying DataTips when using an itemRenderer</title>
		<link>http://www.kalengibbons.com/blog/index.php/2008/12/displaying-datatips-when-using-an-itemrenderer/</link>
		<comments>http://www.kalengibbons.com/blog/index.php/2008/12/displaying-datatips-when-using-an-itemrenderer/#comments</comments>
		<pubDate>Sat, 13 Dec 2008 20:25:21 +0000</pubDate>
		<dc:creator>Kalen Gibbons</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[dataGridColumn]]></category>
		<category><![CDATA[dataTipField]]></category>
		<category><![CDATA[dataTipFunction]]></category>
		<category><![CDATA[DataTips]]></category>
		<category><![CDATA[itemRenderer]]></category>

		<guid isPermaLink="false">http://www.kalengibbons.com/blog2/?p=77</guid>
		<description><![CDATA[One of the bad things about using itemRenderers in a DataGridColumn is that you lose the dataTip functionality that it normally provides. Well, here is a way to fake that functionality. First, add the dataTipField or dataTipFunction to the DataGridColumn like you normally would. &#60;mx:DataGridColumn &#160;headerText=&#34;DataTip&#34; dataField=&#34;name1&#34; showDataTips=&#34;true&#34; dataTipField=&#34;description1&#34; /&#62; Then, in your itemRenderer add [...]]]></description>
			<content:encoded><![CDATA[<p>One of the bad things about using itemRenderers in a DataGridColumn is that you lose the dataTip functionality that it normally provides.  Well, here is a way to fake that functionality.</p>
<p>First, add the dataTipField or dataTipFunction to the DataGridColumn like you normally would.</p>
<div class="code">
<span class="mxmlComponent">&lt;mx:DataGridColumn</span> &nbsp;headerText=&quot;<span class="mxmlString">DataTip</span>&quot;</p>
<div class="indent5">
<div class="indent">
dataField=&quot;<span class="mxmlString">name1</span>&quot;<br />
showDataTips=&quot;<span class="mxmlString">true</span>&quot;<br />
dataTipField=&quot;<span class="mxmlString">description1</span>&quot;  <span class="mxmlComponent">/&gt;</span>
</div>
</div>
</div>
<p>Then, in your itemRenderer add the following code to be able to tap into that information and display a tooltip instead.</p>
<div class="code">
<p><span class="asReserved">private</span> <span class="asFunction">function</span> getToolTip():String{</p>
<div class="indent">
<span class="asVar">var</span> dg:DataGrid = listData.owner <span class="asReserved">as</span> DataGrid;<br />
<span class="asVar">var</span> func:Function = dg.columns[listData.columnIndex].dataTipFunction;</p>
<p><span class="asReserved">if</span>(func != <span class="asReserved">null</span>){</p>
<div class="indent">
<span class="asReserved">return</span></span> func.call(<span class="asReserved">this</span>, <span class="asReserved">this</span>.data);</div>
<p>}<span class="asReserved">else if</span>(dg.columns[listData.columnIndex].dataTipField.length){</p>
<div class="indent">
<span class="asReserved">return</span> data[dg.columns[listData.columnIndex].dataTipField];</div>
<p>}<span class="asReserved">else</span>{</p>
<div class="indent">
<span class="asReserved">return</span> <span class="asString">&quot;&quot;</span>;</div>
<p>}</p></div>
<p>}</p>
<p>&nbsp;</p>
<p><span class="asReserved">override protected</span> <span class="asFunction">function</span> updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):<span class="asReserved">void</span>{</p>
<div class="indent">
	<span class="asReserved">super</span>.updateDisplayList(unscaledWidth, unscaledHeight);<br />
	<span class="asReserved">this</span>.toolTip = getToolTip();</div>
<p>}
</p></div>
<p>This works with both dataTipFields and dataTipFunctions and lets you treat the dataTips in your columns the same way, regardless of whether you&#8217;re using an itemRenderer or not.  The only minor difference is the positioning of the label, but that can be easily modified with styles. You can download the <a href="http://www.kalengibbons.com/assets/files/psuedoDataTips.zip">full source code here</a>, for a functional example of how this works.</p>
<p><center><br />
<iframe height="200" frameborder="0" width="670" src="/assets/pages/psuedoDataTips.html"></iframe><br />
</center></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kalengibbons.com/blog/index.php/2008/12/displaying-datatips-when-using-an-itemrenderer/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

