What's new in the latest SoapBox Core version?

asked 11 Sep '10, 20:46

Scott%20Whitlock's gravatar image

Scott Whitlock ♦♦
696262833
accept rate: 50%


Version 2010.09.11 includes these changes:

  • Should now be able to build to an x86 target
  • Improved ability to plug in a custom OptionsDialog and OptionsDialogView (thanks to BSalita)
  • New and improved resizable OptionsDialogView.xaml with mouseover effects (complements of BSalita)
  • LayoutManager now auto-sets the given document as Active when calling ShowDocument (and ILayoutManager now has IsActive function). Thanks to Lee for requesting this and posting some code.
  • Window menu now auto-populates with the open documents, and the active one is checked (thanks to dhm for coming up with the idea and posting some code to get me started)
  • Added the CloseAllDocuments menu item to the Window menu
  • Added the VMProperty.snippet (vmprop) for making ViewModel properties that implement INotifyPropertyChanged
  • IMenuItem now has the IsSubmenuOpen property that is bound from the main menu - great for setting a custom submenu when opening (see an example here)
  • Added ConcreteMenuItemSeparator - just a quick way to build a menu separator
  • Added the SortAndJoin function to IExtensionService (hint: use a new ConcreteMenuItemSeparator as the joining item when you're making a combined submenu from two imported or constructed lists of IMenuItems - see an example here)
  • SoapBox.Utilities now has the IFactory< T > generic interface. Useful for many scenarios, particularly importing an IFactory< Window >.
  • Big improvements for creating Context Menus (see examples... still writing them )
  • New TreeView ViewModel and View (see this question)
link

answered 11 Sep '10, 20:55

Scott%20Whitlock's gravatar image

Scott Whitlock ♦♦
696262833
accept rate: 50%

edited 12 Sep '10, 09:34

The new release is working great. However, I had some issues due to patches that I made in the previous version. Due to comment length restrictions, I have to list them individually below.

(12 Sep '10, 05:14) BSalita

Got MEF errors in Compose "An attempt was made to load a program with an incorrect format." This is due to use of mixing x86 and x64 assemblies. Apparently MEF doesn't handle this. The solution is to go into Visual Studio's Configuration Manager and create profiles for x86 for both SoapBox and your app. Then recompile all.

(12 Sep '10, 05:17) BSalita

On the previous version, I patched in dhm's Submenu events. They are now replaced by AbstractMenuItem's OnIsSubmenuOpenChanged method call.

(12 Sep '10, 05:17) BSalita

Maybe I'm imagining it but I thought the main window (AvalonDock) opened over Visual Studio. Now it's opening under.

(12 Sep '10, 05:17) BSalita

Wow, that's weird. Both my demo app and app in development load over top of visual studio. You are correct that the Submenu* events are now replaced by the IsSubmenuOpen property and associated virtual method. This is cleaner because it avoids the ViewModel having to know about the View. Not sure what you mean about the x86 vs. x64 profiles. Is there something we can change in SBC to fix that?

(12 Sep '10, 09:24) Scott Whitlock ♦♦

Great work Scott!

(16 Sep '10, 23:01) Mark Phipps ♦♦
1

I believe the open-under issue was related to breakpoints. I removed some breakpoints that weren't being hit and the main window is now opening on top. I'm confused about this thought. I thought the breakpoints should have been hit but weren't. The breakpoints did show as active.

(20 Sep '10, 02:51) BSalita

@BSalita: Check if your running in debug vs. release mode for all assemblies with breakpoints in them.

(21 Sep '10, 22:04) Scott Whitlock ♦♦
showing 5 of 8 show 3 more comments
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "Title")
  • image?![alt text](/path/img.jpg "Title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Tags:

×6

Asked: 11 Sep '10, 20:46

Seen: 4,631 times

Last updated: 21 Sep '10, 22:04

powered by OSQA