<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
    <title>James Weaver’s JavaFX Blog</title>
    
    <link rel="hub" href="http://hubbub.api.typepad.com/" />
    <link rel="alternate" type="text/html" href="http://learnjavafx.typepad.com/weblog/" />
    <id>tag:typepad.com,2003:weblog-1470928</id>
    <updated>2009-11-05T18:35:22-05:00</updated>
    <subtitle>Helping You Become a JavaFXpert</subtitle>
    <generator uri="http://www.typepad.com/">TypePad</generator>
    <link rel="self" href="http://feeds.feedburner.com/JamesWeaversJavafxBlog" type="application/atom+xml" /><feedburner:emailServiceId>JamesWeaversJavafxBlog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry>
        <title>Win atom and bit-based Pro JavaFX books at Øredev 2009 RIA session Fri 3:35pm CET</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/rb5yV4BcpQw/win-atom-and-bitbased-pro-javafx-books-at-%C3%B8redev-2009-ria-session-fri-335pm-cet.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/11/win-atom-and-bitbased-pro-javafx-books-at-%C3%B8redev-2009-ria-session-fri-335pm-cet.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a654c0c7970b</id>
        <published>2009-11-05T18:35:22-05:00</published>
        <updated>2009-11-05T19:39:07-05:00</updated>
        <summary>Readers of this blog know that I like to hold contests to make things fun and encourage participation (e.g. see the 2000 USD JavaFXpert RIA Exemplar Challenge that ends 10 January, 2010). In keeping with that sentiment, some JavaFX questions relevant to my presentation will be tweeted by @projavafxcourse to the twitterverse during the Øredev 2009 RIA Enterprise Application Developing...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Cool JavaFX Stuff" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Educational JavaFX Script Apps" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Games" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Script" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="WidgetFX" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;Readers of this blog know that I like to hold contests to make things fun and encourage participation (e.g. see the 2000 USD &lt;a href="http://learnjavafx.typepad.com/weblog/2009/10/announcing-the-javafxpert-ria-exemplar-challenge.html" target="_blank"&gt;JavaFXpert RIA Exemplar Challenge&lt;/a&gt; that ends 10 January, 2010).  In keeping with that sentiment, some JavaFX questions relevant to my presentation will be tweeted by @projavafxcourse to the twitterverse during the Øredev 2009 &lt;a href="http://oredev.org/prod/oredev/site.nsf/docsbycodename/session?opendocument&amp;amp;sid=9064116B90A66149C125760800563019&amp;amp;day=5&amp;amp;track=E92AC6A14535633BC12575A5004943A0" target="_blank"&gt;RIA Enterprise Application Developing with JavaFX&lt;/a&gt; session.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a6aa2750970c-pi" style="display: inline;"&gt;&lt;img alt="Oredev-javafx-contest" class="asset asset-image at-xid-6a00e54f133d6988340120a6aa2750970c " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a6aa2750970c-500wi"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br&gt; &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;The seven people that earn the highest scores by tweeting fast, correct, answers to these questions will each win a copy of the &lt;a href="http://projavafx.com" target="_blank"&gt;Pro JavaFX book&lt;/a&gt;.  Six of these books will be composed of bits (e-books), and one will be composed of atoms.  The atom-based book is reserved for the person with the highest score of those present in the audience, but the e-books will be awarded (via an emailed Apress coupon) to the winners regardless on their location during the session.  This session starts on Friday,  November 6 at 3:35pm CET, lasting until 4:25pm, so please have your Twitter client ready.  When you tweet an answer, be sure to reply to the original tweet with your answer.  &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;On a technical note, all correct answers consist of one word or character, and the software that checks for a correct answer trims the spaces from the end of the reply and then uses the string found between the final space and the end of the reply.  So, if you want to put other words in your reply, presumably to give your followers a clue about what your terse message is, just make sure that your answer is at the end of your response.  For example, you might reply to the question: &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;The name of the layout class that arranges UI nodes horizontally is ____&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;with this message:&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Answering a JavaFXpert presentation question with HBox&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt; &lt;a href="http://jmentor.com/LearnFXWidget/LearnFX.jnlp" style="float: left;"&gt;&lt;img alt="Brain_blue_32" border="0" class="asset asset-image at-xid-6a00e54f133d6988340120a6585676970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a6585676970b-800wi" style="margin: 0px 5px 5px 0px;" title="Brain_blue_32"&gt;&lt;/img&gt;&lt;/a&gt; If you want to use an application that I'm developing for the purpose of responding to these questions, please make sure that you have a recent version (update 14 or later) of Java SE 6 and click the LearnFX icon over on the left.  &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;When the application starts up, the most recent question is displayed as shown in the screenshot below.  If the question is still active (i.e. the answer has not been revealed), then the text box will be enabled, allowing you to enter an answer and click the Send button or press the Enter key.  Responses that have been received appear as well, along with the the Twitter profile image, screen name, and indication of whether the question is correct (if the answer has been revealed -- if not, a question mark will be displayed).&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;   &lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a6aa69de970c-pi" style="display: inline;"&gt;&lt;img alt="LearnFX-ss" border="0" class="asset asset-image at-xid-6a00e54f133d6988340120a6aa69de970c " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a6aa69de970c-800wi" title="LearnFX-ss"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;The first time that you run the application, you'll need to click the configuration icon to open the configuration dialog shown below, in which you can enter your Twitter screen name and password, as well as some preferences.  This information is stored on your local machine, and automatically loaded on subsequent invocations of the application.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a65500aa970b-pi" style="display: inline;"&gt;&lt;img alt="LearnFX-Config-ss" border="0" class="asset asset-image at-xid-6a00e54f133d6988340120a65500aa970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a65500aa970b-800wi" title="LearnFX-Config-ss"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br&gt; &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Until the contest begins, there is a sample question available if you&#xD;
