<?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>techrageo.us &#187; Software</title>
	<atom:link href="http://techrageo.us/taxonomy/categories/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://techrageo.us</link>
	<description>insight on technology</description>
	<lastBuildDate>Sat, 22 Oct 2011 12:18:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>In-Cell Spreadsheet Graphs</title>
		<link>http://techrageo.us/2007/09/23/in-cell-spreadsheet-graphs/</link>
		<comments>http://techrageo.us/2007/09/23/in-cell-spreadsheet-graphs/#comments</comments>
		<pubDate>Sun, 23 Sep 2007 20:36:04 +0000</pubDate>
		<dc:creator>bill</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://techrageo.us/2007/09/23/in-cell-spreadsheet-graphs/</guid>
		<description><![CDATA[Edward Tufte has promoted the use of inline, word-sized graphs called sparklines to communicate data more effectively, giving rise to several methods of creating inline graphs within documents, including spreadsheets. This article describes one very simple way of incorporating dynamic bar graphs in your spreadsheets. It works in Excel, IBM Lotus Symphony, OpenOffice, and Google&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.amazon.com/exec/obidos/tg/detail/-/0961392142/eis657-20">Edward Tufte</a> has promoted the use of <a href="http://www.edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=0001OR&#038;topic_id=1&#038;topic=Ask+E.T.">inline, word-sized graphs called sparklines</a> to communicate data more effectively, giving rise to several methods of creating inline graphs within documents, including spreadsheets.</p>
<p>This article describes one very simple way of incorporating dynamic bar graphs in your spreadsheets. It works in <a href="http://office.microsoft.com/en-us/excel/">Excel</a>, <a href="http://symphony.lotus.com/">IBM Lotus Symphony</a>, <a href="http://www.openoffice.org/">OpenOffice</a>, and <a href="http://docs.google.com/">Google&#8217;s online spreadsheet</a> application.</p>
<h3>The Basic In-Cell Graph</h3>
<p>Find the data cell you want to graph. This will probably be the first in a vertical series. It will be the reference used within the formula.</p>
<p>Say, for example, you want to graph the value in cell B2 (or B2-B6). <strong>Enter the following formula</strong> into cell C2 (or wherever you want the graph).</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=REPT( &quot;|&quot;, B2 )</pre></div></div>

<p>For Symphony and OpenOffice, function parameters are separated by semi-colons instead of commas. The examples in this article use commas, so just change them to semi-colons and it should work okay. E.g. Instead of the above formula, use the following for Symphony and OpenOffice.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=REPT( &quot;|&quot;; B2 )</pre></div></div>

<p>The next step is a matter of taste, but you will probably want to <strong>change the font</strong> of the graph to something like Arial 8 point. Since we are using the vertical bar as our graph element, a smaller font makes for a tighter-looking graph.</p>
<p>Then, depending on your numeric range of values and the general amount of space you want the graph to use, you will probably want to <strong>divide the cell value by some constant</strong>. This is entirely up to you and your needs. If your value range is between 0 and 20,000, you might want to divide by 500 or 1000; whereas if your values run from 0 to 100, dividing by 5 would make more sense.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=REPT( &quot;|&quot;, B2 / 5 )</pre></div></div>

<p>Now, <strong>copy the formula down</strong> from C3 through C6. (After each change to the formula, you&#8217;ll want to copy the change throughout your graph.)</p>
<p><img src="/images/incell1.gif"/></p>
<p>In fact, you can use a formula to calculate the divider. Divide the maximum value of the graph by something like 40, then divide the cell value by that.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=REPT( &quot;|&quot;, B7 / ( 10000 / 40 ))</pre></div></div>

<h3>Negative Values</h3>
<p>Of course, you will probably want to be able to <strong>handle negative values</strong> as well. By simply spreading your graph across two cells and using the IF() and ABS() functions, negative values are no problem.</p>
<p>Let&#8217;s say you have a range of numbers in cells F2 to F6 and you want a graph in cells G2 and H2 down to G6 and H6. In G2, enter the following formula to handle negative numbers.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=IF( F2 &lt; 0, REPT( &quot;|&quot;, ABS( F2 / 5 )), &quot;&quot; )</pre></div></div>

<p>And in H2, the following will take care of positive values.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=IF( F2 &gt; 0, REPT( &quot;|&quot;, ABS( F2 / 5 )), &quot;&quot; )</pre></div></div>

<p>Next, <strong>format the text in G2 to be right-aligned and red</strong>.</p>
<p>Select G2 and H2, then <strong>copy them down</strong> to G3:H3 through G6:H6.</p>
<p><img src="/images/incell2.gif"/></p>
<p><strong>Just A Little Fancy</strong></p>
<p>You can experiment with various fonts, sizes, colors, etc. to get the graphs you want. One little tweak that&#8217;s useful is using the CONCATENATE() function to mark the value at the graph&#8217;s endpoint.</p>
<p>As an example, the graph below uses a vertical bar for the value and hyphens for the graph bar itself. Note, that since the hyphen takes more horizontal space than a vertical bar, we use a larger divisor (seven, in this case) to keep the graph at about the same scale.</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=CONCATENATE( REPT( &quot;-&quot;, B2 / 7 ), &quot;|&quot; )</pre></div></div>

<p>And the negative/positive graph uses a lower-case &#8220;o&#8221; for the value and the vertical bar for the bar.</p>
<p>Negative:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=IF( F2 &lt; 0, CONCATENATE( &quot;o&quot;, REPT( &quot;|&quot;, ABS( F2 / 5 ))), &quot;&quot; )</pre></div></div>

<p>Postive:</p>

<div class="wp_syntax"><div class="code"><pre class="text" style="font-family:monospace;">=IF( F2 &gt; 0, CONCATENATE( REPT( &quot;|&quot;, ABS( F2 / 5 )), &quot;o&quot; ), &quot;&quot; )</pre></div></div>

<p>Note that the parameters to the CONCATENATE() function are reversed for negative and positive.</p>
<p><img src="/images/incell3.gif"/></p>
<p>Also, as in the above graph, green sometimes looks nice for positive values.</p>
<p><strong>What Else Can We Do With Graphs?</strong></p>
<p>While much more complex graphing is available with your spreadsheet&#8217;s built-in graphing features, this technique provides simple graphs to enhance a boring block of numbers in a spreadsheet. It provides visual cues to the relative values of the numbers and helps to put things in context.</p>
<p>There is more that can be done with graphs like this. In a future article, we&#8217;ll look at similar lightweight graphing techniques. Do you have suggestions or any graphing tips you use? If so, please post them in the comments.</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2007/09/23/in-cell-spreadsheet-graphs/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Communicating Charts with Flex</title>
		<link>http://techrageo.us/2007/06/19/communicating-charts-with-flex/</link>
		<comments>http://techrageo.us/2007/06/19/communicating-charts-with-flex/#comments</comments>
		<pubDate>Tue, 19 Jun 2007 08:59:46 +0000</pubDate>
		<dc:creator>grant</dc:creator>
				<category><![CDATA[Flex]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Web design]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://techrageo.us/2007/06/19/communicating-charts-with-flex/</guid>
		<description><![CDATA[Getting started Creating graphs with Adobe&#8217;s Flex 2 is a pretty simple task, just throw together some short XML and you&#8217;re done. But like most &#8220;easy&#8221; technologies things get a little more difficult when you want to do more advanced things like making sections of the graphs stand out or keeping multiple graphs in sync [...]]]></description>
			<content:encoded><![CDATA[<h3>Getting started</h3>
<p>Creating graphs with <a href="http://www.adobe.com/products/flex/">Adobe&#8217;s Flex 2</a> is a pretty simple task, just throw together some short XML and you&#8217;re done.  But like most &#8220;easy&#8221; technologies things get a little more difficult when you want to do more advanced things like making sections of the graphs stand out or keeping multiple graphs in sync with one another.  In this tutorial I will take you through how to give your graphs a little more &#8220;flash&#8221; and how to make things happen in one graph when you click on another graph.</p>
<p>If you haven&#8217;t already you can <a href="http://www.adobe.com/products/flex/">download the free Flex 2 SDK from Adobe</a>. And you can <a href="http://www.adobe.com/products/flex/charting/">download a free trial of the Flex 2 charting library</a>.</p>
<p>In your favorite text editor (<a href="http://www.eclipse.org/">Eclipse</a> anyone?) start a new file and start with some basic code:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;utf-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;mx:Application</span> <span style="color: #000066;">xmlns:mx</span>=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;*&quot;</span></span>
<span style="color: #009900;">  <span style="color: #000066;">xmlns:local</span>=<span style="color: #ff0000;">&quot;*&quot;</span> <span style="color: #000066;">xmlns:view</span>=<span style="color: #ff0000;">&quot;view.*&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;mx:Script<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #339933;">&lt;![CDATA[</span>
<span style="color: #339933;">    import mx.collections.ArrayCollection;</span>
&nbsp;
<span style="color: #339933;">    [Bindable]</span>
<span style="color: #339933;">    private var profitPeriods:ArrayCollection = new ArrayCollection( [</span>
<span style="color: #339933;">    { period: &quot;Qtr1 2006&quot;, profit: 32 },</span>
<span style="color: #339933;">    { period: &quot;Qtr2 2006&quot;, profit: 47 },</span>
<span style="color: #339933;">    { period: &quot;Qtr3 2006&quot;, profit: 62 },</span>
<span style="color: #339933;">    { period: &quot;Qtr4 2006&quot;, profit: 35 },</span>
<span style="color: #339933;">    { period: &quot;Qtr1 2007&quot;, profit: 25 },</span>
<span style="color: #339933;">    { period: &quot;Qtr2 2007&quot;, profit: 55 } ]);</span>
<span style="color: #339933;">  ]]&gt;</span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/mx:Script<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;mx:Panel</span> <span style="color: #000066;">x</span>=<span style="color: #ff0000;">&quot;10&quot;</span> <span style="color: #000066;">y</span>=<span style="color: #ff0000;">&quot;10&quot;</span> <span style="color: #000066;">width</span>=<span style="color: #ff0000;">&quot;100%&quot;</span> <span style="color: #000066;">height</span>=<span style="color: #ff0000;">&quot;100%&quot;</span> <span style="color: #000066;">title</span>=<span style="color: #ff0000;">&quot;Profit By Period&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
&nbsp;
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;mx:PieChart</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;profitPie&quot;</span> <span style="color: #000066;">dataProvider</span>=<span style="color: #ff0000;">&quot;{profitPeriods}&quot;</span> <span style="color: #000066;">showDataTips</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">width</span>=<span style="color: #ff0000;">&quot;100%&quot;</span> <span style="color: #000066;">height</span>=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;mx:series<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;mx:PieSeries</span> <span style="color: #000066;">field</span>=<span style="color: #ff0000;">&quot;profit&quot;</span> <span style="color: #000066;">nameField</span>=<span style="color: #ff0000;">&quot;period&quot;</span> <span style="color: #000066;">labelPosition</span>=<span style="color: #ff0000;">&quot;callout&quot;</span> <span style="color: #000066;">showDataEffect</span>=<span style="color: #ff0000;">&quot;{interpolate}&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/mx:series<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/mx:PieChart<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/mx:Panel<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/mx:Application<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<h3>Getting more advanced</h3>
<p>This code basically creates a sample dataset and a pie chart to display it.  Nothing fancy and if we were using an XML feed we wouldn&#8217;t have any need for ActionScript at all, since we are only using it to create the data in this example.</p>
<p>Now let&#8217;s say that your customer (or boss) wants to have the data shown in multiple ways.  For our example let&#8217;s say that he wants to see a pie graph, a bar graph and a data grid.  So he can see the data in whatever way he wants to.  No problem there, throwing another chart and grid on the page is just a few more lines of xml, but what if they are to interact?  Say your boss wants to be able to click on a piece of the pie chart and have the same record highlighted in the pie chart, the column chart and the data grid.  Now we&#8217;re going to have to whip out the ActionScript.</p>
<p>We are going to need three methods, one to highlight the pie graph, one for the column chart and a final one for the data grid.  Then we can call all three of these methods whenever a chart or grid is clicked on.  We are using three methods instead of just one giant method in case we ever want to use them again, in a different circumstance.</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">import</span> flash.<span style="color: #006600;">display</span>.<span style="color: #006600;">DisplayObject</span>;  <span style="color: #808080; font-style: italic;">//The items in the column chart are DisplayObjects</span>
&nbsp;
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">var</span> prevSelectedColumn:DisplayObject;
<span style="color: #808080; font-style: italic;">/*
We want to be able to &quot;unhighlight&quot; whatever column we highlighted last time, so
we'll create a variable to keep it simple. If you are using a graph with
multiple datasets then you'll obviously want to loop through them and reset them
that way instead of using this method.
*/</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/*
* This function will highlight a column/bar in a column/bar chart
* @param barName  The name/id of the bar/column chart
* @param barIndex The position of the column you want to highlight
*/</span>
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> barHighlight<span style="color: #66cc66;">&#40;</span> barName:<span style="color: #0066CC;">String</span>, barIndex:<span style="color: #0066CC;">int</span> <span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
<span style="color: #66cc66;">&#123;</span>
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>prevSelectedColumn<span style="color: #66cc66;">&#41;</span>  <span style="color: #808080; font-style: italic;">//If we selected something before, unselect it:</span>
  <span style="color: #66cc66;">&#123;</span>
    prevSelectedColumn.<span style="color: #006600;">alpha</span> = .8;
    prevSelectedColumn.<span style="color: #006600;">filters</span> = <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>;  <span style="color: #808080; font-style: italic;">//remove the filters</span>
  <span style="color: #66cc66;">&#125;</span>
&nbsp;
  <span style="color: #808080; font-style: italic;">//This gets the individual column that we are looking for</span>
  prevSelectedColumn = <span style="color: #0066CC;">this</span><span style="color: #66cc66;">&#91;</span>barName<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">series</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">getChildAt</span><span style="color: #66cc66;">&#40;</span> barIndex <span style="color: #66cc66;">&#41;</span>;
&nbsp;
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>prevSelectedColumn<span style="color: #66cc66;">&#41;</span>  <span style="color: #808080; font-style: italic;">//highlight the new column:</span>
  <span style="color: #66cc66;">&#123;</span>
    prevSelectedColumn.<span style="color: #006600;">alpha</span> = <span style="color: #cc66cc;">1</span>;
    prevSelectedColumn.<span style="color: #006600;">filters</span> = <span style="color: #66cc66;">&#91;</span><span style="color: #000000; font-weight: bold;">new</span> GlowFilter<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>, <span style="color: #000000; font-weight: bold;">new</span> DropShadowFilter<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#93;</span>;
  <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/*
* This function will highlight a row in a data grid
* @param dataGridName The name of the data grid that contains the row to highlight
* @param rowIndex   The position of the row in the grid to highlight
*/</span>
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> rowHighlight<span style="color: #66cc66;">&#40;</span> dataGridName:<span style="color: #0066CC;">String</span>, rowIndex:<span style="color: #0066CC;">int</span> <span style="color: #66cc66;">&#41;</span>: <span style="color: #0066CC;">void</span>
<span style="color: #66cc66;">&#123;</span>
  <span style="color: #0066CC;">this</span><span style="color: #66cc66;">&#91;</span>dataGridName<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">selectedIndex</span> = rowIndex;  <span style="color: #808080; font-style: italic;">//the easy one...</span>
<span style="color: #66cc66;">&#125;</span>
&nbsp;
<span style="color: #808080; font-style: italic;">/*
* This function &quot;explodes&quot; a piece of pie from a pie chart
* @param pieName  The name of the pie chart that is to be modified
* @param pieIndex The index of the pie piece that is to be modified
*/</span>
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> pieHighlight<span style="color: #66cc66;">&#40;</span> pieName:<span style="color: #0066CC;">String</span>, pieIndex:<span style="color: #0066CC;">int</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> explodeData:<span style="color: #0066CC;">Array</span> = <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">&#93;</span>;  <span style="color: #808080; font-style: italic;">//create an empty array</span>
  explodeData<span style="color: #66cc66;">&#91;</span> pieIndex <span style="color: #66cc66;">&#93;</span> = <span style="color: #cc66cc;">0.15</span>; <span style="color: #808080; font-style: italic;">//Set the index of our pie piece to &gt; 0</span>
  <span style="color: #0066CC;">this</span><span style="color: #66cc66;">&#91;</span>pieName<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">series</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">perWedgeExplodeRadius</span> = explodeData;
  <span style="color: #808080; font-style: italic;">/*
  The pie's wedges can be &quot;exploded&quot; outward to highlight them. The amount is
  controlled by an array, so we just create a empty array (which would set
  everything to no padding) and add padding for the index that is to be
  highlighted. This has the added bonus of un-highlighting the piece that was last
  highlighted (if any). Sweet!
  */</span>
<span style="color: #66cc66;">&#125;</span></pre></div></div>

<h3>Adding events</h3>
<p>Of course, this is using inline ActionScript.  If you want to separate it into another file you&#8217;ll have to use &#8220;Application.application&#8221; instead of &#8220;this&#8221; (see the downloadable GraphHighlighting.as file below).  That should give us a snazzy little effect every time we click on an item in any of the charts or in the grid.   But they won&#8217;t be doing any effects unless we add event handlers to our objects.  Let&#8217;s do that now.</p>
<p>So change the xml for your pie chart and add this to the PieChart tag:</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript" style="font-family:monospace;">itemClick=<span style="color: #ff0000;">&quot;pieChartClick(event, 'profitGrid', 'profitBar');&quot;</span></pre></div></div>

<p>And then you can add the ActionScript to handle that event (which, of course, will call our handy three functions):</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/*
* This is run when the pie chart is clicked on
* @param event    The click event
* @param dataGridName The string name of the data grid that should be highlighted
* @param barName  The string name of the column chart that should be highlighted
*/</span>
<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> pieChartClick<span style="color: #66cc66;">&#40;</span> event:ChartItemEvent, dataGridName:<span style="color: #0066CC;">String</span>, barName:<span style="color: #0066CC;">String</span> <span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
<span style="color: #66cc66;">&#123;</span>
  pieHighlight<span style="color: #66cc66;">&#40;</span> event.<span style="color: #006600;">currentTarget</span>.<span style="color: #006600;">id</span> , event.<span style="color: #006600;">hitData</span>.<span style="color: #006600;">chartItem</span>.<span style="color: #0066CC;">index</span> <span style="color: #66cc66;">&#41;</span>;
  rowHighlight<span style="color: #66cc66;">&#40;</span> dataGridName, event.<span style="color: #006600;">hitData</span>.<span style="color: #006600;">chartItem</span>.<span style="color: #0066CC;">index</span><span style="color: #66cc66;">&#41;</span>;
  barHighlight<span style="color: #66cc66;">&#40;</span> barName, event.<span style="color: #006600;">hitData</span>.<span style="color: #006600;">chartItem</span>.<span style="color: #0066CC;">index</span> <span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></div></div>

<p>Then do this for the other chart and the datagrid and you&#8217;ll be set.</p>
<h3>Conclusion and downloads</h3>
<p>So, if you did your calculations correctly, remembered to carry the one and crossed your fingers you probably ended up with something like this:</p>
<div style="width: 490px">
<object width="480" height="480" codebase="http://active.macromedia.com/flash7/cabs/ swflash.cab#version=9,0,0,0"><param name="src" value="http://www.techrageo.us/code/communicateflex/Chart.swf"><param name="quality" value="high"><embed src="http://www.techrageo.us/code/communicateflex/Chart.swf" width="480" height="480" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></embed></object>
</div>
<p>Actually, it probably won&#8217;t look like that, but the sample code download does (see below).</p>
<p>It is more likely that you&#8217;ll probably be making the charts communicate using different data (click on one part of a chart and get detailed information in another chart), but this should at least get you started in the right direction.</p>
<p>Download the <a href="http://techrageo.us/code/communicateflex/Chart.mxml">complete inline ActionScript example</a>: This file is the complete example and you should be able to save it and compile it with the mxml compiler that came with the Flex 2 SDK (assuming you have the charting library, or the charting trial library).</p>
<p>Download the <a href="http://techrageo.us/code/communicateflex/GraphHighlighting.as">&#8220;external&#8221; ActionScript methods</a>: This file is what you can use if you want to keep these functions in your library for future use.  I put this in the FlexAS.GraphHighlighting package, so if you don&#8217;t change the package name you should put this into a &#8220;FlexAS/GraphHighlighting/&#8221; subfolder off of your main flex directory.</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2007/06/19/communicating-charts-with-flex/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Speed Up Acrobat Reader, A Lot</title>
		<link>http://techrageo.us/2007/05/29/speed-up-acrobat-reader-a-lot/</link>
		<comments>http://techrageo.us/2007/05/29/speed-up-acrobat-reader-a-lot/#comments</comments>
		<pubDate>Wed, 30 May 2007 02:40:32 +0000</pubDate>
		<dc:creator>bill</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://techrageo.us/2007/05/29/speed-up-acrobat-reader-a-lot/</guid>
		<description><![CDATA[For the last several years, Acrobat Reader has drifted between sluggish and mind-bogglingly slow, particularly when starting up. Acrobat is a great tool and PDF files widespread enough to make the reader software a requirement on any system. So why is it so dang slow? There are tools to speed up Reader and articles describing [...]]]></description>
			<content:encoded><![CDATA[<p>For the last several years, Acrobat Reader has drifted between sluggish and mind-bogglingly slow, particularly when starting up. Acrobat is a great tool and PDF files widespread enough to make the reader software a requirement on any system. So why is it so dang slow?</p>
<p>There are tools to speed up Reader and articles describing methods to do this by hand.</p>
<div class="readlink">
Read <a href="http://www.ecogito.net/anil/2005/04/howto-speed-up-acrobat-reader.html">HOWTO: Speed up Acrobat Reader</a> at eCognito.<br />
Read <a href="http://fileforum.betanews.com/detail/1069854583/1">Adobe Reader SpeedUp</a> at betanews.
</div>
<p>The tip that worked for me was described at ArsGeek: remove or rename accessibility.api from %Program Files%\Adobe\Reader 8.0\reader\plug_ins.</p>
<div class="readlink">
Read <a href="http://www.arsgeek.com/?p=1192">Adobe Acrobat Reader got you down?</a> at ArsGeek.
</div>
<p>Now Adobe Reader opens nice and fast. This is no slouch of an improvement, either; the gain is from about 10 or 20 seconds down to 1 or 2 seconds.</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2007/05/29/speed-up-acrobat-reader-a-lot/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UltraEdit 13.00 Beta</title>
		<link>http://techrageo.us/2007/02/13/ultraedit-1300-beta/</link>
		<comments>http://techrageo.us/2007/02/13/ultraedit-1300-beta/#comments</comments>
		<pubDate>Tue, 13 Feb 2007 04:02:40 +0000</pubDate>
		<dc:creator>bill</dc:creator>
				<category><![CDATA[Beta]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://techrageo.us/2007/02/13/ultraedit-1300-beta/</guid>
		<description><![CDATA[Right on the heals of upgrading to version 12.20, we&#8217;re testing the beta for UltraEdit Version 13.00. UltraEdit Beats the Competition In January, we compared text editors for Windows, actually hoping to avoid paying for another upgrade to UltraEdit. The comparison included PSPad, Notepad++, EditPlus, UltraEdit, e, inType, TextPad, Crimson, jEdit, Vim, and some others. [...]]]></description>
			<content:encoded><![CDATA[<p>Right on the heals of upgrading to version 12.20, we&#8217;re testing the beta for UltraEdit Version 13.00.</p>
<h3>UltraEdit Beats the Competition</h3>
<p>In January, we <a href="http://techrageo.us/2007/01/06/text-editors-for-windows/">compared text editors for Windows</a>, actually hoping to avoid paying for another upgrade to UltraEdit. The comparison included PSPad, Notepad++, EditPlus, UltraEdit, e, inType, TextPad, Crimson, jEdit, Vim, and some others. PSPad looked very good (especially for free), but ultimately the robust feature set and quality of UltraEdit set it apart from the others. The upgrade to version 12 was easily worth the minor cost.</p>
<h3>Version 13 Beta</h3>
<p>The <a href="http://www.ultraedit.com/index.php?name=News&#038;file=article&#038;sid=53">UltraEdit 13.00 Beta</a> is looking pretty snazzy. It has many new features, including
<ul>
<li><a href="http://www.ultraedit.com/index.php?name=Content&#038;pid=216">Integrated scripting support</a> &#8211; by integrating the JavaScript engine, UltraEdit supports user-written scripts. The UE application object allows interaction with the editor and documents.</li>
<li>Spell check while typing &#8211; as you type, UltraEdit optionally indicates words that it thinks are misspelled and (after right-clicking the word) offers replacement suggestions. Normal spell-check is also available.</li>
<li>Search in Favorite Files</li>
<li>Search and Replace will step through all open files</li>
<li>Search in Files for any files not containing search string</li>
<li>User customizable format of Search in Files result</li>
<li>Integrated IE browser support to show active HTML file</li>
<li>Ability to define a persistent selection</li>
<li>Cursor word-right or word-left to optionally stop at an underscore</li>
<li>Syntax highlighting support of verbatim string literals</li>
<li>Nested comments for languages</li>
<li>Prompt before UE is set as View Source Editor during install</li>
<li>and more</li>
</ul>
<h3>UltraEdit Scripting</h3>
<p>Users can now <a href="http://www.ultraedit.com/index.php?name=Content&#038;pid=216">create scripts</a> (written in Javascript) that use the UltraEdit application object to access the editor and documents (along with normal Javascript features). According to the help file, the following is supported.</p>
<p><img src="images/texteditors/ue13scripting.gif"/></p>
<h3>Spell Checking While You Type</h3>
<p>As-you-type spell checking is now part of UltraEdit. Right-clicking the misspelled word (indicated by a dashed underline) displays possible correct spellings.</p>
<p><img src="images/texteditors/ue13spell.gif"/></p>
<h3>Built-in IE HTML Preview</h3>
<p>A welcome addition is a built-in browser control to view HTML as you edit it.</p>
<p><img src="images/texteditors/ue13IE.gif"/></p>
<h3>XML Preview</h3>
<p>A handy side effect of the IE integration is that if a document begins with an XML declaration (<tt>&lt;?xml version="1.0"?&gt;</tt>) the preview uses IE&#8217;s built-in stylesheet for XML.</p>
<p><img src="images/texteditors/ue13IExml.gif"/></p>
<h3>Conclusion</h3>
<p>There are, of course, still some bugs in the beta. A few fields in new dialogs have odd behavior. Strangely enough, given the addition of a Javascript scripting engine, syntax highlighting for JavaScript is not automatically enabled (nor was it immediately apparent how to enable it).</p>
<p>Overall, however, the new features are important and working well. Things are looking good for the next version of UltraEdit and it should be another worthy upgrade.</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2007/02/13/ultraedit-1300-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Text Editors for Windows Followup</title>
		<link>http://techrageo.us/2007/01/07/text-editors-for-windows-followup/</link>
		<comments>http://techrageo.us/2007/01/07/text-editors-for-windows-followup/#comments</comments>
		<pubDate>Mon, 08 Jan 2007 03:18:52 +0000</pubDate>
		<dc:creator>bill</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://techrageo.us/2007/01/07/text-editors-for-windows-followup</guid>
		<description><![CDATA[Following up on the Text Editors for Windows post, I decided to upgrade UltraEdit and wrap in the UltraCompare bundle. PSPad and a couple Notepad replacements such as Notepad2 and EDXOR will remain on my system. I&#8217;ll also keep an eye on TextMate knockoffs e and InType.]]></description>
			<content:encoded><![CDATA[<p>Following up on the <a href="http://techrageo.us/2007/01/06/text-editors-for-windows/">Text Editors for Windows</a> post, I decided to upgrade <a href="http://www.ultraedit.com">UltraEdit</a> and wrap in the UltraCompare bundle. <a href="http://www.pspad.com">PSPad</a> and a couple Notepad replacements such as <a href="http://www.flos-freeware.ch/notepad2.html">Notepad2</a> and <a href="http://members.ozemail.com.au/~nulifetv/freezip/freeware/edxor.htm">EDXOR</a> will remain on my system. I&#8217;ll also keep an eye on TextMate knockoffs <a href="http://e-texteditor.com/">e</a> and <a href="http://intype.info/">InType</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2007/01/07/text-editors-for-windows-followup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Choose a Text Editor for Windows</title>
		<link>http://techrageo.us/2007/01/06/text-editors-for-windows/</link>
		<comments>http://techrageo.us/2007/01/06/text-editors-for-windows/#comments</comments>
		<pubDate>Sat, 06 Jan 2007 16:14:38 +0000</pubDate>
		<dc:creator>bill</dc:creator>
				<category><![CDATA[Free]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://techrageo.us/2007/01/06/text-editors-for-windows/</guid>
		<description><![CDATA[Windows ships with Notepad, a bare bones text editor that manages to be both handy and next to useless. So if you do any regular text editing you need something more, an editor that can reformat text, record macros, do syntax highlighting, that supports regular expressions in its search/replace dialog, or knows about ftp. Perhaps [...]]]></description>
			<content:encoded><![CDATA[<p><img class="imgright" src="/images/hellonotepadsm.jpg"/>Windows ships with Notepad, a bare bones text editor that manages to be both handy and next to useless. So if you do any regular text editing you need something more, an editor that can reformat text, record macros, do syntax highlighting, that supports regular expressions in its search/replace dialog, or knows about ftp. Perhaps you need an editor that does code folding or that supports the concept of a multi-file project. Maybe you&#8217;ve watched the loopy <a href="http://www.rubyonrails.org/screencasts">Ruby On Rails screencasts</a> and are intrigued by TextMate.</p>
<p>In the past and on various systems I have used a slew of editors, including emacs, vi, Brief, BBEdit, Crimson, and probably dozens of others. Years ago, I settled on UltraEdit for Windows and been using it since, upgrading now and then, but occasionally I look for alternatives. For instance, I am currently at UE Version 9.10 and am looking to upgrade to 12.20. It&#8217;s only twenty-five bucks to upgrade but is it still the best thing going? Are there more nimble, capable editors out there now? Of course, I&#8217;ve seen TextMate, occasionally used TextPad and Crimson, but know there are others.</p>
<p>I use <a href="http://www.amazon.com/exec/obidos/tg/detail/-/B000BTA4LU/eis657-20">Visual Studio 2005</a>, and it has a nice code editor and is just fine for a full-on MS development undertaking, but waiting to load that IDE to edit a file is like waiting in line and going through security to take a plane from Dallas to Fort Worth. This is probably true of whatever IDE you use.</p>
<p>Update (Jan 8, 2006): This article touches on lightweight editors such as TED Notepad, Notepad2, TheGun, TopGun, QuickEdit, and EDXOR. It then does a drive-by on a couple Windows incarnations of TextMate before digging into beefier programmers&#8217; editors, including PSPad, Notepad++, EditPlus, UltraEdit, TextPad, Crimson, jEdit, and Vim/gVim/WinVi. A few also-rans are mentioned at the end for good measure.</p>
<h3>Notepad replacements</h3>
<p>If you just want a little more than Notepad, but don&#8217;t need fancy features, there are some replacements that you might like.</p>
<p><a href="http://jsimlo.sk/notepad/">TED Notepad</a> is a decent Notepad replacement. It feels like the normal Notepad application except that it has lots more features in its menus. It&#8217;s free and worth checking out.</p>
<p><a href="http://www.flos-freeware.ch/notepad2.html">Notepad2</a> is a worthy Notepad replacement with some neat features, such as transparency, search and replace that supports regular expressions, syntax highlighting, bookmarks, column selections, bracket matching, and more.</p>
<p><img src="/images/texteditors/hellonotepad2sm.jpg"/></p>
<p>From <a href="http://www.movsd.com">hutch</a>, <a href="http://www.movsd.com/thegun.htm">TheGun</a> is a very lightweight text editor (6144 bytes) that is perfect if you want small; it is 1/10th the size of Notepad.exe that ships with Windows XP. A little larger (18732 bytes), <a href="http://www.movsd.com/topgun.htm">Top Gun</a> sports a few more features. Both are written in Assembler. <a href="http://www.movsd.com/qed.htm">QuickEdit</a> is a programmer&#8217;s editor that might appeal to the more hardcore techies out there (and still small at 38,652 bytes). These are all &#8220;registry safe&#8221; programs.</p>
<p>Another tiny text editor is <a href="http://members.ozemail.com.au/~nulifetv/freezip/freeware/edxor.htm">EDXOR</a>, which is only 30720 bytes but contains transformation functions such as Reverse, Rot13, Qcypher, Base64, and others.</p>
<p><img src="/images/texteditors/helloedxorsm.jpg"/></p>
<p>For lightweight editing, all of the above are fine; your specific needs and preferences will determine which is best for you.</p>
<h3>Programmers Editors</h3>
<h4>TextMate</h4>
<p>Yeah yeah, it&#8217;s great, it&#8217;s magical, it&#8217;s the greatest innovation since water. Unfortunately, if you want <a href="http://macromates.com/">TextMate</a> on Windows you will have to wait. There is no Windows variant and Allan Odgaard appears to have zero interest in creating one. On the bright side, however, some <a href="http://e-texteditor.com/blog/2006/textmate_on_windows">others are working on the TextMate-inspired e for Windows</a>. Though it feels not-quite-there, it <em>is</em> promising; I find the milestone history and visual undo features particularly interesting (see the right side of the screenshot below). Context menus do not work, Alt keys don&#8217;t open the menus, and the cool directory-file sidecar that TextMate has seems to be missing. All of this is at first glance, so it all may be hidden away in some clever Macintosh idiom, but I didn&#8217;t find it.</p>
<p><img src="/images/texteditors/helloesm.jpg"/></p>
<p>There&#8217;s also <a href="http://intype.info">InType</a>, <s>though nothing is available to download and try. You can get on their mailing list for info</s>. From their website &#8220;<em>Intype is a powerful and intuitive code editor for Windows with lightning fast response. It is easily extensible and customizable, thanks to support for scripting and native plug-ins. It makes development in any programming or scripting language quick and easy.</em>&#8221;</p>
<p>Update (Jan 8, 06): An alpha release of Intype is now available. So far it supports bundles and next to nothing else, except editing files. It indeed appears to be headed in the direction of TextMate, but lags a cut or two behind e. For example, there is no visual undo or history.</p>
<p><img src="/images/texteditors/hellointypesm.jpg"/></p>
<p><strong>Less Snooty Options</strong></p>
<p>So, you aren&#8217;t a TextMate groupie but you still want a good text editor. Relax, there are many from which to choose, even if you don&#8217;t want to spend money for a great editor.</p>
<p>Below is a quick overview of several Windows text editors and a screenshot of each. In each text has been selected and the right mouse button context menu is shown. Also, where project, code or clipboard explorers, or output windows are available, they are enabled.</p>
<h4>PSPad</h4>
<p>Free and packed with features, <a href="http://pspad.com">PSPad</a> is an intriguing option. Currently at version 4.5.2, Its features include FTP support, projects, regular expressions, bracket and syntax highlighting, spell checking, macros, text difference, templates, HTML preview, hex editing, reformatting, column mode, code explorer, compiler and external tool integration, and more. It comes with the free version of TopStyle Lite for CSS editing.</p>
<p>The only apparent downside is a lack of code folding support. Since PSPad has a code explorer, it&#8217;s not that bad, but code folding would be great. If I&#8217;m overlooking it, please tell me how to enable folding.</p>
<p>Update (Jan 8, 2006): Further use of PSPad reveals some cursor oddities that give it an unfinished feel. Also the PSPad forums seem to indicate that the developer is having difficulty finding a solution to code folding, a much-requested feature by the PSPad user community. If you&#8217;re interested in these sorts of things, <a href="http://forum.pspad.com/read.php?2,12038">PSPad is written in Object Pascal</a>.</p>
<p><img src="/images/texteditors/hellopspadsm.jpg"/></p>
<h4>Notepad++</h4>
<p><a href="http://notepad-plus.sourceforge.net">Notepad++</a> supports macros, code folding, syntax highlighting, bracket highlighting, function completion, regular expression searching, bookmarks, plugins, launching in browsers, and more. It is currently at version 3.9 and was last updated in April of 2006.</p>
<p>Though it has a serene look to it, Notepad++ feels a little weird to me. It&#8217;s tough to put my finger on why, though, so it might work great for you.</p>
<p><img src="/images/texteditors/hellonotepadppsm.jpg"/></p>
<h4>EditPlus</h4>
<p>Priced at $30, <a href="http://editplus.com">EditPlus</a> is at version 2.30 (last update on 11/14/2006) and supports the usual cast of features, including macros, projects, FTP, code folding, syntax and bracket highlighting, spell checking, and so on.</p>
<p><img src="/images/texteditors/helloeditplussm.jpg"/></p>
<h4>UltraEdit</h4>
<p><a href="http://ultraedit.com">UltraEdit</a> has been my editor of choice for years. Regularly updated and now at version 12.20, IDM products include UltraCompare, UltraEdit Studio, and UltraSentry. UltraEdit is about $50 (â‚¬ 38). UE supports syntax highlighting, code folding, FTP, sorting lines, emailing files, hex editing, macros, column mode, reformatting, HTML validation, projects, and on and on.</p>
<p>Besides the edit window, in the screenshot below the file explorer, output window, function explorer, and clipboard explorer are open.</p>
<p><img src="/images/texteditors/helloultraeditsm.jpg"/></p>
<p>UltraCompare, shown below, is a file compare utility that supports merging. A bundle with UltraEdit and UltraCompare is about $65 (â‚¬ 49).</p>
<p><img src="/images/texteditors/helloultracompsm.jpg"/></p>
<h4>TextPad</h4>
<p><a href="http://textpad.com">TextPad</a>, currently at version 4.7.3, is a capable text editor with a decent feature set (such as macros) but it suffers from odd key mappings and having nothing special to recommend it. In addition, it is $30 (Â£16.50) and has not been updated since June 19, 2004. Some people like it, but I see no reason to recommend it. Sorry.</p>
<p><img src="/images/texteditors/hellotextpadsm.jpg"/></p>
<h4>Crimson</h4>
<p><a href="http://crimsoneditor.com">Crimson Editor</a> is another fine but outdated editor, not updated since fall of 2004. However, it is free, so if it does all you need, it isn&#8217;t bad. The last version was 3.70 and supports macros, templates, FTP, regular expression searching, and projects.</p>
<p><img src="/images/texteditors/hellocrimsonsm.jpg"/></p>
<h4>jEdit</h4>
<p>Update (Jan 8, 2006): Loved by some and sporting some features, <a href="http://www.jedit.org/">jEdit</a> is slow and marred by its icky Java goodness. If you are fashionably rebellious or tied to Java, this might be a good choice. Otherwise, look elsewhere.</p>
<p><img src="/images/texteditors/hellojeditsm.jpg"/></p>
<h4>Vim/gVim</h4>
<p>Update (Jan 8, 2006): vi lovers &#8212; you know who you are &#8212; will probably already know about this, but if not or if you like puzzles, give <a href="http://www.vim.org/">Vim or gVim</a> a shot. Vim is a superset of the vi editor and gVim wraps a GUI around this obtuse textual masterpiece. (If Vim or gVim doesn&#8217;t do it for you but you still need your vi, give <a href="http://www.winvi.de/">WinVi</a> a shot.)</p>
<p><img src="/images/texteditors/hellogvimsm.jpg"/></p>
<h3>Still Others</h3>
<p>Still other text editors exist for Windows.</p>
<p><a href="http://www.zeusedit.com/">Zeus</a> is an editor and IDE that runs $45. It supports class browsing, CVS, VSS, and more.</p>
<p><a href="http://www.scintilla.org/SciTE.html">SciTE</a> is part of Scintilla and supports all the latest features.</p>
<p><a href="http://www.editpadpro.com/">EditPad Pro</a> is yet another text editor and costs $49. A lite version is free.</p>
<p><a href="http://www.emeditor.com/">EmEditor</a> is another text editor with decent features available in Professional, Standard, and Free versions. The free version is pretty stripped-down.</p>
<h3>Recommendations</h3>
<p>Bottom line, I still like UltraEdit and may still upgrade, but PSPad has to be the best bang for the buck. It has earned a place on my system next to UltraEdit, and has to be the editor of choice in situations where $50 is too much to spend. In fact, if I did not already have an UltraEdit license (taking the upgrade price down to $25), I would just stick with PSPad.</p>
<p>Update (Jan 8, 2006): PSPad has me a bit worried (see above). A little flakiness with it is making that UltraEdit upgrade look more attractive.</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2007/01/06/text-editors-for-windows/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>dgp Bumptop Demo</title>
		<link>http://techrageo.us/2006/07/08/dgp-bumptop-demo/</link>
		<comments>http://techrageo.us/2006/07/08/dgp-bumptop-demo/#comments</comments>
		<pubDate>Sun, 09 Jul 2006 03:30:14 +0000</pubDate>
		<dc:creator>bill</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tech News]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://techrageo.us/2006/07/08/dgp-bumptop-demo/</guid>
		<description><![CDATA[This dgp technology demo is great. However, since the symptoms it addresses (organizing many disparate documents on a desktop space), the real world usefulness is questionable; the real solution seems to be better organization and a clear desktop. Nevertheless, the demo is still cool. Very very cool. dbp is the dynamic graphics program at University [...]]]></description>
			<content:encoded><![CDATA[<p>This <a href="http://www.youtube.com/watch?v=M0ODskdEPnQ">dgp technology demo</a> is great. However, since the symptoms it addresses (organizing many disparate documents on a desktop space), the real world usefulness is questionable; the real solution seems to be better organization and a clear desktop. Nevertheless, the demo is still cool. Very very cool.</p>
<p><em>dbp</em> is the <a href="http://www.dgp.utoronto.ca/~ravin/">dynamic graphics program</a> at University of Toronto and the <a href="http://www.dgp.utoronto.ca/~ravin/papers/chi2006_bumptop.pdf">BumpTop</a> <a href="http://bumptop.ca/">project</a> comes from <a href="http://honeybrown.ca/">Anand Agarawala</a> and <a href="http://www.dgp.utoronto.ca/~ravin/">Ravin Balakrishnan</a>.</p>
<p><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/M0ODskdEPnQ"></param><embed src="http://www.youtube.com/v/M0ODskdEPnQ" type="application/x-shockwave-flash" width="425" height="350"></embed></object></p>
<p><a href="http://sippey.typepad.com/filtered/2006/06/bumptop.html">Via</a> and <a href="http://honeybrown.ca/Pubs/BumpTop.html">Via</a></p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2006/07/08/dgp-bumptop-demo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial: The Gimp</title>
		<link>http://techrageo.us/2006/07/05/tutorial-the-gimp/</link>
		<comments>http://techrageo.us/2006/07/05/tutorial-the-gimp/#comments</comments>
		<pubDate>Thu, 06 Jul 2006 02:24:52 +0000</pubDate>
		<dc:creator>grant</dc:creator>
				<category><![CDATA[Modify]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://techrageo.us/2006/07/05/tutorial-the-gimp/</guid>
		<description><![CDATA[For this tutorial you will need a copy of The Gimp. You can download it here for Windows, Linux and OS X. For any project you need a goal, so for this tutorial our goal will be to create a fantasy image of a far away galaxy. Cheesy? Yes, but also very easy if you [...]]]></description>
			<content:encoded><![CDATA[<p>For this tutorial you will need a copy of The Gimp.  You can download it <a href="http://gimp.org/downloads/">here</a> for Windows, Linux and OS X.</p>
<p>For any project you need a goal, so for this tutorial our goal will be to create a fantasy image of a far away galaxy.  Cheesy? Yes, but also very easy if you know the right tricks.  Soon you&#8217;ll be creating stars and planets and you&#8217;ll get a warm feeling all over.  That is nature&#8217;s way of telling you that you&#8217;ve been sitting at the computer too long and you need to change your pants.  Hopefully this won&#8217;t take <em>that</em> long.</p>
<p><a href="http://techrageo.us/wp-content/tech_gimp_1_large.jpg"><img align="right" alt="New Gimp Image - Large" src="http://techrageo.us/wp-content/tech_gimp_1.jpg" /></a><br />
First, start up The Gimp and select <strong>New</strong> from the <strong>File</strong> menu.  You will get a window that will popup and look similar to what you see on the right.  Let&#8217;s create a 1600&#215;1200 image (any size will do though) and fill it with the <strong>Foreground color</strong> (this will be black unless you have changed something).  You can change the other stuff when you know what you are doing, but for this example we will just leave them at the defaults.</p>
<p>After you click <strong>OK</strong> the program will replace that window with a large window that is completely black in the middle.  There you have it&#8230;Space.</p>
<p>Mission accomplished.</p>
<p>Okay, maybe that was a little too easy.  We&#8217;d better add some more stuff or people will think that space is a really boring, empty place.  Which it is, but we don&#8217;t want <em>them</em> to think that.  So lets start with some stars.</p>
<p><a href="http://techrageo.us/wp-content/tech_gimp_2_large.jpg"><img align="left" alt="New Gimp Layer" src="http://techrageo.us/wp-content/tech_gimp_2.jpg" /></a><br />
In order to create some stars we first need to create a new layer in our image.  Now The Gimp should have started up a <strong>Layers</strong> panel when it started, but if it didn&#8217;t or if you closed it you can re-open it by going to the <strong>File menu</strong>, then to <strong>Dialogs</strong> and then to <strong>Layers</strong>.  Now you should be seeing something similar to the image on the left (except without my ugly arrow).  Don&#8217;t worry if yours has some extra stuff at the bottom, that is normal, but we won&#8217;t be using it right now so it is safe to ignore temporarily.</p>
<p>Click on the <strong>New</strong> button (at the bottom of the arrow in the image to the left) and click <strong>OK</strong> to the dialog box it pops up.  This will create a new layer on your image.  The layer is currently blank, so you can&#8217;t see anything in your image but you can see the new layer entry added in the Layers dialog.</p>
<p>The &#8220;New Layer&#8221; entry should be highlighted blue, but if it isn&#8217;t you can click on it to turn it blue.  The layer that is highlighted is the current layer and any changes we make to the image will only happen to this layer.  This will make more sense in a minute.  For now though, just select the &#8220;New Layer&#8221; and go back to your image screen (the window that is all black in the middle).  From here you can click on <strong>Filters</strong>, then <strong>Noise</strong>, then <strong>Hurl</strong>.  This will allow us to &#8220;hurl&#8221; some stars onto our Space.  When the dialog box pops up asking you for the specifics you should click the <strong>Randomize</strong> checkbox and move the <strong>Randomization %</strong> down to 5%.  Then hit <strong>OK</strong>.</p>
<p>Then you will notice that you have a bunch of multicolored dots on your nice Space image.  I know what you are thinking (or should be): &#8220;Wait a minute&#8230;.there&#8217;s too many and their colors are all too bright to be stars.&#8221;  And you are right, but that is why we put the stars onto a new layer.  Now go back to your layer dialog box and notice the nice <strong>Opacity</strong> slider right above your &#8220;New Layer&#8221;.  If you move that down to about 50% you will get something that looks more like the fake space you wanted to create.</p>
<p>Okay let&#8217;s put some funky Space Colors &#8482; into this image like you see in all the NASA photos.  Go ahead and create a new layer and select it.  Then go back to your image and go to <strong>Filters</strong> then <strong>Render </strong>then <strong>Clouds</strong> then <strong>Plasma</strong>.  A dialog box will pop up that has a funky &#8220;hippy&#8221; image in it.  Keep clicking <strong>New Seed</strong> until you get a hippy image with a lot of colors in it (this really doesn&#8217;t matter much if you want to accept the hippy image that originally popped up).  The <strong>turbulence</strong> should be left at about 1.0.  Click <strong>OK</strong> when you have everything how you like it.</p>
<p>This probably turned your nice space image into a giant hippy image.  This is what space looks like on acid.  Or so I&#8217;ve heard.  Now go back to your layer dialog and change the <strong>Opacity</strong> on this layer down to about 20% or so.  Now you have some nice Space Colors &#8482;.  But wouldn&#8217;t it be nice if our stars were just a little brighter?  Go back to your layers dialog and select your hippy layer and click the arrow pointing down (near the button you click to create a new layer).  Now your hippy layer is below the stars and thus the stars are brighter.  If that didn&#8217;t make much of a difference then you can always lower the <strong>Opacity</strong> on your hippy layer some more.</p>
<p>Now lets create a supernova right in the middle somewhere.  This is really easy.   Create a new layer, select it, go to your image and on the menu go to <strong>Filters</strong> then to <strong>Light Effects</strong> then to <strong>SuperNova</strong>.  The defaults will probably be okay but you can safely mess around with them without screwing anything up if you want.</p>
<p>Now would be a good time to save, if you are satisfied with your image so far.  Just save it as  myspace.jpg and take all the defaults.</p>
<p><a href="http://techrageo.us/wp-content/tech_gimp_3_large.jpg"><img align="right" alt="Gimp Selection Tool" src="http://techrageo.us/wp-content/tech_gimp_3.jpg" /></a><br />
Now we have a star, how about some planets?  Okay, you know the drill&#8230;new layer.  Now on your main Gimp screen you should select the <strong>Round Select</strong> tool (see the image to the right for help).  On your space image you can now click and drag and create little circles and elipses.  If you hold down the <strong>SHIFT</strong> key (on your keyboard) while dragging it will always create a perfect circle.  Make a circle somewhere you would like to put a planet.</p>
<p>Now on the main Gimp screen select the <strong>Gradient Fill</strong> tool (the green and white box three spaces below the circle select tool in my image to the right).  Just below this box there are two boxes with colors in them (probably black and white, unless you have changed them).  Click on the black color to change it.  Just click somewhere in the rainbow of colors then make it lighter or darker in the large box next to the rainbow.  Pick red for your first planet.  Now click <strong>OK</strong> and go back to the main Gimp window.  There is a little double sided arrow pointing at both of the colors, red and white.  If you click on this it will switch the main color to white and make the color you picked (red) the secondary color.  Do this now.</p>
<p>Now below the colors on the main Gimp screen there is a box that is labeled <strong>Shape</strong> and has the word <strong>Linear</strong> in it.  Click this box and change it to <strong>Radial</strong>.  Now on your Space image click inside your selected circle and drag the mouse toward your supernova.  You won&#8217;t have to drag very far, probably about the width of your planet will be fine.  I find it also helps to start near the edge on which the supernova shines.  Don&#8217;t worry if it doesn&#8217;t turn out very good, you can keep doing it over and over again and it will not mess anything up.  Just leave the planet selected when you are done.</p>
<p>I know what you are thinking&#8230;<em>that doesn&#8217;t look like a planet.  It looks like a pool ball in space.  Now you are really on acid, man</em>.  That may be true, but we aren&#8217;t finished yet.  Create YAL (yet another layer) and on your image menu go to <strong>Filters</strong> then <strong>Render</strong> then <strong>Clouds</strong> then <strong>Solid Noise</strong>.  When the box pops up, click &#8220;New Seed&#8221; and then OK.  If you left your planet selected as instructed then you should have a very gray and ugly planet now, but I think you know what to do.  Go to the Layers dialog and reduce the <strong>Opacity</strong>!  Reducing it to about 35% works well for me and gives the planet a little atmosphere.  Pun intended.</p>
<p>Now do the same thing a couple of times, add some moons around the planets (done exactly like the planets) and you&#8217;ve created your own solar system.  Wouldn&#8217;t your mother be proud of you now?</p>
<div style="text-align: center"><a class="imagelink" title="My Space Picture" href="http://techrageo.us/wp-content/uploads/2006/07/tech_gimp_4.jpg"><img id="image63" alt="My Space Picture" src="http://techrageo.us/wp-content/uploads/2006/07/tech_gimp_4_thumb.jpg" /></a></div>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2006/07/05/tutorial-the-gimp/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Google Spreadsheet</title>
		<link>http://techrageo.us/2006/06/06/google-spreadsheet/</link>
		<comments>http://techrageo.us/2006/06/06/google-spreadsheet/#comments</comments>
		<pubDate>Wed, 07 Jun 2006 01:40:45 +0000</pubDate>
		<dc:creator>bill</dc:creator>
				<category><![CDATA[Free]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tech News]]></category>

		<guid isPermaLink="false">http://techrageo.us/2006/06/06/google-spreadsheet/</guid>
		<description><![CDATA[Not exactly an Excel-killer yet, but here comes Google Spreadsheet. It is interesting; sharing spreadsheets, import/export, lots of functions, and so on. If you&#8217;ve been losing sleep waiting for it, well, now you can rest easy. Otherwise, okay, another Google labs thingy. You have to sign up for an invitation at this point. Via Google [...]]]></description>
			<content:encoded><![CDATA[<p>Not exactly an Excel-killer yet, but here comes Google Spreadsheet. It is interesting; sharing spreadsheets, import/export, lots of functions, and so on. If you&#8217;ve been losing sleep waiting for it, well, now you can rest easy. Otherwise, okay, another Google labs thingy.</p>
<p>You have to <a href="http://www.google.com/googlespreadsheets/try_out.html">sign up</a> for an invitation at this point.</p>
<p><img src="/wp-content/googlespreadsheet1sm.jpg"/></p>
<p>Via <a href="http://googleblog.blogspot.com/2006/06/its-nice-to-share.html">Google Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2006/06/06/google-spreadsheet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Mono brings .NET apps to Linux</title>
		<link>http://techrageo.us/2005/10/12/mono-brings-net-apps-to-linux/</link>
		<comments>http://techrageo.us/2005/10/12/mono-brings-net-apps-to-linux/#comments</comments>
		<pubDate>Wed, 12 Oct 2005 16:06:37 +0000</pubDate>
		<dc:creator>grant</dc:creator>
				<category><![CDATA[Free]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://techrageo.us/2005/10/12/mono-brings-net-apps-to-linux/</guid>
		<description><![CDATA[IBM has an article for developers about developing cross platform applications useing .NET. Well, using Mono. As someone who has (poorly) written a cross platform application using Mono I can say that it is definitely easy. As long as you keep portability in mind when programming the cross platform bit should fall into place without [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www-128.ibm.com/developerworks/library/l-mono/index.html?ca=dgr-lnxw01.NetonLinux">IBM</a> has an article for developers about developing cross platform applications useing .NET.  Well, using Mono.</p>
<p>As someone who has (poorly) written a cross platform <a href="http://toddlergame.sourceforge.net">application</a> using Mono I can say that it is definitely easy.  As long as you keep portability in mind when programming the cross platform bit should fall into place without any additional work.</p>
<p>The problem that I ran into was the fact that my application stopped working correctly on newer versions of .NET and now only it only runs well on Mono (on Windows and Linux).</p>
]]></content:encoded>
			<wfw:commentRss>http://techrageo.us/2005/10/12/mono-brings-net-apps-to-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

