<?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>halfdecent.net &#187; desktop</title>
	<atom:link href="http://halfdecent.net/category/desktop/feed/" rel="self" type="application/rss+xml" />
	<link>http://halfdecent.net</link>
	<description>some personal argumentation</description>
	<lastBuildDate>Fri, 20 Aug 2010 21:51:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Xinerama</title>
		<link>http://halfdecent.net/2007/11/07/xinerama/</link>
		<comments>http://halfdecent.net/2007/11/07/xinerama/#comments</comments>
		<pubDate>Wed, 07 Nov 2007 10:53:48 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[desktop]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://halfdecent.net/2007/11/07/xinerama/</guid>
		<description><![CDATA[I configured my docked Ubuntu laptop with an external screen to have an extended desktop using Xinerama. It works (almost) nicely. I have a wide desktop that I can drag screens around on now, but unfortunately the pointer isnt rendering properly on the external screen &#8211; instead of a clean pointer I have a 2cmx2cm [...]]]></description>
			<content:encoded><![CDATA[<p>I configured my docked Ubuntu laptop with an external screen to have an extended desktop using Xinerama.  It works (almost) nicely.  I have a wide desktop that I can drag screens around on now, but unfortunately the pointer isnt rendering properly on the external screen &#8211; instead of a clean pointer I have a 2cmx2cm square on the external monitor.   Even with a clumsy mouse pointer, this is an improvement on my previous dual monitor setup which used aticonfig&#8217;s bigdesktop setting. I found that bigdesktop configured two separate desktops which meant that I was unable to run firefox/thunderbird on both desktops, or drag windows from one screen to another.</p>
<p>These two references were useful:</p>
<ul>
<li><a href="http://ubuntuforums.org/archive/index.php/t-430851.htm">ubuntu forums</a></li>
<li><a href="http://www.paralipsis.org/2006/01/enabling-xinerama-in-ubuntu/">paralipsis </a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://halfdecent.net/2007/11/07/xinerama/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java status bar</title>
		<link>http://halfdecent.net/2007/06/12/java-status-bar/</link>
		<comments>http://halfdecent.net/2007/06/12/java-status-bar/#comments</comments>
		<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[desktop]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This might save someone else a little bother. I&#8217;ve been building Java Swing demo&#8217;s in the last few months and one thing that has slowed me down is building a status bar. A status bar is the strip at the bottom of a window that contains useful information about the status of an application. As [...]]]></description>
			<content:encoded><![CDATA[<p>This might save someone else a little bother.  I&#8217;ve been building Java Swing demo&#8217;s in the last few months and one thing that has slowed me down is building a status bar.  A status bar is the strip at the bottom of a window that contains useful information about the status of an application.  As an example, here is the status bar for my skype client:</p>
<p><a href="http://halfdecent.net/wp-content/uploads/2007/06/skype_status_bar.png" title="skype status bar"><img src="http://halfdecent.net/wp-content/uploads/2007/06/skype_status_bar.png" alt="skype status bar" /></a></p>
<p>There is no standard swing control (container) to do this so you must roll your own.  Searching for &#8220;java status bar&#8221; didnt get me very far.   Initially I just used a JLabel, but this is too simple.  I really wanted something with multiple recessed panels (as in the skype example).  I considered using an unfloatable JToolBar but I dropped this idea because a toolbar&#8217;s default background doesnt look like a status bar and because its not easy to make the recessed panels this way.  Finally I realised that the best way to build my status bar is to nest JPanels.  <span id="more-1"></span>In the next screenshot you can see an example Java status bar which consists of the one JPanel with two JPanel containers nested within it.</p>
<p><a href="http://halfdecent.net/wp-content/uploads/2007/06/java-status-bar.png" title="My java status bar"><img src="http://halfdecent.net/wp-content/uploads/2007/06/java-status-bar.png" alt="My java status bar" /></a></p>
<p>Now it&#8217;s a little tricky to get the status bar behaving correctly on resize, but if you use a GridBagLayout for your top level JPanel then it&#8217;s doable.  However, a GridBagLayout is pretty horrible to use so I constructed two helper classes, StatusBar and StatusBarPanel to make things eaiser.  A StatusBarPanel is simply a JPanel extended with two extra attributes: an integer panelWidth and a boolean fixedWidth.  Thus you can define the width that you wish for your panel and whether or not it can stretch on resize.  The StatusBar class also extends JPanel and has an array of StatusBarPanel objects.   A StatusBar object configures the GridBagConstraints for you when you give it the array of panels.</p>
<p><script type="text/javascript"><!--
google_ad_client = "pub-8045023696629925";
/* 468x60, created 25/03/08 */
google_ad_slot = "7387698164";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script><br />
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://halfdecent.net/2007/06/12/java-status-bar/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
