<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Rakesh Menon</title>
	<atom:link href="http://rakeshmenonp.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://rakeshmenonp.wordpress.com</link>
	<description>Java, JavaFX and beyond...</description>
	<lastBuildDate>Mon, 06 Jul 2009 04:42:24 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='rakeshmenonp.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/50e96784d0bf6806bfb3517101f159b1?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Rakesh Menon</title>
		<link>http://rakeshmenonp.wordpress.com</link>
	</image>
			<item>
		<title>JavaFX &#8211; ClipView [ Scroll + Pane ]</title>
		<link>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-clipview-scroll-pane/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-clipview-scroll-pane/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 04:38:11 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[ClipView]]></category>
		<category><![CDATA[ScrollPane]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=171</guid>
		<description><![CDATA[
JavaFX has new layout &#8211; ClipView &#8211; which can be used to implement scroll or pannable view.


We can set a node to ClipView which needs to be clipped and shown. The clip area can be controlled by specifying attributes &#8211; clipX and clipY. ClipView can also handle panning using mouse, which can enabled using pannable [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=171&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
JavaFX has new layout &#8211; <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.layout/javafx.scene.layout.ClipView.html">ClipView</a> &#8211; which can be used to implement scroll or <a href="http://en.wikipedia.org/wiki/Panning_(camera)">pannable</a> view.
</p>
<p>
We can set a node to <code>ClipView</code> which needs to be clipped and shown. The clip area can be controlled by specifying attributes &#8211; clipX and clipY. ClipView can also handle panning using mouse, which can enabled using <code>pannable</code> attribute.
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/ClipView/ClipView.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/ClipView/ClipView.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/ClipView/ClipView.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" align="top"></a>
</p>
<p>
In above sample a <a href="http://veimages.gsfc.nasa.gov/1438/earth_lights_lrg.jpg">large image</a> is added to ImageView, which in-turn is added to ClipView. The clipX and clipY attributes are bound to horizontal and vertical ScrollBars. The clip rectangle can be updated by moving the scrollbars.
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">var&nbsp;scrollClipView&nbsp;:&nbsp;ClipView&nbsp;=&nbsp;ClipView&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">clipX:&nbsp;bind&nbsp;hScroll.value</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">clipY:&nbsp;bind&nbsp;vScroll.value</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">node:&nbsp;imageView</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">pannable:&nbsp;</font><font color="#7f0055"><b>false</b></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">layoutInfo:&nbsp;LayoutInfo&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">width:&nbsp;</font><font color="#990000">300</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">height:&nbsp;</font><font color="#990000">200</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#000000">}</font></code>
   </td>
</tr>
</table>
</div>
<p>
The second ImageView is again added to ClipView. This time clipX and clipY are not bound to scrollbars. Instead the <code>pannable</code> attribute is set to true. User can move the image using mouse.
</p>
<p>
Try it out and let me know feedback! <img src="http://blogs.sun.com/images/smileys/smile.gif" />
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/ClipView/Main_fx.html">Main.fx</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/171/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=171&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-clipview-scroll-pane/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/ClipView/ClipView.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/images/smileys/smile.gif" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; System Monitor</title>
		<link>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-system-monitor/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-system-monitor/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 04:33:16 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[systemmonitor]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=166</guid>
		<description><![CDATA[
My previous post on LineChart uses simulated CPU usage data. Just thought of updating that to show live CPU and Memory information.


A tribute to all &#160;&#160; users 





For Applet mode, click on above image


For standalone mode 


One of the way to implement this is to use some existing command line utilities. I used &#8211; top [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=166&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
My previous post on <a href="http://rakeshmenonp.wordpress.com/2009/07/06/javafx-linechart/">LineChart</a> uses simulated CPU usage data. Just thought of updating that to show live CPU and Memory information.
</p>
<p>
A <a href="http://en.wikipedia.org/wiki/Tribute">tribute</a> to all <img src="http://blogs.sun.com/rakeshmenonp/resource/images/opensolaris.png" />&nbsp;<img src="http://blogs.sun.com/rakeshmenonp/resource/images/linux.gif" />&nbsp;<img src="http://blogs.sun.com/rakeshmenonp/resource/images/apple.gif" /> users <img src="http://blogs.sun.com/images/smileys/smile.gif" />
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/SystemMonitor.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/SystemMonitor.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/SystemMonitor.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" align="top"></a>
</p>
<p>
One of the way to implement this is to use some existing command line utilities. I used &#8211; <a href="http://en.wikipedia.org/wiki/Top_(Unix)">top</a> &#8211; command to get the CPU and Memory usage information. Execute <code>top</code> using <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/ProcessBuilder.html">ProcessBuilder</a>, get the <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Process.html">Process</a> instance. Get the output stream from process and read the output of <code>top</code> command. Now parse this content (a bit tricky, each version had its own output format) to get the information.
</p>
<p>
Note: The implementation is not concrete (as it relies on simple text parsing), may not work on some platforms or locales due to difference in output of <code>top</code> command. It will not work on platforms which does not support <code>top</code> command.
</p>
<p>
Try it out and let me know feedback <img src="http://blogs.sun.com//images/smileys/smile.gif" />
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/Main_fx.html">Main.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/SystemMonitor_fx.html">SystemMonitor.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/UpdateListener_java.html">UpdateListener.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/DataParserFactory_java.html">DataParserFactory.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/DataParser_java.html">DataParser.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/SolarisDataParser_java.html">&nbsp;&nbsp;&nbsp;&nbsp;SolarisDataParser.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/LinuxDataParser_java.html">&nbsp;&nbsp;&nbsp;&nbsp;LinuxDataParser.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/MacDataParser_java.html">&nbsp;&nbsp;&nbsp;&nbsp;MacDataParser.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/StreamReader_java.html">StreamReader.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/TOPMonitor_java.html">TOPMonitor.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/SolarisMonitor_java.html">SolarisMonitor.java</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/166/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/166/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/166/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/166/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/166/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/166/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/166/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/166/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/166/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/166/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=166&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-system-monitor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/opensolaris.png" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/linux.gif" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/apple.gif" medium="image" />

		<media:content url="http://blogs.sun.com/images/smileys/smile.gif" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/SystemMonitor/SystemMonitor.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />

		<media:content url="http://blogs.sun.com//images/smileys/smile.gif" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; LineChart</title>
		<link>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-linechart/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-linechart/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 04:26:52 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[LineChart]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=157</guid>
		<description><![CDATA[
JavaFX 1.2 introduces new Chart APIs. Here we discuss about how to plot line chart using LineChart API.


For creating a chart, we need to create following instance


Type of Chart &#8211; Area, Bar, Bubble, Line, Pie, 3D-Pie, Scatter


Chart Series &#8211; Area, Bar, Bubble, Line, Scatter


Chart Data &#8211; Area, Bar, Bubble, Line, Pie, Scatter



Note: Pie chart is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=157&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
JavaFX 1.2 introduces new Chart APIs. Here we discuss about how to plot line chart using <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.LineChart.html">LineChart</a> API.
</p>
<p>
For creating a chart, we need to create following instance<br />
</p>
<ul>
<li>Type of <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.Chart.html">Chart</a> &#8211; <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.AreaChart.html">Area</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.BarChart.html">Bar</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.BubbleChart.html">Bubble</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.LineChart.html">Line</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.PieChart.html">Pie</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.PieChart3D.html">3D-Pie</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.ScatterChart.html">Scatter</a>
</li>
<li>
Chart <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart.data/javafx.scene.chart.data.Series.html">Series</a> &#8211; <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.AreaChart.Series.html">Area</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.BarChart.Series.html">Bar</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.BubbleChart.Series.html">Bubble</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.LineChart.Series.html">Line</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.ScatterChart.Series.html">Scatter</a>
</li>
<li>
Chart <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart.data/javafx.scene.chart.data.Data.html">Data</a> &#8211; <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.AreaChart.Data.html">Area</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.BarChart.Data.html">Bar</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.BubbleChart.Data.html">Bubble</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.LineChart.Data.html">Line</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.PieChart.Data.html">Pie</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.ScatterChart.Data.html">Scatter</a>
</li>
</ul>
<p>
Note: Pie chart is an exception. In this case we don&#8217;t need to create instance of <code>Series</code>. Series is required only for <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.chart/javafx.scene.chart.XYChart.html">X-Y chart types</a>.
</p>
<p>
Lets implement a Line-Chart which updates its data dynamically. In this case a CPU monitor is <b>simulated</b> by generating random data from java class. The data is generated in a java Thread. The data is sent to JavaFX using a listener interface so as to update the chart. The notification is done via Event Dispatch Thread.
</p>
<p>
<b>Update: </b> Sample using live CPU and Memory information is available <a href="http://blogs.sun.com/rakeshmenonp/entry/javafx_system_monitor">here</a>.
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/LineChart/LineChart.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/LineChart/LineChart.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/LineChart/LineChart.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" align="top"></a>
</p>
<p>
Create an instance of Series to plot chart for CPU usage of user, system and idle:<br />
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">var&nbsp;cpuLineChartSeries&nbsp;:&nbsp;LineChart.Series</font><font color="#000000">[]&nbsp;</font><font color="#000000">=&nbsp;</font><font color="#000000">[</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">LineChart.Series&nbsp;</font><font color="#000000">{&nbsp;</font><font color="#000000">name:&nbsp;</font><font color="#2a00ff">&#34;User&#34;&nbsp;</font><font color="#000000">}</font><font color="#000000">,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">LineChart.Series&nbsp;</font><font color="#000000">{&nbsp;</font><font color="#000000">name:&nbsp;</font><font color="#2a00ff">&#34;System&#34;&nbsp;</font><font color="#000000">}</font><font color="#000000">,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">LineChart.Series&nbsp;</font><font color="#000000">{&nbsp;</font><font color="#000000">name:&nbsp;</font><font color="#2a00ff">&#34;Idle&#34;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">]</font><font color="#000000">;</font></code>
   </td>
</tr>
</table>
</div>
<p>
Create an instance of Chart and associate the Series with this chart:<br />
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">var&nbsp;cpuLineChart&nbsp;=&nbsp;LineChart&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">title:&nbsp;</font><font color="#2a00ff">&#34;CPU&nbsp;Monitor&#34;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">legendSide:&nbsp;Side.TOP</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">showSymbols:&nbsp;</font><font color="#7f0055"><b>false</b></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">data:&nbsp;cpuLineChartSeries</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">xAxis:&nbsp;NumberAxis&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">lowerBound:&nbsp;</font><font color="#990000">1</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">upperBound:&nbsp;</font><font color="#990000">10</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">tickUnit:&nbsp;</font><font color="#990000">1</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">label:&nbsp;</font><font color="#2a00ff">&#34;Minitues&#34;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">tickMarkLength:&nbsp;</font><font color="#990000">10</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">yAxis:&nbsp;NumberAxis&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">lowerBound:&nbsp;</font><font color="#990000">0</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">upperBound:&nbsp;</font><font color="#990000">100</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">tickUnit:&nbsp;</font><font color="#990000">20</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">label:&nbsp;</font><font color="#2a00ff">&#34;CPU&nbsp;%&#34;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">tickMarkVisible:&nbsp;</font><font color="#7f0055"><b>false</b></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">height:&nbsp;height</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">width:&nbsp;width</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
A simple <a href="/rakeshmenonp/resource/LineChart/UpdateListener_java.html">UpdateListener</a> interface is created. Which will be used to update data from java to javafx. Dummy CPU data is generated by <a href="/rakeshmenonp/resource/LineChart/CPUData_java.html">CPUData</a> class. The update is performed via Event Dispatch Thread using <a href="http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/SwingUtilities.html#invokeLater(java.lang.Runnable)">SwingUtilities.invokeLater( &lt;Runnable&gt; )</a>.
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">/**</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;Update&nbsp;listeners&nbsp;via&nbsp;Event&nbsp;Dispatch&nbsp;Thread</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*/</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">SwingUtilities.invokeLater</font><font color="#000000">(</font><font color="#7f0055"><b>new&nbsp;</b></font><font color="#000000">Runnable</font><font color="#000000">()&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>public&nbsp;</b></font><font color="#7f0055"><b>void&nbsp;</b></font><font color="#000000">run</font><font color="#000000">()&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">updateListener.updateCPU</font><font color="#000000">(</font><font color="#000000">user,&nbsp;sys,&nbsp;idle</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">})</font><font color="#000000">;</font></code>
   </td>
</tr>
</table>
</div>
<p>
This update notification is handled in the JavaFX class and we can insert the data in chart as shown below.
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>public&nbsp;</b></font><font color="#000000">override&nbsp;function&nbsp;updateCPU</font><font color="#000000">(</font><font color="#000000">user&nbsp;:&nbsp;Integer,&nbsp;sys&nbsp;:&nbsp;Integer,&nbsp;idle&nbsp;:&nbsp;Integer</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">insert&nbsp;LineChart.Data&nbsp;</font><font color="#000000">{&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">xValue:&nbsp;cpuIndex</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">yValue:&nbsp;user</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#000000">into&nbsp;cpuLineChartSeries</font><font color="#000000">[</font><font color="#990000">0</font><font color="#000000">]</font><font color="#000000">.data;</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">insert&nbsp;LineChart.Data&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">xValue:&nbsp;cpuIndex</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">yValue:&nbsp;sys</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#000000">into&nbsp;cpuLineChartSeries</font><font color="#000000">[</font><font color="#990000">1</font><font color="#000000">]</font><font color="#000000">.data;</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">insert&nbsp;LineChart.Data&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">xValue:&nbsp;cpuIndex</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">yValue:&nbsp;idle</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#000000">into&nbsp;cpuLineChartSeries</font><font color="#000000">[</font><font color="#990000">2</font><font color="#000000">]</font><font color="#000000">.data;</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">cpuIndex&nbsp;+=&nbsp;</font><font color="#990000">1</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
When the index reaches the upper-bound, we can adjust the <code>lowerBound</code> and <code>upperBound</code> attributes of X-Axis, so as to shift the chart towards left. Also we may remove the initial chart data which are not visible.
</p>
<p>
<b>Update:</b>
</p>
<p>
As noted in comments section below, there is some Memory-Leak when we try to continuously update the bounds. Updation of bounds triggers updation of ticks and Skin related code of Label. For now instead of <code>NumberAxis</code> I have used a custom <code>NoTickNumberAxis</code> which supress the tick updates.
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#7f0055"><b>class&nbsp;</b></font><font color="#000000">NoTickNumberAxis&nbsp;</font><font color="#7f0055"><b>extends&nbsp;</b></font><font color="#000000">NumberAxis&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">override&nbsp;function&nbsp;updateTickMarks</font><font color="#000000">()&nbsp;</font><font color="#000000">:&nbsp;Void&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#000000">}</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
Try it out and let me know feedback! <img src="http://blogs.sun.com/images/smileys/smile.gif" />
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/LineChart/Main_fx.html">Main.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/LineChart/CPUMonitor_fx.html">CPUMonitor.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/LineChart/UpdateListener_java.html">UpdateListener.java</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/LineChart/CPUData_java.html">CPUData.java</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/157/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=157&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/07/06/javafx-linechart/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/LineChart/LineChart.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/images/smileys/smile.gif" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; RSS and ATOM Task</title>
		<link>http://rakeshmenonp.wordpress.com/2009/06/19/javafx-rss-and-atom-task/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/06/19/javafx-rss-and-atom-task/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 03:42:31 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[atom]]></category>
		<category><![CDATA[feeds]]></category>
		<category><![CDATA[rss]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=149</guid>
		<description><![CDATA[
JavaFX 1.2 provides new APIs to handle RSS and ATOM feeds. RssTask and AtomTask parses the feeds and provide the content as JavaFX objects. It can also be configured to provide updates on regular intervals.


RssTask parses the feed and provides the content as Channel and Item objects. These objects in-turn provides other information such as [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=149&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
JavaFX 1.2 provides new APIs to handle RSS and ATOM feeds. <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.data.feed.rss/javafx.data.feed.rss.RssTask.html">RssTask</a> and <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.data.feed.atom/javafx.data.feed.atom.AtomTask.html">AtomTask</a> parses the feeds and provide the content as JavaFX objects. It can also be configured to provide updates on regular intervals.
</p>
<p>
RssTask parses the feed and provides the content as <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.data.feed.rss/javafx.data.feed.rss.Channel.html">Channel</a> and <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.data.feed.rss/javafx.data.feed.rss.Item.html">Item</a> objects. These objects in-turn provides other information such as image, link, title, category, date etc.
</p>
<p>
Similarly AtomTask parses feed and provides <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.data.feed.atom/javafx.data.feed.atom.Feed.html">Feed</a> and <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.data.feed.atom/javafx.data.feed.atom.Entry.html">Entry</a> objects. These objects in-turn provides information such as author, category, link, logo, contributors etc.
</p>
<p>
News ticker using <a href="http://rss.news.yahoo.com/rss/world">Yahoo RSS</a> feed is given below.
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/RssAtom/RssAtom.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/RssAtom/RssAtom.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/RssAtom/RssAtom.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" align="top" /></a>
</p>
<p><b>RssTask Usage:</b></p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">var&nbsp;rssTask&nbsp;=&nbsp;RssTask&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">location:&nbsp;</font><font color="#2a00ff">&#34;http://rss.news.yahoo.com/rss/world&#34;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">interval:&nbsp;</font><font color="#990000">300</font><font color="#000000">s</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onException:&nbsp;function</font><font color="#000000">(</font><font color="#000000">e</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">e.printStackTrace</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onChannel:&nbsp;function</font><font color="#000000">(</font><font color="#000000">channel</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">println</font><font color="#000000">(</font><font color="#2a00ff">&#34;{channel.title}&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onItem:&nbsp;function</font><font color="#000000">(</font><font color="#000000">item</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">println</font><font color="#000000">(</font><font color="#2a00ff">&#34;{item.title}&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#000000">}</font><br />
<font color="#000000">rssTask.start</font><font color="#000000">()</font><font color="#000000">;</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p><b>AtomTask Usage:</b></p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">var&nbsp;atomTask&nbsp;=&nbsp;AtomTask&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">location:&nbsp;</font><font color="#2a00ff">&#34;http://jfxstudio.wordpress.com/feed/atom&#34;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">interval:&nbsp;</font><font color="#990000">300</font><font color="#000000">s</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onException:&nbsp;function</font><font color="#000000">(</font><font color="#000000">e</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">e.printStackTrace</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onFeed:&nbsp;function</font><font color="#000000">(</font><font color="#000000">feed</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">println</font><font color="#000000">(</font><font color="#2a00ff">&#34;{feed.title}&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onEntry:&nbsp;function</font><font color="#000000">(</font><font color="#000000">entry</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">println</font><font color="#000000">(</font><font color="#2a00ff">&#34;{entry.title}&#34;</font><font color="#000000">)</font><font color="#000000">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#000000">}</font><br />
<font color="#000000">atomTask.start</font><font color="#000000">()</font><font color="#000000">;</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/RssAtom/Main_fx.html">Main.fx</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/149/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/149/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=149&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/06/19/javafx-rss-and-atom-task/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/RssAtom/RssAtom.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; Upload and Download Large Files</title>
		<link>http://rakeshmenonp.wordpress.com/2009/06/18/javafx-upload-and-download-large-files/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/06/18/javafx-upload-and-download-large-files/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 10:58:55 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[httprequest]]></category>
		<category><![CDATA[large]]></category>
		<category><![CDATA[upload]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=141</guid>
		<description><![CDATA[
We can upload or download large files using new HttpRequest attributes available in JavaFX 1.2.


HttpRequest has input and onInput attributes that provides InputStream which can be used to download data. This stream supports mark, reset, available, skip etc. But to support this HttpRequest buffers the data. Due to this buffering it was not possible to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=141&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
We can upload or download large files using new <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.io.http/javafx.io.http.HttpRequest.html">HttpRequest</a> attributes available in JavaFX 1.2.
</p>
<p>
HttpRequest has <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.io.http/javafx.io.http.HttpRequest.html#input">input</a> and <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.io.http/javafx.io.http.HttpRequest.html#onInput">onInput</a> attributes that provides InputStream which can be used to download data. This stream supports <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.html#mark(int)">mark</a>, <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.html#reset()">reset</a>, <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.html#available()">available</a>, <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.html#skip(long)">skip</a> etc. But to support this HttpRequest buffers the data. Due to this buffering it was not possible to use this approach to download large files.
</p>
<p>
JavaFX 1.2 introduce two new attributes &#8211; <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.io.http/javafx.io.http.HttpRequest.html#source">source</a> (<a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/InputStream.html">InputStream</a>) and <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.io.http/javafx.io.http.HttpRequest.html#sink">sink</a> (<a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/OutputStream.html">OutputStream</a>). If we set <code>sink</code> attribute, we can directly download the content of stream without buffering. Also with <code>source</code> we can upload the content. Eg: By setting it to <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/io/FileInputStream.html">FileInputStream</a>. When source or sink attribute is used, corresponding input, onInput, output, onOutput will not be functional.
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/UploadDownload/UploadDownload.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/UploadDownload/UploadDownload.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/UploadDownload/UploadDownload.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" align="top" /></a>
</p>
<p>
The application downloads a larger version of the photo. I took it from <a href="http://en.wikipedia.org/wiki/Somanathapura">Somnathpur</a> using <a href="http://en.wikipedia.org/wiki/Coolpix">Nikon Coolpix!</a> <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">function&nbsp;downloadFile</font><font color="#000000">(</font><font color="#000000">url&nbsp;,&nbsp;outputFile</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">def&nbsp;getRequest:&nbsp;HttpRequest&nbsp;=&nbsp;HttpRequest&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">location:&nbsp;url</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000"><b>sink:&nbsp;</font><font color="#7f0055"><b>new&nbsp;</b></font><font color="#000000">java.io.FileOutputStream</font><font color="#000000">(</font><font color="#000000">outputFile</font><font color="#000000">)</b></font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onToRead:&nbsp;function</font><font color="#000000">(</font><font color="#000000">bytes:&nbsp;Long</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">toRead&nbsp;=&nbsp;bytes;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">println</font><font color="#000000">(</font><font color="#2a00ff">&#34;onToRead({bytes})&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onRead:&nbsp;function</font><font color="#000000">(</font><font color="#000000">bytes:&nbsp;Long</font><font color="#000000">)&nbsp;{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">read&nbsp;=&nbsp;bytes;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">println</font><font color="#000000">(</font><font color="#2a00ff">&#34;onRead&nbsp;-&nbsp;{read&nbsp;*&nbsp;100/toRead}%&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">onDone:&nbsp;function</font><font color="#000000">()&nbsp;{&nbsp;</font><font color="#000000">println</font><font color="#000000">(</font><font color="#2a00ff">&#34;onDone&#34;</font><font color="#000000">)&nbsp;}</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff"></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">getRequest.start</font><font color="#000000">()</font><font color="#000000">;</font><br />
<font color="#000000">}</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
In above sample, <code>sink</code> is assigned to a <code>FileOutputStream</code>. So all the content will be directly written to file without buffering. Note: For making the application compatible with mobile or other platforms we will have to use only subset of <code>java.io</code> package. Example: <a href="http://java.sun.com/javame/reference/apis/jsr118/java/io/package-summary.html">MID Profile Core API</a>.
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/UploadDownload/Main_fx.html">Main.fx</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/141/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/141/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/141/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=141&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/06/18/javafx-upload-and-download-large-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/UploadDownload/UploadDownload.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; Color Picker</title>
		<link>http://rakeshmenonp.wordpress.com/2009/06/12/javafx-color-picker/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/06/12/javafx-color-picker/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 15:30:19 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[color]]></category>
		<category><![CDATA[colorchooser]]></category>
		<category><![CDATA[colorpicker]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=138</guid>
		<description><![CDATA[
Simple JavaFX Color-Picker control. I have provided similar controls before as part of blog and sample but this one can be easily incorporated into other products.





For Applet mode, click on above image


For standalone mode 


The control can be instantiated and added just like any other node using layout or translate.
Try it out and let me [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=138&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
Simple JavaFX Color-Picker control. I have provided similar controls before as part of <a href="http://blogs.sun.com/rakeshmenonp/entry/javafx_color_chooser">blog</a> and <a href="http://javafx.com/samples/ColorChooser/">sample</a> but this one can be easily incorporated into other products.
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/ColorPicker.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/ColorPicker.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/ColorPicker.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" /></a>
</p>
<p>
The control can be instantiated and added just like any other node using layout or translate.<br />
Try it out and let me know feedback.
</p>
<p>
<b>Coming up next &#8211; Date-Picker!</b> <img src="http://blogs.sun.com/images/smileys/smile.gif" />
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/Main_fx.html">Main.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/ColorPicker_fx.html">ColorPicker.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/ColorPalette_fx.html">ColorPalette.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/Cell_fx.html">Cell.fx</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/138/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/138/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/138/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=138&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/06/12/javafx-color-picker/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/ColorPicker/ColorPicker.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/images/smileys/smile.gif" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; Passing Arguments</title>
		<link>http://rakeshmenonp.wordpress.com/2009/06/11/javafx-passing-arguments/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/06/11/javafx-passing-arguments/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 10:17:01 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[arguments]]></category>
		<category><![CDATA[passing]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=135</guid>
		<description><![CDATA[
I received a query on how to pass arguments in JavaFX. It basically depends on how we deploy the application. The application can be deployed using JavaWebStart, as an applet or launched from command line.


Lets take a simple application..





    
var&#160;text&#160;=&#160;Text&#160;{
&#160;&#160;&#160;&#160;x:&#160;10,&#160;y:&#160;30
&#160;&#160;&#160;&#160;font&#160;:&#160;Font&#160;{&#160;size&#160;:&#160;16&#160;}
&#160;&#160;&#160;&#160;content:&#160;&#34;Argument&#160;{FX.getArgument( &#34;key&#34; )}&#34;
}

   




The argument is passed as key-value pair. The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=135&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
I received a query on how to pass arguments in JavaFX. It basically depends on how we deploy the application. The application can be deployed using JavaWebStart, as an applet or launched from command line.
</p>
<p>
Lets take a simple application..
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">var&nbsp;text&nbsp;=&nbsp;Text&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">x:&nbsp;</font><font color="#990000">10</font><font color="#000000">,&nbsp;y:&nbsp;</font><font color="#990000">30</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">font&nbsp;:&nbsp;Font&nbsp;</font><font color="#000000">{&nbsp;</font><font color="#000000">size&nbsp;:&nbsp;</font><font color="#990000">16&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">content:&nbsp;</font><font color="#2a00ff">&#34;Argument&nbsp;{<b>FX.getArgument( &#34;</font><font color="#000000">key</font><font color="#2a00ff">&#34; )</b>}&#34;</font><br />
<font color="#000000">}</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
The argument is passed as key-value pair. The value is retrieved using <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.lang/javafx.lang.FX.html">FX.getArgument( &lt;key&gt; )</a> method. Arguments can be passed to various deployment modes as shown below.
</p>
<p>
<b>Command Line:</b><br />
<img src="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/command_line.jpg" />
</p>
<p>
<code><br />
javafx -cp FXArguments.jar fxarguments.Main <b>key="From Command Line"</b><br />
</code>
</p>
<p></p>
<p>
<b>Applet:</b><br />
<img src="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/applet.jpg" />
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">&lt;script&nbsp;src=</font><font color="#2a00ff">&#34;http://dl.javafx.com/1.2/dtfx.js&#34;</font><font color="#000000">&gt;&lt;/script&gt;</font><br />
<font color="#000000">&lt;script&gt;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">javafx</font><font color="#000000">(</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">archive:&nbsp;</font><font color="#2a00ff">&#34;FXArguments.jar&#34;</font><font color="#000000">,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">draggable:&nbsp;true,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">width:&nbsp;</font><font color="#990000">250</font><font color="#000000">,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">height:&nbsp;</font><font color="#990000">80</font><font color="#000000">,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">code:&nbsp;</font><font color="#2a00ff">&#34;fxarguments.Main&#34;</font><font color="#000000">,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">name:&nbsp;</font><font color="#2a00ff">&#34;FXArguments&#34;</font><font color="#000000">,</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000"><b>key:&nbsp;</font><font color="#2a00ff">&#34;from&nbsp;Applet&#34;</b></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<font color="#000000">&lt;/script&gt;</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/FXArguments.html">Launch Applet Example</a>
</p>
<p></p>
<p>
<b>Java Web Start:</b><br />
<img src="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/javaws.jpg" />
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">&lt;jnlp&nbsp;spec=</font><font color="#2a00ff">&#34;1.0+&#34;&nbsp;</font><font color="#000000">codebase=</font><font color="#2a00ff">&#34;dist&#34;&nbsp;</font><font color="#000000">href=</font><font color="#2a00ff">&#34;FXArguments.jnlp&#34;</font><font color="#000000">&gt;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">&lt;application-desc&nbsp;main-</font><font color="#7f0055"><b>class</b></font><font color="#000000">=</font><font color="#2a00ff">&#34;com.sun.javafx.runtime.main.Main&#34;</font><font color="#000000">&gt;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">&lt;argument&gt;MainJavaFXScript=fxarguments.Main&lt;/argument&gt;</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000"><b>&lt;argument&gt;key=from&nbsp;Java&nbsp;Web&nbsp;Start&lt;/argument&gt;</b></font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">&lt;/application-desc&gt;</font><br />
<font color="#000000">&lt;/jnlp&gt;</font><br />
</code>
   </td>
</tr>
</table>
</div>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/FXArguments.jnlp">Launch Web Start Example</a>
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/Main_fx.html">Main.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/FXArguments_jnlp.html">FXArguments.jnlp</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/FXArguments_html.html">FXArguments.html</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/135/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/135/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/135/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=135&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/06/11/javafx-passing-arguments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/command_line.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/applet.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/FXArguments/javaws.jpg" medium="image" />
	</item>
		<item>
		<title>JavaFX + Yahoo Placemaker + Maps</title>
		<link>http://rakeshmenonp.wordpress.com/2009/06/10/javafx-yahoo-placemaker-maps/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/06/10/javafx-yahoo-placemaker-maps/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 16:23:23 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[maps]]></category>
		<category><![CDATA[placemaker]]></category>
		<category><![CDATA[webservices]]></category>
		<category><![CDATA[yahoo]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=128</guid>
		<description><![CDATA[
I have my travel itinerary or a document with list of cities, such as Seven Wonders of the World. I would like to retrieve the list of cities and the location information associated with it. How to do this??


Yahoo! released new Yahoo! Placemaker APIs. These APIs search for name of places in plain text document [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=128&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
I have my travel itinerary or a document with list of cities, such as <a href="http://en.wikipedia.org/wiki/Wonders_of_the_World">Seven Wonders of the World</a>. I would like to retrieve the list of cities and the location information associated with it. How to do this??
</p>
<p>
Yahoo! released new <a href="http://developer.yahoo.com/geo/placemaker/guide/index.html">Yahoo! Placemaker</a> APIs. These APIs search for name of places in plain text document and returns the latitude and longitude associated with the place. You can either provide a text or a URL as input to the API. The output can be obtained in XML or RSS format.
</p>
<p>
Combine above information with <a href="http://developer.yahoo.com/maps/">Yahoo! Maps</a> will return the maps associated with all places mentioned in specified document! Itn&#8217;t that cool?! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
</p>
<p>
<a href="http://www.java.com/en/store/index.jsp"><br />
<img src="http://blogs.sun.com/rakeshmenonp/resource/images/javafx_store.png" /><br />
</a><br />
May be I must write more applications and publish at Java-Store! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/PlaceList/PlaceList.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/PlaceList/PlaceList.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/PlaceList/PlaceList.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" /></a>
</p>
<p>
In above application we provide a URL which the <a href="http://developer.yahoo.com/geo/placemaker/guide/api_docs.html">Placemaker API</a> will parse and returns the list of places. This information is given to <a href="http://developer.yahoo.com/maps/rest/V1/">Map Image API</a> to retrieve the image. Any valid http URL can be provided as input. There is currently a 50 kbs limit for documents processed by Placemaker. Documents above this length are rejected and returns status 413. Please enter a new URL in textfield and press enter to load new places.
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/PlaceList/Main_fx.html">Main.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/PlaceList/Place_fx.html">Place.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/PlaceList/XMLParser_fx.html">XMLParser.fx</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/128/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/128/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/128/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=128&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/06/10/javafx-yahoo-placemaker-maps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/javafx_store.png" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/PlaceList/PlaceList.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; Skinnable Controls</title>
		<link>http://rakeshmenonp.wordpress.com/2009/06/10/javafx-skinnable-controls/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/06/10/javafx-skinnable-controls/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 08:24:59 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[controls]]></category>
		<category><![CDATA[skin]]></category>
		<category><![CDATA[skinnable]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=120</guid>
		<description><![CDATA[
Its long time since I blogged and lot of things happened during that time &#8211; Release of JavaFX 1.2, Java Store, New Samples&#8230; and lot more to write about!   Let me start with UI Controls&#8230;


Following are some of the UI controls &#8211; Button, CheckBox, Hyperlink, Label, ListView, ProgressBar, ProgressIndicator, RadioButton, ScrollBar, Slider, TextBox, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=120&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
Its long time since I blogged and lot of things happened during that time &#8211; <a href="http://javafx.com/docs/articles/javafx1-2.jsp">Release of JavaFX 1.2</a>, <a href="http://www.java.com/en/store/index.jsp">Java Store</a>, <a href="http://javafx.com/samples/">New Samples</a>&#8230; and lot more to write about! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Let me start with <a href="http://javafx.com/docs/articles/controls/">UI Controls</a>&#8230;
</p>
<p>
Following are some of the UI controls &#8211; <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Button.html"><code>Button</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.CheckBox.html"><code>CheckBox</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Hyperlink.html"><code>Hyperlink</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Label.html"><code>Label</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.ListView.html"><code>ListView</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.ProgressBar.html"><code>ProgressBar</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.ProgressIndicator.html"><code>ProgressIndicator</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.RadioButton.html"><code>RadioButton</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.ScrollBar.html"><code>ScrollBar</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Slider.html"><code>Slider</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.TextBox.html"><code>TextBox</code></a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.ToggleButton.html"><code>ToggleButton</code></a>
</p>
<p><div id="ControlSkinApplet" style="text-align:left;"><a href="http://blogs.sun.com/rakeshmenonp/resource/ControlSkin/ControlSkin.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/ControlSkin/ControlSkin.jpg"></a></div>
</p>
<p>
The article on <a href="http://javafx.com/docs/articles/controls/">Node-Based Controls</a> demonstrates its usage. So let me focus on how to update the skin of these controls.
</p>
<p>
The <b><code>skin</code></b> attribute of <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Control.html">Control</a> class allows you to associate a <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Skin.html">Skin</a>. The <code>Skin</code> is responsible for implementing the user interface using on scene-graph nodes and defining the <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Behavior.html">behavior</a> of the control. The <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Behavior.html">Behavior</a> has the logic for handling key and mouse events.
</p>
<p>
Sounds complicated? confused? <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Control.html">Control</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Skin.html">Skin</a>, <a href="http://java.sun.com/javafx/1.2/docs/api/javafx.scene.control/javafx.scene.control.Behavior.html">Behavior</a>.. For now lets look at a simple and straight forward way to just change the color and some basic attributes of Skin.
</p>
<p>
JavaFX already has a default skin implementation &#8211; <b>Caspian</b>. Its in <code>com.sun.javafx.scene.control.caspian</code> package. For each control, there is corresponding skin implementation. We can change few attributes of these skin implementations and customize the look of controls.
</p>
<p>
Example: To update skin of Button, we can customize the attributes of ButtonSkin implementation.
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">var&nbsp;button&nbsp;=&nbsp;Button&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">text:&nbsp;</font><font color="#2a00ff">&#34;Button&#34;</font><br /><b><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">skin:&nbsp;ButtonSkin&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">borderFill:&nbsp;Color.BLACK</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">focusFill:&nbsp;Color.BLUE</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">highlightFill:&nbsp;Color.GREEN</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">shadowFill:&nbsp;Color.GRAY</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">textFill:&nbsp;Color.RED</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">fill:&nbsp;Color.WHITE</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br /></b><br />
<font color="#000000">}</font><br />
    </code>
   </td>
</table>
</div>
<p>
Similarly a TextBox can be customized as shown below:
</p>
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
<tr>
<td nowrap="nowrap" valign="top" align="left">
    <code><br />
<font color="#000000">var&nbsp;textBox&nbsp;=&nbsp;TextBox&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">text:&nbsp;</font><font color="#2a00ff">&#34;TextBox&#34;</font><br /><b><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">skin:&nbsp;TextBoxSkin&nbsp;</font><font color="#000000">{</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">backgroundFill:&nbsp;Color.YELLOW</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">borderFill:&nbsp;Color.BLACK</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">caretFill:&nbsp;Color.BLUE</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">focusFill:&nbsp;Color.BEIGE</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">highlightFill:&nbsp;Color.BLUE</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">promptTextFill:&nbsp;Color.GRAY</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">selectedTextFill:&nbsp;Color.WHITE</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">shadowFill:&nbsp;Color.DARKGRAY</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">textFill:&nbsp;Color.BLACK</font><br />
<font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br /></b><br />
<font color="#000000">}</font><br />
    </code>
   </td>
</table>
</div>
<p>
More attributes and implementation is available in the source.<br />
Try it out and let me know feedback! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/ControlSkin/Main_fx.html">Main.fx</a></li>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/ControlSkin/SkinPalette_fx.html">SkinPalette.fx</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/120/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/120/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/120/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=120&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/06/10/javafx-skinnable-controls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/ControlSkin/ControlSkin.jpg" medium="image" />
	</item>
		<item>
		<title>JavaFX &#8211; Fish Eye Menu</title>
		<link>http://rakeshmenonp.wordpress.com/2009/05/06/javafx-fish-eye-menu/</link>
		<comments>http://rakeshmenonp.wordpress.com/2009/05/06/javafx-fish-eye-menu/#comments</comments>
		<pubDate>Wed, 06 May 2009 10:27:39 +0000</pubDate>
		<dc:creator>Rakesh Menon</dc:creator>
				<category><![CDATA[javafx]]></category>
		<category><![CDATA[fish eye menu]]></category>

		<guid isPermaLink="false">http://rakeshmenonp.wordpress.com/?p=116</guid>
		<description><![CDATA[
I came across a nice comparison of Fish-Eye-Menu in Flash and Silverlight. Looks Cool! So thought of writing one in JavaFX and compare..





For Applet mode, click on above image


For standalone mode 


So how much time did it take to implement it in JavaFX? 
Any guess?! 


Source:

Main.fx

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=116&subd=rakeshmenonp&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>
I came across a nice comparison of <a href="http://www.shinedraw.com/animation-effect/flash-and-silverlight-fish-eye-menu/">Fish-Eye-Menu in Flash and Silverlight</a>. Looks Cool! So thought of writing one in JavaFX and compare..
</p>
<p>
<a href="http://blogs.sun.com/rakeshmenonp/resource/FishEyeMenu/FishEyeMenu.html"><img src="http://blogs.sun.com/rakeshmenonp/resource/FishEyeMenu/FishEyeMenu.jpg" /></a>
</p>
<p>
For Applet mode, click on above image
</p>
<p>
For standalone mode <a href="http://blogs.sun.com/rakeshmenonp/resource/FishEyeMenu/FishEyeMenu.jnlp"><img src="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg"></a>
</p>
<p>
So how much time did it take to implement it in JavaFX? <br />
Any guess?! <img src="http://blogs.sun.com/images/smileys/smile.gif" />
</p>
<p>
<b>Source:</b></p>
<ul>
<li><a href="http://blogs.sun.com/rakeshmenonp/resource/FishEyeMenu/Main_fx.html">Main.fx</a></li>
</ul>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rakeshmenonp.wordpress.com/116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rakeshmenonp.wordpress.com/116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/rakeshmenonp.wordpress.com/116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/rakeshmenonp.wordpress.com/116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/rakeshmenonp.wordpress.com/116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/rakeshmenonp.wordpress.com/116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/rakeshmenonp.wordpress.com/116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/rakeshmenonp.wordpress.com/116/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/rakeshmenonp.wordpress.com/116/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/rakeshmenonp.wordpress.com/116/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rakeshmenonp.wordpress.com&blog=6792540&post=116&subd=rakeshmenonp&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://rakeshmenonp.wordpress.com/2009/05/06/javafx-fish-eye-menu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/2698941d353dbc9bcec4a52ce47e0c25?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Rakesh Menon</media:title>
		</media:content>

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/FishEyeMenu/FishEyeMenu.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/rakeshmenonp/resource/images/jws-launch-button.jpg" medium="image" />

		<media:content url="http://blogs.sun.com/images/smileys/smile.gif" medium="image" />
	</item>
	</channel>
</rss>