Antony Male
49f851e384
Accent any (reasonable) event signature for EventAction, not just RoutedEventHandler
2015-01-14 09:59:36 +00:00
Antony Male
68a60b0aee
CommandAction unwraps TargetInvocationException, preserving stack trace
2015-01-14 08:30:08 +00:00
Antony Male
407a646fdc
Dispose the container on exit
2015-01-12 13:15:10 +00:00
Antony Male
0b8c22fc08
Fix Resharper warnings, and downgrade unnecessary ones to Hint
2015-01-12 10:24:26 +00:00
Antony Male
fd69a61ed5
Add workaround to error showing dialog when main window closed
2015-01-10 17:13:59 +00:00
Antony Male
9e9355ffe0
Add StyleCop support
...
Most of the violations were documentation changes
2015-01-10 14:22:28 +00:00
Antony Male
487c288bd3
Stop View from being instantiated
2015-01-09 11:08:00 +00:00
Antony Male
6311176648
Avoid access exception when updating CanExecuteChanged from a non-UI thread
2015-01-07 21:24:28 +00:00
Antony Male
611474c014
Catch exception when application closed
2015-01-07 20:58:12 +00:00
Antony Male
c9d6fd0bb3
Make Bootstrapper.Container a property
2015-01-07 20:22:56 +00:00
Antony Male
234cc60933
Merge branch 'release/1.0.4' into develop
2015-01-07 12:50:12 +00:00
Antony Male
7081b08d5d
Bump version
2015-01-07 12:47:11 +00:00
Antony Male
87ef7d3539
Update changelog
2015-01-07 12:46:43 +00:00
Antony Male
445861ee53
Standardise on whether we allow inherit on InjectAttribute
2015-01-07 12:42:48 +00:00
Antony Male
37bf6e7084
Merge branch 'feature/collection-changing' into develop
2015-01-06 14:06:56 +00:00
Antony Male
0a169e6b69
Add unit tests for BindableCollection modifications
2015-01-06 14:06:14 +00:00
Antony Male
f26413f5a7
Catch corner-case with ConductorAllActive where AddRange / RemoveRange wouldn't handle added/removed items
2015-01-06 13:43:31 +00:00
Antony Male
0a541c769c
Modify BindableCollection to carry out all operations on the UI thread
...
This means the concept of a dispatcher for it is now out of date - remove
these
2015-01-05 17:27:39 +00:00
Antony Male
e73cd237dd
Fix up code analysis
2015-01-05 13:21:07 +00:00
Antony Male
260bfee4c3
Remove and sort usings in samples and bootstrappers
2015-01-05 13:14:33 +00:00
Antony Male
5633bf9fb3
Merge branch 'feature/design-time' into develop
...
Fixes #2
2015-01-05 13:08:04 +00:00
Antony Male
2032fdad77
Add a littl more text to the design-time example
2015-01-05 13:07:50 +00:00
Antony Male
a9e541c1a1
Get test coverage back up
2015-01-05 13:04:29 +00:00
Antony Male
2ce3545de2
Add design-time sample
2015-01-05 12:29:39 +00:00
Antony Male
da2964c250
Ensure Execute.Dispatcher is set even at Design Time
2015-01-05 12:29:39 +00:00
Antony Male
d49886c700
Command Actions don't disable if the ActionTarget is null and we're in design mode
...
Most of the time, the user won't bother binding s:View.ActionTarget, and it's
nice to show a more "normal" button in this case, rather than a disabled
one.
2015-01-05 12:29:11 +00:00
Antony Male
e0ee7f21ff
Support Design-mode in View
...
We don't try and resolve the actual View (and its ViewModel), but instead
display a little message message
2015-01-05 12:29:11 +00:00
Antony Male
3f2d298ba2
Add more descriptive exceptions to Action error cases
2015-01-05 12:28:26 +00:00
Antony Male
d62ea7a22d
Allow setting of Execute.InDesignMode, for obscure unit testing ONLY
2015-01-05 12:22:00 +00:00
Antony Male
b538f11453
Fix up previous commit
2015-01-05 12:21:46 +00:00
Antony Male
f36de34bb2
Execute.Dispatcher can never be null, and dispatches synchronously by default
...
The previous behaviour was to raise an exception unless Execute.Dispatcher
had been explicitly defined. This was to detect cases where the user hadn't
set up Execute correctly, and treat them as errors rather than simply going
ahead with some possibly-unexpected behaviour.
However, since BootstrapperBase sets Execute.Dispatcher automatically, it's
highly unlikely that itwould ever not be set when it needed to be. Exceptions
are design mode and unit tests, both of which want (or can cope with) a
synchronous dispatcher.
Hence the behaviour change. Execute.Dispatcher is a synchronous dispatcher
by default, but is overridden to one that uses Application.Current.Dispatcher
by the bootstrapper if we're in a real application.
2015-01-04 21:30:34 +00:00
Antony Male
27b80717ea
Make View name resolution a bit smarter
2015-01-04 17:05:16 +00:00
Antony Male
9f9e282fdd
Add bootstrapper which does not require an IoC container
2015-01-04 13:23:29 +00:00
Antony Male
9ee23f1469
Remove Execute.TestExecuteSynchronously, in favour of a synchronous IDispatcher implementation
2015-01-04 13:10:37 +00:00
Antony Male
9765f6c3fe
Fix up BindableCollection collection dispatcher, and add tests
2015-01-04 12:37:33 +00:00
Antony Male
2ed54c4acd
Refactor BootstrapperBase slightly, to call OnStartup at a better point in time
2015-01-04 12:28:02 +00:00
Antony Male
6d72032f8c
Allow IModelValidator to return IEnumerable<string> rather than string[]
...
Closes #1
2014-12-26 22:55:41 +00:00
Antony Male
875586f32a
Merge branch 'release/1.0.3' into develop
2014-12-11 16:58:32 +00:00
Antony Male
c0add88302
Bump version
2014-12-11 16:58:22 +00:00
Antony Male
9bc2950fee
Update changelog
2014-12-11 16:57:44 +00:00
Antony Male
4a2c345bec
Have different default PropertyChanged and CollectionChanged despatchers
...
This is because PropertyChanged events can be async - WPF handles the
marshalling. However if CollectionChanged events are async, then the
thing listening to the event can still be iterating the collection while
the user's editing it, leading to irritating little exceptions
2014-12-05 10:59:22 +00:00
Antony Male
94d4a31b85
Be draconian about using readonly where appropriate
2014-12-04 17:06:12 +00:00
Antony Male
91eab0958f
Stop marking exceptions as Serializable - it's not needed
2014-12-04 13:34:20 +00:00
Antony Male
a48eda896f
Remove LambdaComparer and LambdaEqualityComparer - they have no business in an MVVM framework
2014-12-04 13:29:08 +00:00
Antony Male
46672cb0b9
Merge branch 'release/1.0.2' into develop
2014-12-02 17:41:57 +00:00
Antony Male
9702fcf70b
Bump version
2014-12-02 17:39:46 +00:00
Antony Male
08636798db
Update changelog
2014-12-02 17:38:39 +00:00
Antony Male
509d428dc8
Move back to lots of separate arguments for ShowMessageBox - consistent with MessageBox.Show
2014-12-02 16:16:32 +00:00
Antony Male
f47db1cbec
Change some Bootstrapper methods to public, to avoid explicit interface implementation
2014-12-02 15:20:16 +00:00
Antony Male
743961ec68
ViewManager now accepts an IViewManagerConfig, which makes the IoC container setup neater
2014-12-02 12:52:58 +00:00