wish to give this application a try before the real questions begin&#xD;
appearing.  By the way, when you use the LearnFX client, your tweet is a reply to the projavafxcourse user, and the message contains the following with the question ID, and answer that you supply, added to the end:&lt;/p&gt;&lt;p&gt;@projavafxcourse Answering JavaFXpert question http://bit.ly/2dn1kK &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;The bit.ly link in the message may be clicked by your followers to see what your strange tweet is about :-)&lt;/p&gt;&lt;p&gt;There is a WidgetFX version of this application in the works that I'll release and blog about in a subsequent post.  By the way, I'd like to publicly thank &lt;a href="http://blogs.herod.net/steven/" target="_blank"&gt;Steven Herod&lt;/a&gt; for the Twitter API this application uses, which he donated to the open source &lt;a href="http://jfxtras.org" target="_blank"&gt;JFXtras&lt;/a&gt; project.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Regards, and good luck!  Please leave a comment if you have any questions,&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Jim Weaver&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=rb5yV4BcpQw:Mtn1IN3sOi8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=rb5yV4BcpQw:Mtn1IN3sOi8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=rb5yV4BcpQw:Mtn1IN3sOi8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=rb5yV4BcpQw:Mtn1IN3sOi8:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=rb5yV4BcpQw:Mtn1IN3sOi8:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=rb5yV4BcpQw:Mtn1IN3sOi8:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=rb5yV4BcpQw:Mtn1IN3sOi8:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/rb5yV4BcpQw" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/11/win-atom-and-bitbased-pro-javafx-books-at-%C3%B8redev-2009-ria-session-fri-335pm-cet.html</feedburner:origLink></entry>
    <entry>
        <title>Music Explorer FX *Mobile Edition* by Sten Anderson</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/mE6NaZUsx8E/music-explorer-fx-mobile-edition-by-sten-anderson.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/10/music-explorer-fx-mobile-edition-by-sten-anderson.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a6084a52970b</id>
        <published>2009-10-20T16:59:45-04:00</published>
        <updated>2009-10-20T17:14:23-04:00</updated>
        <summary>Sten Anderson, winner of the Sun JavaFX Coding Challenge with his Music Explorer FX app, has just released a version for JavaFX Mobile. Sten donated the source code to the JFXtras project, and has provided a write-up in his blog which includes a Java Web Start link. Music Explorer FX Mobile Edition is a great resource/reference for creating JavaFX Mobile...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Cool JavaFX Stuff" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Mobile" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JFXtras" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;Sten Anderson, winner of the Sun JavaFX Coding Challenge with his &lt;a href="http://learnjavafx.typepad.com/weblog/2009/07/sten-anderson-wins-the-javafx-coding-challenge-with-a-rockin-app.html" target="_blank"&gt;Music Explorer FX app&lt;/a&gt;, has just released a version for JavaFX Mobile.  Sten donated the &lt;a href="http://jfxtras.org/portal/samples/all?p_p_id=101_INSTANCE_1Bl5&amp;amp;p_p_lifecycle=0&amp;amp;p_p_state=normal&amp;amp;p_p_mode=view&amp;amp;p_p_col_id=column-2&amp;amp;p_p_col_pos=1&amp;amp;p_p_col_count=2&amp;amp;_101_INSTANCE_1Bl5_struts_action=%2Fasset_publisher%2Fview_content&amp;amp;_101_INSTANCE_1Bl5_urlTitle=music-explorer-fx-mobile-edition&amp;amp;_101_INSTANCE_1Bl5_type=content&amp;amp;redirect=%2Fportal%2Fsamples%2Fall%3Fp_p_id%3D101_INSTANCE_1Bl5%26p_p_lifecycle%3D0%26p_p_state%3Dnormal%26p_p_mode%3Dview%26p_p_col_id%3Dcolumn-2%26p_p_col_pos%3D1%26p_p_col_count%3D2%26_101_INSTANCE_1Bl5_delta%3D15%26_101_INSTANCE_1Bl5_keywords%3D%26_101_INSTANCE_1Bl5_advancedSearch%3Dfalse%26_101_INSTANCE_1Bl5_andOperator%3Dtrue%26_101_INSTANCE_1Bl5_cur%3D3" target="_blank"&gt;source code to the JFXtras project&lt;/a&gt;, and has provided a &lt;a href="http://blogs.citytechinc.com/sanderson/?p=168" target="_blank"&gt;write-up in his blog&lt;/a&gt; which includes a Java Web Start link.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;a href="http://blogs.citytechinc.com/sanderson/?p=168" style="display: inline;" target="_blank"&gt;&lt;img alt="MEFX_Similar" border="0" class="asset asset-image at-xid-6a00e54f133d6988340120a6084953970b image-full " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a6084953970b-800wi" title="MEFX_Similar"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br&gt; &lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Music Explorer FX Mobile Edition is a great resource/reference for creating JavaFX Mobile apps, so check it out!&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Enjoy, and thanks Sten,&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Jim Weaver&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=mE6NaZUsx8E:pODZCLHS1t0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=mE6NaZUsx8E:pODZCLHS1t0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=mE6NaZUsx8E:pODZCLHS1t0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=mE6NaZUsx8E:pODZCLHS1t0:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=mE6NaZUsx8E:pODZCLHS1t0:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=mE6NaZUsx8E:pODZCLHS1t0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=mE6NaZUsx8E:pODZCLHS1t0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/mE6NaZUsx8E" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/10/music-explorer-fx-mobile-edition-by-sten-anderson.html</feedburner:origLink></entry>
    <entry>
        <title>The RIA Exemplar Challenge Mötley Judging Crüe</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/CBKCWYgMt4c/the-ria-exemplar-challenge-m%C3%B6tley-judging-cr%C3%BCe.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/10/the-ria-exemplar-challenge-m%C3%B6tley-judging-cr%C3%BCe.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a632cc42970c</id>
        <published>2009-10-12T10:22:04-04:00</published>
        <updated>2009-10-13T15:22:52-04:00</updated>
        <summary>In the JavaFXpert RIA Exemplar Challenge announcement, I stated that the graphic design judge would be chosen and disclosed soon. I am pleased to say that there will actually be two very high-caliber graphic design judges for this contest: Jasper Potts and Romain Guy. As if these guys needed an introduction: Jasper Potts is a developer on the JavaFX &amp;...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX - General" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFXpert RIA Exemplar Challenge" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Multi-tier JavaFX Script Apps" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;p&gt;&lt;span style="font-size: 14px;"&gt;In the &lt;a href="http://learnjavafx.typepad.com/weblog/2009/10/announcing-the-javafxpert-ria-exemplar-challenge.html" target="_blank"&gt;JavaFXpert RIA Exemplar Challenge announcement&lt;/a&gt;, I stated that the graphic design judge would be chosen and disclosed soon.  I am pleased to say that there will actually be two very high-caliber graphic design judges for this contest: Jasper Potts and Romain Guy.  As if these guys needed an introduction:&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;strong&gt; &lt;br&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;strong&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5dc797b970b-pi" style="float: left;"&gt;&lt;img alt="Jasper-potts" class="asset asset-image at-xid-6a00e54f133d6988340120a5dc797b970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5dc797b970b-120wi" style="margin: 0px 5px 5px 0px;"&gt;&lt;/img&gt;&lt;/a&gt; Jasper Potts&lt;/strong&gt; is a developer on the JavaFX &amp;amp; Swing teams at Sun Microsystems, and lives in Bath, UK. He is currently working on the new JavaFX UI controls and graphics frameworks, and was the bloke that created the JavaFX Charts API.  Jasper, and Richard Bair, have an excellent JavaFX blog at &lt;a href="http://fxexperience.com" target="_blank"&gt;fxexperience.com&lt;/a&gt;, where Jasper has already begun providing &lt;a href="http://fxexperience.com/2009/10/win-2000-in-ria-exemplar-challenge/" target="_blank"&gt;tips for the RIA Exemplar Challenge participants&lt;/a&gt;.&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;/span&gt;&lt;span style="font-size: 14px;"&gt; &lt;strong&gt;&lt;br&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;strong&gt;&lt;br&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;strong&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5dc7ae7970b-pi" style="float: left;"&gt;&lt;img alt="Romain-guy" class="asset asset-image at-xid-6a00e54f133d6988340120a5dc7ae7970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5dc7ae7970b-120wi" style="margin: 0px 5px 5px 0px;"&gt;&lt;/img&gt;&lt;/a&gt; Romain Guy&lt;/strong&gt; is the co-author of the ground-breaking &lt;a href="http://filthyrichclients.org/" target="_blank"&gt;Filthy Rich Clients book&lt;/a&gt;, and is a user interface toolkit engineer at Google on the Android project. Romain lives in San Francisco, California, and has a blog named &lt;a href="http://www.curious-creature.org/" target="_blank"&gt;Curious Creature&lt;/a&gt; that contains some stunning photographs, very recently of the Colorado River at sunset.  He also has a "French, goofier version of Curious Creature" named &lt;a href="http://www.progx.org/"&gt;#ProgX&lt;/a&gt;.&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;/span&gt;&lt;span style="font-size: 14px;"&gt; &lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a63316c3970c-pi" style="float: left;"&gt;&lt;img alt="Steve-chin" class="asset asset-image at-xid-6a00e54f133d6988340120a63316c3970c " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a63316c3970c-120wi" style="margin: 0px 5px 5px 0px;"&gt;&lt;/img&gt;&lt;/a&gt; &lt;strong&gt;Stephen Chin&lt;/strong&gt;, a&lt;/span&gt;&lt;span style="font-size: 14px;"&gt; &lt;a href="http://projavafx.com" target="_blank"&gt;Pro JavaFX book&lt;/a&gt; co-author, &lt;/span&gt;&lt;span style="font-size: 14px;"&gt;is going to help me judge the RIA Exemplar Challenge entries from a developer perspective.  Stephen is the leader (with Keith Combs), of the WidgetFX and JFXtras projects.  Stephen is very active in the leadership of the JavaFX community, having recently founded the &lt;a href="http://www.svjugfx.org/" target="_blank"&gt;Silicon Valley JavaFX User Group&lt;/a&gt;, and has a JavaFX/Java blog at &lt;a href="http://steveonjava.com" target="_blank"&gt;steveonjava.com&lt;/a&gt;.&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;All three are internationally recognized experts and speakers, and I am very pleased to have them help me judge the &lt;a href="http://learnjavafx.typepad.com/weblog/2009/10/announcing-the-javafxpert-ria-exemplar-challenge.html" target="_blank"&gt;RIA Exemplar Challenge&lt;/a&gt;.  Please be sure and enter the challenge!&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;Regards,&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 14px;"&gt;&lt;/span&gt;&lt;span style="font-size: 14px;"&gt;Jim Weaver&lt;/span&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=CBKCWYgMt4c:SaOZYiLkQIU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=CBKCWYgMt4c:SaOZYiLkQIU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=CBKCWYgMt4c:SaOZYiLkQIU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=CBKCWYgMt4c:SaOZYiLkQIU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=CBKCWYgMt4c:SaOZYiLkQIU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=CBKCWYgMt4c:SaOZYiLkQIU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=CBKCWYgMt4c:SaOZYiLkQIU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/CBKCWYgMt4c" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/10/the-ria-exemplar-challenge-m%C3%B6tley-judging-cr%C3%BCe.html</feedburner:origLink></entry>
    <entry>
        <title>Announcing the JavaFXpert RIA Exemplar Challenge</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/m0d9EDbrkq8/announcing-the-javafxpert-ria-exemplar-challenge.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/10/announcing-the-javafxpert-ria-exemplar-challenge.html" thr:count="12" thr:updated="2009-10-21T05:55:47-04:00" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a628f1cc970c</id>
        <published>2009-10-09T10:29:50-04:00</published>
        <updated>2009-10-21T05:57:59-04:00</updated>
        <summary>I posed the question "Should There be Enterprise RIA Style Guidelines?" in late 2008, and received some valuable feedback/discussion. Based upon that feedback, I'm replacing my question with the following challenge: "Create an application in JavaFX that exemplifies the appearance and behavior of a next-generation enterprise RIA (rich internet application)". Here are the rules to this JavaFXpert RIA Exemplar Challenge:...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFXpert RIA Exemplar Challenge" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;I posed the question "&lt;a href="http://java.dzone.com/articles/should-there-be-enterprise-ria" target="_blank"&gt;Should There be Enterprise RIA Style Guidelines?&lt;/a&gt;" in late 2008, and received some valuable feedback/discussion.  Based upon that feedback, I'm replacing my question with the following challenge:&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;"Create an application in JavaFX that exemplifies the appearance and behavior of a next-generation enterprise RIA (rich internet application)"&lt;/strong&gt;&lt;/em&gt;.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Here are the rules to this &lt;strong&gt;JavaFXpert RIA Exemplar Challenge&lt;/strong&gt;:&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;1) Each application must be created in JavaFX by a team consisting of two participants: A graphic designer, and an application developer.  Both participants on the winning team will be recognized, and will share the prize.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;2) The code must be offered as open source, in the form of the &lt;a href="http://www.opensource.org/licenses/bsd-license.php" target="_blank"&gt;updated Berkeley Software Distribution License&lt;/a&gt;.  The code for the winning entry will be added to the open source &lt;a href="http://jfxtras.org" target="_blank"&gt;JFXtras project&lt;/a&gt; samples library.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;3) The entries must be submitted in the form of a NetBeans or an Eclipse project by 00:00 GMT on 10 January 2010.  I'll provide an email address for submissions soon.  The &lt;a href="http://learnjavafx.typepad.com/weblog/2009/10/the-ria-exemplar-challenge-m%C3%B6tley-judging-cr%C3%BCe.html" target="_blank"&gt;entries will be judged&lt;/a&gt; by two JavaFX developers (Jim Weaver and Stephen Chin), and two graphics designers (Jasper Potts and Romain Guy).  The criteria for judging will be how well we feel that the entry "exemplifies the appearance and behavior of a next-generation enterprise RIA".&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;4) The winning entry will be announced on 20 January 2010 on this &lt;a href="http://learnjavafx.typepad.com"&gt;JavaFXpert.com&lt;/a&gt; blog.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;5) The prize, which is a cash award of USD 2000 (USD 1000 for each one of the two participants), will be awarded after the winning team is announced.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;If you have any questions about this contest, please leave a comment on this blog post.&lt;/p&gt;&#xD;
