<?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>Soapbox Automation &#187; Soapbox Core</title>
	<atom:link href="http://soapboxautomation.com/category/core/feed/" rel="self" type="application/rss+xml" />
	<link>http://soapboxautomation.com</link>
	<description>Automation everywhere, for everyone</description>
	<lastBuildDate>Sun, 18 Sep 2011 02:57:03 +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>SoapBox Core 2010.11.29 Released!</title>
		<link>http://soapboxautomation.com/core/soapbox-core-2010-11-29-released/</link>
		<comments>http://soapboxautomation.com/core/soapbox-core-2010-11-29-released/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 01:22:56 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=57</guid>
		<description><![CDATA[I&#8217;ve just pushed the latest version of SoapBox Core (2010.11.29) and the Pin Ball Demo to the SVN repository.  You can download them from the downloads page.  This release has a handful of new features.  You can read the details at ask.soapboxcore.com.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just pushed the latest version of SoapBox Core (2010.11.29) and the Pin Ball Demo to the <a href="http://svn.soapboxcore.com/svn/" target="_blank">SVN repository</a>.  You can download them from the <a href="http://soapboxcore.com/download.html" target="_self">downloads page</a>.  This release has a handful of new features.  You can read the details at <a title="What's new in version 2010.09.11 of SoapBox Core?" href="http://ask.soapboxcore.com/questions/151/whats-new-in-soapbox-core-20100911" target="_self">ask.soapboxcore.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/soapbox-core-2010-11-29-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SoapBox Core 2010.09.11 Released!</title>
		<link>http://soapboxautomation.com/core/soapbox-core-2010-09-11-released/</link>
		<comments>http://soapboxautomation.com/core/soapbox-core-2010-09-11-released/#comments</comments>
		<pubDate>Sun, 12 Sep 2010 00:21:50 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=58</guid>
		<description><![CDATA[I&#8217;ve just pushed the latest version of SoapBox Core (2010.09.11) and the Pin Ball Demo to the SVN repository.  You can download them from the downloads page.  This release has a handful of new features.  You can read the details at ask.soapboxcore.com.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just pushed the latest version of SoapBox Core (2010.09.11) and the Pin Ball Demo to the <a href="http://svn.soapboxcore.com/svn/" target="_blank">SVN repository</a>.  You can download them from the <a href="http://soapboxcore.com/download.html" target="_self">downloads page</a>.  This release has a handful of new features.  You can read the details at <a title="What's new in version 2010.09.11 of SoapBox Core?" href="http://ask.soapboxcore.com/questions/151/whats-new-in-soapbox-core-20100911" target="_self">ask.soapboxcore.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/soapbox-core-2010-09-11-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing Ask.SoapBoxCore.com</title>
		<link>http://soapboxautomation.com/core/announcing-ask-soapboxcore-com/</link>
		<comments>http://soapboxautomation.com/core/announcing-ask-soapboxcore-com/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 00:26:00 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[support]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=60</guid>
		<description><![CDATA[We&#8217;re excited about the response we&#8217;ve received about SoapBox Core, mostly over at the CodeProject Article.  We decided we needed a better and more dynamic support site for SoapBox Core, so we setup a StackOverflow-like Q&#38;A site specifically dedicated to SoapBox Core questions:ask.soapboxcore.com. We moved all the content from the wiki over to this new [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re excited about the response we&#8217;ve received about SoapBox Core, mostly over at the CodeProject Article.  We decided we needed a better and more dynamic support site for SoapBox Core, so we setup a StackOverflow-like Q&amp;A site specifically dedicated to SoapBox Core questions:<a title="Ask.SoapBoxCore.com" href="http://ask.soapboxcore.com/" target="_self">ask.soapboxcore.com</a>.</p>
<p>We moved all the content from the wiki over to this new site, so it should be your one-stop-shop for all things SoapBox Core.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/announcing-ask-soapboxcore-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SoapBox Core 2010.05.24 Released!</title>
		<link>http://soapboxautomation.com/core/soapbox-core-2010-05-24-released/</link>
		<comments>http://soapboxautomation.com/core/soapbox-core-2010-05-24-released/#comments</comments>
		<pubDate>Tue, 25 May 2010 00:19:21 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=61</guid>
		<description><![CDATA[I&#8217;ve just pushed the latest version of SoapBox Core (2010.05.24) and the Pin Ball Demo to the SVN repository.  You can download them from the downloads page.  This release has some new features and improvements to existing functionality: Added ReverseBooleanToVisibilityConverter to the SoapBox.Utilities assembly (so you can make something visible when a property is false). Added a [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just pushed the latest version of SoapBox Core (2010.05.24) and the Pin Ball Demo to the <a href="http://svn.soapboxcore.com/svn/" target="_blank">SVN repository</a>.  You can download them from the <a href="http://soapboxcore.com/download.html" target="_self">downloads page</a>.  This release has some new features and improvements to existing functionality:</p>
<ul>
<li>Added ReverseBooleanToVisibilityConverter to the SoapBox.Utilities assembly (so you can make something visible when a property is false).</li>
<li>Added a ProgressBar control to the Status Bar controls!  (I admit that should have been there from the start.)  When you inherit from AbstractStatusBarProgressBar, remember to set the Minimum, Maximum, and Value properties appropriately.  You&#8217;ll probably want to play with the Width property too.</li>
<li>Documents and Pads now keep the tab text in sync with the Title/Name property of the IPad or IDocument ViewModel.</li>
<li>Buttons, buttons, buttons: If you want to create a row of buttons, for instance, across the bottom of your View, then create a property on your ViewModel called Buttons that returns an IEnumerable&lt;IButton&gt;.  Then populate that collection with objects that inherit from AbstractButton.  Put an ItemsControl in your View that binds its ItemsSource property to the Buttons property, and voila&#8230; MVVM buttons anywhere.</li>
<li>To support this new button functionality, IButton (and AbstractButton) now includes IsCancel and IsDefault properties, along with Margin and Padding properties so you can get them to look the way you want.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/soapbox-core-2010-05-24-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Documentation Updated</title>
		<link>http://soapboxautomation.com/core/documentation-updated/</link>
		<comments>http://soapboxautomation.com/core/documentation-updated/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 00:24:06 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=62</guid>
		<description><![CDATA[I&#8217;ve finished updating the SoapBox Core Documentation Wiki for version 2010.03.17.  Sorry that took so long.  One of the most interesting new features is the ability to have extensible context menus using the Model-View-ViewModel pattern, meaning the IMenuItem object can get a reference to the ViewModel that opened the context menu.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve finished updating the <a title="SoapBox Core Documentation" href="https://soapboxautomation.fogbugz.com/default.asp?W1" target="_blank">SoapBox Core Documentation Wiki</a> for version 2010.03.17.  Sorry that took so long.  One of the most interesting new features is the ability to have <a title="Extensible Context Menus using MVVM" href="https://soapboxautomation.fogbugz.com/default.asp?W17" target="_blank">extensible context menus using the Model-View-ViewModel pattern</a>, meaning the IMenuItem object can get a reference to the ViewModel that opened the context menu.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/documentation-updated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SoapBox Core 2010.03.17 Released!</title>
		<link>http://soapboxautomation.com/core/soapbox-core-2010-03-17-released/</link>
		<comments>http://soapboxautomation.com/core/soapbox-core-2010-03-17-released/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 00:18:04 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=63</guid>
		<description><![CDATA[I&#8217;ve just pushed the latest version of SoapBox Core (2010.03.17) and the Pin Ball Demo to the SVN repository.  You can download them from the downloads page.  This release has some new features and improvements to existing functionality: Moved NotifyPropertyChangedHelper into a new Assembly: SoapBox.Utilities Added SoapBox.Core.Messaging (an implementation of the new IMessagingService interface) Added SoapBox.Core.FileDialog (an [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just pushed the latest version of SoapBox Core (2010.03.17) and the Pin Ball Demo to the <a href="http://svn.soapboxcore.com/svn/" target="_blank">SVN repository</a>.  You can download them from the <a href="http://soapboxcore.com/download.html" target="_self">downloads page</a>.  This release has some new features and improvements to existing functionality:</p>
<ul>
<li>Moved NotifyPropertyChangedHelper into a new Assembly: SoapBox.Utilities</li>
<li>Added SoapBox.Core.Messaging (an implementation of the new IMessagingService interface)</li>
<li>Added SoapBox.Core.FileDialog (an implementation of the new IFileDialogService interface) which provides ViewModels for Open and Save dialog boxes</li>
<li>Uses IPartImportsSatisfiedNotification instead of ImportingConstructor, which is a better way to use MEF</li>
<li>IDocument and AbstractDocument are now document factories.  For instance, you can define a text editor document, and it can create new instances of itself every time the user opens a document.  The default implementation is to return itself, but that can be overridden.  (Thanks to ipeksinan over at the <a title="Building an Extensible Application with MEF, WPF, and MVVM" href="http://www.codeproject.com/KB/WPF/SoapBoxCorePinBallDemo.aspx" target="_blank">CodeProject Article about SoapBox Core</a> for pointing out the deficiency.)</li>
<li>Significant changes to LayoutManager (and ILayoutManager):
<ul>
<li>LayoutManager now doesn&#8217;t save to its own files or auto-restore when you launch, it just gives you a blob on SaveLayout which you can pass back to RestoreLayout.  This works much better as you can save the layout in your own user file, and restore it when they open that file, project or solution.  Note that the blob is standard base64 encoded, plus a couple of period characters (.) so it&#8217;s easy to stuff into other containers, like XML documents.</li>
<li>Added HidePad(&#8230;)</li>
<li>Added HideAllPads()</li>
<li>Added CloseDocument(&#8230;)</li>
<li>Added CloseAllDocuments()</li>
</ul>
</li>
<li>IMenuItem/AbstractMenuItem now supports context menus.  I&#8217;ll have to post some code on the <a href="https://soapboxautomation.fogbugz.com/default.asp?W1" target="_blank">documentation wiki</a> to explain how it works.</li>
<li>Added a ShutdownCommands extension point to SoapBox.Core.Host</li>
<li>Added an Extensions namespace to SoapBox.Core.  This is where all the individual extensions within SoapBox Core are defined (like the default menu items, etc.) so they&#8217;re now strongly typed instead of being hard coded strings.  So if you wanted to insert a menu item before File, you could reference it as SoapBox.Core.Extensions.Workbench.MainMenu.File and use that in your InsertRelativeToID property.  I suggest setting up an Extensions namespace the same way in your own application.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/soapbox-core-2010-03-17-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Article about SoapBox Core on CodeProject</title>
		<link>http://soapboxautomation.com/core/article-about-soapbox-core-on-codeproject/</link>
		<comments>http://soapboxautomation.com/core/article-about-soapbox-core-on-codeproject/#comments</comments>
		<pubDate>Sun, 22 Nov 2009 01:34:42 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[demo]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=66</guid>
		<description><![CDATA[I&#8217;ve just posted an article over on CodeProject that gives a good introduction to SoapBox Core and how to use it to write an extensible WPF application with the Model-View-ViewModel pattern.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just posted an <a title="SoapBox Core Pin Ball Demo on CodeProject" href="http://www.codeproject.com/KB/WPF/SoapBoxCorePinBallDemo.aspx" target="_self">article over on CodeProject</a> that gives a good introduction to SoapBox Core and how to use it to write an extensible WPF application with the Model-View-ViewModel pattern.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/article-about-soapbox-core-on-codeproject/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SoapBox Core Pin Ball Demo Updated</title>
		<link>http://soapboxautomation.com/core/soapbox-core-pin-ball-demo-updated/</link>
		<comments>http://soapboxautomation.com/core/soapbox-core-pin-ball-demo-updated/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 01:30:23 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[demo]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=65</guid>
		<description><![CDATA[I have modified the SoapBox Core Pin Ball Demo article on CodeProject based on SoapBox Core 2009.11.11.  They are minor improvements, but it sets us up for more maintainability in the future.]]></description>
			<content:encoded><![CDATA[<p>I have modified the SoapBox Core Pin Ball Demo <a title="SoapBox Core Pin Ball Demo on CodeProject" href="http://www.codeproject.com/KB/WPF/SoapBoxCorePinBallDemo.aspx" target="_self">article on CodeProject</a> based on SoapBox Core 2009.11.11.  They are minor improvements, but it sets us up for more maintainability in the future.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/soapbox-core-pin-ball-demo-updated/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SoapBox Core 2009.11.11 Released!</title>
		<link>http://soapboxautomation.com/core/soapbox-core-2009-11-11-released/</link>
		<comments>http://soapboxautomation.com/core/soapbox-core-2009-11-11-released/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 01:16:09 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=64</guid>
		<description><![CDATA[I&#8217;ve just checked in version 2009.11.11 of the SoapBox Core code and Pin Ball Demo into the public repository.  I also updated the documentation wiki to reflect the changes: All contract names use hierarchical string constants now instead of hard coded strings.  Makes finding extension points a lot easier, not to mention finding things that have extended [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just checked in version 2009.11.11 of the SoapBox Core code and Pin Ball Demo into the <a title="SoapBox Core SVN Repository" href="http://svn.soapboxcore.com/svn/" target="_self">public repository</a>.  I also updated the <a title="SoapBox Core Documentation" href="https://soapboxautomation.fogbugz.com/default.asp?W1" target="_self">documentation wiki</a> to reflect the changes:</p>
<ul>
<li>All contract names use hierarchical string constants now instead of hard coded strings.  Makes finding extension points a lot easier, not to mention finding things that have extended certain extension points.</li>
<li>Documents and Pads are now Lazy-imported, and only instantiated if necessary.</li>
<li>Made changes to allow recomposition, in preparation for a planned add-in manager that will add extensions &#8220;on the fly&#8221;.</li>
</ul>
<p>I will update the <a title="SoapBox Core Pin Ball Demo on CodeProject" href="http://www.codeproject.com/KB/WPF/SoapBoxCorePinBallDemo.aspx" target="_self">CodeProject article</a> within the next few days to reflect the new version.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/soapbox-core-2009-11-11-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SoapBox Core Released!</title>
		<link>http://soapboxautomation.com/core/soapbox-core-released/</link>
		<comments>http://soapboxautomation.com/core/soapbox-core-released/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 01:33:59 +0000</pubDate>
		<dc:creator>mark</dc:creator>
				<category><![CDATA[Soapbox Core]]></category>
		<category><![CDATA[core]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://soapboxautomation.com/?p=67</guid>
		<description><![CDATA[SoapBox Core Version 2009.11.04 is available for Download!  I&#8217;ve also started working on some documentation.]]></description>
			<content:encoded><![CDATA[<p>SoapBox Core Version 2009.11.04 is <a title="Download SoapBox Core" href="http://soapboxcore.com/download.html" target="_self">available for Download</a>!  I&#8217;ve also started working on <a title="SoapBox Core Documentation" href="https://soapboxautomation.fogbugz.com/default.asp?W1" target="_self">some documentation</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://soapboxautomation.com/core/soapbox-core-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

