<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: RCP Workspaces</title>
	<atom:link href="http://hexapixel.com/2009/01/12/rcp-workspaces/feed" rel="self" type="application/rss+xml" />
	<link>http://hexapixel.com/2009/01/12/rcp-workspaces</link>
	<description>Programming, Eclipse, SWT and everything inbetween</description>
	<lastBuildDate>Fri, 13 Apr 2012 07:47:52 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Matt</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-267</link>
		<dc:creator>Matt</dc:creator>
		<pubDate>Tue, 10 Apr 2012 19:39:52 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-267</guid>
		<description>Thanks for the article!  I was able to reuse Eclipse&#039;s Workspace dialog instead of using another dialog.  Here&#039;s code snippet from my Application.java file:

import org.eclipse.ui.internal.ide.ChooseWorkspaceData;
import org.eclipse.ui.internal.ide.ChooseWorkspaceDialog;

public class Application implements IApplication {
	public Object start(IApplicationContext context) {
		Display display = PlatformUI.createDisplay();
		Location instanceLoc = Platform.getInstanceLocation();
		boolean isWorkspaceSelected = false;
		try {
			URL url = new File(System.getProperty(&quot;user.home&quot;), &quot;workspace&quot;).toURI().toURL();
			ChooseWorkspaceData data = new ChooseWorkspaceData(url);
			
			ChooseWorkspaceDialog dialog = new ChooseWorkspaceDialog(display.getActiveShell(), data, true, true);
			dialog.prompt(true);
			
			String selection = data.getSelection();
			if (selection != null)  {
				isWorkspaceSelected = true;
				data.writePersistedData();
				url = new File(selection).toURI().toURL();
				instanceLoc.set(url, false);
			} 
		} catch (Exception e) {
			throw new RuntimeException(e);
		}
		
		try {
			//removeHelpExtension();
			if (isWorkspaceSelected)  {
				int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor(display));
				if (returnCode == PlatformUI.RETURN_RESTART) {
					return IApplication.EXIT_RESTART;
				}
			}
			return IApplication.EXIT_OK;
		} finally {
			display.dispose();
		}
	}
}</description>
		<content:encoded><![CDATA[<p>Thanks for the article!  I was able to reuse Eclipse&#8217;s Workspace dialog instead of using another dialog.  Here&#8217;s code snippet from my Application.java file:</p>
<p>import org.eclipse.ui.internal.ide.ChooseWorkspaceData;<br />
import org.eclipse.ui.internal.ide.ChooseWorkspaceDialog;</p>
<p>public class Application implements IApplication {<br />
	public Object start(IApplicationContext context) {<br />
		Display display = PlatformUI.createDisplay();<br />
		Location instanceLoc = Platform.getInstanceLocation();<br />
		boolean isWorkspaceSelected = false;<br />
		try {<br />
			URL url = new File(System.getProperty(&#8220;user.home&#8221;), &#8220;workspace&#8221;).toURI().toURL();<br />
			ChooseWorkspaceData data = new ChooseWorkspaceData(url);</p>
<p>			ChooseWorkspaceDialog dialog = new ChooseWorkspaceDialog(display.getActiveShell(), data, true, true);<br />
			dialog.prompt(true);</p>
<p>			String selection = data.getSelection();<br />
			if (selection != null)  {<br />
				isWorkspaceSelected = true;<br />
				data.writePersistedData();<br />
				url = new File(selection).toURI().toURL();<br />
				instanceLoc.set(url, false);<br />
			}<br />
		} catch (Exception e) {<br />
			throw new RuntimeException(e);<br />
		}</p>
<p>		try {<br />
			//removeHelpExtension();<br />
			if (isWorkspaceSelected)  {<br />
				int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor(display));<br />
				if (returnCode == PlatformUI.RETURN_RESTART) {<br />
					return IApplication.EXIT_RESTART;<br />
				}<br />
			}<br />
			return IApplication.EXIT_OK;<br />
		} finally {<br />
			display.dispose();<br />
		}<br />
	}<br />
}</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adam</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-153</link>
		<dc:creator>Adam</dc:creator>
		<pubDate>Tue, 30 Aug 2011 10:36:15 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-153</guid>
		<description>Thanks for the great article!  It is always good to find a complete implementation for something when you are only looking for a starting point.  

The only change that I made was to add another preference value that remembers if the app is restarting from a workspace switch.  In the Application.start code, if that value is true then I reset it and set the remember variable to true so that the user does not get prompted for a workspace right after they already set the new one :)</description>
		<content:encoded><![CDATA[<p>Thanks for the great article!  It is always good to find a complete implementation for something when you are only looking for a starting point.  </p>
<p>The only change that I made was to add another preference value that remembers if the app is restarting from a workspace switch.  In the Application.start code, if that value is true then I reset it and set the remember variable to true so that the user does not get prompted for a workspace right after they already set the new one <img src='http://hexapixel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kaushik</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-148</link>
		<dc:creator>Kaushik</dc:creator>
		<pubDate>Wed, 09 Mar 2011 17:30:57 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-148</guid>
		<description>Nice article which is simple to understand, and it works too :)

Thanks a lot...</description>
		<content:encoded><![CDATA[<p>Nice article which is simple to understand, and it works too <img src='http://hexapixel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Thanks a lot&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emil</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-136</link>
		<dc:creator>Emil</dc:creator>
		<pubDate>Fri, 20 Aug 2010 17:42:49 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-136</guid>
		<description>Glad it helped :-)</description>
		<content:encoded><![CDATA[<p>Glad it helped <img src='http://hexapixel.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ken</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-134</link>
		<dc:creator>Ken</dc:creator>
		<pubDate>Fri, 20 Aug 2010 15:53:08 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-134</guid>
		<description>Thank you so much for posting this article. I&#039;ve been struggling with this for about a week and had about 80% of what you have here worked out, but that last 20% was killing me. Again, thank you for sharing your work!</description>
		<content:encoded><![CDATA[<p>Thank you so much for posting this article. I&#8217;ve been struggling with this for about a week and had about 80% of what you have here worked out, but that last 20% was killing me. Again, thank you for sharing your work!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Piotr</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-131</link>
		<dc:creator>Piotr</dc:creator>
		<pubDate>Mon, 26 Jul 2010 07:05:20 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-131</guid>
		<description>Very good article. Thank you. Now I&#039;m trying to set -data @noDefault through some config file (e.g. config.ini) but I can&#039;t get it working. Do you have any idea how to do it? I tried osgi.instance.area=@noDefault but it doesn&#039;t work.</description>
		<content:encoded><![CDATA[<p>Very good article. Thank you. Now I&#8217;m trying to set -data @noDefault through some config file (e.g. config.ini) but I can&#8217;t get it working. Do you have any idea how to do it? I tried osgi.instance.area=@noDefault but it doesn&#8217;t work.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-129</link>
		<dc:creator>Paul</dc:creator>
		<pubDate>Sun, 11 Jul 2010 12:33:39 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-129</guid>
		<description>Really great stuff, helped a lot and was nice to read.</description>
		<content:encoded><![CDATA[<p>Really great stuff, helped a lot and was nice to read.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erik</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-112</link>
		<dc:creator>Erik</dc:creator>
		<pubDate>Wed, 17 Feb 2010 07:54:50 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-112</guid>
		<description>Great! This works fine and it&#039;s very easy to understand. Thanks!</description>
		<content:encoded><![CDATA[<p>Great! This works fine and it&#8217;s very easy to understand. Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeff</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-79</link>
		<dc:creator>Jeff</dc:creator>
		<pubDate>Thu, 06 Aug 2009 10:39:33 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-79</guid>
		<description>Wow, an author who cares!
Thanks for the jar. I&#039;ve missed TableLayout,
but MigLayout is becoming more familiar over time.
Great, I have my own workspace(s), thanks.
Now on to custom projects and the CNF.</description>
		<content:encoded><![CDATA[<p>Wow, an author who cares!<br />
Thanks for the jar. I&#8217;ve missed TableLayout,<br />
but MigLayout is becoming more familiar over time.<br />
Great, I have my own workspace(s), thanks.<br />
Now on to custom projects and the CNF.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emil</title>
		<link>http://hexapixel.com/2009/01/12/rcp-workspaces/comment-page-1#comment-78</link>
		<dc:creator>Emil</dc:creator>
		<pubDate>Thu, 06 Aug 2009 04:27:20 +0000</pubDate>
		<guid isPermaLink="false">http://hexapixel.com/?p=483#comment-78</guid>
		<description>Thanks for the heads up, seems LatticeLayout is gone. I&#039;ve updated the post with a direct link to the jar that I uploaded to Hexapixel (which contains sources and javadoc too). Here&#039;s the same link: &lt;a href=&quot;/files/layout.jar&quot; rel=&quot;nofollow&quot;&gt;LatticeLayout Jar&lt;/a&gt;. I guess it&#039;s MigLayout from here on out.</description>
		<content:encoded><![CDATA[<p>Thanks for the heads up, seems LatticeLayout is gone. I&#8217;ve updated the post with a direct link to the jar that I uploaded to Hexapixel (which contains sources and javadoc too). Here&#8217;s the same link: <a href="/files/layout.jar" rel="nofollow">LatticeLayout Jar</a>. I guess it&#8217;s MigLayout from here on out.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