&#xD;
&lt;script type="text/javascript"&gt;var dzone_url = 'http://learnjavafx.typepad.com/weblog/2009/10/announcing-the-javafxpert-ria-exemplar-challenge.html';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_title = 'Announcing the JavaFXpert RIA Exemplar Challenge';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_blurb = '[blurb]';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_style = '2';&lt;/script&gt;&#xD;
&lt;script src="http://widgets.dzone.com/widgets/zoneit.js"&gt;&lt;/script&gt;&#xD;
&#xD;
&lt;p&gt;Thanks, and have fun with the contest!&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;Jim Weaver&lt;br&gt;&lt;a href="http://www.JavaFXpert.com" target="_blank"&gt;JavaFXpert.com&lt;/a&gt;&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=m0d9EDbrkq8:U7B5JvkxxWc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=m0d9EDbrkq8:U7B5JvkxxWc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=m0d9EDbrkq8:U7B5JvkxxWc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=m0d9EDbrkq8:U7B5JvkxxWc:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=m0d9EDbrkq8:U7B5JvkxxWc:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=m0d9EDbrkq8:U7B5JvkxxWc:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=m0d9EDbrkq8:U7B5JvkxxWc:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/m0d9EDbrkq8" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/10/announcing-the-javafxpert-ria-exemplar-challenge.html</feedburner:origLink></entry>
    <entry>
        <title>You had me at Least Common Multiple :-)</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/n2t7aanxK1U/you-had-me-at-least-common-multiple-.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/10/you-had-me-at-least-common-multiple-.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a61a24eb970c</id>
        <published>2009-10-06T10:32:14-04:00</published>
        <updated>2009-10-06T19:35:59-04:00</updated>
        <summary>One of the student winners of the the JavaFX Coding Challenge is Kazuki Hamasaki, who created the CalcFX program. CalcFX is a deceptively functional (and incredibly useful) calculator, and is now one of the Java Web Start shortcuts on my desktop. Kazuki: If you're reading this, please create a desktop icon for CalcFX so that it doesn't blend in with...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Cool JavaFX Stuff" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Apps" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="WidgetFX" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;One of the student winners of the the &lt;a href="http://javafx.com/challenge/" target="_blank"&gt;JavaFX Coding Challenge&lt;/a&gt; is &lt;a href="http://ashphy.s268.xrea.com/" target="_blank"&gt;Kazuki Hamasaki&lt;/a&gt;, who created the &lt;a href="http://ashphy.s268.xrea.com/calcfx/" target="_blank"&gt;CalcFX&lt;/a&gt; program.  CalcFX is a deceptively functional (and incredibly useful) calculator, and is now one of the Java Web Start shortcuts on my desktop.&lt;/p&gt;&lt;p&gt;&lt;a href="http://ashphy.s268.xrea.com/calcfx/" style="display: inline;"&gt;&lt;img alt="Calcfx" border="0" class="asset asset-image at-xid-6a00e54f133d6988340120a61a238a970c " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a61a238a970c-800wi" title="Calcfx"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;br&gt;Kazuki: If you're reading this, please create a desktop icon for CalcFX so that it doesn't blend in with the usual coffee-cup icons deposited by Java Web Start.  For those wondering, just put the following line subordinate to the &lt;strong&gt;information&lt;/strong&gt; element of the JNLP file:&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&amp;lt;icon href="some_icon.png" width="64" height="64"/&amp;gt;&lt;/strong&gt;&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;&lt;/p&gt;&lt;p&gt;Congrats, and nice work, Kazuki!&lt;/p&gt;&lt;p&gt;Jim Weaver&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=n2t7aanxK1U:2ntp-3IJQ2k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=n2t7aanxK1U:2ntp-3IJQ2k:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=n2t7aanxK1U:2ntp-3IJQ2k:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=n2t7aanxK1U:2ntp-3IJQ2k:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=n2t7aanxK1U:2ntp-3IJQ2k:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=n2t7aanxK1U:2ntp-3IJQ2k:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=n2t7aanxK1U:2ntp-3IJQ2k:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/n2t7aanxK1U" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/10/you-had-me-at-least-common-multiple-.html</feedburner:origLink></entry>
    <entry>
        <title>The End is Near (for the September '09 JFXStudio Coding Challenge)</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/hs6fB84E9qU/the-end-is-near-for-this-months-jfxstudio-coding-challenge.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/09/the-end-is-near-for-this-months-jfxstudio-coding-challenge.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a5a60973970b</id>
        <published>2009-09-28T18:50:45-04:00</published>
        <updated>2009-09-28T18:49:56-04:00</updated>
        <summary>If you've hung around senior [-citizen] programmers (or are one), you've no doubt heard tales such as "we only had 4K of memory, and had to make use of every byte/bit". For your amusement and edification, here's a picture from thegreatgeekmanual.com of the first Apple II (circa 1977), which sported 4K of RAM: Josh Marinacci's latest JavaFX Studio Challenge is...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Cool JavaFX Stuff" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Apps" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="WidgetFX" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p style="font-size: 18px; font-family: Trebuchet MS;"&gt;If you've hung around senior [-citizen] programmers (or are one), you've no doubt heard tales such as "we only had 4K of memory, and had to make use of every byte/bit".  For your amusement and edification, here's a picture from &lt;a href="http://thegreatgeekmanual.com" target="_blank"&gt;thegreatgeekmanual.com&lt;/a&gt; of the first Apple II (circa 1977), which sported 4K of RAM:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p class="asset asset-image"&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5fcb679970c-pi" style="display: inline;"&gt;&lt;img alt="Apple-II" border="0" class="at-xid-6a00e54f133d6988340120a5fcb679970c " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5fcb679970c-800wi" title="Apple-II"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
&lt;/p&gt; &lt;p style="font-size: 18px; font-family: Trebuchet MS;"&gt;Josh Marinacci's latest JavaFX Studio Challenge is a bit reminiscent of these good old days, in that he is encouraging us to create a cool JavaFX program that "must not be more than 30 lines of code or 3000 characters (your choice)".&lt;/p&gt;&lt;p style="font-size: 18px; font-family: Trebuchet MS;"&gt;The deadline for submitting your entry for this JFXStudio&#xD;
Challenge is midnight Wednesday night (30 September 2009). The challenge is to create&#xD;
something cool in only 30 lines of JavaFX Script code, using the theme&#xD;
of 'Time'. To give you some ideas Josh has&#xD;
&lt;a href="http://jfxstudio.wordpress.com/2009/09/27/challengetime-is-almost-over/" target="_blank"&gt;posted his own entry&lt;/a&gt;. Take a look for some inspiration!&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p class="asset asset-image"&gt;&lt;a href="http://steveonjava.com/2009/09/27/widgetfx-contest-winners/" style="float: right;"&gt;&lt;img alt="Screen shot 2009-09-28 at 6.32.26 PM" border="0" class="at-xid-6a00e54f133d6988340120a5a61d8a970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5a61d8a970b-800wi" style="margin: 0px 0px 5px 5px;" title="Screen shot 2009-09-28 at 6.32.26 PM"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 18px; font-family: Trebuchet MS;"&gt;Speaking of contests, the &lt;a href="http://steveonjava.com/2009/09/27/widgetfx-contest-winners/" target="_blank"&gt;winners of the WidgetFX Developers Contest were announced yesterday&lt;/a&gt;, and I'd like to convey my congratulations to Pär Dahlberg (ScreenshotFX widget), Yannick Van Godtsenhoven (RadioFX widget), and Larry Dickson (Weather widget).  A screenshot of these widgets in the WidgetFX dock is shown on the right. I'm using the RadioFX widget as I'm writing this to listen to an internet music channel that plays baroque music.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 18px; font-family: Trebuchet MS;"&gt;Regards, and congratulations again to these winners!&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 18px; font-family: Trebuchet MS;"&gt;Jim Weaver&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 18px; font-family: Trebuchet MS;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=hs6fB84E9qU:eVw85-39UUY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=hs6fB84E9qU:eVw85-39UUY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=hs6fB84E9qU:eVw85-39UUY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=hs6fB84E9qU:eVw85-39UUY:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=hs6fB84E9qU:eVw85-39UUY:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=hs6fB84E9qU:eVw85-39UUY:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=hs6fB84E9qU:eVw85-39UUY:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/hs6fB84E9qU" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/09/the-end-is-near-for-this-months-jfxstudio-coding-challenge.html</feedburner:origLink></entry>
    <entry>
        <title>Pickin' and grinnin' with the JFXtras Picker control</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/k_derY9QRtc/pickin-and-grinnin-with-the-jfxtras-picker-control.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/09/pickin-and-grinnin-with-the-jfxtras-picker-control.html" thr:count="1" thr:updated="2009-09-27T15:26:36-04:00" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a5f0632c970c</id>
        <published>2009-09-25T15:37:46-04:00</published>
        <updated>2009-09-25T16:20:00-04:00</updated>
        <summary>If you've been following this blog recently, you know that I've been developing an application in the SpeedReaderFX category that helps me quickly keep up on new happenings in world events, technology, gadgets, music, and social networks. SpeedReaderFX is located in the JFXtras open source project, and also serves as an example of using JFXtras classes with JavaFX. One of...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX - General" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Apps" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JFXtras" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Multi-tier JavaFX Script Apps" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="SpeedReaderFX" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Third-Party JavaFX Projects" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;If you've been following this blog recently, you know that I've been developing an application in the &lt;a href="http://learnjavafx.typepad.com/weblog/speedreaderfx/" target="_blank"&gt;SpeedReaderFX category&lt;/a&gt; that helps me quickly keep up on new happenings in world events, technology, gadgets, music, and social networks.  SpeedReaderFX is located in the &lt;a href="http://jfxtras.org" target="_blank"&gt;JFXtras open source project&lt;/a&gt;, and also serves as an example of using JFXtras classes with JavaFX.&lt;/p&gt;&lt;p&gt;One of the newest enhancements made to the SpeedReaderFX program takes advantage of the Picker control that David Armitage created in the JFXtras project.  Here's a screen shot of a program in the JFXtras project that he created to demonstrate and test the Picker control varieties:&lt;/p&gt;&lt;p class="asset asset-image"&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5f07d0a970c-pi" style="display: inline;"&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="asset asset-image"&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a599d475970b-pi" style="display: inline;"&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="asset asset-image"&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5f07f0e970c-pi" style="display: inline;"&gt;&lt;img alt="Screen shot 2009-09-25 at 12.28.40 PM" border="0" class="at-xid-6a00e54f133d6988340120a5f07f0e970c image-full " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5f07f0e970c-800wi" title="Screen shot 2009-09-25 at 12.28.40 PM"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
&lt;/p&gt; &#xD;
 &#xD;
 &lt;p&gt;SpeedReaderFX uses the spinner-style variation of the Picker control, shown in the Thumb Wheel row of the screen shot above.  This enables SpeedReaderFX users to quickly choose how many entries of a given feed-type (e.g. Yahoo News feeds), to display in the scrolling table.  The screen shot below shows a portion of the SpeedReaderFX Criteria dialog in which the Pickers appear:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p class="asset asset-image"&gt;&lt;a href="http://jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="display: inline;"&gt;&lt;img alt="Screen shot 2009-09-25 at 12.54.15 PM" border="0" class="at-xid-6a00e54f133d6988340120a59a9aca970b image-full " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a59a9aca970b-800wi" title="Screen shot 2009-09-25 at 12.54.15 PM"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;As noted previously in the Picker demo screen shot, the user can operate the mouse wheel, as well as the keyboard or mouse buttons, to select the desired number.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p class="asset asset-image"&gt;&lt;a href="http://jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="float: left;"&gt;&lt;img alt="6a00e54f133d6988340120a574de26970b-800wi" border="0" class="at-xid-6a00e54f133d6988340120a59a94b2970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a59a94b2970b-800wi" style="margin: 0px 5px 5px 0px;" title="6a00e54f133d6988340120a574de26970b-800wi"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
&lt;/p&gt;&lt;p&gt; For more information about the SpeedReaderFX application, check out the &lt;a href="http://learnjavafx.typepad.com/weblog/2009/09/introducing-speedreaderfx-powered-by-javafx-and-jfxtras.html" target="_blank"&gt;first post&lt;/a&gt; in the &lt;a href="http://learnjavafx.typepad.com/weblog/speedreaderfx/" target="_blank"&gt;SpeedReaderFX category&lt;/a&gt; of this blog.  To run the application, click the SpeedReaderFX icon located on the left side of this paragraph.&#xD;
 &#xD;
 &lt;/p&gt;&lt;p&gt;By the way, since this dialog is getting pretty crowded, Dean Iverson is creating some UI design comps in which each feed type will have its own page.  I've also received other ideas from readers that I plan to implement, and would like to express my appreciation for your continued input!&lt;/p&gt;&#xD;
&#xD;
&#xD;
&lt;script type="text/javascript"&gt;var dzone_url = 'http://learnjavafx.typepad.com/weblog/2009/09/pickin-and-grinnin-with-the-jfxtras-picker-control.html';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_title = 'Pickin' and grinnin' with the JFXtras Picker control';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_blurb = '[blurb]';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_style = '2';&lt;/script&gt;&#xD;
&lt;script src="http://widgets.dzone.com/widgets/zoneit.js"&gt;&lt;/script&gt;&#xD;
&#xD;
&lt;p&gt;Regards,&lt;/p&gt;&lt;p&gt;Jim Weaver&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=k_derY9QRtc:KRY10K1MVy0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=k_derY9QRtc:KRY10K1MVy0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=k_derY9QRtc:KRY10K1MVy0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=k_derY9QRtc:KRY10K1MVy0:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=k_derY9QRtc:KRY10K1MVy0:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=k_derY9QRtc:KRY10K1MVy0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=k_derY9QRtc:KRY10K1MVy0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/k_derY9QRtc" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/09/pickin-and-grinnin-with-the-jfxtras-picker-control.html</feedburner:origLink></entry>
    <entry>
        <title>Adding feeds to SpeedReaderFX that don't *quite* comply with the RSS/Atom formats</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/O9LmnnU6Yuc/adding-feeds-to-speedreaderfx-that-dont-quite-comply-with-the-rssatom-formats.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/09/adding-feeds-to-speedreaderfx-that-dont-quite-comply-with-the-rssatom-formats.html" thr:count="4" thr:updated="2009-10-13T03:44:03-04:00" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a5cad4c0970c</id>
        <published>2009-09-16T10:31:03-04:00</published>
        <updated>2009-09-18T18:28:39-04:00</updated>
        <summary>When adding more feeds to the SpeedReaderFX application's Criteria dialog, I found that some of them don't *quite* comply with RSS/Atom formats. For example, I thought it'd be cool to have RSS feeds from Engadget and Gizmodo (what self-respecting geek wouldn't want those feeds?) I also wanted to have a daily dose of Dilbert delivered, but in these three cases...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Apps" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JFXtras" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="SpeedReaderFX" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;When adding more feeds to the SpeedReaderFX application's Criteria dialog, I found that some of them don't *quite* comply with RSS/Atom formats.  For example, I thought it'd be cool to have RSS feeds from &lt;a href="http://www.engadget.com/" target="_blank"&gt;Engadget&lt;/a&gt; and &lt;a href="http://gizmodo.com/" target="_blank"&gt;Gizmodo&lt;/a&gt; (what self-respecting geek wouldn't want those feeds?)  I also wanted to have a daily dose of &lt;a href="http://www.dilbert.com/" target="_blank"&gt;Dilbert&lt;/a&gt; delivered, but in these three cases the JavaFX RSS API reported that the dates for the feed items were just prior to the OS epoch.&lt;/p&gt;&lt;p&gt;&lt;a href="http://jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="display: inline;"&gt;&lt;img alt="SpeedReaderFX_screenshot_geektoys" border="0" src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5743ea5970b-pi" title="SpeedReaderFX_screenshot_geektoys"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;Naturally, I consulted the RSS/Atom Smasher himself (Rakesh Menon) and he instructed me in the ways of &lt;a href="http://blogs.sun.com/rakeshmenonp/en_US/entry/javafx_custom_feed_parsers" target="_blank"&gt;creating a custom feed parser&lt;/a&gt;, which I added to SpeedReaderFX.  Here's a partial screenshot of the Criteria dialog where you can select the Gizmodo, Engadget, TechCrunch, and Dilbert feeds:&lt;/p&gt;&lt;p&gt;&lt;a href="http://jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="display: inline;"&gt;&lt;img alt="SpeedReaderFX_screenshot_criteria_geektoys" border="0" src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5cac779970c-pi" title="SpeedReaderFX_screenshot_criteria_geektoys"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&lt;a href="http://jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="float: left;"&gt;&lt;img alt="SpeedReaderFX_logo95X60" border="0" class="at-xid-6a00e54f133d6988340120a574de26970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a574de26970b-800wi" style="margin: 0px 5px 5px 0px;" title="SpeedReaderFX_logo95X60"&gt;&lt;/img&gt;&lt;/a&gt; For more information about the SpeedReaderFX application, check out the &lt;a href="http://learnjavafx.typepad.com/weblog/2009/09/introducing-speedreaderfx-powered-by-javafx-and-jfxtras.html" target="_blank"&gt;first post&lt;/a&gt; in the &lt;a href="http://learnjavafx.typepad.com/weblog/speedreaderfx/" target="_blank"&gt;SpeedReaderFX category&lt;/a&gt; of this blog.  To run the application, click the SpeedReaderFX icon located on the left side of this paragraph.&lt;/p&gt;&#xD;
