Twitter Logo Follow us on Twitter
Project Information About this project

RAP 1.1 M3 - New and Noteworthy

Here are some of the more noteworthy things that will be available in the milestone build M3 (April 7, 2008)which is now available for download.

This list shows all bugs that were fixed during this milestone.


UI Styling API Support for background images
The methods Control#get/setBackgroundImage() allow to set background images on almost all controls.

Support for transparency
The methods Composite#get/setBackgroundMode() are now available. Setting the background mode of a control to SWT.INHERIT_DEFAULT lets all labels, links, checkboxes etc. on this composite inherit its background color and image.

Semi-transparent Shells
Thanks to the SWT 3.4 method get/setAlpha(), Shells can now be semi-transparent. This feature is also useful to place a shading layer below a modal dialog window as seen on some Web 2.0 sites.

Theming Variants It is now possible to define variants of widget types that can be styled separately. As an example, an application that uses PUSH buttons in a special side bar can define a variant "side-button" and apply a different styling to these buttons. This styling only applies to the buttons belonging to the variant and does not affect any other PUSH buttons in the application.

The variant is set using the widget user data (Widget#setData()), so the code remains 100% SWT compatible.

ISettingStore There is a new subsystem in RWT that allows to persist user-specific settings:

RWT.getSettingStore().setAttribute( "myAttribute", "myValue" );.

The setting store allows to restore settings made in a previous session:

RWT.getSettingStore().getAttribute( "myAttribute" );.

The setting store uses browser cookies to identify the settings of previous sessions.
It is also possible to load specific settings independently from cookies:

RWT.getSettingStore().loadById( "myId" ).

This is for example useful in case that certain settings should only be available after the user has gone through an authentication process.
Note that the setting store subsystem is used by the new ScopedPreferenceStore implementation of the workbench.

See API documentation for more information.

Mouse Events RWT now has support for MouseEvents. Calling addMouseListener on a Control will notify you about mouseUp, mouseDown and mouseDoubleClick events.

Please be aware that, apart from the API, there are still some limitations that will be addressed during the next development cycle.


Support for activities The RAP Workbench now supports the org.eclipse.ui.activities and org.eclipse.ui.activitySupport extension points. You can control the visibility of views, editors, perspectives, menu and toolbar items using activities and trigger points. See the extension point documentation for details.

RAP HttpContext The RAP servlet now uses its own HttpContext implementation. This allows other servlets to map to that context too. This enables the possibility to share the same session instances between those servlets and the RAP servlet for data exchange.

ScopedPreferenceStore The RAP workbench provides now org.eclipse.ui.preferences.ScopedPreferenceStore that allows to read and set user-specific preferences using the preference mechanism provided by org.eclipse.core.runtime. The base of the storage mechanism is a subsystem of RWT represented by org.eclipse.rwt.service.ISettingStore. The session aware org.eclipse.jface.preference.IPreferenceStore can be retrieved using the method org.eclipse.ui.plugin.AbstractUIPlugin.getPreferenceStore.

See API documentation for more information.

Import-/Exportwizards RAP supports now Import- and Exportwizards by providing the extension points importWizards and exportWizards. See also ActionFactory.IMPORT and ActionFactory.EXPORT for opening the import-/export wizard.

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