| <?xml version="1.0" encoding="iso-8859-1"?> | 
 | <!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" /> | 
 |   <style type="text/css"> | 
 | p, table, td, th {  font-family: verdana, arial, helvetica, geneva; font-size: 10pt} | 
 | pre {  font-family: "Courier New", Courier, mono; font-size: 10pt} | 
 | h2 { font-family: verdana, arial, helvetica, geneva; font-size: 18pt; font-weight: bold ; line-height: 14px} | 
 | code {  font-family: "Courier New", Courier, mono; font-size: 10pt} | 
 | sup {  font-family: verdana, arial, helvetica, geneva; font-size: 10px} | 
 | h3 {  font-family: verdana, arial, helvetica, geneva; font-size: 14pt; font-weight: bold} | 
 | li {  font-family: verdana, arial, helvetica, geneva; font-size: 10pt} | 
 | h1 {  font-family: verdana, arial, helvetica, geneva; font-size: 24pt; font-weight: bold} | 
 | body {  font-family: verdana, arial, helvetica, geneva; font-size: 10pt; margin-top: 5mm; margin-left: 3mm} | 
 | .indextop { font-size: x-large; font-family: verdana, arial, helvetica, sans-serif; font-weight: bold} | 
 | .indexsub { font-size: xx-small; font-family: verdana, arial, helvetica, sans-serif; color: #8080FF} | 
 | a.bar:link {  text-decoration: none; color: #FFFFFF} | 
 | a.bar:visited {  color: #FFFFFF; text-decoration: none} | 
 | a.bar:hover {  color: #FFFFFF; text-decoration: underline} | 
 | a.bar {  color: #FFFFFF} | 
 |  | 
 | .section {font-size: 20px; font-weight: bold;} | 
 | table.news td {border-top: solid thin black;} | 
 | table.news tr {vertical-align: top;} | 
 | table.news tr td.title {vertical-align: top; width: 30%; font-weight: bold;} | 
 | table.news tr td.content {vertical-align: top; width: 70%;} | 
 |   </style> | 
 | <title>Eclipse "New and Noteworthy" Template</title> | 
 | </head> | 
 |  | 
 | <body> | 
 | <h1><font face="Verdana">Eclipse 4.5 (Mars) - New and Noteworthy in SWT</font></h1> | 
 |  | 
 | <ul> | 
 | 	<li><a href="#m3">Milestone M3</a></li> | 
 | 	<li><a href="#m4">Milestone M4</a></li> | 
 | 	<li><a href="#m5">Milestone M5</a></li> | 
 | 	<li><a href="#m6">Milestone M6</a></li> | 
 | 	<li><a href="#m7">Milestone M7</a></li> | 
 | 	<li><a href="#rc1">Release Candidate 1</a></li> | 
 | </ul> | 
 |  | 
 |  | 
 | <table class="news" border="0" cellpadding="10" cellspacing="0" width="80%" summary="news entries"> | 
 |  | 
 |   <tr> | 
 |     <td id="m3" class="section" colspan="2"><h2>Milestone M3</h2></td> | 
 |   </tr> | 
 |   <tr id="date-time-on-gtk-spin-button"> | 
 | 	<td class="title">The DateTime widget now uses GtkSpinButton on UNIX/Linux platforms</td> | 
 |     <td class="content"> | 
 |       The DateTime widget has been re-implemented to use the GtkSpinButton widget for | 
 |       <code>SWT.DATE</code> and <code>SWT.TIME</code> styles. The new look and feel is as illustrated below: | 
 |       <p><b>GTK+ 2:</b></p> | 
 |           <p> | 
 |             <img src="images/gtk2-date-time.png" alt="" /> | 
 |           </p> | 
 |       <p><b>GTK+ 3:</b></p> | 
 |           <p> | 
 |             <img src="images/gtk3-date-time.png" alt="" /> | 
 |           </p> | 
 |     </td>     | 
 |   </tr> | 
 |  | 
 |   <tr id="sleep-wakeup-deprecated-replaced"> | 
 |     <td class="title">New monitoring events added in place of SWT.Sleep and SWT.Wakeup</td> | 
 |     <td class="content"> | 
 |         The <code>SWT.Sleep</code> and <code>SWT.Wakeup</code> events have been deprecated | 
 |         in favor of the more generic events <code>SWT.PreExternalEventDispatch</code> and  | 
 |         <code>SWT.PostExternalEventDispatch</code>, respectively. Clients that were written | 
 |         using the old event names should be updated to refer to the new events. | 
 |     </td> | 
 |   </tr> | 
 |  | 
 |   <tr id="gtk-supported-versions-update"> | 
 |   	<td class="title">Dropped support for GTK+ 2 versions older than 2.18</td> | 
 |   	<td class="content"> | 
 |   		GTK+ 2.18.0 or later (and its dependencies) will be the pre-requisites necessary to  | 
 |   		run Eclipse successfully on all Linux/UNIX platforms as opposed to GTK+ 2.10.0 earlier. | 
 |   		Support for all versions older than 2.18 has been dropped effective Mars M3 milestone release. | 
 |   		<p> | 
 |   		Note: As of now, Eclipse logs a warning and continues to run when a GTK+ version older than 2.18.0 | 
 |   		is detected, but that behavior will soon be changed to not run Eclipse with unsupported versions. | 
 |   		</p> | 
 |   	</td> | 
 |   </tr> | 
 |    | 
 |   <tr> | 
 |     <td id="m4" class="section" colspan="2"><h2>Milestone M4</h2></td> | 
 |   </tr> | 
 |   <tr id="menuitem-tooltip"> | 
 |     <td class="title">Added API to set tooltip for MenuItem</td> | 
 |     <td class="content"> | 
 | 		SWT now supports setting a tooltip on menu items via <code>MenuItem.setToolTipText()</code>.  | 
 | 		<p> | 
 | 		For an example, see the <b>Menu</b> tab in the <a href="https://www.eclipse.org/swt/examples.php">ControlExample</a>.</p> | 
 | 		<p> | 
 |           <img src="images/tooltip.png" alt="" /> | 
 |         </p> | 
 |     </td> | 
 |   </tr> | 
 |      | 
 |   <tr> | 
 |     <td id="m5" class="section" colspan="2"><h2>Milestone M5</h2></td> | 
 |   </tr> | 
 |  | 
 |   <tr id="transparent-bg"> | 
 |   <td class="title">Transparent background for Control</td> | 
 |     <td class="content"> | 
 |     	<p>SWT has added support to set a <code>Control</code>'s background as transparent. The <code>Color</code> class now supports specifying a alpha value (integer: 0 to 255) for transparency. | 
 |     	Calling <code>Control#setBackground(Color color)</code> with a transparent color (color with alpha value '0'), sets the control's background as transparent.</p> | 
 | 		<p><b>List of New Classes and APIs:</b></p> | 
 | 		<ul> | 
 | 			<li>Class: <code>org.eclipse.swt.graphics.RGBA</code></li> | 
 | 			<li>Constant: <code>SWT.COLOR_TRANSPARENT</code> - This is a default transparent color</li> | 
 | 			<li>Methods added in <code>org.eclipse.swt.graphics.Color</code></li> | 
 | 			<ul> | 
 | 				<li><code>public Color (Device device, int red, int green, int blue, int alpha)</code></li> | 
 | 				<li><code>public Color (Device device, RGB rgb, int alpha)</code></li> | 
 | 				<li><code>public Color (Device device, RGBA rgba)</code></li> | 
 | 				<li><code>public RGBA getRGBA </code>()</li> | 
 | 				<li><code>public int getAlpha ()</code></li> | 
 | 			</ul> | 
 | 		</ul> | 
 | 		<p><b>Note:</b></p> | 
 |     	<ul> | 
 |     		<li>Currently, SWT honors only extreme values for alpha i.e, '0'(transparent) or '255'(opaque).</li> | 
 |     		<li>Setting transparent background color fails for some controls on all platforms, they show the default background color instead. For e.g. Text, Combo.</li> | 
 |     		<li>Setting transparent background color for some controls works on GTK3 only, it fails on other platforms. For e.g. Table, Tree.</li> | 
 |     	</ul> | 
 | 		For an example on using the new APIs, see <a href="http://git.eclipse.org/c/platform/eclipse.platform.swt.git/tree/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet365.java">Snippet365</a>. | 
 | 		<p> | 
 | 			<b>Snippet365 in action</b> (Controls with <code>SWT.COLOR_TRANSPARENT</code> background and Shell with gradient background image) | 
 | 		</p> | 
 | 		<p> | 
 |         	<img src="images/transparent_control_background.png" alt="Transparent Background on Control widgets" /> | 
 |       	</p> | 
 |     </td> | 
 |   </tr> | 
 |  | 
 |   <tr id="swt-tools"> | 
 |     <td class="title">SWT Tools</td> | 
 |     <td class="content"> | 
 | 		<a href="https://www.eclipse.org/swt/tools.php">SWT Tools</a> are now available in the Eclipse Platform P2 repository. | 
 | 		SWT Tools provides tools for developing SWT itself (JNIGen) but also general purpose tools Sleak  | 
 | 		(monitors the creation and disposal of SWT graphics resources) and SWT Spy (prints out information like style, layout and parent  | 
 | 		about the widget under the cursor). | 
 |     </td> | 
 |   </tr> | 
 |    | 
 | 	<tr> | 
 | 	 <td id="m6" class="section" colspan="2"><h2>Milestone M6</h2></td> | 
 | 	</tr> | 
 |    | 
 | 	<tr id="high-dpi"> | 
 | 	 <td class="title">APIs for high-DPI monitor support</td> | 
 | 	<td class="content"> | 
 | 	  New APIs have been added to provide support for rendering high-resolution images on high-DPI monitors. | 
 | 	  <p> | 
 | 	  Two constructors have been added to the <code>Image</code> class. They accept | 
 | 	  image-provider callbacks that allow clients to supply resolution-dependent versions | 
 | 	  of images: | 
 | 	  </p> | 
 | 	  <pre>public interface ImageDataProvider { | 
 | 			public ImageData getImageData (int zoom); | 
 | 		} | 
 | 		public interface ImageFileNameProvider { | 
 | 			public String getImagePath (int zoom); | 
 | 		}</pre> | 
 | 	   | 
 | 	  <p> | 
 | 	  Depending on the user's monitor configuration, SWT will request images with the | 
 | 	  corresponding zoom level. Here's an example that displays 3 original images, | 
 | 	  followed by variants whose resolution changes depending your monitor's resolution: | 
 | 	  <a href="http://git.eclipse.org/c/platform/eclipse.platform.swt.git/plain/examples/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet367.java">Snippet367.java</a>. | 
 | 	  </p> | 
 | 	   | 
 | 	  <p> | 
 | 	  Note that this is just the first step to support high-resolution images in | 
 | 	  SWT and Eclipse-based applications. Work is underway to adopt the new APIs in | 
 | 	  the platform. Futhermore, more work in SWT is required to properly | 
 | 	  support drawing into high-resolution images via <code>GC</code>. | 
 | 	  </p> | 
 | 	</td> | 
 |   </tr> | 
 |    | 
 |  	<tr id="evaluate"> | 
 |  	 <td class="title">API to choose security context in Browser#evaluate()</td> | 
 |  	 <td class="content"> | 
 | 		A new API <code>Browser#evaluate(String script, boolean trusted)</code> has been added that allows the client to run | 
 | 		Javascript code in the Chrome security context or in the normal security context for <code>SWT.MOZILLA</code> | 
 | 		style browsers. | 
 | 	 </td> | 
 |  	</tr> | 
 |    | 
 |  	<tr> | 
 | 	 <td id="m7" class="section" colspan="2"><h2>Milestone M7</h2></td> | 
 | 	</tr> | 
 | 	 | 
 | 	<tr id="xulr-31-support"> | 
 | 	 <td class="title">SWT Browser now supports XULRunner 31.x</td> | 
 | 	 <td class="content"> | 
 | 		An SWT Browser created with style <code>SWT.MOZILLA</code> can now be used with the XULRunner 31.x  | 
 | 		runtime on Windows and Mac OSX. | 
 |       <p> | 
 |        Note: XULRunner 31 support is not available on Linux for Mars release.  | 
 |        For details, please see <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=467646">Bug 467646</a>. | 
 |       </p> | 
 | 	 </td> | 
 | 	</tr> | 
 | 	 | 
 | 	<tr> | 
 | 	 <td id="rc1" class="section" colspan="2"><h2>Release Candidate 1</h2></td> | 
 | 	</tr> | 
 | 	 | 
 |    <tr id="auto-text-direction"> | 
 |     <td class="title">BIDI: SWT Controls now support AUTO text direction</td> | 
 |     <td class="content"> | 
 |       The auto (a.k.a. "contextual") text direction implies that the base text direction is derived from the direction | 
 |       of the first strong (either LTR or RTL) bidi character. Auto text direction is the most appropriate choice when | 
 |       the text content is not known in advance and, hence, it is not yet possible to decide which base direction value, | 
 |       LTR or RTL, would be most suitable at run time. | 
 |       <br /> | 
 |       Support for auto text direction has been introduced at the SWT Control level. Auto text direction can be applied | 
 |       through the existing <code>Control#setTextDirection</code> API. The new value for auto direction is expressed as | 
 |       the bitwise disjunction of (<code>SWT#LEFT_TO_RIGHT</code> | <code>SWT#RIGHT_TO_LEFT</code>) bit fields. When  | 
 |       applied onto a Composite control, the auto base direction (similarly to LTR and RTL ones) is inherited by the | 
 |       child components. | 
 |       <br /> | 
 |       For example: | 
 |       <ul> | 
 |         <li><code>org.eclipse.swt.widgets.Table.setTextDirection(SWT.LEFT_TO_RIGHT | SWT.RIGHT_TO_LEFT);</code></li> | 
 | 	  </ul> | 
 |       Result: | 
 |       <p> | 
 |         <img src="images/auto-text-direction.png" alt=""/> | 
 |       </p> | 
 |       <b>Note:</b> Auto text direction is not yet supported: | 
 |       <ul> | 
 |          <li>in StyledText</li> | 
 |          <li>upon Control creation (but only through <code>Control#setTextDirection</code> call once the Control has been created)</li>       | 
 |       </ul> | 
 | 	</td> | 
 |   </tr> | 
 |  | 
 |   <tr> | 
 |     <td colspan="2"/> | 
 |   </tr>   | 
 | </table> | 
 | </body> | 
 | </html> |