&#xD;
&lt;p&gt;By the way, one of the next things that SpeedReaderFX needs is a GUI makeover (I've received lots of helpful feedback in that regard, and my graphical skills are admittedly weak).  Please leave a comment to this post if you have ideas or graphic comps that would make this look more like an iPhone app.  SpeedReaderFX is a sample in the open source &lt;a href="http://jfxtras.org" target="_blank"&gt;JFXtras project&lt;/a&gt;, and your contributions to the appearance of this application would be much appreciated and acknowledged on this blog.&lt;/p&gt;&#xD;
&#xD;
&lt;script type="text/javascript"&gt;var dzone_url = 'http://learnjavafx.typepad.com/weblog/2009/09/adding-feeds-to-speedreaderfx-that-dont-quite-comply-with-the-rssatom-formats.html';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_title = 'Adding feeds to SpeedReaderFX that don't *quite* comply with the RSS/Atom formats';&amp;lt;/script&amp;gt;&#xD;
&amp;lt;script type="text/javascript"&amp;gt;var dzone_blurb = '[blurb]';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_style = '2';&lt;/script&gt;&#xD;
&lt;script src="http://widgets.dzone.com/widgets/zoneit.js"&gt;&lt;/script&gt;&#xD;
&#xD;
&lt;p&gt;Enjoy!&lt;br&gt;Jim Weaver&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=O9LmnnU6Yuc:_xDFebWzZaA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=O9LmnnU6Yuc:_xDFebWzZaA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=O9LmnnU6Yuc:_xDFebWzZaA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=O9LmnnU6Yuc:_xDFebWzZaA:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=O9LmnnU6Yuc:_xDFebWzZaA:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=O9LmnnU6Yuc:_xDFebWzZaA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=O9LmnnU6Yuc:_xDFebWzZaA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/O9LmnnU6Yuc" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/09/adding-feeds-to-speedreaderfx-that-dont-quite-comply-with-the-rssatom-formats.html</feedburner:origLink></entry>
    <entry>
        <title>Introducing SpeedReaderFX, powered by JavaFX and JFXtras</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/KtkvMTpkwgU/introducing-speedreaderfx-powered-by-javafx-and-jfxtras.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/09/introducing-speedreaderfx-powered-by-javafx-and-jfxtras.html" thr:count="11" thr:updated="2009-09-23T01:13:26-04:00" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a560a281970b</id>
        <published>2009-09-10T15:16:14-04:00</published>
        <updated>2009-09-11T15:21:20-04:00</updated>
        <summary>Some of you may remember the advertisements for the Evelyn Wood Reading Dynamics course back in the 1970s. Here's a flashback in which Steve Allen (an excellent former host of the Tonight Show), is interviewing students of this course. Gotta love those '70s hairstyles :-) This course promised to increase reading speed and comprehension, partially (as I recall) by using...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX SDK 1.2" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Tips and Tricks" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JFXtras" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Multi-tier JavaFX Script Apps" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="SpeedReaderFX" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;&lt;span class="huge"&gt;&lt;a href="http://www.jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="float: right;"&gt;&lt;img alt="Speedreader_icon_128x128" border="0" class="at-xid-6a00e54f133d6988340120a5b7cc9d970c " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5b7cc9d970c-800wi" style="margin: 0px 0px 5px 5px;" title="Speedreader_icon_128x128"&gt;&lt;/img&gt;&lt;/a&gt; Some of you may remember the advertisements for the Evelyn Wood Reading Dynamics course back in the 1970s.  Here's a flashback in which &lt;a href="http://www.youtube.com/watch?v=1nMP4U8JQDo" target="_blank"&gt;Steve Allen (an excellent former host of the Tonight Show), is interviewing students of this course&lt;/a&gt;.  Gotta love those '70s hairstyles :-)  &lt;/span&gt;&lt;span class="huge"&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;This course promised to increase reading speed and&#xD;
