Catel history
=============
(+) Added
(*) Changed
(-) Removed
(x) Error / bug (fix)
For more information about issues or new feature requests, please visit:
http://catel.codeplex.com
===========
Version 2.0
===========
Release date:
=============
2011/08/04
Added/fixed:
============
(+) Added support for Windows Phone 7 Mango
(+) Added MVVM services for the following WP7 capabilities:
* Accelerometer
* Compass
* Gyroscope
* Vibration
(+) Added behavior for UserControl<TViewModel>, DataWindow<TViewModel> and Page<TViewModel>
so it is no longer required to derive from these classes to get the same behavior
(+) Added support for auditing and analytics
(+) Added support for data annotations, all registered properties on DataObjectBase
and ViewModelBase can now be decorated with data annotation attributes
(+) Added RaisePropertyChanged as alternative for OnPropertyChanged for the developers
that prefer it. Internally it still uses OnPropertyChanged. Also added type-safe way
to call the method: RaisePropertyChanged(() => MyProperty)
(+) Added CloseViewModelOnUnloaded to UserControl<TViewModel>. If set to false, the control
will not close the view model and re-use it the next time
(+) IPleaseWaitService now implements Pop and Push to allow multiple view models to use the
same please wait service without flickering. Each view model should Push when beginning
and Pop when ending an action. If the last view model calls Pop, the please wait window
is hidden
(+) Added IPleaseWaitService support for Silverlight by using the BusyIndicator
(+) IUIVisualizer now supports naming convention so it is easy to register windows via
naming conventions when the Windows do not implement DataWindow<TViewModel>
(+) BREAKING CHANGE: Added new ServiceLocator which also supports unity, but the references
to unity are no longer required for Catel
(+) Added INavigationService for WPF and Silverlight
(+) Added DoubleClickToCommand and UpdateBindingOnTextChanged interactivity behaviors
(*) BREAKING CHANGE: properties on the EventToCommand implementation for WP7 can now be set
via direct values and bindings (until now, only bindings were supported). So set a value
via a direct value, use the
PropertyNameByValue convention
(*) BREAKING CHANGE: removed all obsolete methods marked obsolete in 1.4
(*) BREAKING CHANGE: EventToCommand has been moved to a new namespace (Catel.Windows.Interactivity)
(*) EventToCommand can now disable the associated object if required in Silverlight and WP7
(*) If a view (such as a dialog) is closed from within a viewmodel, the DialogResult is now
correctly being set if supported by the view
(*) Command class now accepts Execute and CanExecute methods without a parameter (very useful
in lots of cases where the parameter is not being used)
(*) Most public methods in the MVVM Services are now marked virtual so it is easy to customize
an out-of-the-box service implementation
(*) ViewModelBase now only registers services in the ServiceLocator when they are not already
registered. This allows customization of the ServiceLocator before viewmodels are actually
instantiated
(*) It's now possible to add assemblies from a Xap file to AssemblyHelper.RegisterAssembliesFromXap
so AssemblyHelper.GetLoadedAssemblies() also includes dynamically loaded xap assemblies
(*) ViewModelServiceManager is now deleted. Injected services in ViewModelBase always take precedence
over services registered in the ServiceLocator. Since the ServiceLocator fully takes care of
caching, the ViewModelServiceManager is no longer required
(*) DataObjectBase.InitializeProperty is now protected instead of private to enable dynamic property
registeration and initialization
AND MORE! THE FULL RELEASE NOTES ARE INCLUDED IN THE PACKAGES!