## Release Notes for Eclipse EEF

This document contains the release notes for recent major releases of EEF.

### Changes in EEF 2.0.0

#### Specifier-Visible Changes

- Added You can now create Toolbar Actions on pages and groups in order to define small buttons in their toolbars.
- Added Buttons and Widget Actions can now use an image along with a label thanks to the new Image expression.
- Added It is now possible to execute some behavior when the end users will click on the Reference Widget thanks to the addition of an OnClick expression.
- Added You can indicate that a Dynamic Mapping For should force the refresh of the user interface with the Force Refresh property.

#### Developer-Visible Changes

- Modified The class `org.eclipse.eef.core.api.controllers.AbstractEEFController` and all its subclasses now require an EditingContextAdapter.
- Modified The interface `IConsumer` has now been replaced by `java.util.Consumer`.

### Changes in EEF 1.9.0

#### User-Visible Changes

- Added Add support for permissions with locks

### Changes in EEF 1.8.0

#### Specifier-Visible Changes

- Modified The selection variable of the hyperlink widget now refers properly to the value of the hyperlink.

#### Developer-Visible Changes

- Modified The interfaces of the controllers for the default widget will now return an IStatus in order to support potential issues after the execution of the callback.

### Changes in EEF 1.7.2

#### Specifier-Visible Changes

- Modified The dynamic mappings will take into account all the «if» blocks with a valid predicate expression and not only the first one.
- Modified Fixed an issue with the enablement of the widget actions of the reference widget.

### Changes in EEF 1.7.1

#### Specifier-Visible Changes

- Modified Fixed an issue where the variable `input` was not available for some expressions in the select and radio widget.
- Modified Improve the documentation of the available extension points

#### Developer-Visible Changes

- Added Added the documentation of the IEEFTabDescriptorFilter and IEEFExtReferenceViewerFilterProvider extension points.
- Modified Revert the lazy evaluation of the candidates of the select widget.

### Changes in EEF 1.7.0

#### User-Visible Changes

- Added Labels and hyperlinks can now have buttons on their right side.
- Modified Trigger the `editExpression` of a single line text widget on `enter`.

#### Specifier-Visible Changes

- Added A brand new widget outside of the default library is now available to edit references using an easier approach. Only the name of the reference to edit is necessary and the rest will be computed by the EEF runtime.
- Added Widget actions are now available on labels and hyperlinks.
- Added Labels and hyperlinks now have a displayExpression. If unused, the result of the valueExpression will be converted to a string using the `java.lang.Object#toString()` operation.
- Added A new widget named List has been added, it has the same behavior as the multiple reference widget of the previous release.
- Modified The edit operation of a text field can now be triggered by the loss of focus on the text field.
- Modified The edit operation of a mono-line text field can now be triggered by pressing enter.
- Modified A selection variable is available in the hyperlink widget, it is equals to the value of the hyperlink instead of self.

#### Developer-Visible Changes

- Modified The interface `org.eclipse.eef.core.api.EditingContextAdapter` has now a new method `getEditingDomain()` which is used to return an EditingDomain for the EEF runtime.
- Modified The constructor of the EEFLabelController now requires an EditingContextAdapter to run the expression of the widget actions.
- Added The class EEFStyleHelper is now API in order to help support style and conditional styles for custom widgets. Developers will need to override org.eclipse.eef.ide.ui.api.widgets.AbstractEEFWidgetLifecycleManager.getEEFStyleHelper() to provide their own implementation. The easiest way will need to extend the regular implementation and modify the three switchs to provide using the dedicated getters.

### Changes in EEF 1.6.2

#### User-Visible Changes

- Modified Trigger the `editExpression` of a text widget on focus lost.

### Changes in EEF 1.6.1

#### Non-Visible Changes

- Modified Fixed a memory leak when selecting other editors.
- Modified Fixed an issue the refresh of the Properties view with an EMF proxy

### Changes in EEF 1.6.0

#### User-Visible Changes

- Added The user interface has been recreated from scratch with a new runtime. As a result multiple changes can be visible in the user interface.

#### Specifier-Visible Changes

- Added A brand new language is available to create your user interface. Have a look at the documentation for additional details.

#### Developer-Visible Changes

- Added A brand new API is available to create your user interface. Have a look at the documentation for additional details.