comprehension, partially (as I recall) by using the technique of&#xD;
scanning a page while limiting eye movement.  &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;&lt;a href="http://www.youtube.com/watch?v=1nMP4U8JQDo" style="display: inline;"&gt;&lt;img alt="Evelyn-Wood-Reading-Dynamics-Outlook" border="0" class="at-xid-6a00e54f133d6988340120a560b541970b " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a560b541970b-800wi" title="Evelyn-Wood-Reading-Dynamics-Outlook"&gt;&lt;/img&gt;&lt;/a&gt; &lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;The ability to digest new information quickly is at least as important now as it was 20+ cranks of Moore's Law ago.  RSS and Atom feeds have provided mechanisms to publish information as it becomes available, and social networking tools such as Twitter have HTTP-based APIs.  Because it is time consuming to visit various sources of new information, I've begun developing a tool named SpeedReaderFX to present information obtained via RSS, Atom, and social networking APIs in one place.&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;Here's a screen shot of SpeedReaderFX as it is displaying new items of interest:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;a href="http://www.jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="display: inline;"&gt;&lt;img alt="SpeedReaderFX_screenshot_1" border="0" src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5b7c5c4970c-pi" title="SpeedReaderFX_screenshot_1"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/span&gt; &lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;In the screen shot above, there are tweets from interesting people (Josh Marinacci and Dean Iverson), a picture taken by some fortunate soul viewing a beautiful Australian sunrise, a video containing stunning new pictures from the Hubble telescope, and an article about an expensive bottle of wine.  These are displayed in the very impressive Table component that Stephen Chin and Keith Combs are creating for the open source &lt;a href="http://jfxtras.org" target="_blank"&gt;JFXtras&lt;/a&gt; project.  A future post will explain how to use the JFXtras Table component, using this SpeedReaderFX program as the example.&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;The popup menu shown above enables the user to hide a given feed (l8r, Dean!), or open the URL associated with an item in a browser (in this case, Dean's Twitter post).  Note that because JavaFX does not yet have a popup menu, I leveraged the menu bar/menu capabilities of the JFXtras project to make this slightly odd-looking popup menu.  If a popup menu isn't available in the next version of JavaFX, one will be created in the JFXtras project.&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;To inform SpeedReaderFX about your items of interest, choose the &lt;strong&gt;Channels&amp;gt;Configure&lt;/strong&gt; menu option.  The Criteria dialog will appear (a portion shown below), enabling you to specify user names, tags, and blog feeds for various feed sources and social networks.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;a href="http://www.jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp" style="display: inline;"&gt;&lt;img alt="SpeedReaderFX_screenshot_criteria" border="0" class="at-xid-6a00e54f133d6988340120a5bad7f3970c image-full " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a5bad7f3970c-800wi" title="SpeedReaderFX_screenshot_criteria"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/span&gt; &lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;The prompts in the shorter text boxes indicate the type of information that may be typed into the box.  For example, you'll separate the search tags in a Flickr text box with commas.  The program has some text boxes filled in with examples, but you can overwrite them.  A not-too-distant future version of this program will automatically save your criteria when exiting, and will load it again upon start-up.  The &lt;a href="http://learnjavafx.typepad.com/weblog/speedreaderfx/" target="_blank"&gt;SpeedReaderFX category&lt;/a&gt; of this blog will contain posts that point out some JavaFX code behind new functionality, as well as catching you up on some of the code used so far in this program.  For example, I'll cite the JavaFX library that &lt;a href="http://blogs.sun.com/rakeshmenonp/entry/javafx_youtube" target="_blank"&gt;Rakesh Menon&lt;/a&gt; created to read the YouTube Data API, which I'm using in this program.&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;Selecting a check box causes the associated information source to be read and displayed in the table shown previously, with its items interspersed with items from other sources in reverse chronological order.  Deselecting a check box removes the associated items from the table, which is the same result as the &lt;strong&gt;Hide this feed&lt;/strong&gt; popup menu item discussed earlier.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;When you're finished with the Criteria dialog, click the Close button in the upper right corner, or select the &lt;/span&gt;&lt;span class="huge"&gt;&lt;strong&gt;Channels&amp;gt;Configure &lt;/strong&gt;&lt;/span&gt;&lt;span class="huge"&gt;menu option again.  By the way, the &lt;strong&gt;View &lt;/strong&gt;menu has a couple of options that help you manage the application's window, given that you'll be opening up content in a browser.  One menu item is the self-explanatory &lt;strong&gt;Always on Top&lt;/strong&gt;, and the other one enables you to &lt;strong&gt;Hide the Date Published Column&lt;/strong&gt;.&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;Now that you know how to use SpeedReaderFX, please give it a whirl by clicking the Web Start Launch button below.  As always, please leave a comment if you have any questions or comments.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.jmentor.com/SpeedReaderFX/SpeedReaderFX.jnlp"&gt;&lt;img alt="Webstartsmall2" border="0" height="34" src="http://learnjavafx.typepad.com/weblog/images/2008/07/23/webstartsmall2.gif" title="Webstartsmall2" width="88"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
&#xD;
&lt;/p&gt;&#xD;
&#xD;
&lt;script type="text/javascript"&gt;var dzone_url = 'http://learnjavafx.typepad.com/weblog/2009/09/introducing-speedreaderfx-powered-by-javafx-and-jfxtras.html';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_title = 'Full-Page JavaFX Applets: Exercising Resizing';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_blurb = '[blurb]';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_style = '2';&lt;/script&gt;&#xD;
&lt;script src="http://widgets.dzone.com/widgets/zoneit.js"&gt;&lt;/script&gt;&#xD;
&#xD;
&#xD;
&lt;p&gt;&lt;span class="huge"&gt;Regards,&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class="huge"&gt;Jim Weaver&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=KtkvMTpkwgU:QIsSV3zB0NM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=KtkvMTpkwgU:QIsSV3zB0NM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=KtkvMTpkwgU:QIsSV3zB0NM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=KtkvMTpkwgU:QIsSV3zB0NM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=KtkvMTpkwgU:QIsSV3zB0NM:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=KtkvMTpkwgU:QIsSV3zB0NM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=KtkvMTpkwgU:QIsSV3zB0NM:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/KtkvMTpkwgU" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/09/introducing-speedreaderfx-powered-by-javafx-and-jfxtras.html</feedburner:origLink></entry>
    <entry>
        <title>Full-Page JavaFX Applets: Exercising Resizing</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JamesWeaversJavafxBlog/~3/c_QjlEzZBCg/resizable-applets.html" />
        <link rel="replies" type="text/html" href="http://learnjavafx.typepad.com/weblog/2009/08/resizable-applets.html" thr:count="6" thr:updated="2009-10-29T06:42:08-04:00" />
        <id>tag:typepad.com,2003:post-6a00e54f133d6988340120a4f5102f970b</id>
        <published>2009-08-17T17:20:42-04:00</published>
        <updated>2009-08-17T18:32:03-04:00</updated>
        <summary>As I mentioned the previous article in this series, the next step in the development of the BandmatesFX program will be to enable the user to navigate more general information than just musicians and bands. In this article, I've added the ability to navigate soccer players and their teams. In addition, the program (whose working title is now Topic Map...</summary>
        <author>
            <name>Jim Weaver</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Cool JavaFX Stuff" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Freebase Contributing Artists App" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX - General" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Applets" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX SDK 1.2" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JavaFX Tips and Tricks" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="JFXtras" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://learnjavafx.typepad.com/weblog/">&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;As I mentioned the previous article &lt;a href="http://learnjavafx.typepad.com/weblog/freebase-contributing-artists-app/" target="_blank"&gt;in this series&lt;/a&gt;, the next step in the development of the BandmatesFX program will be to enable the user to navigate more general information than just musicians and bands.  In this article, I've added the ability to navigate soccer players and their teams.  In addition, the program (whose working title is now &lt;em&gt;Topic Map Navigator&lt;/em&gt;), can be deployed as a full-browser-page JavaFX applet.  Shown below is a screenshot of the program running in a Chrome 2.0 browser, and it also runs in FireFox 3.5+ and Internet Explorer 7+.  You'll usually need have Java SE 6 update 10+ in order for the applet to run in the browser (e.g. on Mac with Java 1.5 this app opens in its own window).&lt;/p&gt;&lt;p&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a4fed24f970b-pi" style="display: inline;"&gt;&lt;img alt="TopicMapNavigator" border="0" class="at-xid-6a00e54f133d6988340120a4fed24f970b image-full " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a4fed24f970b-800wi" title="TopicMapNavigator"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;One of the features of this program is that it opens a web page when you right-click on an image.  Deploying this program in the browser makes this a tighter experience, because the page appears on top of the Topic Map Navigator program.  When you subsequently close the web page, the program is revealed again.  The screenshot below shows the result of clicking the secondary mouse button on the picture of Lionel Messi, and then clicking the Wikipedia link from his Freebase web page that appears. You may also recall from previous articles in this series that clicking the primary mouse button on an image moves that person to the top of the app.&lt;/p&gt;&lt;p&gt;&lt;a href="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a555f79e970c-pi" style="display: inline;"&gt;&lt;img alt="TopicMapNavigator_wikipedia" border="0" class="at-xid-6a00e54f133d6988340120a555f79e970c image-full " src="http://learnjavafx.typepad.com/.a/6a00e54f133d6988340120a555f79e970c-800wi" title="TopicMapNavigator_wikipedia"&gt;&lt;/img&gt;&lt;/a&gt; &lt;/p&gt;&lt;p&gt;If you have a late-model Chrome, FireFox or Internet Explorer browser, and Java SE 6 update 10+, go ahead an &lt;a href="http://jmentor.com/JavaFX_1-2/TopicMapNavigator/TopicMapNavigator.html" target="_blank"&gt;run this program as a JavaFX applet&lt;/a&gt;.  If not, you can launch the program via Java Web Start by clicking the Launch button below.  &lt;em&gt;&lt;strong&gt;Note: Please leave a comment if you have any difficulty deploying this JavaFX applet, providing your hardware/OS/browser/Java version information.  I'll report these difficulties to the JavaFX JIRA issue tracker, as I'd like for the JavaFX applet deployment experience to be as solid as it is when deploying with Java Web Start.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://jmentor.com/JavaFX_1-2/TopicMapNavigator/TopicMapNavigator.jnlp"&gt;&lt;img alt="Webstartsmall2" border="0" height="34" src="http://learnjavafx.typepad.com/weblog/images/2008/07/23/webstartsmall2.gif" title="Webstartsmall2" width="88"&gt;&lt;/img&gt;&lt;/a&gt;&#xD;
