Eclipse 4.0 and e4 2010 - New and Noteworthy

Here are some of the more noteworthy things available in milestone build M6 (May 21, 2010) which is now available for download. See the build notes for details about bugs fixed and other changes.


Introducing Eclipse SDK 4.0 What we previously called "e4 1.0" has now been split into two distinct efforts.

The first effort combines graduating software from e4 with the existing Eclipse platform to produce the Eclipse SDK 4.0 Early Adopter Release. This release will have a similar feature set to the Eclipse Helios release, but built on the new platform technology developed by the e4 project. See the Eclipse SDK 4.0 FAQ for more details about this release.

The second effort involves the remaining parts of e4 that will continue as incubating technology with a release in July 2010. This work includes new versions of components from last year's incubator release such as XWT, along with new areas of investigation such as e4 model tooling, REST-based resources, and more.

Eclipse SDK 4.0 download page Builds of Eclipse SDK 4.0 now have a separate download page. Go here to find the latest development builds of the Eclipse SDK 4.0 early adopter release.

Perspective switcher An early implementation of perspective switching is now available. You can open perspectives using the leftmost button on the switcher. You can also use the buttons on the switcher to switch between open perspectives. Some (but not all) of the perspective menu items in the Window menu are now implemented. Parts are now shared between perspectives, so that you can use the same editor across multiple perspectives. Support for perspectives in the compatibility layer is still ongoing, so not everything available in Eclipse 3.6 is implemented yet.

toolbar with perspective switcher


Support for null layout The standard SWT Composite has no layout by default. Its children can be manually positioned and arranged by the coordination x and y. It is known as Null Layout. In case of a Composite with a pre-defined layout, when this UI element is marked up in XWT, it is possible to need removing the layout and use it without layout. With this milestone, it can be done using an extension of markup "Null".

For example, MyFillComposite is a Composite with a FillLayout, we can create one without layout in the following way:

     <MyFillComposite layout-"{x:Null}"/>

Resource pre-processing By default, XWT UI resources are loaded directly to create runtime SWT UI controls. In some cases, we need to change dynamically some UIs during runtime. For example, it could be useful to change the UIs through some conditions such as security rules, user privileges, application context etc.

To meet this requirement, a pre-processing mechanism is introduced. A callback will be called just after the loading of XWT Resource if the following option is provided in XWT.loadWithOptions().

   options.get(IXWTLoader.BEFORE_PARSING_CALLBACK, preprocessor);
   XWT.loadWithOptions(url, options);

where the variable "preprocessor" is an instance of the type IBeforeParsingCallback.

e4 Visual Design Editor

Search capability

This milestone provides an useful search operation in Visual design view and Hierarchical outline view via the context menu.

Three submenu entries are created, corresponding to three kinds of search on Element Name, Element Id and Contribution URI.

The found element will be selected in the current part view.

This feature is a basic operation that can be used to setup the references between any elements in the Properties View.

Category display in hierarchical outline view

In the previous releases, Hierarchical Outline view uses EMF generated tree view to display the content of Workbench elements. The all contained elements were displayed as children in flat. For example, The elements of Handler and Command were displayed at the same level as the Trimmed Window.

This milestone changes the view by adding the categories per the containment property, except the children property.

Child creation via context menu In Hierarchical Outline view and Visual Design view, a context menu "New" is added for each node to create an immediate child.

After the calling of this menu, a dialog in Rich UI is displayed for data initialization, in which all required information (suffixed by "*") must be filled.

Rich UI edition in tabbed Properties View A user-friendly edition in Rich UI is added in the Properties View under a delegate Tab.

Model tooling

Single sourcing The Model Editor now comes with integration in the different flavors of the Eclipse Platform:
  • Eclipse 3.6 SDK:
  • Eclipse 4.0 SDK:
  • "Native" e4-Application:
Using the same code base. The only difference is how the component integrates into the different platforms.

Support for icon-URIs Support for selection constructing icons URIs has been added

Support for extended applications The editor bundle comes now with an extension point which allows it to deal with extended application models.

CSS themes A new system for defining, contributing to and switching between themes has been added and is in use in all Demos and the 4.0 SDK.

SimpleIDE Demo Work on another demo application has been started which shows how to write a very simple IDE like Application using pure e4-UI-Technologies

For more information take a look at: e4 wiki page

The above features are just the ones that are new since the previous milestone build. Summaries for earlier 1.0 milestone builds: