
GUI Commands Change History
===========================

Version 2.1
-------------
### New Features
* New annotions for creating and binding ActionCommands and SwingWorkerCommands from regular
  methods.  The new annotations are processed using GuiCommands.bindAnnotatedCommands(..).
* New DEBUG mode for command groups that shows missing members.  The debug mode is activated
  by specifying the system property `com.pietschy.command.debugGroups=true`.
* New support for DelegatingToggleCommands and DelegatingToggleGroups.
* New converter utility for converting old 1.1.x configuration files to the new 2.x format.


### Changes
* Added ActionCommand.getContainerProperty() convenience method for retrieving CommandContainer
  properties.
* Added ActionCommand.addContainerPropertyListener() methods to monitor container properties
  in a manner similar to standard property changes listeners.
* Command Ids can not longer contain spaces.  This allows improved error checking in 
  group member specifications.
* ActionCommandExcecutor now exends Identifiable to simplify usage of delegates.
* Renamed ToggleCommandGroup to ToggleGroup.
* Renamed DelegateContainer to DelegateProvider to avoid confusion with CommandContainers.
* Updated DefaultDelegateMediator and FocusTrackingDelegateMediator to allow the direct 
  addition of delegates without having to provide a DelegateProvider.
* Fixed case where delegate could find themselves as the delegate to use.
* Added DelegateProviderSupport to assist in implemention DelegateProvider without having
  to use a CommandContainer.  
* Added SwingWorkerCommand finished(..), failed(..) and cancelled(..) convenience
  methods.
* Deprecated SwingWorkerCommand.WorkingMode and replaced it with boolean properties 
  `disableWhileWorking` and `activateGlassPane`.
* Updated CommandHyperLinkListener to also accept a list of commands instead of just a
  CommandContainer instance.
* Deprecated HoverManager.getInstanceFor(Window) and replaced it with 
  GuiCommands.getHoverManagerFor(Window) to make it easier to find.
* Changes to ReflectionCommand including moving to new package 'reflection' as
  well as adding ArgumentProvider and ExceptionHandler interfaces for abstracting
  argument and exception handling.
* Added getters on ReflectionCommand for the target object and method.
* Refactored CommandGroup package.
* Made Command.getButtonFactory() and associated methods protected to avoid confusion on 
  how to create a buttons.
* Various configuration parser cleanups.  
* Javadoc and build updates in preparation for the source code license. 
* Improvements to the User Guide including support for online searching.
* Cleaned up demo and added more comments.

### Bug Fixes
* Fixed bug where faces were not removing listeners when they were re-parented.
* Fixed issues with not being able to change the standard drop down icon for
  groups in DefaultFaceRenderer.
* Fixed spelling in RenderContext.isFirstMember().
* Removed duplicate copy of Defaults object.


Version 2.0
-----------

* Initial Release