&#xD;
&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Exercising Resizing &lt;/strong&gt;&lt;/p&gt;&lt;p&gt;In order for the JavaFX applet to occupy the full browser page, we change the width and height of the applet to 100% in the HTML file as shown in the snippet below.&lt;/p&gt;&#xD;
&#xD;
&lt;pre&gt;  javafx(&lt;br&gt;    {&lt;br&gt;      archive: "TopicMapNavigator.jar",&lt;br&gt;      draggable: true,&lt;br&gt;      width: "100%",&lt;br&gt;      height: "100%",&lt;br&gt;      code: "org.jfxtras.topicmapnav.ui.TopicMapNavMain",&lt;br&gt;      name: "TopicMapNavigator",&lt;br&gt;      loading_image_url: "http://www.jmentor.com/JavaFX_1-2/TopicMapNavigator/images/guitar.png",&lt;br&gt;      loading_image_width: 500,&lt;br&gt;      loading_image_height: 350&lt;br&gt;    }&lt;br&gt;  );&lt;br&gt;&lt;/pre&gt;&#xD;
&#xD;
&lt;p&gt;When the browser page is resized, the width and height values of the JavaFX &lt;strong&gt;Stage &lt;/strong&gt;change dynamically.  You can bind to these values and control the appearance of the program, using layout classes that are provided with JavaFX.  In addition, the &lt;a href="http://jfxtras.org" target="_blank"&gt;JFXtras project&lt;/a&gt; has some classes such as &lt;strong&gt;ResizableScene&lt;/strong&gt;, &lt;strong&gt;ResizableCustomNode&lt;/strong&gt;, &lt;strong&gt;ResizableHBox&lt;/strong&gt; and &lt;strong&gt;ResizableVBox&lt;/strong&gt; that make quick work of responding to a resized Stage.  For example, the Topic Map Navigator program uses these classes, and the resizable &lt;strong&gt;Shelf &lt;/strong&gt;class, to automatically reposition and scale the cover flows when the user resizes the program.&lt;/p&gt;&#xD;
&#xD;
&lt;script type="text/javascript"&gt;var dzone_url = 'http://learnjavafx.typepad.com/weblog/2009/08/resizable-applets.html';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_title = 'Full-Page JavaFX Applets: Exercising Resizing';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_blurb = '[blurb]';&lt;/script&gt;&#xD;
&lt;script type="text/javascript"&gt;var dzone_style = '2';&lt;/script&gt;&#xD;
&lt;script src="http://widgets.dzone.com/widgets/zoneit.js"&gt;&lt;/script&gt;&#xD;
&#xD;
&lt;p&gt;Regards, and please let me know if you have any questions,&lt;/p&gt;&lt;p&gt;Jim Weaver&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=c_QjlEzZBCg:lX25hp-Q5sw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=c_QjlEzZBCg:lX25hp-Q5sw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=c_QjlEzZBCg:lX25hp-Q5sw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=c_QjlEzZBCg:lX25hp-Q5sw:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=c_QjlEzZBCg:lX25hp-Q5sw:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?a=c_QjlEzZBCg:lX25hp-Q5sw:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JamesWeaversJavafxBlog?i=c_QjlEzZBCg:lX25hp-Q5sw:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/JamesWeaversJavafxBlog/~4/c_QjlEzZBCg" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://learnjavafx.typepad.com/weblog/2009/08/resizable-applets.html</feedburner:origLink></entry>
 
</feed><!-- ph=1 --><!-- nhm:dynamic-ssi -->
