<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SolitaryGeek &#187; swing</title>
	<atom:link href="http://solitarygeek.com/tag/swing/feed" rel="self" type="application/rss+xml" />
	<link>http://solitarygeek.com</link>
	<description>James Selvakumar&#039;s Blog</description>
	<lastBuildDate>Tue, 21 Dec 2010 04:35:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Book Review: NetBeans Platform 6.9 Developers Guide</title>
		<link>http://solitarygeek.com/netbeans/book-review-netbeans-platform-6-9-developers-guide</link>
		<comments>http://solitarygeek.com/netbeans/book-review-netbeans-platform-6-9-developers-guide#comments</comments>
		<pubDate>Fri, 10 Sep 2010 09:26:02 +0000</pubDate>
		<dc:creator>James</dc:creator>
				<category><![CDATA[NetBeans]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[netbeans platform]]></category>
		<category><![CDATA[rcp]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[swing]]></category>

		<guid isPermaLink="false">http://solitarygeek.com/?p=536</guid>
		<description><![CDATA[<p>NetBeans has been my IDE of choice for the past few years and to my pleasure, I recently received a copy of NetBeans Platform 6.9 Developers Guide from Packt. So, I thought of coming out with a review of this book.</p> <p></p> <p>A bit about the NetBeans Platform</p> <p>&#8220;The NetBeans Platform is a generic framework for Swing applications. It provides the &#8220;plumbing&#8221; that, before, every developer had to write themselves—saving state, connecting actions to menu items, toolbar items and keyboard shortcuts; window management, and so on. The NetBeans Platform provides all of these out of the box. You don&#8217;t need <span style="color:#777"> . . . &#8594; Read More: <a href="http://solitarygeek.com/netbeans/book-review-netbeans-platform-6-9-developers-guide">Book Review: NetBeans Platform 6.9 Developers Guide</a></span>]]></description>
			<content:encoded><![CDATA[<p>NetBeans has been my <a href="../../category/java/netbeans-java">IDE of choice</a> for the past few years and to my pleasure, I recently received a copy of <a href="http://bit.ly/cLBtb2">NetBeans Platform 6.9 Developers Guide</a> from <a href="http://www.packtpub.com/">Packt</a>. So, I thought of coming out with a review of this book.</p>
<p><a href="https://www.packtpub.com/netbeans-platform-6-9-developers-guide/book?utm_source=jamesselvakumar.wordpress.com&amp;utm_medium=bookrev&amp;utm_content=blog&amp;utm_campaign=mdb_004524"><img class="alignnone" title="NetBeans 6.9 Platform Developer's Guide" src="https://www.packtpub.com/sites/default/files/imagecache/productview/bookimages/1766_MockupCover_0.jpg" alt="NetBeans 6.9 Platform Developer's Guide" width="125" height="152" /></a></p>
<p><strong>A bit about the NetBeans Platform</strong></p>
<p>&#8220;<em>The NetBeans Platform is a generic framework for Swing applications.             It provides the &#8220;plumbing&#8221; that, before, every developer             had to write themselves—saving state, connecting             actions to menu items, toolbar items and keyboard shortcuts;  window             management, and so on. The NetBeans Platform             provides all of these out of the box. You don&#8217;t need             to manually code these or other basic features, yourself, anymore.</em>&#8221; &#8211; from the <a href="http://netbeans.org/features/platform/index.html">NetBeans Platform site</a>.</p>
<p><a href="http://platform.netbeans.org/"><img class="alignnone" title="NetBeans Platform" src="http://netbeans.org/images_www/collateral/69/netbeans-ide-110x32.png" alt="NetBeans Platform" width="110" height="32" /></a></p>
<p>And from Boeing to governments, <a href="http://netbeans.org/features/platform/showcase.html">lot of applications</a> are being built on top of the NetBeans platform.</p>
<p><strong>Do I need a technical book to learn about the NetBeans Platform?</strong></p>
<p>Though the <a href="http://netbeans.org/features/platform/index.html">NetBeans Platform</a> has a <a href="http://netbeans.org/features/platform/all-docs.html">rich set of online documentation</a>, readers&#8217; taste can differ and books are great at delivering the right content to the right audience.</p>
<p>Some might prefer a book to get started with a particular topic, some might want to read a book with in-depth technical content.</p>
<p>And it&#8217;s great to see <a href="http://netbeans.org/books/rcp.html">more</a> and <a href="http://www.amazon.com/Definitive-Guide-NetBeans-trade-Platform/dp/1430224177/ref=pd_bxgy_b_text_b">more</a> books are targeted at the NetBeans Platform.</p>
<p><strong>Who can benefit from this book?</strong></p>
<p>Are you planning to develop any desktop application? Why not develop your application on top of the NetBeans Platform, which gives you a <a href="http://netbeans.org/features/platform/features.html">lot of must have features</a> in every desktop application? Why re-invent the wheel?</p>
<p>Even if you have an existing desktop application, it&#8217;s a great idea to port it to NetBeans Platform. Just remember the &#8220;DRY&#8221; (Don&#8217;t repeat yourself) principle.</p>
<p>Do you use the NetBeans IDE to create web or mobile applications but miss your favourite feature in the IDE? Why not write some plugins yourself?</p>
<p>What ever may be your case, this book can give you a good start at NetBeans Platform.</p>
<p><strong>What&#8217;s so special about this book?</strong></p>
<p>As I started reading a couple of chapters, I got impressed with the way the content is delivered.</p>
<p>The book starts with the traditional &#8220;Hello World&#8221; module and takes the reader to the advanced topics in an elegant and seamless manner.<br />
The author makes good use of screenshots which will help the beginners a lot.</p>
<p>Like many other popular titles, this book takes an application (in this case, a Task Manager) and attempts to build it through every chapter.<br />
This undoubtedly will help the readers master the platform concepts quickly.</p>
<p><a href="http://solitarygeek.com/blog/wp-content/uploads/2010/09/book.png"><img class="alignnone size-full wp-image-538" title="book" src="http://solitarygeek.com/blog/wp-content/uploads/2010/09/book.png" alt="" width="737" height="577" /></a></p>
<p>Right from the basic form components, the book covers virtually every aspect of the NetBeans Platform like the Window System, Data System, Branding etc.<br />
There&#8217;s even an chapter to help you create installers for your application.</p>
<p>The most noticeable feature I found in this book is the friendly language and the clear explanation of topics having beginners in mind.<br />
I haven&#8217;t finished reading all the chapters yet, but I hope to complete it shortly. My objective is to write a couple of plugins for the <a href="http://netbeans.org/features/index.html">NetBeans IDE</a> and I hope this book will help me achieve that pretty quickly.</p>
<p>You can get this book from <a href="http://bit.ly/9kUklw">Packt</a> and <a href="http://www.amazon.com/NetBeans-Platform-6-9-Developers-Guide/dp/1849511764">Amazon</a>.</p>
<p><a href="https://www.packtpub.com/netbeans-platform-6-9-developers-guide/book?utm_source=jamesselvakumar.wordpress.com&amp;utm_medium=bookrev&amp;utm_content=blog&amp;utm_campaign=mdb_004524"><img title="NetBeans 6.9 Platform Developer's Guide" src="https://www.packtpub.com/sites/default/files/imagecache/productview/bookimages/1766_MockupCover_0.jpg" alt="NetBeans 6.9 Platform Developer's Guide" width="125" height="152" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://solitarygeek.com/netbeans/book-review-netbeans-platform-6-9-developers-guide/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What Java Look and Feel do you use?</title>
		<link>http://solitarygeek.com/java/what-java-look-and-feel-do-you-use</link>
		<comments>http://solitarygeek.com/java/what-java-look-and-feel-do-you-use#comments</comments>
		<pubDate>Mon, 09 Nov 2009 15:10:32 +0000</pubDate>
		<dc:creator>James</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Polls]]></category>
		<category><![CDATA[look and feel]]></category>
		<category><![CDATA[swing]]></category>
		<category><![CDATA[themes]]></category>

		<guid isPermaLink="false">http://www.solitarygeek.com/?p=519</guid>
		<description><![CDATA[<p>Quite some time back, I read an article titled &#8220;20+ Free Look and Feel Libraries For Java Swing&#8220;. I have evaluated most of the libraries mentioned in that article. Personally, I  prefer the System look and feel that is bundled in the JRE. However, I like Substance, PGS and JGoodies as well. Which one do you use? Curious to know.</p> Note: There is a poll embedded within this post, please visit the site to participate in this post's poll. ]]></description>
			<content:encoded><![CDATA[<p>Quite some time back, I read an article titled &#8220;<a href="http://javabyexample.wisdomplug.com/web-programming/37-core-java/65-20-free-look-and-feel-libraries-for-java-swings.html">20+ Free Look and Feel Libraries For Java Swing</a>&#8220;. I have evaluated most of the libraries mentioned in that article. Personally, I  prefer the System look and feel that is bundled in the JRE. However, I like Substance, PGS and JGoodies as well. Which one do you use? Curious to know.</p>
Note: There is a poll embedded within this post, please visit the site to participate in this post's poll.
]]></content:encoded>
			<wfw:commentRss>http://solitarygeek.com/java/what-java-look-and-feel-do-you-use/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Implementing session timeout in swing apps</title>
		<link>http://solitarygeek.com/java/implementing-session-timeout-in-swing-apps</link>
		<comments>http://solitarygeek.com/java/implementing-session-timeout-in-swing-apps#comments</comments>
		<pubDate>Mon, 03 Dec 2007 14:06:00 +0000</pubDate>
		<dc:creator>James</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[swing]]></category>

		<guid isPermaLink="false">http://jamesselvakumar.wordpress.com/2007/12/03/implementing-session-timeout-in-swing-apps/</guid>
		<description><![CDATA[<p>If you are working in a web based project, the term &#8220;session&#8221; must be a frequently used one. &#8220;I want to implement a HttpSessionListener&#8221;, &#8220;How do I access http session?&#8221;, &#8220;Should i store my user state in http session or in a session bean?&#8221;.</p> <p>But I just wondered, how to implement that in a swing application? (Sorry, i haven&#8217;t learn swing application framework yet)</p> <p>Consider this typical scenario: A user has logged into the swing application and has opened some 2 or three windows (JFrames). Now the user goes somewhere leaving the system idle. How can we logout the user <span style="color:#777"> . . . &#8594; Read More: <a href="http://solitarygeek.com/java/implementing-session-timeout-in-swing-apps">Implementing session timeout in swing apps</a></span>]]></description>
			<content:encoded><![CDATA[<p>If you are working in a web based project, the term &#8220;session&#8221; must be a frequently used one. &#8220;I want to implement a HttpSessionListener&#8221;, &#8220;How do I access http session?&#8221;,  &#8220;Should i store my user state in http session or in a session bean?&#8221;.</p>
<p>But I just wondered, how to implement that in a swing application? (Sorry, i haven&#8217;t learn swing application framework yet)</p>
<p>Consider this typical scenario:<br />
A user has logged into the swing application and has opened some 2 or three windows (JFrames). Now the user goes somewhere leaving the system idle.<br />
How can we logout the user automatically here (for security reasons)?<br />
How to close the opened resources?</p>
<p>I initially thought of writing a global event listener and implementing that in all the user interface classes. But that looked like a bad idea for me, because that would involve a lot of code changes.</p>
<p>So I searched through the net and found out a solution from a java forum (thanks camickr).<br />
In contrast to my expectations, it was quite simple though. And here it is:</p>
<p><span style="font-family:courier new;"> private void trackSystemEvents()</span><br />
<span style="font-family:courier new;">    {</span><br />
<span style="font-family:courier new;">        Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener()</span><br />
<span style="font-family:courier new;">        {</span><br />
<span style="font-family:courier new;">            public void eventDispatched(AWTEvent event)</span><br />
<span style="font-family:courier new;">            {</span><br />
<span style="font-family:courier new;">                String eventText = event.toString();</span><br />
<span style="font-family:courier new;">                if(eventText.indexOf(&#8220;PRESSED&#8221;) != -1 ||  eventText.indexOf(&#8220;RELEASED&#8221;) != -1)</span><br />
<span style="font-family:courier new;">                {</span><br />
<span style="font-family:courier new;">                    SessionMonitor.getInstance().setLastActionTime(System.currentTimeMillis());</span><br />
<span style="font-family:courier new;">                }</span><br />
<span style="font-family:courier new;">            }</span><br />
<span style="font-family:courier new;">        }, AWTEvent.MOUSE_EVENT_MASK + AWTEvent.KEY_EVENT_MASK);</span><br />
<span style="font-family:courier new;">    }</span></p>
<p>Here, i want to track the user activity through a &#8220;global&#8221; listener kind of thing. And here the event listener is registered with <span style="font-family:courier new;">AWTEvent.MOUSE_EVENT_MASK and AWTEvent.KEY_EVENT_MASK. That means, only mouse events and key events shall be tracked.</span></p>
<p>And i don&#8217;t want to track the mouse moved/entered events and that&#8217;s why the small &#8220;if&#8221; condition which checks only for &#8220;pressed/released&#8221; actions like key pressed, mouse released etc.</p>
<p>This will help you in implementing the logic to track session timeout.</p>
<p>And spice it up with &#8220;observer&#8221; pattern to notify your user interfaces to close the opened resources.</p>
]]></content:encoded>
			<wfw:commentRss>http://solitarygeek.com/java/implementing-session-timeout-in-swing-apps/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

