blob: ef9396bfabe7471446d77a0faf191bad70df98dd [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Language" content="en-us" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" href="default_style.css" type="text/css" title="main" media="screen" />
<title>Eclipse Project 4.4 M6 News</title>
</head>
<body>
<h1>Eclipse Project 4.4 M6 - New and Noteworthy</h1>
<p>Here are some of the more noteworthy things available in milestone build M6
(March 7, 2014) which is now available for <a href="http://download.eclipse.org/eclipse/downloads/" target="_top">download</a>.
<br/>
We also recommend to read the Tips and Tricks, either via <b>Help &gt; Tips and Tricks...</b> or online for
<a href="http://help.eclipse.org/topic/org.eclipse.platform.doc.user/tips/platform_tips.html">Platform</a>,
<a href="http://help.eclipse.org/topic/org.eclipse.jdt.doc.user/tips/jdt_tips.html">JDT</a>, and
<a href="http://help.eclipse.org/topic/org.eclipse.pde.doc.user/tips/pde_tips.htm">PDE</a>.
</p>
<ul>
<li><a href="#Platform">Platform</a></li>
<li><a href="#JDT">JDT</a></li>
<li><a href="#PDE">PDE</a></li>
<li><a href="#Equinox">Equinox</a></li>
</ul>
<table class="news" border="0" cellpadding="10" cellspacing="0" width="80%">
<tr>
<td colspan="2"> <div class="title">Template</div>
</td>
</tr>
<tr id="first-item">
<td class="title">First item</td>
<td class="content">
Item blurb. See <a href="../whats-new-template/eclipse-whats-new-template.html"><font size="20" color="red">instructions</font></a>.
</td>
</tr>
<tr>
<td colspan="2" class="section" id="Platform">Platform</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">Resources</div>
</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">SWT</div>
</td>
</tr>
<tr id="swt-webkit">
<td class="title">Experimental Support for WebKit2 added to the SWT Browser</td>
<td class="content">
The SWT Browser now has preliminary support for WebKit2. To try it out, create a browser
widget with style <code>SWT.WEBKIT</code>, and set the environment variable SWT_WEBKIT2
to 1. This is only supported with GTK+ 3.x; if GTK+ 3 is disabled the browser will
fallback to WebKit1.
</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">Platform UI</div>
</td>
</tr>
<tr id="MLocalizable">
<td class="title">MLocalizable mixin interface</td>
<td class="content">
Changed the way in which localization is done in the application model. While before EOperations (methods) where used to get
a localized value, now volatile, transient, derived, unchangeable EStructuralFeatures are used. Doing this enables to send
notifications if a localizable value has changed. To mark EClasses who hold localizable informations and to inform them
externally about a changed Locale, the <code>MLocalizable</code> mixin interface is introduced, which contains the single method
<code>updateLocalization()</code>. This enables to generically search the model for model elements effected by a Locale change and
force them sending out updates.
</td>
</tr>
<tr id="Locale_Change_Propagation">
<td class="title">Locale Change Propagation</td>
<td class="content">
Introduced the <code>ILocaleChangeService</code> which need to be used to change a Locale at runtime. Using this service will:
<ol>
<li>Update the Locale in the application context.</li>
<li>Inform all model elements of an application that implement <code>MLocalization</code> about the change.</li>
<li>Post an event via event broker.</li>
</ol>
</td>
</tr>
<tr id="Locale_Change_Consumption">
<td class="title">Locale Change Consumption</td>
<td class="content">
There are now three ways to get informed about a Locale change:
<ol>
<li>Via event broker by listening to the topic <i>org/eclipse/e4/core/NLS/LOCALE_CHANGE</i></li>
<li>Via dependency injection by getting the value for <code>TranslationService.LOCALE</code> injected (e.g. via method injection)</li>
<li>Via attaching to the model events listening to the newly introduced LOCALIZED-Features</li>
</ol>
<b>Note:</b> The renderers need to be modified to listen to the LOCALIZED-Features, otherwise the Locale change at runtime isn't supported!
</td>
</tr>
<tr id="ResourceBundleProvider">
<td class="title">ResourceBundleProvider</td>
<td class="content">
Introduced the <code>ResourceBundleProvider</code> service to abstract out the reference to <code>BundleLocalization</code> OSGi service.
This way users are able to change how ResourceBundles should be looked up within their Eclipse application, e.g. using class-based
ResourceBundles, loading translations out of a database, loading ResourceBundles from a server by using a different ResourceBundle.Control.
The default implementation <code>DefaultResourceBundleProvider</code> is internally using <code>BundleLocalization</code> to keep the
known default behaviour.
</td>
</tr>
<tr id="TranslationService">
<td class="title">TranslationService update</td>
<td class="content">
The <code>TranslationService</code>, that is used to localize the application model, had several downsides regarding extensibility.
A lot of code needed to be copied in order to create a custom <code>TranslationService</code> that retrieves translations from a different location
than the OSGi-ResourceBundle. To make it easier for users to implement a custom <code>TranslationService</code>, the API was modified. The method
<code>getResourceString(String, ResourceBundle)</code> is moved from <code>BundleTranslationProvider</code> to <code>TranslationService</code> with
protected visibility, as it contains the logic to retrieve and transform the translation key that is set in the application model. The default
implementation <code>BundleTranslationProvider</code> is now using the <code>ResourceBundleHelper</code> in combination with the
<code>ResourceBundleProvider</code>. This way the localization of the application model and the localization via new message extension are using
the same mechanisms. As a small enhancement, this also enables the usage of dot separated keys for translating the application model.
<p>
Also with M6 the package <code>org.eclipse.e4.core.services.translation</code> will be released as API.
</p>
</td>
</tr>
<tr>
<td colspan="2"> <div class="title">User Assistance</div>
</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">Platform Text</div>
</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">Team/CVS</div>
</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">Compare</div>
</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">Ant</div>
</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> <div class="title">Debug</div>
</td>
</tr>
<tr id="launch-options">
<td class="title">Updated launch options</td>
<td class="content">
The default preference for the fall-back behavior of context-sensitive launching has been changed to launch the previous application.
<br/>
Existing preferences are not affected by this
update, only new workspaces or using the <b>Restore Defaults</b> button on the <b>Run/Debug &gt; Launching</b> preference page are affected.
<p>
<img src="images/launch-options.png" alt="The new default launch options"/>
</p>
</td>
</tr>
<tr>
<td colspan="2" class="section" id="JDT">JDT</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2" class="section" id="PDE">PDE</td>
</tr>
<tr id="trace-std-out">
<td class="title">Print debug trace to the standard output stream</td>
<td class="content">
On the <b>Preferences > General > Tracing</b> preference page you can now choose to have the output of debug trace statements
sent to the standard output stream.
<p>
<img src="images/trace-output.png" alt="The tracing preference page with output to standard output stream option"/>
</p>
</td>
</tr>
<tr id="os-arch-system-props">
<td class="title">Products can specify OS/arch system properties</td>
<td class="content">
In the <b>Product Editor</b> you can now add system properties that will only apply to a single OS, a single architecture or a
an OS/architecture combination.
<p>
<img src="images/osarch-systemprops.png" alt="The product editor showing os/arch system properties"/>
</p>
</td>
</tr>
<tr id="os-arch-vm-args">
<td class="title">Products can specify OS/arch launch arguments</td>
<td class="content">
In the <b>Product Editor</b> you can now add program and VM arguments to all platforms, a specific operating system or
a specific archicture/OS combination. A preview area shows the complete list of arguments that will apply to the selected
OS and architecture.
<p>
<img src="images/osarch-args.png" alt="The product editor showing os/arch vm arguments"/>
</p>
</td>
</tr>
<tr>
<td colspan="2" class="section" id="Equinox">Equinox</td>
</tr>
<tr>
<td colspan="2"><div align="left">[ <em>Not available yet</em> ]</div></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
</table>
<p>The above features are just the ones that are new since the previous milestone
build. Summaries for earlier Luna milestone builds:</p>
<ul>
<li><a href="http://download.eclipse.org/eclipse/downloads/drops4/S-4.4M5-201401231600/news/">New for Eclipse Luna milestone build M5 (January 24, 2014)</a></li>
<li><a href="http://download.eclipse.org/eclipse/downloads/drops4/S-4.4M4-201312121600/news/">New for Eclipse Luna milestone build M4 (December 13, 2013)</a></li>
<li><a href="http://download.eclipse.org/eclipse/downloads/drops4/S-4.4M3-201310302000/news/">New for Eclipse Luna milestone build M3 (November 1, 2013)</a></li>
<li><a href="http://download.eclipse.org/eclipse/downloads/drops4/S-4.4M2-201309182000/news/">New for Eclipse Luna milestone build M2 (September 20, 2013)</a></li>
<li><a href="http://download.eclipse.org/eclipse/downloads/drops4/S-4.4M1-201308072000/news/">New for Eclipse Luna milestone build M1 (August 9, 2013)</a></li>
</ul>
</body>
</html>